RCP - High Performance Networking Group - Stanford University

yuba.stanford.edu
  • No tags were found...

RCP - High Performance Networking Group - Stanford University

RCP: Congestion Control to MakeFlows Complete QuicklyNandita DukkipatiHigh Performance Networking GroupComputer Systems LaboratoryStanford UniversityPh.D. Oral Seminar5 October, 20061


Talk Outline• Congestion Control Wish List• What high-speed TCPs and XCP achieve• Rate Control Protocol (RCP)• Goals• Short Flow Completion Times• Stability• RCP under worst-case traffic patterns• RCP-AC: Rate Control Protocol with AccelerationControl• Conclusion2


Wish List1. Emulate Processor Sharing• Performance is invariant of flow size distribution• Mix of flows: Short flow-completion Times -- close to the minimumachievable• Long flows: Results in 100% link utilization -- even under high bandwidthdelay,lossy links...• All flows get fair share of bottleneck bandwidth2. Want stability -- convergence to equilibrium operating point3. Close to zero buffer occupancy, Loss-free network4. Makes efficient use of high bandwidth-delay links, e.g. fiber links5. Allows proportional bandwidth sharing among flows6. Want all the above under any network conditions (mix of RTTs, capacities,topologies, lossy and high-delay [wireless] links).7. Any traffic mix: short flows, mix of flow-sizes, sudden flash-crowds8. Can police flows to enforce congestion control9. No per-flow state, per-flow queue10. No per-packet computation in routers4


High-speed TCPs - Pros and Cons1. Emulate Processor Sharing• Performance is invariant of flow size distribution• Mix of flows: Results in flows finishing quickly -- close to the minimumachievable• Long flows: Results in 100% link utilization -- even under high bandwidthdelay,lossy links...• All flows get fair share of bottleneck bandwidth2. Want stability -- convergence to equilibrium operating point3. Close to zero buffer occupancy, Loss-free network4. Makes efficient use of high bandwidth-delay links, e.g. fiber links5. Allows proportional bandwidth sharing among flows6. Want all the above under any network conditions (mix of RTTs, capacities,topologies, lossy and high-delay [wireless] links).7. Any Traffic mix: long flows, mix of flow-sizes, sudden flash-crowds8. Can police flows to enforce congestion control9. No per-flow state, per-flow queue10. No per-packet computation in routers5


Explicit Control Protocol (XCP)• Proposed by Katabi et. al Sigcomm 2002; part ofNewArch project• Explicit feedback on congestion from the network• Flows receive precise feedback on windowincrement/decrement• Convergence of fair share rates could take manyround trip times• Routers do detailed per-packet calculations6


XCP - Pros and Cons1. Emulate Processor Sharing• Performance is invariant of flow size distribution• Mix of flows: Results in flows finishing quickly -- close to the minimumachievable• Long flows: Results in 100% link utilization -- even under high bandwidthdelay,lossy links...• All flows get fair share of bottleneck bandwidth2. Want stability -- convergence to equilibrium operating point3. Close to zero buffer occupancy, Loss-free network4. Makes efficient use of high bandwidth-delay links, e.g. fiber links5. Allows proportional bandwidth sharing among flows6. Want all the above under any network conditions (mix of RTTs, capacities,topologies, lossy and high-delay [wireless] links).7. Any Traffic mix: long flows, mix of flow-sizes, sudden flash-crowds8. Can police flows to enforce congestion control9. No per-flow state, per-flow queue10. No per-packet computation in the routers7


Example: XCP vs. TCP vs. PSFlow Duration (secs) vs. Flow Size# Active Flows vs. time8


