Re: [lisp] [spring] IPv6-compressed-routing-header-crh

Tom Herbert <tom@herbertland.com> Thu, 18 April 2019 03:02 UTC

Return-Path: <tom@herbertland.com>
X-Original-To: lisp@ietfa.amsl.com
Delivered-To: lisp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A27061201B0 for <lisp@ietfa.amsl.com>; Wed, 17 Apr 2019 20:02:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=unavailable 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 ulQhYaPjT4r7 for <lisp@ietfa.amsl.com>; Wed, 17 Apr 2019 20:02:55 -0700 (PDT)
Received: from mail-qt1-x844.google.com (mail-qt1-x844.google.com [IPv6:2607:f8b0:4864:20::844]) (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 64D25120291 for <lisp@ietf.org>; Wed, 17 Apr 2019 20:02:55 -0700 (PDT)
Received: by mail-qt1-x844.google.com with SMTP id s15so699414qtn.3 for <lisp@ietf.org>; Wed, 17 Apr 2019 20:02:55 -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=sBBBVQ8Cy8NV1N8lgyAqBey9Yo3TzSBOTPM4Tv9h4po=; b=e1vHfxMkzW6ZmQfx93lsgbwkwPi1dZSIF6aHIt/fMDKiqO4mNwaK5sDb/WbZAvH/0I 0fnwnxE9/JHuwKuqVJhZhQHDRVsveZQp+TGQLaV2ap13pE3hN3HZDQYihpFmhUtBIPrl mZT7N9eYUEyoMeFivkLGH1a5LnITOq0mkP4Xa9sQdLcCrYng5TQhFG+p0s7QNXZslbWg /XCxGcPYsbIPiMJ5CXdZNZfVNI8L0HIIpetrkHWx675FTwb6bKoJ6Q8LOodTd6sZYgdk NZaL/z7KbaSPqjd6WSeCn/GgpEEekFg6PaUpw6ssIkR0HR8GVbiBdT0BEtWdDZy18bMD iqjQ==
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=sBBBVQ8Cy8NV1N8lgyAqBey9Yo3TzSBOTPM4Tv9h4po=; b=CisxVJuTCGjcB8CXAE2BOyz8yG3yuBEYY8dK4Uz4xQ+zfwJoHDb0xsXu8F8Bp2Idak sgerGh+jIcswMxzBVqJqWFsP92v3XpeRS8ZTvAetkRmYQDXJpayl1jg+cPNpoRprRfSw H2Lrw5xXrZ+RyNqGVr8RzfhmLz4Yro9wOeCWo2zK4HGs+dIpVQIXUDuL1EDz56yW/LfD bdGp1KYUTfGxugAZP9wM2FOgsAhgOkm3a3rnqukVEQO7UktnOiGoPzjMsyuvLjXpoHiG +OxGlQDdKESks7HI+4fd9e3QebHiKIz40pkSk1Al4fQAEpGf2EOyXVQV/8GBc5ubtBZo udyA==
X-Gm-Message-State: APjAAAVc8kTPmzEGxuH+9GD1pfTLwdRFsRAqnQWYlq0U2e+havhNEUuq KsNIAuIwhMDPoJM0kkp2m6tsetJQVOfWsFSyutCTpQ==
X-Google-Smtp-Source: APXvYqwx8tR0r+0u47Jpmb20I344E+KzbCRSXr4q9BJooJSU5FXRlNynbck3lNqP0Bk0U3U26QpnEXpBmmJWIkuRtH8=
X-Received: by 2002:aed:2196:: with SMTP id l22mr71120413qtc.226.1555556574195; Wed, 17 Apr 2019 20:02:54 -0700 (PDT)
MIME-Version: 1.0
References: <A881B89B-5E72-40CD-81F3-50396958A554@cisco.com> <BYAPR05MB4245D3F821D84847549FB6DAAE5A0@BYAPR05MB4245.namprd05.prod.outlook.com> <CA+b+ERmo9cPgCtnDgvkqNkFiLXdOJikWRLOKXM9NQfbNtJ__Zg@mail.gmail.com> <CAO42Z2yKmWub+maw4oVzaEY4HoHVszwOo4FQNCHT0uVkKFNwRw@mail.gmail.com> <CA+b+ERk+UiXg5Vtv-2kshkJ9VQMpMF22deFpKfGeMmqbBE9QtA@mail.gmail.com> <CAO42Z2yPi6wb85jh5es3feboJ5fOhr+iS8OraPjLD-rKTkNSQg@mail.gmail.com> <CAOj+MMHXWsXbBmByy8TWNfAWm0fKuiN6BDdGLzBgN7GRHkz+1A@mail.gmail.com> <CALx6S34FPPq9R=RAxhnPJRHT8z07htnC8banLkL2gU94Bz61hQ@mail.gmail.com> <CAO42Z2z+4JhObAktyd0KrULdwcrSkiFOD4cOVPt0QeVdHVES9A@mail.gmail.com> <CALx6S35Xnymc3oSKOX68bmtuWTH_6_Cd10FwjOd0db9TXVGp8Q@mail.gmail.com> <CAOj+MMG79BeMy2HgeS0WFs8+ZZzpNG77M8E7A4zbDjjKs7wG3Q@mail.gmail.com> <BYAPR05MB4245D2964D8F90A3A76356C0AE2A0@BYAPR05MB4245.namprd05.prod.outlook.com>
In-Reply-To: <BYAPR05MB4245D2964D8F90A3A76356C0AE2A0@BYAPR05MB4245.namprd05.prod.outlook.com>
From: Tom Herbert <tom@herbertland.com>
Date: Wed, 17 Apr 2019 20:02:42 -0700
Message-ID: <CALx6S349tdRHZwAdAGm0+nnwZZKqVWUAOR_i+6HZ7rFXS8Sc4A@mail.gmail.com>
To: Ron Bonica <rbonica@juniper.net>
Cc: Robert Raszuk <robert@raszuk.net>, SPRING WG <spring@ietf.org>, "ipv6@ietf.org" <ipv6@ietf.org>, Mark Smith <markzzzsmith@gmail.com>, Dino Farinacci <farinacci@gmail.com>, "lisp@ietf.org list" <lisp@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/lisp/jK4AbOCnHMqAMwRoifFBJfBdu-M>
Subject: Re: [lisp] [spring] IPv6-compressed-routing-header-crh
X-BeenThere: lisp@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: List for the discussion of the Locator/ID Separation Protocol <lisp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lisp>, <mailto:lisp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lisp/>
List-Post: <mailto:lisp@ietf.org>
List-Help: <mailto:lisp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lisp>, <mailto:lisp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 18 Apr 2019 03:02:59 -0000

On Sun, Apr 14, 2019 at 4:55 PM Ron Bonica <rbonica@juniper.net> wrote:
>
> Hi Robert,
>
>
>
> In order to make the CRH ASIC-friendly, we have the following constraints:
>
>
>
> Support only a small handful of SID lengths
> If at all possible, make them align on word boundaries
>
>
>
> Currently, we support 8, 16 and 32 bytes. Do you see a reason why we should support a length greater than 32? Is there some length less than 32 that would be beneficial?
>
Ron,

I think the term "Compressed Routing Header" is a bit of a misnomer.
It's really a "Mapped Routing Header" where the SIDs are presumably
smaller that the addresses that they map to. But, mapping requires
configuration and state in the network in order for it to work. For
instance, if I just want to send a packet to a list of nodes by IPv6
address, it seems like I'd need to use something else besides CRH (or
set up a possibly complex control plane that might be overkill for
this scenario). We can do that in segment routing since it carries 128
bit addresses, but then that creates giant headers which is what we're
trying to avoid in the first place. A compressed format would remove
redundant information that can be reconstructed at the hops without
additional state beyond what is in the packet. For instance,
compressing a list of IPv6 addresses is possible if they all share a
common prefix that can be compressed-- which is probably very likely
in the closed domains that it seems like source routing is targeted
to.

