proxy-based asynchronous multicast for efficient on-demand media distribution

36
Proxy-based Asynchronous Proxy-based Asynchronous Multicast for Efficient Multicast for Efficient On-demand Media On-demand Media Distribution Distribution Multimedia Operating and Networking Multimedia Operating and Networking System (MONET) Group System (MONET) Group Yi Cui and Klara Nahrstedt Yi Cui and Klara Nahrstedt {yicui, klara}@cs.uiuc.edu {yicui, klara}@cs.uiuc.edu

Upload: vinaya

Post on 20-Jan-2016

27 views

Category:

Documents


0 download

DESCRIPTION

Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution. Multimedia Operating and Networking System (MONET) Group Yi Cui and Klara Nahrstedt {yicui, klara}@cs.uiuc.edu. Motivation. Media Distribution Video on Demand, Distance Learning, etc. Challenges Scalability - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Proxy-based Asynchronous Proxy-based Asynchronous Multicast for Efficient On-Multicast for Efficient On-

demand Media Distributiondemand Media Distribution

Multimedia Operating and Networking System Multimedia Operating and Networking System (MONET) Group(MONET) Group

Yi Cui and Klara NahrstedtYi Cui and Klara Nahrstedt

{yicui, klara}@cs.uiuc.edu{yicui, klara}@cs.uiuc.edu

Page 2: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

MotivationMotivation

Media DistributionMedia Distribution– Video on Demand, Distance Learning, Video on Demand, Distance Learning,

etc.etc. ChallengesChallenges

– ScalabilityScalability– EfficiencyEfficiency– On-demandOn-demand

Page 3: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

MulticastMulticast Pros: Pros:

Scalable and Scalable and EfficientEfficient

Cons: Cons: synchronous synchronous transmission transmission mannermanner

t0

t0

t0

t0

t0

Page 4: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Multicast-based SolutionsMulticast-based Solutions

Previous WorksPrevious Works– Batching, Patching, Hierarchical Merging, Batching, Patching, Hierarchical Merging,

Periodic Broadcast, etc.Periodic Broadcast, etc. LimitationsLimitations

– Clients have to participate multiple Clients have to participate multiple multicast sessions simultaneouslymulticast sessions simultaneously

– Not so scalable in case of non-sequential Not so scalable in case of non-sequential accessaccess

– Deployment of IP multicast severely Deployment of IP multicast severely limitedlimited

Page 5: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Application-layer MulticastApplication-layer Multicastt0

t0

t0

t0

t0

Existing Existing Works Works ((Narada, Narada, Overcast, Overcast, Yoid, ALMI, Yoid, ALMI, RON, etc.)RON, etc.)

Naïve Naïve Solution Solution Simply elevate Simply elevate IP-multicast IP-multicast based based solutions to solutions to application application layerlayer

Page 6: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Asynchronous MulticastAsynchronous Multicast

t2

t4

t1

t3

t0t1t2

t3t4

Same stream Same stream reusable by reusable by asynchronous asynchronous clientsclients

Clients not Clients not required to receive required to receive multiple streams multiple streams at the same timeat the same time

Non-sequential Non-sequential access supportedaccess supported

IP multicast not IP multicast not requiredrequired

Page 7: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

OutlineOutline

MotivationMotivation Problem FormulationProblem Formulation

– Temporal Dependency ModelTemporal Dependency Model Our SolutionOur Solution

– Media Distribution AlgorithmMedia Distribution Algorithm– Content Discovery ServiceContent Discovery Service

Performance StudyPerformance Study SummarySummary

Page 8: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Temporal Dependency Temporal Dependency ModelModel

EachEach client client RR11 keeps the received stream in its keeps the received stream in its buffer buffer B(RB(R11)) (or simply (or simply BB11) for a certain amount of ) for a certain amount of timetime

If If RR22 requests the same stream after requests the same stream after RR11 did, and did, and the time difference is less than the time difference is less than Size(BSize(B11)), , RR22 could could retrieve data from retrieve data from RR11

– RR11 is the is the predecessorpredecessor of of RR22

– RR22 is the is the successorsuccessor of of RR11

Time

B1

R1 R2 R3

Page 9: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Media Distribution GraphMedia Distribution Graph

B1

B2

B5

Bserver

B3

5 4

2

4

6

3

1

3B4

5

