1 / 20

Stochastic Fair Blue An Algorithm For Enforcing Fairness

Stochastic Fair Blue An Algorithm For Enforcing Fairness. Wu-chang Feng (OGI/OHSU) Dilip Kandlur (IBM) Debanjan Saha (Tellium) Kang Shin (University of Michigan) April 26, 2001. Outline. Motivation Background Packet scheduling Buffer management Bloom Filters and Blue

Download Presentation

Stochastic Fair Blue An Algorithm For Enforcing Fairness

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. Stochastic Fair BlueAn Algorithm For Enforcing Fairness Wu-chang Feng (OGI/OHSU) Dilip Kandlur (IBM) Debanjan Saha (Tellium) Kang Shin (University of Michigan) April 26, 2001

  2. Outline • Motivation • Background • Packet scheduling • Buffer management • Bloom Filters and Blue • Stochastic Fair Blue • Conclusion

  3. Motivation • Internet relies on TCP congestion control • Proliferation of non-responsive applications • Network mechanisms • Packet scheduling • Buffer management

  4. Packet scheduling approaches • WFQ, W2FQ [Bennett96], Virtual Clock[Zhang90], SCFQ [Golestani94], STFQ [Goyal96] • per-flow packet scheduling and queue management + accuracy, correctness - overhead, partitioned buffers • SFQ [McKenney90], CBQ [Floyd94] • approximate fairness using hashes or flow classification + low overhead - misclassification • RED with per-active flow queuing [Suter98] + lower overhead than WFQ - overhead still O(N)

  5. Buffer management approaches • RED with penalty box [Floyd97] • Analyze drop history + no per-flow state - accuracy, complexity, large #s of bad flows • Flow RED [Lin97] • Examine per-flow queue occupancy + no per-flow state - accuracy vs. queue size, large #s of bad flows • Core-Stateless FQ [Stoica98] • Rate labeling at edge with priority dropping in core + core router overhead, correctness - packet overhead, coordination required, deployment

  6. Stochastic Fair Blue • Buffer management algorithm • Single FIFO queue • Combines • Bloom filters • Blue queue management

  7. Bloom Filters • Used in • Spell checkers (by dictionary word) • Browser caches (by URL) • Web caches (by URL) • Apply multiple independent hash functions on input dictionary • Lookup or locate objects based on their hashing signature

  8. Blue • De-couple congestion management from queue length • Rely only on longer-term queue and link history • Salient features • Low packet loss • High link utilization • Low queuing delay • http://www.thefengs.com/wuchang/blue

  9. Blue L Mbs Sources Sinks A B Sinks generate DupACKs/ECN Rate = L Mbs Queue drops and/or ECN marks at steady rate Rate = Exactly what will keep sources at L Mbs

  10. Example Blue Algorithm • Single dropping/marking probability • Increase upon packet loss • Decrease when link underutilized • Freeze value upon changing Upon packet loss: if ((now - last_update) > freeze_time) then Pmark = Pmark + delta last_update = now Upon link idle: if ((now - last_update) > freeze_time) then Pmark = Pmark - delta last_update = now

  11. Stochastic Fair Blue (SFB) • Single FIFO queue • Multiple independent hash functions applied to each packet • Packets update multiple accounting bins • Blue performed on accounting bins • Observation • Non-responsive flows drive P to 1.0 in all bins • TCP flows have some bins with normal P • Pmin = 1.0 , rate-limit • Pmin < 1.0 , mark with probability Pmin

  12. hL-1 h0 h1 Pmin=1.0 P=1.0 0 Non-responsive Flow 1 P=1.0 2 P=0.3 TCP Flow P=0.2 Pmin=0.2 P=1.0 N-1 SFB NL virtual bins out of L*N actual bins

  13. SFB Evaluation • 400 TCP flows • 1 non-responsive flow sending at 45 Mbs • Evaluation • 200KB, 2-level SFB with 23 bins per level (529 virtual bins) • 200KB RED queue • 400KB SFQ with 46 RED queues 100 Mbs 100 Mbs 45 Mbs 45 Mbs

  14. SFB Evaluation RED SFQ+RED Loss rates Loss rates TCP Flows = 3.07 Mbs TCP Flows = 2.53 Mbs Non-responsive = 10.32 Mbs Non-responsive = 43.94 Mbs

  15. SFB Evaluation SFB Loss rates TCP Flows = 0.01 Mbs Non-responsive = 44.84 Mbs

  16. SFB and Misclassification • SFB deteriorates with increasing non-responsive flows • Non-responsive flows pollute bins in each level • Probability of misclassification • p = [1 - (1 - 1/N)M]L • Given M, optimize L and N subject to L*N=C

  17. SFB and Misclassification 4 non-responsive flows 8 non-responsive flows

  18. SFB with Moving Hash Functions • SFB • Virtual buckets from spatial replication of bins • Moving hash functions • Virtual buckets temporally • Advantages • Handles misclassification • Handles reformed flows

  19. SFB with Moving Hash Functions

  20. Conclusion • Stochastic Fair Blue • Combine Blue queue management with Bloom filters + no per-flow state, small amount of buffers, tunable to # of bad flows, amenable to hardware implementations - short-term accuracy • Current status • 2 known vendor implementations • Linux implementation • Future work • Hardware implementation using COTS programmable network processor

More Related