End to end multicast congestion control and avoidance
Download
1 / 76

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


  • 125 Views
  • Uploaded on

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.

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 ' End-to-End Multicast Congestion Control and Avoidance' - judson


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

End-to-End Multicast Congestion Control and Avoidance

Jiang Li

Advisor: Shivkumar Kalyanaraman


Outline
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Multicast
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
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
Research on Multicast

  • Routing

  • Reliable transmission

  • Congestion management

  • Security

  • Address allocation

  • And more


Multicast congestion management
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
Challenges

  • Multiple paths

    • Complex congestion pattern

    • Heterogeneous bandwidth

      • Dynamically changing

Source

Router

Bottlenecks

0.5Mbps

2Mbps

`

1Mbps

Receivers


Potential problems
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
Potential Problems (cont’d)

  • Feedback implosion

Source

Router

Receivers


Potential problems cont d1
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


Solution categories

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


Outline1
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations

  • Future work


Le sbcc
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


Characteristics

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


Feedback filter cascade

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


Filter 1 li2le

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


Rate adaptation

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


Outline2
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Ormcc
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
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
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


Outline3
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Gmcc generalized multicast congestion control
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
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
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


Key ideas

=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
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


Receiver operations

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


Outline4
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
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


Mca accumulation measurement

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


Outline5
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


Problems to solve review
Problems to Solve -- Review

  • Drop-to-Zero

  • TCP-friendliness

  • State and computation complexity

  • Feedback implosion


Simulations drop to zero avoidance test
Simulations: Drop-to-Zero Avoidance Test

  • Topology

Source

Router

Bottlenecks

`

Receivers


Drop to zero avoidance test cont d

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
Simulations: Drop-to-Zero Avoidance Test (cont’d)

  • ORMCC, 10000 receivers, using ROSS

Unicast ORMCC

Multicast ORMCC


Simulations drop to zero avoidance test cont d1
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 d2
Simulations: Drop-to-Zero Avoidance Test (cont’d)

  • MCA+





Throughput improvement of gmcc cont d
Throughput Improvement of GMCC(cont’d)

  • 6 groups of bottlenecks: 0.2 Mbps ~ 1.2Mbps


Outline6
Outline

  • Overview of multicast and multicast congestion management

  • Solution series

    • LE-SBCC

    • ORMCC

    • GMCC

    • MCA+

  • Simulations & Experiments

  • Future work


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




Ormcc detect recover from cr loss
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


Gmcc compare degree of congestion
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
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
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
Simulations: TCP-Friendliness Test

  • Topology

TCP

Multicast


Simulations tcp friendliness test cont d
Simulations: TCP-Friendliness Test (cont’d)

  • LE-SBCC


Simulations tcp friendliness test cont d1
Simulations: TCP-Friendliness Test (cont’d)

  • ORMCC



Cr switch test
CR Switch Test

  • ORMCC, every CR stops response after 20 seconds




Effectiveness of layering
Effectiveness of Layering

GMCC receiver 1

1Mbps

Source

Unicast receivers

5Mbps

GMCC receiver 2


Layering throughput rate 1
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
Effectiveness of Layering (cont’d)

GMCC receiver 1

1Mbps

Source

Unicast receivers

10Mbps

GMCC receiver 2


Layering throughput rate 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 pibs test
GMCC PIBS Test

  • Topology



Related research
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


ad