Re: [Hls-interest] LL-HLS survey: require all SERVER-CONTROL tags to match

Roger Pantos <rpantos@apple.com> Wed, 22 July 2020 16:35 UTC

Return-Path: <rpantos@apple.com>
X-Original-To: hls-interest@ietfa.amsl.com
Delivered-To: hls-interest@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2F9D83A0B0A for <hls-interest@ietfa.amsl.com>; Wed, 22 Jul 2020 09:35:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.01
X-Spam-Level:
X-Spam-Status: No, score=-2.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, T_REMOTE_IMAGE=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=apple.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 UO1HryqghODh for <hls-interest@ietfa.amsl.com>; Wed, 22 Jul 2020 09:35:27 -0700 (PDT)
Received: from nwk-aaemail-lapp01.apple.com (nwk-aaemail-lapp01.apple.com [17.151.62.66]) (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 75C603A0AE9 for <hls-interest@ietf.org>; Wed, 22 Jul 2020 09:35:27 -0700 (PDT)
Received: from pps.filterd (nwk-aaemail-lapp01.apple.com [127.0.0.1]) by nwk-aaemail-lapp01.apple.com (8.16.0.43/8.16.0.42) with SMTP id 06MGLBV1007476 for <hls-interest@ietf.org>; Wed, 22 Jul 2020 09:35:26 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=from : content-type : mime-version : subject : date : references : to : in-reply-to : message-id; s=20180706; bh=9DqRRMhH4CCeFGwLIxqfU3K2bcQjEuMK5vqBmx+Vlco=; b=eqFc/ukccq4j2Vd8sJXS6B/ANzmeYu0do/3cgOGyG0rLx1RV4Kxfx1xZ476caIc9658T Yv+pe0aIuLYqVLKW1Q4XwT1xi6W9y5wzHOdXF89BfJlqPsX3xlWpKbJPkDzWhm9E/+GM Iaj5fsRClZv3wIR7KWanzMk9sk1yZB+gfJS2qCOB9Xjdgm27ijLdopKd+PXgtw+2CKAF sAxHX1v4Mu2XIqAg2UVVCUkBEj9JAMNcFLMbylSjyvXCwHRYfYYLuPMoMa6xJ6/DP/qV +2v7pt0fQNn4FE8z6BfvDBlDU51xVCyB0tYDt9PE/fbbOl+ipbsrsskqhEXZitPKQipN Uw==
Received: from rn-mailsvcp-mta-lapp03.rno.apple.com (rn-mailsvcp-mta-lapp03.rno.apple.com [10.225.203.151]) by nwk-aaemail-lapp01.apple.com with ESMTP id 32c00yrwwq-14 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for <hls-interest@ietf.org>; Wed, 22 Jul 2020 09:35:26 -0700
Received: from rn-mailsvcp-mmp-lapp02.rno.apple.com (rn-mailsvcp-mmp-lapp02.rno.apple.com [17.179.253.15]) by rn-mailsvcp-mta-lapp03.rno.apple.com (Oracle Communications Messaging Server 8.1.0.5.20200312 64bit (built Mar 12 2020)) with ESMTPS id <0QDV0078PQ315220@rn-mailsvcp-mta-lapp03.rno.apple.com> for hls-interest@ietf.org; Wed, 22 Jul 2020 09:35:25 -0700 (PDT)
Received: from process_milters-daemon.rn-mailsvcp-mmp-lapp02.rno.apple.com by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.5.20200312 64bit (built Mar 12 2020)) id <0QDV00300Q12FQ00@rn-mailsvcp-mmp-lapp02.rno.apple.com> for hls-interest@ietf.org; Wed, 22 Jul 2020 09:35:25 -0700 (PDT)
X-Va-A:
X-Va-T-CD: ec84e058cc39800da9c0ca85a565561c
X-Va-E-CD: 85a6af5b1ab8eea71936c5c5e253904d
X-Va-R-CD: 99fb0dcccc4531b07a9ef39f71e7e0c5
X-Va-CD: 0
X-Va-ID: 83e7890a-2858-4749-93a7-a88266b3005c
X-V-A:
X-V-T-CD: ec84e058cc39800da9c0ca85a565561c
X-V-E-CD: 85a6af5b1ab8eea71936c5c5e253904d
X-V-R-CD: 99fb0dcccc4531b07a9ef39f71e7e0c5
X-V-CD: 0
X-V-ID: 67273753-b1a0-41dd-8aae-30ec74583348
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-07-22_09:2020-07-22, 2020-07-22 signatures=0
Received: from localhost ([17.234.17.141]) by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.5.20200312 64bit (built Mar 12 2020)) with ESMTPSA id <0QDV00AAEQ2ZL830@rn-mailsvcp-mmp-lapp02.rno.apple.com> for hls-interest@ietf.org; Wed, 22 Jul 2020 09:35:24 -0700 (PDT)
From: Roger Pantos <rpantos@apple.com>
Content-type: multipart/alternative; boundary="Apple-Mail=_BFE4E8B6-3150-4C8D-9E79-72B338861202"
MIME-version: 1.0 (Mac OS X Mail 13.0 \(3649\))
Date: Wed, 22 Jul 2020 09:35:23 -0700
References: <CAB31503-1E90-4008-BBE5-91B4D25B65E9@apple.com> <CAM1-CVkgUVC8hS5Nc+fRhrfy-c-gDMBog6TtgyWJbyxJ29LV0A@mail.gmail.com> <F28C7DEA-F670-4EA0-93BC-E01281B6F96A@akamai.com> <CAAqSTpk14WhtWnK=xOJPOkFOBD-YHk-o7HFWtpkB15C+P-Do5Q@mail.gmail.com>
To: "hls-interest@ietf.org" <hls-interest@ietf.org>
In-reply-to: <CAAqSTpk14WhtWnK=xOJPOkFOBD-YHk-o7HFWtpkB15C+P-Do5Q@mail.gmail.com>
Message-id: <7EC4595B-8F85-4DA7-A5C5-582F1ABB2D54@apple.com>
X-Mailer: Apple Mail (2.3649)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-07-22_10:2020-07-22, 2020-07-22 signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/hls-interest/rXM4T1vfa9SLTeDt-7y8kflEVeQ>
Subject: Re: [Hls-interest] LL-HLS survey: require all SERVER-CONTROL tags to match
X-BeenThere: hls-interest@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Discussions about HTTP Live Streaming \(HLS\)." <hls-interest.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hls-interest>, <mailto:hls-interest-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/hls-interest/>
List-Post: <mailto:hls-interest@ietf.org>
List-Help: <mailto:hls-interest-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hls-interest>, <mailto:hls-interest-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 22 Jul 2020 16:35:30 -0000

