Receiver Driven Bandwidth Sharing for TCP Authors: Puneet Mehra, Avideh Zakor and Christophe De Vlesschouwer University of California Berkeley. Presented at: INFOCOM 2003. Twenty-Second Annual Joint Conference of the IEEE Computer and Communications Societies. Overview of the Presentation Motivation Goals Proposed Method NS-2 Simulations Conclusion Motivation Most Internet traffic is TCP In many cases access links are bottleneck HTTP, FTP, P2P, Multimedia streaming… Limited Bandwidth (B/W) eg: DSL/Cable < 1.5Mbps User run many apps that compete for B/W Problem: TCP shares bottleneck B/W according to RTT Not fair to flows with large RTT Doesn’t consider application needs or user prefs! Example: FTP Low RTT P2P Video traffic INTERNET Med. RTT High RTT = Congestion Bottleneck Access Link Goals Achieve full utilization of the receiver’s access link (bottleneck). Satisfy user preferences: -priorities assigned to each flow. Approach: limit throughput of lowpriority flows to provide additional B/W for high-priority ones Overview of the Presentation Motivation Goals Proposed Method NS-2 Simulations Conclusion System Overview W1 & d1 User Preferences T1 TRAS Target Rate Allocation SubSystem σ Tn σ R1 Calculation Sub-System FCS1 . . . Flow Control System i 0 i Flow Control System Rn Sendern Rn Internet . . . FCSn Bandwidth Sharing System T Sender1 Wn & dn BWSS N 1 R1 For the receiver σ = system target bit-rate For the nth connection Wn = Advertised Window dn = Delay in ACK packets Tn = Target Rate Rn = Measured Rate System Overview… Band-Width Sharing System (BWSS) consists of: a) Flow Control System (FCS) b) Target Rate Allocation Sub-system (TRAS) c) σ Calculation Sub-system. Flow Control System Measure Bit-rate and RTT R1 W1 d1 Adapt Calculate Receiver Window / ACK Delay Target Rate – Measured Rate FCS1 Flow Control System For the nth connection W = Advertised Window d = Delay in ACK packets R = Measured Rate P = Packet size in bits Ti = Target Rate mi = minimum bandwidth wi = weight T1 Flow Control System… W * Psize R ( RTT d ) Ri < Ti : search for the smallest Wi to achieve (1- α )Ti =< Ri =< (1+ α )Ti If Ri > (1+α)*Ti then delay the ACKs as decreasing Wi is ineffective. Aim to minimize delay : otherwise results in unresponsiveness & instability in TCP flow. Example Window size (segments) After fast recovery 10 Receiver’s advertised window 8 6 4 2 0 0 2 4 6 8 10 12 14 Time (round trips) Window size limits the data rate : Max Window size = min (cwndmax, receiver’s adv. window) Slide borrowed from Dr. Nitin Vaidya’s TCP tutorial RTT and Bandwidth estimation TCP timestamp option to estimate RTT. Bandwidth estimation relies on exponentially weighted moving average R α*R + (1-α)*Rø Ø – bandwidth estimation period, tradeoff between accuracy of estimation and time for convergence. Target Rate Allocation System σ User Prefs. mj Ti = mi + wi * j 0 N 1 w j 0 Tn j Some apps need minimum guaranteed rate(video), others don’t (ftp) User assigns each flow: T1 N 1 Priority (pi), minimum rate (mi) and weight (wi) Bandwidth allocation algorithm: Prevents starvation of low priority connection Satisfy minimum rate in decreasing order of priority Remaining B/W shared according to weight σ – Calculation Subsystem R1 RN σ U = Σi Ri Goal: Choose σ to maximize link utilization. U = Σi Ri (σ) Approach: Iteratively increase/decrease σ and measure the impact on utilization σ < σideal implies under-utilization of the link. If σ > σideal , does it affect the system ? Overview of the Presentation Motivation Goals Proposed Method NS-2 Simulations Conclusion Example of User Preferences Time 0: Min. Rate = 0 Kb/s weights = 1,2,3 for S0-S2 Priority -> S0 (max), S2(min) Time 300: Min Rate = 600 Kb/s TCP BWSS Network-Congestion Example Priorities: increasing from S0-S2 Min Rate: S0,S2 – 600Kb/s S1 – 100 Kb/s Time 400s to 1200s 700Kb/s Interfering TCP traffic S2 limited to 300Kb/s Multimedia Streaming Example • S0 – Ftp traffic. Low Priority • Min Rate = 700Kb/s • S1 – Streaming at 450Kb/s • High Priority • 300Kb/s UDP flow (400s-1000s) Overview of the Presentation Motivation Goals Proposed Method NS-2 Simulations Conclusion Conclusion BWSS allows user to allocate link B/W Flexible B/W allocation model Adapts to changing network conditions No changes to TCP/senders/routers Observation: - works only if desired rate is achievable under flow’s cwnd - What was receiver window advertisement actually designed for?? Observation: TCP window management sender 1 receiver Data1 win4 2 Ack1 win4 3456 DATA3 ~ 6 win4 Ack6 win2 4 8 9 10 11 DATA10 ~11 win4 Questions??
© Copyright 2026 Paperzz