draft-ietf-rtcweb-use-cases-and-requirements-06.txt   draft-ietf-rtcweb-use-cases-and-requirements-07.txt 
RTCWEB Working Group C. Holmberg RTCWEB Working Group C. Holmberg
Internet-Draft S. Hakansson Internet-Draft S. Hakansson
Intended status: Informational G. Eriksson Intended status: Informational G. Eriksson
Expires: April 6, 2012 Ericsson Expires: October 4, 2012 Ericsson
October 4, 2011 April 2, 2012
Web Real-Time Communication Use-cases and Requirements Web Real-Time Communication Use-cases and Requirements
draft-ietf-rtcweb-use-cases-and-requirements-06.txt draft-ietf-rtcweb-use-cases-and-requirements-07.txt
Abstract Abstract
This document describes web based real-time communication use-cases. This document describes web based real-time communication use-cases.
Based on the use-cases, the document also derives requirements Based on the use-cases, the document also derives requirements
related to the browser, and the API used by web applications to related to the browser, and the API used by web applications to
request and control media stream services provided by the browser. request and control media stream services provided by the browser.
Status of this Memo Status of this Memo
skipping to change at page 1, line 34 skipping to change at page 1, line 34
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on April 6, 2012. This Internet-Draft will expire on October 4, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2012 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
skipping to change at page 2, line 24 skipping to change at page 2, line 24
4.2.2. Simple Video Communication Service, NAT/FW that 4.2.2. Simple Video Communication Service, NAT/FW that
blocks UDP . . . . . . . . . . . . . . . . . . . . . . 5 blocks UDP . . . . . . . . . . . . . . . . . . . . . . 5
4.2.3. Simple Video Communication Service, global service 4.2.3. Simple Video Communication Service, global service
provider . . . . . . . . . . . . . . . . . . . . . . . 5 provider . . . . . . . . . . . . . . . . . . . . . . . 5
4.2.4. Simple Video Communication Service, enterprise 4.2.4. Simple Video Communication Service, enterprise
aspects . . . . . . . . . . . . . . . . . . . . . . . 5 aspects . . . . . . . . . . . . . . . . . . . . . . . 5
4.2.5. Simple Video Communication Service, access change . . 6 4.2.5. Simple Video Communication Service, access change . . 6
4.2.6. Simple Video Communication Service, QoS . . . . . . . 7 4.2.6. Simple Video Communication Service, QoS . . . . . . . 7
4.2.7. Simple Video Communication Service with sharing . . . 7 4.2.7. Simple Video Communication Service with sharing . . . 7
4.2.8. Simple video communication service with 4.2.8. Simple video communication service with
inter-operator calling . . . . . . . . . . . . . . . . 8 inter-operator calling . . . . . . . . . . . . . . . . 7
4.2.9. Hockey Game Viewer . . . . . . . . . . . . . . . . . . 8 4.2.9. Hockey Game Viewer . . . . . . . . . . . . . . . . . . 8
4.2.10. Multiparty video communication . . . . . . . . . . . . 9 4.2.10. Multiparty video communication . . . . . . . . . . . . 9
4.2.11. Multiparty on-line game with voice communication . . . 10 4.2.11. Multiparty on-line game with voice communication . . . 10
4.2.12. Distributed Music Band . . . . . . . . . . . . . . . . 11 4.2.12. Distributed Music Band . . . . . . . . . . . . . . . . 10
4.3. Browser - GW/Server use cases . . . . . . . . . . . . . . 11 4.3. Browser - GW/Server use cases . . . . . . . . . . . . . . 11
4.3.1. Telephony terminal . . . . . . . . . . . . . . . . . . 11 4.3.1. Telephony terminal . . . . . . . . . . . . . . . . . . 11
4.3.2. Fedex Call . . . . . . . . . . . . . . . . . . . . . . 12 4.3.2. Fedex Call . . . . . . . . . . . . . . . . . . . . . . 11
4.3.3. Video conferencing system with central server . . . . 12 4.3.3. Video conferencing system with central server . . . . 12
5. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 13 5. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.2. Browser requirements . . . . . . . . . . . . . . . . . . . 13 5.2. Browser requirements . . . . . . . . . . . . . . . . . . . 13
5.3. API requirements . . . . . . . . . . . . . . . . . . . . . 16 5.3. API requirements . . . . . . . . . . . . . . . . . . . . . 16
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 18
7. Security Considerations . . . . . . . . . . . . . . . . . . . 18 7. Security Considerations . . . . . . . . . . . . . . . . . . . 18
7.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 18 7.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 18
7.2. Browser Considerations . . . . . . . . . . . . . . . . . . 19 7.2. Browser Considerations . . . . . . . . . . . . . . . . . . 18
7.3. Web Application Considerations . . . . . . . . . . . . . . 19 7.3. Web Application Considerations . . . . . . . . . . . . . . 19
8. Additional use-cases . . . . . . . . . . . . . . . . . . . . . 20 8. Additional use-cases . . . . . . . . . . . . . . . . . . . . . 19
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 20 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 20
10. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 21 10. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 20
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23
11.1. Normative References . . . . . . . . . . . . . . . . . . . 23 11.1. Normative References . . . . . . . . . . . . . . . . . . . 23
11.2. Informative References . . . . . . . . . . . . . . . . . . 23 11.2. Informative References . . . . . . . . . . . . . . . . . . 23
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 23 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 23
1. Introduction 1. Introduction
This document presents a few use-cases of web applications that are This document presents a few use-cases of web applications that are
executed in a browser and use real-time communication capabilities. executed in a browser and use real-time communication capabilities.
Based on the use-cases, the document derives requirements related to Based on the use-cases, the document derives requirements related to
skipping to change at page 5, line 36 skipping to change at page 5, line 36
What is added is that the service provider is operating over large What is added is that the service provider is operating over large
geographical areas (or even globally). geographical areas (or even globally).
Assuming that ICE will be used, this means that the service provider Assuming that ICE will be used, this means that the service provider
would like to be able to provide several STUN and TURN servers (via would like to be able to provide several STUN and TURN servers (via
the app) to the browser; selection of which one(s) to use is part of the app) to the browser; selection of which one(s) to use is part of
the ICE processing. Other reasons for wanting to provide several the ICE processing. Other reasons for wanting to provide several
STUN and TURN servers include support for IPv4 and IPv6, load STUN and TURN servers include support for IPv4 and IPv6, load
balancing and redundancy. balancing and redundancy.
Note that the additional requirements derived are termed FaI/AaI
where aI means "assuming ICE".
4.2.3.2. Derived Requirements 4.2.3.2. Derived Requirements
F1, F2, F3, F4, F5, F6, F8, F9, F10, F20, F25, F28 F1, F2, F3, F4, F5, F6, F8, F9, F10, F20, F25, F28, F31
FaI1
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12
AaI1 A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A22
4.2.4. Simple Video Communication Service, enterprise aspects 4.2.4. Simple Video Communication Service, enterprise aspects
4.2.4.1. Description 4.2.4.1. Description
This use-case is similar to the Simple Video Communication Service This use-case is similar to the Simple Video Communication Service
use-case (Section 4.2.1). use-case (Section 4.2.1).
What is added is aspects when using the service in enterprises. ICE What is added is aspects when using the service in enterprises. ICE
is assumed in the further description of this use-case. is assumed in the further description of this use-case.
An enterprise that uses a RTCWEB based web application for An enterprise that uses a RTCWEB based web application for
communication desires to audit all RTCWEB based application session communication desires to audit all RTCWEB based application session
skipping to change at page 6, line 33 skipping to change at page 6, line 24
TURN server, thus they deploy a STUN server allowing the RTCWEB TURN server, thus they deploy a STUN server allowing the RTCWEB
client to determine its server reflexive address on the internal client to determine its server reflexive address on the internal
side. Thus enabling cases where peers are both on the internal side side. Thus enabling cases where peers are both on the internal side
to connect without the traffic leaving the internal network. It must to connect without the traffic leaving the internal network. It must
be possibele to configure the browsers used in the enterprise with be possibele to configure the browsers used in the enterprise with
network specific STUN and TURN servers. This should be possible to network specific STUN and TURN servers. This should be possible to
achieve by autoconfiguration methods. The RTCWEB functionality will achieve by autoconfiguration methods. The RTCWEB functionality will
need to utilize both network specific STUN and TURN resources and need to utilize both network specific STUN and TURN resources and
STUN and TURN servers provisioned by the web application. STUN and TURN servers provisioned by the web application.
Note that the additional requirements derived are termed FaI/AaI
where aI means "assuming ICE".
4.2.4.2. Derived Requirements 4.2.4.2. Derived Requirements
F1, F2, F3, F4, F5, F6, F8, F9, F10, F20, F25, F28 F1, F2, F3, F4, F5, F6, F8, F9, F10, F20, F25, F28, F32
FaI2
A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12 A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12
4.2.5. Simple Video Communication Service, access change 4.2.5. Simple Video Communication Service, access change
4.2.5.1. Description 4.2.5.1. Description
This use-case is almost identical to the Simple Video Communication This use-case is almost identical to the Simple Video Communication
Service use-case (Section 4.2.1).The difference is that the user Service use-case (Section 4.2.1).The difference is that the user
changes network access during the session: changes network access during the session:
skipping to change at page 16, line 19 skipping to change at page 15, line 51
video codec video codec
---------------------------------------------------------------- ----------------------------------------------------------------
F29 The browser MUST be able to send streams to a F29 The browser MUST be able to send streams to a
peer in the presence of NATs that block UDP traffic. peer in the presence of NATs that block UDP traffic.
---------------------------------------------------------------- ----------------------------------------------------------------
F30 The browser MUST be able to use the screen (or F30 The browser MUST be able to use the screen (or
a specific area of the screen) or what a certain a specific area of the screen) or what a certain
application displays on the screen to generate application displays on the screen to generate
streams. streams.
---------------------------------------------------------------- ----------------------------------------------------------------
FaI1 The browser MUST be able to use several STUN F31 The browser MUST be able to use several STUN
and TURN servers and TURN servers
---------------------------------------------------------------- ----------------------------------------------------------------
FaI2 There browser MUST support that STUN and TURN F32 There browser MUST support that STUN and TURN
servers to use are supplied by other entities than servers to use are supplied by other entities than
the service provided (i.e. the network provider) the service provided (i.e. the network provider)
---------------------------------------------------------------- ----------------------------------------------------------------
5.3. API requirements 5.3. API requirements
REQ-ID DESCRIPTION REQ-ID DESCRIPTION
---------------------------------------------------------------- ----------------------------------------------------------------
A1 The Web API MUST provide means for the A1 The Web API MUST provide means for the
application to ask the browser for permission application to ask the browser for permission
skipping to change at page 18, line 35 skipping to change at page 18, line 20
other). The types of media he's willing to accept other). The types of media he's willing to accept
can be a subset of the types of media the browser can be a subset of the types of media the browser
is able to accept. is able to accept.
---------------------------------------------------------------- ----------------------------------------------------------------
A21 The Web API MUST provide means for the A21 The Web API MUST provide means for the
application to ask the browser for permission application to ask the browser for permission
to the screen, a certain area on the screen to the screen, a certain area on the screen
or what a certain application displays on the or what a certain application displays on the
screen as input to streams. screen as input to streams.
---------------------------------------------------------------- ----------------------------------------------------------------
AaI1 The Web API MUST provide means for the A22 The Web API MUST provide means for the
application to specify several STUN and/or application to specify several STUN and/or
TURN servers to use. TURN servers to use.
---------------------------------------------------------------- ----------------------------------------------------------------
6. IANA Considerations 6. IANA Considerations
TBD TBD
7. Security Considerations 7. Security Considerations
skipping to change at page 21, line 9 skipping to change at page 20, line 44
Harald Alvestrand and Cullen Jennings have provided additional use- Harald Alvestrand and Cullen Jennings have provided additional use-
cases. cases.
Thank You to everyone in the RTCWEB community that have provided Thank You to everyone in the RTCWEB community that have provided
comments, feedback and improvement proposals on the draft content. comments, feedback and improvement proposals on the draft content.
10. Change Log 10. Change Log
[RFC EDITOR NOTE: Please remove this section when publishing] [RFC EDITOR NOTE: Please remove this section when publishing]
Changes from draft-ietf-rtcweb-use-cases-and-requirements-05 Changes from draft-ietf-rtcweb-use-cases-and-requirements-06
o Renaming of requirements (FaI1 -> F31), (FaI2 -> F32) and (AaI1 ->
A22)
Changes from draft-ietf-rtcweb-use-cases-and-requirements-05
o Added use-case "global service provider", derived reqs associated o Added use-case "global service provider", derived reqs associated
with several STUN/TURN servers with several STUN/TURN servers
o Added use-case "enterprise aspects", derived req associated with o Added use-case "enterprise aspects", derived req associated with
enabling the network provider to supply STUN and TURN servers enabling the network provider to supply STUN and TURN servers
o The requirements from the above are ICE specific and labeled o The requirements from the above are ICE specific and labeled
accordingly accordingly
o Separated the requirements phrased like "processing such as pan, o Separated the requirements phrased like "processing such as pan,
mix and render" for audio to be specific reqs on spatialization, mix and render" for audio to be specific reqs on spatialization,
level measurement, level adjustment and mixing (discussed on the level measurement, level adjustment and mixing (discussed on the
lists in lists in
 End of changes. 21 change blocks. 
30 lines changed or deleted 23 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/