LOGO P2P & Multimedia Streaming NPUST-MINAR Professor : Sheau- Ru Tong Student : Yi- Chen Hsu 1
Dec 30, 2015
LOGO
P2P & Multimedia StreamingNPUST-MINAR
Professor : Sheau-Ru Tong Student : Yi-Chen Hsu
1
Contents
Introduction1
P2P Network Streaming Architecture2
Stream Over P2P Neteork3
Issues In Multimedia P2P Streaming4
2
3
1. Introduction
Introduction – 1.1
4
A content delivery network or content distribution network (CDN) is a system of computers containing copies of data, placed at various points in a network so as to maximize bandwidth for access to the data from clients throughout the network. A client accesses a copy of the data near to the client, as opposed to all clients accessing the same central server, so as to avoid bottleneck near that server.
1. Content Delivery Net Work(CDN)
Content types include web objects, download-able objects (media files, software, documents), applications, real time media streams, and other components of internet delivery (DNS, routes, and database queries).
[Wikipedia]
YouTube is the most familiar solution for streaming video with client-server model over Internet
Introduction – 1.2
5
IP-multicast-based techniques can efficiently share a single channel, but the server is only scoped at local networks.
Introduction – 2.1
6
2. Streaming Proxy ServerIn computer networks, a proxy server is a server (a
computer system or an application program) that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource, available from a different server. [Wikipedia]
Introduction – 2.2
7
A caching proxy server accelerates service requests by retrieving content saved from a previous request made by the same client or even other clients. Caching proxies keep local copies of frequently requested resources, allowing large organizations to significantly reduce their upstream bandwidth usage and costs, while significantly increasing performance. [Wikipedia]
Introduction – 2.3
8
Streaming Proxy Server Suffix-
Window Caching
Introduction – 3.1
9
A peer-to-peer, commonly abbreviated to P2P, is any distributed network architecture composed of participants that make a portion of their resources (such as processing power, disk storage or network bandwidth) directly available to other network participants, without the need for central coordination instances (such as servers or stable hosts). Peers are both suppliers and consumers of resources, in contrast to the traditional client–server model where only servers supply, and clients consume.
[Wikipedia]
3. What is P2P?
Introduction – 3.2
10
The Popular P2P ApplicationsP2P File System: open-after-downloading
• BitTorrent• BitComet • eDonkey• eMule
P2P Media Streaming System: play-while-downloading• KKBOX• ezPeer• Skype• PPStream• PPLive
• FOXY• Freenet• KazaA• WinMX
• Winny
11
BitTorrent (protocol)A user playing the role of file-provider makes a file available to the network. This first user's file is called a seed and its availability on the network allows other users, called peers, to connect and begin to download the seed file.
As new peers connect to the network and request the same file, their computer receives a different piece of the data from the seed.
Once multiple peers have multiple pieces of the seed, BitTorrent allows each to become a source for that portion of the file. [Wikipedia]
Introduction – 3.3
12
BitTorrent (Measurements)
The number of downloaders increases exponentially in a short period of time after the torrent’s birth (the flash crowd period), and then decreases exponentially, but at a slower rate.
The number of seeds also increases exponentially at first, and then decreases exponentially at a slower rate.
Introduction – 3.3
FROM: Measurements, Analysis, and Modeling of BitTorrent-like Systems
13
P2P IPTV (PPStream)
Introduction – 3.4
FROM: A Measurement Study of PPStream
14
P2P IPTV (PPStream)
Introduction – 3.4
FROM: Study of PPStream Based on Measurement
15
P2P IPTV MeasurementIntroduction – 3.4
2006 FIFA World Cup
PPStream seems to get the data from many peers at the same time and its peers seem to have long session duration.
PPLive seems to get the data from only a few peers at the same time but its peers have not a long session duration.
SOPcast download policy looks like PPLive policy.
TVants download policy seems to mix PPStream and SOPcast policies.
FROM: P2P IPTV Measurement: A Comparison Study
16
2. P2P Network Streaming Architecture
17
Overlay NetworkP2P Network Streaming Architecture – 1
Overlay network is a computer network which is built on top of another network.
Nodes in the overlay can be thought of as being connected by virtual or logical links, each of which corresponds to a path, perhaps through many physical links, in the underlying network.
For example, distributed systems such as cloud computing, peer-to-peer networks, and client-server applications are overlay networks because their nodes run on top of the Internet. [Wikipedia]
18
ChallengesP2P Network Streaming Architecture – 2
Dynamic uptime• Peers don’t always stay online in the system.
• Requesting peers need to find new supplying peers to replace the failed ones.
Limited and dynamic peer bandwidth• Unlike powerful video servers, peers have limited bandwidth capacities.
• The available bandwidth of supplying peers might fluctuate unexpectedly.
FROM: Challenges and Approaches in Large-Scale P2P Media Streaming
19
Locating supplying peersP2P Network Streaming Architecture – 3.1
Centralized directory• EX: PPStream, PPLive• The simplest and most commonly used method
FROM: Challenges and Approaches in Large-Scale P2P Media Streaming
20
P2P Network Streaming Architecture – 3.2
Hierarchical overlay structure• Peers are organized into a hierarchical overlay structure such as an overlay tree.• The new client probes each peer in the list and finds out the most suitable peer Px .
FROM: Challenges and Approaches in Large-Scale P2P Media Streaming
21
P2P Network Streaming Architecture – 3.3
DHT-based approach• Each peer is assigned a peer ID by hashing its own IP address using a common known hash function.
• Each object is also associated with a key in the same space of peer IDs by hashing the object itself.
• The peer with an ID equal to the hashed key is responsible for storing the object’s location (or the actual object).
FROM: Challenges and Approaches in Large-Scale P2P Media Streaming
22
EX: BitTorrent (Kademlia) Third generation peer-to-peer networks use Distributed hash tables(DHT) to look up files in the network.
Kademlia uses a "distance" calculation between two nodes. This distance is computed as the exclusive or of the two node IDs, taking the result as an integer number.
The node ID is typically a large random number that is chosen with the goal of being unique for a particular node (see GUID). It can and does happen that nodes from Germany and Australia are "neighbours"; they have chosen similar random node IDs.
A basic Kademlia network with 2n nodes will only take n steps (in the worst case) to find that node. [Wikipedia]
P2P Network Streaming Architecture – 3.3
23
P2P Network Streaming Architecture – 3.3
EX : P2P-over-SIPAdditionally, implement P2P using SIP messaging
P2P-SIPoverlay Alice
128.59.19.194
REGISTERINVITE alice
65a1fc
d13da3
d4213f
d462bad467c4
d471f1
d46a1c
Route(d46a1c)
18
14
21
3238
58
47
10
24 30
54
38
42
Use DHT in server farm
Use DHT for all clients - but some are resource limited
Use DHT among super-nodes
Hierarchy Dynamically adapt
servers
clients
1
10
24 30
54
38
http://www.cs.columbia.edu/IRT/p2p-sip
24
P2P Network Streaming Architecture – 3.4
Gossip-basedDepth-first search (DFS) is an algorithm for traversing or
searching a tree, tree structure, or graph. One starts at the root (selecting some node as the root in the graph case) and explores as far as possible along each branch before backtracking
25
3. Stream Over P2P Network
26
1. Content delivery path maintenance
Stream Over P2P Network– 1.1
Tree-based multicast
27
Stream Over P2P Network– 1.2
Tree-based multicast
SplitStream: High-Bandwidth Multicast in CooperativeEnvironments
28
Stream Over P2P Network– 1.3
Tree-based multicast
Topology Optimization in Multi-Tree Based P2P Streaming System
29
In PROMISE, we represent the segment goodness as a function of the loss rate and available bandwidth because these two metrics: (1) can be measured segment wise, and (2) are the most influential on the receiving rate, and hence on the quality. A segment with high available bandwidth and low loss is unlikely to introduce high jitter or long queuing delay.
PROMISE: PeertoPeer Media Streaming
2. Content delivery path selection
Stream Over P2P Network– 2.1
30
Stream Over P2P Network– 2.2
CoolStreaming/DONet: A Data-Driven OverlayNetwork for Efficient Live Media Streaming
31
Stream Over P2P Network– 2.3
Inbound/outbound
Local rarest first (LRF) scheduling
1
2
3
4
Optimal scheduling
Optimizing the Throughput of Data-Driven Peer-to-Peer Streaming
32
Stream Over P2P Network– 2.3
Optimizing the Throughput of Data-Driven Peer-to-Peer Streaming
33
Stream Over P2P Network– 2.4
On Peer-to-Peer Media Streaming
Out-bound bandwidth
0.5
0.25
0.125
0.125
Buffer delay
Optimal media data assignment algorithm OTSp2p
34
Stream Over P2P Network– 2.4
On Peer-to-Peer Media Streaming
Optimal media data assignment algorithm OTSp2p
35
Stream Over P2P Network– 2.4
On Peer-to-Peer Media Streaming
Distributed differentiated admission control protocol DACp2p
Average waiting time
36
Stream Over P2P Network– 2.4
On Peer-to-Peer Media Streaming
Distributed differentiated admission control protocol DACp2p
Average waiting time
37
Stream Over P2P Network– 2.4
R2: Random Push with Random Network Coding in Live Peer-to-Peer Streaming
38
4. Issues In Multimedia P2P Streaming
39
Appropriate video coding scheme
Issues In Multimedia P2P Streaming – 1
Directed acyclic dependency graph representation for a typical MPEG layered-encoded video sequence (one network packet per layer, with IPBPB
format).
Each packet pnPacket size sn
Decoding timestamp tdn
Weight wn
The successful decoding of one packet is contingent on the successful decoding of some other packets, called ancestors of pn.
40
Appropriate video coding scheme
Issues In Multimedia P2P Streaming – 1
41
Appropriate video coding scheme
Issues In Multimedia P2P Streaming – 1
LOGO
42