L20 - MIT 6.02 DRAFT Lecture Notes Fall 2010(Last update...

Info icon This preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
MIT 6.02 DRAFT Lecture Notes Fall 2010 (Last update: November 22, 2010) Comments, questions or bug reports? Please contact [email protected] C HAPTER 20 Reliable Data Transport Protocols Packets in a best-effort network lead a rough life. They can be lost for any number of rea- sons, including queue overflows at switches because of congestion, repeated collisions over shared media, routing failures, etc. In addition, packets can arrive out-of-order at the destination because different packets sent in sequence take different paths or because some switch en route reorders packets for some reason. They usually experience variable delays, especially whenever they encounter a queue. In some cases, the underlying network may even duplicate packets. Many applications, such as Web page downloads, file transfers, and interactive termi- nal sessions would like a reliable, in-order stream of data, receiving exactly one copy of each byte in the same order in which it was sent. A reliable transport protocol does the job of hiding the vagaries of a best-effort network—packet losses, reordered packets, and du- plicate packets—from the application, and provides it the abstraction of a reliable packet stream. We will develop protocols that also provide in-order delivery. A large number of protocols have been developed that various applications use, and there are several ways to provide a reliable, in-order abstraction. This lecture will not survey them all, but will instead discuss two protocols in some detail. The first protocol, called stop-and-wait , will solve the problem in perhaps the simplest possible way that works, but do so somewhat inefficiently. The second protocol will augment the first one with a sliding window to significantly improve performance. All reliable transport protocols use the same powerful ideas: redundancy to cope with losses and receiver buffering to cope with reordering , and most use adaptive timers . The tricky part is figuring out exactly how to apply redundancy in the form of packet retransmis- sions, in working out exactly when retransmissions should be done, and in achieving good performance. This chapter will study these issues, and discuss ways in which a reliable transport protocol can achieve high throughput. 20.1 The Problem The problem we’re going to solve is relatively easy to state. A sender application wants to send a stream of packets to a receiver application over a best-effort network, which 1
Image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
2 CHAPTER 20. RELIABLE DATA TRANSPORT PROTOCOLS can drop packets arbitrarily, reorder them arbitrarily, delay them arbitrarily, and possibly even duplicate packets. The receiver wants the packets in exactly the same order in which the sender sent them, and wants exactly one copy of each packet. 1 Our goal is to devise mechanisms at the sending and receiving nodes to achieve what the receiver wants. These mechanisms involve rules between the sender and receiver, which constitute the proto- col. In addition to correctness, we will be interested in calculating the throughput of our protocols, and in coming up with ways to maximize it.
Image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern