www.pragsoft.com Chapter 5: The Transport Layer
69
Simple class
- -
- -
- -
- A
1 Basic error recovery
class -
- 3
- 3
- 3
B 2
Multiplexing class
3 -
- 3
3 -
3 A
3 Error recovery
multiplexing class 3
- 3
3 3
- 3
B 4
Error detection and recovery class
3 3
3 3
3 3
3 C
MUX = Multiplexing of multiple transport connections onto a single network connection DER = Data Error Recovery
SER = Signaled Error Recovery FC
= Flow Control ACK
= Acknowledgments SPL
= Resequencing of TPDUs Splitting and Recombining connections EXP = Expedited data transfer
5.2.3. Segmentation
The Transport Service Data Units TSDUs which the transport service users work with may be larger than can be handled by the network layer packets. For this reason,
all protocol classes support the segmenting of TSDUs into multiple TPDUs and re- assembling them at the receiver end. This facility is very similar to the segmentation
facility supported by the internetworking sublayers.
5.2.4. Multiplexing
Given the limited number of ports available on a host and the potentially large number of transport connections usually required by the users, multiple transport connections
are often multiplexed onto a single network connection. The price to be paid for this is additional complexity: transport connections need to carry identifiers for distinguishing
between connections over the same circuit, and each connection needs to be separately flow controlled. Multiplexing is supported by Class 2, 3, and 4 protocols.
5.2.5. Splitting and Recombining
In situations where a transport connection is needed to have a bandwidth of size that cannot be provided by a single network connection, the connection may be split over
multiple network connections. This is the opposite of multiplexing and introduces an additional complexity: with multiple network connections, the TPDUs may arrive out of
order and need to be resequenced. Thus splitting can only be supported when the transport protocol can support resequencing of TPDUs. Class 4 is the only protocol
that can provide this function.
5.2.6. Addressing
A transport layer source or destination address uniquely identifies a TSAP within a network-wide name space. The TSAP denotes a port on a host to which transport
connections are made. Transport addresses are not directly used by TPDUs;
70 Communication Networks
Copyright © 2005 PragSoft
references are used instead. These are much shorter identifiers that are mapped to
the transport addresses in the variable part of the TPDU header during connection establishment, allowing the two parties to agree on a common mapping. The source
and destination references are used for the remainder of the connection.
Also, for user convenience, a higher level mapping is often provided by a name
server, which maps meaningful service names for frequently-used transport addresses to the addresses themselves. When wishing to connect to one of these services, the
user specifies the service name and the network software looks up the name using the name server to come up with the corresponding transport address, which is then used
for initiating a transport connection.
5.2.7. Flow Control
As mentioned earlier, supporting multiplexing in Class 2, 3, and 4 protocols requires transport connections to be separately flow controlled. The flow control protocol used
for this purpose is called credit. It is similar to the sliding window protocol of the data link and network layers in that a window is used. However, unlike the sliding window
protocol where the receiver window size remains fixed, here the window size may vary. The sender is informed of the new window size through a data acknowledgment
TPDU which includes a new credit value the Credit field in the TPDU which denotes the number of TPDUs that can be received.
A suitable credit value is negotiated during connection establishment. This value can be dynamically adjusted subsequently by the receiver. When the receiver is unable
to receive further TPDUs, it can suspend flow of further TPDUs by adjusting the credit value to 0.
5.2.8. Error Checking
The transport layer may do additional error checking on top of the ones carried out by lower layers. This may serve one of two reasons: the lower layers might not be
performing any error checking, or the network service may be very unreliable and deliver packets that have undetected errors.
To address these needs especially for the Class 4 protocol a checksum option is available in the TPDUs. This is a 16-bit checksum that covers the entire TPDU and is
designed to be much simpler than CRC so that it can be efficiently computed in software.
5.3. Transport Layer Standards
Transport services discussed in Section 5.1 are defined by the ISO 8072 and CCITT X.214 standards. ISO 8073 and CCITT X.224 define the transport protocol, and were
the basis of the descriptions in Section 5.2. Below we will look at TCP— a de facto transport layer standard that has gained considerable acceptance in the industry.