Re: [rtcweb] Payload Types assignments was Re: SV: [mmusic] WGLC of draft-ietf-rtcweb-use-cases-and-requirements-11

<> Fri, 11 October 2013 09:20 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 3441511E8142 for <>; Fri, 11 Oct 2013 02:20:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -3.249
X-Spam-Status: No, score=-3.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_LOW=-1]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id LbjHk9WhNA55 for <>; Fri, 11 Oct 2013 02:20:28 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id AC9AC21E80E4 for <>; Fri, 11 Oct 2013 02:20:17 -0700 (PDT)
Received: from ([]) by with ESMTP/TLS/AES128-SHA; 11 Oct 2013 11:20:15 +0200
Received: from HE111644.EMEA1.CDS.T-INTERNAL.COM ([]) by ([::1]) with mapi; Fri, 11 Oct 2013 11:20:15 +0200
Date: Fri, 11 Oct 2013 11:20:13 +0200
Thread-Topic: [rtcweb] Payload Types assignments was Re: SV: [mmusic] WGLC of draft-ietf-rtcweb-use-cases-and-requirements-11
Thread-Index: Ac7F1gS7mx21ZNPsRQSeFG1FqZLXDwAieFIw
Message-ID: <AAE428925197FE46A5F94ED6643478FEAD1BDC7177@HE111644.EMEA1.CDS.T-INTERNAL.COM>
References: <> <> <> <> <> <> <AAE428925197FE46A5F94ED6643478FEAD1BDC6F0B@HE111644.EMEA1.CDS.T-INTERNAL.COM> <>
In-Reply-To: <>
Accept-Language: de-DE
Content-Language: de-DE
acceptlanguage: de-DE
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [rtcweb] Payload Types assignments was Re: SV: [mmusic] WGLC of draft-ietf-rtcweb-use-cases-and-requirements-11
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 11 Oct 2013 09:20:33 -0000

Ted wrote:
> So, I'm a little confused about why that is the basic question.  If the prioritization is done by something like a diffserv code 
> point, it seems like the question is how the flow signals its classification, rather than to whom it signals that .  I would 
> presume that the networks which honor such markings would be constructed such that some conversant network element is on path.  
> What it is and where it is kind of aren't the JS app or browser's issue.

> What am I missing?

Here are some examples that were mentioned on the list or elsewhere:
- My company doesn't allow tunnels to the TURN server of some outside WebRTC service. How can I tell the WebRTC service to use my company's TURN server?
- My ISP uses DSCP code point x for low delay. How can I tell my WebRTC service to use this code point for the flows that require low delay (as Harald correctly pointed out, only the service self knows about the requirements of a flow)?
- My ISP requires admission control to protect its low delay class from packet loss. How can a WebRTC service contact the resource admission control service (ok, this a bit speculative)?

In all those cases, the WebRTC service needs information about the user's infrastructure, be it the company intranet or the ISP. We currently don't have a good way to get such information. 

Wolfgang Beck

-----Ursprüngliche Nachricht-----
Von: [] Im Auftrag von Harald Alvestrand
Gesendet: Dienstag, 8. Oktober 2013 13:01
Betreff: Re: [rtcweb] Payload Types assignments was Re: SV: [mmusic] WGLC of draft-ietf-rtcweb-use-cases-and-requirements-11

On 10/08/2013 09:17 AM, Karl Stahl wrote:
> Hej Magnus,
>> Also, are you really interested in knowing that it is VP9 vs H.264,
>> isn't
> the questions this is video of this priority that is important?
>> I think you need to more carefully consider what are the goals you
>> try to
> achieve them.
> Actually, my concern is to get an idea of the maximum bandwidth that
> could be required for a WebRTC (ICE) setup media flow. Both voice and
> video should be prioritized over data (their individual priority is of
> less importance as long as there is sufficient bandwidth for both).

You don't know that without knowing what the application is for.
In, for instance, a shooter game with voice backchannels, the movement and event information (data) is MORE time sensitive than the voice data.

> With diffserv you don't need to know the bandwidth requirement, but
> with RSVP reservation (like in cable and mobile networks) you need to
> know how much to reserve. Voice is like 100's kbit/s, video VP8 or
> H.264 is like 3,5 mbps.

Again, without knowing the application, you don't know that.
The application could decide to use QCIF or HD, and the bandwidth variation of screencast (semi-static with sudden, large changes) is completely different from that of a talking head, which is again completely different from a high-movement scene.

> To add to the complication of codec variants, the video codecs in
> question for WebRTC have variable bandwidth, and when there is a poor
> connection we see Chrome reducing the video window size to reduce the bandwidth used...
> I think the payload type field at best can reflect a maximum bandwidth
> to initially reserve bandwidth for, and thereafter make new
> reservations if the bandwidth changes during the call. So could we
> change RTP to show maximum bandwidth instead of payload type in that
> field outside the encrypted payload :) ... Or maybe that is not a joke?

I think these ruminations only lead to one conclusion:

You can't tell what the needed bandwidth is up front without asking the application.
You can't tell what the right priority ranking is without asking the application.

If you need to know the bandwidth or the priority up front, the application has to tell you. Anything else is pure heuristics.

rtcweb mailing list
rtcweb mailing list