TCP/IP in modeled in layers, like most networking software. The OSI network model suggests 7 standard layers, but TCP/IP uses a 5 layer model. TCP/IP protcol suite uses 5 layers. The layered representation of network protocols leads to the term protocol stack, which is a reference to the stack of layers in the protocol suite. 4 layers 5 layers ------------ ------------ Applications Applications Application Transport TCP/UDP Transport ICMP Internetwork IP Network ARP/RARP Link Network Interface Network Interface and Hardware and Hardware Physical Layers communicate with those layers above and below with a concise interface. A layer provides services to the layer above it and receives services from the layer below it. Why divide the communication software into layers? Advantages: To allow for division of labor. By dividing up the various responsibilities and functions into a hierarchy of layers, its easier to separate the various networking tasks into well defined areas of specialization. Divide and conquer. To make implementation easier. It is easier to focus on a small, well defined subset of tasks and functions when implementing a layer or piece of a layer. Also, its clearer what services this layer needs to provide and what services from layers below it needs to utilize. Code testing is made easier. The software for one layer can be tested separately. Implementing the layer with an alternative implementation is easier. Developing a different implementation is facilitated by having a well-defined, separate specification for the methods of layer.