Detail Description of TCP/IP Reference Model

Detail Description of TCP/IP Reference Model

 v  The TCP/IP reference model is the network model used in the current Internet architecture . It has its origins back in the 1960’s with the grandfather of the Internet, the ARPANET. This was a research network sponsored by the Department of Defense in the United States. The following were seen as major design goals:

*       ability to connect multiple networks together seamlessly
*       ability for connections to remain intact as long as the source and destination machines were functioning
*       to be built on flexible architecture

v  The reference model was named after two of its main protocols, TCP (Transmission Control Protocol) and IP (Internet Protocol).

v  The following is a description of each layer in the IP suite stack.

 

The physical Layer

v  The physical layer describes the physical characteristics of the communication, such as conventions about the nature of the medium used for communication(such as wires, fiber optic links or radio links),and all related details such as connectors, channel codes and modulation, signal strengths, wavelengths, low level synchronization and timing and maximum distances.

v  The Physical layer is responsible for encoding and transmission of data over network communications media. It operates with data in the form of bits that are sent from the Physical layer of the sending (source) device and received at the Physical layer of the destination device.

v  Ethernet, Token Ring, SCSI, hubs, repeaters, cables and connectors are standard network devices that function at the Physical layer. The Physical layer is also considered the domain of many hardware-related network design issues, such as LAN and WAN topology and wireless technology.

 The data-link layer

v  The data link layer specifies how packets are transported over the physical layer, including the framing (i.e. the special bit patterns which make the start and end of packets).

v  Ethernet, for example, includes fields in the packet header which specify which machine or machines on the network a packet is destined for.

v  Examples of the data link layer protocols are Ethernet, Wireless Ethernet, SLIP, Token Ring and ATM.

v  PPP is a little more complex, as it is originally specified as a separate protocol which ran on top of the data link layer, HDLC/SDLC.

v  This layer is something further subdivided in to Logical Link Control and Media Access Control.

v  The link layer, which is the method used to move packets from the network layer on two different hosts, is not really part of the Internet protocol suite, because IP can run over a variety of different link layers. The processes of transmitting packets on a given link layer and receiving packets from a given link layer can be controlled both in the software device driver for the network card, as well as on firmware or specialist chipsets. These will perform data link functions such as adding a packet header to prepare it for transmission, then actually transmit the frame over a physical medium.

v  For Internet access over a dial-up modem, IP packets are usually transmitted using PPP. For broadband Internet access such as ADSL or cable modemsPPPOE is often used. On a local wired network, Ethernet is usually used, and on local wireless networks, IEEE 802.11 is usually used. For wide-area networks, either PPP over T-carrier or E-carrier lines, Frame relayATM, or packet over SONET/SDH (POS) are often used.

v  The link layer can also be the layer where packets are intercepted to be sent over a virtual private network. When this is done, the link layer data is considered the application data and proceeds back down the IP stack for actual transmission. On the receiving end, the data goes up the IP stack twice (once for routing and the second time for the VPN).

v  The link layer can also be considered to include the physical layer, which is made up of the actual physical network components (hubs, repeaters, fiber optic cable, coaxial cable, network cards, Host Bus Adapter cards and the associated network connectors: RJ-45, BNC, etc), and the low level specifications for the signals (voltage levels, frequencies, etc).

The Network Layer

v  As originally defined, The Network Layer solves the problem of getting packets, across a single n/w.

