CLUE Working Group C. Holmberg
Internet-Draft Ericsson
Intended status: Standards Track February 12, 2014
Expires: August 16, 2014
CLUE Protocol Data Channel
draft-holmberg-clue-datachannel-03
Abstract
This document specifies how to use the Stream Control Transmission
Protocol (SCTP) on top of the Datagram Transport Layer Security
(DTLS) protocol (SCTPoDTLS) for transporting CLUE protocol messages
between CLUE entities.
The document describes the SCTP considerations for CLUE, and the SDP
Offer/Answer procedures for negotiating a SCTPoDTLS connection for
CLUE.
Details and procedures associated with the CLUE protocol are outside
the scope of this document.
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 August 16, 2014.
Copyright Notice
Copyright (c) 2014 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
Holmberg Expires August 16, 2014 [Page 1]
Internet-Draft CLUE Protocol Data Channel February 2014
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 . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Usage of SCTPoDTLS in the CLUE Context . . . . . . . . . . . 3
3.1. General . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2. CLUE Data Channel Definition . . . . . . . . . . . . . . 3
3.3. RTCWEB Data Channel Protocol Usage . . . . . . . . . . . 4
3.4. SCTP Considerations . . . . . . . . . . . . . . . . . . . 4
3.4.1. SCTP Payload Protocol Identifier (PPID) . . . . . . . 4
3.4.2. Reliability . . . . . . . . . . . . . . . . . . . . . 4
3.4.3. Order . . . . . . . . . . . . . . . . . . . . . . . . 5
3.4.4. Stream Reset . . . . . . . . . . . . . . . . . . . . 5
3.4.5. Interleaving . . . . . . . . . . . . . . . . . . . . 5
3.4.6. SCTP Multihoming . . . . . . . . . . . . . . . . . . 5
4. SDP Offer/Answer Procedures . . . . . . . . . . . . . . . . . 5
4.1. SDP-based WebRTC Data Channel Negotiation Usage . . . . . 5
5. Security Considerations . . . . . . . . . . . . . . . . . . . 5
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 6
8. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . 6
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
9.1. Normative References . . . . . . . . . . . . . . . . . . 6
9.2. Informative References . . . . . . . . . . . . . . . . . 7
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8
1. Introduction
This document specifies how to use the Stream Control Transmission
Protocol (SCTP) on top of the Datagram Transport Layer Security
(DTLS) protocol (SCTPoDTLS) for transporting CLUE protocol messages
between CLUE entities.
The document describes the SCTP considerations for CLUE, and the SDP
Offer/Answer procedures for negotiating a SCTPoDTLS connection for
CLUE.
Details and procedures associated with the CLUE protocol are outside
the scope of this document.
Holmberg Expires August 16, 2014 [Page 2]
Internet-Draft CLUE Protocol Data Channel February 2014
2. Conventions
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 BCP 14, RFC 2119
[RFC2119].
CLUE data channel refers to the SCTPoDTLS association that is used
between two CLUE entities in order to transport CLUE messages.
CLUE message refers to a CLUE protocol message that is sent over the
CLUE data channel.
CLUE entity refers to a SIP User Agent (UA) device that supports the
CLUE mechanism (including the CLUE protocol).
[RFC4960] defines a SCTP stream as a unidirectional logical channel
established from one to another associated SCTP endpoint, within
which all user messages are delivered in sequence except for those
submitted to the unordered delivery service.
[RFC4960] defines a SCTP identifier as a unsigned integer, which
identifies an SCTP stream.
3. Usage of SCTPoDTLS in the CLUE Context
3.1. General
This section defines the CLUE data channel, and describes the SCTP
features and extensions used to realize it.
The CLUE data channel realization, and set of SCTP features, are
based on the the RTCWEB data channel defined in
[I-D.ietf-rtcweb-data-channel]. This will allow CLUE entities to be
interoperable with entities implementing
[I-D.ietf-rtcweb-data-channel].
3.2. CLUE Data Channel Definition
The CLUE data channel is realized by using the Stream Control
Transmission Protocol (SCTP) on top of the Datagram Transport Layer
Security (DTLS) protocol [I-D.ietf-tsvwg-sctp-dtls-encaps].
The realization of a bidirectional CLUE Data Channel is a pair of one
incoming SCTP stream and one outgoing SCTP stream. These streams are
then used to transport CLUE messages in both directions.
The SCTP streams MUST belong to the same SCTP association.
Holmberg Expires August 16, 2014 [Page 3]
Internet-Draft CLUE Protocol Data Channel February 2014
Within a given CLUE session, CLUE entities MUST use a single CLUE
data channel for all CLUE messages associated with the CLUE session.
The SCTP streams MUST have identical SCTP stream identifier values,
unless a specific value is already used for some other purpose.
OPEN ISSUE #1: The requirement to use identical STCP stream
identifier values might be modified depending on what mechanism will
be used to negotiate the identifier values.
3.3. RTCWEB Data Channel Protocol Usage
OPEN ISSUE #2: It is FFS whether the RTCWEB Data Channel Protocol
[I-D.ietf-rtcweb-data-protocol] will be used with the CLUE data
channel.
NOTE: If [I-D.ietf-rtcweb-data-protocol] will be used with the CLUE
data channel, a new associated 'protocol' value needs to be
registered with IANA in the 'Protocol Registry' defined by
[I-D.ietf-rtcweb-data-protocol].
3.4. SCTP Considerations
3.4.1. SCTP Payload Protocol Identifier (PPID)
CLUE entities MUST use the PPID value 51 when sending CLUE messages,
according to the procedures in [I-D.ietf-rtcweb-data-channel].
NOTE: As described in [I-D.ietf-rtcweb-data-channel], the PPID value
51 indicates that the SCTP message contains data encoded in a UTF-8
format. The PPID value 51 does not indicate what protocol the SCTP
message contains.
NOTE: If the RTCWEB Data Channel Protocol
[I-D.ietf-rtcweb-data-protocol] will be used for the CLUE data
channel, the PPID value 50 will be used for Data Channel Protocol
messages.
3.4.2. Reliability
The usage of SCTP for the data channel ensures reliable transport of
CLUE messages.
NOTE: [I-D.ietf-rtcweb-data-channel] requires the support of the
partial reliability extension defined in [RFC3758]. This is not
needed for CLUE, as messages are required to always be sent reliably.
[I-D.ietf-rtcweb-data-channel] also mandates support of the limited
retransmission policy defined in [I-D.tuexen-tsvwg-sctp-prpolicies].
Holmberg Expires August 16, 2014 [Page 4]
Internet-Draft CLUE Protocol Data Channel February 2014
3.4.3. Order
CLUE entities MUST use the ordered delivery SCTP service, as
described in section 6.6 of [RFC2960].
3.4.4. Stream Reset
CLUE entities MUST support the stream reset extension defined in
[RFC6525]
The dynamic address reconfiguration extension defined in [RFC5061]
MUST be used to signal the support of the stream reset extension
defined in [RFC6525]. Other features of [RFC5061] MUST NOT be used.
3.4.5. Interleaving
CLUE entities MUST support the message interleaving mechanism defined
in [I-D.stewart-tsvwg-sctp-ndata].
3.4.6. SCTP Multihoming
CLUE entities MUST NOT use SCTP multihoming.
NOTE: The SCTPoDTLS mechanism does not support SCTP multihoming.
4. SDP Offer/Answer Procedures
4.1. SDP-based WebRTC Data Channel Negotiation Usage
OPEN ISSUE #3: It is FFS whether the SDP-based WebRTC Data Channel
Negotiation mechanism [I-D.ejzak-dispatch-webrtc-data-channel-sdpneg]
will be used with the CLUE data channel.
NOTE: If [I-D.ejzak-dispatch-webrtc-data-channel-sdpneg] will be used
with the CLUE data channel, a new associated 'sub-protocol' value
needs to be registered with IANA.
5. Security Considerations
TBD
6. IANA Considerations
[RFC EDITOR NOTE: Please replace RFC-XXXX with the RFC number of this
document.]
Holmberg Expires August 16, 2014 [Page 5]
Internet-Draft CLUE Protocol Data Channel February 2014
7. Acknowledgments
Thanks to Paul Kyzivat and Christian Groves for comments on the
document.
8. Change Log
[RFC EDITOR NOTE: Please remove this section when publishing]
Changes from draft-holmberg-clue-datachannel-02
o PPID value for CLUE messages added
o References updated
Changes from draft-holmberg-clue-datachannel-01
o More text added
Changes from draft-holmberg-clue-datachannel-00
o Editorial corrections based on comments from Paul K
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2960] Stewart, R., Xie, Q., Morneault, K., Sharp, C.,
Schwarzbauer, H., Taylor, T., Rytina, I., Kalla, M.,
Zhang, L., and V. Paxson, "Stream Control Transmission
Protocol", RFC 2960, October 2000.
[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.
[RFC4960] Stewart, R., "Stream Control Transmission Protocol", RFC
4960, September 2007.
Holmberg Expires August 16, 2014 [Page 6]
Internet-Draft CLUE Protocol Data Channel February 2014
[RFC5061] Stewart, R., Xie, Q., Tuexen, M., Maruyama, S., and M.
Kozuka, "Stream Control Transmission Protocol (SCTP)
Dynamic Address Reconfiguration", RFC 5061, September
2007.
[RFC6525] Stewart, R., Tuexen, M., and P. Lei, "Stream Control
Transmission Protocol (SCTP) Stream Reconfiguration", RFC
6525, February 2012.
[I-D.ietf-tsvwg-sctp-dtls-encaps]
Tuexen, M., Stewart, R., Jesup, R., and S. Loreto, "DTLS
Encapsulation of SCTP Packets", draft-ietf-tsvwg-sctp-
dtls-encaps-02.txt (work in progress), October 2013.
[I-D.ietf-rtcweb-data-channel]
Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data
Channels", draft-ietf-rtcweb-data-channel-07.txt (work in
progress), February 2014.
[I-D.ietf-rtcweb-data-protocol]
Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data Channel
Establishment Protocol", draft-ietf-rtcweb-data-
protocol-03.txt (work in progress), February 2014.
[I-D.ejzak-dispatch-webrtc-data-channel-sdpneg]
Ejzak, R. and J. Marcon, "SDP-based WebRTC data channel
negotiation", draft-ejzak-dispatch-webrtc-data-channel-
sdpneg-00.txt (work in progress), October 2013.
[I-D.stewart-tsvwg-sctp-ndata]
Stewart, R., Tuexen, M., Loreto, S., and R. Seggelmann, "A
New Data Chunk for Stream Control Transmission Protocol",
draft-stewart-tsvwg-sctp-ndata-03.txt (work in progress),
October 2013.
[I-D.tuexen-tsvwg-sctp-prpolicies]
Tuexen, M., Seggelmann, R., Stewart, R., and S. Loreto,
"Additional Policies for the Partial Delivery Extension of
the Stream Control Transmission Protocol", draft-tuexen-
tsvwg-sctp-prpolicies-03.txt (work in progress), October
2013.
9.2. Informative References
[RFC3758] Stewart, R., Ramalho, M., Xie, Q., Tuexen, M., and P.
Conrad, "Stream Control Transmission Protocol (SCTP)
Partial Reliability Extension", RFC 3758, May 2004.
Holmberg Expires August 16, 2014 [Page 7]
Internet-Draft CLUE Protocol Data Channel February 2014
Author's Address
Christer Holmberg
Ericsson
Hirsalantie 11
Jorvas 02420
Finland
Email: christer.holmberg@ericsson.com
Holmberg Expires August 16, 2014 [Page 8]