Re: [httpstreaming] Current Status and Our Goal

"Spencer Dawkins" <spencer@wonderhamster.org> Wed, 20 October 2010 06:16 UTC

Return-Path: <spencer@wonderhamster.org>
X-Original-To: httpstreaming@core3.amsl.com
Delivered-To: httpstreaming@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 059C73A69D0 for <httpstreaming@core3.amsl.com>; Tue, 19 Oct 2010 23:16:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.274
X-Spam-Level:
X-Spam-Status: No, score=-101.274 tagged_above=-999 required=5 tests=[AWL=-0.479, BAYES_00=-2.599, LONGWORDS=1.803, STOX_REPLY_TYPE=0.001, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ok0qZtWM2yzI for <httpstreaming@core3.amsl.com>; Tue, 19 Oct 2010 23:16:09 -0700 (PDT)
Received: from mout.perfora.net (mout.perfora.net [74.208.4.195]) by core3.amsl.com (Postfix) with ESMTP id E0B4C3A69D5 for <httpstreaming@ietf.org>; Tue, 19 Oct 2010 23:16:02 -0700 (PDT)
Received: from S73602b ([12.172.14.11]) by mrelay.perfora.net (node=mrus1) with ESMTP (Nemesis) id 0M2387-1OoIhw3QhH-00tLkj; Wed, 20 Oct 2010 02:17:31 -0400
Message-ID: <DA6680C8B68A4F06B812E9A7FF8357A6@china.huawei.com>
From: Spencer Dawkins <spencer@wonderhamster.org>
To: Colin Perkins <csp@csperkins.org>, Benjamin Niven-Jenkins <ben@niven-jenkins.co.uk>
References: 298a0a@china.huawei.com><62FF99A9-9B06-459F-87B4-416007E80983@csperkins.org><51D0062B-D4D8-4495-8FC6-E50E5D67086E@cisco.com><A3727C89-8DF3-48A7-9B5D-9D11A94930F0@niven-jenkins.co.uk> <BE65A0D2-9294-4576-B3C9-A8E674BF734E@csperkins.org>
Date: Wed, 20 Oct 2010 01:17:25 -0500
MIME-Version: 1.0
Content-Type: text/plain; format="flowed"; charset="iso-8859-1"; reply-type="original"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.5931
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5994
X-Provags-ID: V02:K0:Ss5zfLfUgCJE+d6oG/RaVKtqW8GP11Cv1VDF7VeAVEA 7AD3aWJm7a0ANRe+nQ9uf+/QrKTtUkt9ZDNydCr6ZOU4qWyGBL ab6A9YcVpRFv4w+DbJIduXqGIGO2rC6K7Ea/8CwRSbKJ+z52II h5LT9gJPlvtld5UN5uhYZPgqhkcqaBiWOPVwC3N2FYe0oavWaQ FvBOLv+kpki8AehPrTLU6mWRgGeEVA3zpG173n2eU4=
Cc: httpstreaming@ietf.org
Subject: Re: [httpstreaming] Current Status and Our Goal
X-BeenThere: httpstreaming@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Network based HTTP Streaming discussion list <httpstreaming.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/httpstreaming>, <mailto:httpstreaming-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/httpstreaming>
List-Post: <mailto:httpstreaming@ietf.org>
List-Help: <mailto:httpstreaming-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/httpstreaming>, <mailto:httpstreaming-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 Oct 2010 06:16:11 -0000

----- Original Message ----- 
From: "Colin Perkins" <csp@csperkins.org>
To: "Benjamin Niven-Jenkins" <ben@niven-jenkins.co.uk>
Cc: <httpstreaming@ietf.org>
Sent: Tuesday, October 19, 2010 5:47 PM
Subject: Re: [httpstreaming] Current Status and Our Goal


> On 19 Oct 2010, at 23:08, Benjamin Niven-Jenkins wrote:
>> On 19 Oct 2010, at 18:46, David R Oran wrote:
>>>
>>> On Oct 19, 2010, at 1:16 PM, Colin Perkins wrote:
>>>> On 15 Oct 2010, at 08:14, Qin Wu wrote:
>>>>> ----- Original Message ----- 
>>>>> From: "Ali C. Begen (abegen)" <abegen@cisco.com>
>>>>>
>>>>>> But, in http streaming scenario, the ratio of download/upload (from 
>>>>>> the client's perspective) is much larger than 1. BTW, if you keep 
>>>>>> your chunk duration relatively longer, the amount of requests that 
>>>>>> you will end up sending will be almost nil compared to what you will 
>>>>>> receive.
>>>>>>
>>>>>> [Qin]: No, I just compare pull and push with the same chunk duration.
>>>>>
>>>>> You can choose whatever chunk size you wanna use. Does not matter. The 
>>>>> fact remains the same. Unless someone uses chunks of a few hundreds of 
>>>>> ms, it won't matter.
>>>>>
>>>>> [Qin]: Suppose 10 chunks is available at the server side, in the pull 
>>>>> model, the client need to send at least 10 requests and receive 10 
>>>>> responses. in the push model, the client may only need to send one 
>>>>> request and then receive 10 responses. comparing with pull, push model 
>>>>> save 9 requests. also if you look at websocket, push has more 
>>>>> lightweight header than pull.
>>>>
>>>> This is true.  However, by changing to a push model, you also move the 
>>>> responsibility for maintaining state for rate adaptation to the server, 
>>>> rather than the client.  The extra state, and the complexity of running 
>>>> the rate adaptation algorithm, almost certainly outweighs the savings 
>>>> from reduced request processing.
>>>>
>>> That is debatable. I personally side with Colin in such a debate, but 
>>> there are people who do make credible arguments on the other side, and 
>>> people who ship cost-effective and arguably scalable systems that work 
>>> that way.
>>
>> While that may be true, I doubt they're based on HTTP.
>>
>> I thought the pretence of creating this list was to discuss if there was 
>> work that IETF could do to improve "HTTP streaming". Changing the 
>> fundamental model from pull to push is not improving HTTP streaming it's 
>> creating a whole new streaming protocol, which might be a valid thing to 
>> do but is a completely different discussion IMO.
>
>
> That depends on how narrow a view you take of "HTTP streaming". There are 
> certainly ways in which one can building adaptive streaming video systems 
> that push media data over a single HTTP connection with sender controlled 
> rate switching. Is the aim of this list to discuss HTTP streaming in the 
> general case, or only one particular, pull-based, incarnation of it?

To land somewhere between Colin and Ben, it would be helpful to decide how 
much the general-case HTTP model can change before it is no longer HTTP, but 
some other protocol.

If I'm understanding the discussion to date, we're somewhere close to

Normal HTTP                   Also under discussion on this list
================================================================
client-initiated (pull)       server-initiated (push)
unicast                       multicast
unmodified proxies            modified proxies
unmodified servers            modified servers

Is this the way other people think the discussion has gone?

What else did I miss?

Thanks,

Spencer