Re: [rtcweb] [tram] I-D Action: draft-thomson-tram-turn-bandwidth-00.txt

"Pal Martinsen (palmarti)" <> Tue, 25 February 2014 12:48 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 7E6A21A036B; Tue, 25 Feb 2014 04:48:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.347
X-Spam-Status: No, score=-7.347 tagged_above=-999 required=5 tests=[BAYES_50=0.8, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-0.547, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 1Bg25urGegp4; Tue, 25 Feb 2014 04:48:10 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 88A951A0644; Tue, 25 Feb 2014 04:48:09 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=59466; q=dns/txt; s=iport; t=1393332489; x=1394542089; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=6MaWeVYEzJZU58qV9Wlpm2A6POSpXkA2UwOH37G5ztg=; b=dSeYD78HMfqm+66GuwnReEOIHMAp1yNfnRrqjTs1VDsH6Ke0KyXXQVma Xx8sjWoyv+6Y8u3KxoHQFyp61u7higPLiakBMzclZXi8tNNq8SXD1eJt2 KgXUnvb3PpWqQlqQftF/ErPFs3S+lhgBM+XXcaa64senIHyUyElyuesIw w=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos; i="4.97,540,1389744000"; d="scan'208,217"; a="22998448"
Received: from ([]) by with ESMTP; 25 Feb 2014 12:48:07 +0000
Received: from ( []) by (8.14.5/8.14.5) with ESMTP id s1PCm6An000445 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Tue, 25 Feb 2014 12:48:07 GMT
Received: from ([]) by ([]) with mapi id 14.03.0123.003; Tue, 25 Feb 2014 06:48:06 -0600
From: "Pal Martinsen (palmarti)" <>
To: Karl Stahl <>
Thread-Topic: [tram] [rtcweb] I-D Action: draft-thomson-tram-turn-bandwidth-00.txt
Date: Tue, 25 Feb 2014 12:48:06 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <04ee01cf31ae$e296d500$a7c47f00$>
In-Reply-To: <04ee01cf31ae$e296d500$a7c47f00$>
Accept-Language: en-US
Content-Language: en-US
x-originating-ip: []
Content-Type: multipart/alternative; boundary="_000_B788D545BDC047A7BE1B76E2A5F60509ciscocom_"
MIME-Version: 1.0
Cc: Oleg Moskalenko <>, "" <>, "" <>, "Yoakum, John H \(John\)" <>
Subject: Re: [rtcweb] [tram] I-D Action: draft-thomson-tram-turn-bandwidth-00.txt
X-Mailman-Version: 2.1.15
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: Tue, 25 Feb 2014 12:48:14 -0000

On 24 Feb 2014, at 23:22 pm, Karl Stahl <<>> wrote:

Hi Pål,

You did not comment nor answer, in response to any of:

Sorry about that. I did not notice any clear items to answer or comment on.

whether step D) can obsolete step C) (DISCUSS/MALICE) by allowing the application/browser to transfer relevant real-time traffic information (types and bandwidth) into every RTP package by using the already IETF standardized RTP extension header RCF 5285, which could be used by any current or future Internet (including OTT) network where WebRTC real-time traffic may flow. It seems to have been standardized already 2008 to allow such usage.

draft-martinsen-tram-discuss is intended to solve internal application stream prioritisation pr flow, i.e. it is more important for me to get the video stream across than my application stream at this moment in time. Its intention is to describe the 5-topple the STUN message was sent on.

Moving to a pr packet prioritisation is interesting as it can solve the bundle problem, and mark the relative importance of specific video frames (I-Frames for example). Since its pr packet the network element might not keep stream state so it might be easier that way. But the information needs to be in a fixed offset for quick network element processing. And we want to describe other streams than just RTP. That makes RTP header extensions unsuitable.

QoS related step C) draft-martinsen-tram-discuss can then be taken out of TRAM, and step D) (that was never intended to be handled by TRAM anyway) will be handled elsewhere.

I was hoping to argue that the draft is only new signalling of old concepts (DSCP and ECN). In the end it is the WG that decides if there is enough interest.

