designing overlay multicast networks for streaming

Post on 22-Feb-2016

67 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

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

Designing Overlay Multicast Designing Overlay Multicast Networks for StreamingNetworks for Streaming

Jevan SaksJevan SaksBruce MaggsBruce Maggs

Konstantin AndreevKonstantin AndreevAdam MeyersonAdam Meyerson

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

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

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

ApproachApproach Three-tier structureThree-tier structure

S – Sources

R - Reflectors

D - Sinks

ConsiderationsConsiderations CostCost CapacityCapacity BandwidthBandwidth QualityQuality ReliabilityReliability

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)

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

ConstraintsConstraints Minimize:Minimize:

Subject To:Subject To:

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)

An ExampleAn Example (Thanks to graphviz)

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

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

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

scenariosscenarios

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

ExtensionsExtensions

Edge Server (Sink)

Entry Point

Reflectors

Encoder

BMM Net

UU Net

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.

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

Best Case Scenario?Best Case Scenario?

top related