Re: [rtcweb] #13: Transport of DATA_CHANNEL_OPEN

Peter Thatcher <pthatcher@google.com> Wed, 17 April 2013 15:35 UTC

Return-Path: <pthatcher@google.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 DB5D921E8047 for <rtcweb@ietfa.amsl.com>; Wed, 17 Apr 2013 08:35:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.976
X-Spam-Level:
X-Spam-Status: No, score=-102.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-1, 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 zfKpovYjvm+9 for <rtcweb@ietfa.amsl.com>; Wed, 17 Apr 2013 08:35:14 -0700 (PDT)
Received: from mail-pa0-f53.google.com (mail-pa0-f53.google.com [209.85.220.53]) by ietfa.amsl.com (Postfix) with ESMTP id 7F8D721F8E6E for <rtcweb@ietf.org>; Wed, 17 Apr 2013 08:35:14 -0700 (PDT)
Received: by mail-pa0-f53.google.com with SMTP id bh4so981027pad.40 for <rtcweb@ietf.org>; Wed, 17 Apr 2013 08:35:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=Dl/rAg9notSv+c+vzI+QqWYQxHuOYvd3jG4ZOFlfH7w=; b=CpNyQrD+9rQt27KRaTi5uvmD70xBZdCWufcbMqr0vcEW+iBGmnXd1VN+B5rd4NtEHv hLIXSq1fb4dvDBHLhShjBm5egofEIIDR69vrGOzS6DLKLmNdBBe19urglmBccYwLNAyO tc+a5NOzkwN1ja/XepatLcMZ/KMI50zYIDeOqTcx/AxIWtSgN1lknUJiVMXdk6091kgE 9oldQ1qD8YcTOnor6mKwqxR/yj8VCkBu+H9+3IL6MPgxPVn1rBZuMV+hUHOJF7arPSmf 1mkmv4Lnl1i9ePLPEt3CEy8s6+BYbD9KTywQFZ02jMkpHs6sf2d0zDA+yOA86o+IBI8s ReBQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:x-gm-message-state; bh=Dl/rAg9notSv+c+vzI+QqWYQxHuOYvd3jG4ZOFlfH7w=; b=JetfYiwkzLQ+tsSuHi42RA0Qm/hDBVA/m+Hdmx5WZmIf+Q2gwe1txytcGCIhL6CN1q S7e/jiecMOEBMw8q6cvyWlkF+UQ2hg4z4DiNtuN2uohZZWPHqHPFeovGhNVdUv6E2Q4G TPQrguCn0MOiD2q7cQ3Z1ayEc+IpN3ObLs9/UKqJ1lvRowA1pmtKs0PJhTtTvBwgTfgP baLHcA/WebtYK06mSNK+YXGbt6S5ABfz6IlyRffYiNXDqDvcOVvW5yje7/UkPgvf0YMH h0c0Xz230Tn0ILqhR5fJg01UMlqzjVsrTIjHkWVsaSJ/W1F/a01oLRrE5y3+GDU+LGUR //kw==
X-Received: by 10.68.198.69 with SMTP id ja5mr9818289pbc.183.1366212914141; Wed, 17 Apr 2013 08:35:14 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.66.228.138 with HTTP; Wed, 17 Apr 2013 08:34:34 -0700 (PDT)
In-Reply-To: <CABkgnnVaTOLa-hs7AtEgaTk7eq00bEkCY+_8L96Y8pooqybBxA@mail.gmail.com>
References: <066.3120a55540cacaa74ee5fda0b5273a48@trac.tools.ietf.org> <516CE3EC.2050804@jesup.org> <CABkgnnVaTOLa-hs7AtEgaTk7eq00bEkCY+_8L96Y8pooqybBxA@mail.gmail.com>
From: Peter Thatcher <pthatcher@google.com>
Date: Wed, 17 Apr 2013 08:34:34 -0700
Message-ID: <CAJrXDUFgxLT3-1HehKbg5byzifFi4Obe3XW9G4sbWRbnU+Hi1A@mail.gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Content-Type: multipart/alternative; boundary="047d7bdc1b5a6f6d2404da903b39"
X-Gm-Message-State: ALoCoQmKGio6ZpaEnNX0eQvpQ4LZ3sPtE9YKULXGqUCoVI7HJyI6QHKjj/z3kUGXKY2303s/FzIKeikxyscvGpi3vTkXXEGrOfMvb/N0SEYzsrilEyVw7OFRDOUeZDLDNiNQ1SwZXFDeHAQTnkvmq8R1FkLVNPAK1kZfxaZ4+XQn3qB/t+UW3orTcBPx/6awowD+hPaFclGe
Cc: Randell Jesup <randell-ietf@jesup.org>, "rtcweb@ietf.org" <rtcweb@ietf.org>
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 15:35:16 -0000

A reminder:  If the JS specifically sets the SID when creating a data
channel, then it can receive data without getting an OPEN message.

I agree with Martin and Randell that the OPEN message must be sent
reliably.

I agree with Martin about in-order-ness and that the real question, if I
can put it in my own words, is: 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)?

No matter what we specify as the correct behavior, the browser still has to
deal with this scenario, at the very least because of possibly erroneous or
even malicious senders.

It sounds like the answer appears to be "buffer until the OPEN".  But there
has to be a limit to how much we buffer.  What if the remote peer
accidentally or maliciously sends us 1GB of data and never sends an OPEN
message?  Then what does the browser do?


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?





On Tue, Apr 16, 2013 at 9:11 AM, Martin Thomson <martin.thomson@gmail.com>wrote:

> On 15 April 2013 22:38, Randell Jesup <randell-ietf@jesup.org> wrote:
> > I disagree (though I suppose you don't *need* in-order, but it's a good
> > idea).
>
> In order delivery is not going to change anything.  It's neither good
> nor bad, it's straight up useless.  It's the ordering of the next
> packet that matters.  If that is marked for out of order delivery, it
> can be delivered to the application (in this case, I'm talking about
> the browser) before the open message.  Thus, the browser can (and
> will) receive messages prior to getting an open.
>
> The only safe assumption it can make at this point is that the channel
> is configured for out of order delivery.  Better to be silent about in
> order delivery and leave that for buffering.
>
> I do agree with you about reliability.  If you care about this message
> enough to have it sent, then you probably want retransmission.
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>