Before looking at the Open Systems Interconnections (OSI) model, let us examine the functions of a protocol. Aprotocol is a set of rules governing the way data is transmit- ted and received over data communications networks. Protocols must provide reliable, error-free transmission of user data as well as network management functions. Protocols packetize the user data into data envelopes. Some have fixed lengths and oth- ers have variable lengths depending on the protocol used.
Protocols are used whenever a serial bit stream is used. The protocol defines the or- der in which the bits will be sent and also appends information for use in routing and managing the network. This appended information is only used by the protocol and is transparent to the user.
Some protocols, such as Signaling System 7 (SS7), actually send predefined messages to the other nodes in the network. Messages can be used at any layer above layer 1 and are commonly found at layers 2 and 3. A typical example of a protocol message is the
voice circuit between two end offices. Other messages exist for SS7 and will be dis- cussed in greater detail in later chapters. Predefined messages are an excellent way to send network management functions and handle data error procedures.
Other functions of a protocol include the segmentation of blocks of data for easier transmission over the network and reassembly at the receiving node. When sending multiple blocks of associated data, procedures must be provided that enable the blocks to be identified in the order they were sent and reassembled. In large networks, these data blocks can be sent in order, but are received out of order.
There are three basic modes of operation for a protocol depending on the type of net- work. A circuit-switched network protocol establishes a connection on a specific circuit and then sends the data on that circuit. The circuit used depends on the destination of the data. A good example of a typical circuit-switched network is the Public Switched
Once the transmission has been completed, the circuit is released and is ready to carry another transmission. The protocol must manage the connection and release it when transmission has been completed. It must also maintain the connection during the data transmission.
Another type of network is a local area network (LAN). LANs use different types of protocols, but the method of transmission is usually very similar. A LAN usually has a bus topology or a ring topology. In both topologies, the data is transmitted out on the LAN, with an address attached in a protocol header.
When a data terminal recognizes its address, it reads the data. Some mechanism must be used within the protocol to remove the data from the LAN once it has been read. This differs from one protocol to the next. These types of networks only permit one message at a time to be transmitted across the LAN.
Packet-switching networks provide multiple paths to the same destination. Each message has an originating and a destination address. The addresses are used to route the message through the network. Unlike LANs, a packet-switched network enables many messages to be transmitted simultaneously across the network.
The circuits used for this type of network are always connected, and transmission takes place continuously. The direction the message takes from one node to the next de- pends on the packet address. Each packet provides enough information regarding the data to enable the packet to reach its destination without establishing a connection be- tween the two devices. The X.25 and SS7 networks are both packet-switched networks.
Several layers of addressing are used in any protocol stack. Typically, at least three layers of addressing can be found. Each device on the network must have its own unique physical address. The node address identifies the particular device within its own network. The layer 2 protocols use this address because they are responsible for routing one device to the next adjacent device.
The next address layer is that of the network itself. This address is used when send- ing messages between two networks. This address can usually be found in layer 3 of most protocols. The network address is used by those devices that interconnect two or more networks (such as a router).
Once a message reaches its final destination, the logical address within the destina- tion node must be provided to identify which operation or application entity within the node should receive the data. An application entity is a function within a network node, such as file transfer or electronic mail. \u201cApplication\u201d does not imply something like word processing (in the network sense).
As the information is handed from one layer to the next, the protocol appends control information. This control information is used to ensure that the data is received in the same order it was sent and enables the protocol to monitor the status of every connec- tion and automatically correct problems that may occur.
Control information includes sequence numbering and flow control. This function is usually found at layers 2 through 4, but it can also be found at higher layers. In the SS7 protocols, levels 2 through 4 provide varying levels of control.
As mentioned earlier, segmentation and reassembly are also tasks of the protocol. This is necessary when large blocks of data must be transmitted across the network. Large blocks of data can be time consuming and, if an error occurs during transmis- sion, they can cause congestion on the network while retransmitting.
For this reason, blocks are broken down into smaller chunks, which make it faster and easier to control and transmit through the network. When a retransmission be- comes necessary, only a small portion of the original data must be retransmitted, sav- ing valuable network resources.
Encapsulation is the process of appending the original data with additional control information and protocol headers. This information is stripped off the message by the receiving node at the same layer it was appended. This information is transparent to the user.
Connection control is one of the most important tasks of a protocol. Connections must usually be established not only between two devices, but also between two application en- tities. These logical connections must be maintained throughout the data transmission. The establishment of a logical connection ensures reliable data transfer. The use of posi- tive and negative acknowledgments informs the adjacent node of transmission status.
Sequence numbering is also used in these types of services to ensure that data is re- ceived in the same order it was transmitted. This type of protocol service is referred to as connection oriented. Each node may have multiple logical connections established at one time.
When the data transmission is complete, the logical connection must be released to enable another application entity to establish a connection and transmit data. Protocol messages (such as connect requests and disconnects) are used to manage these logical connections.
Connectionless services are supported in many protocols. Connectionless services en- able data to be transmitted without establishing a logical connection between two ap- plication entities. The data is simply transmitted with enough information to enable the receiver to know how to process the data.
Sequence numbering and retransmission are not used with connectionless services. This type of service is not reliable and is typically found in applications such as elec- tronic mail.
The SS7 network provides support for both types of services, but uses mostly connectionless services for data transfer. However, despite its use of connectionless services, the protocol in SS7 provides mechanisms that enable the emulation of connection-oriented services.
Flow control is used in most protocols to control the flow of messages to a particular node. This function is particularly important in SS7 networks because it is used to pre- vent congestion in any one signaling point. With flow control, protocol messages can be used to alert adjacent nodes of the congestion situation and invoke rerouting functions.
Stopping the flow of messages to any one node is also necessary in some cases when a node becomes unavailable and is unable to process messages. The protocols in SS7 are able to perform this task without human intervention. Often, congestion or outages can occur and routing can be changed without anyone even knowing what occurred until after the events have taken place and the problem has been resolved.
This action might not be possible to undo. Are you sure you want to continue?