TCP Westwood The work is supported by the 2/032/2004 ELTE-BUTE-Ericsson NKFP project on Research and Developments of Tools Supporting Optimal Usage of Heterogen Communication Networks
The Role of PCE in the Evolution of Transport Protocols Pfldnet 2005, Lyon, France M. Y. “Medy” Sanadidi
Recent Issues in Transport Protocols Large Pipes Utilization Steady state Start-up Impact of Wireless Links: Last-hop wireless Multihop contention networks Fairness for asymmetric flows Protocols Co-Existence New Paradigms: Voice/Video Store-and-forward at Transport layer (e.g. PEPs, P2P/Overlays)
Example: Satellite/ Networks
Outline Path Characteristics Estimation (PCE) Prospects for Higher Efficiency Future of Friendly Co-Existence Addressing the New Paradigms Summary
Path Characteristics Estimation (PCE) Characteristics of Interest: Links capacity Path ‘dynamic range’, i.e. buffering capacity Cross traffic level, path-persistence, responsiveness Random loss Multihop wireless connectivity, contention, route diversity Participating Nodes: Sources only Sources and Destinations Forwarding nodes (routers, base stations, multihop wireless nodes)
Sharing a Link Flow2 Flow1 2 flows, red one is non- responsive fair share ? bandwidt h residual bandwidth bottleneck interface queue backlog Buffer space Propagation Time
A Hierarchy of Characteristics Achieved rate Delay/Dynamic Range Packet loss Intensity Path persistence Elasticity Links capacities Propagation times Buffer space Errors Cross Traffic Load Architecture Flow Behavior +
Path Capacity Estimation Path Capacity: capacity of narrow link Pathrate: rely on packet pair dispersion measurements followed by statistical processing of results CapProbe: use dispersion measurements; perform on line filtering of results based on end-to-end delay TcpProbe: an adaptation of CapProbe into TCP with minimal sender side only changes
DelAck TCP Probe: CapProbe: CapProbe and TcpProbe
Prospects for Higher Efficiency Steady State: Congestion avoidance (FAST): stable at high throughput, co-existence ??, and random loss impact ?? Scaling up congestion recovery (HSTCP, STCP): higher throughput, but fairness and stability ?? Scaling up congestion recovery (BIC): improves on the above in fairness Forwarder Based (XCP): superb, when we are done with implementation issues PCE reliance (TCP Westwood, TCP Peach): Peach requires forwarder priority support, TCPW requires good estimation at high speeds
Using PCE Tahoe/Reno/NewReno estimate: Packet loss via Dup Acks RTT average and variance Maintain a pipe size (or bandwidth-delay product) estimate: ssthresh Vegas/FAST: Achieved Rate and its relation to the Expected Rate, or equivalently RTT and RTTmin, or Queuing delay HSTCP/STCP/BIC: Use current window size (Expected Rate) in addition to all items above in Reno
Using PCE (2) TCPW estimates Packet loss and type of loss Narrow link capacity, or Path capacity Achieved Rate “Dynamic Range” resulting from buffering space: (RTTmax-RTTmin) XCP measures at forwarders the actual: Links capacities Load intensity RTT (obtained from sources)
Large Pipes Measurements Results
Acceptable Long Term Efficiency
Some Difference in Completion Times
Co-Existence at Gbps Speed
Random Loss Impact
Effect of Random Loss
TCPW: Mining ACK Streams for PCE Rely on PCE ( e.g. capacity, achieved rate, dynamic range) to determine an Eligible Rate Estimate (ERE) ERE is used to size the congestion window after a packet loss Receiver Sender Internet Bottleneck packets ACKs measure
TCPW BE (2001) BE Sampling : ~ Packet pair a noisy estimate of achieved rate/capacity Provides throughput boost under random loss, overestimates under congestion Efficient but not friendly TkTk Congestion occurs whenerver the low- frequency input traffic rate exceed the link capacity
BE: filtering the ACK reception rate b k = S k Discretizing a continuous low-pass filter (Tustin-approximation) 1/ cut-off frequency t k = t k – t k-1 Interarrival time increases ! b k-1 has less significance, it represents an older value
TCPW RE (2002) TkTk RE Sampling : ~ Packet train Fair estimate under congestion, underestimates under random loss Used in TCPW RE and in TCP Westwood+ R. Ferorelli, L. A. Grieco, S. Mascolo, G. Piscitelli, P. Camarda, “Live Internet Measurements using Westwood+ TCP Congestion Control”, IEEE Globecom 2002 (Taipei, Taiwan, November 18-20, 2002). Friendly
RE Busty TCP traffic ! BE may over-estimate the fair share Value in the near past has the same influence as a more current measurement
Adaptive Estimation in TCPW TCPW CRB: ERE BE if random loss, else ERE RE TCPW ABSE: ERE RE <X < BE by continuously adapting the bandwidth sample width to congestion level TCPW Astart: use ERE to help short lived flows [WPYSG04] Ren Wang, Giovanni Pau, Kenshin Yamada, M. Y. Sanadidi, Mario Gerla " TCP Startup Performance in Large Bandwidth Delay Networks ", INFOCOM 2004, Hong Kong, March 2004 TCPW BBE: ERE u * C + (1-u) * RE, where u is a congestion measure taking into account path dynamic range
TCPW CRB (2002) ERE BE if random loss, else ERE RE Combined “Rate” and “Bandwidth” Binary adaptive Congestion measure: Expected Rate/Achieved Rate Clarified Efficiency/Friendliness tradeoff Congestion measure Packet Loss Detected ssthresh, cwnd = BE x RTT min over a threshold under a threshold Binary adaptation Ssthresh, cwnd = RE x RTT min
CRB method (2/1) Identifying predominant cause of packet loss cwnd >> RE * RTT min (estimated pipe size) ) loss due to congestion Congestion case Link-error case Congestion measure: cwnd / ((RE * RTT min )) / seg_size)
CRB method (2/2) = 1.8
TCPW ABSE (2002) Under Congestion Under No Congestion TkTk TkTk Adaptive Bandwidth Share Estimation Adapt the sample interval T k according to congestion level Congestion measure, similar to Vegas T k ranges from one ‘interACK’ interval to current RTT Better Efficiency/Friendliness profile than CRB [WVSG02] Ren Wang, Massimo Valla, M. Y. Sanadidi, and Mario Gerla, "Adaptive Bandwidth Share Estimation in TCP Westwood", In Proc. IEEE Globecom 2002, Taipei, Taiwan, R.O.C., November 17-21, 2002
ABSE: Adaptive sampling interval (T k ) Longer T ) RE more conservative More severe congestion ) longer T should be RE: Bw share sample: > cwnd ) no congestion, T k = T min (ACK interarrival time) otherwise
ABSE: Filter Gain Adaptation ( k ) 2/1
ABSE: Filter Gain Adaptation ( k ) 2/2 Network Instability: [KN01] U max : max U i in the last N obervations ( =0.6, N=10)
Helping Short Lived Connections Approaches: Cached ssthresh Larger initial window PCE based: Hoe’s; TCPW Astart Negotiation: Quick-Start No problems here for XCP!
TCPW Astart (2003) Take advantage of ERE : Adaptively and repeatedly reset ssthresh ERE until sender window reaches estimated pipe size, or encounters packet loss cwnd in packets Time (sec) Linear increase phases Exponential increase phases cwnd Includes multiple mini ‘exponential increase’, and mini ‘linear increase’ phases cwnd grows slower as it approaches BDP Connection converges faster to its pipe size with less buffer overflow, since it adapts to pipe size and transient loading
Astart: friendliness
Astart: First 20 Seconds Throughput RTT =100ms, Buffer =BDP RTT =100ms, Bottleneck =40 Mbps Bottleneck capacity = 40 Mbps, Buffer =BDP Good scaling with capacity and propagation time Robust to buffer size variation
Agile Probing (=Astart) & Persistent Non-Congestion Detection (PNCD) Demo: [YWSG04] Kenshin Yamada, Ren Wang, and M.Y. Sanadidi and Mario Gerla " TCP Westwood with agile probing: Dealing with dynamic, large, leaky pipes ", In Processing of IEEE ICC. volume 2. pages [WYSG05] Ren Wang, Kenshin Yamada, M. Yahya Sanadidi, and Mario Gerla " TCP with sender-side intelligence to handle dynamic, large, leaky pipes ", IEEE Journal on Selected Areas in Communications, 23(2): , 2005.
PNCD Similar to the idea of CBR ER: expected rate ≈ cwnd/RTT min (in non-congestion) RE: Achived Rate corresponding to ER 1.5 RTT earlier IER: Initial ER ssthresh/RTT min CongestionBoundary = ER + (1- ) IER
? ? TCPW BBE (Work in Progress) With H. Shimonishi (NEC, Tokyo) “Buffer” and “Bandwidth” Estimation Estimates Capacity using TcpProbe (much more accurate than BE!!) Higher efficiency at higher random loss rates (e.g %) Estimates Dynamic Range (related to buffer size) Improves TCPW control as a function of congestion The result is higher efficiency and robust friendliness even at small buffers! WN29-3 Improving Efficiency-Friendliness Tradeoffs of TCP in Wired-Wireless Combined Networks Hideyuki Shimonishi, NEC, Medy Sanadidi, Mario Gerla, University of California at Los Angeles, ICC 2005, 15 May - 19 May 2005
TCPW BBE Algorithms (ICC 2005) Dynamic Range estimate D max = RTT cong loss - RTT min Current Delay Distance D = RTT – RTT min RTT before packet loss Relative Frequency RTT cong_loss RTT min Congestion loss Random loss Eligible Rate estimate ERE = u * C + (1-u) * RE Note: u=0 if D and D max are small
Opportunistic Friendliness of TCPW-BBE If Reno under-perform: use all the opportunity provided without hurting co-existing Reno flows TCP-Reno Sender Receiver 10M-1Gbps TCPW-BBE Sender 0.001% loss Receiver RTT 40msec If Reno performs: achieve similar to Reno
The Future of Friendly Co-Existence Defining Friendliness: TCP Friendliness: Achieve throughput equal to that of TCP Reno under some conditions (RTT, packet loss rate) Problematic if Reno under-perform; e.g. under random losses Opportunistic Friendliness: If Reno performs, achieve similar to Reno If Reno under-perform: use all the opportunity provided without hurting co-existing Reno flows
Evaluating a New Proposed Protocol: The Efficiency/Friendliness Profile Each point in the graph is obtained as follows: N legacy flows => legacy throughput t R1 total utilization U 1 N/2 legacy, N/2 proposed flows => legacy throughput t R2 Total utilization U 2 Efficiency Improvement E = U 2 / U 1 Friendliness F = t R2 / t R1
E/F Profiles of TCPW BE, CRB and ABSE
E/F Profile of Vegas Utilization Ratio G (Efficiency) Throughput Ratio L (Friendliness) N=2 N=4 N=8 N=16 N=24 Vegas vs. NewReno (RED) Vegas uses fixed targeted queue length => varying friendliness depending on number of connections!
Addressing New Paradigms Audio/Video Streaming: Increasing portion of the total traffic with distinct requirements Multihop Wireless: Difficult fundamental issues Store-and-forward at the Transport Layer: Revisit early problems and new opportunities
Continuous Media Transport Requirements: Minimum bandwidth Upper bound on delay Lower reliability requirements than in FTP Adaptive streaming objectives: Delivered quality Congestion control Support for adaptive coding
Addressing Continuous Media Issues Issues with the standard protocols: UDP: no congestion or error control TCP: AIMD behavior undesirable due to fluctuation in rate, and consequently delay, and intolerance to random loss DCCP provides an excellent framework, recommends TFRC as one possible protocol, but allows for alternatives TFRC is equation based, rate-equivalent to Reno, with smoother delivery suitable for streaming SCTP enables multiple streams with different congestion control mechanisms, among other features
Streaming Over Wireless Under random loss, Reno and its rate-equivalent TFRC, will both under-perform Approaches, some with loss discrimination, have been proposed: TFRC Wireless: Combination of loss discrimination schemes, Multi-TFRC Multiple TFRC connections until link is congested VTP Rate estimation and loss discrimination
Performance Comparison Efficiency in presence of errors 5% error rate, single connection Rate adaptation 5% error rate, single connection with on/off CBR cross traffic
TCP over Multihop Wireless Packet losses due to: Contention due to hidden terminals Varying channel quality Route collapse Buffer overflow ?? Solution approaches: Neighborhood RED Delayed ACK extension Sizing the TCP window for contention reduction
Store & Forward at the Transport Layer Overlays/P2P tunneling through TCP connections PEPs breaking ETE path into concatenated TCP connections, e.g. satellites New(?) Requirements: Buffer management and priority schemes for better ETE application protocol performance TCP Receiver advertised window role Related item: Prioritized TCP for QOS at the Transport layer (TCP-LP, TCPW-LP)
Summary Excellent progress by many approaches for scaling efficiency with pipe size Focus on PCE techniques is promising, e.g. TCPW provides: Scalable efficiency Robustness to random loss Tunable opportunistic friendliness Streaming, multihop wireless, and forwarding at the Transport layer to receive attention and make good progress
Steady State Characteristics (TCPW RE) For small loss rate, TCPW has much larger window than NewReno. More scalable!
Fairness (TCPW RE) For small loss rate, TCPW is more fair than NewReno
The Role of PCE in the Evolution of Transport Protocols Pfldnet 2005, Lyon, France M. Y. “Medy” Sanadidi