Re: [rtcweb] [Suspected Junk Mail] Endpoints that don't support RTCP

Emil Ivov <emcho@jitsi.org> Sun, 26 April 2015 14:15 UTC

Return-Path: <emcho@sip-communicator.org>
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 758DB1A906D for <rtcweb@ietfa.amsl.com>; Sun, 26 Apr 2015 07:15:09 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.601
X-Spam-Level:
X-Spam-Status: No, score=-2.601 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, 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 q8VDxrsrIxt7 for <rtcweb@ietfa.amsl.com>; Sun, 26 Apr 2015 07:15:07 -0700 (PDT)
Received: from mail-oi0-f43.google.com (mail-oi0-f43.google.com [209.85.218.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7B0E81A906A for <rtcweb@ietf.org>; Sun, 26 Apr 2015 07:15:06 -0700 (PDT)
Received: by oica37 with SMTP id a37so71783113oic.0 for <rtcweb@ietf.org>; Sun, 26 Apr 2015 07:15:06 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=idGbmSXMp361GOIYfhDMpaFQ1xT9ARQm0YWhkE0uGwk=; b=fTtGM+6G/1uvSO9wu7VK7McphevTZIBUZOTPYJk3xV7wD169xv/Da+G0Q52tMKzGmQ 5s3HW2y6blBvLwrN2zBFmyZ2EkxKsLQLL9M9OG7SqQt2V9gfyVqfiBbF3+eDSbGva5Mg ChV3sDsX0e8/uUOqPY3lS0f/hYOTaDbAIqTC1LLsHkCiq6rhumBNog+FIpFgcs8Sgjmw HZDt9yjfOwJJuT9L6q6hjuL0+v7s3LF4Ta/hwgSQSXNNCrLgFlkRR0FFltwcDVIs186U mn7MswPBS7NiOYcote7VEaQ14Sokm3UqUf5+ELNGP+XlonfKMQtvuitcoxs3m9KIzREc 2n9g==
X-Gm-Message-State: ALoCoQlSCbVAKa8WEXKnjIMWPfegWEDJO/uq46lwrqMSxcedvEvRxejT89buRCyMPvb5keEEi6Uu
X-Received: by 10.182.230.104 with SMTP id sx8mr6341269obc.61.1430057705998; Sun, 26 Apr 2015 07:15:05 -0700 (PDT)
Received: from camionet.local ([84.238.157.117]) by mx.google.com with ESMTPSA id a76sm9806905oig.11.2015.04.26.07.15.03 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 26 Apr 2015 07:15:04 -0700 (PDT)
Message-ID: <553CF2E4.7000700@jitsi.org>
Date: Sun, 26 Apr 2015 17:15:00 +0300
From: Emil Ivov <emcho@jitsi.org>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Magnus Westerlund <magnus.westerlund@ericsson.com>, John Leslie <john@jlc.net>
References: <7978938E-B510-43E2-9F19-C4752F6D23FD@cisco.com> <CABkgnnWvU+aYT9zgwEXCUhaO98y9kPyKwHnT=KXSr8O=knfW8w@mail.gmail.com> <CAPvvaa+SNPY+Ait2c8w9GPT-QfP7LEiuU6ejrokba93k60DdVg@mail.gmail.com> <CABkgnnW6KFuJhswLK97LE6J=9vqkf-cmeRMZOuz516ZryeSRQw@mail.gmail.com> <CAPvvaa+wid8y2h0g2040V8bSr50+rQRzpg-tCTK9EUFmtJrZYw@mail.gmail.com> <55361B07.3010707@ericsson.com> <CAPvvaaK-OxXk4=igyqix-XdubRhq+OafYvaTsJhNsbi4KHXJpw@mail.gmail.com> <5537948F.6040007@ericsson.com> <20150422152908.GF63465@verdi> <5538EFE9.7040200@ericsson.com> <20150423134742.GI63465@verdi> <553A2BFE.4050904@ericsson.com>
In-Reply-To: <553A2BFE.4050904@ericsson.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtcweb/l7TzFuoUfJHpUuJg2AvYdHmfpac>
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] [Suspected Junk Mail] Endpoints that don't support RTCP
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: Sun, 26 Apr 2015 14:15:09 -0000


On 24.04.15 14:41, Magnus Westerlund wrote:
> John Leslie skrev den 2015-04-23 15:47:
>> Magnus Westerlund <magnus.westerlund@ericsson.com> wrote:
>>> But we do need mechanism to protect the network. Especially when the
>>> network doesn't work as intended that do happens from time to time.
>>
>>     This would imply that if the network "usually" has 20% packet loss,
>> then we have no obligation to "protect" it from 20% packet loss...
>
> Yes, but that is a network that has a good-put of less than 80% that is
> not something I would like to operate. A lot of resources down the drain.

I don't think anyone wishes to operate such a network. The point is that 
we all find ourselves in them and when we do, we'd rather be able to 
join that important call and make the best of it (and that best is 
actually sometimes quite acceptable to the user even if it looks 
horrible in wireshark).

After all, networks are there to serve users. Not just to be pretty.

>>> On a best-effort network, a WebRTC "call" is no more worth than a video
>>> stream session, a download of an archive, web-surfing, etc.
>>
>>     Um... No.
>>
>>     The worth of any Internet stream cannot be judged that way.
>>
>>     It is actually quite likely that a WebRTC call is more valuable to
>> the participants than anything else they might do with their connection.
>> It's not our job to second-guess that evaluation.
>>
>>     Further, "best-effort" describes the _network_, not the applications
>> using the network. Thus, "best-effort" is quite orthogonal to "TCP-
>> Friendly".
>>
>>     We _may_ feel an obligation to appear "TCP-Friendly" (I don't.)
>> If so, we should be looking at how to "enforce" reduction of sending
>> rate in the presence of congestion.
>>
>>     "Circuit-breaker" is a bad name for that, IMHO.
>>
>>     Very roughly speaking, a WebRTC application could add 20% FEC bits
>> to compensate for 20% packet loss. This _is_ a step down the road to
>> congestion collapse; but it's not -- of itself -- a _big_ step. Its
>> effect upon competing TCP traffic _is_ substantial (and there may be
>> political considerations saying we have to reduce that effect).
>
> My personal view is that it is fine to be using FEC to make sensible
> audio when encountering packet loss. But, the total bit-rate in such a
> scenario would be that audio+FEC should use less bandwidth than prior to
> the indication that you have 20% packet loss.

You shouldn't consider FEC as something that is only used as a reaction 
to congestion. Audio codecs such as Opus and Silk allow for inband FEC 
and most apps that I am aware of do turn it on unconditionally prior to 
every call.

> In my opinion a circuit breaker that triggers for a sustained packet
> loss rate of 20% over a time period of seconds, is in fact doing its
> jobb.

This is where I disagree. In many cases sustained 20% packet loss is 
something that inband FEC would fix.

How many users do you think would be happy in such situations when given 
the explanation that: we could have made your call work but it really 
makes us look bad to mess with such crappy networks.

> If there is a short duration, like 400 ms with that loss rate and
> then it otherwise drops down below 5% for the next 5 seconds and this
> flow is in the region of 30-50 kbps in total, then I think that is fine.
> All based on my judgement. I haven't, but believe that if you run this
> case through the circuit breaker, you might get away with it. It is the
> TCP equation based breaker that is the one that will fire here if any.
> So it depends on the RTT and how many loss events this corresponds with.
>
>
>>
>>     "Circuit-breaker" is not a terribly effective way to do that --
>> especially when the WebRTC application can simply start another call.
>
> Well, to automatically restart/create a new PC when the circuit breakers
> has triggered is not in the spirit of things. The spirit of things is to
> adjust your parameter settings so that it consumes less bandwidth, then
> start it again, or simply let the session be, unless the human user
> insists.

Your "spirit of things" does not necessarily coincide with that of the 
application/service providers and users.

Also, given that users will be allowed to insist, what exactly have we 
done to resolve congestion?

Emil

-- 
https://jitsi.org