One document matched: draft-zhang-ppsp-problem-statement-00.txt


PPSP                                                     Yunfei. Zhang 
Internet Draft                                            China Mobile 
Intended status: Standards Track                        February 23, 2009 
Expires: August 19, 2009 
                                   
 
                                      
             Problem Statement of P2P Streaming Protocol (PPSP)  
                 draft-zhang-ppsp-problem-statement-00.txt 


Status of this Memo 

   This Internet-Draft is submitted to IETF in full conformance with the 
   provisions of BCP 78 and BCP 79. 

   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that 
   other groups may also distribute working documents as Internet-Drafts. 

   Internet-Drafts are draft documents valid for a maximum of six months 
   and may be updated, replaced, or obsoleted by other documents at any 
   time.  It is inappropriate to use Internet-Drafts as reference 
   material or to cite them other than as "work in progress." 

   The list of current Internet-Drafts can be accessed at 
   http://www.ietf.org/ietf/1id-abstracts.txt 

   The list of Internet-Draft Shadow Directories can be accessed at 
   http://www.ietf.org/shadow.html 

   This Internet-Draft will expire on August 23, 2009. 

Copyright Notice 

   Copyright (C) 2009 IETF Trust and the persons identified as the 
   document authors.  All rights reserved.  

   This document is subject to BCP 78 and the IETF Trust's Legal   
   Provisions Relating to IETF Documents    
   (http://trustee.ietf.org/license-info) in effect on the date of    
   publication of this document.  Please review these documents 
   carefully, as they describe your rights and restrictions with respect    
   to this document. 

Abstract 

   The document outlines the problem statement of peer to peer streaming 
   applications and the definition and scope of peer to peer streaming 
   protocol.  
 
 
 
zhang                    Expires May 23, 2009                  [Page 1] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
Conventions used in this document 

   In examples, "C:" and "S:" indicate lines sent by the client and 
   server respectively. 

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in RFC-2119 [1]. 

Table of Contents 

    
   1. Introduction................................................2 
   2. Problem Statement of P2P streaming Applications..............3 
   3. Peer to Peer Streaming Protocol Definition (PPSP) and Scope...4 
   4. Comparison with related protocols............................6 
      4.1. P2PSIP.................................................6 
      4.2. RTSP and related protocols..............................8 
   5. Scenarios of Inter-working of PPSP...........................8 
      5.1. Non CDN assistant inter-worked PPSP.....................8 
      5.2. CDN assistant inter-worked PPSP.........................9 
   6. Security Considerations......................................9 
   7. Acknowledgments............................................10 
   8. References.................................................11 
   Author's Addresses............................................11 
    
    
    
   1. Introduction 

   Nowadays Peer to Peer computing has been successfully used in many 
   fields, from one to one communication like VoIP, IM to one to many 
   communication like streaming, file sharing and gaming. In streaming 
   area, with the popularity of P2P technology, PPlive[1], PPstream[2], 
   UUSee[3] ,Pando[4] etc. show the prosperity of P2P real time and VOD 
   streaming applications. Take pplive for example, it has over 5 
   million online users at the same time for real-time streaming. Also 
   some web2.0 streaming applications such as youtube[5], tudou [6]are 
   reported to use or prepare to use P2P engine to accelerate its 
   downloading rate and cut down the transmission cost esp in the winter 
   of finance crisis which is being widespread all over the world. 

   Basically there are two kinds of streaming solutions: client-server 
   streaming and P2P streaming. Some client-server streaming control 
   protocols have been developed both within and out of IETF, including 
   RTSP[7], MMS[8],PNA[9] and HTTP. As for p2p streaming applications, 
   there already exist a lot of real time and VOD applications like 
   PPlive, PPStream, UUSee in China and Pando in the USA, each of which 
 
 
Zhang                  Expires August 23, 2009                [Page 2] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
   uses its proprietary protocol. P2P streaming applications account for 
   more and more Internet traffic. According to statistics in a main 
   china ISP, PPlive accounts 10% of the total Internet backbone traffic. 
   In contrast, Bittorrent's traffic share is about 8% in the ISP's 
   backbone.  

   Therefore there is no doubt that P2P streaming is more and more 
   important in the Internet. It's time to draw up an open P2P streaming 
   protocol in IETF to make P2P streaming wider adoption and regulate 
   its behavior from the whole Internet point of view.   

   2. Problem Statement of P2P streaming Applications 

   Although P2P streaming applications are popular in the Internet, 
   there are still some unsolved problems surrounding them: 

   First, the startup delay(20~30s), the latency between the 
   broadcasting time and the audience view time(120s), the re-buffering 
   time after a dragging or forward/backward in VoD(6~8s) and the 
   channel switch time are still long. How to reduce these delays in the 
   Internet is an open question for researchers; 

   Second, the video quality is still very low for p2p streaming 
   applications, most of which has a playback rate of some hundreds kbps. 
   These may be attributed to several factors, e.g., current low access 
   bandwidth and asymmetrical upload and download bandwidth like ADSL 
   and cable modem, How to improve the video quality under such network 
   environment is an open problem. Even suppose when there is a higher 
   access bandwidth like LTE which has over 100Mbps bandwidth, it is 
   still a question if current P2P streaming mechanisms work to support 
   high quality streaming because of different wireless network 
   environment. 

   Third, the dragging and backward/forward performance in VoD is 
   unacceptable in current p2p streaming applications. The lack of 
   upload bandwidth where ADSL and cable modem dominating the access 
   network indicates a peer-assistant method like CDN can make the 
   dragging performance better. How to change current CDN to accommodate 
   p2p streaming environment and integrate them together is an open 
   question. 

   Fourth, traffic localization and transport protocol optimization are 
   very important problems in p2p streaming environment being discussed 
   in ALTO and TANA in IETF. So PPSP can reuse the fruits of ALTO and 
   TANA. 

   Last but not least, from the protocol perspective, private protocol 
   has the following problems: for end users, he needs multiple client 
 
 
Zhang                  Expires August 23, 2009                [Page 3] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
   software to view different programs; for operators, it's difficult to 
   identify these different applications and for service provider, it 
   has to pay much attention to both programs source and P2P delivery 
   technology. So an open peer to peer streaming protocol is required to 
   meet the requirements mentioned above.   

   3. Peer to Peer Streaming Protocol Definition (PPSP) and Scope 

   The basic mission of PPSP is to create a distributed real-time data 
   retrieval protocol in one to many communication (or data-driven 
   communication).One to many communication is different from one to one 
   communication where there is known destination to visit. In one to 
   many communication, the destinations are unknown and the concrete 
   data are stored piece by piece in different peers and the key is to 
   find those data and reassemble them. 

   Therefore, PPSP focuses on how to negotiate with un-preassigned peers 
   for needed chunks along with some application requirements parameters 
   and transmit the retrieved content accordingly. PPSP involves a 
   bundle of interactions, including interaction between peers, between 
   peers and trackers, between peer and CDN. Note that CDN can be viewed 
   as a special peer who has a complete copy of the programs in VoD and 
   a super-stable peer with higher upload and download bandwidth in 
   real-time streaming. From the protocol type perspective, PPSP 
   includes streaming control (Step 1-4 and 7) and transmission protocol 
   (Step5) which will be discussed in the following part The protocol 
   stack of PPSP is shown in Fig1. 

                                                                                
                                                                                
                             +------------------------+             
                             |   PPSP Application     |             
                             +------------------------+             
                             | PPSP Signaling Protocol|             
                             +------------------------+             
                             |  PPSP Trans Protocol   |             
                             +------------------------+             
                             |   Transport Layer      |             
                             +------------------------+             
                                                                                
    
                 Figure 1 PPSP Position in Protocol Stack. 

      The process of PPSP applications is shown in Fig2. We explain it 
   as follows: 

   1. Peer sending PPSP signaling request with parameters(e.g., QoS, 

 
 
Zhang                  Expires August 23, 2009                [Page 4] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
     location, historical records such as online duration) 
   2. Tracker returning Peer list according to the parameters through 
     PPSP signaling protocol. 
   3. Peer Gossiping communication among peer candidates to exchange 
     chunk bitmap and find a chunk through PPSP signaling protocol. 
   4. Peer Scheduling where to get the chunk and do cache replacement
      e.g., BT like, rarest first .This action is done by peer itself 
     and doesn't include interaction with other peers or network. So 
     it's beyond the scope of PPSP. 
   5. Chunk transmission among peers (including CDN transmission) through 
     PPSP transmission protocol: There are two levels of work in this 
     step. One level is to deploy TCP/UDP/RTP as the basic transmission 
     protocol.  Generally  UDP  is  used  in  practice  to  reduce  the 
     transmission overhead. An open question exists that if RTP can be 
     used here. The other level is what kind of rules the peers take in 
     transmission.  These  rules  are  as  important  as  the  basic 
     transmission protocols in one to many communication, because the 
     basic task there is to get the data from different source as soon 
     as possible or distribute its data with the lowest cost in a scale. 
     It makes p2p streaming transmission different from pure TCP/UDP/RTP 
     level work. The rules vary much according to different requirements. 
     For instance, a peer can transmit a chunk by maximizing download 
     rate or minimizing transmission overhead according the network 
     conditions. These rule leads to different peer's actions, e.g., a 
     peer can send a request for the same content to multiple neighbors 
     simultaneously, to ensure it gets the content in time; or request 
     for different content from multiple neighbors simultaneously; when 
     a request times out, it is redirected to a different neighbor; or 
     work with one neighbor at a time; only when that neighbor times out, 
     try to connect to a different neighbor. Obviously it creates many 
     critical parameters in transmission, e.g., response time, the 
     number of simultaneous neighbors to send requests. To tune these 
     parameters network monitoring is required to regulate in the 
     protocols. 
   6. Peer Re-assembling the chunk in its cache to finish playback of the 
     programs. 
   7. Peer Reporting to Tracker what chunks it has periodically. This is 
     publishing process where PPSP signaling protocol can be used. 
    
                                      


 
 
Zhang                  Expires August 23, 2009                [Page 5] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
                                                    
                        +---------+                                 
                        | Tracker |                                  
                        +---------+                                  
                           ^   |                                     
                           |   |              +----------+           
                        1,7|   | 2            |  Peer 4  |           
                           |   |              +----------+           
                           |   V                                     
                        +---------+           +----------+           
                     4,6|  Peer 1 |<----3---->|  Peer 2  |           
                        +---------+<----5---- +----------+           
                           ^   ^                                     
                          5|   |3                                    
                           |   |                                     
                           |   V                                     
                        +---------+                                  
                        |  Peer 3 |                                  
                        +---------+                                  
                                                                     
                                      
                           Figure 2 PPSP Process 

4. Comparison with related protocols 

4.1. P2PSIP 

   P2PSIP deals with resource location in one to one commutation. The 
   iterative and recursive routing process inP2PSIP is shown in Fig3, 
   which is different from PPSP. That is, the data stored in P2P SIP is 
   user profile data and user knows exactly what the data is (e.g., the 
   location of Alice@chinamobile.com) using RELOAD to locates the data. 
   While in PPSP scenarios, there are many peers storing data pieces of 
   "Mr. and Ms. Smith" and the user doesn't know and needn't know the 
   belongings of the peers and he just know the metadata of the movie. 
   He must use a gossip protocol to communicate with other peers to get 
   the real data quickly.  

    








 
 
Zhang                  Expires August 23, 2009                [Page 6] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
                                                    
                           +------------------+                  
                           |     Peer         |                  
                           +------------------+                  
                              ^  |        ^  |                    
                              |  |        |  |                    
                          1,2 |  | 1'  3,4|  |3'                  
                              |  |        |  |                    
                              V  V        V  V                    
                      +-----------+      +-----------+            
                      |  Peer     |--2'->|    Peer   |            
                      +-----------+      +-----------+            
                                                    
    

                           Fig3 P2PSIP process 

    

   The difference between P2PSIP and PPSP are as follows: 

   1) One to one communication VS One to many communication (End to End 
     communication VS data centric communication): 
     a)  Because  there  are  lot  of  peer  candidates  in  PPSP,  NAT 
     transversal is not as important as that in P2PSIP and public peers 
     can be found with higher probability; 
   2) PPSP includes transmission Protocol and P2PSIP doesn't involve that. 
   3) Different Search efficiency requirement:  
     a) PPSP requires retrieval real-time/para real-time data, iterative 
   and recursive routing is not suitable for low efficiency. 
     b) Node organizations are quite different. DHT doesn't fit for 
   peers in PPSP. 
   4) Different transmission quality requirements: P2PSIP doesn't require 
     Voice quality and PPSP need to ensure streaming quality. Therefore 
     in PPSP the following factors in peers must be considered: 
     a) Heterogeneous nodes;  
     b) Node Churn and Data Churn(the data update quicker than P2PSIP)  
     c) Topology-aware 
   5) Different applicable services: P2PSIP is suitable for VoIP and 
   PPSP is suitable for streaming, gaming and file sharing. It's too 
   comprehensive for P2PSIP (based on text) for non-session applications 
   like streaming. There are too many signaling interactions with much 
   overhead compared with P2PSIP which has only one interaction. 


 
 
