Re: [httpstreaming] Agenda and Slides

David R Oran <> Thu, 11 November 2010 15:44 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 5B1DF3A68F5 for <>; Thu, 11 Nov 2010 07:44:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -107.81
X-Spam-Status: No, score=-107.81 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, CN_BODY_35=0.339, MIME_CHARSET_FARAWAY=2.45, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id vsBrBIKrU2GG for <>; Thu, 11 Nov 2010 07:44:09 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id 89B3A3A683F for <>; Thu, 11 Nov 2010 07:44:09 -0800 (PST)
Authentication-Results:; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Av0EAEue20xAZnwM/2dsb2JhbACDPJ8JcaU6ii0IkSKBHoM1dwSEPhyFfoML
X-IronPort-AV: E=Sophos;i="4.59,183,1288569600"; d="scan'208";a="181056381"
Received: from ([]) by with ESMTP; 11 Nov 2010 15:44:33 +0000
Received: from [] ( []) by (8.13.8/8.14.3) with ESMTP id oABFiVVI018857; Thu, 11 Nov 2010 15:44:32 GMT
Mime-Version: 1.0 (Apple Message framework v1081)
Content-Type: text/plain; charset=GB2312
From: David R Oran <>
In-Reply-To: <>
Date: Thu, 11 Nov 2010 10:44:31 -0500
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <01df01cb8089$568d0b30$03a72190$> <> <> <> <>
To: Xiangsong Cui <>
X-Mailer: Apple Mail (2.1081)
Cc: httpstreaming <>
Subject: Re: [httpstreaming] Agenda and Slides
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Network based HTTP Streaming discussion list <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 11 Nov 2010 15:44:11 -0000

On Nov 11, 2010, at 4:10 AM, Xiangsong Cui wrote:

> Hi David,
> In fact I have no clear picture in my mind, I am thinking,
> #1, It seems the current adaptive HTTP streaming is based on endpoint (client or server), is it possible or useful that the middle-box trigers stream rate adjustment? 
I sure hope not, unless by "middlebox" you mean a real HTTP server at the edge of the CDN. Otherwise you get no sympathy from me as I am on record as finding middleboxes a pretty universally bad thing. If you mean special machinery in the edge HTTP server looking into the access network (e.g. mobile, DSL, etc.) then I think there *might* be something (as I said, I'm open minded), but it's up to the proponents of doing stuff on the HTTP servers to make the case that it provides more than a small measurable benefit and doesn't break anything.

>    In my mind, a similar case is ECN mechanism, router forwards IP packets between TCP endpoints. The router doesn't support TCP protocol, but the router can be involved in TCP flow control (or TCP rate adjustment) by some IP header indication.
ECN does not involve the router in a TCP flow. What makes you think it does? It's a pure L3 mechanism with no examination of TCP headers nor tracking of TCP state.

> Can the middlebox also influence HTTP streaming by some mechanism more effectively? I think network-based or network-involved HTTP streaming mechanism may be a supplement to client-based mechanism. 
Well, the potential design space is gigantic. Most of it is complicated and has lots of tradeoffs. Imagining that you might do something better is not sufficient. You have to:
a) propose something
b) analyze it
c) simulate it under a wide range of conditions
d) implement it
e) measure it on the real internet (or an overlay like Planetlab).

Get there and them maybe the IETF should have another BoF to look at the problem.

> RED is OK, but whether it is better that rate adjustment happens earlier than packet drop? Some resource in the foregoing path is wasted by dropped packets ...
That's not what RED is about. It's about breaking up the well-known synchronization behavior of tail-drop on TCP, which leads to oscillations and significant underutilization of bottleneck link bandwidth. It isn't about improving the performance for any one connection. RED is basic hygiene, not an optimization. My point was that designing complicated TCP or HTTP level mechanisms to try to get around tail-drop router induced performance problems is a waste of effort when you can just torn on RED. What data do you have that the performance anomalies you're trying to eliminate are NOT due to tail drop?

> #2, In mobile envirment, network has a more clear map (channel, bandwidth, etc.) than the client, if the network can trace the mobile client, can the network make some proactive operation on HTTP streaming? I'm not sure.
Again, "not sure" isn't good enough. (I'm not sure if I might win the lottery). I don't think we've even gotten to step (1), which is demonstrating with real numbers and real measurements that there is a problem to be solved here. Then we need step (2) which is seeing if the problem has any feasible solutions that don't break other things, or overcomplicate the architecture. Then we can get to step (3) which is to compare the solutions against the baseline of doing nothing. At that point if enough improvement is demonstrated to warrant spending a lot of the IETF's time standardizing something, we can work on the details.

My fear here is that we'll have a problem statement that boils down to "we need nano fiber transport cables to geosynchronous orbit" at one extreme, or "it sure would be nice if streaming HTTP made better use of scarce radio resources on 4G networks" at the other.

I don't think the case has yet been made that there's a well-scoped problem for IETF to work on here. I heard somebody proposed that perhaps an IRTF research group ought to be the first step. That might be an alternative worth considering, but only if we can get the right people actually doing work (i.e. researchers with the right skill sets and resources to do the modeling, simulation, and experiments).