RCP - Pros and Cons1. Emulate Processor Sharing• Performance is invariant of flow size distribution• Mix of flows: Results in flows finishing quickly -- close to the minimumachievable• Long flows: Results in 100% link utilization -- even under high bandwidthdelay,lossy links...• All flows get fair share of bottleneck bandwidth2. Want stability -- convergence to equilibrium operating point3. Close to zero buffer occupancy, Loss-free network4. Makes efficient use of high bandwidth-delay links, e.g. fiber links5. Allows proportional bandwidth sharing among flows6. Want all the above under any network conditions (mix of RTTs, capacities,topologies, lossy and high-delay [wireless] links).7. Any Traffic mix: long flows, mix of flow-sizes, sudden flash-crowds8. Can police flows to enforce congestion control9. No per-flow state, per-flow queue10. No per-packet computation in the routers9


Rate Control Protocol (RCP): Picking the Flow Rate• Is there one rate a router can give out to all the flows soas to emulate Processor Sharing ?• RateR(t) = C/N(t)• RCP is an adaptive algorithm to emulate PS:• R(t) picked by the routers based on queue size andaggregate traffic• Router assigns a single rate to all flows• Requires no per-flow state or per-flow queue10


RCP: The Basic MechanismSender Router 1 Router 2 ReceiverSYNDesiredRate=10Mb/sSYN Rate=5Mb/s SYN Rate=5Mb/sSYN-ACKRate=5Mb/sSending Rate = 5MbpsFINFIN-ACK11


Average RTTR(t) = R(t − d 0 ) +RCP: The AlgorithmLink CapacityAggregate Trafficqueueα(C − y(t)) − βq(t)d 0̂N(t)̂N(t) =CR(t − d 0 )Estimate of # flowsR(t) = R(t − T )[1 +Td 0(α(γC − y(t)) − β (q(t)−q 0)d 0)]γC12


Understanding RCP: C/RMany large flowsMany small flows:R = C.RT T − ∑ traffic in short flowsn large flows · RT TC. RTT = 1000 pkts R(t)/C0.80.70.60.50.40.30.20.10R(t)/C0.9 1 0 100 200 300 400 500 600 700 800 900 10013Time [secs]


Understanding RCP• Short Flow Completion Times• Stability• Homogeneous delays• Heterogeneous delays• Choosing alpha, beta for good performance• Proportional bandwidth sharing• Buffer-sizing under RCP• Implementing RCP: Routers and End-hosts• RCP’s Achilles Heel• RCP-AC: Rate Control Protocol with Acceleration Control14


RCP Performance• When traffic characteristics vary• Different flow sizes• As mean flow size increases• Different flow size distributions• Non Poisson arrivals of flows• As load increases• When Network Conditions vary• As link capacity increases• As RTT increases• Flows with different RTTs• Multiple bottlenecks• Congested reverse links• Compared with: AF CT ≥ 1.5RT T + E[L]C ; F CT P S = 1.5RT T +15LC(1 − ρ)


Example 1: Achieves PS for different Flow SizesMax. FCT16


Example 2: Achieves PS for different Flow Sizes1000100C = 2.4 Gbps, E[S] = 500 pktsXCP (< 10000 pkts)TCP (< 10000 pkts)Slow StartRCP (< 10000 pkts)PS1000100C = 2.4 Gbps, E[S] = 500 pktsXCP (> 10000 pkts)TCP (> 10000 pkts)Slow StartRCP (> 10000 pkts)OPT10AFCT [secs]10110.10 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 0.110000 15000 20000 25000 30000 35000 40000 45000 50000Flow Size [pkts]Flow Size [pkts]17


RCP vs. TCP vs. XCP18


Example 3: Achieves PS for any flow-size distribution19


