Title: The OSI Reference Model
1The OSI Reference Model
2The Transport Layer
- Provides reliable end-to-end service to processes
in the application layer - Connection-oriented or connection-less services.
- TPDUs (Transport Protocol Data Units) Refer to
messages sent between two transport entities. - Transport service primitives Allow application
programs to access the transport layer services. - Data received from application layer is broken
into TPDUs that should fit into the data or
payload field of a packet. - Packets received possibly out-of-order from the
network layer are reordered and assembled for
delivery to application layer. - Transport Entity Hardware/software in the
transport layer - In operating system kernel or,
- In a separate user process or,
- In the network interface card.
- Option Negotiation The process of negotiating
quality of service (QoS) parameters between the
user and remote transport entities as specified
by applications.
3Nesting of TPDUs, Packets And Frames
4Data Link Layer Vs. Transport Layer
Data Link Layer Environment Adjacent
routers.
Transport Layer Environment End-to-End from
source to destination.
5Network, Transport, And Application Layers
Interfaces
(Transport Protocol Data Unit)
6Simple Transport Layer Primitives
Primitives used to provide transport services to
applications
7Transport Layer Quality of Service (QoS)
Parameters
Application QoS requirements are specified using
these parameters
8Transport Layer Connection Management
State diagram for a simple connection scheme.
Solid lines Client state sequence.
Dashed lines Server state sequence.
9TransportConnection Addressing TSAPs, NSAPs
- Network Layer Addresses NSAP (Network Service
Access Point) i.e IP address. - Transport Layer Addresses TSAP (Transport
Service Access Point) - i.e (IP address, local port)
10Transport Flow Control
- To accomplish transport flow control a Sliding
Window protocol is used end-to-end using TDPUs as
protocol transfer units - Available receiver capacity and buffering used as
a receive window RWIN. - Receiver buffer over-runs are usually not
allowed. - Each TPDU must carry an identifier or sequence
number to distinguish between original TPDUs and
delayed duplicates. - To curtail the effect of delayed duplicates
- Packets are not allowed to live forever.
- Each packet has a restricted maximum lifetime
T. -
- The low-order k-bits of a time-of-day clock, of
the form of a binary counter, are usually used
to generate initial TPDU sequence numbers for new
connections. - This clock is assumed to keep running even if the
host crashes. - The clock frequency and k are selected such
that a generated initial sequence number should
not repeat (i.e. be assigned to another TPDU) for
a period longer than the maximum packet lifetime
T forbidden region.
11Transport Flow Control
- Once an initial TDPU sequence number is assigned,
its incremented as required by the connection.
- TDPU sequence numbers of a connection may run
into forbidden region if - A host sends too much data too fast on a newly
opened connection - Here, actual used sequence number vs. time is
more steep than initial sequence number
generation vs. time. - This restricts the maximum data rate of a
connection to one TDPU per cycle. - At any connection data rate less than the
initial sequence number generation clock rate - The actual sequence numbers used will eventually
run into the forbidden region from the left. - This condition must be checked by transport
entity requiring a TDPU delay of T, or sequence
number re- synchronization.
12TPDU Sequencing
TPDUs may not be issued in the forbidden region
The re-synchronization
problem. Connection data rate less than initial
sequence number generation clock rate
T Maximum Packet Lifetime
13Transport Connection Protocol Three-Way
Handshake
Old duplicate CONNECTION REQUEST
Normal operation
Duplicate CONNECTION REQUEST and duplicate ACK
14Abrupt Asymmetric Transport Disconnection
Leads to loss of data and incorrect operation.
CR Connection Request DR Disconnect Request
15TransportConnection Release Scenarios
Normal case of three-way handshake
Final ACK lost
Response lost and subsequent DRS lost
Response lost
16Transport Layer Flow Control and Buffering
Chained fixed-size buffers
Chained variable-size buffers
One large circular buffer per connection