Re: [AVTCORE] Comments on draft-petithuguenin-avtcore-rfc5764-mux-fixes

"Paul E. Jones" <paulej@packetizer.com> Tue, 06 January 2015 03:59 UTC

Return-Path: <paulej@packetizer.com>
X-Original-To: avt@ietfa.amsl.com
Delivered-To: avt@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AF5F31A19EC for <avt@ietfa.amsl.com>; Mon, 5 Jan 2015 19:59:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.002
X-Spam-Level:
X-Spam-Status: No, score=-1.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_ALL=0.8, DKIM_SIGNED=0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_DKIM_INVALID=0.01, T_RP_MATCHES_RCVD=-0.01] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fMUTKF2d0s6S for <avt@ietfa.amsl.com>; Mon, 5 Jan 2015 19:59:27 -0800 (PST)
Received: from dublin.packetizer.com (dublin.packetizer.com [75.101.130.125]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EF0661A07BC for <avt@ietf.org>; Mon, 5 Jan 2015 19:59:26 -0800 (PST)
Received: from [192.168.1.20] (cpe-098-027-048-015.nc.res.rr.com [98.27.48.15]) (authenticated bits=0) by dublin.packetizer.com (8.14.5/8.14.5) with ESMTP id t063xHol032541 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO); Mon, 5 Jan 2015 22:59:17 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=packetizer.com; s=dublin; t=1420516757; bh=iLAotHzDP1TCkLTyKhGU/Nxn1FN3Zh8IPpwAQekkyIs=; h=From:To:Subject:Cc:Date:Message-Id:In-Reply-To:Reply-To: Mime-Version:Content-Type:Content-Transfer-Encoding; b=uZ8uxQ2kyydhTE5cbr6rPazS8HP0ElKY4KTJ6GsIFZg1mTAE8zuV4eM9muW3I4x7O Z5aOhT/WESx+zgGf9vEPEnbwKKFcurT3I3u68pnasN61tHUxm3jhcO0kNXFoigSGyD TNhxTrtF/ZyK6jupowTgUmcUaIsw4VbLIhqRxhhc=
From: "Paul E. Jones" <paulej@packetizer.com>
To: Colin Perkins <csp@csperkins.org>
Date: Tue, 06 Jan 2015 03:59:34 +0000
Message-Id: <em92119b83-b564-44c1-a334-2db66ed4dc9f@sydney>
In-Reply-To: <F86983B9-4022-4971-BEA7-3EFE995C496C@csperkins.org>
User-Agent: eM_Client/6.0.21034.0
Mime-Version: 1.0
Content-Type: text/plain; format="flowed"; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: http://mailarchive.ietf.org/arch/msg/avt/mTcg5YGJFIXuYB93FMdF9UwKNvA
Cc: Marc Petit-Huguenin <marc@petit-huguenin.org>, "avt@ietf.org WG" <avt@ietf.org>
Subject: Re: [AVTCORE] Comments on draft-petithuguenin-avtcore-rfc5764-mux-fixes
X-BeenThere: avt@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: "Paul E. Jones" <paulej@packetizer.com>
List-Id: Audio/Video Transport Core Maintenance <avt.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/avt>, <mailto:avt-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/avt/>
List-Post: <mailto:avt@ietf.org>
List-Help: <mailto:avt-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/avt>, <mailto:avt-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 Jan 2015 03:59:30 -0000

  Colin,

Thanks for informing me of that. There is a difference in what is 
proposed there vs. what I propose below. The shim in the draft makes 
that first word ("Session ID Layer") look like an RTP packet. Depending 
on the value of the "reserved" bits, this could cause a conflict with 
other protocols already multiplexed. But, I can appreciate that this 
could be addressed easily.

Clearly, I wasn't aiming to have something that resembles an RTP packet, 
since other protocols being multiplexed don't look like them, either. 
There is already a multiplexing layer in stacks to handle DTLS, STUN, 
and RTP packets. I wanted something that would be one more addition that 
could be more generic.

