PPSP W. Chen
Internet Draft J. Peng
Intended status: Informational Y. Zhang
China Mobile
Expires: April 2011 October 25, 2010
SIP-based Tracker Protocol
draft-chen-ppsp-sip-based-tracker-protocol-01.txt
Status of this Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
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."
This Internet-Draft will expire on April 25, 2011.
Copyright Notice
Copyright (c) 2010 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. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Chen Expires April 25, 2011 [Page 1]
Internet-Draft SIP-based Tracker Protocol October 2010
Abstract
This draft introduces a kind of text-based encoding Tracker Protocol,
the SIP-based PPSP Tracker Protocol, which utilizes SIP message to
realize the functions of PPSP Tracker Protocol[1] and carries the
specific xml information mentioned in tracker protocol[1] messages in
SIP body.
Chen, et al. Expires April 25, 2011 [Page 2]
Internet-Draft SIP-based Tracker Protocol October 2010
Table of Contents
1. Introduction ................................................ 4
2. Protocol Overview ........................................... 5
2.1. Description of the SIP-based Tracker Protocol ...........5
2.2. MAPPING Methods of Tracker Protocol into SIP Methods.....5
3. Signaling Flows ............................................. 7
3.1. Peer Registration Flow.................................. 7
3.2. Peer De-registration Flow............................... 7
3.3. Join Swarm Flow......................................... 8
3.4. Content Availability Report Flow ........................8
3.5. Leave Swarm Flow........................................ 9
3.6. Find Peerlist Flow..................................... 10
3.7. Keep Alive Flow........................................ 11
3.8. Information Query Flow................................. 12
3.9. Information Report Flow................................ 12
4. Open Issues ................................................ 14
5. Normative References........................................ 14
Chen, et al. Expires April 25, 2011 [Page 3]
Internet-Draft SIP-based Tracker Protocol October 2010
1. Introduction
As one of the important protocol components of PPSP, the Tracker
Protocol provides communication between Trackers and Peers, by which
Peers report streaming status to the tracker and request candidate
lists from the tracker. [1] proposes two kinds of PPSP tracker
protocols, binary encoding protocol and text-based encoding protocol
like HTTP/XML protocol.
This draft introduces a kind of text-based encoding PPSP Tracker
Protocol, the SIP-based Tracker Protocol, which utilizes SIP messages
to realize the functions of Tracker Protocol and carries the specific
xml information mentioned in tracker protocol[1] messages in SIP body.
Section 2 outlines the protocol overview.
Section 3 defines the key signaling flows of SIP-based P2P streaming
Tracker Protocol.
Chen, et al. Expires April 25, 2011 [Page 4]
Internet-Draft SIP-based Tracker Protocol October 2010
2. Protocol Overview
2.1. Description of the SIP-based Tracker Protocol
SIP-based Tracker Protocol is a kind of text-based encoding tracker
protocol realized by SIP protocol[2], i.e. the request and response
messages of PPSP tracker protocol can be realized by SIP request and
response messages, not carried in SIP Message body; the specific xml
information mentioned in tracker protocol[1] is carried in SIP body.
2.2. MAPPING Methods of Tracker Protocol into SIP Methods
This section outlines the mapping relations between SIP Request and
Request defined in Tracker Protocol[1], shown in Fig.1.
+--------------------+----------------------------+
| PPSP Request Method| SIP Request Method |
+--------------------+----------------------------+
| CONNECT | Register |
| DISCONNECT | Register |
| JOIN | Invite |
| LEAVE | BYE |
| FIND | INFO |
| KEEPALIVE | Register |
| STAT_QUERY | OPTIONS |
| STAT_REPORT | PUBLISH |
| JOIN_CHUNK | SUBSCRIBE/NOTIFY |
+--------------------+----------------------------+
Figure 1 Mapping between SIP Request and Tracker Protocol Request
In addition, Tracker Protocol Responses can be realized by SIP
Responses, like HTTP realization in [1], because SIP response codes
are consistent with, and extend, HTTP/1.1 response codes.
Chen, et al. Expires April 25, 2011 [Page 5]
Internet-Draft SIP-based Tracker Protocol October 2010
+-------------------------+-----------------------------+
| PPSP Response Method | SIP Response Method |
+-------------------------+-----------------------------+
| SUCCESSFUL (OK) | 200 ok |
| INVALID SYNTAX | 400 Bad Request |
| VERSION NOT SUPPORTED | 400 Bad Request |
| MESSAGE NOT SUPPORTED | 403 Forbidden |
| TEMPORARILY OVERLOADED | 503 Service Unavailable |
| INTERNAL ERROR | 500 Server Internal Error |
| MESSAGE FORBIDDEN | 403 Forbidden |
| OBJECT NOT FOUND | 404 Not Found |
| AUTHENTICATION REQUIRED | 401 Unauthorized |
| PAYMENT REQUIRED | 402 Payment Required |
+-------------------------+-----------------------------+
Figure 2 Mapping between SIP Responses and Tracker Protocol Responses
Chen, et al. Expires April 25, 2011 [Page 6]
Internet-Draft SIP-based Tracker Protocol October 2010
3. Signaling Flows
This section defines the key signaling flows.
3.1. Peer Registration Flow
After Connect operation completes or a peer registers on the tracker,
the peer may send additional requests to the tracker, like to publish
content availability, or obtain lists of peers with specific content
from the tracker.
Tracker Protocol Connect operation defined in [1] is realized by SIP
Register flow specified in [2], shown in Fig.3. For example, SIP
Register flow can finish the authentication and authorization
functions required by PPSP tracker protocol in the way such as HTTP
digest, AKA etc.
Peer Tracker
| |
| |
| |
| |
| SIP Register |
|----------------------------------------->|
| |
| |
| SIP 401 Unauthorized |
|<-----------------------------------------|
| |
| |
| SIP Register |
|----------------------------------------->|
| |
| |
| SIP 200OK |
|<-----------------------------------------|
| |
Figure 3 Peer Registration Flow
3.2. Peer De-registration Flow
Tracker Protocol DISCONNET operation defined in [1] is realized by
SIP REGISTER method with "Expires" value equaling to 0 defined in [2],
shown in Fig.4.
Chen, et al. Expires April 25, 2011 [Page 7]
Internet-Draft SIP-based Tracker Protocol October 2010
Peer Tracker
| |
| |
| |
| |
| SIP Register(Expires=0) |
|----------------------------------------->|
| |
| |
| |
| SIP 200 OK |
|<-----------------------------------------|
| |
Figure 4 Peer De-registration Flow
3.3. Join Swarm Flow
Tracker Protocol JOIN operation defined in [1] is realized by SIP
Invite flow specified in [2], shown in Fig.5. Through the flow, the
tracker knows a peer sending the invite message wishes to participate
in a particular swarm; the peer can get what it needs from the other
peers in the swarm.
Peer Tracker
| |
| |
| |
| |
| SIP Invite |
|----------------------------------------->|
| |
| |
| SIP 200 OK |
|----------------------------------------->|
| |
| |
| SIP ACK |
|<-----------------------------------------|
| |
Figure 5 Join Swarm Flow
3.4. Content Availability Report Flow
Tracker Protocol Join_Chunk operation defined in [1] is to realize
the function of reporting the content availability, i.e. to report
which chunks a peer has and which swarms it has joined in to the
Chen, et al. Expires April 25, 2011 [Page 8]
Internet-Draft SIP-based Tracker Protocol October 2010
tracker. This function is realized by SIP Subscribe/Notify method
defined in [3], shown in Fig.6. After subscribed successfully, a peer
will notify the tracker when the content possessed by the peer
changes.
Peer Tracker
| |
| |
| |
| |
| SIP Subscribe |
|<-----------------------------------------|
| |
| |
| SIP 200ok |
|----------------------------------------->|
| |
| |
| SIP Notify |
|----------------------------------------->|
| |
| |
| SIP 200OK |
|<-----------------------------------------|
| |
Figure 6 Content Availability Report Flow
3.5. Leave Swarm Flow
Tracker Protocol LEAVE operation defined in [1] is realized by SIP
Bye and Notify flow specified in [2] and [3], shown in Fig.7. Through
this flow, peers notify the tracker that they no longer are
participating in (either sharing or requesting) a particular swarm.
Chen, et al. Expires April 25, 2011 [Page 9]
Internet-Draft SIP-based Tracker Protocol October 2010
Peer Tracker
| |
| |
| SIP NOTIFY(Subscription-State=terminated)|
|----------------------------------------->|
| |
| |
| SIP 200OK |
|<-----------------------------------------|
| |
| |
| |
| SIP Bye |
|----------------------------------------->|
| |
| |
| SIP 200OK |
|<-----------------------------------------|
| |
Figure 7 Leave Swarm Flow
3.6. Find Peerlist Flow
Tracker Protocol FIND operation defined in [1] is realized by SIP
Info flow specified in [4], shown in Fig.8.
Chen, et al. Expires April 25, 2011 [Page 10]
Internet-Draft SIP-based Tracker Protocol October 2010
Peer Tracker
| |
| SIP Info |
|----------------------------------------->|
| |
| |
| |
| SIP 200 OK |
|<-----------------------------------------|
| |
| |
| |
| SIP Info |
|<-----------------------------------------|
| |
| |
| |
| SIP 200 OK |
|----------------------------------------->|
| |
Figure 8 Find Peerlist Flow
3.7. Keep Alive Flow
Tracker Protocol KEEPALIVE operation defined in [1] is realized by
SIP Register flow defined in [2], shown in Fig.9.
Peer Tracker
| |
| |
| |
| |
| SIP Register |
|----------------------------------------->|
| |
| |
| |
| SIP 200 OK |
|<-----------------------------------------|
| |
Figure 9 Peer De-registration Flow
Chen, et al. Expires April 25, 2011 [Page 11]
Internet-Draft SIP-based Tracker Protocol October 2010
3.8. Information Query Flow
Tracker Protocol STAT_Query operation defined in [1] is realized by
SIP Options flow Specified in [2]. Because STAT_Query method works in
two directions, a peer or a tracker can query stat information to the
other, shown in Fig.10 and Fig.11.
Peer Tracker
| |
| SIP OPTIONS |
|----------------------------------------->|
| |
| |
| |
| SIP 200 OK |
|<-----------------------------------------|
| |
Figure 10 Information Query Flow(from a peer to tracker)
Peer Tracker
| |
| SIP OPTIONS |
|<-----------------------------------------|
| |
| |
| |
| SIP 200 OK |
|----------------------------------------->|
| |
Figure 11 Information Query Flow(from a tracker to a peer)
3.9. Information Report Flow
Tracker Protocol STAT_REPORT operation defined in [1] is realized by
SIP Publish flow, Specified in [5]. Because STAT_REPORT method works
in two directions, a peer or a tracker can publish stat information
to the other, shown in Fig.12 and Fig.13.
Chen, et al. Expires April 25, 2011 [Page 12]
Internet-Draft SIP-based Tracker Protocol October 2010
Peer Tracker
| |
| SIP PUBLISH |
|----------------------------------------->|
| |
| |
| |
| SIP 200 OK |
|<-----------------------------------------|
| |
Figure 12 Information Report Flow(from a peer to a tracker)
Peer Tracker
| |
| SIP PUBLISH |
|<-----------------------------------------|
| |
| |
| |
| SIP 200 OK |
|----------------------------------------->|
| |
Figure 13 Information Report Flow(from a tracker to a peer)
Chen, et al. Expires April 25, 2011 [Page 13]
Internet-Draft SIP-based Tracker Protocol October 2010
4. Open Issues
Need to decide if SIP Register message is the best selection which is
used to realize the Keepalive function in 3.7 compared with other SIP
requests like SIP Message.
5. Normative References
[1] Gu, Y., Bryan, D., Zhang, Y., and H. Liao, "PPSP Tracker
Protocol", March 2010, <draft-gu-ppsp-tracker-protocol>.
[2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP:
Session Initiation Protocol", RFC 3261, June 2002.
[3] Roach, A., "Session Initiation Protocol (SIP)-Specific Event
Notification", RFC 3265, June 2002.
[4] Donovan, S., "The SIP INFO Method", RFC 2976, October 2000.
[5] Niemi, A., "Session Initiation Protocol (SIP) Extension for
Event State Publication", RFC 3903, October 2004.
Author's Addresses
Wei Chen
China Mobile
Unit 2, 28 Xuanwumenxi Ave,
Xuanwu District,
Beijing 100053, China
Email: chenweiyj@chinamobile.com
Jin Peng
China Mobile
Unit 2, 28 Xuanwumenxi Ave,
Xuanwu District,
Beijing 100053, China
Email: pengjin@chinamobile.com
Chen, et al. Expires April 25, 2011 [Page 14]
Internet-Draft SIP-based Tracker Protocol October 2010
Yunfei Zhang
China Mobile
Unit 2, 28 Xuanwumenxi Ave,
Xuanwu District,
Beijing 100053, China
Email: zhangyunfei@chinamobile.com
Chen, et al. Expires April 25, 2011 [Page 15]