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

sanjay.mishra@verizon.com Fri, 29 January 2021 21:47 UTC

Return-Path: <sanjay.mishra@verizon.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 DFA4F3A1323 for <cdni@ietfa.amsl.com>; Fri, 29 Jan 2021 13:47:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, HTML_MESSAGE=0.001, 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 (1024-bit key) header.d=verizon.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 8WI66H4ufKbQ for <cdni@ietfa.amsl.com>; Fri, 29 Jan 2021 13:47:07 -0800 (PST)
Received: from smtpout1-tdc.verizon.com (smtpout1-tdc.verizon.com [137.188.104.133]) (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 100263A1322 for <cdni@ietf.org>; Fri, 29 Jan 2021 13:47:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=verizon.com; i=@verizon.com; q=dns/txt; s=corp; t=1611956827; x=1643492827; h=to:cc:subject:date:message-id:references:in-reply-to: mime-version:from; bh=pXJ1F36vs9HJcAbQQ322TTeUS041W3lpERS2bx5D2/s=; b=hoemzYNs4wYOIXia9tXkKdAJviJ7TBPjoKBQG8lQYV3jovibWVW0L1n6 fi04sqv0kqBEUMwlWbC8M3dc1Sq4tSrnuWrCDKiQAjp0J07v92ohn0vaX I35bsxaCETf6iuNm7Z7SahMoMw7aAeJXndvFvZ1zFU3LDvZNW/Uq7YcGr w=;
From: sanjay.mishra@verizon.com
Received: from tbwexch05apd.uswin.ad.vzwcorp.com ([153.114.162.29]) by smtpout1-tdc.verizon.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA384; 29 Jan 2021 21:47:05 +0000
Received: from tbwexch02apd.uswin.ad.vzwcorp.com (153.114.162.26) by tbwexch05apd.uswin.ad.vzwcorp.com (153.114.162.29) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Fri, 29 Jan 2021 16:47:04 -0500
Received: from tbwexch02apd.uswin.ad.vzwcorp.com ([153.114.162.26]) by tbwexch02apd.uswin.ad.vzwcorp.com ([153.114.162.26]) with mapi id 15.00.1497.006; Fri, 29 Jan 2021 16:47:05 -0500
To: Kevin Ma <kevin.j.ma.ietf@gmail.com>, Nir Sopher <nirs@qwilt.com>
CC: "<cdni@ietf.org>" <cdni@ietf.org>
Thread-Topic: [E] Re: [CDNi] New Internet Draft: draft-sopher-cdni-footprint-types-extensions
Thread-Index: AdbaJFhYCZ8Eh0AgSD253QQBmUr/JQNeLJ6QABrV3AAAFq0MgAAXPBkAABH5CIAAIU/JAAAEse0AAlf4hwAA4fWUwA==
Date: Fri, 29 Jan 2021 21:47:05 +0000
Message-ID: <8a3c8004157a4dd4ba7f122234b0deb3@tbwexch02apd.uswin.ad.vzwcorp.com>
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> <CAMrHYE2geSS4i=wLgkd8gOuG=FwbH79u+GRQ6RZPYTw+wsATiw@mail.gmail.com>
In-Reply-To: <CAMrHYE2geSS4i=wLgkd8gOuG=FwbH79u+GRQ6RZPYTw+wsATiw@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.144.60.250]
Content-Type: multipart/alternative; boundary="_000_8a3c8004157a4dd4ba7f122234b0deb3tbwexch02apduswinadvzwc_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/cdni/m-oT0rImQDVDv96KyRReHtzTqDI>
Subject: Re: [CDNi] [E] Re: 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: Fri, 29 Jan 2021 21:47:11 -0000

On Sunday, January 24, 2021 11:53 PM Kevin Ma wrote:

> 2. Define a new footprint type: intersection  (name: tbd)

  Is there a use case that requires intersection of footprint types for capability advertisement? It's not clear to me when intersecting a country code with an IP address range would be needed?  The implication is that some of the IP address range is outside the country while some is within, or that they can move between countries, and that we don't know which IP addresses are outside the country, but we would somehow be able to determine that later when the request is processed?  Is this to deal with VPN/tunneling detection?  That seems more like an ACL issue, than a capabilitiy advertisement issue?

One use case is the ability of uCDN delegate content based on ASN + State. Additionally, this use case may also want to intersect with a set of IP ranges for the state to further restrict to a specific serving region advertised by the dCDN.

Thanks
Sanjay

