End to end multicast congestion control and avoidance
Sponsored Links
This presentation is the property of its rightful owner.
1 / 76

End-to-End Multicast Congestion Control and Avoidance PowerPoint PPT Presentation


  • 92 Views
  • Uploaded on
  • Presentation posted in: General

End-to-End Multicast Congestion Control and Avoidance. Jiang Li Advisor: Shivkumar Kalyanaraman. Outline. Overview of multicast and multicast congestion management Solution series LE-SBCC ORMCC GMCC MCA+ Simulations & Experiments Future work. Multicast.

Download Presentation

End-to-End Multicast Congestion Control and Avoidance

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


End-to-End Multicast Congestion Control and Avoidance

Jiang Li

Advisor: Shivkumar Kalyanaraman


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Multicast

  • Efficient One-to-Many Data Distribution

    • Unicast: one copy for EACH receiver

    • Multicast: one copy for ALL receivers

Multicast

Unicast

Source

Source

Router

Router

Receiver 1

Receiver 2

Receiver 1

Receiver 2


When / Where to Use Multicast?

  • Whenever / wherever efficient one-to-many delivery of same data is needed

  • Applications:

    • News/sports/stock/weather updates

    • Distance learning

    • Configuration, routing updates, service location

    • Teleconferencing (audio, video, shared whiteboard, text editor)

    • Distributed interactive gaming or simulations

    • Email distribution lists

    • Content distribution; Software distribution

    • Web-cache updates

    • Database replication


Research on Multicast

  • Routing

  • Reliable transmission

  • Congestion management

  • Security

  • Address allocation

  • And more


Multicast Congestion Management

  • Adapt sending rate to available bandwidth

    • Single-rate

    • Multi-rate

Source

Router

2Mbps

1Mbps

1Mbps

1Mbps

2Mbps

Receiver 2

Receiver 1


Challenges

  • Multiple paths

    • Complex congestion pattern

    • Heterogeneous bandwidth

      • Dynamically changing

Source

Router

Bottlenecks

0.5Mbps

2Mbps

