4 - Transport Layer

4 - Transport Layer

Transport Layer

  • establishes a reliable communication stream between a pair of systems across an unreliable network by putting sequence numbers in packets, holding packets at the destination until they can be delivered in order, and retransmitting lost packets

The Need for Transport Layer

underlying the transport layer is the network layer which has limitations:

  • drop messages
  • reorder messages
  • deliver duplicate copies of a message
  • limit the message to a finite size
  • deliver messages after an arbitrarily long delay

the transport layer can provide (but is not necessary):

  • guarantees message delivery
  • delivers messages in the same order they are sent
  • delivers at most one copy of each message
  • supports arbitrarily large messages
  • supports synchronization between the sender and the receiver
  • allows the receiver to apply flow control to the sender
  • demultiplexing - supports multiple application processes on each host (port numbers)

Types of Transport/End-to-End Services/Protocols