Foundation of Networking Protocols
Users and networks are connected together by certain rules called network communication protocols. The Internet Protocol (IP), for example, is responsible for using prevailing rules to establish paths for packets. Communication protocols are the intelligence behind the driving force of packets and are tools by which a network designer can easily expand the capability of networks. One growth aspect of computer networking is clearly attributed to the ability to conveniently add new features to networks. New features can be added by connecting more hardware devices, thereby expanding networks. New features can also be added on top of existing hardware, allowing the network features to expand. The second method of network expansion requires modifications to communication protocols. This chapter focuses on the following:
- Five-layer TCP/IP model
- Seven-layer OSI protocol model
- Internet protocols and addressing
- Equal-size packet protocol model
The five-layer TCP/IP model is a widely accepted Internet backbone protocol structure. In this chapter, we give an overview of these five layers and leave any further details to be discussed in the remaining chapters. Among these five layers, the basics of network layer is designated a separate section in this chapter under Internet protocols. We make this arrangement since basic definitions related to this layer are required in the following few chapters.
As there are numerous protocols formed together to be used for the movement of packets, the explanation of all other protocols will be spread over almost all upcoming chapters. In the meanwhile, the reader is cautiously reminded that getting a good grasp of the fundamental materials discussed in this chapter is essential for following the future details or extensions described in the remaining of the book. At the end of this chapter, the equal-size packet protocol model will also be introduced.
2.1 5-Layer TCP/IP Model
The basic structure of communication networks is represented by the Transmission Control Protocol/Internet Protocol (TCP/IP) model. This model is structured in five layers. An end system, an intermediate network node, or each communicating user or program is equipped with devices to run all or some portions of these layers, depending on where the system operates. These five layers, as shown in Figure 2.1, are as follows:
- Physical layer
- Link layer
- Network layer
- Transport layer
- Application layer
Figure 2.1 Hierarchy of 5-layer communication protocol model
Layer 1, the physical layer, defines electrical aspects of activating and maintaining physical links in networks. The physical layer represents the basic network hardware, such as switches and routers. The details of this layer are explained in later chapters, especially Chapters 3, 4, 6, 13, 15, 17, and 20.
Layer 2, the link layer, provides a reliable synchronization and transfer of information across the physical layer for accessing the transmission medium. Layer 2 specifies how packets access links and are attached to additional headers to form frames when entering a new networking environment, such as a LAN. Layer 2 also provides error detection and flow control. This layer is discussed further in Chapters 4, 5, 6, 19, and 20.
Layer 3, the network layer (IP) specifies the networking aspects. This layer handles the way that addresses are assigned to packets and the way that packets are supposed to be forwarded from one end point to another. Some related parts of this layer are described in Chapters 5, 6, 7, 10, 12, 14, 15, 16, 19, and 20.
Layer 4, the transport layer, lies just above the network layer and handles the details of data transmission. Layer 4 is implemented in the end-points but not in network routers and acts as an interface protocol between a communicating host and a network. Consequently, this layer provides logical communication between processes running on different hosts. The concepts of the transport layer are discussed further in Chapters 8, 9, 12, 16, 18, 19, and 20.
Layer 5, the application layer, determines how a specific user application should use a network. Among such applications are the Simple Mail Transfer Protocol (SMTP), File Transfer Protocol (FTP), and the World Wide Web (WWW). The details of layer 5 are described in Chapters 9, 10, 15, 16, 18, 19, and 20.
The transmission of a given message between two users is carried out by (1) flowing down the data through each and all layers of the transmitting end, (2) sending it to certain layers of protocols in the devices between two end points, and (3) when the message arrives at the other end, letting the data flow up through the layers of the receiving end until it reaches its destination. Figure 2.1 illustrates a scenario in which different layers of protocols are used to establish a connection. A message is transmitted from host 1 to host 2, and, as shown, all five layers of the protocol model participate in making this connection. The data being transmitted from host 1 is passed down through all five layers to reach router R1. Router R1 is located as a gateway to the operating regions of host 1 and therefore does not involve any tasks in layers 4 and 5. The same scenario is applied at the other end: router R2. Similarly, router R2, acting as a gateway to the operating regions of host 2, does not involve any tasks in layers 4 and 5. Finally at host 2, the data is transmitted upward from the physical layer to the application layer.
The main idea of the communication protocol stack is that the process of communication between two end points in a network can be partitioned into layers, with each layer adding its own set of special related functions. Figure 2.2 shows a different way of realizing protocol layers used for two hosts communicating through two routers. This figure illustrates a structural perspective of a communication set-up and identifies the order of fundamental protocol layers involved.
Figure 2.2 Structural view of protocol layers for two hosts communicating through two routers