Re: [rtcweb] Open data channel issues
Justin Uberti <juberti@google.com> Mon, 03 March 2014 17:54 UTC
Return-Path: <juberti@google.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D63091A00E4 for <rtcweb@ietfa.amsl.com>; Mon, 3 Mar 2014 09:54:57 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.925
X-Spam-Level:
X-Spam-Status: No, score=-1.925 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.547, SPF_PASS=-0.001] autolearn=ham
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 SuSSlV3HXj3K for <rtcweb@ietfa.amsl.com>; Mon, 3 Mar 2014 09:54:54 -0800 (PST)
Received: from mail-ve0-x231.google.com (mail-ve0-x231.google.com [IPv6:2607:f8b0:400c:c01::231]) by ietfa.amsl.com (Postfix) with ESMTP id 4D3211A02FC for <rtcweb@ietf.org>; Mon, 3 Mar 2014 09:54:52 -0800 (PST)
Received: by mail-ve0-f177.google.com with SMTP id sa20so3972549veb.36 for <rtcweb@ietf.org>; Mon, 03 Mar 2014 09:54:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=6dDHQjLjw+QvuFcye9axXTg+UZIRHMQa98WKtai2uVk=; b=nEjsWStUuzqKA9mV2d/icU+78YFmefKfSl5de3fe+Q6WFJDVgGvPFlD8LG8JVRktRk +1oEJOVRAKAskOgtXjdnsjXStbARVUnVnxEL3T390cr3vN8FaNO9Yj++maH9dUutWco9 xKF2iITjiIQgNTHcpy4pZIVQsqaZfjbtz7w8KIfm8CD9ay7EKpj7Pf7yfIVDVaGEhNVO TMm2P7aatc6qjwuBNG2oGnJ7cJ1m07FFIwnMN6hbq2ETdnGPrUwc1HCOlguzNQtIVQkN jvr4poYyoCE0ky7N7nv833HdrUqDv9zXprvaPJnNXKOwrWUHupPWRmtsah/xLyE28cKV FcVA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=6dDHQjLjw+QvuFcye9axXTg+UZIRHMQa98WKtai2uVk=; b=dbQs8C7tZtlVfR65wXtcWliDNseKNtFYQo3fuzXSjJ75ejuQkpbUy15nQ03redoVGg FckfepoRdjmqEYy2e1+NlklBIJKtQsuFkBzYnpUZWQMIefg9I8VUtcnJqi1TV94vgL5c 36JP75d3irI3u1wW6fmiy8zXCcFKcAjJTkOjP1j9bXdr19fMRoY930bbi986XS8KlBwr aFV5BNqkdC1Qlot7v9yBCg//BZxBFbOJXouCo0A34ZSMPdrZ1+de5OlV7/dm/vORWG9Q dUrkmF4ngJm4pmwC1MGRrWXNMQhei4l5FZcL5Vpjn2vu6Qe11/IS09Kg9gxOfmmau55V 9YBA==
X-Gm-Message-State: ALoCoQlMQs4L0mDS+gH+a9FEXgAfKDeLbDUtaVivhRwCGBx6/qcprw9NcGrZWaJst8pCg40UYCNNI+5lDMks+aQh6yXID0m4gGMLv9x88teGSpVuVK+nQQLxvbk3NLN1OZYl0G9/LEFD+xgVaOLj2hnqEhHXtbMeFlkPBlN1tgmHu9aPwYup/qF9aI9wXS5o2KUM0wTnnQXC
X-Received: by 10.52.30.230 with SMTP id v6mr591251vdh.6.1393869289132; Mon, 03 Mar 2014 09:54:49 -0800 (PST)
MIME-Version: 1.0
Received: by 10.52.89.170 with HTTP; Mon, 3 Mar 2014 09:54:28 -0800 (PST)
In-Reply-To: <53149F0C.6070001@jesup.org>
References: <31B9253D-E826-4D07-A8A1-1B062B50F163@lurchi.franken.de> <530D9CC5.5080508@ericsson.com> <5312FBBC.5080006@jesup.org> <CAOJ7v-2GHt37u8raWDKquNFLCjSv-ptP0YGojPwuLv02da_m1Q@mail.gmail.com> <5313EC0D.9030808@jesup.org> <CAOJ7v-3L5_V2wuwVLKpz61VHey7yx3LnG_xrPLb5W+6DOLiEJw@mail.gmail.com> <53146B2C.8080008@jesup.org> <CABkgnnV1BdAMvFqGq8xiL0Zu28aZBCAdPwZB8whpMeXrCD7AHQ@mail.gmail.com> <53149F0C.6070001@jesup.org>
From: Justin Uberti <juberti@google.com>
Date: Mon, 03 Mar 2014 09:54:28 -0800
Message-ID: <CAOJ7v-0xSq2xvF_5Do-R4SG6yAVNdqELwRvt_VBU69ir6nHhGQ@mail.gmail.com>
To: Randell Jesup <randell-ietf@jesup.org>
Content-Type: multipart/alternative; boundary="bcaec51d2eb8d7aa7704f3b77ba6"
Archived-At: http://mailarchive.ietf.org/arch/msg/rtcweb/xRXXiE8Fr-9tZJr174zUmjAeImg
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Open data channel issues
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
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: Mon, 03 Mar 2014 17:54:58 -0000
On Mon, Mar 3, 2014 at 7:26 AM, Randell Jesup <randell-ietf@jesup.org>wrote: > On 3/3/2014 8:53 AM, Martin Thomson wrote: > >> On 3 March 2014 03:44, Randell Jesup <randell-ietf@jesup.org> wrote: >> >>> Hopefully so, though I hate forcing apps to include a bunch of code for >>> backwards compat for a year or two (and many won't, or won't test it, >>> etc). >>> That hurts the feature. And today no one has ndata. >>> >> Since WebRTC is behind a flag, I don't find this particularly >> convincing. We can implement ndata. >> > > I don't understand the "behind a flag" comment; an app using DataChannels > for anything variable-length (unless with low bounds) must care until all > old implementations are gone. Since we already have DataChannel impls in > ESR releases, there's no avoiding this if we rely on that (even worse, > since this undefined property doesn't exist yet (let alone in ESR), the app > has to handle that case as well). Or add browser and version sniffing to > all the apps... > > > I think that we could even remove our temporary length restriction. >> > > Sure, we can. This will reduce or eliminate source changes for apps that > don't care about interleaving, which is a plus. It will cause total stall > of all other DataChannels during transmission of one large message, which > some applications would be ok with, and others would not, and so those that > would not would have to somehow deal with it. > > So, applications that are ok with blocking other channels with large sends > could be allowed to send arbitrary-sized messages, and receivers would be > required to receive them (without chunking). Applications that do care > about other channels would need to restrict their sending size when ndata > isn't available at both ends. We really only need to know if ndata is > available and expose that fact to the application, not a receive size from > the receiver. > > So this plan would be: > 1) We expose ndata being agreed to (currently == false); > 2) We turn off the PPID chunking in Firefox (and live with ESR24 and > current revs of Firefox not being compatible; see 2a) > 2a) we make sure the app can detect if the local client has the ndata > property at all (supports this solution). > 3) We make sure Chrome and Firefox both implement both EOR sending and EOR > reception and unlimited (or virtually) send/receive sizes. > > For bonus points, on EOR reception of a blob, spool it to disk in the > browser (if over some limit perhaps), and on EOR send of a blob, optimize > it to avoid send-side memory hits and performance issues. > > This will break large send/receive between Chrome and current/older > Firefox - but those are broken today by Chrome not implement PPID chunking > and Firefox doing so. Firefox can still fall back on PPID chunking if it > knows it's talking to another Firefox until we decide that this no longer > matters. I could be wrong, but I think Chrome doesn't support EOR sending > currently; I know Firefox doesn't since we were using PPID chunking, so > we'd need to add that. > > Once ndata is supported, all will work well, and applications that didn't > care about interleaving don't have to change, and those that do will > trigger on ndata and switch (and they can test ndata==true mode reasonably > well by forcing it in the app, since send(large) will work). While I agree with the final outcome of #3, I don't think going down the 1/2/2a path makes sense, since it leads to an additional intermediate state over the current situation. i.e. we end up with 3 states: a) today: max safe send is 16 KB b) soon: ndata exists, but large sends lock out other sends c) final: ndata exists, and large sends work OK I would rather maintain a) or similar for now (using the max-message-size param) and jump to c) when we have the right stuff in SCTP. > > > -- > Randell Jesup -- rjesup a t mozilla d o t com > > _______________________________________________ > rtcweb mailing list > rtcweb@ietf.org > https://www.ietf.org/mailman/listinfo/rtcweb >
- [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Magnus Westerlund
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Paul Kyzivat
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Paul Kyzivat
- Re: [rtcweb] Open data channel issues Christer Holmberg
- Re: [rtcweb] Open data channel issues Paul Kyzivat
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Justin Uberti
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Stefan HÃ¥kansson LK
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Justin Uberti
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Justin Uberti
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Justin Uberti
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Karl Stahl
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Justin Uberti
- Re: [rtcweb] Open data channel issues Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Michael Tuexen
- Re: [rtcweb] Open data channel issues Randell Jesup
- Re: [rtcweb] Open data channel issues Martin Thomson
- Re: [rtcweb] Open data channel issues Makaraju, Maridi Raju (Raju)
- Re: [rtcweb] Open data channel issues Makaraju, Maridi Raju (Raju)