Transport Layer- design issues

1. Services Provided to the Application Layer

The transport layer must decide what kind of service it offers to applications, such as:

  • Reliable vs. unreliable delivery

  • Connection-oriented vs. connectionless service

  • Ordered vs. unordered delivery

  • Full-duplex communication

Example: TCP provides reliable, connection-oriented service; UDP does not.


2. Process-to-Process Communication (Port Addressing)

Unlike the network layer (host-to-host), the transport layer handles process-to-process delivery using:

  • Port numbers (source and destination)

  • Enables multiple applications to run simultaneously on the same host


3. Multiplexing and Demultiplexing

  • Multiplexing: Combining data from multiple application processes into one stream

  • Demultiplexing: Delivering received data to the correct application process

This is essential for efficient use of network resources.


4. Connection Management

For connection-oriented protocols:

  • Establishing a connection (e.g., TCP 3-way handshake)

  • Maintaining the connection

  • Graceful or abrupt termination

Design must handle duplicate, delayed, or lost connection requests.


5. Reliability and Error Control

Ensures data is delivered:

  • Without errors

  • Without loss

  • Without duplication

Techniques include:

  • Sequence numbers

  • Acknowledgements (ACKs)

  • Retransmissions

  • Checksums


6. Flow Control

Prevents a fast sender from overwhelming a slow receiver by:

  • Regulating the amount of data sent

  • Using sliding window mechanisms

This is an end-to-end responsibility (unlike data-link flow control).


7. Congestion Control

Controls the amount of data injected into the network to avoid congestion:

  • Detects congestion (e.g., packet loss, delay)

  • Adjusts transmission rate dynamically

This protects the network, not just the receiver.


8. Segmentation and Reassembly

  • Large messages are broken into smaller segments

  • Receiver reassembles them in correct order

Design must ensure correct sequencing and completeness.


9. Ordered Delivery

Segments may arrive out of order due to routing differences.

  • Transport layer must reorder data before delivering to the application.


10. Quality of Service (QoS)

Some applications require:

  • Low delay (VoIP, video calls)

  • Low jitter

  • Guaranteed bandwidth

Transport protocols may support or ignore QoS requirements.


11. Security Considerations

  • Protection against spoofing

  • Data integrity

  • Confidentiality (often handled with transport-layer security like TLS)