Example 1: Impact of RCP’s Short Flow-McSunsetsIII on Flickr - Photo Sharing!Completion TimesMcSunsetsIIIYou aren't sigSearch everyone's photosUploaded on Marcby mcshotsmcshots' photC = 100 Mbps, RTT = 80 msecFlow-size = 1000 pkts (1 MB)Clientimages.google.commore mcsunsets from the "sun also rises" setCommentsasawaa says:They are MCbeautiful!:0)Posted 7 months ago. ( permalink )Alanna@VanIsle says:Gorgeous collection!!Posted 7 months ago. ( permalink )konaboy says:You've got some great ones there, Brian! Do you ever sell sunsets? I hearthey're a tough market.Posted 7 months ago. ( permalink )Carmen Lario says:Preciosa colección de fotos!Posted 7 months ago. ( permalink )pilz8 says:http://flickr.com/photos/mcshots/112103444/in/photostream/This photo also beloThe Sun Also RiseSunrise, Sunset --(Pool)Seascapes and ShSunsets and sunriworld (Pool)I Shoot Film (PoolCatchy Colors (PoBeautiful SceneryCalifornia (Pool)sky & clouds (PooBeaches (Pool)WATER everywhe(Pool)Flickr-Yahoo CoalThe Shores of CaFlickr People (PooSkyscape (Pool)TRAVELPIX (PooGREATPIX (Pool)SUNSET&RISEPIAccess Router20


YoSearch everyonExample 1: TCP takes 5 times longer than need be512McSunsetsIII on Flickr - Photo Sharing!McSunsetsIIIUploadeby mcshmcsho16PktsSentSYN 240 1 2 3 4 5 6 7 8 9 10#RTTs0.08s 0.08sClient8. . . .images.google.commore mcsunsets from the "sun also rises" setCommentsasawaa says:They are MCbeautiful!:0)Posted 7 months ago. ( permalink )Alanna@VanIsle says:Gorgeous collection!!Posted 7 months ago. ( permalink )konaboy says:You've got some great ones there, Brian! Do you ever sell sunsets? I hearthey're a tough market.Posted 7 months ago. ( permalink )Carmen Lario says:Preciosa colección de fotos!Posted 7 months ago. ( permalink )pilz8 says:http://flickr.com/photos/mcshots/112103444/in/photostream/This photoThe SunSunrise,(Pool)SeascapSunsetsworld (PI Shoot FCatchy CBeautifuCalifornisky & cloBeachesWATER(Pool)Flickr-YaThe ShoFlickr PeSkyscapTRAVELGREATPSUNSETAccess RouterWith TCP: 8 secWith RCP: 1.6 sec21


linux-logo.jpg 800!950 pixelshttp://www.madore.org/~david/images/linux-logo.jpg09/27/2006 01:09 PMPage 1 of 1ome to Gmail09/27/2006 01:07 PMExample 2: Sudden Changes in AvailableBandwidth09/27/2006 12:51 PMWelcome to GmailA Google approach to email.C = 100 Mbps, RTT = 0.1 secGmail is a new kind of webmail, built on the idea that email can bemore intuitive, efficient and useful. And maybe even fun. So give it atry—sign up with your mobile phone or ask someone you know withGmail to invite you. And why not? After all, Gmail has:YouTube - Broadcast Yourself.9¢ each. SportsFast searchUse Google search to find the exact message youwant, no matter when it was sent or received.Search for Remember me on thisLots of spacecomputer.Home Videos Channels Groups Categories UploadOver 2768.765855 megabytes (and counting) of freeSign instorage Most so Recent you'll never | Most need Viewed to delete | Top Rated another | Most Discussed | Top Favorites | Most Linked | Recently Featuredmessage.I cannot access my accountBrowse Videos Most Viewed (Today)Videos 1-20 of 100Chat right inside GmailTime It's just one click to chat with the people you already» Todayemail. You can even save your chats in your GmailThis Weekaccount. Learn moreThis MonthAll TimeMobile accessRead Gmail on Redneck.TV your mobile Episode phone Hillary by pointing Defends Bill'sCategoryyourNine - Imported Wallace Interview» All phone's web browser to http://m.gmail.com. LearnArts & AnimationmoreAutos & VehiclesComedyEntertainmentMusicNews & BlogsPeoplePets & AnimalsScience & TechnologyTravel & PlacesVideo GamesWines From MO, CA,& OH24:54Added: 1 day agoFrom: bubbataylorSign in to Gmail with yourUsername:Password:AccountSign up for GmailAbout Gmail©2006 Views: Google 683,809 - Privacy Policy - Program Policies - Terms of Use224 ratings00:29Added: 1 day agoFrom: srey098Views: 121,262223 ratingsDailyShowFoxClinton02:16Added: 1 day agoFrom: beijairViews: 104,6601394 ratingsNew features!09/27/2006 01:14 PMSign Up | My Account | Viewing History | Help | Log InPool Ball Trick Shot02:00Added: 1 day agoFrom: virtualmagicianViews: 98,936683 ratings22Search


