End to End Internet Packet Dynamics Vern Paxson University of California, Berkeley Presented by Kiran Komaravolu.

Slides:



Advertisements
Similar presentations
The Transmission Control Protocol (TCP) carries most Internet traffic, so performance of the Internet depends to a great extent on how well TCP works.
Advertisements

Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Internet Measurement Conference 2003 Source-Level IP Packet Bursts: Causes and Effects Hao Jiang Constantinos Dovrolis (hjiang,
Slide Set 14: TCP Congestion Control. In this set... We begin Chapter 6 but with 6.3. We will cover Sections 6.3 and 6.4. Mainly deals with congestion.
Primitives for Achieving Reliability 3035/GZ01 Networked Systems Kyle Jamieson Department of Computer Science University College London.
Assume that a file is transferred from a node A to a node B. The file has been fragmented in 5 frames. Frame 0 is corrupted, the ACK of frame 1 is corrupted,
Error control Simplest: Cyclic Redundancy Checks - CRC Detects  all single bit errors  almost all 2-bit errors  any odd number of errors  all bursts.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Chapter 12 TCP Traffic Control Chapter 12 TCP Traffic Control.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
Error control An Engineering Approach to Computer Networking.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #11 TCP Eiffel (RFC 3522)
Checksums and Packet Reordering Sridhar Machiraju March 21 st, 2001 Network Reading Group, UCB.
Transport Layer 3-1 Transport Layer r To learn about transport layer protocols in the Internet: m TCP: connection-oriented protocol m Reliability protocol.
15-744: Computer Networking L-10 Congestion Control.
Transport Layer 3-1 Transport Layer r To learn about transport layer protocols in the Internet: m TCP: connection-oriented protocol m Reliability protocol.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
1 Internet Networking Spring 2006 Tutorial 10 The Eifel Detection Algorithm for TCP RFC 3522.
1 Reliability & Flow Control Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
Bandwidth Measurements Jeng Lung WebTP Meeting 10/25/99.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks TCP.
CS :: Fall 2003 TCP Friendly Streaming Ketan Mayer-Patel.
SEPT, 2005CSI Part 2.2 Protocols and Protocol Layering Robert Probert, SITE, University of Ottawa.
Spring 2000Nitin BahadurAdvanced Computer Networks A Comparison of Mechanisms for Improving TCP Performance over Wireless Links By: Hari B., Venkata P.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
CS 4396 Computer Networks Lab
1 Chapter 16 Protocols and Protocol Layering. 2 Protocol  Agreement about communication  Specifies  Format of messages (syntax)  Meaning of messages.
Wireless TCP Prasun Dewan Department of Computer Science University of North Carolina
University of the Western Cape Chapter 12: The Transport Layer.
1 Lecture 14 High-speed TCP connections Wraparound Keeping the pipeline full Estimating RTT Fairness of TCP congestion control Internet resource allocation.
CS551: End-to-End Packet Dynamics Paxon’99 Christos Papadopoulos (
1 TCP III - Error Control TCP Error Control. 2 ARQ Error Control Two types of errors: –Lost packets –Damaged packets Most Error Control techniques are.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
Lecture 9 – More TCP & Congestion Control
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Advance Computer Networks Lecture#09 & 10 Instructor: Engr. Muhammad Mateen Yaqoob.
TCP. TCP ACK generation [RFC 1122, RFC 2581] Event at Receiver Arrival of in-order segment with expected seq #. All data up to expected seq # already.
TCP Congestion Control 컴퓨터공학과 인공지능 연구실 서 영우. TCP congestion control2 Contents 1. Introduction 2. Slow-start 3. Congestion avoidance 4. Fast retransmit.
Transport Layer: Sliding Window Reliability
Failure detection The design of fault-tolerant systems will be easier if failures can be detected. Depends on the 1. System model, and 2. The type of failures.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
A Transport Layer Approach for Improving End-to-End Performance and Robustness Using Redundant Paths Min Zhang, Junwen Lai, Arvind Krishnamurthy, Larry.
1 Protocols and Protocol Layering. 2 Protocol Agreement about communication Specifies –Format of messages –Meaning of messages –Rules for exchange –Procedures.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
DATA LINK CONTROL. DATA LINK LAYER RESPONSIBILTIES  FRAMING  ERROR CONTROL  FLOW CONTROL.
Computer Networking Lecture 16 – Reliable Transport.
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Chapter 3 outline 3.1 transport-layer services
Congestion Control.
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
Jiyong Park Seoul National University, Korea
CS4470 Computer Networking Protocols
CS640: Introduction to Computer Networks
Protocols and Protocol Layering
The Transport Layer Reliability
Advanced Computer Networks
Transport Layer: Congestion Control
Protocols and Protocol Layering
Lecture 5, Computer Networks (198:552)
Impact of transmission errors on TCP performance
Presentation transcript:

End to End Internet Packet Dynamics Vern Paxson University of California, Berkeley Presented by Kiran Komaravolu

End to End characteristics of Internet paths. Network Pathologies Network Pathologies Out of order delivery Out of order delivery Packet replication Packet replication Packet corruption Packet corruption Bottleneck Bandwidth Bottleneck Bandwidth Packet Loss Packet Loss Loss rates Loss rates Data vs. Ack loss Data vs. Ack loss Loss Bursts Loss Bursts TCP retransmission TCP retransmission Packet Delays Packet Delays

Out of order delivery is fairly prevalent Out of order delivery is fairly prevalent Re-ordering is asymmetric Re-ordering is asymmetric Route-Fluttering Route-Fluttering Site-dependant Site-dependant Impact of re-ordering is not very significant. Impact of re-ordering is not very significant. Out of Order Delivery

Packet Replication Packet Replication Not very common. Not very common. Link level retransmissions are one main reason. Link level retransmissions are one main reason. Packet Corruption. Packet Corruption. Evidence suggests data packet corruption rate of 0.02%. Evidence suggests data packet corruption rate of 0.02%. Pure acks less prone to packet corruption. Pure acks less prone to packet corruption. TCP provides a 16-bit checksum. Thus it can lose 1 in 65,536 packets to errors. TCP provides a 16-bit checksum. Thus it can lose 1 in 65,536 packets to errors. On average 65,536 x 5000 = 300 million packets will cause an bad packet to be accepted. Paxson argues this is too high. On average 65,536 x 5000 = 300 million packets will cause an bad packet to be accepted. Paxson argues this is too high.

Bottleneck bandwidth Self-interference time constant Self-interference time constant Qb = packet size / bottleneck bandwidth. Qb = packet size / bottleneck bandwidth. Packet pair Algorithm. Packet pair Algorithm. Two packets are sent with interval Δts < Qb. Two packets are sent with interval Δts < Qb. When they arrive at receiver Δtr = Qb. When they arrive at receiver Δtr = Qb. ICMP echo packets could be used to measure bandwidth with this idea. ICMP echo packets could be used to measure bandwidth with this idea. Difficulties Difficulties Out of order delivery Out of order delivery Clock resolution limitation Clock resolution limitation Change in Bottleneck bandwidth Change in Bottleneck bandwidth Multichannel links Multichannel links

Packet Loss Loss rates doubled in 1995 (from 2.7% to 5.2 %) Loss rates doubled in 1995 (from 2.7% to 5.2 %) Bigger windows do not make any impact on Loss rates. Bigger windows do not make any impact on Loss rates. Loaded and Unloaded pkts Loaded and Unloaded pkts Loaded pkts are those which had to wait for a pending transmission to complete. Loaded pkts are those which had to wait for a pending transmission to complete. About 2/3 rd of all packets are loaded. About 2/3 rd of all packets are loaded. Loaded packets are more prone to be lost. Loaded packets are more prone to be lost. Acks are more prone to be lost than unloaded pkts. Acks are more prone to be lost than unloaded pkts. Packet loss maybe asymmetric. Packet loss maybe asymmetric.

Packet loss Losses occur in bursts. Losses occur in bursts. TCP retransmissions TCP retransmissions Transmitting TCP may retransmit unnecessarily Transmitting TCP may retransmit unnecessarily Because all acks were lost. Because all acks were lost. Coarse feedback, sequence “holes” not known to sender. Coarse feedback, sequence “holes” not known to sender. Timed out too early. Timed out too early. Significant portion of retransmissions are “redundant”. Significant portion of retransmissions are “redundant”.

Packet Delays Timing Compression Timing Compression Timing Compression occurs when a flight (burst) of packets sent over a period Ts arrives at the receiver over an interval Tr and Tr < Ts. Timing Compression occurs when a flight (burst) of packets sent over a period Ts arrives at the receiver over an interval Tr and Tr < Ts. Zhang et al predicted that ack compression could occur is a flight arrives at a router and faces no cross traffic. (router is under-utilised) Zhang et al predicted that ack compression could occur is a flight arrives at a router and faces no cross traffic. (router is under-utilised) E = (Tr + Cr) / (Ts – Cs) E = (Tr + Cr) / (Ts – Cs) Group is compressed if E < Group is compressed if E < Most connections experience at least one compression event. Most connections experience at least one compression event. Ack compression occurs more often for dup-acks. (they are sent with less spacing between them.) Ack compression occurs more often for dup-acks. (they are sent with less spacing between them.)

Packet Delays Compressed acks advance sender TCP window at a faster rate. May lead to network stress. Compressed acks advance sender TCP window at a faster rate. May lead to network stress. Bandwidth measurement techniques would fail with ack compression. Bandwidth measurement techniques would fail with ack compression. Data Packet Timing Compression Data Packet Timing Compression Can occur due to sudden advance in receiver advertised window. Can occur due to sudden advance in receiver advertised window. Bottleneck will spread out the packets. Bottleneck will spread out the packets. Packets “may” still be compressed after the bottleneck. Packets “may” still be compressed after the bottleneck. Data pkt timing compression is rarer than ack compression. Data pkt timing compression is rarer than ack compression.

Available Bandwidth B = (N/W resources used by the connection/ (resources it used) + (resources competitors use). B = (N/W resources used by the connection/ (resources it used) + (resources competitors use). B is a figurative expression for available bandwidth. B = 1 means entire bottleneck was available. B is a figurative expression for available bandwidth. B = 1 means entire bottleneck was available. Internet connections have been found to encounter a broad range of available bandwidth. Internet connections have been found to encounter a broad range of available bandwidth.

Q’s ?