designing overlay multicast networks for streaming

19
Designing Overlay Designing Overlay Multicast Networks Multicast Networks for Streaming for Streaming Jevan Saks Jevan Saks Bruce Maggs Bruce Maggs Konstantin Andreev Konstantin Andreev Adam Meyerson Adam Meyerson

Upload: gordon

Post on 22-Feb-2016

64 views

Category:

Documents


4 download

DESCRIPTION

Designing Overlay Multicast Networks for Streaming. Jevan Saks Bruce Maggs Konstantin Andreev Adam Meyerson. Delivering Streaming Media. Server bottlenecks Points of failure Can only serve about 50Mbps of streams Network bottlenecks Unpredictable topology - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Designing Overlay Multicast Networks for Streaming

Designing Overlay Multicast Designing Overlay Multicast Networks for StreamingNetworks for Streaming

Jevan SaksJevan SaksBruce MaggsBruce Maggs

Konstantin AndreevKonstantin AndreevAdam MeyersonAdam Meyerson

Page 2: Designing Overlay Multicast Networks for Streaming

Delivering Streaming MediaDelivering Streaming Media

Server bottlenecksServer bottlenecks• Points of failurePoints of failure• Can only serve about Can only serve about

50Mbps of streams50Mbps of streams Network bottlenecksNetwork bottlenecks

• Unpredictable topologyUnpredictable topology• Best-effort delivery = Best-effort delivery =

No guaranteesNo guarantees

Page 3: Designing Overlay Multicast Networks for Streaming

Live StreamingLive Streaming

Edge Servers (Sinks)

1 2 3 41 2 3 4

11 X X 33 44

1 2 3 1 2 3 44X X X

11 22 3 43 4x

Entry Point

Reflectors

Encoder

11 22 3 43 4x

11 22 3 43 4x

Page 4: Designing Overlay Multicast Networks for Streaming

Proposed SolutionProposed Solution A less centralized approach:A less centralized approach: Entry PointEntry Point

• Source of the stream, sends to reflectorsSource of the stream, sends to reflectors ReflectorReflector

• Intermediate server, can split and retransmitIntermediate server, can split and retransmit Edge ServerEdge Server

• Reconstructs a better quality stream from what Reconstructs a better quality stream from what it receives and serves the end userit receives and serves the end user

Page 5: Designing Overlay Multicast Networks for Streaming

ApproachApproach Three-tier structureThree-tier structure

S – Sources

R - Reflectors

D - Sinks

Page 6: Designing Overlay Multicast Networks for Streaming

ConsiderationsConsiderations CostCost CapacityCapacity BandwidthBandwidth QualityQuality ReliabilityReliability

Page 7: Designing Overlay Multicast Networks for Streaming

IP ParametersIP Parameters Success requirements (Success requirements ()) Failure probabilities (p)Failure probabilities (p) Cost on edges (c)Cost on edges (c) Cost on reflectors (r)Cost on reflectors (r) Fanout restrictions (F)Fanout restrictions (F)

Page 8: Designing Overlay Multicast Networks for Streaming

Integer ProgramInteger Program

Indicator variables: Indicator variables: zzii – reflector – reflector ii used used yykk

ii – stream – stream kk sent to sent to reflector reflector ii

xxkkij ij – stream – stream kk sent to sent to

sink sink jj through through reflector reflector ii

Page 9: Designing Overlay Multicast Networks for Streaming

ConstraintsConstraints Minimize:Minimize:

Subject To:Subject To:

Page 10: Designing Overlay Multicast Networks for Streaming

Solving the IPSolving the IP ILOG Cplex (concert library)ILOG Cplex (concert library) DashOptimization Xpress-MPDashOptimization Xpress-MP GLPK (GNU Linear Programming Kit)GLPK (GNU Linear Programming Kit)

Page 11: Designing Overlay Multicast Networks for Streaming

An ExampleAn Example (Thanks to graphviz)

Page 12: Designing Overlay Multicast Networks for Streaming

ApproximationApproximation Why? IP is slow, and topology is large Why? IP is slow, and topology is large

and changes quicklyand changes quickly Randomized rounding:Randomized rounding:

• Cost violated by factor O(log n)Cost violated by factor O(log n)• Fanout/weight constraints violated by factor of at most 2Fanout/weight constraints violated by factor of at most 2

Modified GAP AssignmentModified GAP Assignment• Uses max-flow on a graph of size O(|R|Uses max-flow on a graph of size O(|R|¢¢|D|)|D|)• Cost violated again by O(log n)Cost violated again by O(log n)• Fanout/weight constraints violated by another factor of Fanout/weight constraints violated by another factor of

at most 2at most 2

Page 13: Designing Overlay Multicast Networks for Streaming

ComparisonComparisonIP Solution (Cost = 51) Approx Solution (Cost = 52)

Page 14: Designing Overlay Multicast Networks for Streaming

In ProgressIn Progress Multi-source approximationsMulti-source approximations Timing comparisonsTiming comparisons Violations in “average-case” Violations in “average-case”

scenariosscenarios

Page 15: Designing Overlay Multicast Networks for Streaming

ExtensionsExtensions Capacities on all edgesCapacities on all edges Capacities from reflector-edgeserverCapacities from reflector-edgeserver Bandwidth requirementsBandwidth requirements Color constraintsColor constraints

Page 16: Designing Overlay Multicast Networks for Streaming

ExtensionsExtensions

Edge Server (Sink)

Entry Point

Reflectors

Encoder

BMM Net

UU Net

Page 17: Designing Overlay Multicast Networks for Streaming

Extension’s ConstraintsExtension’s Constraints Color constraintsColor constraints

wherewhere R=RR=R11 [[ R R22 [[… … [[ R Rm m

((RRi i is the set of reflectors on is the set of reflectors on thethe iithth ISP)ISP)

Here different colors Here different colors represent different ISPsrepresent different ISPs

There is no added value in There is no added value in serving to a fixed sink from serving to a fixed sink from two reflectors of the same two reflectors of the same color. color.

Page 18: Designing Overlay Multicast Networks for Streaming

Future WorkFuture Work Use real-world data from AkamaiUse real-world data from Akamai Implement extensionsImplement extensions Improve approximation?Improve approximation?

Page 19: Designing Overlay Multicast Networks for Streaming

Best Case Scenario?Best Case Scenario?