Example 2: Sudden Changes in AvailableBandwidthC = 100 Mbps, RTT = 0.1 secTCP: 118.75 sec to fill up pipeRCP: 1 secYouTube - Broadcast Yourself.09/27/2006 01:14 PMSign Up | My Account | Viewing History | Help | Log InSearch forSearchHome Videos Channels Groups Categories UploadBrowse VideosTime» TodayThis WeekThis MonthAll TimeCategory» AllArts & AnimationAutos & VehiclesComedyEntertainmentMusicNews & BlogsPeoplePets & AnimalsScience & TechnologySportsTravel & PlacesVideo GamesMost Recent | Most Viewed | Top Rated | Most Discussed | Top Favorites | Most Linked | Recently FeaturedMost Viewed (Today)Redneck.TV EpisodeNine - ImportedWines From MO, CA,& OH24:54Added: 1 day agoFrom: bubbataylorViews: 683,809224 ratingsHillary Defends Bill'sWallace Interview00:29Added: 1 day agoFrom: srey098Views: 121,262223 ratingsDailyShowFoxClinton02:16Added: 1 day agoFrom: beijairViews: 104,6601394 ratingsVideos 1-20 of 100Pool Ball Trick Shot02:00Added: 1 day agoFrom: virtualmagicianViews: 98,936683 ratings23


RCP System:Is RCP Stable?q(t)α(C − y(t)) − βd(t)Ṙ(t) = R(t)[d(t) = d 0 + q(t)Cd(t)C˙q(t) =[y(t) − C] if q(t) > 0[y(t) − C] + if q(t) = 0y(t) = N × R(t − d 0 )]α = 0.9, β = 0.6α = 1.2, β = 0.6Equilibrium:Ṙ(t) = 0; ˙q(t) = 0(R ∗ , q ∗ ) = ( C N , 0)24


RCP is StableStable Independent of C, RTT and # Flowsβα25


RCP Stability: Heterogeneous RTTsL2: 622 Mbps, delay = 10 secL1: 155 Mbps, delay = 1 ms 1 Flow9 FlowsRTT [secs]R(t)/C14121086420L3: 100 Mbps, delay = 1 mssmoothed RTT (d)d T0 100 200 300 400 500 600 700 800 900 10000.9 1 Time [secs]0.8Link1 a0.9 b1 g0.970.7Equilibrium R/C = 0.97*55/1550.60.50.40.30.20.100 100 200 300 400 500 600 700 800 900 100026Time [secs]


RCP’s Weakness: Sudden Traffic ChangesExample: Offered load doubles within a round-trip timeSpike in worst-case queue size27


Example: RCP’s Convergence Time28


RCP-AC: Rate Control Protocol with• Enhanced RCP:• Rate Control• Acceleration Control• Feedback ControlAcceleration Control- acceleration: small- Sudden changes:works well, smallqueues, near-zerolosses, XCP-like-Common case: longflow completion times- acceleration: large- Sudden changes:too aggressive, largequeues, packet-losses- Common case:finishes flows fast29


Conclusion• TCP is unsuitable for high bandwidth-delay network• XCP is a bold attempt but hasn’t achieved what it set out to do• Making network faster doesn’t help; Flow duration is constrainedby protocols• Consequences of RCP:• For Internet-sized flows: 10 times faster download times thanTCP; 30 times faster than XCP.• Inherently fair among flows• Provably stable independent of link-capacities, RTT, #flows• Easy to police flows• Easy to provide differential service for flows - GPS• Efficient use of high bandwidth-delay networks30