v  Examples of such protocol are X.25, and the ARPANET`S Initial Connection Protocol.

v  With the advent of the concept of internetworking additional functionality was added to this layer, namely getting data from the source n/w to the destination n/w.

v  This generally involves routing the packet across the n/w of n/w known as internet.

v  In  the Internet Protocol suite, IP performs the basic task of getting packets of data from source to destination and also supports other protocol such as ICMP (used to transmit diagnostic information about IP transmission ) and IGMP (used to manage multicast data).

v  ICMP and IGMP are layered on the top of IP but perform n/w layer functions illustrating an incompatibility between the Internet and OSI models.

v  The Network Layer Internet Protocol (IP) can carry data for a number of different higher level protocols.

v  These protocols are each identified by unique IP protocol number. ICMP and IGMP are protocol 1 and 2, respectively.

The Transport Layer

v  The transport layer‘s responsibilities include end-to-end message transfer capabilities independent of the underlying network, along with error control, fragmentation and flow control.

v  End to end message transmission or connecting applications at the transport layer can be categorized as either:

*       Connection-oriented e.g. TCP

*       Connectionless e.g UDP

v  The transport layer can be thought of literally as a transport mechanism e.g. a vehicle whose responsibility is to make sure that its contents (passengers/goods) reach its destination safely and soundly, unless a higher or lower layer is responsible for safe delivery.

v  The transport layer provides this service of connecting applications together through the use of ports. Since IP provides only a best effort delivery, the transport layer is the first layer of the TCP/IP stack to offer reliability. Note that IP can run over a reliable data link protocol such as the High-Level Data Link Control (HDLC). Protocols above transport, such as RPC, also can provide reliability.

v  For example, TCP is a connection-oriented protocol that addresses numerous reliability issues to provide a reliable byte stream:

*          data arrives in-order

*          data has minimal error (i.e correctness)

*          duplicate data is discarded

*          lost/discarded packets are resent

*          includes traffic congestion control

v  The newer SCTP is also a “reliable”, connection-oriented, transport mechanism. It is stream-oriented — not byte-oriented like TCP — and provides multiple streams multiplexed over a single connection. It also provides multi-homing support, in which a connection end can be represented by multiple IP addresses (representing multiple physical interfaces), such that if one fails, the connection is not interrupted. It was developed initially for telephony applications (to transport SS7 over IP), but can also be used for other applications.

v  TCP (IP protocol number 6) is a “reliable”, connection-oriented transport mechanism providing a reliable byte stream, which makes sure data arrives undamaged and in order, is re-transmitted if lost, and eliminates duplicate copies. It also handles “emergency” content which must be processed out of order (although technically it is not sent out-of- band).

v  TCP will attempt to deliver all data correctly in the specified sequence- this is its purpose and main advantage over UDP, but it can be a disadvantage in real-time streaming or routing applications with high layer 3 loss rates.

v  UDP is a connectionless datagram protocol. Like IP, it is a best effort or “unreliable” protocol. Reliability is addressed through error detection using a weak checksum algorithm. UDP is typically used for applications such as streaming media (audio, video, Voice over IP etc) where on-time arrival is more important than reliability, or for simple query/response applications like DNS lookups, where the overhead of setting up a reliable connection is disproportionately large.

v  Both TCP and UDP are used to carry a number of higher-level applications. The applications at any given network address are distinguished by their TCP or UDP port. By convention certain well known ports are associated with specific applications. (See List of TCP and UDP port numbers.)

v  RTP is a datagram protocol that is designed for real-time data such as streaming audio and video.

 

v  UDP (IP protocol number 17) is a lower-overhead, connectionless protocol. It is known as an “unreliable” protocol-not because it is particularly unreliable, but because it does not verify theta packets have reached their destination, and gives no guarantee that they will arrive in order. If an application requires these guarantees, it must provide them itself, or use TCP.

v  UDP is typically used for applications such as streaming media(audio and videoed) where the time TCP  requires for retransmission and re-ordering might not be available, or for simple query/response applications like DNS lookups, where the overhead of setting up a reliable connection is disproportional try large.

v  Both TCP and UDP are used to carry a number of higher-level applications. The applications at any given network address are distinguished by their TCP or UDP port number. By convention certain well known parts are associated with specific applications.

v  RTP is an attempt to provide a compromise between TCP and raw UDP.Although it uses the UDP packet format as a basis, it provides a function that is at the same protocol layer.

Application layer

v  The application layer is used by most programs for network communication. Data is passed from the program in an application-specific format, then encapsulated into a transport layer protocol.

v  Since the IP stack has no layers between the application and transport layers, the application layer must include any protocols that act like the OSI’s presentation and session layer protocols. This is usually done through libraries.

v  Data sent over the network is passed into the application layer where it is encapsulated into the application layer protocol. From there, the data is passed down into the lower layer protocol of the transport layer.

v  The two most common lower layer protocols are TCP and UDP. Common servers have specific ports assigned to them (HTTP has port 80; FTP has port 21; etc.) while clients use ephemeral ports.

v  Routers and switches do not utilize this layer but bandwidth throttling applications do, as with the Resource Reservation Protocol (RSVP).

v  The application layer is where most common network programs reside.

v  These programs and their corresponding protocols include HTTP (The World Wide Web), FTP (File transfer protocol), SMTP (Simple mail transfer protocol), SSH (Secure remote login), DNS (Name <-> IP Address lookups) and many others.

v  Applications most commonly run on TCP or UDP, and are often associated with a sell known port number.

v  Some examples are:

*             HTTP on TCP port  or

*             secure shell SSH on TCP port ,

*             DNS lookups on UDP (or sometimes TCP port 53,

*             RIP routing updates on UDP port 520.

You may also like...

Leave a Reply