Tom

>
>
>                                                      Ron
>
>
>
>
>
>
>
> Juniper Internal
>
> From: spring <spring-bounces@ietf.org> On Behalf Of Robert Raszuk
> Sent: Friday, April 12, 2019 6:13 PM
> To: Tom Herbert <tom@herbertland.com>
> Cc: SPRING WG <spring@ietf.org>; ipv6@ietf.org; Mark Smith <markzzzsmith@gmail.com>; Dino Farinacci <farinacci@gmail.com>; lisp@ietf.org list <lisp@ietf.org>
> Subject: Re: [spring] IPv6-compressed-routing-header-crh
>
>
>
> Hi Tom,
>
>
>
> I already suggested this on March 30th ...
>
>
>
> "PS. But if you choose to go ahead with CRH I would highly advise to make your CRH SID a variable length. "
>
>
>
> No feedback/response was received from authors.
>
>
>
> Thx,
> R.
>
>
>
> On Sat, Apr 13, 2019 at 12:09 AM Tom Herbert <tom@herbertland.com> wrote:
>
> On Fri, Apr 12, 2019 at 1:48 PM Mark Smith <markzzzsmith@gmail.com> wrote:
> >
> > Hi Tom,
> >
> > On Sat, 13 Apr 2019 at 00:26, Tom Herbert <tom@herbertland.com> wrote:
> > >
> > > On Sun, Mar 31, 2019 at 7:40 AM Robert Raszuk <robert@raszuk.net> wrote:
> > > >
> > > > Hi Mark,
> > > >
> > > > > As MPLS SR SIDs are 20 bits, then rounding up to an octet boundary and a 32 bit alignment,
> > > > > I'd think 32 bit SIDs would be adequate to perform SR in an IPv6 network.
> > > > >
> > > > > As 32 bit SIDs are also the same size as IPv4 addresses, that may also create some opportunities to
> > > > > leverage IPv4 support in existing protocols to suite carrying and processing 32 bit SIDs with some, possibly
> > > > > slight, modification. For example, perhaps IPv4 Address Family support in OSPFv3 (RFC 5838) could be
> > > > > somehow leveraged to suit SR.
> > > >
> > > >
> > > > Thank you for describing your understanding of fundamentals of SR.
> > > >
> > > > I think SR while indeed started with the story of "less control plane is good for you" now clearly has evolved into not only reduction of control plane but what can be even more important to some users ability to request specific behavior via programmed functions of network elements on a per flow basis without actually per flow or per path signalling or state.
> > > >
> > > > Yes for some it may be very useful feature and I am sure some will call it overload of data plane or . There is no one size fits all.
> > > >
> > > > With that let's observe that till today SR did not require any new mapping plane to be distributed in control plane and to be inserted into data plane. This is clearly a precedent.
> > > >
> > > > Furthermore as we see in companion documents all additional network functionality is being taken away from SRH and is being shifted to Destination Options .
> > > >
> > > > As far as mapping plane I already pointed out in my Vector Routing proposal that we have one already it is called BGP. One needs to also observe that we as industry worked number of years of protocol suite called LISP allowing not only very good mapping plane, but also data plane integration. CC-ing lisp authors for their comments. Note also work for integrating SRv6 with LISP which is already is published.
> > > >
> > > > Since you correctly observed that now SID can be 32 bit and that is similar to the size of IPv4 my fundamental question is why not use something which already exists instead of defining some sort of new  from scratch ?
> > > >
> > > Robert,
> > >
> > > I don't see in the SRH draft where 32 bit SIDs are defined. Can you
> > > please provide a reference?
> > >
> >
> > To clarify, I've been thinking about the idea of a smaller SID size
> > for IPv6 for a while now (since inserting EHs came up), and thought
> > about what would be a generic single size that might suit SR that
> > wasn't the same size as an IPv6 address. 32 bits seemed suitable to
> > me, although if people wanted bigger, I'd be suggesting 64 bits (not
> > entirely coincidentally the common IID size.)
> >
> > Ron and others have written this draft, which supports SIDS of various
> > sizes - 8, 16 or 32 bits - that triggered this discussion.
> >
> Mark,
>
> Why not just put a SID length field in the header (like RFC6554 but
> more generic). That would allow lengths of 1-16 bytes. Additional
> flags could be used to indicate the semantics of the entries. For
> instance, they might be actual addresses (128 bits for IPv6, 32 bits
> for IPv4), parts of addresses (prefixes of suffixes like in RFC6554)
> where the rest of the address can be inferred, indices into a table,
> labels, etc.
>
> Tom
>
> > "The IPv6 Compressed Routing Header (CRH)"
> > https://tools.ietf.org/html/draft-bonica-6man-comp-rtg-hdr-03
> >
> > Regards,
> > Mark.
> >
> >
> > > As for trying to use something that already exists, why does SR used a
> > > fixed size format for SIDs instead of a variable length format like
> > > that described in RFC6554? Similarly, why does SR define it's own TLV
> > > format instead of using Hop-by-Hop and Destination Options defined in
> > > RFC8200?
> > >
> > > Tom
> > >
> > > > It will be perfectly fine to have full proper SRv6 with SRH and LISP or Vector Routing as an alternative options. I really do not see a room or need for yet one more mapping plane. What problem does it solve which would not be already solved elsewhere ?
> > > >
> > > > Kind regards,
> > > > Robert
> > > >
> > > >
> > > >>> 2) Is there an agreement that solutions which require additional per SR path state in both control plane and now in data plane are really something we should be endorsing here ?
> > > >>
> > > >>
> > > >> I think so.
> > > >>
> > > >> My understanding of what SR is fundamentally about is to reduce control plane state and processing. The trade-off for reduced control plane state and processing is to instead carry and encode most or all of that information or its semantics as per-packet overhead.
> > > >>
> > > >> If the per-packet overhead becomes too large and expensive, then pushing some of that information and processing back into the control plane should be ok, as long as there is still a beneficial overall reduction in control plane state and processing.
> > > >>
> > > >> As MPLS SR SIDs are 20 bits, then rounding up to an octet boundary and a 32 bit alignment, I'd think 32 bit SIDs would be adequate to perform SR in an IPv6 network.
> > > >>
> > > >> As 32 bit SIDs are also the same size as IPv4 addresses, that may also create some opportunities to leverage IPv4 support in existing protocols to suite carrying and processing 32 bit SIDs with some, possibly slight, modification. For example, perhaps IPv4 Address Family support in OSPFv3 (RFC 5838) could be somehow leveraged to suit SR.
> > > >>
> > > >> Regards,
> > > >> Mark.
> > > >
> > > > --------------------------------------------------------------------
> > > > IETF IPv6 working group mailing list
> > > > ipv6@ietf..org
> > > > Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> > > > --------------------------------------------------------------------