Chapter 22. Transport LayerData Communications and Networking
Transport Layer(cont’d)
Transport layer acts as a liaison between the upper-layer protocols
and the lower-layer protocols.
To make this separation possible, the transport layer is
independent of the physical network.
Examples: TCP, UDP, …
Transport layer concept
Transport layer compared with data link layer
The services of the transport layer are similar to those of the
data link layer.
Data Communications and Networking
The services provided by transport layer protocols:
Data Communications and Networking
End-to-End Delivery
The network layer treats each packet as an independent entry, even
those belonging to a single message.
The transport layer oversees the end-to-end (source-to-destination)
delivery of an entire message.
Data Communications and Networking
Levels of Service Access Points
Data link level protocols need to know which two computers within a
network are communicating.
MAC address
Network level protocols need to know which two computers within an
internet are communicating.
IP address
Transport level protocols need to know which upper-layer protocols
are communicating.
Port
Data Communications and Networking
Error Control
Mechanisms for error control are based on error detection and
retransmission.
Error detections are performed using algorithms implemented in
software, such as checksum.
We already have error handling at the data link layer, why do we
need it at the transport layer?
Data Communications and Networking
Sequence Control
What is important is that segments are properly reassembled at the
destination.
Segmentation
Reassembly
This number indicates the order for reassembly.
Each segment carries a field that indicates whether it is the final
segment or middle segment of a transmission.
Concatenation and Separation
When the size of the data unit belonging to a single session is so
small that several units can fit together into a single
datagram.
A sequence number at each unit allows correct separation at the
destination.
Data Communications and Networking
Loss Control
Sequence numbers allow the receiver’s transport layer protocol to
identify any missing segments and request redelivery.
Data Communications and Networking
Duplication Control
Sequence numbers allow the receiver to identify and discard
duplicate segments.
Data Communications and Networking
Flow Control
Flow control at this layer is performed end-to-end rather than
across a single link.
A sliding window is used to make data transmission more efficient
as well as to control the flow of data so that the receiver does
not become overwhelmed.
Some points about sliding windows at the transport layer:
The sender does not have to send a full window’s worth of
data.
An acknowledgment can expand the size of the window based on the
sequence number of the acknowledged data segment.
The size of the window can be increased or decreased by the
receiver.
The receiver can send an acknowledgment at anytime.
Data Communications and Networking
Flow Control(cont’d)
Sliding windows used at the transport layer are usually byte
oriented rather than frame oriented.
Data Communications and Networking
Upward Multiplexing
The transport layer can send several transmissions bound for the
same destination along the same path.
It is useful when the underlying networks have high
throughput.
Downward Multiplexing
It is useful when the underlying networks have low or slow
capacity(e.g., X.25’s three bit sequence code).
Data Communications and Networking
End-to-end delivery can be accomplished in either of two
modes:
Connection-oriented transmission has three stages:
connection establishment,
data transfer,
connection termination.
Connectionless transmission
Data Communications and Networking
22.3 The OSI Transport Protocol
To avoid redundant services, the OSI model defines five types of
transport classes:
TP0: Simple class
TP2: Multiplexing class
Data Communications and Networking
The OSI Transport Protocol(cont’d)
Which class is used depends on the type of service required by the
upper layers.
TP0 and TP2 are used with perfect network layers.
In the perfect network layer, the number of packets that are lost
or damaged is almost zero.
TP1 and TP3 are used with residual-error network layers.
In the residual-error network layer, some percentage of errors are
never corrected.
TP4 is used with unreliable network layers.
TP4 provides fully reliable, full-duplex, connection-oriented
services similar to TCP.
Data Communications and Networking
TPDU(Transport Protocol Data Unit)
Length : Total number of bytes (excluding the length field itself)
in the TPDU.
Fixed Parameters :
Code : CR, CC, DR, DC, DT(data), ED, AK, EA, RJ, ER
Source and destination reference
Sequence number
Credit allocation : It enables a receiver to tell the sender how
many more data units may be sent.
Variable(Optional) Parameters :
Data
Connection-Oriented and Connectionless Service
Connection-oriented model is more commonly used.