As discussed in last lecture, UDP does not provide any reliability guarantees beyond being able to detect bit-level errors. Transport-layer protocols provide reliability through a process of watching out for dropped and duplicated packets. In the first case, they ask the sender to resend a lost packet, either implicitly or explicitly. This lecture will discuss the various forms of reliable data transport, and develop three different theoretical protocols to explore various means of providing reliable guarantees.
By the end of this lesson, the student will be able to:
describe the purpose, limitations and variations in usage of each RDT tool—checksums, receiver feedback, retransmission, sequence numbers, timer expiration, window—as well as the network faults each is designed to overcome.
describe and analyze RDT protocols (including Stop-n-Wait, Go Back N & Selective Repeat) in order to show how each RDT tool is employed.
describe how changes to the employment scenario for a protocol affects the protocol design choices. An example is receiver-side buffering.