I have repeated my suggestion to RTCWEB WG from the October discussions on the relevant [rtcweb] [avtext] [mmusic] lists to introduce the QoS related step D) into draft-ietf-rtcweb-rtp-usage suggesting usage of RFC 5285, where traffic information in RTP packets simply would be filled by any browser under any OS.

Without step B), TRAM “Enforcing the real-time traffic through the offered/discovered TURN servers”, the real-time traffic may happen through the IP default gateways often congested by data traffic and QoS insensitive streaming video and file sharing. Without specific QoS methods at those points, the network raw bandwidth capacity may have to be 10-folded to achieve sufficient QoE when WebRTC usage becomes popular. Methods like DISCUSS addresses such things occurring when STUN instead TURN is used (by allowing flows into such congestion points), but only provides direct traffic info for outgoing (not incoming) real-time traffic and locally, therefore are not even applicable to reservation type of networks like Cable Networks and Mobile OTT.

If both clients supports draft-martinsen-tram-discuss you would get an bi-directional end to end description of the flow that works through NAT.
The information in the STUN packet can be used to remark DSCP bits to whatever values that is of best use for the network the packet is flowing though.

I dont see how TURN gives that ability. Once the channel is bound you only have a channel number in front of the UDP payload. And TURN is designed to carry alls sort of traffic. For this to work there must be some sort of only webRTC traffic is allowed through this TURN server. (And Ill bet bitorrent or others find a way to mimic webRTC to set up only a data channel..)

That would leave certain network types to investing in raw bandwidth increase, instead of simply borrowing the bandwidth (from much larger data traffic and QoS insensitive streaming video and file sharing at no adverse effect) and making that borrowed no-cost bandwidth very valuable for the carriers when delivering to their customers.
I know a few of you Cisco guys are among the ones that have been fighting against the general “it is all about bandwidth” and “it will go away with time”-attitude within IETF work, e.g. see, but the pointers given in the current QoS discussion within TRAM:

(i) will *not allow* ISP’s to use already available and currently deployable quality IP pipes for real-time traffic to also be used for WebRTC generated real-time traffic.

(ii) will *not allow* some network types (e.g. Cable Networks and Mobile OTT) to borrow bandwidth from data traffic and QoS insensitive streaming video and file sharing. All networks will *also be inhibited* from the very common and used method of simply providing an extra IP pipe (often provided over the same wire but level-2 separated) dedicated for real-time usage
(*by resisting TRAM implementation of step B*)
Newer, fiber only type of networks, can still borrow bandwidth at no extra cost, *by proprietary usage* of RFC 5285 by browsers.

(iii) will leave most ISPs to *only use* raw bandwidth capacity increase that may has to be 10-folded to reach sufficient QoE when WebRTC usage becomes popular (if at all possible, since unmanaged IP pipes intermittently are filled, whatever bandwidth is available).

Further explainations about QoS methods and their implementation were given a few days ago in:

(i), (ii) and (iii) will *seriously delay* usage of telepresence capable and quality demanding WebRTC (bandwidth being around 30 times higher over best effort Internet, than telephony over quality managed networks) and will *vastly increase cost* for ISPs to offer WebRTC with good QoE.

Below you are giving pointers saying “They are currently working on a problem-statement draft and a use-case draft, any input to those would be very helpful.” Those are unnecessary, risking leading to (i), (ii) and (iii) above.

We find them quite useful. It allows us to engage with potential users and see if there are real problems to solve. If the customer/users do not see a problem there is little incentive for us to invest in creating a solution that nobody wants. That said, it is always the danger of crating a to complicated solution that solves to many problems.

So are pointers such as: “RMCAT where congestion avoidance for RTP is being developed”. TRAMs Milestone 3 is for the purpose of directing real-time traffic where congestion control isn’t already in place. UsingRFC 5285 available since 2008, to fill traffic information in RTP packets (step D)) is probably a necessity for most future “congestion control” discussed.

There are some good example of RTP header extension usage. For example draft-avtext-berger-framemarking. But that information may very well be encrypted and unavailable to the network element.


