Re: [CDNi] Triggers regexp: draft-finkelman-cdni-sva-extensions-00.txt

"Kevin J. Ma" <kevin.j.ma.ietf@gmail.com> Tue, 27 February 2018 22:58 UTC

Return-Path: <kevin.j.ma.ietf@gmail.com>
X-Original-To: cdni@ietfa.amsl.com
Delivered-To: cdni@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D26E412E8C3 for <cdni@ietfa.amsl.com>; Tue, 27 Feb 2018 14:58:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.697
X-Spam-Level:
X-Spam-Status: No, score=-2.697 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, MIME_QP_LONG_LINE=0.001, RCVD_IN_DNSWL_LOW=-0.7, 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=gmail.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 y9KQh4IajRND for <cdni@ietfa.amsl.com>; Tue, 27 Feb 2018 14:58:31 -0800 (PST)
Received: from mail-qk0-x235.google.com (mail-qk0-x235.google.com [IPv6:2607:f8b0:400d:c09::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 48CFA12E88D for <cdni@ietf.org>; Tue, 27 Feb 2018 14:58:31 -0800 (PST)
Received: by mail-qk0-x235.google.com with SMTP id s198so700058qke.5 for <cdni@ietf.org>; Tue, 27 Feb 2018 14:58:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=PaRXejxPkmA2dw7qSMdpG7achO5/mQNqGPgmeR/BI+k=; b=dQpok4mR9raPT/lV7oLHBXdOWhCrYKp1KzemSEKI3QiGDpEHBIFmthxDEQU9y8Yd1l suNvnk490LlOp7q6pSmGficVUTHx4B2Oy4jTu0agyW+GCmvL0KvEp81LiwLsqaD6R4pP 8q9CSoUJHKTmEvdlA4u2KHaQPuSjmwVBo5jqHvEMnC9mbsXAWa+H1atsOk1MF2zWmEue IX2oj+d6wwAhScdwA8sl7gryr1a20lKliM7zkANvuS4s7szQMjc57Ok/lUcuRARNdhXb +CizUHQAyW8biDbp3XcotQCP0RYxJN4w8vO358pfPPXaajFXSBnBlEmmMkHAmwbozyFT y3Sg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=PaRXejxPkmA2dw7qSMdpG7achO5/mQNqGPgmeR/BI+k=; b=Ye+i96aztGQ95fTVWCkqqo0MXJYOibtOu2OuS4D+fN6mrLuz9fSUAR66AcSyKONRYs hWvImYAOgJvEwl0/i7nU2uP+7Bv/LFDZ7WgPtYhVkRuWxa4N7asFQIg+jj+Ud7K0FF3C i8Xqo29HoL//KYBbX7vvKQnudPbWXg1RcFJEdoNP602vN/Xwh8q5sYuzyINqscVrq3ma CGVkdTT28f3nZmQWJ2KnW0UFgdqMwUHp9jQ9RmqbMbXA8japRTmBwxrg7RZga9LfkEqI WwSPGja6aMPJJOhUNDXqzDUqW7jYF4cIl+zrntQj9hAKQFFq70T5ik0EIv5qI9JU1MKN cGmQ==
X-Gm-Message-State: APf1xPAV637eA5xA8yO4T0dLmTnh1ux4a2O75/DjCOOD/3iQ6wqIpOMl V/oNFBgAv0JDnvaRNyRqmKqmgu+y
X-Google-Smtp-Source: AG47ELsRlFKzV1Gr5K1bWzwRFwMTk6Gf4+6seVWlJIUvHdqaGEfw/XtIXIeGIE8Wm8acEyZ/3KFKxw==
X-Received: by 10.55.115.67 with SMTP id o64mr24359846qkc.144.1519772310211; Tue, 27 Feb 2018 14:58:30 -0800 (PST)
Received: from [192.168.0.41] (static-72-70-48-42.bstnma.fios.verizon.net. [72.70.48.42]) by smtp.gmail.com with ESMTPSA id h190sm206732qka.10.2018.02.27.14.58.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 27 Feb 2018 14:58:29 -0800 (PST)
Content-Type: multipart/alternative; boundary="Apple-Mail-FD7D2045-B512-4315-885E-FED4147A0CDB"
Mime-Version: 1.0 (1.0)
From: "Kevin J. Ma" <kevin.j.ma.ietf@gmail.com>
X-Mailer: iPhone Mail (15D60)
In-Reply-To: <CAMb9nTu90fMxjpWdbxcusgVHjYhqof1SPuuyZ3_PNG+CHkRswQ@mail.gmail.com>
Date: Tue, 27 Feb 2018 17:58:28 -0500
Cc: "<cdni@ietf.org>" <cdni@ietf.org>
Content-Transfer-Encoding: 7bit
Message-Id: <A2001709-660F-4092-8DE6-6B60B427C375@gmail.com>
References: <CAMb9nTv1uWO3xa1eoL6Bb9_pzZVO+5h+F8fUoaG5khkKBKwPUQ@mail.gmail.com> <FC8D0AB8-FD7F-4D64-B1B3-5FADF6BFBD74@gmail.com> <CAMb9nTt2=e-41C0oXTmd+7PqgMTRj-Yexs8=na=a9d18ynfAFQ@mail.gmail.com> <CAMb9nTsjcXY1qj2S1yKK7xoEE+VGPVaq=Nh1oVJ76ZC6ohip=g@mail.gmail.com> <816D33C2-C6C0-40C8-8160-8E38B521215E@gmail.com> <CAMb9nTu90fMxjpWdbxcusgVHjYhqof1SPuuyZ3_PNG+CHkRswQ@mail.gmail.com>
To: Ori Finkelman <orif@qwilt.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/cdni/OwIA_HTSSt_L-BiIVDgqmFdqF9E>
Subject: Re: [CDNi] Triggers regexp: draft-finkelman-cdni-sva-extensions-00.txt
X-BeenThere: cdni@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "This list is to discuss issues associated with the Interconnection of Content Delivery Networks \(CDNs\)" <cdni.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/cdni>, <mailto:cdni-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/cdni/>
List-Post: <mailto:cdni@ietf.org>
List-Help: <mailto:cdni-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/cdni>, <mailto:cdni-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 27 Feb 2018 22:58:34 -0000

I think it is up to the dCDN to interpret local time.  If the uCDN wants to use it's local time, it should specify it in UTC.

The question that caused confusion, iirc, was about trying to predict when a cache in a given region is going to be hit, and I don't think that is a tractable problem.  The idea of saying "preposition X at time Y" is an assumption that Y is the optimal time to preposition X (in the uCDN's opinion).  That assumption is based off an underlying assumption that the primetime load on the dCDN is not at time Y, but there's always going to be exceptions to that.  A cache in LA may serve users in NY (or vice versa) and may not have hit the designated local time yet; it violates the assumption whether we use UTC or localtime, so I don't see it as something for which we should design.

Sent from my iPhone

> On Feb 27, 2018, at 4:23 AM, Ori Finkelman <orif@qwilt.com> wrote:
> 
> Hi Kevin,
> I think the difficulty with local time is the interpretation of what to do with it.
> If it is a generic local time, then whose local time is it ? the uCDN ? the dCDN ? per cache or region ?
> OTHO if it is local time plus time zone, then you need to provide them for each and every geo, so it comes back the original question in my previous mail.
> 
> However, after reiteration this internally, I tend to agree it over complicates things, and for now let's stick with a general time scope, stated in UTC.
> If ever an implementation will really need to have different times for different geos, they will be able to add a new object, for example GeoAndTime object that will state the required time per Geo, but this can be deferred for now.
> 
> Thanks,
> Ori
> 
>> On Tue, Feb 27, 2018 at 7:53 AM, Kevin J. Ma <kevin.j.ma.ietf@gmail.com> wrote:
>> Hi Ori,
>> 
>>   (as an individual) I personally don't see any reason to combine time and geolocation; it over complicates things, imo.  I didn't see a problem with providing a time without timezone to be interpreted as "local time".  I didn't think that being able to send a trigger that said "do this at 1am local time" was a terribly difficult concept - it probably just needs some textual clarification and a more precise definition of how the json should be parsed and interpreted, to remove any UTC vs explicit timezone vs "local time" ambiguity?
>> 
>> thanx.
>> 
>> --  Kevin J. Ma
>> 
>> Sent from my iPhone
>> 
>>> On Feb 26, 2018, at 7:03 AM, Ori Finkelman <orif@qwilt.com> wrote:
>>> 
>>> Dear all,
>>> Another question regarding the trigger extensions.
>>> It was suggested that in order to execute a trigger (for example pre-position) in "local time" of each geography, one should combine the geo location extension with the time window extension.
>>> For example, if pre-position should occur on 3AM local time, it would be set for 11AM UTC for California , and 8AM UTC on New-York
>>> While this works logically, it means that the user needs to state for each relevant geography the UTC time for execution, instead of just stating the required local time and let the dCDN handle it per geography.
>>> 
>>> My question is that given that we add trigger extensions, how would be able to state such multiple cases.
>>> 
>>> Take the above example, I can see two alternatives :
>>> 1. Issue two separate trigger commands, one with Geo = CA, and time = 11AM UTC, and a second command with Geo = NY and time = 8AM UTC.
>>>      while this works, it requires a separate command for each geo.
>>> 
>>> 2. Wrap the extension objects with extension groups, such that each group must be applied together. For example this trigger command will have two extension groups, one with Geo=CA and Time=11AM UTC, and the other with Geo=NY and time=8AM UTC.
>>> 
>>> 
>>> 
>>> I would love to get some feedback on this,
>>> 
>>> 
>>> Thanks,
>>> Ori
>>> 
>>> 
>>> 
>>>> On Wed, Feb 7, 2018 at 7:41 PM, Ori Finkelman <orif@qwilt.com> wrote:
>>>> I also prefer pcre only.
>>>> 
>>>> 
>>>>> On Wed, Feb 7, 2018, 17:01 Kevin J. Ma <kevin.j.ma.ietf@gmail.com> wrote:
>>>>> I would favor triggers matching uri signing, i.e., PCRE only, to simplify interoperability requirements; unless there's a really good reason implementers should have to support multiple standards?
>>>>> 
>>>>> Sent from my iPhone
>>>>> 
>>>>>> On Feb 7, 2018, at 3:39 AM, Ori Finkelman <orif@qwilt.com> wrote:
>>>>>> 
>>>>>> Dear Colleagues,
>>>>>> Regarding the addition of a regular expression match for triggers, mainly for invalidation.
>>>>>> What should be the regexp standard we use, PCRE ? POSIX BRE or ERE ?
>>>>>> Does the type of regrexp need to be exchanged via the interface (trigger and capability) ?
>>>>>> 
>>>>>> Example 1: assuming we support only one specific type of regrex
>>>>>> 
>>>>>>     { 
>>>>>>        "regex": "/^(https:\/\/video\.example\.com)\/([a-z])\/([1-7])\/([\/\w \.-]*)*\/?$",    
>>>>>>        "case-sensitive": true
>>>>>>     }
>>>>>> 
>>>>>> Example 2: assuming regexp type is variable
>>>>>> 
>>>>>>     { 
>>>>>>        "regex": "/^(https:\/\/video\.example\.com)\/([a-z])\/([1-7])\/([\/\w \.-]*)*\/?$",    
>>>>>>        "case-sensitive": true
>>>>>>        "regrex-type": "pcre"
>>>>>>     }
>>>>>> 
>>>>>> Thanks,
>>>>>> Ori
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> -- 
>>>>>> Ori Finkelman
>>>>>> Qwilt | Work: +972-72-2221647 | Mobile: +972-52-3832189 | orif@qwilt.com
>>>>> 
>>>>>> _______________________________________________
>>>>>> CDNi mailing list
>>>>>> CDNi@ietf.org
>>>>>> https://www.ietf.org/mailman/listinfo/cdni
>>>> 
>>>> 
>>>> -- 
>>>> Ori Finkelman
>>>> Qwilt | Work: +972-72-2221647 | Mobile: +972-52-3832189 | orif@qwilt.com
>>> 
>>> 
>>> 
>>> -- 
>>> Ori Finkelman
>>> Qwilt | Work: +972-72-2221647 | Mobile: +972-52-3832189 | orif@qwilt.com
> 
> 
> 
> -- 
> Ori Finkelman
> Qwilt | Work: +972-72-2221647 | Mobile: +972-52-3832189 | orif@qwilt.com