Re: [httpstreaming] Current Status and Our Goal

Wenbo Zhu <wenboz@google.com> Wed, 20 October 2010 06:27 UTC

Return-Path: <wenboz@google.com>
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 06FFB3A69B9 for <httpstreaming@core3.amsl.com>; Tue, 19 Oct 2010 23:27:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.477
X-Spam-Level:
X-Spam-Status: No, score=-106.477 tagged_above=-999 required=5 tests=[AWL=-0.499, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_MED=-4, 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 gUfZ6eyhDl2T for <httpstreaming@core3.amsl.com>; Tue, 19 Oct 2010 23:27:28 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [74.125.121.35]) by core3.amsl.com (Postfix) with ESMTP id 84E513A69AA for <httpstreaming@ietf.org>; Tue, 19 Oct 2010 23:27:27 -0700 (PDT)
Received: from hpaq1.eem.corp.google.com (hpaq1.eem.corp.google.com [172.25.149.1]) by smtp-out.google.com with ESMTP id o9K6SwdD012748 for <httpstreaming@ietf.org>; Tue, 19 Oct 2010 23:28:58 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1287556139; bh=lPOEez3dFBqnP6K1Up5LyyFAPDE=; h=MIME-Version:In-Reply-To:References:Date:Message-ID:Subject:From: To:Cc:Content-Type:Content-Transfer-Encoding; b=Rq1aV93YJjtvQN+kp042j4GRVEnKBCNrKyQkdg5kGd9GvtTgBdn4S/s1f2zj+ID+b D8oswj9tmvmEi1cuPAlCw==
Received: from gxk27 (gxk27.prod.google.com [10.202.11.27]) by hpaq1.eem.corp.google.com with ESMTP id o9K6St1H017442 for <httpstreaming@ietf.org>; Tue, 19 Oct 2010 23:28:57 -0700
Received: by gxk27 with SMTP id 27so1960734gxk.14 for <httpstreaming@ietf.org>; Tue, 19 Oct 2010 23:28:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=X8HshMbPKIDKy6U3NJMQSMHMXdk7YWe7uBP0P0V4bfI=; b=WrDabZ90mLCsoZ5pTJbBnan3BIiaZsp/+xWCERIDYDRzbL5JL2X1EG2+2irZMH4rhN J7IdTip0Qka3RtWH9xBQ==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=google.com; s=beta; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=gtZHwKnIxuLurelT0ZQBvs/qzbIjH1WoK5AJulfGOJN9THcg5GFw3lIplsTW+yQ4nG hYNAfOwcJI7rWqY1yX+w==
MIME-Version: 1.0
Received: by 10.90.36.14 with SMTP id j14mr215673agj.80.1287556135637; Tue, 19 Oct 2010 23:28:55 -0700 (PDT)
Received: by 10.91.213.18 with HTTP; Tue, 19 Oct 2010 23:28:55 -0700 (PDT)
In-Reply-To: <DA6680C8B68A4F06B812E9A7FF8357A6@china.huawei.com>
References: <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> <DA6680C8B68A4F06B812E9A7FF8357A6@china.huawei.com>
Date: Tue, 19 Oct 2010 23:28:55 -0700
Message-ID: <AANLkTi=WtPXVSrH8-oMG4B_NjX-qeL3P=fwyGJfYgPOC@mail.gmail.com>
From: Wenbo Zhu <wenboz@google.com>
To: Spencer Dawkins <spencer@wonderhamster.org>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
X-System-Of-Record: true
Cc: httpstreaming@ietf.org, Colin Perkins <csp@csperkins.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:27:29 -0000

Nice call .. as I had found it difficult to follow this thread.

> Normal HTTP                   Also under discussion on this list
> ================================================================
> client-initiated (pull)       server-initiated (push)

HTTP never has problems to support push (as efficient as you can
possibly do with TCP), out of its native semantics. Most known issues
are related to browsers or proxies. Unless you are talking about p2p
style of push, which requires the client to expose its own end-point,
then there is not much to explore at the transport level. Or if we are
talking about pull vs push at the application level, then we need make
sure the transport is involved, as otherwise it's simply becoming a
design/system issue.


On Tue, Oct 19, 2010 at 11:17 PM, Spencer Dawkins
<spencer@wonderhamster.org> wrote:
>
> ----- 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
> _______________________________________________
> httpstreaming mailing list
> httpstreaming@ietf.org
> https://www.ietf.org/mailman/listinfo/httpstreaming
>