Re: [rtcweb] Data channel setup and signalling

Hadriel Kaplan <HKaplan@acmepacket.com> Wed, 16 November 2011 06:05 UTC

Return-Path: <HKaplan@acmepacket.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 84C5F1F0D3A for <rtcweb@ietfa.amsl.com>; Tue, 15 Nov 2011 22:05:35 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.176
X-Spam-Level:
X-Spam-Status: No, score=-2.176 tagged_above=-999 required=5 tests=[AWL=-0.177, BAYES_00=-2.599, J_CHICKENPOX_111=0.6]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id hFBYieaoyxkL for <rtcweb@ietfa.amsl.com>; Tue, 15 Nov 2011 22:05:31 -0800 (PST)
Received: from etmail.acmepacket.com (etmail.acmepacket.com [216.41.24.6]) by ietfa.amsl.com (Postfix) with ESMTP id 576401F0D37 for <rtcweb@ietf.org>; Tue, 15 Nov 2011 22:05:31 -0800 (PST)
Received: from MAIL2.acmepacket.com (10.0.0.22) by etmail.acmepacket.com (216.41.24.6) with Microsoft SMTP Server (TLS) id 8.2.254.0; Wed, 16 Nov 2011 01:05:30 -0500
Received: from MAIL1.acmepacket.com ([169.254.1.232]) by Mail2.acmepacket.com ([169.254.2.157]) with mapi id 14.01.0270.001; Wed, 16 Nov 2011 01:05:30 -0500
From: Hadriel Kaplan <HKaplan@acmepacket.com>
To: Randell Jesup <randell-ietf@jesup.org>
Thread-Topic: [rtcweb] Data channel setup and signalling
Thread-Index: AQHMpCW90X9x3EwGzUi50z9QwXcsSg==
Date: Wed, 16 Nov 2011 06:05:29 +0000
Message-ID: <CC7E43E9-3E7F-4C6A-8313-800663AEA5F3@acmepacket.com>
References: <4EC209EB.3080402@jesup.org>
In-Reply-To: <4EC209EB.3080402@jesup.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [216.41.24.34]
Content-Type: text/plain; charset="us-ascii"
Content-ID: <AC305CEBE586D14FA232F68526DBB60C@acmepacket.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: AAAAAQAAAWE=
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Data channel setup and signalling
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 16 Nov 2011 06:05:35 -0000

On Nov 15, 2011, at 1:42 AM, Randell Jesup wrote:

> The signalling discussion and how it touched on data channels got me thinking.
> 
> One open issue is how we define data channels, both in the "internal" case (no interop) and the federated case (which may have the same JS app or different ones at either end).

Well one question is if there should be two different ways for doing it to begin with. :)
I think it's obvious that from a practical perspective there'll be tons of web-app data-channel usage which will only be in the same WebRTC domain. But I don't see how we can honestly create a SDP media attribute to mean "void".

Months ago when I was arguing against putting SDP in the browser, I pointed out that using SDP means using SDP and being stuck with actually following SDP, including IANA registries, having to be *real* SDP which can go anywhere, etc.

Maybe we do something like:
  m=application 1234 UDP/DTLS/SCTP/APP *
  a=app-type:www.mydomain.com



> One solution is that all data channels are defined as m= lines.  They could be generic "m=data", or they could specify the data to be passed in the m= line.  For "public" message structures that might be used by different applications (an IM protocol, for example), one would specify that in some manner in the media description (perhaps via a MIME type).  This also implies that any addition or removal (or change to) a data channel requires a full replacement OFFER and ANSWER.  If we stick with the SDP requirement about never removing m= lines, then the OFFER size may become unbounded.

I'm not sure the above is a problem: you can re-use m-lines.

-hadriel