`

1Mbps

Receivers


Potential Problems

  • Drop-to-Zero

    • React to congestion more than necessary

Source

Congestion !

Cut rate

Router

Congestion !

Cut rate

btnk3

Congestion !

Cut rate

btnk1

Sending rate

4Mbps

Congestion !

Cut rate

btnk2

3Mbps

Congestion !

Cut rate

2Mbps

2Mbps

1Mbps

1Mbps

0 Mbps

0 Mbps

Rate increase


Potential Problems (cont’d)

  • Feedback implosion

Source

Router

Receivers


Potential Problems (cont’d)

  • Large number of states and large computation complexity

    • O(1) number of states wanted

    • O(1) computation time wanted

  • Unfriendliness to other existent congestion control protocols (e.g. TCP)

    • Break others or be broken by others


End-to-end

Solution Categories

  • End-to-end vs. third-party assisted

    • End: source, receiver

    • Third-party: router, proxy etc

Easy to deploy. Our choice.

(End)

Receiver

(Third party)

(End)

Router

Source

(End)

Receiver

Network

(Third party)

Proxy (uncontrollable by end users)


Congestion Control vs. Congestion Avoidance

  • Congestion control

    • Reactive

    • Congestion is managed

      when packets are lost

  • Congestion avoidance

    • Proactive

    • Congestion is managed

      when queue is being built up at bottlenecks

    • Low avg. queue length, high b/w utilization

Queue length

Packet drop begins

Buffer size

Time

t

0

Cong. Ctrl

Cong. Avoid.


A Series of Solutions

  • LE-SBCC (single-rate congestion control)

    • Purely source-based, compatible with many multicast transport protocols

  • ORMCC (single-rate congestion control)

    • O(1)state and computation complexity

    • Scalable to large groups

  • GMCC (multi-rate congestion control)

    • Adaptive to receiver heterogeneity

  • MCA+ (single-rate congestion avoidance)

    • Responsive to incipient congestion


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations

  • Future work


LE-SBCC

  • Loss-Event Oriented Source-Based Multicast Congestion Control

  • Motivations

    • Compatible with all multicast transport protocols (e.g. RMTP, PGM)

    • Easiest deployment

  • Trade-offs

    • For small to medium sessions

    • Single-rate


Can be deployed by upgrading source only

Characteristics

  • Based on source

    • Source does most of the work, e.g.

      • Filtering feedback packets

      • Adjusting sending rate

  • Minimum receiver support

    • Single-bit feedback

      • Can be piggybacked by ACK or NAK

      • Commonly available in transport protocols


Problem

  • How to react to congestion?

Source

Router

Rcvr 1

Rcvr 2

Rcvr 3

Rcvr 4

Rcvr 5


Source

Reacts to 70 feedback packets

Router

70

40

50

30

60

Rcvr 1

Rcvr 2

Rcvr 3

Rcvr 4

Rcvr 5

Idea

  • React to a number of feedback packets approx. equal to those from the most congested receiver.

  • React to the most congested receiver


Source

Router

70

40

50

30

60

Rcvr 1

Rcvr 2

Rcvr 3

Rcvr 4

Rcvr 5

Feedback Filter Cascade

Rate

adaptation

MaxLPRF

LI2LE

ATF

Feedback

packets

RTT

Estimator

RTT (Round Trip Time):

biased towards the most congested receiver


LI

LI

LE

LE

Filter 1: LI2LE

  • Pass at most one feedback packet per RTTper receiver

    • Loss indication (LI): an original feedback packet

    • Loss event (LE): a packet passing the filter

Filtering receiver 1’s

feedback

RTT

Filtering receiver 2’s

feedback

t0

RTT

t1

< RTT


Filter 2: Max-LPRF

  • Passes every LE with the probability:

Source

Approx. 70 LEs

Router

X1=70

X5=40

X4=60

X3=30

X2=50

Rcvr 1

Rcvr 2

Rcvr 3

Rcvr 4

Rcvr 5


Filter 3: ATF

  • Enforce at most one rate cut per RTT.

Rate cut

Sending

rate

Accepted for rate cut

Ignored

Loss events

Time

RTT

t0

t0+RTT


RTT

RTT

RTT

RTT

RTT

RTT

Rate Adaptation

  • AIMD (additive increase/multiplicative decrease)

  • Other (e.g. TFRC, binomial)

V

s: packet size

s/RTT

V/2

Sending rate

Time


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


ORMCC

  • LE-SBCC

    • O(N) state at the source (N: # receivers)

    • Subject to feedback implosion

  • ORMCC

    • O(1) state and computation complexity

    • Statistics-based feedback suppression

    • Proprietary support required from receivers


Source Functions

  • Dynamically maintains a congestion representative (CR) (the slowest receiver)

    • Using TRAC (Throughput Rate At Congestion)

      • Receiving rate during congestion epochs

    • Slowest receiver has the lowest average TRAC

  • Only accepts CR’s input for rate adaptation (AIMD)

  • Detect & recover from loss of CR

    • Omitted here


Receiver Functions

  • Measures TRAC

    • Only during congestion epochs

    • Average over several packets or a short period to avoid oscillation

  • Sends feedback with TRAC

    • Suppresses if its average TRAC < average CR TRAC – σ

      • σ : std. deviation of CR TRAC

      • Average CR TRAC andσare multicast by the source


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


GMCC (Generalized Multicast Congestion Control)

  • LE-SBCC & ORMCC

    • Single-rate

  • GMCC: A multi-rate scheme

    • Various receivers receive data at

      different rates.

    • Can run in single-rate mode

    • Leverage ORMCC and greatly simplify the scheme

Source

Router

2Mbps

1Mbps

1Mbps

1Mbps

2Mbps

Receiver 2

Receiver 1


Previous Multi-Rate Schemes

  • Receiver-based schemes

    • The source sends data in each layer without regarding to network situation

    • Receivers increase/decrease their receiving rates by constantly join/leave layers

      • Coarse control, heavy router burden

(Very short)

(Very short)

Receiver

Source

Join interval

Leave interval

1 layer = 1 multicast group

Layer 4

Data

~

Layer 3

Layer 2

Layer 1

Leave

Join


Previous Multi-Rate Schemes (cont’d)

  • SMCC

    • Source adaptation

    • Static layering (pre-defined maximum rate for each layer)

(Dynamic)

(Dynamic)

Receiver

Source

Join interval

Leave interval

single-rate

Layer 4

Data

single-rate

Layer 3

~

Layer 2

single-rate

single-rate

Layer 1

Leave

Join


GMCC

  • Independent single-rate congestion control in each layer

  • Dynamic layering(no rate limit for each layer)

(Dynamic)

(Dynamic)

Source

Receiver

Leave interval

Join interval

Layer 4

Layer 3

Data

~

Layer 2

Layer 1

Leave

Join


=2Mbps

Key Ideas

  • “Unsatisfied” receivers join a new layer.

Source

Router

1Mbps

1Mbps

1Mbps

1Mbps

2Mbps

Receiver 2

Receiver 1

Unsatisfied: much less congested than

the most congested one (in a layer)


Key Ideas (cont’d)

  • No receiver is allowed to be the most congested in more than one layer.

Source

Router

0.33Mbps

0.5Mbps

0.33Mbps

1Mbps

0.33Mbps

0.5Mbps

0.5Mbps

1Mbps

0.33Mbps

1Mbps

2Mbps

Receiver 2

Receiver 1


Layer 3

Layer 3

Layer 2

Layer 2

Layer 2

Layer 2

Layer 1

Layer 1

Layer 1

Layer 1

Receiver Operations

  • Join

    • A receiver joins a higher layer if it sees much less congestion than CR in its top joined layer.

      • CR: The most congested receiver

  • Leave

    • A receiver leaves its top joined layer if it is the most congested in more than one layers.

Join

Less congested

Leave

Most congested


Source Operations

  • Control on and off of each layer

    • Only the top layer can be deactivated

    • A previously unnoticed problem

  • Do single-rate multicast congestion control in each layer

    • Very similar to ORMCC

Receivers

Layer 3

Layer 2

Layer 1


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


MCA+

  • Multicast congestion avoidance with feedback suppression

  • MCA+ = ORMCC + incipient congestion detection

    • Using accumulation to detect incipient congestion


MCA+: Accumulation

  • A flow’s accumulation is a time-shifted, distributed sum of the queued bits in all nodes along its path.

  • Can be measured end-to-end

    • Showed theoretically by colleague’s work

Routers

Accumulations:

Red flow: 5 packets

Blue flow: 4 packets

Yellow flow: 9 packets

Data

t2

t3

t1

t4

Packets in queues


N packets sent (λt)

M packets received (μt)

MCA+: Accumulation Measurement

  • Use control packets as pivot points

  • (λ: input rate, μ: output rate)

Sender side

CP0

CPi

CP0

CPi

Receiver side

Accumulation

(N – M packets)

Propagation

Delay

Time


MCA+: Accumulation & Congestion

  • Accumulation ≥ 2 packets → congestion

    • By receivers.

    • Possible one packet accumulation even when underloaded

    • More noise, higher threshold

    • Accumulation ≤ 1 packet, synchronize (begin another measurement period).

  • Feedback and rate adaptation

    • Very similar to ORMCC


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Problems to Solve -- Review

  • Drop-to-Zero

  • TCP-friendliness

  • State and computation complexity

  • Feedback implosion


Simulations: Drop-to-Zero Avoidance Test

  • Topology

Source

Router

Bottlenecks

`