Directed edge from Directed edge from BB11 to to BB22 indicates indicates that that BB11 is the is the predecessor of predecessor of BB22

Edge weight is the Edge weight is the communication communication cost between end cost between end hosts carrying hosts carrying BB11 and and BB22

Page 10: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Media Distribution GraphMedia Distribution Graph

B1

B2

B5

Bserver

B3

5 4

2

4

6

3

1

3B4

5

1.1. How does one know How does one know which of its peers has which of its peers has the stream it the stream it demands?demands?

2.2. Which one to choose if Which one to choose if there are multiple there are multiple candidates?candidates?

Construction and Construction and maintenance of Media maintenance of Media Distribution GraphDistribution Graph

Finding the Finding the Media Media Distribution TreeDistribution Tree on the on the graph graph

Page 11: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Model DeploymentModel Deployment

Complex Group Complex Group ManagementManagement

Resource Resource HeterogeneityHeterogeneity

Highly Highly Unpredictable Unpredictable (machine crash, (machine crash, constant joining constant joining and leaving)and leaving)

Client-based Client-based FrameworkFramework

Page 12: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Model DeploymentModel Deployment

Steady GroupSteady Group Abundant Abundant

ResourceResource Dedicated MachineDedicated Machine

Proxy-based Proxy-based FrameworkFramework

Page 13: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

A Layered PictureA Layered PictureB4 B2

B3S

B1

Media Distribution Graph

Physical Network

Proxy Network

Page 14: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

OutlineOutline

MotivationMotivation Problem FormulationProblem Formulation

– Temporal Dependency ModelTemporal Dependency Model Our SolutionOur Solution

– Media Distribution AlgorithmMedia Distribution Algorithm– Content Discovery ServiceContent Discovery Service

Performance StudyPerformance Study SummarySummary

Page 15: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Media Distribution Media Distribution AlgorithmAlgorithm

FunctionFunction– Maintaining the Maintaining the Media Distribution TreeMedia Distribution Tree ( (MDTMDT) )

on the dynamically changing on the dynamically changing Media Distribution Media Distribution GraphGraph

PropertiesProperties– DistributedDistributed: executed by local nodes, no : executed by local nodes, no

centralized manager requiredcentralized manager required– IncrementalIncremental: only a portion of the tree is : only a portion of the tree is

affected in case of node join/leaveaffected in case of node join/leave– OptimalOptimal: media distribution tree guaranteed to : media distribution tree guaranteed to

be the be the minimal spanning treeminimal spanning tree

Page 16: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

OperationsOperations

MDT-InsertMDT-Insert– On insertion of a new node On insertion of a new node BBnewnew, , BBnewnew chooses its chooses its

closest predecessor (the one of the minimum closest predecessor (the one of the minimum communication cost) as its parentcommunication cost) as its parent

MDT-DeleteMDT-Delete– When an old node When an old node BBdeletedelete leaves, it notifies its leaves, it notifies its

current children to find themselves new parents current children to find themselves new parents as done in the as done in the MDT-InsertMDT-Insert operation operation

Page 17: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

AnalysisAnalysis

CorrectnessCorrectness– MDT-InsertMDT-Insert and and MDT-DeleteMDT-Delete are guaranteed to are guaranteed to

return loop-free trees.return loop-free trees. OptimalityOptimality

– The trees returned by The trees returned by MDT-InsertMDT-Insert and and MDT-MDT-DeleteDelete are minimal spanning trees. are minimal spanning trees.

Y. Cui, K. Nahrstedt, Proxy-based Asynchronous Multicast Y. Cui, K. Nahrstedt, Proxy-based Asynchronous Multicast for Efficient On-demand Media Distributionfor Efficient On-demand Media Distribution

http://cairo.cs.uiuc.edu/publications/paper-files/TR2002-yicui.pdfhttp://cairo.cs.uiuc.edu/publications/paper-files/TR2002-yicui.pdf

Page 18: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Content Discovery ServiceContent Discovery Service

PurposePurpose– The proxy which runs The proxy which runs MDT-InsertMDT-Insert or or MDT-DeleteMDT-Delete

needs up-to-date knowledge of its predecessors needs up-to-date knowledge of its predecessors and successorsand successors

Limitation of static-content-based solutionsLimitation of static-content-based solutions– The content of a proxy buffer is time varying, The content of a proxy buffer is time varying,

