* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Stream Over P2P Network
Wake-on-LAN wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Computer network wikipedia , lookup
Distributed firewall wikipedia , lookup
Video on demand wikipedia , lookup
Deep packet inspection wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Network tap wikipedia , lookup
Airborne Networking wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
LOGO P2P & Multimedia Streaming NPUST-MINAR Professor : Sheau-Ru Tong Student : Yi-Chen Hsu 1 Contents 1 Introduction 2 P2P Network Streaming Architecture 3 Stream Over P2P Neteork 4 2 Issues In Multimedia P2P Streaming 1. Introduction 3 Introduction – 1.1 1. Content Delivery Net Work(CDN) 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. 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 4 Introduction – 1.2 IP-multicast-based techniques can efficiently share a single channel, but the server is only scoped at local networks. 5 Introduction – 2.1 2. Streaming Proxy Server In 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] 6 Introduction – 2.2 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] 7 Introduction – 2.3 Streaming Proxy Server Suffix-Window Caching 8 Introduction – 3.1 3. What is P2P? 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] 9 Introduction – 3.2 The Popular P2P Applications P2P File System: open-after-downloading • FOXY • BitTorrent • Winny • Freenet • BitComet • KazaA • eDonkey • WinMX • eMule P2P Media Streaming System: play-while-downloading • KKBOX • ezPeer • Skype • PPStream • PPLive 10 Introduction – 3.3 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] 11 Introduction – 3.3 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. FROM: Measurements, Analysis, and Modeling of BitTorrent-like Systems 12 Introduction – 3.4 P2P IPTV (PPStream) FROM: A Measurement Study of PPStream 13 Introduction – 3.4 P2P IPTV (PPStream) FROM: Study of PPStream Based on Measurement 14 Introduction – 3.4 P2P IPTV Measurement 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 15 2. P2P Network Streaming Architecture 16 P2P Network Streaming Architecture – 1 Overlay Network 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 clientserver applications are overlay networks because their nodes run on top of the Internet. [Wikipedia] 17 P2P Network Streaming Architecture – 2 Challenges 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 18 P2P Network Streaming Architecture – 3.1 Locating supplying peers Centralized directory • EX: PPStream, PPLive • The simplest and most commonly used method FROM: Challenges and Approaches in Large-Scale P2P Media Streaming 19 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 20 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 21 P2P Network Streaming Architecture – 3.3 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] 22 P2P Network Streaming Architecture – 3.3 EX:P2P-over-SIP Additionally, implement P2P using SIP messaging INVITE alice P2P-SIP overlay 1 54 d46a1c 14 10 servers 47 38 d467c4 d462ba d4213f 21 42 38 Alice 128.59.19.194 d471f1 8 58 REGISTER 1 54 10 32 24 30 Route(d46a1c) d13da3 65a1fc 38 24 30 clients Use DHT in server farm 23 Use DHT for all clients - but some are resource limited Use DHT among super-nodes Hierarchy Dynamically adapt http://www.cs.columbia.edu/IRT/p2p-sip P2P Network Streaming Architecture – 3.4 Gossip-based Depth-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 24 3. Stream Over P2P Network 25 Stream Over P2P Network– 1.1 1. Content delivery path maintenance Tree-based multicast 26 Stream Over P2P Network– 1.2 Tree-based multicast SplitStream: High-Bandwidth Multicast in CooperativeEnvironments 27 Stream Over P2P Network– 1.3 Tree-based multicast Topology Optimization in Multi-Tree Based P2P Streaming System 28 Stream Over P2P Network– 2.1 2. Content delivery path selection 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. 29 PROMISE: PeertoPeer Media Streaming Stream Over P2P Network– 2.2 30 CoolStreaming/DONet: A Data-Driven OverlayNetwork for Efficient Live Media Streaming Stream Over P2P Network– 2.3 Inbound/outboun d 3 2 4 1 Local rarest first (LRF) scheduling 31 Optimal scheduling Optimizing the Throughput of Data-Driven Peer-to-Peer Streaming Stream Over P2P Network– 2.3 32 Optimizing the Throughput of Data-Driven Peer-to-Peer Streaming Stream Over P2P Network– 2.4 Optimal media data assignment algorithm OTSp2p 0.5 Out-bound bandwidth 0.25 0.125 0.125 Buffer delay 33 On Peer-to-Peer Media Streaming Stream Over P2P Network– 2.4 Optimal media data assignment algorithm OTSp2p 34 On Peer-to-Peer Media Streaming Stream Over P2P Network– 2.4 Distributed differentiated admission control protocol DACp2p Average waiting time 35 On Peer-to-Peer Media Streaming Stream Over P2P Network– 2.4 Distributed differentiated admission control protocol DACp2p Average waiting time 36 On Peer-to-Peer Media Streaming Stream Over P2P Network– 2.4 37 R2: Random Push with Random Network Coding in Live Peer-to-Peer Streaming 4. Issues In Multimedia P2P Streaming 38 Issues In Multimedia P2P Streaming – 1 Appropriate video coding scheme Each packet pn Packet size sn Decoding timestamp tdn Weight wn Directed acyclic dependency graph representation for a typical MPEG layered-encoded video sequence (one network packet per layer, with IPBPB format). The successful decoding of one packet is contingent on the successful decoding of some other packets, called ancestors of pn. 39 Issues In Multimedia P2P Streaming – 1 Appropriate video coding scheme 40 Issues In Multimedia P2P Streaming – 1 Appropriate video coding scheme 41 LOGO 42