Re: Issue with "bytes" Range Unit and live streaming

Craig Pratt <craig@ecaspia.com> Thu, 12 May 2016 02:06 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4220412D0D8 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 11 May 2016 19:06:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.917
X-Spam-Level:
X-Spam-Status: No, score=-7.917 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.996, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=ecaspia-com.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6hZswXnpOGqT for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 11 May 2016 19:06:44 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8C3B41200A0 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 11 May 2016 19:06:44 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1b0fxB-0003Kb-8S for ietf-http-wg-dist@listhub.w3.org; Thu, 12 May 2016 02:02:17 +0000
Resent-Date: Thu, 12 May 2016 02:02:17 +0000
Resent-Message-Id: <E1b0fxB-0003Kb-8S@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <craig@caspiaconsulting.com>) id 1b0fx5-0003Ju-AC for ietf-http-wg@listhub.w3.org; Thu, 12 May 2016 02:02:11 +0000
Received: from mail-pa0-f48.google.com ([209.85.220.48]) by lisa.w3.org with esmtps (TLS1.2:RSA_ARCFOUR_SHA1:128) (Exim 4.80) (envelope-from <craig@caspiaconsulting.com>) id 1b0fx1-0002Z0-ON for ietf-http-wg@w3.org; Thu, 12 May 2016 02:02:10 +0000
Received: by mail-pa0-f48.google.com with SMTP id xk12so23948653pac.0 for <ietf-http-wg@w3.org>; Wed, 11 May 2016 19:01:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ecaspia-com.20150623.gappssmtp.com; s=20150623; h=subject:to:references:from:organization:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=w1LqKzrYrkOgUt6703a5NNhogcKxg00n93sQpfyYH/E=; b=PJM4HnXt2DFTkH5bqmg0OoppzHT7PIe+anNjUug02AI8QaWP6UHZvCrZBJ3hFv4Ton OmAS43D6d9SvAx7CC5YKhWYlzH/eqpaDT3SO7lVpfrk3A+cQmpF4jitOO0f6vtC0akS9 xWc44TXWXchB5bUcnBLJvxenwnQH2o3MlubpI8UoO6RT7rhfNNDjcgjekN8iGlJ3BoT4 hjnWEkYJwEPRKfNLaGt7C07ibjkooesQt5DtfHjhvTLxeISNluccozVgwRN+X9G0Qc5Q LFbGNWwoI5GTGV+ddeG/8ZD/4Ei3YRAESn0XgZKK86T04PN+c8D3rW5CVvZI3FeY1Bji fllg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-transfer-encoding; bh=w1LqKzrYrkOgUt6703a5NNhogcKxg00n93sQpfyYH/E=; b=GkmYMxHZG2LZt2Sr2jvG9PBHUxKum6itwqt5cxbc1NJ4lLIEhLaadGC1esnBpSlyA8 ALVHoUFNtjMa8JLYRkONQ67Eo/NZ9tmOAGmxZSshYJ0Gnn7iVMKKLMSUScyKcwytikTz RGlRAM5AbVdDyWU5ZEs2Gn/22xXsA9yqAQD8jFW43HKeNvMH86vWjyadr+9TTavR1AL9 8nqwwhoaK3RndvNtCU/sd/TY72nVkoY1ZSUTli35DkhEQRWEoVfxmAkmLTj8pQs7Ho2u i5v3qmkCV+Jci2juMKSqxHS69oa5Whkos3C3+++b/EJKMgXS9kPOcM+VFsQ4+NT3qmAh 6tMw==
X-Gm-Message-State: AOPr4FW5DIBiQ4XWDCUVfisgZO1z4B1E2Rxk3vlGYjNRyGj+ZZygFHqvPJotsPugAk03wA==
X-Received: by 10.66.249.228 with SMTP id yx4mr9806248pac.29.1463018501105; Wed, 11 May 2016 19:01:41 -0700 (PDT)
Received: from [10.10.1.105] (50-193-209-61-static.hfc.comcastbusiness.net. [50.193.209.61]) by smtp.googlemail.com with ESMTPSA id v185sm15181908pfb.72.2016.05.11.19.01.40 for <ietf-http-wg@w3.org> (version=TLSv1/SSLv3 cipher=OTHER); Wed, 11 May 2016 19:01:40 -0700 (PDT)
To: ietf-http-wg@w3.org
References: <em1d43e7e6-ef31-49b0-82e5-011f739467b7@bodybag>
From: Craig Pratt <craig@ecaspia.com>
Organization: Caspia Consulting
Message-ID: <5733E403.7020303@ecaspia.com>
Date: Wed, 11 May 2016 19:01:39 -0700
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.6.0
MIME-Version: 1.0
In-Reply-To: <em1d43e7e6-ef31-49b0-82e5-011f739467b7@bodybag>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=209.85.220.48; envelope-from=craig@caspiaconsulting.com; helo=mail-pa0-f48.google.com
X-W3C-Hub-Spam-Status: No, score=-4.6
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: lisa.w3.org 1b0fx1-0002Z0-ON a31558769a1ebae57d7f16fd3511f776
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Issue with "bytes" Range Unit and live streaming
Archived-At: <http://www.w3.org/mid/5733E403.7020303@ecaspia.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/31635
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Reply in-line.

cp

On 5/11/16 6:16 PM, Adrien de Croy wrote:
>
> unless we allow Content-Length to also use the new unit (which I'd be 
> dead against), I'd suggest we steer clear of minting any new range units.
>
[cp] I don't see how a Range Unit would apply to Content-Length.