From: CDNi [mailto:cdni-bounces@ietf.org] On Behalf Of Kevin Ma
Sent: Sunday, January 24, 2021 11:53 PM
To: Nir Sopher <nirs@qwilt.com>
Cc: <cdni@ietf.org> <cdni@ietf.org>
Subject: [E] Re: [CDNi] New Internet Draft: draft-sopher-cdni-footprint-types-extensions

Hi Nir,

> 1. Remove the narrowing semantics comment from the appendix (just write in the new rfc that it should be disregarded?)

  I'm not sure we need a rewrite of the RFC.  I think if we wanted, we could file an errata to clarify the appendix text.

> 2. Define a new footprint type: intersection  (name: tbd)

  Is there a use case that requires intersection of footprint types for capability advertisement? It's not clear to me when intersecting a country code with an IP address range would be needed?  The implication is that some of the IP address range is outside the country while some is within, or that they can move between countries, and that we don't know which IP addresses are outside the country, but we would somehow be able to determine that later when the request is processed?  Is this to deal with VPN/tunneling detection?  That seems more like an ACL issue, than a capabilitiy advertisement issue?

thanx.

--  Kevin J. Ma

On Wed, Jan 13, 2021 at 1:33 AM Nir Sopher <nirs@qwilt.com<mailto: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<https://urldefense.proofpoint.com/v2/url?u=http-3A__1.2.3.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=OUoradIkth5XucdcQQt36s_fntFRciwU3lK01yQ1jKI&e=> 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<https://urldefense.proofpoint.com/v2/url?u=http-3A__1.2.3.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=OUoradIkth5XucdcQQt36s_fntFRciwU3lK01yQ1jKI&e=>"]
    },
    {
        "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<https://urldefense.proofpoint.com/v2/url?u=http-3A__1.2.3.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=OUoradIkth5XucdcQQt36s_fntFRciwU3lK01yQ1jKI&e=>"]
                },
                {
                    "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<https://urldefense.proofpoint.com/v2/url?u=http-3A__1.2.3.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=OUoradIkth5XucdcQQt36s_fntFRciwU3lK01yQ1jKI&e=>"]
                    },
                    {
                        "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<mailto:kevin.j.ma.ietf@gmail.com>> wrote:
Hi Nir,

> Note that the footprint types are also used by the CDNI Metadata LocationACL objects<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_rfc8006-23section-2D4.2.2.2&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=RJIGP2xW9o0hqiOyjQzI4gnNcRXgClEYgvvr1t_mmCU&e=>, 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<https://urldefense.proofpoint.com/v2/url?u=http-3A__192.0.2.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=2FxIiBugJina49_toPDWfx6c6CxzRqRPrvqfTPo9v1c&e=>"]},

  {"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<mailto: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<https://urldefense.proofpoint.com/v2/url?u=http-3A__1.2.3.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=OUoradIkth5XucdcQQt36s_fntFRciwU3lK01yQ1jKI&e=>"]
        },
        {
            "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://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_rfc8006-23section-2D4.2.2.2&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=RJIGP2xW9o0hqiOyjQzI4gnNcRXgClEYgvvr1t_mmCU&e=>, 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<mailto: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<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dietf-2Dalto-2Dcdni-2Drequest-2Drouting-2Dalto-2D14-23section-2D4.1&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=Jye1oA4OunxCMeY4yEg5uCF4aYTkfvSdSlNhjtVSCwQ&e=> ).

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

     *   ipv4cidr
     *   ipv6cidr
     *   asn

  1.  Footprint Class: geo
Grouped footprint-types:

     *   countrycode
     *   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<mailto: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<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dma-2Dcdni-2Dcapabilities-2D04-23section-2D2&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=iC10LHoXo3Stwewzvrq1CExXAZMq2NMpu9igFB2vwHM&e=> and https://tools.ietf.org/html/draft-ma-cdni-capabilities-04#section-3.2<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dma-2Dcdni-2Dcapabilities-2D04-23section-2D3.2&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=2q5AQBuD-vJSqKgILDBXSFVDK7eKltkZ5hbPa_nf6hE&e=> .)

  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<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dsopher-2Dcdni-2Dfootprint-2Dtypes-2Dextensions-2D01-23section-2D2.1&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=RqMWCLD5NKg8_9APT0mS5QhLlhdtKqm52KRuH2p06kU&e=> ), 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/<https://urldefense.proofpoint.com/v2/url?u=https-3A__mailarchive.ietf.org_arch_msg_cdni_3GVjUbBNsf2gV8fQUhcVBRID-5FmU_&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=-vj7k3j648xF0-uvpkReL3jFrh2InqRWTXcyo5JUMKQ&e=> ).  All of the less relevant material was moved to appendices (per: https://mailarchive.ietf.org/arch/msg/cdni/2gLvfnlbpJjIo57bER72kIiSZsk/<https://urldefense.proofpoint.com/v2/url?u=https-3A__mailarchive.ietf.org_arch_msg_cdni_2gLvfnlbpJjIo57bER72kIiSZsk_&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=UQJWA0Xz1faF_4FNG9eCtHib0yF3xim5qgnd710-Yl0&e=> ).  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<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dietf-2Dalto-2Dcdni-2Drequest-2Drouting-2Dalto-2D14-23section-2D4.1&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=Jye1oA4OunxCMeY4yEg5uCF4aYTkfvSdSlNhjtVSCwQ&e=> ).

  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<https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_rfc8008-23section-2D3&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=Bxsj8S4y_lobc6Le6A-aoUTFuz_bhnO7aPgz6JXKQAA&e=> ), 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<mailto: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<https://urldefense.proofpoint.com/v2/url?u=http-3A__192.0.2.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=2FxIiBugJina49_toPDWfx6c6CxzRqRPrvqfTPo9v1c&e=>", “192.0.2.1/24<https://urldefense.proofpoint.com/v2/url?u=http-3A__192.0.2.1_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=Wyx6CG5ijbPdqRAjIlA6w_kn-lvndpuaiqn4O6-NZJ8&e=>”]

