Re: [rtcweb] #13: Transport of DATA_CHANNEL_OPEN

Harald Alvestrand <harald@alvestrand.no> Wed, 17 April 2013 21:58 UTC

Return-Path: <harald@alvestrand.no>
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 864021F0D12 for <rtcweb@ietfa.amsl.com>; Wed, 17 Apr 2013 14:58:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.599
X-Spam-Level:
X-Spam-Status: No, score=-110.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 rmzUlRqMZ0Cl for <rtcweb@ietfa.amsl.com>; Wed, 17 Apr 2013 14:58:19 -0700 (PDT)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id B72481F0D10 for <rtcweb@ietf.org>; Wed, 17 Apr 2013 14:58:19 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id 8153C39E11D for <rtcweb@ietf.org>; Wed, 17 Apr 2013 23:58:18 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at eikenes.alvestrand.no
Received: from eikenes.alvestrand.no ([127.0.0.1]) by localhost (eikenes.alvestrand.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nbYEfW10BR-z for <rtcweb@ietf.org>; Wed, 17 Apr 2013 23:58:17 +0200 (CEST)
Received: from [IPv6:2001:470:de0a:27:8d75:2a83:3d29:f267] (unknown [IPv6:2001:470:de0a:27:8d75:2a83:3d29:f267]) by eikenes.alvestrand.no (Postfix) with ESMTPSA id A8FF139E116 for <rtcweb@ietf.org>; Wed, 17 Apr 2013 23:58:17 +0200 (CEST)
Message-ID: <516F1AF9.2080301@alvestrand.no>
Date: Wed, 17 Apr 2013 23:58:17 +0200
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130329 Thunderbird/17.0.5
MIME-Version: 1.0
To: rtcweb@ietf.org
References: <066.3120a55540cacaa74ee5fda0b5273a48@trac.tools.ietf.org> <516CE3EC.2050804@jesup.org> <CABkgnnVaTOLa-hs7AtEgaTk7eq00bEkCY+_8L96Y8pooqybBxA@mail.gmail.com> <CAJrXDUFgxLT3-1HehKbg5byzifFi4Obe3XW9G4sbWRbnU+Hi1A@mail.gmail.com> <CABkgnnXr85LZyJiSF+ok2KMS_xQnS0CE4VBq4PvEhBBscn2QZQ@mail.gmail.com>
In-Reply-To: <CABkgnnXr85LZyJiSF+ok2KMS_xQnS0CE4VBq4PvEhBBscn2QZQ@mail.gmail.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [rtcweb] #13: Transport of DATA_CHANNEL_OPEN
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, 17 Apr 2013 21:58:20 -0000

I think I (on behalf of applications I'll be writing) am in the camp of 
"If I asked to be told what the incoming data channel was (by not 
registering to handle data without an OPEN), and didn't get told what it 
was, I don't want the data".

Perhaps provide a few buffers to handle packet reordering.
But beyond that: Throw the data away.

On 04/17/2013 08:46 PM, Martin Thomson wrote:
> On 17 April 2013 08:34, Peter Thatcher <pthatcher@google.com> wrote:
>> What does the browser do when it receives data
>> before an OPEN message for a SID that is not currently configured to receive
>> data (ie JS has not called create channel for that SID and we've not
>> received an OPEN for that SID)?
> This is the key.  Doubly so in light of:
>
>> A reminder:  If the JS specifically sets the SID when creating a data
>> channel, then it can receive data without getting an OPEN message.
> The only reasonable thing to do is to buffer data with an upper bound
> on time, size and number of messages.  When any of those limits are
> hit, then you need to do something.
>
>> I think at that point, we either have to drop data or fire an event up to JS
>> letting it know.  I would suggest that after some buffer limit N, the
>> browser may fire .ondatachannel even if an OPEN message is not received, and
>> then deliver buffered data through the channel given in that event.  The
>> only alternative seems to be to just drop the data without telling the JS.
>> Are there are any other alternatives I haven't thought of?
> I see the same two options: create a data channel with some default or
> inferred properties and fire events for the arrived messages, or
> complain loudly and chuck the messages away.
>
> I like the former, but we've violated expectations about consistency
> of channel properties.  And this time its our (as a browser, that is)
> fault, we were asked to do something and we failed to do it.  Packet
> loss happens and we didn't allow for it.
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb