Internet DRAFT - draft-partha-rtcweb-signaling
draft-partha-rtcweb-signaling
RTCWeb working group Parthasarathi. Ravindran
Internet-Draft Sonus Networks, Inc.
Intended status: Standards Track October 3, 2011
Expires: April 5, 2012
RTCWeb standard signaling protocol
draft-partha-rtcweb-signaling-00
Abstract
The standardization of Real time communication between browsers is to
provide the infrastructure for audio, video, text communication using
standard interface so that interoperable communication can be
established between any compatible browsers. RTCWeb specific
Javascript API will be provided by browsers for developing real-time
web application. It is possible to develop signaling protocol like
Session Initiation Protocol (SIP) or Jingle or websocket extension or
custom-made signaling protocol in Javascript. There are lots of
issues in Javascript based signaling protocol. This document list
the need for standard signaling protocol between RTCWeb client
(browser) and RTCWeb server and possible signaling protocol for the
same.
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 5, 2012.
Copyright Notice
Copyright (c) 2011 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
Ravindran Expires April 5, 2012 [Page 1]
Internet-Draft RTCWeb signaling October 2011
(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.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Architecture . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Issues without RTCWeb standard signaling protocol . . . . . . . 4
4. Standard RTCWeb signaling protocol advantages . . . . . . . . . 5
5. RTCWeb Protocol requirement and design consideration . . . . . 5
6. Possible RTCWeb signaling protocols . . . . . . . . . . . . . . 6
7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
10. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . . 7
11. Informative References . . . . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 8
Ravindran Expires April 5, 2012 [Page 2]
Internet-Draft RTCWeb signaling October 2011
1. Introduction
The standardization of Real time communication between browsers is to
provide the infrastructure for audio, video, text communication using
standard interface so that interoperable communication can be
established between any compatible browsers. The detail overview of
RTCweb is available at [I-D.ietf-rtcweb-overview], RTCWeb usecase and
requirements are illustrated in
[I-D.ietf-rtcweb-use-cases-and-requirements], RTP usage for RTCWeb is
explained at [I-D.ietf-rtcweb-rtp-usage] and security consideration
is mentioned in [I-D.ietf-rtcweb-security]
RTCWeb specific Javascript API will be provided by browsers for
developing real-time web application. It is possible to develop
signaling protocol like Session Initiation Protocol (SIP) [RFC3261]
or Jingle [Jingle] or Websocket [I-D.ietf-hybi-thewebsocketprotocol]
extension or HTTP [RFC2616] custom-made signaling protocol in
Javascript.
Having said that, this document provides insight about the limitation
of custom made RTCWeb signaling protocol, need for standard RTCWeb
signaling protocol and the possible solutions for the same.
2. Architecture
RTCWeb signaling protocol architecture is as follows:
Ravindran Expires April 5, 2012 [Page 3]
Internet-Draft RTCWeb signaling October 2011
+-----------+ +-----------+
| RTCWeb | Federation | RTCWeb |
| | Signaling | |
| |-------------| |
| Server | protocol | Server |
| | | |
+-----------+ +-----------+
/ \
/ \ RTCWeb
/ \ Signaling
/ \
/ RTCWeb \
/ Signaling \
/ \
+-----------+ +-----------+
| | | |
| | | |
| Browser | ------------------------- | Browser |
| | Media path | |
| | | |
+-----------+ +-----------+
+-----------+ +-----------+
|JS/HTML/CSS| |JS/HTML/CSS|
+-----------+ +-----------+
Fig 1: RTCWeb signaling protocol architecture
In the above mentioned architecture, this document focus on
standardizing RTCWeb signaling between browser and RTCWeb server
3. Issues without RTCWeb standard signaling protocol
The issues in creating non standard RTCWeb sigaling protocol are
o Without RTCWeb standard signaling protocol, each website developer
has to understand the complication of signaling protocol for
making the real-time communication.
o Downloading the complete RTCWeb signaling protocol Javascript is
inefficient as it impact performance and setup delay of real-time
communication. The caching of Javascript shall avoid downloading
the signaling protocol in each time RTCWeb server is accessed.
But the Javascript cache is possible to be removed often which
leads to the impact.
o Also, browser has to download each website signaling protocol
indepentely
Ravindran Expires April 5, 2012 [Page 4]
Internet-Draft RTCWeb signaling October 2011
o Plugin is efficient as standard signaling protocol but defeat the
purpose of RTCWeb charter
4. Standard RTCWeb signaling protocol advantages
The defining signaling protocol is not a hindrance for any innovative
RTCWeb signaling protocol development as it is complementary
solution. The issues mentioned in non-existence of RTCWeb signaling
protocol is overcome by having standard RTCWeb signaling protocol.
The other advantages related to standard RTCWeb sigaling protocol are
as follows:
o RTCWeb developer has no need to know the intricacies of signaling
protocol for developing RTCWeb application. The effort involved
in making voice or video chat by each web developer shall be
overcome by providing standard signaling in RTCWeb client
o Gateway for RTCWeb server and legacy signaling protocol is easy in
case standard RTCweb signaling protocol is used.
o More efficient in case of browser having native RTCWeb signaling
protocol in browser
5. RTCWeb Protocol requirement and design consideration
Some of the RTCWeb signaling protocol requirement and design
considerations are as follows
o The mechanism has to create two way communications between RTCWeb
server and RTCweb client
o The mechanism has to provide the way to pass description about the
media transmission between two RTCweb clients
o The mechanism has to support the secure transmission of signaling
information
o The authentication between RTCweb client and RTCweb server has to
be supported
TBD: Complete list has to be mentioned.
The following criteria has to discussed in detail for the protocol
selection
o Signaling routing intelligence in RTCWeb client or only in RTCWeb
server
o RTCWeb client has to maintain the state of the communication or
not (intelligent vs. dumb)
Ravindran Expires April 5, 2012 [Page 5]
Internet-Draft RTCWeb signaling October 2011
o SDP [RFC4566] has to be used for media description or not
o Offer/answer [RFC3264] mechanism has to be supported in RTCWeb
client or not
o Signaling protocol has to address only basic two party
communication or more scenarios has to be taken into account
o User Identity has to be managed in RTCWeb client or not
o TBD: ???
6. Possible RTCWeb signaling protocols
The following Signaling protocols will qualify for becoming standard
RTCWeb signaling protocol
1. Jingle
2. Websocket with SDP offer/answer
3. SIP
4. SIPLite [I-D.cbran-rtcweb-protocols]
5. Websocket with custom XML
6. Megaco [RFC5125]
7. Websocket with SIP [I-D.ibc-rtcweb-sip-websocket]
8. HTTP with custom XML
9. ???
TBD: Pros and cons for each of the signaling mechanism has to be
added
7. Conclusion
The collection of more signaling requirements & design consideration,
analysis of those constraints with the list of possible RTCWeb
signaling protocol will lead to the selection of best signaling
protocol for RTCweb
8. Security Considerations
The selected RTCWeb signaling protocol has to meet all the security
consideration in [I-D.ietf-rtcweb-security]. There is no specific
security consideration associated with this draft.
9. IANA Considerations
This is no IANA consideration for this specification
Ravindran Expires April 5, 2012 [Page 6]
Internet-Draft RTCWeb signaling October 2011
10. Acknowledgement
TBD
11. Informative References
[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H.,
Masinter, L., Leach, P., and T. Berners-Lee, "Hypertext
Transfer Protocol -- HTTP/1.1", RFC 2616, June 1999.
[RFC3261] 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.
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264,
June 2002.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006.
[RFC5125] Taylor, T., "Reclassification of RFC 3525 to Historic",
RFC 5125, February 2008.
[I-D.ietf-rtcweb-overview]
Alvestrand, H., "Overview: Real Time Protocols for Brower-
based Applications", draft-ietf-rtcweb-overview-02 (work
in progress), September 2011.
[I-D.ietf-rtcweb-security]
Rescorla, E., "Security Considerations for RTC-Web",
draft-ietf-rtcweb-security-00 (work in progress),
September 2011.
[I-D.ietf-rtcweb-rtp-usage]
Perkins, C., Westerlund, M., and J. Ott, "RTP Requirements
for RTC-Web", draft-ietf-rtcweb-rtp-usage-00 (work in
progress), September 2011.
[I-D.ietf-rtcweb-use-cases-and-requirements]
Holmberg, C., Hakansson, S., and G. Eriksson, "Web Real-
Time Communication Use-cases and Requirements",
draft-ietf-rtcweb-use-cases-and-requirements-05 (work in
progress), September 2011.
[I-D.ietf-hybi-thewebsocketprotocol]
Ravindran Expires April 5, 2012 [Page 7]
Internet-Draft RTCWeb signaling October 2011
Fette, I. and A. Melnikov, "The WebSocket protocol",
draft-ietf-hybi-thewebsocketprotocol-17 (work in
progress), September 2011.
[I-D.ibc-rtcweb-sip-websocket]
Castillo, I., Millan, J., and V. Pascual, "WebSocket
Transport for Session Initiation Protocol (SIP)",
draft-ibc-rtcweb-sip-websocket-00 (work in progress),
September 2011.
[I-D.cbran-rtcweb-protocols]
Bran, C. and C. Jennings, "RTC-Web Communications
Protocols", draft-cbran-rtcweb-protocols-00 (work in
progress), June 2011.
[Jingle] "XEP-0166: Jingle",
<http://xmpp.org/extensions/xep-0166.html>.
Author's Address
Parthasarathi Ravindran
Sonus Networks, Inc.
Prestige Shantiniketan - Business Precinct
Whitefield Road
Bangalore, Karnataka 560066
India
Email: pravindran@sonusnet.com
Ravindran Expires April 5, 2012 [Page 8]