EECC694 - Shaaban #1 lec #3 Spring2000 3-14-2000 The OSI Reference Model.
The OSI Reference Modelmeseec.ce.rit.edu/eecc694-spring2000/694-4-18-2000.pdf · 2000. 4. 18. ·...
Transcript of The OSI Reference Modelmeseec.ce.rit.edu/eecc694-spring2000/694-4-18-2000.pdf · 2000. 4. 18. ·...
EECC694 - ShaabanEECC694 - Shaaban#1 lec #11 Spring2000 4-18-2000
The OSI Reference ModelThe OSI Reference Model
EECC694 - ShaabanEECC694 - Shaaban#2 lec #11 Spring2000 4-18-2000
The Transport LayerThe 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 sentbetween two transport entities.
• Transport service primitives: Allow application programs to accessthe transport layer services.
• Data received from application layer is broken into TPDUs that shouldfit into the data or payload field of a packet.
• Packets received possibly out-of-order from the network layer arereordered 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 asspecified by applications.
EECC694 - ShaabanEECC694 - Shaaban#3 lec #11 Spring2000 4-18-2000
Nesting of TPDUs,Nesting of TPDUs,Packets And FramesPackets And Frames
EECC694 - ShaabanEECC694 - Shaaban#4 lec #11 Spring2000 4-18-2000
Data Link Layer Vs. Transport LayerData Link Layer Vs. Transport Layer
Data Link Layer Environment:Data Link Layer Environment: Adjacent routers. Adjacent routers.
Transport Layer Environment: Transport Layer Environment:End-to-End from source to destination.End-to-End from source to destination.
EECC694 - ShaabanEECC694 - Shaaban#5 lec #11 Spring2000 4-18-2000
Network, Transport, And ApplicationNetwork, Transport, And ApplicationLayers InterfacesLayers Interfaces
(Transport Protocol Data Unit)
EECC694 - ShaabanEECC694 - Shaaban#6 lec #11 Spring2000 4-18-2000
Simple Transport LayerSimple Transport LayerPrimitivesPrimitives
Primitives used to provide transport services to applications
EECC694 - ShaabanEECC694 - Shaaban#7 lec #11 Spring2000 4-18-2000
Transport Layer:Transport Layer: Quality of Service (QoS) Parameters Quality of Service (QoS) Parameters
Application QoS requirements are specified using these parameters
EECC694 - ShaabanEECC694 - Shaaban#8 lec #11 Spring2000 4-18-2000
State diagram for a simple connection scheme. Solid lines: Client state sequence. Dashed lines: Server state sequence.
Transport Layer Connection ManagementTransport Layer Connection Management
EECC694 - ShaabanEECC694 - Shaaban#9 lec #11 Spring2000 4-18-2000
TransportTransportConnectionConnectionAddressing:Addressing:
TSAPs, TSAPs, NSAPs 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)
EECC694 - ShaabanEECC694 - Shaaban#10 lec #11 Spring2000 4-18-2000
Transport Flow ControlTransport 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 todistinguish 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 binarycounter, are usually used to generate initial TPDU sequence numbersfor 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 [forbiddenregion].
EECC694 - ShaabanEECC694 - Shaaban#11 lec #11 Spring2000 4-18-2000
Transport Flow ControlTransport Flow Control• Once an initial TDPU sequence number is assigned, it’s
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.
EECC694 - ShaabanEECC694 - Shaaban#12 lec #11 Spring2000 4-18-2000
TPDU SequencingTPDU Sequencing
TPDUs may not be issued TPDUs may not be issued in the forbidden regionin the forbidden region
The re-synchronization The re-synchronization problem. problem.Connection data rate less than initial sequencenumber generation clock rate
T = Maximum Packet Lifetime
EECC694 - ShaabanEECC694 - Shaaban#13 lec #11 Spring2000 4-18-2000
Transport ConnectionTransport ConnectionProtocol:Protocol:
Three-WayThree-Way Handshake Handshake
Normal operation Old duplicate CONNECTION REQUEST
Duplicate CONNECTION REQUEST and duplicate ACK
EECC694 - ShaabanEECC694 - Shaaban#14 lec #11 Spring2000 4-18-2000
Abrupt Asymmetric Transport DisconnectionAbrupt Asymmetric Transport DisconnectionLeads to loss of data and incorrect operation.
CR = Connection RequestDR = Disconnect Request
EECC694 - ShaabanEECC694 - Shaaban#15 lec #11 Spring2000 4-18-2000
TransportTransportConnectionConnection
ReleaseReleaseScenariosScenariosNormal case of three-way handshake
Response lost andsubsequent DRS lost
Final ACK lost
Response lost
EECC694 - ShaabanEECC694 - Shaaban#16 lec #11 Spring2000 4-18-2000
Transport Layer:Transport Layer:Flow Control and BufferingFlow Control and Buffering
Chained fixed-size buffers
Chained variable-size buffers
One large circularbuffer per connection