Re: Size of CR in CRH

Tom Herbert <tom@herbertland.com> Wed, 20 May 2020 19:13 UTC

Return-Path: <tom@herbertland.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EF7AF3A0AD4 for <ipv6@ietfa.amsl.com>; Wed, 20 May 2020 12:13:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.897
X-Spam-Level:
X-Spam-Status: No, score=-1.897 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, SPF_HELO_NONE=0.001, SPF_NONE=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=herbertland-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 G39KAMev5Hbb for <ipv6@ietfa.amsl.com>; Wed, 20 May 2020 12:13:13 -0700 (PDT)
Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [IPv6:2a00:1450:4864:20::635]) (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 3F4DD3A0AD1 for <6man@ietf.org>; Wed, 20 May 2020 12:13:13 -0700 (PDT)
Received: by mail-ej1-x635.google.com with SMTP id d7so5499028eja.7 for <6man@ietf.org>; Wed, 20 May 2020 12:13:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=herbertland-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=eM5MecoDl9KKN2m2IvlqmQQYmJ8oJ836xT3q6ve/9ek=; b=xY+qyStgCip9KGXbKL6r2I25I8J5/sUC0+dOkRYcRYFrgkk9gOOsMe9/kBfOcn2bDg 6IBM2N/qT4PxTXz2Ce1f1QjOgWtD+S+3P1xCC769BAzxsV/Gs7w+Bxk1lmbZdDLtytvj 2418nR6uJzrveydlF9QU+3YfCFXnbT95pVJhbZzvK2rPEuQABfvFcwLOH03PkZmTlZ9m 3YJmPWuM7p0rn5RK5uuZa3mpZ1Li/+AgDovbXNxldcUx6NHIUoh2hHCdt1x0p6B21xNi X0R5xtapzuJzlVGVThJpEJD+EjEeaNc+Cjgy7eG2HLfl1Nup5JlhHgWmHZICJDSndTpw 1n9Q==
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:content-transfer-encoding; bh=eM5MecoDl9KKN2m2IvlqmQQYmJ8oJ836xT3q6ve/9ek=; b=giLdyKsBtYbEdTsg8m27h7tadJcNPfHXU38lAfr67NxYUF2/QxfGbZqineeT+hNme3 JFNd39xWtHaCudBA0OAEGJ6HxFuYCM8ZT6yecXuwmq7wyY1BQWGkntCipusMkDIq6R7/ s24IgE+LWZdve4baVAauwLfW6IAbJTIirKADWFfaZ4rMz8JGl2id7IgJdq2reelt3Jo/ 4GPzic2XJV/drc5ntxF3pH4pc6OOPGCuALqi79ZV1Gdl8VCcWesmPPfnAQSFYACt9Gh7 wXn0+xEq+cL1QoaNJr/B0wPj5aoxxf6etWyhBao7J7VCPogdHYbRw3O6YgbyPIhYHlir nEWA==
X-Gm-Message-State: AOAM532DwFssF4aY588A1jm2dkdpa+xQrAQEw0CHTGZ7oxgi6nPWwstR u36Tx3w3C0kzkHCdMkTbXbOwMMBIT0dv5Fz5U0ugLg==
X-Google-Smtp-Source: ABdhPJyJI5t/D8cex8dKYKi1+u4YtFNNX6RLM39t0wU+WLzXwA664GIILIifXGn+b1m+X0NiPrbKlEtoJGO5ZsjADLU=
X-Received: by 2002:a17:906:14db:: with SMTP id y27mr509162ejc.427.1590001991391; Wed, 20 May 2020 12:13:11 -0700 (PDT)
MIME-Version: 1.0
References: <DM6PR05MB6348E9AD1E088792C2F10BB4AEBF0@DM6PR05MB6348.namprd05.prod.outlook.com> <8CC3F837-B4D6-4570-AF2F-37041839F391@employees.org> <21E9A957-1A31-4A11-8E78-5F7E382866D4@juniper.net> <CAOj+MMEONA5OtWz9Y7pTt4WyVsb+7-_wEKPVryyHLncHG6ew6g@mail.gmail.com> <CALx6S35fPrnh6UtpPYmQ6Yew6D2QVMvYTdp0AaGr8jYhGNKk3A@mail.gmail.com> <CAOj+MMH0Q6ASmjPdmgNB2LHDhvCL2u2DLB9SBRLnJnCD3EbA4w@mail.gmail.com> <CAO42Z2wke4Lw44zdE0G9CJq3rXh69jsxjO5=RTcCv9EXdNOp5A@mail.gmail.com> <BC6A6354-BAB5-4CE0-ABEB-73B4C88E149A@gmail.com> <a8220864-302a-3698-c61d-abb7926482fa@foobar.org> <DM6PR05MB6348945F596A016E6F11856EAEB90@DM6PR05MB6348.namprd05.prod.outlook.com> <19E3F1AE-904C-49DC-B528-B1025A1454F0@gmail.com> <DM6PR05MB6348EC9394082D410E3BAB1CAEB60@DM6PR05MB6348.namprd05.prod.outlook.com> <EA0BCB8D-C328-471E-A824-320A6A1C39B8@gmail.com> <DM6PR05MB634898FF6351E40315A42E88AEB60@DM6PR05MB6348.namprd05.prod.outlook.com> <CALx6S35n0yu8yc5YAobj0dmBgpOecdGE5f4SwR2UUWySH4DOkg@mail.gmail.com> <DM6PR05MB634843AC10734FA1CF097456AEB60@DM6PR05MB6348.namprd05.prod.outlook.com>
In-Reply-To: <DM6PR05MB634843AC10734FA1CF097456AEB60@DM6PR05MB6348.namprd05.prod.outlook.com>
From: Tom Herbert <tom@herbertland.com>
Date: Wed, 20 May 2020 12:13:00 -0700
Message-ID: <CALx6S37diYMU8gDXt1MrXQZ+OvaGaXsk-tQLaD+arXFeN=tbTg@mail.gmail.com>
Subject: Re: Size of CR in CRH
To: Ron Bonica <rbonica@juniper.net>
Cc: Bob Hinden <bob.hinden@gmail.com>, 6man <6man@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/dASMRTvdu0CHl-1yi-Qau69hC_c>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 20 May 2020 19:13:16 -0000

On Wed, May 20, 2020 at 12:08 PM Ron Bonica <rbonica@juniper.net> wrote:
>
> Tom,
>
> I am happy too add a third size if there is WG consensus.
>
The primary question is probably should there be just one size, or can
there be more than one size (i.e. a choice between 1 an N :-))

