Re: [TLS] [rtcweb] Number of DTLS sessions/DTLS connections; RE: What the gateway draft should say about mux/non-mux

Christer Holmberg <> Wed, 05 August 2015 08:12 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id D2FAA1B2D50; Wed, 5 Aug 2015 01:12:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 5_lZoqoYJGOs; Wed, 5 Aug 2015 01:12:38 -0700 (PDT)
Received: from ( []) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 45A5F1B2D8E; Wed, 5 Aug 2015 01:12:37 -0700 (PDT)
X-AuditID: c1b4fb2d-f79176d00000321c-55-55c1c5730748
Received: from (Unknown_Domain []) by (Symantec Mail Security) with SMTP id B1.40.12828.375C1C55; Wed, 5 Aug 2015 10:12:35 +0200 (CEST)
Received: from ([]) by ([]) with mapi id 14.03.0210.002; Wed, 5 Aug 2015 10:12:34 +0200
From: Christer Holmberg <>
To: "Schwarz, Albrecht (Albrecht)" <>, "<>" <>
Thread-Topic: [rtcweb] Number of DTLS sessions/DTLS connections; RE: What the gateway draft should say about mux/non-mux
Thread-Index: AQHQz1VVWzrNLwNmjUSvQIGN1uVQpZ39Df+g
Date: Wed, 05 Aug 2015 08:12:34 +0000
Message-ID: <>
References: <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_7594FB04B1934943A5C02806D1A2204B348E8E9FESESSMB209erics_"
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFuphkeLIzCtJLcpLzFFi42KZGfG3Rrf46MFQg32zhCz+tP5itFj7r53d 4tP5LkYHZo/WZ3tZPZYs+ckUwBTFZZOSmpNZllqkb5fAlfHk9yTWgnmXGSvOHT/C1MB45Sxj FyMnh4SAicT8dV/YIWwxiQv31rN1MXJxCAkcZZRY3bWYFcJZxCjxaO0DoCoODjYBC4nuf9og DSIChRKPG7+DDWIWMJD4e+I6mC0sUCVxcN59VoiaaokHp66zQ9hGEp3PP4LFWQRUJJb9uscC YvMK+Eo0/2pngdh1glmic/88sCJOgViJp7/PMYPYjEDXfT+1hglimbjErSfzmSCuFpBYsuc8 M4QtKvHy8T9WCFtRYufZdmaI+nyJSxOeMEEsE5Q4OfMJywRG0VlIRs1CUjYLSdksoJeZBTQl 1u/ShyhRlJjS/ZAdwtaQaJ0zlx1ZfAEj+ypG0eLU4uLcdCNjvdSizOTi4vw8vbzUkk2MwOg7 uOW37g7G1a8dDzEKcDAq8fAq5B0MFWJNLCuuzD3EKM3BoiTOO2NzXqiQQHpiSWp2ampBalF8 UWlOavEhRiYOTqkGxu62y4XrW0u56ub0XHxxhfk17zH7T+u2zN5bYW5n+zDwwxNLP4mpyVwn Poe2Ve0tEjv/yvzzj3VL/AWt5hue9flqnLOqUFzzevvbH4oKDfNEY052fj51bfN5rgmSP+K2 Klm7nBKY+PNZxaRdO0/dEHjF9HnpjNMxztJnbMWv7ezPKtu8jLtK4LASS3FGoqEWc1FxIgA8 UH6XnwIAAA==
Archived-At: <>
X-Mailman-Approved-At: Tue, 11 Aug 2015 10:49:32 -0700
Cc: " (" <>
Subject: Re: [TLS] [rtcweb] Number of DTLS sessions/DTLS connections; RE: What the gateway draft should say about mux/non-mux
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 05 Aug 2015 08:12:41 -0000


We shall not make RFC 5764 corrections in the RTCWEB specs.



From: rtcweb [] On Behalf Of Schwarz, Albrecht (Albrecht)
Sent: 5. elokuuta 2015 11:04
To: <>
Cc: (
Subject: [rtcweb] Number of DTLS sessions/DTLS connections; RE: What the gateway draft should say about mux/non-mux

Roman, Bernard,
right, RFC 5764 is too vague on that aspect. Thanks for confirming the number of DTLS sessions, which is inline with our understanding.
Would appreciate if this could be somewhere fixed in an rtcweb draft due to significant side effects.
This topic is also an ongoing FAQ.

The most simple case is given by a scenario with usage of bundling plus usage of RTP/RTCP transport multiplexing, leading to a single DTLS session/DTLS connection, which could be then also shared for WebRTC data.

Both capabilities are mandated in the rtp usage draft:
=> bundling
=> RTP/RTCP transport multiplexing

Now, IF bundling is not used OR RTP/RTCP transport multiplexing is not used THEN there will be more than one DTLS session/DTLS connection (either 2 or 4 in case of audio & video).
Raising the question which DTLS connection is used for additional WebRTC data traffic? - Because
indicates the sharing option.
Would then be a 3rd (or 5th) self-contained DTLS session/DTLS connection for WebRTC data traffic?

Add explicit text to clause
about (in red), something like:

   WebRTC implementations MUST support multiplexing of DTLS and RTP over
   the same port pair, as described in the DTLS-SRTP specification
   [RFC5764], section 5.1.2<>.  All application layer protocol payloads
   over this DTLS connection are SCTP packets.

   Note 1: There will be two DTLS sessions/DTLS connections when RTP/RTCP transport multiplexing is not applied. WebRTC data traffic could still share one of these DTLS connections … (“which one?”) … or There should be then a separate, self-contained DTLS session/DTLS connection established exclusively for WebRTC data.

   Note 2: There are similar considerations in case of bundling.

   Protocol identification MUST be supplied as part of the DTLS
   handshake, as specified in [I-D.ietf-rtcweb-alpn<>].


Using (D)TLS terminology according to

From: Bernard Aboba []
Sent: Mittwoch, 5. August 2015 04:04
To: Roman Shpount
Cc: Asveren, Tolga; Christer Holmberg; Eric Rescorla; Schwarz, Albrecht (Albrecht); Rauschenbach, Uwe (Nokia - DE/Munich); <<>>
Subject: Re: [rtcweb] What the gateway draft should say about mux/non-mux

On Aug 4, 2015, at 16:33, Roman Shpount <<>> wrote:

Most of the people implement this wrong, since you need to create two DTLS sessions: one for RTP and another for RTCP. And then use different keys or possibly even encryption profiles for RTP and RTCP. I commonly see one session for RTP and keys negotiated there used for both RTP and RTCP, which is wrong.

[BA] Yes, that is only one of several common mistakes.  Unfortunately, RFC 5764 does not rule out all of these and the security documents are not crystal clear on how things must be done. It is much harder to mess up RTP/RTCP mux.  Given what I've seen so far, non-mux could become a support nightmare.