Date post: | 12-Jan-2016 |
Category: |
Documents |
Upload: | georgina-hoover |
View: | 221 times |
Download: | 0 times |
Resilient Peer-to-Peer StResilient Peer-to-Peer Streamingreaming
Presented by: Yun TengPresented by: Yun Teng
Resilient Peer-to-Peer StreamingResilient Peer-to-Peer Streaming
AuthorsAuthors Venkata N. Padmanabhan Venkata N. Padmanabhan Helen J. Wang Helen J. Wang Philip A. Chou Philip A. Chou
From From MicrosoftMicrosoft
MotivationMotivation
Distributing “live” streaming media content Distributing “live” streaming media content to a potentially large and highly dynamic to a potentially large and highly dynamic population of hosts. population of hosts. ““Live” streaming refer to the simultaneous Live” streaming refer to the simultaneous
distribution of the same content to all clientsdistribution of the same content to all clients
ChallengeChallenge
Peer-to-peer content distribution is attractiPeer-to-peer content distribution is attractive because the bandwidth available to serve because the bandwidth available to serve content scales with demand.ve content scales with demand.
A key challenge: A key challenge: making content distribumaking content distribution robust to peer transiencetion robust to peer transience..
ApproachApproach
Introduce redundancy, both in network patIntroduce redundancy, both in network paths and in data hs and in data
Multiple diverse distribution tree: provide rMultiple diverse distribution tree: provide redundancy in network pathsedundancy in network paths
Multiple description coding (MDC): provide Multiple description coding (MDC): provide redundancy in dataredundancy in data
CoopNet CoopNet
Makes selective use of P2P networking, plMakes selective use of P2P networking, placing minimal demands on the peers acing minimal demands on the peers
Goal: help a server tide over crises such aGoal: help a server tide over crises such as flash crowds rather than replace the servs flash crowds rather than replace the server with a pure P2P systemer with a pure P2P system
AssumptionAssumption
A node participates in and contributes bandwidth A node participates in and contributes bandwidth for content distribution only so long as the user ifor content distribution only so long as the user is interested in the content. It stops forwarding tras interested in the content. It stops forwarding traffic when the user tunes out ffic when the user tunes out
A node only contribute as much upstream bandA node only contribute as much upstream bandwidth as it consumes in the downstream directiowidth as it consumes in the downstream direction (applies to the total bandwidth in and out of a nn (applies to the total bandwidth in and out of a node aggregated over all treesode aggregated over all trees
Nodes in CoopNet are inherently unreliable Nodes in CoopNet are inherently unreliable
Tree managementTree management
GoalsGoals
Short treesShort trees Tree diversity Tree diversity EfficiencyEfficiency Quick join and leaveQuick join and leave ScalabilityScalability
ConflictsConflicts
Tree diversity versus efficiencyTree diversity versus efficiency Quick join and leave versus scalabilityQuick join and leave versus scalability
Feasibility of the Centralized Feasibility of the Centralized ProtocolProtocol
September 11 flash crowd at MSNBCSeptember 11 flash crowd at MSNBC At peak, 18,000 nodes, 1,000 arrivals and At peak, 18,000 nodes, 1,000 arrivals and
departures per seconddepartures per second On average, 10,000 nodes, 180 arrivals and On average, 10,000 nodes, 180 arrivals and
departures per seconddepartures per second
Resource requirementResource requirement Memory: 10 MBMemory: 10 MB Network bandwidth: 8 MbpsNetwork bandwidth: 8 Mbps CPU: 40 ns memory cycle, allow 390 memory CPU: 40 ns memory cycle, allow 390 memory
accesses per insertionaccesses per insertion
Centralized Tree ManagementCentralized Tree Management
Randomized Tree ConstructionRandomized Tree Construction Deterministic Tree ConstructionDeterministic Tree Construction
Tree Efficiency / Topology AwareneTree Efficiency / Topology Awareness ss
Need an efficient way to pick a proximate Need an efficient way to pick a proximate parent for a node without requiring parent for a node without requiring extensive P2P network measurementsextensive P2P network measurements
Each node maintains its “delay Each node maintains its “delay coordinates” of ping times to a small set of coordinates” of ping times to a small set of landmark hostslandmark hosts
Root pick the closest node for incoming Root pick the closest node for incoming node from a set of candidate parentsnode from a set of candidate parents
Tree RepairTree Repair
Due to node leaveDue to node leave Two typesTwo types
Voluntary – Notify the rootVoluntary – Notify the root Failure – Detect failureFailure – Detect failure
Multiple Description CodiMultiple Description Coding (MDC)ng (MDC)
OverviewOverview
Encoding an audio and/or video signal into Encoding an audio and/or video signal into M>1 separate streams, or descriptions, suM>1 separate streams, or descriptions, such that any subset of these descriptions cach that any subset of these descriptions can be received and decoded.n be received and decoded.
The distortion with respect to the original siThe distortion with respect to the original signal is commensurate with the number of gnal is commensurate with the number of descriptions received.descriptions received.
Overview (cont.)Overview (cont.)
MDC incurs a modest performance penalty relatiMDC incurs a modest performance penalty relative to layered coding, which in turn incurs a slight ve to layered coding, which in turn incurs a slight performance penalty relative to single descriptioperformance penalty relative to single description coding.n coding.
The audio and/or video signal is partitioned into The audio and/or video signal is partitioned into groups of frames (GOF), each group having durgroups of frames (GOF), each group having duration of T (such as 1 second). Each GOF is indeation of T (such as 1 second). Each GOF is independently encoded, error protected, and packetipendently encoded, error protected, and packetized into M packets. zed into M packets.
CoopNet MDC System ArchitectureCoopNet MDC System Architecture
Configuring MDCConfiguring MDC
GOF duration G = 1 secondGOF duration G = 1 second M = 16 descriptionsM = 16 descriptions Packet size P = 1250 bytesPacket size P = 1250 bytes T = 8 treesT = 8 trees
Performance evaluationPerformance evaluation
Impact of Number of Distribution Impact of Number of Distribution TreesTrees
Effectiveness of MDCEffectiveness of MDC
Probability distribution of descriptions Probability distribution of descriptions received vs. number of distribution treesreceived vs. number of distribution trees
Root out-degree = 100Root out-degree = 100 Maximum client out-degree = 4Maximum client out-degree = 4
Impact of Repair TimeImpact of Repair Time
Related workRelated work
Related WorkRelated Work
Application-level MulticastApplication-level Multicast Source Coding and Path DiversitySource Coding and Path Diversity
ReferencesReferences
V. N. Padmanabhan, H. J. Wang, and P. A. Chou. V. N. Padmanabhan, H. J. Wang, and P. A. Chou. Resilient Peer-to-Peer Streaming. Technical Report Resilient Peer-to-Peer Streaming. Technical Report MSR-TR-2003-11, Microsoft Research, Redmond, WA, MSR-TR-2003-11, Microsoft Research, Redmond, WA, March 2003. March 2003.
V. N. Padmanabhan, H. J. Wang, P. A. Chou, and K. V. N. Padmanabhan, H. J. Wang, P. A. Chou, and K. Sripanidkulchai. Distributing Streaming Media Content Sripanidkulchai. Distributing Streaming Media Content Using Cooperative Networking. In Using Cooperative Networking. In Proc. NOSSDAVProc. NOSSDAV, May , May 2002. 2002.
Q & AQ & A
Thank you!Thank you!