Acknowledgments• Nick• Committee members: Balaji Prabhakar, Scott Shenker, Mendel Rosenblum• People I collaborated with when working on RCP:• Rui Zhang-Shen (Stanford)• Masayoshi Kobayashi (NEC Labs, Japan)• Hamsa Balakrishnan and Prof. Claire Tomlin (Stanford and UC Berkeley)• Sandy Fraser (Fraser Research)• Ashvin Lakshmikantha and Prof. R. Srikant (UIUC)• Glen Gibb and Greg Watson (Stanford)• HPNG Group: Rui, Neda, Martin, Greg, Yashar, Sundar, Isaac, Da, Pablo, Gireesh, Guido• Judy Polenta• Friends• Family• Subhachandra Chandra• Coffee shops in Stanford and Palo Alto: Bytes, Peets (Clark center), Coupa, Cafe Del Doge...31


PCP: Probe Control Protocol• Sends a sequence of probe packets at a specific rate to detect if networkcan support the rate; else end-point tries a new probe at a slower rate.• Works best: Lightly loaded links with good history information (solvesthe problem of slow-start in lightly loaded regime with history info.)• No Network support• Congestion Control: Efficiency, fairness and stability. No new benefitsor any different from TCP. Has to rely on Loss and/or Delay.• Anti Congestion Control:• - Has TCP’s O(log n) RTTs at start-up. Uses history for improvement.• - Heuristic emulation of explicit feedback. Achieves a subset ofproperties. Will not have strong properties of explicit feedback.Example (from Sally Floyd): New flow wants to blast at 1 Gbps for 2RTTs and stop.• - Accept/Reject probe test: Delay-based measurements. Need accuratetimers and small jitter at end-hosts for correctness.32


Why not just increase TCP’s initial cwnd1. Does not solve all problems:• Long FCTs due to slow AIMD• Unfairness• Filling up buffers2. Sunny day: O(log n/w_init) RTTs3. Rainy Day:• Increases packet-losses. Early exit to CA mode. Worse thanconservative SS.• Increase in unfairness with DropTail Buffers. Different flows indifferent stages of SS. Those in later stages benefit at the expense offlows in earlier stages.• Small buffers. Flash-crowds. Above problems are magnified4. Summary: Increasing the initial window size and/or the rate of increasein slow-start while having only loss as feedback from the network couldbe either be too aggressive or conservative, depending on the networkconditions. 33


But PS (GPS) is not the best for minimizing FCTs...1. From Theoretical point of view:• Needs some additional information on flow-sizes: Either completeinformation on flow-sizes (SRPT), or age of a flow for Feedbackpolicy.• Feedback policy: Does not always beat PS (depends on flow-sizedistribution).• What is the optimal discipline in the network-case ?2. From the practical point of view:• Job-size based disciplines give higher priority to the shorter flows, butbecause these flows do not have many packets in them there is only somuch better one can do as compared to PS. Approximating PS alreadygets down the number of RTTs these flows are made to last to a smallnumber (O(1) RTTs), beyond which we find SRPT/SJF havediminishing returns.• PS is fair :) Easier to explain what the system is doing.34


More on RCP’s Weakness• Bound it• Hard with the q(t) term• Alternative: Rate reduces and queue drains within 2-3 RTTs, nowwork without the q(t) term and bound convergence time• Prevent it• RCP-AC• Make it harder to enter this regime• Stamp in Acceleration along with Rate• Small Acceleration: Lightly loaded link, relatively high R(t)(compared to C), heavily congested link.35


Proportional bandwidth-sharing in RCP• Compute R(t) just as in RCP• Stamp the rate differently for different flows - for example,stamping R in packets of flow 1 and w*R (w is between 0 and 1) inpackets of flow 2 shares bandwidth in the ratio 1:w• R has to be allowed to increase to C/w as opposed to C - ensuringthat even if there are just flows of the lower priority, they can makeuse of the entire bandwidth• The rate stamped is capped at C - so even if R equals C/w and ahigh priority flow comes by, it gets at most C• This can be extended to arbitrary number of priority levels36


