Re: [Hls-interest] Allow URI changes

Roger Pantos <rpantos@apple.com> Tue, 01 September 2020 18:00 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 DFBE53A0B72 for <hls-interest@ietfa.amsl.com>; Tue, 1 Sep 2020 11:00:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.102
X-Spam-Level:
X-Spam-Status: No, score=-2.102 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, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, 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 4RlsNyDKsLzZ for <hls-interest@ietfa.amsl.com>; Tue, 1 Sep 2020 11:00:49 -0700 (PDT)
Received: from ma1-aaemail-dr-lapp02.apple.com (ma1-aaemail-dr-lapp02.apple.com [17.171.2.68]) (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 1972E3A0B37 for <hls-interest@ietf.org>; Tue, 1 Sep 2020 11:00:49 -0700 (PDT)
Received: from pps.filterd (ma1-aaemail-dr-lapp02.apple.com [127.0.0.1]) by ma1-aaemail-dr-lapp02.apple.com (8.16.0.42/8.16.0.42) with SMTP id 081Hw27k000866; Tue, 1 Sep 2020 11:00:45 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=content-type : mime-version : subject : from : in-reply-to : date : cc : content-transfer-encoding : message-id : references : to; s=20180706; bh=ceTndxDrbAD7FKgj4fouTaGjpq01ugrucsKiRodKdzM=; b=DXM3ws374dLWajKTIZQvWEetRJ385EMnDnC4U7OmrStwA1vbBAztdWpjzg9g8SnrZW2H 5Rh/iLAfPoRxsbQnHZlfrX9JLD5I8fiEmbg7EAQYH/yDyXpkj4IPtZ6XnOv3Acpja+TH H+Mdl2y5fuSlSwM4h9PC0un1InSHhr6xB4Ic9dZETtcKb08cf3Njf+mBga860z0Q2y6x +B2gVeifmba56rnV0IQhx/EGh6BkffDax9pU0GyIvKZCpw44FgF7/JbVs0dfFLlV/q6v WOnMGkA5P5DMeYs8nt797rng4IHx9eKNfzQSbOfWxwGM02MwrVzSzP4Cy/G+9S12mr1/ QQ==
Received: from rn-mailsvcp-mta-lapp02.rno.apple.com (rn-mailsvcp-mta-lapp02.rno.apple.com [10.225.203.150]) by ma1-aaemail-dr-lapp02.apple.com with ESMTP id 337kpsxn5j-10 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Tue, 01 Sep 2020 11:00:45 -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-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPS id <0QFZ00586RD7ZM50@rn-mailsvcp-mta-lapp02.rno.apple.com>; Tue, 01 Sep 2020 11:00:43 -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.6.20200729 64bit (built Jul 29 2020)) id <0QFZ00100R5DM900@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Tue, 01 Sep 2020 11:00:43 -0700 (PDT)
X-Va-A:
X-Va-T-CD: 899d6d4990e643d726ff5ce677365f4b
X-Va-E-CD: 3d01dee6aaa81dbabb76777962aedc8e
X-Va-R-CD: 688bfc1f857f1fd940268f1bb8970e84
X-Va-CD: 0
X-Va-ID: 51235243-c629-4ce1-80b1-fd0ddf2725bb
X-V-A:
X-V-T-CD: 899d6d4990e643d726ff5ce677365f4b
X-V-E-CD: 3d01dee6aaa81dbabb76777962aedc8e
X-V-R-CD: 688bfc1f857f1fd940268f1bb8970e84
X-V-CD: 0
X-V-ID: b7014fb6-a0b6-46ab-8936-9cbdef2e1dab
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-01_10:2020-09-01, 2020-09-01 signatures=0
Received: from localhost.localdomain (unknown [17.232.175.117]) by rn-mailsvcp-mmp-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.6.20200729 64bit (built Jul 29 2020)) with ESMTPSA id <0QFZ0009QRD6KZ00@rn-mailsvcp-mmp-lapp02.rno.apple.com>; Tue, 01 Sep 2020 11:00:43 -0700 (PDT)
Content-type: text/plain; charset="utf-8"
MIME-version: 1.0 (Mac OS X Mail 14.0 \(3654.0.3.2.11\))
From: Roger Pantos <rpantos@apple.com>
In-reply-to: <7c59d1234eb86e37@hell>
Date: Tue, 01 Sep 2020 11:00:42 -0700
Cc: hls-interest@ietf.org
Content-transfer-encoding: quoted-printable
Message-id: <9158AE94-63C1-4A68-BDB7-B0E212661097@apple.com>
References: <7c59d1234eb86e37@hell>
To: Philipp <philipp+ietf@bureaucracy.de>
X-Mailer: Apple Mail (2.3654.0.3.2.11)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-01_10:2020-09-01, 2020-09-01 signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/hls-interest/btf9-PobD45xwwh_HlvRRJbKMfQ>
Subject: Re: [Hls-interest] Allow URI changes
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: Tue, 01 Sep 2020 18:00:51 -0000

Hello Philipp,

> On Aug 29, 2020, at 12:53 PM, Philipp <philipp+ietf@bureaucracy.de> wrote:
> 
> Hi
> 
> I currently write a HLS Loadbalancer. The idea is to change the URI of
> the Media Segments, to select which client should load the Media Segments
> from which server. This might lead to change the URI of Media Segments
> for two causes:
> 
> 1. Policy changes
> It might be necesarry change the server of a client during runtime of
> the stream. Yes the server could track the last segment number he
> deliverd to a client. This might lead to playback issues, depending on
> the reason the policy changed. Also this directly leads to the secound
> cause.
> 
> 2. Lost of client tracking
> There are some edge cases the server don't recognice the client. In this
> case the server might give the client an other URI for the same Media
> Segment.
> 
> Unfortunately section 6.1.2 don't allow to change the URI of a Media
> Segment and sections 6.3.4 say a client should halt playback if he
> detects a changed URI.
> 
> I propose for the next version of the standard, to allow the server to
> change the URI and force the client to handle a changed URI in a sane
> way. So the client must not reload already loaded segments and must not
> stop loading already started downloads, but should use the new URI for
> new or restarted downloads.

Features like this (which we refer to as Content Steering) are something that we are interested in exploring for HLS. To help us understand your requirements, I have a few more questions for you. (Feel free to email me privately if you prefer.)

Is the load balancer that you’re working on designed to balance among HTTP proxy caches (i.e. as part of a CDN), or in front of the origin? 

How many servers do you want to load-balance across? A few? Hundreds?

Do you want to load-balance between multiple CDNs?

In your case (2), I’m not sure I understand the purpose of providing a different Media Segment URI for a client that the server does not recognize. Can you elaborate?

HLS extensions aside, a fairly typical strategy is to put a Virtual IP (VIP) at the front end of your origin service (i.e. an L7 or L3 VIP inside the datacenter). This enables load balancing fairly independently of HTTP. On the wider network it’s pretty common to make use of some kind of DNS / GSLB, at least for the initial content direction.


regards,

Roger Pantos
Apple Inc.

> 
> Philipp
> 
> -- 
> Hls-interest mailing list
> Hls-interest@ietf.org
> https://www.ietf.org/mailman/listinfo/hls-interest