Re: [rtcweb] RTCWeb Forking usecase [was RE: draft-kaplan-rtcweb-sip-interworking-requirements-00]

"Timothy B. Terriberry" <tterriberry@mozilla.com> Sun, 30 October 2011 21:00 UTC

Return-Path: <prvs=27757133b=tterriberry@mozilla.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 1C6D521F8AC3 for <rtcweb@ietfa.amsl.com>; Sun, 30 Oct 2011 14:00:12 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.307
X-Spam-Level:
X-Spam-Status: No, score=-1.307 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, MISSING_HEADERS=1.292]
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 JYlPr4SBVomu for <rtcweb@ietfa.amsl.com>; Sun, 30 Oct 2011 14:00:11 -0700 (PDT)
Received: from mxip0i.isis.unc.edu (mxip0i.isis.unc.edu [152.2.0.72]) by ietfa.amsl.com (Postfix) with ESMTP id 32BE221F8A4B for <rtcweb@ietf.org>; Sun, 30 Oct 2011 14:00:06 -0700 (PDT)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Ap4EANm5rU6sGgRS/2dsb2JhbABDqEeBfoFyAQEEAThAAQULCyEWDwkDAgECAUUTAQcCF4dnsiCJAgSIBpEiE4xS
X-IronPort-AV: E=Sophos;i="4.69,426,1315195200"; d="scan'208";a="287645518"
Received: from mr1a.isis.unc.edu (HELO smtp.unc.edu) ([172.26.4.82]) by mxip0o.isis.unc.edu with ESMTP; 30 Oct 2011 17:00:06 -0400
X-UNC-Auth-As: tterribe
X-UNC-Auth-IP: 69.181.137.38
Received: from [172.17.0.5] (c-69-181-137-38.hsd1.ca.comcast.net [69.181.137.38]) (authenticated bits=0) by smtp.unc.edu (8.14.4/8.14.3) with ESMTP id p9UL03T1008973 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for <rtcweb@ietf.org>; Sun, 30 Oct 2011 17:00:05 -0400 (EDT)
Message-ID: <4EADBAD3.5020804@mozilla.com>
Date: Sun, 30 Oct 2011 14:00:03 -0700
From: "Timothy B. Terriberry" <tterriberry@mozilla.com>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.15) Gecko/20101120 Gentoo/2.0.10 SeaMonkey/2.0.10
MIME-Version: 1.0
CC: rtcweb@ietf.org
References: <20111024224257.28459.65554.idtracker@ietfa.amsl.com> <6EB8679A-13D5-4AD7-97F2-BC35FC0966F0@acmepacket.com> <2E239D6FCD033C4BAF15F386A979BF51159C32@sonusinmail02.sonusnet.com> <CALiegfnVaZjh1K+brd180Z9Ufheau3v6OJe6Ejv8P7wzw6ROQw@mail.gmail.com> <2E239D6FCD033C4BAF15F386A979BF51159D7A@sonusinmail02.sonusnet.com> <4EAAF413.8030501@alvestrand.no> <2E239D6FCD033C4BAF15F386A979BF51159D7B@sonusinmail02.sonusnet.com> <247FFE2C-DB2C-4280-A219-BE1503662F92@acmepacket.com> <4EAB2657.7090609@jesup.org> <CAD5OKxu=3FvnUDV5m1TW8n+7D+B6ihp_g7TXKtJVaVW3gtiySQ@mail.gmail.com> <4EAC24A2.70401@alvestrand.no>
In-Reply-To: <4EAC24A2.70401@alvestrand.no>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [rtcweb] RTCWeb Forking usecase [was RE: draft-kaplan-rtcweb-sip-interworking-requirements-00]
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: Sun, 30 Oct 2011 21:00:12 -0000

>> I think the most encouraging response I got before on this list was
>> that the API should always produce the same list of ICE candidates for
>> a given Web browser session. Because of this, all the offers from the

I don't think this is possible, depending on what you mean by "web 
browser session". People's web browsers move around, change which 
networking device they're using, etc., at any time. At a minimum, you 
need some interface to raise an error and deal with the fallout when you 
require this behavior and it can't be provided. The PeerConnection 
factory/cloning solution could potentially give you that (it could 
simply fail if it can't use the same ICE candidates anymore).

>> WebRTC client would be the same and simultaneous forking can be
>> implemented by creating a new peer connection for each answer,
>> generating and discarding the offer (since it is the same as the offer
>> from the original peer connection in this session) and feeding a new
>> answer to it.
> I considered it when we discussed this last, but I'm not sure it works.

I'm confident it doesn't. Again, external cameras can be plugged in and 
unplugged, etc., by the user at any time, and these can change the 
capabilities exposed in the offer. This is also something you have to 
deal with, if you really rely on "same offer" behavior.

> If we support SDES, the offer also contains crypto keys. Reusing crypto
> keys for all created connections would be a huge security vulnerability.

I'm starting to come to the opinion that we shouldn't support SDES. If 
we're doing it just for interop with legacy, we'd get better interop 
with fewer headaches by supporting plain RTP. We'd have a distinction 
between the two that I could actually explain to users, and less chance 
of (unnoticed) downgrade attacks.