Regardless of how a range is requested, the server is always 
transferring bytes in the response body - whether indicated by 
Content-Length, chunks, or whatever. The Content-Range response header 
just lets the server indicate the returned range associated with the 
response body *in terms of the indicated range unit* and *in the domain 
of the representation*.

e.g. If a Range Unit called "blobs" is used, and a request is made with 
"Range: blobs=5-11", the response could have header "Content-Range: 
blobs=5-11/50" indicating that 7 blobs are being returned (out of 50) in 
the response body and a "Content-Length: 123456" could also be supplied 
designating that the response body (associated with blobs 5-11) is 
123456 bytes.

Am I missing something?

> All the proposed use cases for new range units that I've seen are 
> application specific, and could arguably better be dealt with using 
> another header.
>
> Adrien
[cp] Doesn't the fact that there's a Range Unit Registry mean that Range 
Units can be added that are application-specific - assuming there's 
sufficient demand? It's just a different mechanism than adding custom 
headers, IMHO - with well-defined semantics.

>
>
> ------ Original Message ------
> From: "Mark Nottingham" <mnot@mnot.net>
> To: "Darshak Thakore" <d.thakore@cablelabs.com>
> Cc: "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
> Sent: 12/05/2016 12:59:25 p.m.
> Subject: Re: Issue with "bytes" Range Unit and live streaming
>
>> Hi Darshak,
>>
>> I don't think that's where we're at. Based on the discussion so far, 
>> it seems like there are two possible paths forward:
>>
>> 1. Changing the 'bytes' range-unit to allow this use case
>> 2. Minting a new range-unit
>>
>> As discussed, both have downsides. What we need is data about how 
>> current implementations -- especially caching intermediaries -- 
>> behave when faced with a) 'bytes' used in the desired way, and b) a 
>> new range-unit.
>>
>> Cheers,
>>
>>
>>>  On 11 May 2016, at 5:57 AM, Darshak Thakore 
>>> <d.thakore@cablelabs.com> wrote:
>>>
>>>  Hi all,
>>>
>>>  Based on feedback on this thread, it seems like the need for being 
>>> able to send an open ended (read as unknown-last-byte-pos) Range 
>>> response has been discussed a couple of times (with different use 
>>> cases). Also there seems to be somewhat general agreement that the 
>>> Content-Range ABNF in RFC 7233 is deficient in providing this. The 
>>> initial argument has been, “is there a compelling enough need” and i 
>>> think with different use cases popping up (log files, media 
>>> streaming, gzip… others ??) there seems to be some value in defining 
>>> a non-application specific Range unit that plugs this gap. Clearly 
>>> fixing RFC 7233 is invasive and will result in thing breaking in 
>>> unknown ways so that’s a no-go. With that, we can:
>>>   • Ensure that the scope of this work item is narrow and restricted 
>>> only to fixing the gap in RFC 7233
>>>   • Define a new range unit (anything with “bytes” in it seems like 
>>> a bad idea, so maybe call it “live-octets”, “blive”, “b-add" - 
>>> suggestions welcome….)
>>>   • Decide if there is enough interest/reason to do this as a WG item
>>>  Any objects/suggestions to any of the above ?
>>>
>>>  Regards,
>>>  Darshak
>>>
>>>
>>>  From: "K.Morgan@iaea.org" <K.Morgan@iaea.org>
>>>  Date: Thursday, April 21, 2016 at 4:25 AM
>>>  To: 'Craig Pratt' <craig@ecaspia.com>, "fielding@gbiv.com" 
>>> <fielding@gbiv.com>
>>>  Cc: "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
>>>  Subject: RE: Issue with "bytes" Range Unit and live streaming
>>>  Resent-From: <ietf-http-wg@w3.org>
>>>  Resent-Date: Thursday, April 21, 2016 at 4:25 AM
>>>
>>>  On Thursday,21 April 2016 05:18 craig@ecaspia.com wrote:
>>>  >
>>>  > Re: Representation caching
>>>  >
>>>  > Whether a representation is considered cacheable in this use case 
>>> is at
>>>  > the discretion of the origin server and specific to the use
>>>  > case/application - as it should be (imho). There's no *necessity* in
>>>  > having a periodically-appended resource marked non-cachable, 
>>> correct? If
>>>  > the resource mutates, it's not cacheable. If it's just being 
>>> appended
>>>  > to, it is cacheable. And if an appended resource stops being 
>>> appended
>>>  > to, it doesn't invalidate the cached representation.
>>>  >
>>>
>>>  I couldn't agree more. However, it seemed the prevailing sentiment 
>>> when we tried to resolve the related issue of ranges before content 
>>> codings, with a new bbcc unit (bytes-before-content-coding), was 
>>> that the use cases for append-only growth represent an insignificant 
>>> portion of HTTP traffic. “We live by app-specific protocols to 
>>> handle these cases. What is so special ... that it must be addressed 
>>> by http (in a very ugly way)?” [1]
>>>
>>>  [1] 
>>> https://lists.w3.org/Archives/Public/ietf-http-wg/2014AprJun/1383.html
>>>
>>>
>>>
>>>  This email message is intended only for the use of the named 
>>> recipient. Information contained in this email message and its 
>>> attachments may be privileged, confidential and protected from 
>>> disclosure. If you are not the intended recipient, please do not 
>>> read, copy, use or disclose this communication to others. Also 
>>> please notify the sender by replying to this message and then delete 
>>> it from your system.
>>
>> -- 
>> Mark Nottingham   https://www.mnot.net/
>>
>>
>
>


-- 

craig pratt

Caspia Consulting

craig@ecaspia.com

503.746.8008