Go backward to Announcements
Go up to Top

Reliability at the Transport Layer

  1. A major function of many transport layer protocols is to ensure reliable delivery. This is certainly true of the Internet's TCP.

    This is a bit odd for several reason:

    The following discussion will attempt to clear up these issues.

  2. First, you must realize that even if low level protocols are designed to be reliable, network layer protocols may have to do additional work to preserve this reliability.

  3. In the case of a network layer protocol like IP, this isn't even an issue. So, we have to ask is it worth the effort to make our network layer protocol reliable.

  4. By design, IP does not provide any guarantees of reliable delivery. There are several reasons for this.

  5. UDP, like IP, does not guarantee delivery. Even the UDP checksum is optional. Thus, UDP is intended for end-to-end applications where reliability is not a primary concern.

  6. Within the Internet Protocol Suite, however, there is a reliable transport layer named TCP (Transmission Control Protocol).

  7. TCP shares many of UDP's features.

  8. TCP, however, differs from UDP in many ways.

  9. One can learn a bit more about how TCP works by looking briefly at the fields in a TCP packet:

    Source Port Destination Port
    Sequence Number
    Acknowledgement Number
    Hdr. Len. 0 Flags Window Size
    Checksum Urgent Ptr.
    Options
    Data

  10. If you look at the TCP packet fields, there is an oddity that suggests a big difference between ARQ at the data link and transport layers.

  11. In the data link level ARQ protocols, we never really addressed the issue of how the two ends of a connection got synchronized in the first place. This issue is harder to ignore now.

Computer Science 336
Department of Computer Science
Williams College

Prev Up