Re: [CDNi] CDNi Control-Interface / Trigger: content & metadata selection lists

Kevin Ma <kevin.j.ma.ietf@gmail.com> Tue, 27 July 2021 00:40 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 570FC3A09AA for <cdni@ietfa.amsl.com>; Mon, 26 Jul 2021 17:40:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.854
X-Spam-Level:
X-Spam-Status: No, score=-0.854 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, NORMAL_HTTP_TO_IP=0.001, NUMERIC_HTTP_ADDR=1.242, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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=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 Rc9OZ5hP7Zlr for <cdni@ietfa.amsl.com>; Mon, 26 Jul 2021 17:40:05 -0700 (PDT)
Received: from mail-pl1-x62b.google.com (mail-pl1-x62b.google.com [IPv6:2607:f8b0:4864:20::62b]) (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 C538B3A09A4 for <cdni@ietf.org>; Mon, 26 Jul 2021 17:40:05 -0700 (PDT)
Received: by mail-pl1-x62b.google.com with SMTP id c11so13701043plg.11 for <cdni@ietf.org>; Mon, 26 Jul 2021 17:40:05 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=3fSIfzymjwi5ySgpbaKqJMH3Ha4cGboviIjTXCvQdjs=; b=ZhtVOk8f6psDFi2vux44AHqqfzHHwJGq79052X3fusSg/vgtMNESfaPvARImbIw41O 13Jmie2lbS0Cm3qgfy5Olmzn/tUxC1ldL9mhixE58fruAZ8TrMgQuaeN/C83U//W4qhw Xfe7/WGicKl8qPjvpz+JmAZsRMUmGp1bGT0z9xQUYmcvgglcbsp2hWn+ELx2Naldri3k X+6DSnI03z8bcacn9eh/swDHamrddY5wH0hJEPbCpzfBNQEvCOU+s9eZX9OZJ9VhPHBU U3cbvtMgvOnUhRfaX9Qqdz0zPZxd/WaxJ/TfocQfLf6tHEuHDCnY57gs6ztjR7/Qvwro TfLA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=3fSIfzymjwi5ySgpbaKqJMH3Ha4cGboviIjTXCvQdjs=; b=NqAH2tBirNSaGz+n+UJ5vpVYBVnL76eyMqxjrdfDuST+C40NfOBZc3mLv8UEcY9I60 IVBkAY/oBtNLpwWIzx9AldzN3qPeA656MUlh/LcuqmEluQyNTuPDL7aZYCCSlpDwR8DP bBRLN5IGodaKSizS7VXDty7sUEQQwda6+Q2QIPvfygSTF08iDwXPe5Y3SD5V00AIwvgs 1wsFOt2QRsM5CT7kf/RDsyFKH9ytvDvgVOvkK2V02IPyux3Zbx8hX//FW2ru8rHjQv1+ dzzUZIRdEzzL4x+JRPCaHCch0i+jWEPjjTdhN8enhbB8MoXm1CJGBoonldOHmj3LNXi5 vYcg==
X-Gm-Message-State: AOAM533RfnDaTlltZGEBgmkQiKGhoeqSZRglQt4y4LrQ66yJuFlZ+v8k 1YN2wSMSjQQAQQ07HxeTtP82krpmIjhLuqg/24w=
X-Google-Smtp-Source: ABdhPJx7kQ677WA1gU3A47TjFBdMQcGw7VEwk+llavYle8Ezuv1jmSopZx1lCrAlG4cj+uJEMbgy09XVMc5pSDZ6F/w=
X-Received: by 2002:a17:90a:62cb:: with SMTP id k11mr1540459pjs.153.1627346403617; Mon, 26 Jul 2021 17:40:03 -0700 (PDT)
MIME-Version: 1.0
References: <CA+ec=9pfoGPV6iYqeVxvcfNqyPFB-VDkv4CVNut8ST9QxVb7hg@mail.gmail.com> <CAMrHYE2CBD-PKpYXRW4gz+uEZ0GgarTWo4qV8xbLQ6=3QBUWOQ@mail.gmail.com> <CA+ec=9pPEjDxRwXq5qaSsWTmnH_XcLXRWz0NgEyo5vCMbPOJ8A@mail.gmail.com> <CAMrHYE05brS-MAkOX_sgzt0YFr_rDRL-NeozP+7=yYm=MKPmVg@mail.gmail.com> <CA+ec=9qzkjCnBFnXy9vYUoZVxjhY+d1C-e9HgsLP_jucGjWKqQ@mail.gmail.com> <CAMrHYE3BoGHCx4u63tZxPdDX0t1JrDSgaK4BjMHxnodmJmRavA@mail.gmail.com> <CA+ec=9phcspbxgmdJBHgUVOwqUKe+A9HFNQuJ4+OyDTawaSEqQ@mail.gmail.com>
In-Reply-To: <CA+ec=9phcspbxgmdJBHgUVOwqUKe+A9HFNQuJ4+OyDTawaSEqQ@mail.gmail.com>
From: Kevin Ma <kevin.j.ma.ietf@gmail.com>
Date: Mon, 26 Jul 2021 20:39:52 -0400
Message-ID: <CAMrHYE0_dawnhqD4OLUZczmUMjF-_2y=rj0buyH-u1EtDmQYRA@mail.gmail.com>
To: Nir Sopher <nirs@qwilt.com>
Cc: "<cdni@ietf.org>" <cdni@ietf.org>, "Mishra, Sanjay" <sanjay.mishra@verizon.com>, "Ori Finkelman (IETF)" <ori.finkelman.ietf@gmail.com>
Content-Type: multipart/alternative; boundary="000000000000506d6105c8101c8f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cdni/gVujXpZcTA4qsJ-ZGhEmskHmGqI>
Subject: Re: [CDNi] CDNi Control-Interface / Trigger: content & metadata selection lists
X-BeenThere: cdni@ietf.org
X-Mailman-Version: 2.1.29
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 Jul 2021 00:40:12 -0000

Hi Nir,

  I don't think we want a new registry.  The purpose of the payload type
registry was so that we could have a single registry for all json
object/message types.

thanx.

--  Kevin J. Ma

On Mon, Jul 26, 2021 at 4:29 AM Nir Sopher <nirs@qwilt.com> wrote:

> Hi Kevin,
>
> I further mean to open a new registry all together. CI/T.V2 registry.
>
> Nir
>
> On Sun, Jul 25, 2021 at 10:17 PM Kevin Ma <kevin.j.ma.ietf@gmail.com>
> wrote:
>
>> Hi Nir,
>>
>> > Maybe instead of defining "ci.trigger.v2" and "ci.error.v2" etc., we
>> should define "ci.v2" . I.e. "ci.v2.trigger" .... replacing all objects and
>> that's it
>>
>>   I'm not entirely sure I follow.  Is this just moving the "v2" to the
>> front, but still reregistering all payload types?  I don't have an issue
>> with that.
>>
>> thanx.
>>
>> --  Kevin J. Ma
>>
>> On Sun, Jul 25, 2021 at 4:48 AM Nir Sopher <nirs@qwilt.com> wrote:
>>
>>> Inline,
>>> Thanks,
>>> Nir
>>>
>>> On Sun, Jul 25, 2021 at 4:32 AM Kevin Ma <kevin.j.ma.ietf@gmail.com>
>>> wrote:
>>>
>>>> Hi Nir,
>>>>
>>>> > I'm not sure however regarding the merging the extensions list as
>>>> well - as the extensions do not specify which content to operate on but how
>>>> to operate.
>>>>
>>>> Do the semantics of the object matter?  The objects are independent.  I
>>>> guess you might want to process content/metadata first, so having them
>>>> separated might make stream processing easier?
>>>>
>>> +1
>>>
>>>>
>>>> > > - Section 9.1: is "ci-trigger-collection" changing?  if not, it
>>>> doesn't need to be in the table?
>>>> > NBS: It was already defined in RFC 8007. Should we mention it (now
>>>> without registering it) just for completeness?
>>>>
>>>> I don't think you can put it in this table, since this table is
>>>> requesting registration from IANA, and that value is already registered.
>>>> The alternative would be to register ci-trigger-collection.v2, even though
>>>> the message format will be identical to the original ci-trigger-collection,
>>>> just to keep everything uniform as ".v2"; and just/optionally add a note to
>>>> section 9.1.3 that it is identical to RFC8007 but rev'd for consistency.
>>>>
>>>
>>> Maybe instead of defining "ci.trigger.v2" and "ci.error.v2" etc., we
>>> should define "ci.v2" . I.e. "ci.v2.trigger" .... replacing all objects and
>>> that's it.
>>>
>>>>
>>>> > > - Section 9.1.3: is this for trigger collection, not trigger
>>>> command?  can be removed?
>>>> > NBS: It is a command. The reference within the section should be
>>>> fixed to point at 5.1.1 and not 5.1.3
>>>>
>>>> Section 9.1.1 already covers ci-trigger-command.v2, referencing 5.1.1,
>>>> so I think you can remove Section 9.1.3, unless this is for
>>>> ci-trigger-collection.v2?
>>>>
>>> Missed that, you are correct.
>>> It should have been "collection".
>>>
>>>>
>>>> thanx.
>>>>
>>>> --  Kevin J. Ma
>>>>
>>>> On Sat, Jul 24, 2021 at 6:31 PM Nir Sopher <nirs@qwilt.com> wrote:
>>>>
>>>>> Hi Kevin,
>>>>>
>>>>> I certainly agree that the metadata and content lists should be merged
>>>>> into a single GenericTriggerObjects list.
>>>>> I'm not sure however regarding the merging the extensions list as well
>>>>> - as the extensions do not specify which content to operate on but how to
>>>>> operate.
>>>>> Maybe this list should be called "GenericTriggerInstructions".
>>>>> See examples attached.
>>>>>
>>>>> Thank you for the comments.
>>>>> See my reply inline,
>>>>>
>>>>> Thanks,
>>>>> Nir
>>>>>
>>>>> On Sat, Jul 24, 2021 at 7:55 AM Kevin Ma <kevin.j.ma.ietf@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hi Nir,
>>>>>>
>>>>>>   (As an individual) Would another option be to just have a single
>>>>>> list of GenericTriggerObjects that could contain content, metadata, or
>>>>>> extensions?
>>>>>>
>>>>>>   Some other comments on the draft below.
>>>>>>
>>>>>> thanx.
>>>>>>
>>>>>> --  Kevin J. Ma
>>>>>>
>>>>>> Comments:
>>>>>>
>>>>>> - There are existing errata on RFC8007, we should probably work them
>>>>>> into this updated spec:
>>>>>> https://www.rfc-editor.org/errata_search.php?rfc=8007&rec_status=0
>>>>>>
>>>>> NBS: Ack
>>>>>
>>>>>> - Section 4.8.1: "occured" -> "occurred"
>>>>>>
>>>>> - Section 4.8.1: are there privacy concerns with propagating the PID?
>>>>>> Does the uCDN really need to know the ultimate dCDN, given that we are
>>>>>> allowing the tCDN to decide whether to shield the dCDN?  Also, is there any
>>>>>> guarantee that the PIDs are unique or discernible by the uCDN?
>>>>>>
>>>>> NBS: We'll further discuss it and reply. Note that to preserve privacy
>>>>> it is up to the tCDN to decide whether it puts his PID or the dCDN's PID
>>>>>
>>>>>> - Section 5.2.7/9.4: can we use media types, e.g., "application/dash+xml"
>>>>>> or "application/vnd.apple.mpegurl", rather than defining custom
>>>>>> values?
>>>>>>
>>>>> NBS: I'll look into it
>>>>>
>>>>>> - Section 5.2.8.1: do we think triggers need safe-to-redistribute?
>>>>>> do we envision trigger extensions that are modified by tCDNs?
>>>>>>
>>>>> NBS: We'll further discuss it and reply
>>>>>
>>>>>> - Section 5.2.8.1: ".." -> "."
>>>>>> - Section 6.1: "region," -> "region"
>>>>>>
>>>>> - Section 9.1: is "ci-trigger-collection" changing?  if not, it
>>>>>> doesn't need to be in the table?
>>>>>>
>>>>> NBS: It was already defined in RFC 8007. Should we mention it (now
>>>>> without registering it) just for completeness?
>>>>>
>>>>>> - Section 9.1.3: is this for trigger collection, not trigger
>>>>>> command?  can be removed?
>>>>>>
>>>>> NBS: It is a command. The reference within the section should be fixed
>>>>> to point at 5.1.1 and not 5.1.3
>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Tue, Jul 20, 2021 at 12:49 AM Nir Sopher <nirs@qwilt.com> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> As you may know, CDNi WG I-D for control triggers extensions
>>>>>>> <https://datatracker.ietf.org/doc/html/draft-ietf-cdni-triggers-extensions> extends
>>>>>>> RFC-8007 <https://datatracker.ietf.org/doc/html/rfc8007> (CDNi
>>>>>>> control-interface/triggers) - including the addition of 2 content-selection
>>>>>>> methods as properties to the trigger object: content.regex and
>>>>>>> content.playlists.
>>>>>>> IIUC, every such addition of a property to the trigger object,
>>>>>>> requires the redefinition of the object - in this case creating a "v2"
>>>>>>> trigger object.
>>>>>>>
>>>>>>> We are now working on merging this I-D into RFC-8007 - aiming to
>>>>>>> create the 2nd edition of the CDNi Control Interface RFC.
>>>>>>> During this process we came up with an idea that instead of
>>>>>>> redefining the trigger object over and over again, we can just add a
>>>>>>> "content" selection list and a "metadata" selection list to the trigger
>>>>>>> object.
>>>>>>>
>>>>>>> Following the suggestion, the trigger.V2 object would have the
>>>>>>> following properties (in green, the new lists. In red - properties
>>>>>>> that we may consider to remove):
>>>>>>>
>>>>>>>    - type
>>>>>>>    - content: list of content-selection objects (TBD: type and
>>>>>>>    values)
>>>>>>>    - metadata: list of metadata-selection (TBD: type and values)
>>>>>>>    - metadata.urls
>>>>>>>    - content.urls
>>>>>>>    - content.ccid
>>>>>>>    - metadata.patterns
>>>>>>>    - content.patterns
>>>>>>>    - content.regexs
>>>>>>>    - content.playlists
>>>>>>>    - extensions
>>>>>>>
>>>>>>> The content/metadata selection method types would have designated
>>>>>>> registries and a dCDN should be able to publish via the FCI which methods
>>>>>>> are supported (using designated capabilities). Hence, every future
>>>>>>> content/metadata selection method would only require the addition of the
>>>>>>> proper types to the registry.
>>>>>>>
>>>>>>> Please share your thoughts.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Nir
>>>>>>>
>>>>>>