Tom

>                                         Ron
>
>
>
> Juniper Business Use Only
>
> -----Original Message-----
> From: Tom Herbert <tom@herbertland.com>
> Sent: Wednesday, May 20, 2020 3:07 PM
> To: Ron Bonica <rbonica@juniper.net>
> Cc: Bob Hinden <bob.hinden@gmail.com>; 6man <6man@ietf.org>
> Subject: Re: Size of CR in CRH
>
> [External Email. Be cautious of content]
>
>
> On Wed, May 20, 2020 at 11:41 AM Ron Bonica <rbonica=40juniper.net@dmarc.ietf.org> wrote:
> >
> > Bob,
> >
> > First, let's agree that the problem with having two CRH versions:
> >
> > - is complexity
> > - is not code point consumption
> >
> Ron and Bob,
>
> There's an obvious tradeoff here between flexibility and complexity. I won't speak for HW implementations, but in a SW datapath implementations the additional complexity to support different sizes is relatively slight as long as possible sizes are 2^n, properly alignment is maintained, there's no additional fields in the header other than the array, and the values are considered compressed versions of the largest possible identifier (for example, if 16 bit SIDs are sent these can be expanded to 32 bits be prepending zeros).
> This way, the same code can be used where it's parameterized by various sizes. From this perspective, I wouldn't mind if there were three sizes defined: 16, 32, and 64.
>
> Tom
>
> > Given that agreement, we look for ways to reduce complexity. Options are:
> >
> > - find ways to reduce complexity while retaining two CRH versions
> > - drop one CRH version
> >
> > The following are ways to reduce complexity while retaining two CRH versions:
> >
> > - Recommend that operators run one CRH version or the other, but not
> > both, except during transition periods
> > - Facilitate transition by making the 16-bit identifier, with value N, reference the same CRH-FIB entry as the 32-bit identifier that also has value N.
> >
> > And, of course, we could drop the CRH-32, at least for the time being. But I don't think that this is the right decision because we have heard three arguments for CRH 32, with these being:
> >
> > - the O-RAN argument (presented by me)
> > - the Data Center Underlay argument (presented by Uma)
> > - the sparsely populated identifier argument (presented by Andrew).
> >
> > While the O-RAN argument may be speculative, the other two are not.
> >
> >
> > Ron
> >
> >
> > Juniper Business Use Only
> >
> > -----Original Message-----
> > From: Bob Hinden <bob.hinden@gmail.com>
> > Sent: Wednesday, May 20, 2020 12:46 PM
> > To: Ron Bonica <rbonica@juniper.net>
> > Cc: Bob Hinden <bob.hinden@gmail.com>; Nick Hilliard
> > <nick@foobar.org>; 6man <6man@ietf.org>
> > Subject: Re: Size of CR in CRH
> >
> > Ron,
> >
> > Thanks, this is helpful.  Comments inline.
> >
> > Bob
> >
> >
> > > On May 20, 2020, at 9:03 AM, Ron Bonica <rbonica@juniper.net> wrote:
> > >
> > > Hi Bob,
> > >
> > > AFAICS, a 16-bit identifier is good enough for any network that exists today. And until very recently, I believed that a 16-bit identifier was good enough for any network that might exist for many years to come.
> >
> > Good
> >
> > >
> > > However, 5G may change all of that. The promise of 5G is high data rates from the user-device to the cell tower. In order to achieve these high data rates, the user-device and cell tower communicate with one another over extremely high radio frequencies. These extremely high radio frequencies do not propagate well over long distances. So, there will be *many* cell towers.
> > >
> >
> > I understand that part of 5G.
> >
> > > The O-RAN Alliance is exploring transport architectures in which each cell tower hosts a Cell Site Router (CSR) and each CSR can be the endpoint of a traffic engineered path. In that architecture, a 32-bit CR may be required, because there may be as many as 1,000,000 CSRs.
> > >
> > > Yes, this is a bit speculative. But it may happen.
> >
> > CRH could start with a 16-bit identifier.   Once the O-RAN work is further along, a new routing header with 32-bit identifiers could be developed if needed.   As you said, there isn’t a shortage of routing header types and would make the specification and implementations simpler.
> >
> > >
> > > This is the motivation for having two sizes. We don't want to deprive existing networks of optimal compression because of future speculation. But we don't want to close the door on 5G support, either.
> > >
> > >
> > > Ron
> > >
> > > P.S. ASICs can generally handle 16, 24 and 32 bit CRs. However, some are more efficient when word-alignment is maintained. This makes 16 and 32 more desirable.
> > >
> > >
> > >
> > > Juniper Business Use Only
> > >
> > > -----Original Message-----
> > > From: Bob Hinden <bob.hinden@gmail.com>
> > > Sent: Tuesday, May 19, 2020 11:05 PM
> > > To: Ron Bonica <rbonica@juniper.net>
> > > Cc: Bob Hinden <bob.hinden@gmail.com>; Nick Hilliard
> > > <nick@foobar.org>; 6man <6man@ietf.org>
> > > Subject: Re: Size of CR in CRH
> > >
> > > Ron,
> > >
> > > A few comments inline.
> > >
> > >> On May 19, 2020, at 11:01 AM, Ron Bonica <rbonica@juniper.net> wrote:
> > >>
> > >> Hi Nick, Bob and Fred
> > >>
> > >> The following factors figured into the decision to specify 2 Routing types, one with a 16-bit identifier and the other with a 32-bit identifier:
> > >>
> > >>      - Today, very few networks contain more than 65,000 routers. So, most networks could obtain best compression with a 16-bit identifier.
> > >
> > > Are there any networks today where 16 bits is too small?
> > >
> > >>      - When 5G is deployed, we may see networks that contain more than 65,000 Cell Site Routers. These networks will need an identifier that is wider than 16 bits.
> > >
> > > This seems pretty speculative to me.  Do you have any justification for this?   Is there a 5G document that discusses this?
> > >
> > > This is also assuming that each router needs to be identified uniquely and that every router on a path needs to be in the source route.  How long will each path be.   Source routing won’t scale well with large numbers of hops regardless of the size identifier.
> > >
> > >
> > >>      - It is unlikely that we will ever see a network that contains more than 4,000,000 routers. So, we will never need an identifier that is wider than 32 bits.
> > >>
> > >> If Routing header types were in short supply, and only one were available to us, we would have to do one of the following:
> > >>
> > >>      - Select a single length (16, 24 or 32 bits)
> > >>      - Use the fifth byte of the Routing header to indicate the identifier length.
> > >>
> > >> The first option isn't very appealing. A 16-bit identifier is too short for some networks.
> > >
> > > s/too short for some networks/too short for some future networks/  ??   Are there any today, even close?
> > >
> > >> A 24-bit identifier may be difficult for some ASICs to process. A 32-bit identifier gives suboptimal compression for all existing networks.
> > >
> > > So I assume that ASICs can’t process a 32-bit identifier either?
> > >
> > >>
> > >> The second option isn't very appealing either. If we use the fifth byte to indicate the identifier length, and we want the first identifier to begin on a 32-bit boundary, the next 24 bits would be wasted.
> > >>
> > >> Fortunately, Routing header types are not in short supply. The Routing Type registry has room for 255 entries. Since it was established 25 years ago, only 6 types have been allocated. Of those, two have been deprecated (RH0 and Nimrod) and two are for special use (Experiment 1 and Experiment 2)..
> > >
> > > I don’t think the availability of router header types is a good justification for two headers.
> > >
> > > Having two headers now adds complexity given what I think I am hearing that there isn’t a need for a bigger identifier for long time in the future.
> > >
> > > Bob
> > >
> > >>
> > >> So, allocating two Routing types may be the best solution.
> > >>
> > >>
> > >> Ron
> > >>
> > >>
> > >>
> > >> Juniper Business Use Only
> > >>
> > >> -----Original Message-----
> > >> From: ipv6 <ipv6-bounces@ietf.org> On Behalf Of Nick Hilliard
> > >> Sent: Tuesday, May 19, 2020 1:13 PM
> > >> To: Bob Hinden <bob.hinden@gmail.com>
> > >> Cc: 6man <6man@ietf.org>
> > >> Subject: Re: Size of CR in CRH
> > >>
> > >> [External Email. Be cautious of content]
> > >>
> > >>
> > >> Bob Hinden wrote on 19/05/2020 00:08:
> > >>> I also prefer a single size (and only one SR header definition).   If
> > >>> it’s 16-bits, that would allow 64K routers in one CRH domain
> > >>> assuming it needs to uniquely identify each router, if there is
> > >>> more than 64K routers, then it only needs to identify the routers
> > >>> that are serving as hops in the source route.
> > >>>
> > >>> As you note 24 bits is better, but may not align as well.   Or then
> > >>> 32-bits.
> > >>
> > >> Having multiple options for SID size increases complexity at
> > >> several
> > >> levels: hardware programming, CLI, network compatibility, troubleshooting, etc.  What happens if a network wants to change from using one type of SID to another because of whatever reason?  Does a node need to be configured with multiple IDs?  Can you mix and match?
> > >> These sorts of things matter when you run networks.  You're increasing the complexity of some aspects by a factor of two.
> > >>
> > >> Simplicity is a huge gain from an operational point of view.
> > >>
> > >> 32 bits has the advantage of being the same size as a node's bgp or ospf router-id.  This would be something ranging from helpful to important if the device has an option for manual programming.
> > >>
> > >> The EH packet header lookup size of a device obviously impacts this.
> > >>
> > >> Nick
> > >>
> > >> -------------------------------------------------------------------
> > >> - IETF IPv6 working group mailing list ipv6@ietf.org Administrative
> > >> Requests:
> > >> https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/i
> > >> pv
> > >> 6
> > >> __;!!NEt6yMaO-gk!UCWrvkvflbEehBiEIA8M4PHGA_mrvC0MLpZly-euihAg3_3aSj
> > >> RJ
> > >> L
> > >> LRAZuRumqRr$
> > >> -------------------------------------------------------------------
> > >> -
> > --------------------------------------------------------------------
> > IETF IPv6 working group mailing list
> > ipv6@ietf.org
> > Administrative Requests:
> > https://urldefense.com/v3/__https://www.ietf.org/mailman/listinfo/ipv6
> > __;!!NEt6yMaO-gk!TtOuL3q5ftCTzcAo80NSzIprzqZfGflXimd_USkIaN33XGY6s85mv
> > ylu_NBKRGb8$
> > --------------------------------------------------------------------