Re: [CDNi] New Internet Draft: draft-sopher-cdni-footprint-types-extensions

Nir Sopher <nirs@qwilt.com> Wed, 13 January 2021 10:20 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 069B03A0C2F for <cdni@ietfa.amsl.com>; Wed, 13 Jan 2021 02:20:57 -0800 (PST)
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, 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 KMIQctcmqvy8 for <cdni@ietfa.amsl.com>; Wed, 13 Jan 2021 02:20:52 -0800 (PST)
Received: from mail-lf1-x12e.google.com (mail-lf1-x12e.google.com [IPv6:2a00:1450:4864:20::12e]) (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 EC8053A0C25 for <cdni@ietf.org>; Wed, 13 Jan 2021 02:20:51 -0800 (PST)
Received: by mail-lf1-x12e.google.com with SMTP id x20so1926267lfe.12 for <cdni@ietf.org>; Wed, 13 Jan 2021 02:20:51 -0800 (PST)
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=FZpAPcgeRAlsy0SKKaQ+KolUw0VI6z0d5NnQGpjR+WM=; b=hq5IErG1lmYx2PVAt3aJ15VAA5aRKEgkAvEOut6mY0zAfkrMoAhbdZZARqHXYNdwYn +YgmcRUr/oAtbVlW38sQg0GT4GAMNxWu786q4Z+eGT7P0OF+OJ/UVP6+UxSwHtW/fDKN ZkmWugXIAGVrXSc/aALI6nckOj+Mo/ZUAMoB68B1zsYh1dhOxy31ILWcJgRDNpdOVuQ4 lkPNBp6J8cirjK/A1oP6/sVK4xx9T5cIpImevdW48nyUd2reK+JUz5URiVTEUo/EPwzy BIC1ez+8zuM6MfFHqWFxtLWVTlHDRlNnvRz2pypjcTNby0gOEWy9Ycl2NSIqLhzZT9Y9 sOVA==
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=FZpAPcgeRAlsy0SKKaQ+KolUw0VI6z0d5NnQGpjR+WM=; b=clMYt7KzLIkZ55unW7ADvbGsgb9M6sbRZnv2AxbJ29gB/m8IrDsEq6tcjoL/b3cQkx wTHaU4Czwwp0nwjNds/KMY034+q0FY/Im1xBOCiW89I7tGy/Svw2HrJd3/+8Oupqx2mG 2YXwKZArfExjRQDtD/rluxmpY8YyyyQW06moBiXc2hIlzwVulOLcvg0q4VeOVgDEnWsx BgwyMO45Zt76EyO3K57GGmtpNeusanPRK+jbpW/HZoxWCOyTHrV/ajPq/RW+CujgiFLD ffxpJAO6XWhJMfe+5MB8RZ8G2PrQfBHvC8R9JeiU6jkh9bvmSYhHdRz9yK0PZdO67xNG WMKw==
X-Gm-Message-State: AOAM5325WAfsN8+xiHNPeBGuD/pLuEdldb6PmKQlV7ss5bnVCofKaBZa Xbs/2E5QVM494asuKT6i9gHOmv+/bNLlQO3IMRA1vw==
X-Google-Smtp-Source: ABdhPJwfW87YF7dSlKW2/NXewVudjeU8fwpdSzfNM82AdQZsA//o/4vp40O6PfW1N+VfsTRYMwpKjrcoLR7jB1a1ixw=
X-Received: by 2002:a19:8a84:: with SMTP id m126mr528128lfd.249.1610533249582; Wed, 13 Jan 2021 02:20:49 -0800 (PST)
MIME-Version: 1.0
References: <97e045b4b8ae42738a43f3dc0e3e1ca1@tbwexch02apd.uswin.ad.vzwcorp.com> <PR3PR10MB4239816DC20211300DC4EE49E1AC0@PR3PR10MB4239.EURPRD10.PROD.OUTLOOK.COM> <CAMrHYE2QM8+G2Z0BJ5O3iLej7qsxB_ZWY_8G9jHsrwVX0-1u8w@mail.gmail.com> <CA+ec=9paJQYpTQRc9v7C_WqekynApA-mNY90746uXc+_+mHs-g@mail.gmail.com> <CAMrHYE2Me__fOd8Q=e7ni98M6Aws+Z8YyyOfZamBjVUS7G2mzA@mail.gmail.com> <CA+ec=9pA4z3Psfj8NJwEenWEh_se0W_MgikQM5-CCVPf35qj_A@mail.gmail.com> <CAMrHYE2M1tTnMLV_xRSXmGL4sQgCxvYSER2mi3nLohHdrxm9fA@mail.gmail.com> <CA+ec=9rhB2=tUZUH_7ZekCT7EGuUy5Zt3Z0ZK7F=qvu02Yev7w@mail.gmail.com>
In-Reply-To: <CA+ec=9rhB2=tUZUH_7ZekCT7EGuUy5Zt3Z0ZK7F=qvu02Yev7w@mail.gmail.com>
From: Nir Sopher <nirs@qwilt.com>
Date: Wed, 13 Jan 2021 12:20:39 +0200
Message-ID: <CA+ec=9q-O8rpRHf6t9k6ZnTb5yQxg+be1_YTjdTeg49fMdkAPA@mail.gmail.com>
To: Kevin Ma <kevin.j.ma.ietf@gmail.com>
Cc: Guillaume Bichot <guillaume.bichot@broadpeak.tv>, "<cdni@ietf.org>" <cdni@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000003d9bdf05b8c57e67"
Archived-At: <https://mailarchive.ietf.org/arch/msg/cdni/5f2HJ14GuIWSfSQXeGhnO-3aYCM>
Subject: Re: [CDNi] New Internet Draft: draft-sopher-cdni-footprint-types-extensions
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, 13 Jan 2021 10:20:57 -0000

[Resending, with a clearer output examples]

Thanks Kevin,

I'll summarize your suggestion as I understand it.
You suggest to
1. Remove the narrowing semantics comment from the appendix (just write in
the new rfc that it should be disregarded?)
2. Define a new footprint type: intersection  (name: tbd)

So if we want to point at ips 1.2.3.0/24 and 2001:db8::/32 only in the US
we would like to intersect
"footprints": [
    {
        "footprint-type": "iso3166code",
        "footprint-value": ["us"]
    }
]

with
"footprints": [
    {
        "footprint-type": "ipv4",
        "footprint-value": ["1.2.3.0/24"]
    },
    {
        "footprint-the type": "ipv6",
        "footprint-value": ["2001:db8::/32"]
    }
]

To create:
    "footprints": [
        {
            "footprint-type": "footprint-intersection",
            "footprint-value": [
                {
                    "footprints": [
                        {
                            "footprint-type": "iso3166code",
                            "footprint-value": ["us"]
                        }
                    ]
                },
                {
                    "footprints": [
                        {
                            "footprint-type": "ipv4",
                            "footprint-value": ["1.2.3.0/24"]
                        },
                        {
                            "footprint-the type": "ipv6",
                            "footprint-value": ["2001:db8::/32"]
                        }
                    ]
                }
            ]
        }
    ]
}