I guess the important question is why the WG wasn't keen on the idea? 
Was this perhaps presented just a little early? I can already see some 
utility in multiplexing multiple DTLS connections, which is presently 
not possible. And, I'm sure there will be other protocols in the future. 
So, I'm wondering if we ought to revisit this topic. Is that even an 
option or is the door closed on this topic?

Paul

------ Original Message ------
From: "Colin Perkins" <csp@csperkins.org>
To: "Paul E. Jones" <paulej@packetizer.com>
Cc: "avt@ietf.org WG" <avt@ietf.org>; marcph@getjive.com
Sent: 12/23/2014 4:45:38 AM
Subject: Re: [AVTCORE] Comments on 
draft-petithuguenin-avtcore-rfc5764-mux-fixes

>Paul,
>
>I agree that some sort of explicit demultiplexing shim would solve a 
>lot of problems, and would have addressed many of the signalling issues 
>WebRTC has exposed in this space. Our proposal was 
>draft-westerlund-avtcore-transport-multiplexing-07. The working group 
>didn’t seem keen on the idea, however.
>
>Colin
>
>
>
>
>On 20 Dec 2014, at 02:17, Paul E. Jones <paulej@packetizer.com> wrote:
>
>>  AVT,
>>
>>  While the issues raised in the rfc5764-mix-fixes draft are valid, I'm 
>>curious if consideration has been given to address multiplexing more 
>>generally? Years ago, if anyone suggested multiplexing STUN, DTLS, 
>>TURN, along with RTP and RTCP, it wouldn't have been met with much 
>>enthusiasm. Now, we are multiplexing everything over a single port. I 
>>appreciate the reason, but it feel like this is a delicate balancing 
>>act and it imposes restrictions on existing protocols and will impose 
>>restrictions on future protocols to allow this model to continue 
>>as-is.
>>
>>  Since multiplexing over a single port is now considered legitimate, 
>>why not allocate a code point (e.g., 0x04) to be one dedicated for 
>>multiplexing? I'm not suggesting we change what is already defined, 
>>but rather to introduce a new code point explicitly intended to 
>>facilitate multiplexing in such a way as to avoid having the delicate 
>>balancing act of ensuring that values do not conflict. Such a scheme 
>>could also be used to allow for multiple instances of the same 
>>protocol (e.g., multiple DTLS connections) to be multiplexed over the 
>>same port. Taken to an extreme, it might be possible to allow multiple 
>>RTP sessions to be multiplexed over the same port. (I'm not suggesting 
>>we go that far, but having that kind of flexibility would not hurt.)
>>
>>  My thinking is that if the first octet is 0x04, the receiver will 
>>then look at the following two octets to determine how to handle the 
>>packet. These two octets could be sub-divided into IANA-assigned 
>>protocol identifiers and dynamically allocated values. Basically, we 
>>would have this:
>>
>>      
>>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>>      | 0x04 | protocol_identifier | muxed data follows ...
>>      
>>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>>
>>  When the next protocol to be multiplexed is defined, we could 
>>statically allocate a protocol_identifier value for the protocol. We 
>>could also define SDP syntax that would allow these values to by 
>>advertised so that protocols could be safely muxed even without a 
>>static allocation. So, if there was a desire to have two WebRTC Data 
>>Channels, for example, one (or both) might be multiplexed using this 
>>scheme. Perhaps all packets related to the first might be identified 
>>by 0x048001 and the other might be identified by 0x048002. You can 
>>imagine how the protocol_identifiers 0x8001 and 0x8002 could be 
>>advertised in SDP easily enough. DTLS is already used for two entirely 
>>different purposes (DTLS-SRTP and WebRTC Data Channels), which forces 
>>a violation of RFC 5764 Section 5.1.1. For that and other reasons, I 
>>can see benefit in multiplexing DTLS-SRTP and the WebRTC Data Channel 
>>(SCTP/DTLS) as two DTLS sessions.
>>
>>  Has there been discussion on this or is there interest in this 
>>approach?
>>
>>  Paul
>>
>>  _______________________________________________
>>  Audio/Video Transport Core Maintenance
>>  avt@ietf.org
>>  https://www.ietf.org/mailman/listinfo/avt
>
>
>
>--
>Colin Perkins
>https://csperkins.org/
>
>
>
>