Zhang                  Expires August 23, 2009                [Page 7] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
   Although P2PSIP doesn't fit for peer organization, it can be deployed 
   in PPSP environment to some extent. DHT can be used to organize 
   multiple channel servers in real-time streaming or multiple file 
   trackers in VoD. Because the search time of which channel or which 
   file the tracker stores accounts little in the whole searching 
   procedure, DHT can be used to query for peer list in case of thousand 
   of channels or million of files which are hard to use one tracker. 
   But it doesn't fit for quick search for real data among peers yet. 

4.2. RTSP and related protocols 

   At first sight, the function of PPSP control protocol is similar to 
   traditional C/S style streaming control protocols RTSP, MMS or PNA. 
   But in fact RTSP MMS or PNA don't involve the problems PPSP has 
   because the end user requests the streaming from one assigned source 
   without needing real-time resource discoery, merge and 
   synchronization, which simplifies the problem. However it also 
   inherits the shortcomings of all client-server paradigms including 
   low scalability, high cost both for investment and maintenance as 
   well as the traffic pressure for the Internet equipments and single 
   point of failure. 

5. Scenarios of Inter-working of PPSP 

   PPSP can be used not only within a single p2p application, but also 
   in the inter-working of different p2p applications. 

5.1. Non CDN assistant inter-worked PPSP 

   In this case PPSP can be used by different P2P streaming applications 
   which can share resources and improve performance with better peers 
   from allied P2P streaming applications. P2P streaming applications 
   don't deploy CDN for streaming delivery. The interaction between 
   different PPSP applications is shown in Fig4. It involves steps 
   beyond basic PPSP process, e.g., trackers from different vendors 
   exchange their peer information. 











 
 
