Skip to content
UoL CS Notes

The Application Layer - Transport Services

COMP211 Lectures

Service Requirements

  • Data Integrity
    • You may need 100% reliable data transfer for some types of data transfer.
    • Media streaming can often compensate for loss.
  • Timing
    • Some apps require low latency for effective use of the application.
  • Throughput
    • Media streaming often requires a minimum throughput to be effective.
  • Security
    • Data encryption

Common Applications

Application Data Loss Throughput Time Sensitive
File transfer/dowlad No loss Elastic no
E-mail No Loss Elastic no
Web documents No loss Elastic no
Telephony Loss-tolerant Audio: 5 Kbps - 1 Mbps, Video 2 Mbps - 8 Mbps Yes - 10ms
Streaming Loss-tolerant Same as above Yes, few seconds
Interactive games Loss-tolerant Kbps+ Yes - 10ms
Text messaging No loss elastic Dependant on application

Internet Transport Protocols

TCP

This method provides:

  • Reliable Transport
  • Flow Control
    • Sender won’t overwhelm the receiver.
  • Congestion Control

It doesn’t provide:

  • Timing
  • Minimum throughput guarantee
  • Security

This protocol is connection-oriented as a setup it required between teh client and server processes.

UDP

This method provides:

  • Unreliable Data Transfer

It doesn’t provide:

  • Reliable Transport
  • Flow Control
  • Congestion Control
  • Timing
  • Minimum throughput guarantee
  • Security

This method has no guarantees. However, this enables the fastest connections and quickest setup times.

Security

TCP and UDP sockets provide no security methods, as a result there are additional protocols that allow this service.

Transport layer security (TLS) provides:

  • TCP encrypted connections.
  • Data integrity
  • End-point authentication.

TLS is implemented in the application layer. This means that:

  • Apps use TLS libraries that, in turn, use TCP.
  • TLS socket API allows clear-text to be sent to the socket to traverse the network encrypted.