“ipv4cidr”, [“192.0.2.2/28<https://urldefense.proofpoint.com/v2/url?u=http-3A__192.0.2.2_28&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=q5wsQHRUiXKi3KtKJf8KskLAtp_wrfju5K5qS7TvPQg&e=>”]

"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<https://urldefense.proofpoint.com/v2/url?u=http-3A__192.0.2.0_24&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=2FxIiBugJina49_toPDWfx6c6CxzRqRPrvqfTPo9v1c&e=>"]

"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<mailto:guillaume.bichot@broadpeak.tv>


From: CDNi [mailto:cdni-bounces@ietf.org] On Behalf Of Nir Sopher
Sent: Wednesday, December 23, 2020 6:19 PM
To: cdni@ietf.org<mailto: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://urldefense.proofpoint.com/v2/url?u=https-3A__eur02.safelinks.protection.outlook.com_-3Furl-3Dhttps-253A-252F-252Furldefense.proofpoint.com-252Fv2-252Furl-253Fu-253Dhttps-2D3A-5F-5Fdatatracker.ietf.org-5Fdoc-5Fdraft-2D2Dsopher-2D2Dcdni-2D2Dfootprint-2D2Dtypes-2D2Dextensions-5F-2526d-253DDwMFaQ-2526c-253DudBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6-5F-5F0PomBTQ-2526r-253DXniVbishGiO2Ao9hKqSc-2DhTVIWCi3T-2Dx6GdHR4ZTgoM-2526m-253DTs5uj-5FnZmoHgi7pPldjWKsDPgmeeiO-5FRkotsI8zZD-2DE-2526s-253DoWZZ4TjWJsq7Ao899RmyOUwUgAjNYeVlksfkKAy-2DUeA-2526e-253D-26data-3D04-257C01-257Cguillaume.bichot-2540broadpeak.tv-257Cf6b67a86cc4b44ff6b7a08d8a83b82a1-257C0ebe44eac9c9438da0407e699f358ed4-257C0-257C0-257C637444320869999346-257CUnknown-257CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0-253D-257C1000-26sdata-3DYxIzX3bst5GAicrOxFI-252BqfRZYO65-252Fwh07pDTwoYrrJg-253D-26reserved-3D0&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=199qR-xhUGFpMQz64HEyx_O2YsGrbZlcYnEtNl4_EBw&e=> 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<mailto:CDNi@ietf.org>
https://www.ietf.org/mailman/listinfo/cdni<https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_cdni&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=ADdyDaI_qgEbwCeWmWy1RQ3zOVUBNUmJKDkCoPDz3Yk&e=>
_______________________________________________
CDNi mailing list
CDNi@ietf.org<mailto:CDNi@ietf.org>
https://www.ietf.org/mailman/listinfo/cdni
<https://urldefense.proofpoint.com/v2/url?u=https-3A__www.ietf.org_mailman_listinfo_cdni&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=XniVbishGiO2Ao9hKqSc-hTVIWCi3T-x6GdHR4ZTgoM&m=45D4ykvMhImJU63a0VFMn9_wQ1ws5DK3Gg76md8BFS8&s=ADdyDaI_qgEbwCeWmWy1RQ3zOVUBNUmJKDkCoPDz3Yk&e=>