Re: Off-topic: making WebRTC work in practice (Re: a brief pondering)

Harald Alvestrand <harald@alvestrand.no> Sun, 05 April 2020 14:09 UTC

Return-Path: <harald@alvestrand.no>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C006E3A0A0C for <ietf@ietfa.amsl.com>; Sun, 5 Apr 2020 07:09:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_NONE=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 fdjLP6cm8B-9 for <ietf@ietfa.amsl.com>; Sun, 5 Apr 2020 07:09:16 -0700 (PDT)
Received: from mork.alvestrand.no (mork.alvestrand.no [158.38.152.117]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 047CD3A0A0B for <ietf@ietf.org>; Sun, 5 Apr 2020 07:09:15 -0700 (PDT)
Received: from [192.168.3.208] (unknown [82.194.207.93]) by mork.alvestrand.no (Postfix) with ESMTPSA id 02D0C7C5430 for <ietf@ietf.org>; Sun, 5 Apr 2020 16:09:12 +0200 (CEST)
Subject: Re: Off-topic: making WebRTC work in practice (Re: a brief pondering)
To: ietf@ietf.org
References: <fd6b7ee2-cdbe-14a1-0087-ce61282b22f6@lear.ch> <29D0DCA7-1D72-428F-A6DD-05511D90C039@cable.comcast.com> <31A798F0-9DE0-4231-A768-76BA9A1A2180@tzi.org> <E1FD746D-0BCD-4ECC-BB9B-75DFA05AA9DC@tzi.org> <C9836670-02D6-4A01-8BD2-9F7FDBC990E5@iii.ca>
From: Harald Alvestrand <harald@alvestrand.no>
Message-ID: <cce76641-a2d9-a3d6-4d59-55cf2ca31abe@alvestrand.no>
Date: Sun, 05 Apr 2020 16:09:10 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0
MIME-Version: 1.0
In-Reply-To: <C9836670-02D6-4A01-8BD2-9F7FDBC990E5@iii.ca>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/WMCZkpX4QaBSLbmRUhPu9lNX7AE>
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 05 Apr 2020 14:09:19 -0000

Since I've been part of almost every single one of the removals that 
Cullen refers to, it's no surprise that my perspective differs.

The push towards apps is, to my mind, mostly pushing towards *mobile* 
apps - they try to push users into the Android/IOS ecosystems because 
that's where most of the users are, and therefore most of the money is. 
On the desktop, the single vendor focusing near-exclusively on an app 
solution is Zoom.

Once you have a mobile-focused codebase, it is easy to come to depend on 
features (like, obviously, sending IP packets directly to your peer or 
other entities without going through WebRTC's protocol stack) that would 
be a security disaster if introduced into the Web ecosystem. (One can 
argue that they are a security disaster in the mobile-app ecosystem as 
well, but that's a different story.)

FWIW, the W3C has half a dozen extension documents to the WebRTC API.

That's where things are put while we try to make sure the core specs are 
in a state one can refer to as "stable" - which includes 
implementations, and yes, includes removing stuff that nobody's been 
able to show can be implemented in a browser. This is part of what the 
IETF process is supposed to do between "proposed standard" and 
"standard" (but rarely does).

The process of feature removal in no way blocks the implementation of 
new features. But the lack of a stable base specification is hampering 
(not blocking) the work of defining extensions.

Cluster 238 is eagerly awaited.

Harald


On 4/2/20 10:30 PM, Cullen Jennings wrote:
> Many of the things you need to do this were identified in developing WebRTC and put in specs. Many of them had the API in W3C specs that you need. But then the W3C marked them at risk because browser vendors did not implement them and removed them. Now if you write a patch to browser them implements them, they will not accept the patch because it is not in the spec.
>
> The net effect is what is possible in the browsers experience is just worse than what is possible with non browser clients (it did not need to be like this but it is). Because of this you see all the major meeting systems heavily push users towards using a downloaded client instead of the browser experience.
>
> The basic problem AFAIC is that at W3C, the browser have a defacto veto on anything so the API is not a negotiation between the the apps need and the browsers provide, it is more of a fait acompli of what Chrome is willing to provide. Anything chrome does not want to do, will effectively get removed from the spec because it will not have enough implementations. Once the app vendors realized that, most of them moved their focus outside of the browsers which is really unfortunate as the browsers protect the users from many security problems you are seeing today.
>
>> On Apr 1, 2020, at 5:53 AM, Carsten Bormann <cabo@tzi.org> wrote:
>>
>> In the university, a lot of WebRTC is using Jitsi as a tool.
>> This works mostly well, with occasional surprises.
>> What we could use now is a better way to diagnose these surprises.
>> This requires WebRTC knowledge that our IT people don’t have.
>> A WebRTC troubleshooting guide that I could point them to would be most helpful.
>> (Debugging and fixing Jitsi so it works reliably with both Firefox and Chrome would also help.)
>>
>> Grüße, Carsten
>>
>>
>>> On 2020-03-22, at 06:45, Carsten Bormann <cabo@tzi.org> wrote:
>>>
>>> On 2020-03-21, at 16:54, Livingood, Jason <Jason_Livingood@comcast.com> wrote:
>>>> what can this community (and similar/adjacent ones) do productively together to help
>>> The one thing that would be most useful for me right now would be a document with operational considerations for keeping WebRTC running (e.g., How not to mess it up with your firewall).
>>>
>>> Grüße, Carsten
>>>