The OSI Reference Model

One of the greatest functions of the OSI specifications is to assist in data transfer between disparate hosts regardless if they’re Unix, Windows or Mac based. But keep in mind that the OSI model isn’t a physical model; it’s a conceptual and comprehensive yet fluid set of guidelines, which application developers utilize to create and implement applications that run on a network. It also provides a framework for creating and implementing networking standards, devices, and internetworking schemes. The OSI model has seven layers:
■■ Application (Layer 7)
■■ Presentation (Layer 6)
■■ Session (Layer 5)
■■ Transport (Layer 4)
■■ Network (Layer 3)
■■ Data Link (Layer 2)
■■ Physical (Layer 1)

Figure 2.1 summarizes the functions that occur at each layer of the OSI model. With this
in mind, you’re ready to delve into what takes place at each layer in detail.

(Some people like to use the mnemonic Please Do Not Throw Sausage Pizza Away to remember the seven layers (starting at Layer 1 and moving up to Layer 7). I didn’t make that up!

The OSI’s seven layers are divided into two groups. The top three layers define the rules of how the applications working within host machines communicate with each other as well as with end users. The bottom four layers define how the actual data is transmitted from end to end. Figure 2.2 shows the top three layers and their functions, and Figure 2.3 shows the four lower layers and their functions.

Taking a gander at Figure 2.2, plainly genuine clients interface with the PC at the Application layer. It’s additionally obvious that the upper layers are in charge of utilizations conveying between hosts. Keep in mind that none of the upper layers “know” anything about systems administration or system addresses. That is the obligation of the four base layers. Figure 2.3 shows that the four base layers characterize how information is exchanged through physical media, switches, and switches. These base layers likewise decide how to modify an information stream from a transmitting host to a goal host’s application.

 

The Application Layer

 

The Application layer of the OSI model marks the spot where users actually communicate or interact with the computer. Technically, users communicate with the network stack through application processes, interfaces, or APIs that connect the application in use to the operating system of the computer. The Application layer chooses and determines the availability of communicating partners along with the resources necessary to make their required connections. It arranges banding together applications and structures an accord on methods for controlling information trustworthiness and blunder recuperation. The Application layer becomes possibly the most important factor just when it’s clear that entrance to the system will be required soon. Take the instance of Internet Explorer (IE). You could uninstall each hint of systems administration parts from a framework, for example, TCP/IP, the system card, et cetera, and you could even now utilize IE to see a nearby HTML archive without an issue. In any case, things would get untidy in the event that you endeavored to accomplish something like view an HTML report that must be recovered utilizing HTTP or seize a document with FTP or TFTP, on the grounds that IE reacts to demands like those by endeavoring to get to the Application layer. So’s occurring that the Application layer goes about as an interface between the application program—which isn’t a piece of the layered structure—and the following layer around giving approaches to the application to send data down through the convention stack. As such, IE doesn’t live inside the Application layer—it interfaces with Application layer conventions when it needs to manage remote assets. The Application layer is likewise in charge of recognizing and setting up the accessibility of the expected correspondence accomplice and deciding if adequate assets for the asked for correspondence exist. These undertakings are vital on the grounds that PC applications now and again require something other than work area assets. Regularly, they join conveying parts from in excess of one system application. Prime precedents are record exchanges and email and in addition empowering remote access, organize administration exercises, and customer server forms like printing and data area. Many system applications give administrations to correspondence over big business systems, however for present and future web working, the need is quick creating to reach past the impediments of current physical systems administration. It’s essential to recall that the Application layer goes about as an interface between application programs. For example, Microsoft Word doesn’t live at the Application layer, it interfaces with the Application layer conventions. Later in Chapter 6, “Prologue to the Internet Protocol,” I’ll reveal to all of you about key projects or procedures that really do live at the Application layer, similar to FTP and TFTP.

 

The Presentation Layer

 

The Presentation layer gets its name from its purpose: it presents data to the Application
layer and is responsible for data translation and code formatting. A successful data transfer technique is to adapt the data into a standard format before transmission. Computers are configured to receive this generically formatted data and then convert it back into its native format for reading—for example, from EBCDIC to ASCII. By providing translation services, the Presentation layer ensures that the data transferred from one system’s Application layer can be read and understood by the Application layer on another system. The OSI has protocol standards that define how standard data should be formatted. Tasks like data compression, decompression, encryption, and decryption are all associated with this layer. Some Presentation layer standards are even involved in multimedia operations.

 

The Session Layer

 

The Session layer is responsible for setting up, managing, and then tearing down sessions
between Presentation layer entities. This layer also provides dialog control between devices or nodes. It coordinates communication between systems and serves to organize their communication by offering three different modes: simplex, half duplex, and full duplex. To sum up, the Session layer basically keeps applications’ data separate from other applications’ data. For a good example, the Session layer allows multiple web browser sessions on your desktop at the same time.

 

The Transport Layer

 

The Transport layer segments and reassembles data into a data stream. Services located in the Transport layer handle data from upper-layer applications and unite it onto the same data stream. They provide end-to-end data transport services and can establish a logical connection between the sending host and destination host on the internetwork.
The Transport layer is responsible for providing the mechanisms for multiplexing upper layer applications, establishing virtual connections, and tearing down virtual circuits. It also hides the many and sundry details of any network-dependent information from the higher layers, facilitating data transfer.
You also know that TCP is a reliable service and UDP is not. These two protocols give application developers more options because they have a choice between them when they’re working with TCP/IP protocols. The term reliable networking relates to the Transport layer and means that acknowledgments, sequencing, and flow control will be used. The Open Systems Interconnection Specifications The Transport layer can be connectionless or connection-oriented, but it’s especially important for you to really understand the connection-oriented portion of the Transport layer. One of the greatest functions of the OSI specifications is to assist in data transfer between disparate hosts regardless if they’re Unix, Windows, or Mac based. But keep in mind that the OSI model isn’t a physical model; it’s a conceptual and comprehensive yet fluid set of guidelines, which application developers utilize to create and implement applications that run on a network. It also provides a framework for creating and implementing networking standards, devices, and internetworking schemes. The OSI model has seven layers:
■■ Application (Layer 7)
■■ Presentation (Layer 6)
■■ Session (Layer 5)
■■ Transport (Layer 4)
■■ Network (Layer 3)
■■ Data Link (Layer 2)
■■ Physical (Layer 1)

Figure 2.1 summarizes the functions that occur at each layer of the OSI model. With this
in mind, you’re ready to delve into what takes place at each layer in detail.

(Some people like to use the mnemonic Please Do Not Throw Sausage Pizza Away to remember the seven layers (starting at Layer 1 and moving up to Layer 7). I didn’t make that up!

The OSI’s seven layers are divided into two groups. The top three layers define the rules of how the applications working within host machines communicate with each other as well as with end users. The bottom four layers define how the actual data is transmitted from end to end. Figure 2.2 shows the top three layers and their functions, and Figure 2.3 shows the four lower layers and their functions.

Looking at Figure 2.2, it’s clear that actual users interact with the computer at the Application layer. It’s also apparent that the upper layers are responsible for applications communicating between hosts. Remember that none of the upper layers “know” anything about networking or network addresses. That’s the responsibility of the four bottom layers. Figure 2.3 illustrates that the four bottom layers define how data is transferred through physical media, switches, and routers. These bottom layers also determine how to rebuild a data stream from a transmitting host to a destination host’s application.

 

The Application Layer

 

The Application layer of the OSI model marks the spot where users actually communicate or interact with the computer. Technically, users communicate with the network stack through application processes, interfaces, or APIs that connect the application in use to the operating system of the computer. The Application layer chooses and determines the availability of communicating partners along with the resources necessary to make them
required connections. It coordinates partnering applications and forms a consensus on procedures for controlling data integrity and error recovery. The Application layer comes into play only when it’s apparent that access to the network will be needed soon. Take the case of Internet Explorer (IE). You could uninstall every trace of networking components from a system, such as TCP/IP, the network card, and so on, and you could still use IE to view a local HTML document without a problem. But things would definitely get messy if you tried to do something like view an HTML document that had to be retrieved using HTTP or nab a file with FTP or TFTP because IE responds to requests like those by attempting to access the Application layer. So what’s happening is that the Application layer acts as an interface between the application program—which isn’t part of the layered structure— and the next layer down by providing ways for the application to send information down through the protocol stack. In other words, IE doesn’t reside within the Application layer— it interfaces with Application layer protocols when it needs to deal with remote resources. The Application layer is also responsible for identifying and establishing the availability of the intended communication partner and determining whether sufficient resources for the requested communication exist. These tasks are important because computer applications sometimes require more than just desktop resources. Often, they unite communicating components from more than one network application. Prime examples are file transfers and email as well as enabling remote access, network-management activities, and client-server processes like printing and information location. Many network applications provide services for communication over enterprise networks, but for present and future internetworking, the need is fast developing to reach beyond the limitations of current physical networking. It’s important to remember that the Application layer acts as an interface between application programs. For instance, Microsoft Word doesn’t reside at the Application layer, it interfaces with the Application layer protocols. Later in Chapter 6, “Introduction to the Internet Protocol,” I’ll tell you all about key programs or processes that actually do reside at the Application layer, like FTP and TFTP.

 

The Presentation Layer

 

The Presentation layer gets its name from its purpose: it presents data to the Application
layer and is responsible for data translation and code formatting. A successful data transfer technique is to adapt the data into a standard format before transmission. Computers are configured to receive this generically formatted data and then convert it back into its native format for reading—for example, from EBCDIC to ASCII. By providing translation services, the Presentation layer ensures that the data transferred from one system’s Application layer can be read and understood by the Application layer on another system. The OSI has protocol standards that define how standard data should be formatted. Tasks like data compression, decompression, encryption, and decryption are all associated
with this layer. Some Presentation layer standards are even involved in multimedia
operations.

 

The Session Layer

 

The Session layer is responsible for setting up, managing, and then tearing down sessions
between Presentation layer entities. This layer also provides dialog control between devices or nodes. It coordinates communication between systems and serves to organize their communication by offering three different modes: simplex, half duplex, and full duplex. To sum up, the Session layer basically keeps applications’ data separate from other applications’ data. For a good example, the Session layer allows multiple web browser sessions on your desktop at the same time.

 

The Transport Layer

 

The Transport layer segments and reassembles data into a data stream. Services located in the Transport layer handle data from upper-layer applications and unite it onto the same data stream. They provide end-to-end data transport services and can establish a logical connection between the sending host and destination host on the internetwork.
The Transport layer is responsible for providing the mechanisms for multiplexing upper layer applications, establishing virtual connections, and tearing down virtual circuits. It also hides the many and sundry details of any network-dependent information from the higher layers, facilitating data transfer.
You also know that TCP is a reliable service and UDP is not. These two protocols give application developers more options because they have a choice between them when they’re working with TCP/IP protocols. The term reliable networking relates to the Transport layer and means that acknowledgments, sequencing, and flow control will be used. The Open Systems Interconnection Specifications The Transport layer can be connectionless or connection-oriented, but it’s especially important for you to really understand the connection-oriented portion of the Transport layer.