Re: [rtcweb] DataChannels API and external negotiation

"piranna@gmail.com" <piranna@gmail.com> Wed, 03 April 2013 18:37 UTC

Return-Path: <piranna@gmail.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 14D5D21F8BB7 for <rtcweb@ietfa.amsl.com>; Wed, 3 Apr 2013 11:37:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
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 NePqp-1r9gL1 for <rtcweb@ietfa.amsl.com>; Wed, 3 Apr 2013 11:37:24 -0700 (PDT)
Received: from mail-wg0-f54.google.com (mail-wg0-f54.google.com [74.125.82.54]) by ietfa.amsl.com (Postfix) with ESMTP id 2100D21F8BE0 for <rtcweb@ietf.org>; Wed, 3 Apr 2013 11:37:23 -0700 (PDT)
Received: by mail-wg0-f54.google.com with SMTP id a12so1906989wgh.33 for <rtcweb@ietf.org>; Wed, 03 Apr 2013 11:37:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:content-transfer-encoding; bh=ZOdvarbxYmjk6gQ8mSoWB+1/5UyZuKd9oC5jfE80peM=; b=r0qbfiSnO4NC6aQrhZXd0ReCDONDIxYuudm8eDmyQ6ixkkVEMwbAQJGE451fDaFDXh 7iZOZG67yDSZOTMV33HkIhnsmPDmmqJqs2jFn80biJKoY8LGNZRr8LC/no0bQw9UeSW7 nUOhh3QlmoSHoslInuVw93aAblxXyU7Ttj4jvTf7FR8DVgV8ZuzzddrO/cIGTAM76rTr juMlkAzq0Ecd7/QkeoYN4ifIqPYi9h6e3Wlir6oUpBc+99HnSXonuCEeiAYBtcMpbiW9 UbASPd3Gm08ihDo3B9qcS10kmzqA5ygQ7OX78oElwIaXaXKtN8+hDcsYZdWlG3l4A5hu Pm1A==
X-Received: by 10.180.108.106 with SMTP id hj10mr11605004wib.0.1365014243335; Wed, 03 Apr 2013 11:37:23 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.194.219.135 with HTTP; Wed, 3 Apr 2013 11:37:03 -0700 (PDT)
In-Reply-To: <515C56F6.8070308@jesup.org>
References: <5158F0FC.3070104@jesup.org> <CABkgnnWBR5SqOF6Ygp7AaEyG19yoG88hpUs4_mWbv59dyCm1gA@mail.gmail.com> <5159E6F9.4070808@jesup.org> <CABkgnnWe-+80WxD8==CxDhAu5+MEa-Tqi7Pr1x8sgkUkE9Z09Q@mail.gmail.com> <CAJrXDUGm-LuddkaUgMUp-p8-Bj-B-zBcqomHcDy+jm6WJtT9wQ@mail.gmail.com> <515C5688.4070004@jesup.org> <515C56F6.8070308@jesup.org>
From: "piranna@gmail.com" <piranna@gmail.com>
Date: Wed, 3 Apr 2013 20:37:03 +0200
Message-ID: <CAKfGGh3vSftcsxdNwky80ozKYVQ4VvyO-mmbq8AOQeWawLbsLQ@mail.gmail.com>
To: Randell Jesup <randell-ietf@jesup.org>
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>, "public-webrtc@w3.org" <public-webrtc@w3.org>
Subject: Re: [rtcweb] DataChannels API and external negotiation
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, 03 Apr 2013 18:37:25 -0000

I agree with Peter (all the parameter in a dictionary), also with the
one about to put the label inside it. Also this way, it would be the
label optional too and be able to identify the DataChannel this way
using the other parameters, as for example the protocol.

2013/4/3 Randell Jesup <randell-ietf@jesup.org>rg>:
> Adding W3 list back ("Reply List" replies to one list in TB), since this
> really is a W3 item anyways.
>
> On 4/3/2013 12:19 PM, Randell Jesup wrote:
>>
>> On 4/3/2013 12:05 PM, Peter Thatcher wrote:
>>>
>>> I think moving protocol into the dictionary is a good idea.   In fact,
>>> I'd like to see label move there as well, but that's probably asking
>>> too much.
>>>
>>> And now for a little of my own bikeshedding:
>>>
>>> I don't understand way we have "stream" and "preset", since you can
>>> only set "stream" if "preset" is true.  Why not just make the rule "if
>>> stream is set, no in-band message is sent", and get rid of "preset"
>>> altogether?  I really don't like the word "stream" sneaking in, since
>>> it's so overloaded (MediaStream, RTP Stream, etc).  I'd prefer "sid"
>>> or just "id".
>>
>>
>> The reason was that I wanted a way to have the system select a stream to
>> use (that you can then communicate externally to the other side); this
>> avoids any chance of a collision with existing streams. If this is seen as
>> not useful, then we can collapse it to a single entry.   (I also toyed with
>> using stream 65535 as a flag to tell the system to allocate one; that seemed
>> too hacky.)
>>
>> Since this option was almost solely for those who understand the
>> underlying SCTP-ness of this, I used "stream", but I'm fine with "streamId"
>> or "id" (or "index" might be better than "id", which sounds like a label of
>> some sort).  I dislike "sid" for similar reasons to disliking "rtx".
>>
>>
>>> I like the idea that reliable+ordered is the default, and both
>>> reliability and ordered can be set independently.  I also prefer
>>> "ordered" over "outOfOrderAllowed", and along with that I like the
>>> idea of a "reliable" flag that, if false, is the equivalent of either
>>> maxRetransmitNum:0 or maxRetransmitTime:0.  Finally, I think
>>> "maxRetransmitTime" should make its units clear, perhaps calling it
>>> "maxRetransmitMillis", and "maxRetransmitNum" could be shortened to
>>> simply "maxRetransmits".
>>
>>
>> Those seem reasonable (I'd use Millisec/MilliSec or perhaps MS instead of
>> Millis -- how are millisecond time values in other HTML5 specs described?).
>> On "reliable:false" - is this just a shorthand for "ordered:false,
>> maxRetransmits:0"?  If so, I'm probably ok with it - it's redundant, but
>> makes it easy to use/read for a common case.
>>
>>
>>>
>>> So the dictionary for my bikeshed would be:
>>>
>>> dictionary DataChannelInit {
>>>    DOMString protocol;
>>>    unsigned short id;
>>>    boolean ordered;
>>>    boolean reliable;
>>>    unsigned short maxRetransmits;
>>>    unsigned short maxRetransmitMillis;
>>> };
>>
>>
>
>
> --
> Randell Jesup
> randell-ietf@jesup.org
>
>



-- 
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un
monton de sitios diferentes, simplemente escribe un sistema operativo
Unix."
– Linus Tordvals, creador del sistema operativo Linux