which could constantly invalidate the content which could constantly invalidate the content availability information, thus resulting high availability information, thus resulting high volume of update messagesvolume of update messages

Page 19: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Content Discovery ServiceContent Discovery Service

B1

R1

R1 registration

buffer size

Time

R2 R3

R2 query R3 query

P0 P1 P2 P3 P4 P5 P6

Indexing Servers

Page 20: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

OutlineOutline

MotivationMotivation Problem FormulationProblem Formulation

– Temporal Dependency ModelTemporal Dependency Model Our SolutionOur Solution

– Media Distribution AlgorithmMedia Distribution Algorithm– Content Discovery ServiceContent Discovery Service

Performance StudyPerformance Study SummarySummary

Page 21: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Performance StudyPerformance Study

Simulation SetupSimulation Setup– NS-2 simulatorNS-2 simulator– GT-ITM network generator (transit-stub model)GT-ITM network generator (transit-stub model)

Evaluation MetricsEvaluation Metrics– Communication Cost (# of RTP packets traveled Communication Cost (# of RTP packets traveled

across the network)across the network)– Storage Cost (associated with time)Storage Cost (associated with time)– Access Latency (delayed observed by a client Access Latency (delayed observed by a client

from initial request until the stream playback)from initial request until the stream playback)

Page 22: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Communication CostCommunication Cost

Server Communication Server Communication CostCost

Link Communication Link Communication CostCost Comparing with Batching and Proxy Comparing with Batching and Proxy

PrefixingPrefixing– Buffer Size: 5 min.Buffer Size: 5 min.– 12 proxies, 192 clients12 proxies, 192 clients

Page 23: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Impact of Buffer SizeImpact of Buffer Size

Server Communication Server Communication CostCost

Link Communication Link Communication CostCost Comparing with Batching and Proxy Comparing with Batching and Proxy

PrefixingPrefixing– 12 proxies, 192 clients12 proxies, 192 clients

Page 24: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Storage CostStorage Cost

Comparing with Proxy PrefixingComparing with Proxy Prefixing

12 proxies, 192 clients12 proxies, 192 clients 30 proxies, 480 clients30 proxies, 480 clients

Page 25: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Access LatencyAccess Latency

Buffer Size 5 minBuffer Size 5 min Buffer Size 20 minBuffer Size 20 min

Buffer size has no significant impact on Buffer size has no significant impact on access latencyaccess latency

Page 26: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Buffer Hit RatioBuffer Hit Ratio

Access latency only improves when cache Access latency only improves when cache hit ratio increaseshit ratio increases

Page 27: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Access Latency in DetailsAccess Latency in Details

Streaming delay dominates the overall end-Streaming delay dominates the overall end-to-end latencyto-end latency

Page 28: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

SummarySummary

Proxy-based asynchronous multicastProxy-based asynchronous multicast– Buffering Capabilities on End hosts (Proxies)Buffering Capabilities on End hosts (Proxies)– Temporal Locality of Stream AccessTemporal Locality of Stream Access

– Efficient Media DistributionEfficient Media Distribution– Time-based Content DiscoveryTime-based Content Discovery

Future WorkFuture Work– Real network experimentationReal network experimentation– User Access Pattern StudyUser Access Pattern Study

Page 29: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Thank YouThank You

http://www-monet.cs.uiuc.edu

Page 30: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Backup SlidesBackup Slides

Page 31: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Related WorkRelated Work

Asynchronous Multicast in Web CachingAsynchronous Multicast in Web Caching– Pablo Rodriguez et al.Pablo Rodriguez et al.

Similar ideas in StreamingSimilar ideas in Streaming– Chaining, K. Hua et al.Chaining, K. Hua et al.– Cache-and-Relay, S. Jin et al.Cache-and-Relay, S. Jin et al.

Proxy CachingProxy Caching– Middleman, S. Acharya et al.Middleman, S. Acharya et al.– Silo, Tokens and Rainbow, Y. Chae et al.Silo, Tokens and Rainbow, Y. Chae et al.

Page 32: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Extended ResultsExtended Results

Page 33: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Extended ResultsExtended Results

Page 34: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Extended ResultsExtended Results

Page 35: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Extended ResultsExtended Results

Page 36: Proxy-based Asynchronous Multicast for Efficient On-demand Media Distribution

Extended ResultsExtended Results