Connection Versus Connectionless Protocols

The transport layer has two protocols used to transport data from point A to point B — TCP and UDP, which are connection- and connectionless-based protocols, respectively. Most TCP/IP application layer services use the reliable TCP protocols to transport data. TCP maintains a connection to the server as long as is needed to fulfill a request. During this time, if a checksum error is found in a packet, the TCP protocol requests a retransmission. To the upper layers, this is transparent and guarantees data consistency. Where short data bursts are needed, or where the upper layers take care of data loss or error, UDP can be used to reduce overhead, at the expense of data consistency. UDP is commonly used for Domain Name System (DNS) lookups (small packet size, where the upper layer is capable of requesting data again in the event of failure) and also for streaming Moving Picture Experts Group (MPEG) streams. (The MPEG protocol is able to deal with quite a large amount of data loss and errors itself.)

We used pretty much all of the OSI layers in this one transaction. Table 6-1 shows the correlation between an action in the example and the OSI layer used.

We talk a lot about encapsulation in Table 6-1, and this is an important part of a layered network model. Encapsulation is a means to wrap data packets inside layer-specific headers and footers. For example, an application layer packet is encapsulated into a transport packet, which is encapsulated into a network packet, which is finally encapsulated into a data link packet, and then sent via the physical layer.

TABLE 6-1

OSI Layers and Their Uses

Layer

Action

Application

The FTP protocol is an application layer protocol.

Presentation

The transfer of my Word document in a format that is understandable by both servers. In addition, the way a Word document is constructed internally is a presentation layer protocol.

Session

When my laptop initially communicates with the FTP server, it has to create a TCP/IP session. This has no bearing on the upper FTP protocol because FTP works "on top" of a TCP/IP session.

Transport

The TCP/IP connection that is established in the session layer will be a connection-based protocol that lasts for the time of the FTP connection. Transporting packets is handled by the transport layer, which encapsulates the data from upper layers into manageable chunks. It also deals with the integrity of the data and retransmission of lost packets.

Network

When I specify an IP address to connect to, the network layer deals with establishing a route through my firewall, across the Atlantic, and to the FTP server at Wiley. This involves addressing schemes and routing.

Data link layer

After packets have been encapsulated by the upper layers, they are prepared by the data link layer to be transported over a wireless connection from my laptop to the base station. This involves packaging data from the upper layers into 802.11 protocol packets and also deals with any encryption scheme that I have between my laptop and the base station.

Physical layer

This physical layer deals with frequencies, signal strength, and so on of my wireless connection, as well as timing for sending packets over a wireless network.

You may have noticed that we don't have encapsulation of presentation and application layers. This is because these layers do not deal with packets of data; they are holders for standards of data — for example, XML, FTP, HTTP, and DOC.

The way a network connection is made makes no difference to the FTP program you use, whether it is over gigabit or wireless networks. This fact allows the TCP/IP protocol to expand to growing demands. For example, FTP has no idea about gigabit Ethernet because the technology is quite new. FTP, on the other hand, was around way before gigabit. A layered network model allows this abstraction to not affect the upper layers, as only the lower layers need to understand gigabit technology. This is why we can bolt on new technologies without having to worry about upper layers.

Was this article helpful?

0 0

Post a comment