Description of RCP-AC• Rate Controller: Just like in RCP• Acceleration Controller:Controls accelerationφ = α(C − y(t)) · d + (γB − βq(t))• Feedback Controller:feedback − i= − max(0, cwnd irtt icwnd irtt i− R(t)) · rtt i· dfeedback + i= min[ max(0, R(t) − cwnd irtt i· dcwnd irtt i) · rtt i, p i ]p i = max(φ, 0) ·∑Krtt icwnd imax(0, R(t) − cwnd irtt i) ·rtt icwnd imax(0, R(t) − cwnd irtt i) · rtt id37


RCP-AC under Sudden Traffic ChangesR(t)/CFlow Rate/link-capQueue [pkts]0.150.10.0500.150.10.0501200100080060040020000 5 10 15 20 25 30(a)0 5 10 15 20 25 30(b)Time [secs]Time [secs]R(t)/Cflow 0flow 99RCP-AC queueBW.RTTgamma.B = 0.2 BW.RTT0 5 10 15 20 25 3038Worst-case queue:linear function of γB


RCP-AC under Aggregated TrafficFlow-completion times get closer to Processor Sharing asγgets larger100700065006000105500AFCT [secs]10.10 5000 10000 15000 20000 25000Flow Size [pkts]XCPgamma = 0.5gamma = 5gamma = 100Processor Sharing# Active flows5000450040003500300025002000XCPgamma = 0.5gamma = 5gamma = 100Processor Sharing0 20 40 60 80 100 120 140 160 180Time [secs]39


Loss Detection and Retransmission Mechanisms• Simulations:• Simulations done with bandwidth-delay buffering• Observed losses in flash-crowd scenarios• Receiver informs sender of the number of packetsreceived. At the end, the sender times out and retransmitsthe difference. Continues until entire flow is transmitted.• Ignores the exact mechanisms to determine (at thereceiver) which packets are lost, and how is thisinformation notified to the sender.• Implementation in Linux:• SACK Mechanism which informs the sender of the exactlost packets in every RTT.40


Choosing RCP Parameters for short FCTsLarge flow-sizes: Small beta43.5Average flow-dur [secs]32.521.510.50alpha = 0.1, beta = 1alpha = 0.4, beta = 1alpha = 0.9, beta = 1alpha = 0.1, beta = 0.5alpha = 0.4, beta = 0.5alpha = 0.9, beta = 0.5alpha = 0.1, beta = 0.1alpha = 0.4, beta = 0.1alpha = 0.9, beta = 0.1PS0 200 400 600 800 1000 1200 1400 1600 1800 2000Buffer 41 [packets]


0.35Choosing RCP Parameters for short FCTsSmall flow-sizes: Large Beta0.3Average flow-dur [secs]0.250.20.150.10.050alpha = 0.1, beta = 1alpha = 0.4, beta = 1alpha = 0.9, beta = 1alpha = 0.1, beta = 0.5alpha = 0.4, beta = 0.5alpha = 0.9, beta = 0.5alpha = 0.1, beta = 0.1alpha = 0.4, beta = 0.1alpha = 0.9, beta = 0.1PS0 200 400 600 800 1000 1200 1400 1600 1800 200042Buffer [packets]


Choosing RCP Parameters for small queuesLarge flow-sizes: Large betaLoss Probability0.140.120.10.080.060.04alpha = 0.1, beta = 1alpha = 0.4, beta = 1alpha = 0.9, beta = 1alpha = 0.1, beta = 0.5alpha = 0.4, beta = 0.5alpha = 0.9, beta = 0.5alpha = 0.1, beta = 0.1alpha = 0.4, beta = 0.1alpha = 0.9, beta = 0.10.0200 200 400 600 800 1000 1200 1400 1600 1800 2000Buffer [packets]43


