Softpanorama
(slightly skeptical) Open Source Software Educational Society

May the source be with you, but remember the KISS principle ;-)

Softpanorama Search

TCP Protocol Layers

News Recommended Links Presentations RFCs Presentations OSI Protocol Layers
Application Layer
Transport Layer
Internet Layer
Network Interface Layer Humor Etc

TCP/IP is an industry standard set of protocols developed by the U.S. Department of Defense Advanced Research Projects Agency (DARPA) in 1969. It maps TCP/IP protocols to a four-layer conceptual model known as the DARPA model. It is often compared to the still born OSI Protocol Layers. The four layers of the DARPA model are:

  1. Application,

  2. Transport,

  3. Internet,

  4. Network Interface

Protocols define the procedures to use for the systems involved in the communication process. A data communication protocol is a set of rules that must be followed for the two electronic devices to communicate. These rules cover:

A data communication protocol is a set of rules that must be followed for the two electronic devices to communicate

These rules cover:

  • Syntax - Data format and coding
  • Semantics - Control information and error handling
  • Timing - Speed matching and sequencing

Protocols:

Many protocols were developed to provide and support data communications. They form a communication architecture, sometimes referred as "protocol stack". For example TCP/IP family of protocols are often referred to as "TCP protocol stack".

Each protocol provides for a function that is needed to make the data communication possible. Many protocols are used so that the problem can be broken into manageable pieces. Each software module that implements a protocol can be developed and updated independently of other modules, as long as the interface between modules remains constant.

TCP/IP protocol stack consist of layers. You can think of layers in terms of object oriented programming (classes and subclasses) or in term of libraries. 

All layers of TCP-IP for so called protocol stack. Various organization influence the development of TCP-IP protocol stack. Among them:

The following mapping helps you better understand the terms used: 

Some of the advantages of a layered model are similar to advantages of modular programming:

TCP/IP model is a four-layered structure resting on a common hardware platform. It was initially developed for DARPA and sometimes called DARPA model. TCP/IP model has standards that are defined and described in Request for Comment (RFC) documents. The layers are as following: 

Application layer

Transport layer

Internet layer

Network Interface layer

RFCs are documents that describe various layers protocol architecture and functions. They are sequentially numbered and are freely accessible from http://www.ietf.org and several other sites (for example www.faqs.com )

Each layer in the DARPA model corresponds to one or more layers of the seven-layer Open Systems Interconnection (OSI) model.  The latter is a purely bureaucratic invention by one of semi-useless international organizations and has neither theoretical value (being rather naive view on layers) or practical significance (TCP-IP is the king of the hill) but still each year students are tortured with this crap and need to memorize the correspondence between TCP-IP layers and OSI layers. 

The main ideas about formal correspondence between TCP-IP layers and OSI layers can be easily deducted from the following diagram:

TCP/IP Protocol Layers (from Microsoft/TCP-IP Protocol Architecture)

Application Layer

The Application layer provides applications the ability to access the services of the other layers and defines the protocols that applications use to exchange data. There are many Application layer protocols and new protocols are always being developed.

The most widely-known Application layer protocols are those used for the exchange of user information:

Additionally, the following Application layer protocols help facilitate the use and management of TCP/IP networks:

Examples of Application layer interfaces for TCP/IP applications are Sockets and NetBIOS.  Sockets provides a standard application programming interface (API) for interprocess communication via TCP/IP.  NetBIOS is an industry standard interface for accessing protocol services such as sessions, datagrams, and name resolution.

Transport Layer

The Transport layer (also known as the Host-to-Host Transport layer) is responsible for providing the Application layer with session and datagram communication services. The core protocols of the Transport layer are Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). Either of these two protocols are used by the application layer process, the choice depends on the application's transmission reliability requirements.

The mechanisms used by the Transport layer to determine whether data has been correctly delivered are:

The Transport layer facilitates end-to-end data transfer. It supports multiple operations simultaneously. The layer is implemented by two protocols: the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). TCP uses packets called segments, while UDP uses packets called datagrams. Both TCP and UDP are encapsulated
inside Internet layer datagrams for transmission to the next node.

The Transport layer facilitates two types of communication:

TCP and UDP:

The Transport layer encompasses the responsibilities of the OSI Transport layer and some of the responsibilities of the OSI Session layer.

Internet Layer

This layer is responsible  for addressing, packaging, and routing functions.  It allows communication across networks of the same and different types and carries out translations to deal with dissimilar data addressing schemes. The core protocols of the Internet layer are IP, ARP, ICMP, and IGMP.

The Internet layer is analogous to the Network layer of the OSI model.

Network Interface Layer

The Network Interface layer (also called the Network Access layer) is responsible for placing TCP/IP packets on the network medium and receiving TCP/IP packets off the network medium. TCP/IP was designed to be independent of the network access method, frame format, and medium. In this way, TCP/IP can be used to connect differing network types. This layer include LAN technologies such as Ethernet and Token Ring and WAN technologies such as X.25 and Frame Relay. Independence from any specific network technology gives TCP/IP the ability to be adapted to new technologies such as Asynchronous Transfer Mode (ATM). It consists of  combination of datalink and physical layers deals with pure hardware (wires, satellite links, network interface cards, etc.) and access methods such as CSMA/CD (carrier sensed multiple access with collision detection).

Ethernet  is the most popular network access layer protocol.  Its hardware operates at the physical layer and its medium access control method (CSMA/CD) operates at the datalink layer.  .

The Network Interface layer encompasses the Data Link and Physical layers of the OSI model. Note that the Internet layer does not take advantage of sequencing and acknowledgment services that might be present in the Data-Link layer. An unreliable Network Interface layer is assumed, and reliable communications through session establishment and the sequencing and acknowledgment of packets is the responsibility of the Transport layer.


Notes:
  • This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Some amount of grammar and spelling errors should be expected.
  • The site contain some broken links as it develops like a living tree... Please try to use Google, Open directory, etc. to find a replacement link (see HOWTO search the WEB for details). We would appreciate if you can mail us a correct link.
Google Search
Open directory

Research Index


Old News ;-)

[Dec 15, 2007] Unsung innovators Robert Kahn, the 'stepfather' of the Internet

One big moment that isn't often recognized, he says, is when DARPA -- working with a number of contractors, including Collins Radio, BBN and others -- demonstrated the first successful TCP connection traversing three dissimilar but interconnected networks. November 22, 2007, marked the 30th anniversary of that demo.

Recommended Links

Presentations

RFCs

RFC 793 (rfc793) - Transmission Control Protocol

rfc 768 user datagram protocol



Copyright © 1996-2009 by Dr. Nikolai Bezroukov. www.softpanorama.org was created as a service to the UN Sustainable Development Networking Programme (SDNP) in the author free time. Submit comments This document is an industrial compilation designed and created exclusively for educational use and is placed under the copyright of the Open Content License(OPL). Site uses AdSense so you need to be aware of Google privacy policy. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

Disclaimer:

Last modified: August 08, 2009