This chicken-and-egg circular also applies to RTCWEB direction of QoS issues to:
focusing on DSCP-mapping without even mentioning RFC 5285 available since 2008, to fill traffic information in RTP packets where it  is a necessity and will allow:
(1) applications to directly convey QoS related real-time traffic info to the network at points where RTP flow is directed to by TRAM Milstone 3, to be used by *any network element implementing any suitable QoS methods for the particular network* for
(2) *all* WebRTC browsers *and* dedicated clients (not using WebRTC), under *all* OSs, and *all* current and future IP networks
(3) *without* having to be forced into application specific networks (PSTN, IMS) instead of using the Internet (including OTT).

The only activity required, is to call for ISPs’ review whether the traffic information transferred by RFC 5285 is sufficient for current and future needs in their network as suggested in
…two parameters (e.g. two bytes each) are encoded into the RTP header extension:

A) The maximum bandwidth requirement: Two bytes could contain everything from some bps for real-time text to Gbps for future 3D supersize telepresence… on a logarithmic scale.

B) The quality characteristics for the stream, with the highest bit set to 1, we could allocate a bit each for quality type e.g:
Best Effort, Audio, Video, Supplemental Video, Gaming, Data, Delay Insensitive (e.g. video streaming), Minimum Delay, Reliable Delivery, Prioritize X, Variation Y, that could be combined as required to describe the stream.

And with highest bit set to 0, there could instead be a number for special usage that does not fit the general description of the individual bits.

Then this could be assigned numbers to have the RFC in place.
With TRAM milestone 3 also place,
market forces will drive ISPs and browser makers to implement just that, without even having it MUST-established.
“Who does not want a “WebRTC-Ready” Internet access?” and
“Who wants to use Chrome, if Firefox, Internet Explorer or Safari comes with much better QoE?” and vice versa.
Please see further emails soon following this one, for details and history.


Från: tram [] För Pal Martinsen (palmarti)
Skickat: den 21 februari 2014 10:37
Kopia: Karl Stahl; Oleg Moskalenko; Alan Johnston; Yoakum, John H (John)
Ämne: Re: [tram] I-D Action: draft-thomson-tram-turn-bandwidth-00.txt


I agree the full QoS discussion should _not_ happen in TRAM. If you are interested in helping out in that area I suggest you looking into the AEON mailing list at: . They are currently working on a problem-statement draft and a use-case draft, any input to those would be very helpful. (,

That said, STUN have a few nice characteristics that makes it a perfect candidate for transporting some of the QoS information.  IMHO that would be extending the STUN spec and should be within the TRAM charter.  The main goal of draft-martinsen-tram-discuss was to show how already existing QoS mechanisms could be transported with STUN to provide more value, and to start the discussion if TRAM is the appropriate place to have those on the wire format discussions.


On 20 Feb 2014, at 19:55 pm, Yoakum, John H (John) <<>> wrote:

I fully agree with the comments that QOS should be a low priority for the initial focus of the TRAM efforts.  There are other groups doing QOS work and frankly I engage in WebRTC multimedia interactions daily over the Internet, enterprise VPNs, and various combinations and seldom suffer egregious quality issues.  I am more concerned about carriers doing things to regulate or degrade WebRTC flows than a failure of existing Internet mechanisms to enable them.

Significant focus on QOS before we better enable TURN to be easily used in a browser environment taking advantage or normal web characteristics (as opposed to historic telephony constructs) would seem to be highly distracting at this point.



From: tram [] On Behalf Of Oleg Moskalenko
Sent: Thursday, February 20, 2014 12:43 PM
To: Alan Johnston
Cc: Karl Stahl;<>
Subject: Re: [tram] Fwd: I-D Action: draft-thomson-tram-turn-bandwidth-00.txt

On Thu, Feb 20, 2014 at 6:26 AM, Alan Johnston <<>> wrote:

Personally, I am not sure how much QoS is actually in scope for TRAM. Have you been following RMCAT where congestion avoidance for RTP is being developed?  I see some overlap in your goals and the goals of that work.

I'd concentrate on the TURN application-level functionality, for now, and I'd leave QoS for the future discussions.

tram mailing list<>