Receivers


Throughput rates of

two randomly chosen

unicast flows

Multicast flow rate

Drop-to-Zero Avoidance Test (cont’d)

  • LE-SBCC, using ns-2

    • Multicast rate ≈ Unicast rate


Simulations: Drop-to-Zero Avoidance Test (cont’d)

  • ORMCC, 10000 receivers, using ROSS

Unicast ORMCC

Multicast ORMCC


Simulations: Drop-to-Zero Avoidance Test (cont’d)

  • ORMCC vs PGMCC & TFMCC, 500 receivers, using ROSS

Unicast PGMCC

ORMCC

PGMCC

TFMCC


Simulations: Drop-to-Zero Avoidance Test (cont’d)

  • MCA+


Bottleneck Utilization Improvement of MCA+

  • Average queue length


Bottleneck Utilization Improvement of MCA+

  • Bandwidth utilization


Throughput Improvement of GMCC


Throughput Improvement of GMCC(cont’d)

  • 6 groups of bottlenecks: 0.2 Mbps ~ 1.2Mbps


Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Future Work

  • Application of GMCC to multicast video streaming

  • Application of GMCC to bulk data transmission

  • Multi-rate application layer multicast congestion control


Thank you&


Estimated # of Multicast Receivers on the Internet


ORMCCDetect/Recover from CR Loss

  • Recover from CR absence

    • Measure response time (TR) since hypothetical bottleneck queue build-up (tq)

  • If no feedback from CR for TR since tq

    • Claim CR absence

    • Requests feedback from all receivers

