draft-ietf-mmusic-sctp-sdp-03.txt   draft-ietf-mmusic-sctp-sdp-04.txt 
MMUSIC S. Loreto MMUSIC S. Loreto
Internet-Draft G. Camarillo Internet-Draft G. Camarillo
Intended status: Standards Track Ericsson Intended status: Standards Track Ericsson
Expires: July 25, 2013 January 21, 2013 Expires: January 1, 2014 June 30, 2013
Stream Control Transmission Protocol (SCTP)-Based Media Transport in the Stream Control Transmission Protocol (SCTP)-Based Media Transport in the
Session Description Protocol (SDP) Session Description Protocol (SDP)
draft-ietf-mmusic-sctp-sdp-03 draft-ietf-mmusic-sctp-sdp-04
Abstract Abstract
SCTP (Stream Control Transmission Protocol) is a transport protocol SCTP (Stream Control Transmission Protocol) is a transport protocol
used to establish associations between two endpoints. This document used to establish associations between two endpoints. This document
describes how to express media transport over SCTP in SDP (Session describes how to express media transport over SCTP in SDP (Session
Description Protocol). This document defines the 'SCTP', 'SCTP/DTLS' Description Protocol). This document defines the 'SCTP', 'SCTP/DTLS'
and 'DTLS/SCTP' protocol identifiers for SDP. and 'DTLS/SCTP' protocol identifiers for SDP.
Status of this Memo Status of this Memo
skipping to change at page 1, line 35 skipping to change at page 1, line 35
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 July 25, 2013. This Internet-Draft will expire on January 1, 2014.
Copyright Notice Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the Copyright (c) 2013 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
skipping to change at page 2, line 11 skipping to change at page 2, line 11
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
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Protocol Identifier . . . . . . . . . . . . . . . . . . . . . 4 3. Protocol Identifier . . . . . . . . . . . . . . . . . . . . . 4
4. Media Formats . . . . . . . . . . . . . . . . . . . . . . . . 4 4. Media Formats . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1. datachannels and m-line . . . . . . . . . . . . . . . . . 5 4.1. Media Descriptions . . . . . . . . . . . . . . . . . . . . 5
4.2. Media Descriptions . . . . . . . . . . . . . . . . . . . . 5 5. Media attributes . . . . . . . . . . . . . . . . . . . . . . . 6
4.3. Predefinition of Data Channels . . . . . . . . . . . . . . 6 5.1. sctpmap Attribute . . . . . . . . . . . . . . . . . . . . 6
5. Media attributes . . . . . . . . . . . . . . . . . . . . . . . 7
5.1. sctpmap Attribute . . . . . . . . . . . . . . . . . . . . 7
5.2. stream Attribute . . . . . . . . . . . . . . . . . . . . . 7
5.3. label Attribute . . . . . . . . . . . . . . . . . . . . . 8
5.4. subprotocol Attribute . . . . . . . . . . . . . . . . . . 8
5.5. max_retr Attribute . . . . . . . . . . . . . . . . . . . . 8
5.6. max_time Attribute . . . . . . . . . . . . . . . . . . . . 8
5.7. unordered Attribute . . . . . . . . . . . . . . . . . . . 9
6. The Setup and Connection Attributes and Association 6. The Setup and Connection Attributes and Association
Management . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Management . . . . . . . . . . . . . . . . . . . . . . . . . . 6
7. Multihoming . . . . . . . . . . . . . . . . . . . . . . . . . 9 7. Multihoming . . . . . . . . . . . . . . . . . . . . . . . . . 7
8. Network Address Translation (NAT) Considerations . . . . . . . 10 8. Network Address Translation (NAT) Considerations . . . . . . . 7
9. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 9. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
9.1. Actpass/Passive . . . . . . . . . . . . . . . . . . . . . 10 9.1. Actpass/Passive . . . . . . . . . . . . . . . . . . . . . 8
9.2. Existing Connection Reuse . . . . . . . . . . . . . . . . 11 9.2. Existing Connection Reuse . . . . . . . . . . . . . . . . 9
9.3. SDP description for DTLS Connection . . . . . . . . . . . 12 9.3. SDP description for SCTP over DTLS Connection . . . . . . 9
10. Security Considerations . . . . . . . . . . . . . . . . . . . 12 10. Security Considerations . . . . . . . . . . . . . . . . . . . 10
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10
12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 10
12.1. Normative References . . . . . . . . . . . . . . . . . . . 13 12.1. Normative References . . . . . . . . . . . . . . . . . . . 10
12.2. Informative References . . . . . . . . . . . . . . . . . . 14 12.2. Informative References . . . . . . . . . . . . . . . . . . 11
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 14 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12
1. Introduction 1. Introduction
SDP (Session Description Protocol) [RFC4566] provides a general- SDP (Session Description Protocol) [RFC4566] provides a general-
purpose format for describing multimedia sessions in announcements or purpose format for describing multimedia sessions in announcements or
invitations. RFC4145 [RFC4145] specifies a general mechanism for invitations. TCP-Based Media Transport in the Session Description
describing and establishing TCP (Transmission Control Protocol) Protocol (SDP) [RFC4145] specifies a general mechanism for describing
streams. RFC 4572 [RFC4572] extends RFC4145 [RFC4145] for describing and establishing TCP (Transmission Control Protocol) streams.
TCP-based media streams that are protected using TLS (Transport Layer Connection-Oriented Media Transport over the Transport Layer Security
Security) [RFC5246]. (TLS) Protocol in the Session Description Protocol (SDP) [RFC4572]
extends RFC4145 [RFC4145] for describing TCP-based media streams that
are protected using TLS (Transport Layer Security) [RFC5246].
This document defines a new protocol identifier, 'SCTP', to describe This document defines three new protocol identifiers:
SCTP-based [RFC4960] media streams. Additionally, this document
specifies the use of the 'setup' and 'connection' SDP attributes to
establish SCTP associations. These attributes were defined in
RFC4145 [RFC4145] for TCP. This document discusses their use with
SCTP.
Additionally this document defines two new protocol identifiers: SCTP : to describe SCTP-based [RFC4960] media streams.
SCTP/DTLS : to allow the usage of the Datagram Transport Layer SCTP/DTLS : to allow the usage of the Datagram Transport Layer
Security (DTLS) [RFC4347] protocol over SCTP, as specified in Security (DTLS) [RFC4347] protocol over SCTP, as specified in
[RFC6083], using SDP. DTLS over SCTP provides communications [RFC6083], using SDP. DTLS over SCTP provides communications
privacy for applications that use SCTP as their transport privacy for applications that use SCTP as their transport
protocol. protocol.
DTLS/SCTP : to allow the usage of SCTP on top of the Datagram DTLS/SCTP : to allow the usage of SCTP on top of the Datagram
Transport Layer Security (DTLS) protocol, as defined in Transport Layer Security (DTLS) protocol, as defined in
[I-D.tuexen-tsvwg-sctp-dtls-encaps], using SDP. SCTP over DTLS is [I-D.tuexen-tsvwg-sctp-dtls-encaps], using SDP. SCTP over DTLS is
used by the RTCWeb protocol suite for transporting non- media data used by the RTCWeb protocol suite for transporting non-media data
between browsers. between browsers.
The authentication certificates are interpreted and validated as The authentication certificates are interpreted and validated as
defined in RFC4572 [RFC4572]. Self-signed certificates can be used defined in RFC4572 [RFC4572]. Self-signed certificates can be used
securely, provided that the integrity of the SDP description is securely, provided that the integrity of the SDP description is
assured as defined in RFC4572 [RFC4572]. assured as defined in RFC4572 [RFC4572].
TLS is designed to run on top of a byte-stream oriented transport TLS is designed to run on top of a byte-stream oriented transport
protocol providing a reliable, in-sequence delivery like TCP. Since protocol providing a reliable, in-sequence delivery like TCP. Since
no-one so far has implemented SCTP over TLS, due to some serious no-one so far has implemented SCTP over TLS, due to some serious
limitations described in [RFC6083], this document does not make use limitations described in [RFC6083], this document does not make use
of TLS over SCTP as described in RFC3436 [RFC3436]. of TLS over SCTP as described in RFC3436 [RFC3436].
Additionally, this document specifies the use of the 'setup' and
'connection' SDP attributes to establish SCTP associations. These
attributes were defined in RFC4145 [RFC4145] for TCP. This document
discusses their use with SCTP.
2. Terminology 2. Terminology
In this document, the key words "MUST", "MUST NOT", "REQUIRED", In this document, the key words "MUST", "MUST NOT", "REQUIRED",
"SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT
RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as
described in BCP 14, RFC 2119 [RFC2119] and indicate requirement described in BCP 14, RFC 2119 [RFC2119] and indicate requirement
levels for compliant implementations. levels for compliant implementations.
3. Protocol Identifier 3. Protocol Identifier
skipping to change at page 4, line 32 skipping to change at page 4, line 34
Media described using an 'm' line containing the 'SCTP' protocol Media described using an 'm' line containing the 'SCTP' protocol
identifier are carried using SCTP [RFC4960]. identifier are carried using SCTP [RFC4960].
The 'SCTP/DTLS' protocol identifier indicates that the media The 'SCTP/DTLS' protocol identifier indicates that the media
described will use the Datagram Transport Layer Security (DTLS) described will use the Datagram Transport Layer Security (DTLS)
[RFC4347] over SCTP as specified in [RFC6083]. [RFC4347] over SCTP as specified in [RFC6083].
The 'DTLS/SCTP' protocol identifier indicates that the media The 'DTLS/SCTP' protocol identifier indicates that the media
described will use SCTP on top of the Datagram Transport Layer described will use SCTP on top of the Datagram Transport Layer
Security (DTLS) protocol as specified in Security (DTLS) protocol as specified in
[I-D.tuexen-tsvwg-sctp-dtls-encaps]. [I-D.tuexen-tsvwg-sctp-dtls-encaps]. The actual layer below DTLS can
be plain UDP or what ICE agrees on (in the case ICE is used to
negotiate the actual transport flow). The lower layer used is
identified from the elements present inside the m= line block.
An 'm' line that specifies 'SCTP' or 'SCTP/DTLS' or 'DTLS/SCTP' MUST An 'm' line that specifies 'SCTP' or 'SCTP/DTLS' or 'DTLS/SCTP' MUST
further qualify the application-layer protocol using an fmt further qualify the application-layer protocol using an fmt
identifier. identifier.
An 'm' line that specifies 'SCTP/DTLS' or 'DTLS/SCTP' MUST further An 'm' line that specifies 'SCTP/DTLS' or 'DTLS/SCTP' MUST further
provide a certificate fingerprint. An SDP attribute (an 'a' line) is provide a certificate fingerprint. An SDP attribute (an 'a' line) is
used to transport and exchange end point certificate. The used to transport and exchange end point certificate. The
authentication certificates are interpreted and validated as defined authentication certificates are interpreted and validated as defined
in [RFC4572]. in [RFC4572].
skipping to change at page 5, line 10 skipping to change at page 5, line 17
The SDP specification, [RFC4566], states that specifications defining The SDP specification, [RFC4566], states that specifications defining
new proto values, like the SCTP, SCTP/DTLS and DTLS/SCTP proto values new proto values, like the SCTP, SCTP/DTLS and DTLS/SCTP proto values
defined in this RFC, must define the rules by which their media defined in this RFC, must define the rules by which their media
format (fmt) namespace is managed. Use of an existing MIME subtype format (fmt) namespace is managed. Use of an existing MIME subtype
for the format is encouraged. If no MIME subtype exists, it is for the format is encouraged. If no MIME subtype exists, it is
RECOMMENDED that a suitable one is registered through the IETF RECOMMENDED that a suitable one is registered through the IETF
process [RFC4288] [RFC4289] by production of, or reference to, a process [RFC4288] [RFC4289] by production of, or reference to, a
standards-track RFC that defines the transport protocol for the standards-track RFC that defines the transport protocol for the
format. format.
4.1. datachannels and m-line 4.1. Media Descriptions
SCTP defines a stream as an unidirectional logical channel existing
within an SCTP association one to another SCTP endpoint. The streams
are used to provide the notion of in-sequence delivery. Each user
message is sent on a particular stream, either order or unordered.
Ordering is preserved only for all ordered messages sent on the same
stream.
A Data Channel may be:
unidirectional: formed by one single incoming or outgoing SCTP
stream
bidirectional: a pair of one incoming stream and one outgoing SCTP
stream
Using the format part of the m line for negotiating datachannel
allows the intermediaries nodes to become aware of the kind of
traffic actually exchanged on the datachannels, as well as the
initial set of datachannels established within the association.
This document allows only one media format on top of an association.
That means that all the datachannels must use the same media format.
[NOTE] The exact definition of datachannel depends on the actual
media type using it.
4.2. Media Descriptions
The media description change slightly depending on the actual The media description change slightly depending on the actual
<proto>. <proto>.
If the <proto> sub-field is 'SCTP' or 'SCTP/DTLS' If the <proto> sub-field is 'SCTP' or 'SCTP/DTLS'
the <port> is the SCTP transport port and follows the same active/ the <port> is the SCTP transport port and follows the same active/
passive offer/answer model described in Section 4.1 of [RFC4145]; passive offer/answer model described in Section 4.1 of [RFC4145];
the <fmt> sub-field carries the same port number value specified the <fmt> sub-field carries the same port number value specified
skipping to change at page 6, line 35 skipping to change at page 6, line 15
to a media encoding name that identifies the payload format to a media encoding name that identifies the payload format
transported by the association or the actual application protocol transported by the association or the actual application protocol
running on top of it. running on top of it.
m=application 54111 DTLS/SCTP 5000 5001 5002 m=application 54111 DTLS/SCTP 5000 5001 5002
c=IN IP4 79.97.215.79 c=IN IP4 79.97.215.79
a=sctpmap:5000 webrtc-datachannel 16 a=sctpmap:5000 webrtc-datachannel 16
a=sctpmap:5001 bfcp 2 a=sctpmap:5001 bfcp 2
a=sctpmap:5002 t38 1 a=sctpmap:5002 t38 1
4.3. Predefinition of Data Channels
An 'm' line that specifies 'SCTP' or 'SCTP/DTLS' or 'DTLS/SCTP' MAY
further provide the definition of channels running within the
association. When provided the channel definition MUST include the
"a=stream:" attribute (see Section 5.2) indicating the stream number
used to form the channel, the "a=label:" attribute (see Section 5.3)
indicating the name of the channel and the "a=subprotocol:" attribute
(see Section 5.4) indicating which protocol the client would like to
speak on the channel.
By default a channel is defined as 'reliable', however it is possible
specify a channel as Partial Reliable indicating that the messages
will not be retransmitted more times than specified in the
"a=max_retr:" attribute (see Section 5.5) or indicating messages
might not be transmitted or retransmitted after a specified life-time
given in milli-seconds in the "a=max_time:" attribute (see
Section 5.6).
By default a channel is defined as 'ordered' (i.e. within a stream,
an endpoint MUST deliver DATA chunks received to the upper layer
according to the order of their Stream Sequence Number), however it
is possible specify a channel as Unordered using the "a=unordered"
attribute (see Section 5.7).
m=application 54111 DTLS/SCTP 5000 5001 5002
c=IN IP4 79.97.215.79
a=sctpmap:5000 webrtc-DataChannel 2
a=sctpmap:5001 bfcp 1
a=sctpmap:5002 t38 1
a=webrtc-DataChannel:5000 stream=1;label="channel 1";subprotocol="chat";
a=webrtc-DataChannel:5000 stream=2;label="channel 2";subprotocol="file transfer";max_retr=3
5. Media attributes 5. Media attributes
5.1. sctpmap Attribute 5.1. sctpmap Attribute
The sctpmap attribute maps from a port number (as used in an "m=" The sctpmap attribute maps from a port number (as used in an "m="
line) to an encoding name denoting the payload format to be used on line) to an encoding name denoting the payload format to be used on
top of the SCTP association or the actual protocol running on top of top of the SCTP association or the actual protocol running on top of
it. It also can provide the number of streams to be supported by the it. It also can provide the number of streams to be supported by the
association. If this attribute is not present, the implementation association. If this attribute is not present, the implementation
should provide a default, with a suggested value of 16. should provide a default, with a suggested value of 16.
sctpmap-attr = "a=sctpmap:" sctpmap-number protocol [streams] sctpmap-attr = "a=sctpmap:" sctpmap-number protocol [streams]
sctpmap-number = 1*DIGIT sctpmap-number = 1*DIGIT
protocol = labelstring protocol = labelstring
labelstring = text labelstring = text
text = byte-string text = byte-string
streams = 1*DIGIT streams = 1*DIGIT
5.2. stream Attribute
The 'stream' attribute indicates the actual stream number within the
association used to form the channel.
stream-attr = "a=stream=" streamnumber
streamnumber = 1*DIGIT
5.3. label Attribute
The 'label' attribute indicates the name of the channel. It
represents a label that can be used to distinguish, in the context of
the WebRTC API, an RTCDataChannel object from other RTCDataChannel
objects.
label-attr = "a=label=" labelstring
labelstring = text
text = byte-string
5.4. subprotocol Attribute
The 'subprotocol' attribute indicates which protocol the client would
like to speak on the channel.
subprotocol-attr = "a=subprotocol=" labelstring
labelstring = text
text = byte-string
5.5. max_retr Attribute
The 'max_retr' attribute indicates the max times an user message will
be retransmitted.
maxretr-attr = "a=maxretr=" maxretrvalue
maxretrvalue = 1*DIGIT
5.6. max_time Attribute
An user messages might not be transmitted or retransmitted after a
specified life-time given in milli-seconds in the 'max_time'
attribute.
maxtime-attr = "a=maxtime=" maxtimevalue
maxtimevalue = 1*DIGIT
5.7. unordered Attribute
The 'unordered' attribute indicates that DATA chunks in the channel
MUST be dispatched to the upper layer by the receiver without any
attempt to reorder.
6. The Setup and Connection Attributes and Association Management 6. The Setup and Connection Attributes and Association Management
The use of the 'setup' and 'connection' attributes in the context of The use of the 'setup' and 'connection' attributes in the context of
an SCTP association is identical to the use of these attributes in an SCTP association is identical to the use of these attributes in
the context of a TCP connection. That is, SCTP endpoints MUST follow the context of a TCP connection. That is, SCTP endpoints MUST follow
the rules in Sections 4 and 5 of RFC 4145 [RFC4145] when it comes to the rules in Sections 4 and 5 of RFC 4145 [RFC4145] when it comes to
the use of the 'setup' and 'connection' attributes in offer/answer the use of the 'setup' and 'connection' attributes in offer/answer
[RFC3264] exchanges. [RFC3264] exchanges.
The management of an SCTP association is identical to the management The management of an SCTP association is identical to the management
skipping to change at page 10, line 25 skipping to change at page 8, line 6
8. Network Address Translation (NAT) Considerations 8. Network Address Translation (NAT) Considerations
SCTP specific features (not present in UDP/TCP), such as the checksum SCTP specific features (not present in UDP/TCP), such as the checksum
(CRC32c) value calculated on the whole packet (not just the header) (CRC32c) value calculated on the whole packet (not just the header)
or its multihoming capabilities, present new challenges for NAT or its multihoming capabilities, present new challenges for NAT
traversal. [I-D.ietf-behave-sctpnat] describes an SCTP specific traversal. [I-D.ietf-behave-sctpnat] describes an SCTP specific
variant of NAT, which provides similar features of Network Address variant of NAT, which provides similar features of Network Address
and Port Translation (NAPT). and Port Translation (NAPT).
Current NATs do not typically support SCTP. As an alternative to Current NATs do not typically support SCTP. As an alternative to
design SCTP specific NATs, Encapsulating SCTP into UDP design SCTP specific NATs, Encapsulating SCTP into UDP [RFC6951]
[I-D.tuexen-sctp-udp-encaps] makes it possible to use SCTP in makes it possible to use SCTP in networks with legacy NAT and
networks with legacy NAT and firewalls not supporting SCTP. firewalls not supporting SCTP.
At the time of writing, the work on NAT traversal for SCTP is still At the time of writing, the work on NAT traversal for SCTP is still
work in progress. Additionally, no extension has been defined to work in progress. Additionally, no extension has been defined to
integrate ICE (Interactive Connectivity Establishment) [RFC5768] with integrate ICE (Interactive Connectivity Establishment) [RFC5768] with
SCTP and its multihoming capabilities either. Therefore, this SCTP and its multihoming capabilities either. Therefore, this
specification does not define how to describe SCTP-over-UDP streams specification does not define how to describe SCTP-over-UDP streams
in SDP or how to establish and maintain SCTP associations using ICE. in SDP or how to establish and maintain SCTP associations using ICE.
Should these features be specified for SCTP in the future, there will Should these features be specified for SCTP in the future, there will
be a need to specify how to use them in an SDP environment as well. be a need to specify how to use them in an SDP environment as well.
skipping to change at page 11, line 44 skipping to change at page 9, line 25
m=application 54321 SCTP * m=application 54321 SCTP *
c=IN IP4 192.0.2.1 c=IN IP4 192.0.2.1
a=setup:passive a=setup:passive
a=connection:existing a=connection:existing
Figure 3 Figure 3
The endpoint at 192.0.2.2 also wishes to use the existing SCTP The endpoint at 192.0.2.2 also wishes to use the existing SCTP
association and responds with the following description: association and responds with the following description:
m=application 9 SCTP * m=application 54111 SCTP *
c=IN IP4 192.0.2.2 c=IN IP4 192.0.2.2
a=setup:active a=setup:active
a=connection:existing a=connection:existing
Figure 4 Figure 4
The existing SCTP association between 192.0.2.2 and 192.0.2.1 will be The existing SCTP association between 192.0.2.2 and 192.0.2.1 will be
reused. reused.
9.3. SDP description for DTLS Connection 9.3. SDP description for SCTP over DTLS Connection
This example shows the usage of SCTP over DTLS.
An offerer at 192.0.2.2 signals the availability of a T.38 fax An offerer at 192.0.2.2 signals the availability of a T.38 fax
session over SCTP/DTLS. session over SCTP/DTLS. The DTLS connection runs on top of port
54111.
m=image 54111 DTLS/SCTP 5000 m=image 54111 DTLS/SCTP 5000
c=IN IP4 192.0.2.2 c=IN IP4 192.0.2.2
a=setup:actpass a=setup:actpass
a=connection:new a=connection:new
a=fingerprint:SHA-1 \ a=fingerprint:SHA-1 \
4A:AD:B9:B1:3F:82:18:3B:54:02:12:DF:3E:5D:49:6B:19:E5:7C:AB 4A:AD:B9:B1:3F:82:18:3B:54:02:12:DF:3E:5D:49:6B:19:E5:7C:AB
a=sctpmap:5000 webrtc-DataChannel 16 a=sctpmap:5000 webrtc-DataChannel 16
a=webrtc-DataChannel:5000 stream=1;label="channel 1";subprotocol="chat"; a=webrtc-DataChannel:5000 stream:1;label="channel 1";subprotocol="chat";
a=webrtc-DataChannel:5000 stream=2;label="channel 2";subprotocol="file transfer" a=webrtc-DataChannel:5000 stream:2;label="channel 2";subprotocol="file transfer"
Figure 5 Figure 5
10. Security Considerations 10. Security Considerations
See RFC 4566 [RFC4566] for security considerations on the use of SDP See RFC 4566 [RFC4566] for security considerations on the use of SDP
in general. See RFC 3264 [RFC3264], RFC 4145 [RFC4145] and RFC 4572 in general. See RFC 3264 [RFC3264], RFC 4145 [RFC4145] and RFC 4572
[RFC4572] for security considerations on establishing media streams [RFC4572] for security considerations on establishing media streams
using offer/answer exchanges. See RFC 4960 [RFC4960] for security using offer/answer exchanges. See RFC 4960 [RFC4960] for security
considerations on SCTP in general and [RFC6083] for security considerations on SCTP in general and [RFC6083] for security
consideration using DTLS on top of SCTP. This specification does not consideration using DTLS on top of SCTP. This specification does not
skipping to change at page 13, line 21 skipping to change at page 10, line 47
[RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
with Session Description Protocol (SDP)", RFC 3264, with Session Description Protocol (SDP)", RFC 3264,
June 2002. June 2002.
[RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in [RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in
the Session Description Protocol (SDP)", RFC 4145, the Session Description Protocol (SDP)", RFC 4145,
September 2005. September 2005.
[RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and [RFC4288] Freed, N. and J. Klensin, "Media Type Specifications and
Registration Procedures", BCP 13, RFC 4288, December 2005. Registration Procedures", RFC 4288, December 2005.
[RFC4289] Freed, N. and J. Klensin, "Multipurpose Internet Mail [RFC4289] Freed, N. and J. Klensin, "Multipurpose Internet Mail
Extensions (MIME) Part Four: Registration Procedures", Extensions (MIME) Part Four: Registration Procedures",
BCP 13, RFC 4289, December 2005. BCP 13, RFC 4289, December 2005.
[RFC4347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer [RFC4347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer
Security", RFC 4347, April 2006. Security", RFC 4347, April 2006.
[RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
Description Protocol", RFC 4566, July 2006. Description Protocol", RFC 4566, July 2006.
skipping to change at page 14, line 19 skipping to change at page 11, line 50
RFC 3436, December 2002. RFC 3436, December 2002.
[RFC6083] Tuexen, M., Seggelmann, R., and E. Rescorla, "Datagram [RFC6083] Tuexen, M., Seggelmann, R., and E. Rescorla, "Datagram
Transport Layer Security (DTLS) for Stream Control Transport Layer Security (DTLS) for Stream Control
Transmission Protocol (SCTP)", RFC 6083, January 2011. Transmission Protocol (SCTP)", RFC 6083, January 2011.
[RFC5768] Rosenberg, J., "Indicating Support for Interactive [RFC5768] Rosenberg, J., "Indicating Support for Interactive
Connectivity Establishment (ICE) in the Session Initiation Connectivity Establishment (ICE) in the Session Initiation
Protocol (SIP)", RFC 5768, April 2010. Protocol (SIP)", RFC 5768, April 2010.
[RFC6951] Tuexen, M. and R. Stewart, "UDP Encapsulation of Stream
Control Transmission Protocol (SCTP) Packets for End-Host
to End-Host Communication", RFC 6951, May 2013.
[I-D.ietf-behave-sctpnat] [I-D.ietf-behave-sctpnat]
Stewart, R., Tuexen, M., and I. Ruengeler, "Stream Control Stewart, R., Tuexen, M., and I. Ruengeler, "Stream Control
Transmission Protocol (SCTP) Network Address Translation", Transmission Protocol (SCTP) Network Address Translation",
draft-ietf-behave-sctpnat-04 (work in progress), draft-ietf-behave-sctpnat-08 (work in progress),
December 2010. February 2013.
[I-D.tuexen-sctp-udp-encaps]
Tuexen, M. and R. Stewart, "UDP Encapsulation of SCTP
Packets", draft-tuexen-sctp-udp-encaps-06 (work in
progress), January 2011.
Authors' Addresses Authors' Addresses
Salvatore Loreto Salvatore Loreto
Ericsson Ericsson
Hirsalantie 11 Hirsalantie 11
Jorvas 02420 Jorvas 02420
Finland Finland
Email: Salvatore.Loreto@ericsson.com Email: Salvatore.Loreto@ericsson.com
 End of changes. 22 change blocks. 
172 lines changed or deleted 58 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/