You are on page 1of 25

Data Communications and

Networking
1
Chapter 22 Transport Layer
22.1 Duties

22.2 Connection

22.3 The OSI Transport Protocol

Data Communications and
Networking
2
Transport Layer(contd)

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,


An internetwork

Data Communications and
Networking
3
22.1 Duties of the Transport Layer

Transport layer concept


Data Communications and
Networking
4
Duties of the Transport Layer(contd)

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
5
Duties of the Transport Layer(contd)

The services provided by transport layer protocols:


Data Communications and
Networking
6
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
7
Addressing

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
8
Addressing (contd)

In transport layer, service access points identifies upper-layer


services (applications).
Data Communications and
Networking
9
Reliable Delivery

Aspects of reliable delivery


Data Communications and
Networking
10
Reliable Delivery(contd)

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
11
Reliable Delivery(contd)

Sequence Control










What is important is that segments are properly reassembled at


the destination.
Segmentation
Reassembly
Data Communications and
Networking
12
Reliable Delivery(contd)

Segmentation and Reassembly

Transport layer adds a sequence number at each segment.

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
13
Reliable Delivery(contd)

Loss Control

Sequence numbers allow the receivers transport layer protocol


to identify any missing segments and request redelivery.
Data Communications and
Networking
14
Reliable Delivery(contd)

Duplication Control

Sequence numbers allow the receiver to identify and discard


duplicate segments.
Data Communications and
Networking
15
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 windows 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
16
Flow Control(contd)

Sliding window
Data Communications and
Networking
17
Flow Control(contd)

Sliding windows used at the transport layer are usually byte


oriented rather than frame oriented.
Data Communications and
Networking
18
Multiplexing

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.25s three bit sequence code).
Data Communications and
Networking
19
22.2 Connection

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
20
Connection(contd)

Connection establishment(three-way handshaking)


Data Communications and
Networking
21
Connection(contd)

Connection termination(three-way handshaking)












Termination at TCP: four-way handshaking


Data Communications and
Networking
22
22.3 The OSI Transport Protocol

To avoid redundant services, the OSI model defines five


types of transport classes:

TP0: Simple class

TP1: Basic error recovery class

TP2: Multiplexing class

TP3: Error recovery and multiplexing class

TP4: Error detection and recovery class


Data Communications and
Networking
23
The OSI Transport Protocol(contd)

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
24
The OSI Transport Protocol(contd)

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 :

These parameters are used mostly for management.

Data
Data Communications and
Networking
25
The OSI Transport Protocol(contd)

Connection-Oriented and Connectionless Service

The OSI model supports both COTS and CLTS.

Connection-oriented model is more commonly used.