Zhang                  Expires August 23, 2009                [Page 8] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
                                                    
                       +----------------------------+            
                       | PPSP APP 1  |  PPSP App 2  |            
                       +----------------------------+            
                       |     ^               ^      |            
                       |     |               |      |            
                       |     +---------------+      |            
                       |  PPSP Signaling Protocol   |            
                       +----------------------------+            
                       |    PPSP Trans Protocol     |            
                       +----------------------------+            
                       |      Transport Layer       |            
                       +----------------------------+            
                                                                 
            Fig4 Interaction between different P2P applications 

5.2. CDN assistant inter-worked PPSP 

   In this case there is usually a CDN provider that may be run by an 
   ISP. It provides P2P streaming distribution services for different 
   PPSP applications. The storage and transmission bandwidth can be 
   saved in case of the same content transmission for different PPSP 
   applications. The cooperation between different PPSP providers can be 
   run both in PPSP transport level and PPSP signaling level as shown in 
   Fig5.                                                 
                         +----------------------------+            
                         | PPSP APP 1  |  PPSP App 2  |            
                         +----------------------------+            
                         |     ^               ^      |            
                         |     |               |      |            
                         |     +---------------+      |            
                         | PPSP| Signaling Prot|ocol  |            
                         +----------------------------+            
                         |     +---------------+      |            
                         |    PPSP Trans Protocol     |            
                         +----------------------------+            
                         |      Transport Layer       |            
                         +----------------------------+            
                                                                   
            Fig5 Interaction between different P2P applications 

   6. Security Considerations 

   PPSP doesn't relate to security mechanisms currently, but we don't 
   exclude security mechanisms in PPSP. 



 
 
Zhang                  Expires August 23, 2009                [Page 9] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
   7. Acknowledgments 

   We have to acknowledge many people. For the record: N.Zong, X.F.Jiang, 
   H.B.Song. Pick.Li from Huawei. 











































 
 
Zhang                  Expires August 23, 2009               [Page 10] 

Internet-Draft     Problem statement of P2P Streaming     February 2009 
 
              References 

   [1]  www.pplive.com 

   [2]  www.ppstream.com 

   [3]  www.uusee.com  

   [4]  www.pando.com  

   [5]  www.youtube.com 

   [6]  www.tudou.com 

   [7]  www.ietf.org/rfc/rfc2326.tx  

   [8]  en.wikipedia.org/wiki/Microsoft_Media_Services  

   [9]  all-streaming-media.com/streaming-media-faq/faq-pnm-
         protocol.htm 

Author's Addresses 

   Yunfei Zhang 
   China Mobile 
      
   Phone: 86 13601032119 
   Email: zhangyunfei@chinamobile.com 
 

    
















 
 
Zhang                  Expires August 23, 2009               [Page 11] 


PAFTECH AB 2003-20262026-04-23 19:43:09