In contrast with OSI, the TCP/IP community did not spend a lot of effort defining a detailed reference model; in fact, the goals of the Internet architecture were only documented after TCP/IP reference model had been deployed. which defines the requirements for Internet hosts, mentions four different layers. Starting from the top, these are :
- an Application layer
- a Transport layer
- an Internet layer which is equivalent to the network layer of our reference model
- a Link layer which combines the functionalities of the physical and datalink layers of our five-layer reference model
Besides this difference in the lower layers, the TCP/IP reference model is very close to the five layers that we use throughout this document.
The OSI reference model
Compared to the five layers reference model explained above, the OSI reference model defined in [X200] is divided in seven layers. The four lower layers are similar to the four lower layers described above. The OSI reference model refined the application layer by dividing it in three layers :
The Session layer – The Session layer contains the protocols and mechanisms that are necessary to organize and to synchronize the dialogue and to manage the data exchange of presentation layer entities.
While one of the main functions of the transport layer is to cope with the unreliability of the network layer, the session’s layer objective is to hide the possible failures of transport-level connections to the upper layer higher.
For this, the Session Layer provides services that allow to establish a session-connection, to support orderly data exchange (including mechanisms that allow to recover from the abrupt release of an underlying transport connection), and to release the connection in an orderly manner.
The Presentation layer was designed to cope with the different ways of representing information on computers. There are many differences in the way computer store information. Some computers store integers as 32 bits field, others use 64 bits field and the same problem arises with floating point number.
For textual information, this is even more complex with the many different character codes that have been used. The situation is even more complex when considering the exchange of structured information such as database records.
To solve this problem, the Presentation layer contains provides for a common representation of the data transferred. The ASN notation was designed for the Presentation layer and is still used today by some protocols.
The Application layer that contains the mechanisms that do not fit in neither the Presentation nor the Session layer. The OSI Application layer was itself further divided in several generic service elements.
Note : Where are the missing layers in TCP/IP reference model ?
The TCP/IP reference places the Presentation and the Session layers implicitly in the Application layer. The main motivations for simplifying the upper layers in the TCP/IP reference model were pragmatic.
Most Internet applications started as prototypes that evolved and were later standardised. Many of these applications assumed that they would be used to exchange information written in American English and for which the 7 bits US-ASCII character code was sufficient.
This was the case for email, but as we’ll see in the next chapter, email was able to evolve to support different character encodings.
Some applications considered the different data representations explicitly. For example, ftp contained mechanisms to convert a file from one format to another and the HTML language was defined to represent web pages.
On the other hand, many ISO specifications were developed by committees composed of people who did not all participate in actual implementations. ISO spent a lot of effort analysing the requirements and defining a solution that meets all of these requirements.
Unfortunately, some of the specifications were so complex that it was difficult to implement them completely and the standardisation bodies defined recommended profiles that contained the implemented sets of options…
- See More : Computer controlled CMM
- See More : Robot language structure
- See More : Methods of robot programming