Cheers, DaveO.

> Best Regards
> Xiangsong
> ----- 原邮件 -----
> 发件人: David R Oran <>
> 日期: 星期三, 十一月 10日, 2010 下午11:52
> 主题: Re: [httpstreaming] Agenda and Slides
> 收件人: Xiangsong Cui <>
> 抄送: Mark Watson <>om>, httpstreaming <>
>> On Nov 10, 2010, at 12:13 AM, Xiangsong Cui wrote:
>>> Hi,
>>> I agree Kathy here.
>>> And, Mark, yes, you are right, it drops packets. But this is 
>> only a passive reaction, I think it is better to achieve some 
>> active operation, or proactive operation (if possible), that would 
>> be perfact.
>> Why? This is not at all obvious to some of us, unless by 
>> "proactive" you mean turning on existing machinery that is not yet 
>> universally deployed, like RED and ECN. There is at least some 
>> evidence that currently measured poor adaptive streaming behaviors 
>> can be explained by tail-drop routers hanging around all over the 
>> place. TCP is known to behave badly under heavy load with tail-
>> drop queuing. I think you'd agree that it's a whole lot easier to 
>> turn on  well understood, standardized and nearly universally 
>> implemented techniques at the network layer than it it is stumble 
>> around trying to invent new application and HTTP machinery to try 
>> to fake it out.
>> We also don't fully understand the effect of allowing adaptive 
>> streaming clients to compete only against each other with no cross 
>> traffic present to inject enough noise to drive the adaptation 
>> algorithms. The deployments today are without putting the traffic 
>> in a separate QoS class since they run over-the-top on BE service. 
>> It is far from clear that removing the cross-traffic induced 
>> bandwidth variation will make things better - it might, counter-
>> intuitively, make things worse!
>>> I think these jobs are worthy our attention.
>> I do not think the case has yet been made, although I think you'll 
>> find we're all open minded and willing to listen.
>> With respect to the mobile environment specifically, there is an 
>> obvious space/time/computation/bandwidth tradeoff with respect to 
>> multi-rate coding (upon which adaptive HTTP streaming depends). If 
>> you only have a few rates to play with, it's obviously hard to to 
>> optimal bandwidth packing on radio channels that don't support 
>> enough users to satisfy the "law of large numbers". It's even 
>> harder to do it with good fairness properties. There are many ways 
>> to skin this cat though:
>> - spend the cycles on the encoders and space in the caches to have 
>> finer rate quantization in the multi-rate coding.
>> - match the encoding rates to to the radio channel allocation chunks
>> - transrate a higher rate down to fit in the allocation for a 
>> given mobile user if that would result in better QoE than shifting 
>> them down to the next lower rate.
>> However, I'd like to observe that NONE of these techniques has 
>> much (or at least very little) to do with the protocols and 
>> algorithms for adaptive HTTP streaming.
>> There may be some small tweaks that one might do though. For 
>> example, there might be useful transrating hints in server 
>> manifests to tell streaming servers whether they are permitted to 
>> transrate a given profile, and hints in client manifests to allow 
>> them to request a transrate down as opposed to shifting to the 
>> next lower coding rate. Alternatively, the manifests could just 
>> lie about the number of profiles, and allow servers to 
>> "synthesize" the intermediate profiles by transrating.
>> As a parting homily to those who think reservations and admission 
>> control are always superior to adaptation in their ability to 
>> deliver QoE, remember that:
>> "The purpose of bandwidth reservation and admission control is to 
>> say NO, not to say YES". If you can always say YES, you don't need 
>> it, and if you say NO a lot, you are just quantizing unfairness 
>> into a boolean."
>> DaveO.
>>> Best Regards
>>> Xiangsong
>>> ----- 原邮件 -----
>>> 发件人: Mark Watson <>
>>> 日期: 星期三, 十一月 10日, 2010 下午12:24
>>> 主题: Re: [httpstreaming] Agenda and Slides
>>> 收件人: Kathy McEwen <>
>>> 抄送: httpstreaming <>
>>>> Sent from my iPad
>>>> On Nov 9, 2010, at 7:42 PM, "Kathy McEwen" 
>>>> <> wrote:
>>>>> After doing some digging on the various
>>>>> protocols (RTMP/http, RTSP, HTML5/http, etc... ), we found 
>> that 
>>>> all of them
>>>>> that are doing any kind of adaptive rate streaming, but they 
>> do 
>>>> not today
>>>>> incorporate the messages/control mechanisms to allow for the 
>>>> network to take
>>>>> control and adapt the rate of the video.
>>>> But it does! It drops packets, causing a congestion response 
>> from 
>>>> TCP causing in turn an adaptation by the application. The 
>> network 
>>>> is completely in control of the packet delivery rate, which the 
>>>> application knows and adapts to.
>>>> This is the baseline, which is so simple and applicable across 
>>>> myriad access technologies. New mechanisms need to justify 
>>>> themselves against this baseline.
>>>> ...Mark 
>>>> _______________________________________________
>>>> httpstreaming mailing list
>>> <c00111037.vcf>_______________________________________________
>>> httpstreaming mailing list
> <c00111037.vcf>