Re: I-D Action: draft-ietf-httpbis-rand-access-live-03.txt
Craig Pratt <craig@ecaspia.com> Wed, 21 March 2018 07:47 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 B966F126BF0 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 21 Mar 2018 00:47:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.937
X-Spam-Level:
X-Spam-Status: No, score=-5.937 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, MIME_HTML_ONLY=0.723, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, URIBL_BLOCKED=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 b4WIx0-XzvFI for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Wed, 21 Mar 2018 00:47:43 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7CD201201FA for <httpbisa-archive-bis2Juki@lists.ietf.org>; Wed, 21 Mar 2018 00:47:43 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.89) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1eyYK0-0004dO-Am for ietf-http-wg-dist@listhub.w3.org; Wed, 21 Mar 2018 07:38:08 +0000
Resent-Date: Wed, 21 Mar 2018 07:38:08 +0000
Resent-Message-Id: <E1eyYK0-0004dO-Am@frink.w3.org>
Received: from titan.w3.org ([128.30.52.76]) by frink.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from <craig@caspiaconsulting.com>) id 1eyYJo-0004cb-Jo for ietf-http-wg@listhub.w3.org; Wed, 21 Mar 2018 07:37:56 +0000
Received: from mail-pl0-f54.google.com ([209.85.160.54]) by titan.w3.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.89) (envelope-from <craig@caspiaconsulting.com>) id 1eyYJm-00005u-6W for ietf-http-wg@w3.org; Wed, 21 Mar 2018 07:37:56 +0000
Received: by mail-pl0-f54.google.com with SMTP id c11-v6so2660127plo.0 for <ietf-http-wg@w3.org>; Wed, 21 Mar 2018 00:37:34 -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-language:content-transfer-encoding; bh=mwoMenawW7sEb1ShUImIfqsvDwlnsyJdexb8jfDeuDE=; b=poiB2JGP/2Dalpnf9pWCUqb3EyU0w67exxlLBnvggDhmIkgy4qoi2M8taJzuNrRfiA f7Nt0uyZZZC0wcIuidUwvyD4jO7KhxWefI/3+RWhCDE+zWBpmZNPIGrIW5AtiMs9LFUY EbHfvF6RxI+S84nkkZTpAgrGs2DVtF/zCX8D7SzwXcFSebwjB2H429X8zhGlnvL9PGyJ 6xiSJb/n7NoVQ11Jx1PpXEIb39P6z8an+iCZBb6+kU/XenCZs3cNw//gwdOHKKLe+pAa q9BWCxQKJgABoTN5JGhp9hMNCPYQDC593KHZAqPJgUOViDP4zXWBn0jyI+/wkXA/3ghj YkPw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=mwoMenawW7sEb1ShUImIfqsvDwlnsyJdexb8jfDeuDE=; b=SYVF1+AQ/CjBDV46vY+ndJlJr3Vq60XNtjcuIR1LtujfUn9cwjiCZS0X/ofRaaRrYF mcFagGnSrsguKEnKXt8UXp3XS2B7AZY7UEcVhDLiPpj4ux8NJ76JN3pFqqUKDaz+s37v ZgPAWQwKFO5TAEQBcRp0CPcwBOUjiirT4HxsU3cDanvYEjySFWKBCSSWscNEQiX77Jj6 Y6dKnG725YxteyrLff6gNYqND8PN/SeMwIkwvzsrJ3hug/GheYRoJbYgqdh5VQWuX3Hk oVVAZJsJR1bRubwIlVK0mwOZgbILNnJzfBaBnCOF/i/EuhNgsGPCGkydTUDQ8vYn8HJ0 t8XQ==
X-Gm-Message-State: AElRT7ESK/+/E+UKJeLgH3Krz9v/srykXM6TOoWvHDkqHM94dQ1x3ptY ryMj7P7wjY50Qn+nAIOMCePuIn/V
X-Google-Smtp-Source: AG47ELtapXbg1OMmKt6bmHurYBYrs5i+EU6MhwCk/03ZOuXxwViVcqp6yZ0xxNKU0pbbVZFpgB3s+w==
X-Received: by 2002:a17:902:5496:: with SMTP id e22-v6mr11970308pli.81.1521617851197; Wed, 21 Mar 2018 00:37:31 -0700 (PDT)
Received: from [10.10.1.198] (50-193-209-61-static.hfc.comcastbusiness.net. [50.193.209.61]) by smtp.googlemail.com with ESMTPSA id t16sm7661313pfm.69.2018.03.21.00.37.30 for <ietf-http-wg@w3.org> (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 21 Mar 2018 00:37:30 -0700 (PDT)
To: ietf-http-wg@w3.org
References: <152154837826.9793.17629316745234842173@ietfa.amsl.com> <20180320141231.GB11174@raspberrypi>
From: Craig Pratt <craig@ecaspia.com>
Organization: Caspia Consulting
Message-ID: <f3ff3d24-34be-abca-dbf5-add21ddcc72f@ecaspia.com>
Date: Wed, 21 Mar 2018 00:37:29 -0700
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180320141231.GB11174@raspberrypi>
Content-Type: text/html; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
X-W3C-Hub-Spam-Status: No, score=-3.4
X-W3C-Hub-Spam-Report: AWL=-0.423, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, HTML_MESSAGE=0.001, MIME_HTML_ONLY=0.723, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: titan.w3.org 1eyYJm-00005u-6W 0bea9600ec470ec6f68aa934622cc921
X-Original-To: ietf-http-wg@w3.org
Subject: Re: I-D Action: draft-ietf-httpbis-rand-access-live-03.txt
Archived-At: <https://www.w3.org/mid/f3ff3d24-34be-abca-dbf5-add21ddcc72f@ecaspia.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/35187
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: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>
My thoughts in-line...
cp
On 3/20/18 7:12 AM, Thomas Peterson wrote:
When a server encounters an error acquiring the live content it's incorporating into the representation (e.g. a discontinuity) there are a couple options that come to mind: (1) stop appending the content into the representation (and optionally start a new one), or (2) append the content in a content-type-specific way that the client can digest/comprehend.A question I have with this draft is the behaviour or expectations that may or may not occur during failure modes, particularly when a "reset" or roll-over happens on the server side. Consider the scenario when the server byte-offset is effective reset, and thus it's "range" has shifted beyond the client's expectations.
Either way, the client wouldn't receive a non-success HTTP status code when transferring content on each side of the discontinuity. In the case of (1), the content would just no longer grow (effectively becoming a static representation). For (2) the only effect would be a momentary decrease in the transmitted bitrate during the period of discontinuity. (you could see this effect periodically in the results I presented at IETF 100) To the client, it looks like one contiguous sequence of data.
So at this point, you might be thinking "this explanation on discontinuities is what should be in the draft RFC". I don think it would be great if there was more guidance on live content. The issue there is that (a) dealing with discontinuities is fairly format-specific, (b) the guidance applies to non-random access cases equally, and (c) I'm not sure it has to do with with the "transfer" aspect of HTTP - since my argument above is that the server-side failure modes really affect the *constitution/construction* of the representation and not the *transfer* of it. (as I still consider myself a newb in the httpbis group, maybe someone can clarify my understanding)
If only (a) and (b) apply, there might be a case to be made for a format-agnostic "Live Content and Errors/Discontinuities" draft RFC. But my thinking has been that it's a bit too far out of scope for this draft.
I don't see any reference in this draft that explicitly call out when 416 responses should be sent. Should these things be called out? Regards
I think this statement from RFC-7233 (section 4.4) describes the 416 cases pretty well:
The 416 (Range Not Satisfiable) status code indicates that none ofUnfortunately, section 4.4 trips over itself a bit when it tries to talk about byte-range-specific simplifications. But I don't think it's appropriate to clarify this in our draft. (Perhaps this can be cleaned up as part of HTTPter?)
the ranges in the request’s Range header field (Section 3.1) overlap
the current extent of the selected resource
And while it might be useful to provide examples in the draft, I've tried to provide examples of ways to interact with a live/aggregating server that should *avoid* 416 errors (and get 206 instead). But the cool thing about the way that 7233 is written is that a client can really respond to a 206 and 416 similarly - since they both include a Content-Range response header.
Anyway, hope this helps. And please let me know if I'm missing something (like the point of your question)...
On Tue, Mar 20, 2018 at 05:19:38AM -0700, internet-drafts@ietf.org wrote:A New Internet-Draft is available from the on-line Internet-Drafts directories. This draft is a work item of the Hypertext Transfer Protocol WG of the IETF. Title : HTTP Random Access and Live Content Authors : Craig Pratt Darshak Thakore Barbara Stark Filename : draft-ietf-httpbis-rand-access-live-03.txt Pages : 11 Date : 2018-03-20 Abstract: To accommodate byte range requests for content that has data appended over time, this document defines semantics that allow a HTTP client and server to perform byte-range GET and HEAD requests that start at an arbitrary byte offset within the representation and ends at an indeterminate offset. The IETF datatracker status page for this draft is: https://datatracker.ietf.org/doc/draft-ietf-httpbis-rand-access-live/" rel="nofollow">https://datatracker.ietf.org/doc/draft-ietf-httpbis-rand-access-live/ There are also htmlized versions available at: https://tools.ietf.org/html/draft-ietf-httpbis-rand-access-live-03" rel="nofollow">https://tools.ietf.org/html/draft-ietf-httpbis-rand-access-live-03 https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rand-access-live-03" rel="nofollow">https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rand-access-live-03 A diff from the previous version is available at: https://www.ietf.org/rfcdiff?url2=draft-ietf-httpbis-rand-access-live-03" rel="nofollow">https://www.ietf.org/rfcdiff?url2=draft-ietf-httpbis-rand-access-live-03 Please note that it may take a couple of minutes from the time of submission until the htmlized version and diff are available at tools.ietf.org. Internet-Drafts are also available by anonymous FTP at: ftp://ftp.ietf.org/internet-drafts/" rel="nofollow">ftp://ftp.ietf.org/internet-drafts/
- I-D Action: draft-ietf-httpbis-rand-access-live-0… internet-drafts
- Re: I-D Action: draft-ietf-httpbis-rand-access-li… Thomas Peterson
- Re: I-D Action: draft-ietf-httpbis-rand-access-li… Craig Pratt
- Re: I-D Action: draft-ietf-httpbis-rand-access-li… Thomas Peterson
- Re: I-D Action: draft-ietf-httpbis-rand-access-li… Craig Pratt