Stochastic fair blue an algorithm for enforcing fairness
Download
1 / 20

Stochastic Fair Blue An Algorithm For Enforcing Fairness - PowerPoint PPT Presentation


  • 59 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Stochastic Fair Blue An Algorithm For Enforcing Fairness' - griffin-duffy


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Stochastic fair blue an algorithm for enforcing fairness

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


Outline
Outline

  • Motivation

  • Background

    • Packet scheduling

    • Buffer management

  • Bloom Filters and Blue

  • Stochastic Fair Blue

  • Conclusion


Motivation
Motivation

  • Internet relies on TCP congestion control

  • Proliferation of non-responsive applications

  • Network mechanisms

    • Packet scheduling

    • Buffer management


Packet scheduling approaches
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)


Buffer management approaches
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


Stochastic fair blue
Stochastic Fair Blue

  • Buffer management algorithm

  • Single FIFO queue

  • Combines

    • Bloom filters

    • Blue queue management


Bloom filters
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


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


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


Example blue algorithm
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


Stochastic fair blue sfb
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


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


Sfb evaluation
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


Sfb evaluation1
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


Sfb evaluation2
SFB Evaluation

SFB

Loss rates

TCP Flows = 0.01 Mbs

Non-responsive = 44.84 Mbs


Sfb and misclassification
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


Sfb and misclassification1
SFB and Misclassification

4 non-responsive flows

8 non-responsive flows


Sfb with moving hash functions
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



Conclusion
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


ad