What would you say about keeping the narrowing semantics and define a
"union" (name: tbd) instead?
It feels more natural to me (I prefer ORs of ANDs vs. ANDs of ORs), and it
does not break the definitions done in RFC-8008 which might have came from
a deeper discussion you had back then.

"footprints": [
    {
        "footprints": [
            {
                "footprint-type": "iso3166code",
                "footprint-value": ["us"]
            },
            {
                "footprint-type": "union",
                "footprint-value": [
                    {
                        "footprint-type": "ipv4",
                        "footprint-value": ["1.2.3.0/24"]
                    },
                    {
                        "footprint-the type": "ipv6",
                        "footprint-value": ["2001:db8::/32"]
                    }
                ]
            }
        ]
    }

Thanks
Nir

On Wed, Jan 13, 2021 at 8:33 AM Nir Sopher <nirs@qwilt.com> wrote:

> Thanks Kevin,
>
> I'll summarize your suggestion as I understand it.
> You suggest to
> 1. Remove the narrowing semantics comment from the appendix (just write in
> the new rfc that it should be disregarded?)
> 2. Define a new footprint type: intersection  (name: tbd)
>
> So if we want to point at ips 1.2.3.0/24 and 2001:db8::/32 only in the US
> we would like to intersect
> "footprints": [
>     {
>         "footprint-type": "iso3166code",
>         "footprint-value": ["us"]
>     }
> ]
>
> with
> "footprints": [
>     {
>         "footprint-type": "ipv4",
>         "footprint-value": ["1.2.3.0/24"]
>     },
>     {
>         "footprint-the type": "ipv6",
>         "footprint-value": ["2001:db8::/32"]
>     }
> ]
>
> To create:
> "footprints": [
>     {
>         "footprint-type": "intersection",
>         "footprint-value": [
>             [
>                 {
>                     "footprint-type": "iso3166code",
>                     "footprint-value": ["us"]
>                 }
>             ],
>             [
>                 {
>                     "footprint-type": "ipv4",
>                     "footprint-value": ["1.2.3.0/24"]
>                 },
>                 {
>                     "footprint-the type": "ipv6",
>                     "footprint-value": ["2001:db8::/32"]
>                 }
>             ]
>         ]
>     }
>
> What would you say about keeping the narrowing semantics and define a
> "union" (name: tbd) instead?
> It feels more natural to me, and it does not break the definitions done in
> RFC-8008 which might have came from a deeper discussion you had back then.
>
> "footprints": [
>     {
>         "footprints": [
>             {
>                 "footprint-type": "iso3166code",
>                 "footprint-value": ["us"]
>             },
>             {
>                 "footprint-type": "union",
>                 "footprint-value": [
>                     {
>                         "footprint-type": "ipv4",
>                         "footprint-value": ["1.2.3.0/24"]
>                     },
>                     {
>                         "footprint-the type": "ipv6",
>                         "footprint-value": ["2001:db8::/32"]
>                     }
>                 ]
>             }
>         ]
>     }
>
> Thanks
> Nir
>
> On Wed, Jan 13, 2021, 06:19 Kevin Ma <kevin.j.ma.ietf@gmail.com> wrote:
>
>> Hi Nir,
>>
>> > Note that the footprint types are also used by the CDNI Metadata
>> LocationACL objects <https://tools.ietf.org/html/rfc8006#section-4.2.2.2>,
>> where IIUC the list of objects is considered as a set.
>>
>>   Correct.  In RFC8006 section 4.2.2.1, the footprint list is treated as
>> a cumulative list.  I would expect the same to be true of the footprint
>> list in the FCI base advertisement object (in section 5.1 of RFC8008).  So,
>> the example in section 2.1 of your draft:
>>
>>     [{"footprint-type": "ipv4cidr","footprint-value": ["192.0.2.0/24"]},
>>
>>   {"footprint-type": "ipv6cidr","footprint-value": ["2001:db8::/32"]}]
>>
>>
>>   would cover the union of the ipv4 and the ipv6 prefixes, not the
>> intersection.
>>
>>   If you wanted to create more complex multi-footprint-intersection
>> rules, that could be done by implementing a custom footprint type with the
>> intersection rules clearly defined.
>>
>> thanx.
>>
>> --  Kevin J. Ma
>>
>> On Tue, Jan 12, 2021 at 7:25 AM Nir Sopher <nirs@qwilt.com> wrote:
>>
>>> Hi Kevin and Guillaume,
>>>
>>> I did not intend to change the footprint objects. I assume we can just
>>> specify in the new RFC the class of each type and the semantic would apply
>>> on the current syntax.
>>> If we make changes in the syntax, we can do it simply by defining the
>>> footprints in 2 layers. For example:
>>> "footprints": [
>>>     [
>>>         {
>>>             "footprint-type": "iso3166code",
>>>             "footprint-value": ["ca", "us-ny"]
>>>         }
>>>     ],
>>>     [
>>>         {
>>>             "footprint-type": "ipv4",
>>>             "footprint-value": ["1.2.3.0/24"]
>>>         },
>>>         {
>>>             "footprint-the type": "ipv6",
>>>             "footprint-value": ["2001:db8::/32"]
>>>         }
>>>     ]
>>> ]
>>>
>>> The semantic would be considering the inner lists objects as sets, and
>>> then narrowing the outer list results.
>>> This would not force us to define the class of each type.
>>>
>>> The change I describe above can be valid to all FCI implementations.
>>> Note that the footprint types are also used by the CDNI Metadata
>>> LocationACL objects
>>> <https://tools.ietf.org/html/rfc8006#section-4.2.2.2>, where IIUC the
>>> list of objects is considered as a set.
>>>
>>> WRT the ALTO PID, I'll need to look deeper into it
>>>
>>> Nir
>>>
>>> On Tue, Jan 12, 2021 at 5:51 AM Kevin Ma <kevin.j.ma.ietf@gmail.com>
>>> wrote:
>>>
>>>> Hi Nir,
>>>>
>>>> > IIUC, this would weaken the protocol:
>>>>
>>>>   Again, just to be clear, the FCI semantics RFC was never intended to
>>>> define a "protocol".  The purpose was only to define a common message
>>>> format.  It is arguable whether the interpretation of the footprint list
>>>> entries should be protocol specific, but I think we can infer that we felt
>>>> such interpretations were protocol specific and thus beyond the scope of
>>>> the FCI semantics RFC.  We probably could've made that more clear, but
>>>> again, hindsight.
>>>>
>>>> > define now a "footprint object class", grouping the "footprint object
>>>> types"
>>>>
>>>>   wrt the grouping proposal, it is not clear to me that there is a
>>>> natural grouping for footprint types or how future footprint types would be
>>>> matched to a group, .e.g., should asn always be combined with ipv4/ipv6,
>>>> and why not combine IPs with countries?  There will likely always be
>>>> counter examples where a fixed grouping doesn't fit a certain scenario or
>>>> there is a difference of opinion on what the natural groupings should be.
>>>> These are the types of things we were trying to avoid in defining a generic
>>>> message envelope and wanted to delegate to protocol implementation specs
>>>> (e.g., the altopid footprint type solves the ipv4/ipv6 problem for the ALTO
>>>> FCI implementation,
>>>> https://tools.ietf.org/html/draft-ietf-alto-cdni-request-routing-alto-14#section-4.1
>>>> ).
>>>>
>>>>   Would the intent here be to enforce a grouping proposal on all FCI
>>>> implementations?  Or is there a specific FCI protocol you have in mind?  Is
>>>> SVA intending to use ALTO for FCI?
>>>>
>>>> thanx!
>>>>
>>>> --  Kevin J. Ma
>>>>
>>>> On Mon, Jan 11, 2021 at 11:45 AM Nir Sopher <nirs@qwilt.com> wrote:
>>>>
>>>>> Thanks Guillaume and Kevin,
>>>>>
>>>>> Indeed, disregarding the statement in the appendix would negate the
>>>>> need for the ipv4v6cidr.
>>>>> However, IIUC, this would weaken the protocol:
>>>>> Take for example an integration where we would like the footprint to
>>>>> cover only clients within a Europe wide spread ASN, but only in Belgium, or
>>>>> only the NY clients of a US-wide ASN. The protocol when disregarding the
>>>>> "narrowing semantics" statement would not be able to specify it (while in
>>>>> the original semantics it is definable).
>>>>>
>>>>> One can argue we need to be able to create some boolean expression.
>>>>> ORing and ANDing footprints.
>>>>> I think a better approach (Guillaume, it might be the direction you
>>>>> were pointing at), is to define now a "footprint object class",
>>>>> grouping the "footprint object types"
>>>>>
>>>>>    1. Footprint Class: ip
>>>>>    Grouped footprint-types:
>>>>>       1. ipv4cidr
>>>>>       2. ipv6cidr
>>>>>       3. asn
>>>>>    2. Footprint Class: geo
>>>>>    Grouped footprint-types:
>>>>>       1. countrycode
>>>>>       2. iso3166code
>>>>>
>>>>> When a footprint objects list is composed from
>>>>> multiple footprint-object classes, we should first merge objects from the
>>>>> same class as a "set", and then use the original narrowing semantics
>>>>> between the classes.
>>>>>
>>>>> This approach would solve the issue and would align with the original
>>>>> semantics in most cases, but would also avoid the "absurd result".
>>>>>
>>>>> Thoughts?
>>>>> Thanks,
>>>>> Nir
>>>>>
>>>>> On Mon, Jan 11, 2021 at 7:56 AM Kevin Ma <kevin.j.ma.ietf@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>>   It's been a while since we had the FCI debates, and FCI has a
>>>>>> rather complex history, so I've had to refresh my memory.
>>>>>>
>>>>>>   wrt the text in question: "Multiple footprint constraints are
>>>>>> additive: the advertisement of different footprint types narrows the
>>>>>> dCDN's candidacy cumulatively." I believe that statement was
>>>>>> referring to if multiple FCI messages were sent for the same capability but
>>>>>> the messages had different footprints in them; I do not believe it was
>>>>>> intended to apply to multiple footprints in the same message.  (I believe
>>>>>> it stemmed from a protocol implementation question for how to override
>>>>>> footprints and how to deal with footprints in sequential messages, which I
>>>>>> had addressed in my original capabilities protocol draft:
>>>>>> https://tools.ietf.org/html/draft-ma-cdni-capabilities-04#section-2
>>>>>> and
>>>>>> https://tools.ietf.org/html/draft-ma-cdni-capabilities-04#section-3.2
>>>>>> .)
>>>>>>
>>>>>>   In addition, I don't know that we should give any normative weight
>>>>>> to a non-normative statement in an appendix.  As the draft points out (
>>>>>> https://tools.ietf.org/html/draft-sopher-cdni-footprint-types-extensions-01#section-2.1
>>>>>> ), applying the statement to the list of footprints in a single message
>>>>>> produces an absurd result (i.e., disjoint footprints produce an empty set
>>>>>> of footprints), and that was certainly not the intention (which I think we
>>>>>> can infer from the prevention of such a result in the protocol drafts).
>>>>>>
>>>>>> > Frankly, this is very strange that the statement is almost hidden
>>>>>> in a kind of annex  whereas it could have been located in section 5 in a
>>>>>> proper dedicated section.
>>>>>>
>>>>>>   Coming out of IETF 90 and 91, we had decided to focus the FCI
>>>>>> semantics draft on just the information that needed to be advertised and
>>>>>> separate out the protocol specifications (see:
>>>>>> https://mailarchive.ietf.org/arch/msg/cdni/3GVjUbBNsf2gV8fQUhcVBRID_mU/
>>>>>> ).  All of the less relevant material was moved to appendices (per:
>>>>>> https://mailarchive.ietf.org/arch/msg/cdni/2gLvfnlbpJjIo57bER72kIiSZsk/
>>>>>> ).  In hindsight we probably could've done more to clean up the appendices,
>>>>>> but as is always the case, we did not have the benefit of hindsight at the
>>>>>> time.  The decision was made to rely on ALTO as a transport protocol, which
>>>>>> defines its own footprint type and enforcement rules (see:
>>>>>> https://tools.ietf.org/html/draft-ietf-alto-cdni-request-routing-alto-14#section-4.1
>>>>>> ).
>>>>>>
>>>>>>   We probably also could have done more to specify the interpretation
>>>>>> of the footprint list, but I think that was just delegated to the protocol
>>>>>> specs.  At the time, there was contentious debate between advertising of
>>>>>> footprints vs advertising of capabilities (thus:
>>>>>> https://tools.ietf.org/html/rfc8008#section-3 ), and our focus was
>>>>>> clarifying the advertisement of capabilities with footprint restrictions
>>>>>> and completing the semantics draft so we could move forward with the
>>>>>> protocol draft(s).
>>>>>>
>>>>>>   If folks feel strongly about the appendix being confusing, we could
>>>>>> consider filing an errata?
>>>>>>
>>>>>> Sanjay/Nir,
>>>>>>
>>>>>>   If we disregard the statement in the appendix and assume that
>>>>>> within a single message, multiple footprint types are allowed and are
>>>>>> considered as a set, does that negate the need for the proposed ipv4v6cidr
>>>>>> footprint type?
>>>>>>
>>>>>>   wrt the iso3166code footprint type, I don't see any issue with it
>>>>>> if folks feel it would be useful.
>>>>>>
>>>>>> thanx!
>>>>>>
>>>>>> --  Kevin J. Ma
>>>>>>
>>>>>> On Sun, Jan 10, 2021 at 5:54 PM Guillaume Bichot <
>>>>>> Guillaume.Bichot@broadpeak.tv> wrote:
>>>>>>
>>>>>>> Hi Sanjay & Nir.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Here is the  statement from 8008 (Appendix B) : Multiple footprint constraints are additive: the advertisement of different footprint types narrows the dCDN's candidacy cumulatively.
>>>>>>>
>>>>>>> Frankly, this is very strange that the statement is almost hidden in a kind of annex  whereas it could have been located in section 5 in a proper dedicated section.
>>>>>>>
>>>>>>> Your proposal solves the issue but not completely. I guess nothing prevent me to add several footprint constraints of the same type like the example below. Strictly speaking, if I captured well that statement, we should end up with an empty list as well.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> {
>>>>>>>
>>>>>>>      "capabilities": [
>>>>>>>
>>>>>>>        {
>>>>>>>
>>>>>>>          "capability-type": <CDNI capability object type>,
>>>>>>>
>>>>>>>          "capability-value": <CDNI capability object>,
>>>>>>>
>>>>>>>          },
>>>>>>>
>>>>>>>          "footprints": [
>>>>>>>
>>>>>>>              {
>>>>>>>
>>>>>>>                  "footprint-type": "ipv4cidr",
>>>>>>>
>>>>>>>                  "footprint-value": ["192.0.20/24"].
>>>>>>>
>>>>>>>              },
>>>>>>>
>>>>>>>              {
>>>>>>>
>>>>>>>                  "footprint-type": "ipv4cidr",
>>>>>>>
>>>>>>>                  "footprint-value": [["192.0.21/24"]
>>>>>>>
>>>>>>>              }
>>>>>>>
>>>>>>>          ]
>>>>>>>
>>>>>>>        }
>>>>>>>
>>>>>>>      ]
>>>>>>>
>>>>>>>    }
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> I have another proposal  that is the following: instead of creating a new footprint type that requires a change in RFC8006 as well, why not just changing that statement that looks strange and almost faulty.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -remove that faulty statement in Appendix B.
>>>>>>>
>>>>>>> - create a new section 5.x about “footprints” and add a new statement (or just add that new statement in Appendix B) like the following:
>>>>>>>
>>>>>>> ”Several footprint constraints can be given of either the same type or not.   The uCDN MUST consider the resulting footprint as a set of geographical areas constrained with a set of IP address ranges if any. If several geographical areas overlap then the coverage zone corresponds to the cumulative areas.”
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Examples
>>>>>>>
>>>>>>> -          E1: a set of address ranges
>>>>>>>
>>>>>>> "ipv4cidr", ["192.0.2.0/24", “192.0.2.1/24”]
>>>>>>>
>>>>>>> “ipv4cidr”, [“192.0.2.2/28”]
>>>>>>>
>>>>>>> "ipv6cidr", ["2001:db8::/32"]
>>>>>>>
>>>>>>> -          E2: a set of geographical areas
>>>>>>> "iso3166code", ["ca", us-ny]
>>>>>>>
>>>>>>> -          E3: a mixed of geographical areas and address ranges
>>>>>>>
>>>>>>> "ipv4cidr", ["192.0.2.0/24"]
>>>>>>>
>>>>>>> "ipv6cidr", ["2001:db8::/32"]
>>>>>>>
>>>>>>> -          "iso3166code", ["ca", “us-ny”]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Guillaume
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *Guillaume BICHOT, **Principal Engineer, Head of Exploration*
>>>>>>>
>>>>>>> +33 (0) 6 8559 7666 | guillaume.bichot@broadpeak.tv
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *From:* CDNi [mailto:cdni-bounces@ietf.org <cdni-bounces@ietf.org>] *On
>>>>>>> Behalf Of *Nir Sopher
>>>>>>> *Sent:* Wednesday, December 23, 2020 6:19 PM
>>>>>>> *To:* cdni@ietf.org
>>>>>>> *Subject:* [E] [CDNi] New Internet Draft:
>>>>>>> draft-sopher-cdni-footprint-types-extensions
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> We have submitted draft-sopher-cdni-footprint-types-extensions
>>>>>>> <https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Furldefense.proofpoint.com%2Fv2%2Furl%3Fu%3Dhttps-3A__datatracker.ietf.org_doc_draft-2Dsopher-2Dcdni-2Dfootprint-2Dtypes-2Dextensions_%26d%3DDwMFaQ%26c%3DudBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ%26r%3DXniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM%26m%3DTs5uj_nZmoHgi7pPldjWKsDPgmeeiO_RkotsI8zZD-E%26s%3DoWZZ4TjWJsq7Ao899RmyOUwUgAjNYeVlksfkKAy-UeA%26e%3D&data=04%7C01%7Cguillaume.bichot%40broadpeak.tv%7Cf6b67a86cc4b44ff6b7a08d8a83b82a1%7C0ebe44eac9c9438da0407e699f358ed4%7C0%7C0%7C637444320869999346%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YxIzX3bst5GAicrOxFI%2BqfRZYO65%2Fwh07pDTwoYrrJg%3D&reserved=0>
>>>>>>> that extends RFCs 8006/8008 in order to address the following issue:
>>>>>>>
>>>>>>>    - Sections 4.3.5 and 4.3.6 of [RFC8006] specify the "IPv4CIDR"
>>>>>>>    and  "IPv6CIDR" footprint types, respectively, for listing IP addresses
>>>>>>>    blocks.  Using Footprint Objects of these types, one can define an FCI
>>>>>>>    Capability Advertisement Object footprint constraints that match IPv4 or
>>>>>>>    IPv6 clients. Also as described in section 5 of RFC 8008, the FCI
>>>>>>>    Capability Advertisement Object includes an array of such CDNI Footprint
>>>>>>>    Objects. The array of Footprint Objects has a "narrowing" semantic that
>>>>>>>    prevents the usage of IPv4/IPv6 objects together in order to create a
>>>>>>>    footprint constraint that matches IPv4 clients together with IPv6 clients.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> In the submitted draft:
>>>>>>>
>>>>>>>    1. We add a new usecase of dCDN advertising a footprint that
>>>>>>>    consists of both IPv4 and IPv6 client addresses, by defining a new
>>>>>>>    "IPv4v6CIDR" Footprint Type.
>>>>>>>    2. We also add support for ISO3166Code Footprint Type, based on
>>>>>>>    ISO 3166 country codes and regions definition. This Footprint Type allows
>>>>>>>    the dCDN to advertise a footprint based on a specific region, for example a
>>>>>>>    state in the USA.
>>>>>>>
>>>>>>> We would highly appreciate it if folks can review and provide any
>>>>>>> feedback.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Thanks and Happy Holidays,
>>>>>>>
>>>>>>> Sanjay & Nir
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> CDNi mailing list
>>>>>>> CDNi@ietf.org
>>>>>>> https://www.ietf.org/mailman/listinfo/cdni
>>>>>>>
>>>>>> _______________________________________________
>>>>>> CDNi mailing list
>>>>>> CDNi@ietf.org
>>>>>> https://www.ietf.org/mailman/listinfo/cdni
>>>>>>
>>>>>>