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

Nir Sopher <nirs@qwilt.com> Wed, 28 July 2021 20:13 UTC

Return-Path: <nirs@qwilt.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 91D2B3A1E6C for <cdni@ietfa.amsl.com>; Wed, 28 Jul 2021 13:13:55 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.655
X-Spam-Level:
X-Spam-Status: No, score=-0.655 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, 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=qwilt-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 tqrfTF_YlDWk for <cdni@ietfa.amsl.com>; Wed, 28 Jul 2021 13:13:49 -0700 (PDT)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (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 537453A1E6F for <cdni@ietf.org>; Wed, 28 Jul 2021 13:13:49 -0700 (PDT)
Received: by mail-ed1-x52b.google.com with SMTP id r16so4894177edt.7 for <cdni@ietf.org>; Wed, 28 Jul 2021 13:13:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qwilt-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=NwPrvWQL0/gZg/9VWdcBUbv7o+Y8QjwuCeieuK2Ksrk=; b=z0CP2MCHvF/gwmJJ78EVwo/xkE5hykREuf/r+aEv5/3vK2fL1SM20y4polxe5NEhAC hVMe2GtUJR5XuUa4Qwp3odg8mWI346T8MHCp2ZdvaT/0MR9ch5vEVWz/GhxKckza/BoT lX+NMBnQBC0wO2yicYGXfnANn6JlUH/xTxOutxYsXvh7Gr0kako0edXBepCkKsfOp5Y2 kxFR1bRtSikE6VEccUry3N0z5UELNSbfpNic0dE99o6bIrqipYns0d+WlwGCnIJ1jMSn jhS3TtU5cP7ELe34Qhiz5PYafMpAa57lw6oHXfX3wkmSYukxLhO6woraSzyzGkCJc+QC ttTg==
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=NwPrvWQL0/gZg/9VWdcBUbv7o+Y8QjwuCeieuK2Ksrk=; b=SBsZ4fGQHa9GD6AEuW4n37bDU3IOnc77+zahdfLsgcvh2I8lqitWHX0/I1M6xfDFgZ uHSyKMPMUZXk0xaHdVSINxAEpec3SUn/YaA9DPzZ7yRKp1MW0I1onqTx+FRzK1FBG95c NBlINP8wrFrfEyKyDn1T80sxzdMFFtq8KiQXaO37jhxFKexJAwRlpmrK/shgldl14iPF t4e0lR7266LnEjAEHNjzzXFYQzYpe93HOxOJ5cBTHmLAaA4IZcyBXICgk/VFk8mYysGT xBeRQYe929wqBAWwrjcP/KAVgv5LBMCfk4EyDXVIDu28cnt1hlBMjeVs7hFl6f6TT2+y M1Fw==
X-Gm-Message-State: AOAM531TpJ3qBbEf5SsNc+pyQV2KJMiREUL646syDP4fzQrT2aj/5org eHY8TsdD1PaOvAUlnNC+Zl9LniAUvZDvWKb3sUxDUA==
X-Google-Smtp-Source: ABdhPJwFRT+VHta0nPGfGr5MmvpSEOHZb3EIcJlO1ByfOvDto0/T4SU12V5cKzVpq/Xw5gQFHozs7Apun/ThzaYeyYQ=
X-Received: by 2002:a50:fe07:: with SMTP id f7mr1835492edt.334.1627503225990; Wed, 28 Jul 2021 13:13:45 -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> <CAMrHYE0_dawnhqD4OLUZczmUMjF-_2y=rj0buyH-u1EtDmQYRA@mail.gmail.com>
In-Reply-To: <CAMrHYE0_dawnhqD4OLUZczmUMjF-_2y=rj0buyH-u1EtDmQYRA@mail.gmail.com>
From: Nir Sopher <nirs@qwilt.com>
Date: Wed, 28 Jul 2021 23:13:34 +0300
Message-ID: <CA+ec=9qrrVbpVgCBEzN=1fs3zHjNB=dE6VcJ6bxC3Y=fqz_K-A@mail.gmail.com>
To: Kevin Ma <kevin.j.ma.ietf@gmail.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="000000000000a807f305c8349f6f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cdni/Kqc7JFxf3nezlPnKH1twCUSjqow>
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: Wed, 28 Jul 2021 20:13:56 -0000

Hi Kevin and all,

Following Kevin's comments we now released a second version of the draft
<https://datatracker.ietf.org/doc/draft-sopher-cdni-ci-triggers-rfc8007bis/02/>
-
dealing mostly with typos and such.
AIs yet to be addressed:

   1. 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?
   *Status*: Note that to preserve privacy it is up to the tCDN to decide
   whether it puts his PID or the dCDN's PID.
   *TBD*: Relate to the question whether PIDs are unique or discernible by
   the uCDN
   2. 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?
   *Status*: We will look into it
   3. Section 5.2.8.1: do we think triggers need safe-to-redistribute?  do
   we envision trigger extensions that are modified by tCDNs?
   *Status*: Should be further discussed.
   We have started to look into it. We currently do not envision trigger
   modifications by the tCDN.
   However, shouldn't the "safe-to-redistribute" field be added as a good
   practice?
   4. Section 9.1: is "ci-trigger-collection" changing?  if not, it doesn't
   need to be in the table?
   *Status*: We would define a "v2" of the collection object
   5. Errata: https://www.rfc-editor.org/errata/eid5064
   *Status: *We would take the opportunity to add both trigger 's
   "canceling" and "deletion" examples.

I would prefer to further address these issues once we create a new WG
draft.

Thanks,
Nir

On Tue, Jul 27, 2021 at 3:40 AM Kevin Ma <kevin.j.ma.ietf@gmail.com> wrote:

> 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
>>>>>>>>
>>>>>>>