Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on tcpipguide.com". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||tcpipguide.com^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide

NOTE: Using software to mass-download the site degrades the server and is prohibited.If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The fourth and middle
layer of the OSI Reference Model protocol stack is the transport
layer. I consider the transport layer in some ways to be part of
both the lower
and upper groups of layers
in the OSI model. It is more often associated with the lower layers,
because it concerns itself with the transport of data,
but its functions are also somewhat high-level, resulting in the layer
having a fair bit in common with layers 5 through 7 as well.

Recall that layers 1, 2 and 3 are
concerned with the actual packaging, addressing, routing and delivery
of data; the physical layer handles the bits; the data link layer deals
with local networks and the network layer handles routing between networks.
The transport layer, in contrast, is sufficiently conceptual that it
no longer concerns itself with these nuts and bolts matters.
It relies on the lower layers to handle the process of moving data between
devices.

The transport layer really acts as
a liaison of sorts between the abstract world of applications
at the higher layers, and the concrete functions of layers one to three.
Due to this role, the transport layers overall job is to provide
the necessary functions to enable communication between software application
processes on different computers. This encompasses a number of different
but related duties

Modern computers are multitasking,
and at any given time may have many different software applications
all trying to send and receive data. The transport layer is charged
with providing a means by which these applications can all send and
receive data using the same lower-layer protocol implementation. Thus,
the transport layer is sometimes said to be responsible for end-to-end
or host-to-host transport (in fact, the equivalent layer in the
TCP/IP
model is called the host-to-host
transport layer).

Transport Layer Services and Transmission Quality

Accomplishing this communication
between processes requires that the transport layer perform several
different, but related jobs. For transmission, the transport layer protocol
must keep track of what data comes from each application, then combine
this data into a single flow of data to send to the lower layers. The
device receiving information must reverse these operations, splitting
data and funneling it to the appropriate recipient processes. The transport
layer is also responsible for defining the means by which potentially
large amounts of application data are divided into smaller blocks for
transmission.

Another key function of the transport
layer is to provide connection services for the protocols and
applications that run at the levels above it. These can be categorized
as either connection-oriented
services or connectionless services. Neither
is better or worse than the other; they each have their uses. While
connection-oriented services can be handled at the network layer as
well, they are more often seen in the transport layer in the real
world. Some protocol suites, such as TCP/IP, provide both a connection-oriented
and a connectionless transport layer protocol, to suit the needs of
different applications.

The transport layer is also the place
in the layer stack where functions are normally included to add features
to end-to-end data transport. Where network layer protocols are normally
concerned with just best effort communications, where delivery
is not guaranteed. Transport layer protocols are given intelligence
in the form of algorithms that ensure that reliable and efficient communication
between devices takes place. This encompasses several related jobs,
including lost transmission detection and handling, and managing the
rate at which data is sent to ensure that the receiving device is not
overwhelmed.

Transmission quality, meaning ensuring
that transmissions are received as sent, is so important that some networking
references define the transport layer on the basis of reliability and
flow-control functions. However, not all transport layer protocols provide
these services. Just as a protocol suite may have a connection-oriented
and a connectionless transport layer protocol, it may also have one
that provides reliability and data management services, and one that
does not. Again, this is the case with TCP/IP: there is one main transport
layer protocol, TCP, that includes reliability and flow control features,
and a second, UDP, that doesn't.

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!