Our thinking at the moment is to specify the consistency requirement on an attribute-by-attribute basis, rather than a blanket rule that all SERVER-CONTROL tags must match. Right now we plan to put a “must match” requirement on every currently defined attribute, so it comes down to the same thing but it leaves us some more room for future expansion.


Roger Pantos
Apple Inc.

> On Jul 21, 2020, at 9:36 PM, Pieter-Jan Speelmans <pieter-jan.speelmans@theoplayer.com> wrote:
> 
> I do agree that strict is often best. Assumptions in most cases lead to issues down the road anyway.
> 
> The attributes for which I see most value to allow a difference would be CAN-BLOCK-RELOAD. As already mentioned by Joey the hold back attributes would incur a lot of questions. For the other attributes, I can see a use for backup servers, for example falling back to a version hosted on a different CDN which doesn't support blocking reload. From a player perspective I don't see too big of a challenge to support this. Skip tags can be supported quite easily as well for our architecture.
> 
> While it would be preferred for all attributes to be identical across renditions, I can see scenario's where this would not be feasible to achieve, especially on the blocking reload.
> 
> Best regards,
> Pieter-Jan
> 
> 
> Pieter-Jan Speelmans
> CTO
> 
> THEO Technologies NV
> w | www.theoplayer.com <http://www.theoplayer.com/>
> Philipssite 5, Bus 1. 3001 Leuven, Belgium
>  <https://d2oj23ymxjbl3l.cloudfront.net/>
> Leuven (Belgium) - New York (US) - San Francisco (US) - Singapore (SG) - Barcelona (ES)
> BTW: BE 0847.829.290, RPR: Leuven
> 
> 
> On Tue, Jul 21, 2020 at 8:26 PM Law, Will <wilaw=40akamai.com@dmarc.ietf.org <mailto:40akamai.com@dmarc.ietf.org>> wrote:
> Both packaging and player developers would benefit from the simplicity of stricter requirements of consistent server-control attributes across renditions.
> 
>  
> 
> If an implementer needed to remove server-control for backwards-compatibility with older clients, it would be simple enough for the origin to produce a parallel playlist with server-control consistently disabled across all renditions.
> 
>  
> 
> You may also consider a new _HLS_format  query arg which a player could pass to the origin when requesting the master playlist. This argument would allow the player to request characteristics of the subsequent presentations such as
> 
> Discreet part versus byte range addressing
> Use of server control
>  
> 
> These would only be requests. The origin would acknowledge compliance by returning the appropriate SERVER-CONTROL attributes and address syntax in the response. This allows a client to request the formatting and behavior that it wants, versus the implementation today in which the origin is blind to the needs of the client and the formatting decision is made ahead of runtime by a decoupled CMS.  
> 
>  
> 
> -Will
> 
>  
> 
>  
> 
> From: Joey Parrish <joeyparrish=40google.com@dmarc.ietf.org <mailto:40google.com@dmarc.ietf.org>>
> Date: Tuesday, July 21, 2020 at 11:06 AM
> To: Roger Pantos <rpantos=40apple.com@dmarc.ietf.org <mailto:40apple.com@dmarc.ietf.org>>
> Cc: "hls-interest@ietf.org <mailto:hls-interest@ietf.org>" <hls-interest@ietf.org <mailto:hls-interest@ietf.org>>
> Subject: Re: [Hls-interest] LL-HLS survey: require all SERVER-CONTROL tags to match
> 
>  
> 
> Hi Roger,
> 
>  
> 
> As a client developer, I would tend to prefer stricter requirements that would allow simpler clients.
> 
>  
> 
> Beyond the concerns you already mentioned, having per-rendition hold-backs would require our streaming model to change in Shaka Player, and I don't see any obvious benefit.  It's not even clear to me how we would be expected to operate with different hold-backs per rendition.
> 
>  
> 
> Would switching streams require us to change the "live edge" presented to the user?  (We consider two live edges: the true live edge of what's available to fetch from the server, and what we /tell/ the user is "live", which is the true live edge minus hold back.)
> 
>  
> 
> I don't work on the packaging side, but being strict about these attributes applying to all renditions would also seem to make compatibility with DASH easier to maintain.  For example, to be compatible with DASH, I expect a packager would be unable to use per-rendition hold-backs, even if they were allowed.
> 
>  
> 
> So why add the client complexity if multi-format packagers may not be able to use the feature anyway?
> 
>  
> 
> Thanks,
> 
> Joey
> 
>  
> 
>  
> 
> On Tue, Jul 21, 2020 at 10:47 AM Roger Pantos <rpantos=40apple.com@dmarc.ietf.org <mailto:40apple.com@dmarc..ietf.org>> wrote:
> 
> We plan to specify whether the attributes of the EXT-X-SERVER-CONTROL tag are allowed to vary between different Renditions. Following the principle that it’s always easier to progressively ease constraints than to impose new ones, our plan right now is be pretty strict up front and say that all attribute value must match across all Renditions. 
> 
> (For reference, the currently-defined SERVER-CONTROL attributes are: CAN-SKIP-UNTIL; CAN-SKIP-DATERANGES; HOLD-BACK; PART-HOLD-BACK; CAN-BLOCK-RELOAD.)
> 
> One reason to require consistency is to avoid situations where a player tunes in to a particular set of Renditions, decides to join in LL mode (or not) and how far back from live, and then switches bitrate or language and encounters a different set of SERVER-CONTROL attributes that would have led it do a different tune-in decision, too late to avoid playback disruption.
> 
> Before we go ahead with the rule change I’d like to suss out any problems it would create. Specifically,
> 
> 1) For packager vendors: would imposing this constraint place any unreasonable burdens on configuration or operation?
> 
> 2) Conversely, for client implementations: would adopting a looser rule create problems, beyond what I described above?
> 
> 
> thanks,
> 
> Roger Pantos
> Apple Inc.
> -- 
> Hls-interest mailing list
> Hls-interest@ietf.org <mailto:Hls-interest@ietf.org>
> https://www.ietf.org/mailman/listinfo/hls-interest <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_hls-2Dinterest&d=DwMFaQ&c=96ZbZZcaMF4w0F4jpN6LZg&r=KkevKJerDHRF9WRs8nW8Ew&m=OZRsplMkPccDsrzH4AFvrx6MmXNcMV48FT_LpcyYuCU&s=jmZkF9ELoQiNFW0ax4js-J6il1oiOzJOmegf2a3WUXY&e=>-- 
> Hls-interest mailing list
> Hls-interest@ietf.org <mailto:Hls-interest@ietf.org>
> https://www.ietf.org/mailman/listinfo/hls-interest <https://www.ietf.org/mailman/listinfo/hls-interest>
> 
> Legal Notice 
> You can find the latest terms and policies of THEO Technologies under www.theoplayer.com/terms <http://www.theoplayer.com/terms> including our "GENERAL TERMS AND CONDITIONS". In the absence of a signed agreement between you and THEO Technologies, by replying to this email these terms apply to the relevant transaction between us.   
> The contents of this email message and any attachments are intended solely for the addressee(s) and contain CONFIDENTIAL and/or privileged information and are legally protected from disclosure. If you are not the intended recipient of this message, please immediately alert the sender by reply email and then delete this message including any attachments and you are hereby notified that any use, dissemination, copying, or storage of this message or its attachments is strictly prohibited. 
> Full security of emails over the internet cannot be ensured. Despite our efforts it is your responsibility to provide for your protection.
> Global HQ: THEO Technologies NV, Philipssite 5 bus 1, 3001 Heverlee, Belgium - BE 0847.829.290 - CEO: Steven Tielemans
> -- 
> Hls-interest mailing list
> Hls-interest@ietf.org
> https://www.ietf.org/mailman/listinfo/hls-interest