A TCP With Guaranteed Performance in Networks with Dynamic Congestion and Random Wireless Losses Stefan Schmid, ETH Zurich Roger Wattenhofer, ETH Zurich Distributed Computing Group 2nd Annual International Wireless Internet Conference (WICON) Boston, MA, USA, August 2006 Large Data Transfers (1) ETH, Zurich CERN, Geneva Stefan Schmid, ETH Zurich @ WICON 2006 2 Large Data Transfers (2) Lecture ETH, Zurich E= mc2 CERN, Geneva TCP Connection Stefan Schmid, ETH Zurich @ WICON 2006 3 Large Data Transfers (3) Congestion • Losses Characteristics of transfer: - Internet can be congested - Available bandwidth changes over time - Packets may be lost, especially on wireless link Stefan Schmid, ETH Zurich @ WICON 2006 4 TCP Congestion Control (1) • TCP avoids congestion - Congestion control lies at the heart of TCP - Prevents congestion collapses of Internet (e.g., 1980) • How to prevent congestion? • Senders reduce sending rate when Internet is congested - senders maintain congestion window - strategy: „additive-increase, multiplicative-decrease“ (AIMD) Stefan Schmid, ETH Zurich @ WICON 2006 5 TCP Congestion Control (2) • How does a sender know about congestion? • When packets are lost, TCP sender assumes that routers are overloaded! For packets lost for other reasons than congestion, throughput is reduced unnecessarily! Stefan Schmid, ETH Zurich @ WICON 2006 6 TCP Congestion Control (3) Lecture E = mc2 Wasted throughput: student may seek to increase her download bandwidth (selfishly)! Stefan Schmid, ETH Zurich @ WICON 2006 7 In this paper… • A model is presented which comprises both dynamic changes of the available bandwidth (dynamic congestion) and random packet losses (e.g., wireless links) • Model allows for formal analysis of transfer protocol‘s performance! • Thereby, a selfish perspective is assumed - We look at protocols which aim at maximizing their throughput, regardless of consequences for other participants (no fairness). Stefan Schmid, ETH Zurich @ WICON 2006 8 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 9 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 10 Basic Model (1) • Time is divided into synchronous rounds • Framework of online algorithms: - Adversary chooses available bandwidth ut - Protocol chooses sending rate xt • In addition, all packets are lost in a given round with probability p Stefan Schmid, ETH Zurich @ WICON 2006 11 Basic Model (2) • Gain of transfer protocol ALG at time t: • Gain of optimal (offline) transfer strategy OPT: • We are interested in minimizing the (strict) competitive ratio, i.e., the gain of OPT divided by the gain of ALG. Stefan Schmid, ETH Zurich @ WICON 2006 12 Basic Model (3) • Takes into account an opportunity cost • Assumption: No packets are transmitted at all if rate too large - Pessimistic, but losses engender overhead (e.g., time-outs) Goal of ALG is to always send at (or slightly lower) rate of currently available bandwidth. Thereby, ALG does not know whether losses are due to congestion or wireless links! Stefan Schmid, ETH Zurich @ WICON 2006 13 Basic Model (4) • In practice, it can be assumed that congestion does not change too abruptly over time. • Therefore, we bound the adversary ADV which chooses the available bandwidth as follows (multiplicative changes): ut has to be chosen from [ut-1/μ, ut-1μ] • A similar model but without random losses has been studied by Karp, Koutsoupias, Papadimitriou and Shenker (FOCS 2000)! Stefan Schmid, ETH Zurich @ WICON 2006 14 Provable Performance in Basic Model • Transfer protocol achieving a provable performance: • In order to compensate wireless losses, TCPW increases the bandwidth by a factor larger than μ after successful rounds (aggressive MIMD strategy). • Strict competitive ratio: at most 4(μ2+ μ) Stefan Schmid, ETH Zurich @ WICON 2006 15 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 16 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 17 Extending the Model with Bursts • Network traffic is often bursty. • Network calculus has introduced the notion of leaky-bucket arrival curves to study queuing theory from a worst-case perspective. • Also a reasonable model for dynamics on transport layer! leaky bucket arrival curve Stefan Schmid, ETH Zurich @ WICON 2006 18 New Dynamic Adversary • Dynamics of ADV has to correspond to leaky-bucket constraints • where Adversary can accumulate power in some rounds to change available bandwidth more abruptly later! Stefan Schmid, ETH Zurich @ WICON 2006 19 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 20 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 21 The TCP Wichita Transfer Protocol for Bursty Environment • After successful transmissions, rate is increased by a factor of 2μ2. • Analysis: Look at cases x>u (fail) and x<u (pot. success) individually. • xt>ut: Transmission rate compared to OPT can be described by Markov chain. - Only in case of random errors, TCPW loses ground / reduces too much! Stefan Schmid, ETH Zurich @ WICON 2006 22 Analysis • In rounds where xt>ut, TCPW has gain = 0! - But: TCPW does not miss much gain! - TCPW reduces its rate gemoetrically - TCPW never overshoots much • The following result can be shown: TCP Wichita is 4(μ+Bμ2)-competitive against a bursty adversary if μ<(1-p)/4Bp. Stefan Schmid, ETH Zurich @ WICON 2006 23 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 24 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 25 Simulation • Random bandwidth changes with bursts - Random changes smaller than μ, until enough is accumulated for burst Stefan Schmid, ETH Zurich @ WICON 2006 26 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 27 Talk Overview • Basic Model • Extending the Model to Incorporate Bursts • TCP Wichita and Analysis • Simulation • Conclusion Stefan Schmid, ETH Zurich @ WICON 2006 28 Conclusion (1) • A framework which allows for formal protocol analysis and incorporates dynamic congestion and random losses • We believe that there is still little algorithmic research on the transport layer! • Network calculus may be a good model for dynamics in various settings! • Selfish throughput maximization - Really a threat? Experiences? - Security: Routers often drop UDP packets first in case of congestion! Cheating possible? Stefan Schmid, ETH Zurich @ WICON 2006 29 Conclusion (2) • Open research questions: - Better / tight bound for competitive ratio? - Randomized online algorithms? - Impact on stability in case of multiple flows? - Model extensions: buffers, varying round trip times, etc.? - Model verification & real implementation? Stefan Schmid, ETH Zurich @ WICON 2006 30 Questions and Comments? Thank you for your attention! Stefan Schmid Distributed Computing Group ETH Zurich, Switzerland schmiste@ethz.ch http://dcg.ethz.ch/members/stefan.html Stefan Schmid, ETH Zurich @ WICON 2006 31