Choosing RCP Parameters for small queuesLoss Probability0.160.140.120.10.080.060.04Small flow-sizes: Large betaalpha = 0.1, beta = 1alpha = 0.4, beta = 1alpha = 0.9, beta = 1alpha = 0.1, beta = 0.5alpha = 0.4, beta = 0.5alpha = 0.9, beta = 0.5alpha = 0.1, beta = 0.1alpha = 0.4, beta = 0.1alpha = 0.9, beta = 0.10.0200 200 400 600 800 1000 1200 1400 1600 1800 2000Buffer [packets]44


Queue-sizes under RCP45


Queue-sizes under TCP (no AQM)46


RCP’s Buffer-size Requirements• Static long flows: Zero equilibrium queue• Relative Mean flow-size to bandwidth-delay product• Large mean flow-size - less new arrivals, smaller buffers forany given loss-probability• Small mean flow-size - many new arrivals, larger buffer for anygiven loss probability• As the Link-rate (C) increases: Buffer = O(C.RTT) for constantloss-probability47


RCP’s Buffer-size Requirements: As Mean flow-sizeIncreases0.160.140.12Loss Probability0.10.080.060.04buf = 2%buf = 5%buf = 10%buf = 50%buf = 100%buf = 200%0.0200.01 0.1 1 10Mean flow-size/bandwidth-delay48


RCP’s Buffer-size Requirements: As Link-rate Increases1.21Average flow-dur [secs]0.80.60.40.20Buf = 2%Buf = 5%Buf = 10%Buf = 50%Buf = 100%Buf = 200%PS0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1link-Cap [Gbps]49


RCP’s Buffer-size Requirements: As Link-rate Increases0.140.12Loss Probability0.10.080.060.04Buf = 2%Buf = 5%Buf = 10%Buf = 50%Buf = 100%Buf = 200%0.0200 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1link-cap [Gbps]50


RCP’s Buffer-size Requirements: As Offered LoadIncreases0.140.12Loss Probability0.10.080.060.04Buf = 2%Buf = 5%Buf = 10%Buf = 50%Buf = 100%Buf = 200%0.0200.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9load51


Implementation: RCP Algorithm on NetFPGA52


Prototyping RCP: Router Algorithm on NetFPGA• Periodic Computations:• Done in S/W once every T = min(10 ms, avg-rtt)• Per-packet Computations• 3 Additions:1. Add pkt-rtt to running sum2. Add pkt-size to input-traffic3. Increment #pkts seen• Two Comparisons:1. Is pkt-rtt valid?2. Is RCP-rate in pkt higher than what router can offer?53


Implementation: RCP End-host54


SadSmiley.gif 331!331 pixelshttp://www.missmanagement.com/Football/FootballClipart/SadSmiley.gifhappy-face-happyface-smiley-300x300.gif 300!300 pixelshttp://i76.photobucket.com/albums/j1/lgrolleau/happy-face-happyface-smiley-300x300.gif09/27/2006 11:10 AMPage 1 of 109/27/2006 11:07 AMPage 1 of 1Example 3: TCP Penalizes Long RTT FlowsSTANFORDUNIV. OF MELBOURNEClient 1Watching VideoLong RTTShort RTTClient 2P2P file-transferPALO ALTO55


happy-face-happyface-smiley-300x300.gif 300!300 pixelshttp://i76.photobucket.com/albums/j1/lgrolleau/happy-face-happyface-smiley-300x300.gifhappy-face-happyface-smiley-300x300.gif 300!300 pixelshttp://i76.photobucket.com/albums/j1/lgrolleau/happy-face-happyface-smiley-300x300.gif09/27/2006 11:07 AMPage 1 of 109/27/2006 11:07 AMPage 1 of 1Example 3: Fair Resource Allocation in RCPSTANFORDUNIV. OF MELBOURNEClient 1Watching VideoLong RTTShort RTTClient 2P2P file-transferPALO ALTO56


Bandwidth Sharing Between x% TCP Flows and(100 - x)% RCP Flows57

More magazines by this user
Similar magazines