1 / 28

TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model

This paper discusses TFRC, a TCP-friendly rate control algorithm, and its application in multimedia networking. It compares TFRC to TCP and highlights its benefits in low throughput and delay-sensitive applications.

smagee
Download Presentation

TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model ECE 599: Multimedia Networking Thinh Nguyen

  2. References • S. Floyd, J. Padhye, J.Widmer “Equation Based Congestion Control for Unicast Applications”, Sigcomm 2000 • J. Padhye, V.Firoiu, D. Towsley, J. Kurose” Modeling TCP Throughput: a Simple Model and its Empirical Validation” Sigcomm 98

  3. Internet Transport Protocols • UDP • No congestion control • No reliability – no retransmission of lost packets • Small throughput and delay fluctuation (jitter) • TCP • Congestion control • Reliability – automatic retransmission • Large throughput and delay fluctuations • Multimedia Protocols • Congestion control • Small throughput and delay fluctuation • Fair with TCP • No need for retransmission

  4. TCP Bandwidth Model Goal: Estimate TCP bandwidth based on the loss rates and round trip times

  5. TCP Behavior Loss occurs Window size Evolution of window size over time TDP: triple duplicate period

  6. Detail view of TDP model

  7. Estimated Bandwidth : Loss rate : Bandwidth (throughput) : Round trip time

  8. Derivation of Define : The number of packets sent in period : The first lost packet in period : The round where the loss occurs

  9. Derivation of Now, we just need to figure out and Now,

  10. Derivation of : Round trip time of the j-th round of TDPi Now,

  11. Derivation of

  12. Derivation of

  13. More Accurate Model • Round trip delay R (measured at source) • Packet size s (measured at source) • Packet loss (congestion) rate p (fed back by rcv each RTT) • Retransmission time out tRTO (measured at source)

  14. TFRC (TCP-Friendly Rate Control) • How does TFRC relate to TCP Model? • Sender receives the feedback packet loss event rate p from receiver every RTT • Sender calculates new value of allowed sending rate; it increases/decreases current value to match the calculated rate. • In so doing, TFRC behaves like any other TCP Reno session (same equation); it produced the same external effects

  15. TFRC Continues • Sender: measures various parameters; calculates the TCP-like rate corresponding to the measured parameters. • Receiver: provides feedback to sender to allow it to calculate RTT; also calculates loss event rate p. • The p rate computation critical for performance of TFRC. • Average Loss Interval: weighted average of loss rate over the last N loss intervals (loss interval = interval of packets between loss episodes)

  16. Calculate loss rates: Sliding window Lost packet P = 2/8 = .25 P=1/8

  17. Calculate loss rates: Average loss interval

  18. TCP Round Trip Time EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT • Exponential weighted moving average • influence of past sample decreases exponentially fast • typical value:  = 0.125

  19. TCP Round Trip Time

  20. Mimic TCP timeout computation EstimatedRTT plus “safety margin” large variation in EstimatedRTT -> larger safety margin first estimate of how much SampleRTT deviates from EstimatedRTT: TCP Timeout DevRTT = (1-)*DevRTT + *|SampleRTT-EstimatedRTT| (typically,  = 0.25) Then set timeout value in the TFRC equation to TimeoutInterval = EstimatedRTT + 4*DevRTT

  21. NS Simulation results: TCP SACK +TFRC fair sharing Normalized TCP Thr =1 means perfect fairness N TCP flows + N TFRC flows

  22. TFRC less aggressive than TCP TFRC internally unevenly “fair”

  23. TFRC results in lower throughput jitter than TCP – using RED queuing

  24. TFRC results in lower throughput jitter than TCP – Using DropTail queuing

  25. 40 “long lived” flows simulation: the 40 flows start in the first 20 s. We show bottleneck queue dynamics Comment: TFRC (bottom) is as stable as TCP (top). TCP drop rate =4.9%; TFRC drop rate = 3.5%

  26. Internet Measurements: 3 TCP connections – London to Berkeley. Throughput measured over 1 sec intervals TFRC much more stable than TCP

  27. Conclusions • TFRC is better than TCP for low throughput and delay jitter applications. • TFRC shares bandwidth fairly with TCP • Can be used in Multicast?

More Related