Feedback from

CR arrives

Queue

length

Packet loss begins

Buffer size

Time

Rate

TRAC

Time

TR

tq


GMCCCompare Degree of Congestion

  • Throughput Attenuation Factor (TAF)

    • A: Individual throughput attenuation factor

      • 1 - (output/input) ( )

      • Severity of congestion

    • B: Congestion occurrence rate

      • Number of packet loss epochs / Total sent packets

      • Frequency of congestion

    • TAF = A• B.Higher TAF, more congested

at congestion

Output

Input

Input - output

Packets sent

Packets arrived

Epoch 1

Epoch 2


Probabilistic Inter-layer Bandwidth Switching

  • Hidden bandwidth problem

Source

2Mbps

1Mbps

10Mbps

10

Mbps

Rcvr 1

Rcvr 2

Rcvr 3

Receivers


Probabilistic Inter-layer Bandwidth Switching (cont’d)

Source

  • No change to total traffic volume

  • Difference in test period

2Mbps

Layer 2

traffic volume

1Mbps

10Mbps

Layer 1

traffic volume

10

Mbps

Rcvr 1

Rcvr 2

Rcvr 3

Test

period

Post

test

period

Receivers


Simulations: TCP-Friendliness Test

  • Topology

TCP

Multicast


Simulations: TCP-Friendliness Test (cont’d)

  • LE-SBCC


Simulations: TCP-Friendliness Test (cont’d)

  • ORMCC


Effect of Feedback Packet Loss

  • ORMCC, 5% loss


CR Switch Test

  • ORMCC, every CR stops response after 20 seconds


Linux Experiment (ORMCC)

  • Topology


Linux Experiment (ORMCC)

  • Result


Effectiveness of Layering

GMCC receiver 1

1Mbps

Source

Unicast receivers

5Mbps

GMCC receiver 2


Layering & Throughput Rate (1)

Receiver 2 stayed in layer 1

Receiver 2 joined layer 1

Receiver 2 joined layer 0

Throughput rate of receiver 2


Effectiveness of Layering (cont’d)

GMCC receiver 1

1Mbps

Source

Unicast receivers

10Mbps

GMCC receiver 2


Layering & Throughput Rate (2)

Receiver 2 stayed in layer 1

Receiver 2 joined layer 1

Receiver 2 joined layer 0

Throughput rate of receiver 2


GMCC’s Response to Dynamic Traffic

  • Topology


GMCC’s Response to Dynamic Traffic (cont’d)

  • Throughput dynamics


GMCC PIBS Test

  • Topology


GMCC PIBS Test Result


Related Research

  • End-to-end single-rate

    • DeLucia’s scheme, PGMCC, TFMCC, MDP-CC

  • End-to-end multi-rate

    • MLDA, HALM

    • RLM,RLC,PLM,FLID-DL,FGLM,STAIR etc

  • Third-party assisted

    • Single-rate: e.g. Chiu’s work

    • Multi-rate: e.g. Kar’s work


  • Login