Re: Adoption call criteria for CRH? [was: Re: CRH and RH0]

Mark Smith <markzzzsmith@gmail.com> Mon, 18 May 2020 21:38 UTC

Return-Path: <markzzzsmith@gmail.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 091593A0E28; Mon, 18 May 2020 14:38:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 1.927
X-Spam-Level: *
X-Spam-Status: No, score=1.927 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FROM_LOCAL_NOVOWEL=0.5, HK_RANDOM_ENVFROM=0.626, HK_RANDOM_FROM=0.999, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 tWa0bQiogLc7; Mon, 18 May 2020 14:38:12 -0700 (PDT)
Received: from mail-ot1-x334.google.com (mail-ot1-x334.google.com [IPv6:2607:f8b0:4864:20::334]) (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 5306C3A0E18; Mon, 18 May 2020 14:38:12 -0700 (PDT)
Received: by mail-ot1-x334.google.com with SMTP id d7so3097283ote.6; Mon, 18 May 2020 14:38:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=Sd2X6h9i0fiHvoG2y4QnUx11PAhsfFSCDSwIKSVftIA=; b=OSCPynboQff/UXn14aTyTBLuGZej4wnLXCEi0MXQeLVyLVvn1R3qG7A0ieYoa0lbpN OHGlTza2BqgFnmx//pKDbP468g2Vyr9BFa4t+t3rRKxf7bG12S3cPtSJ8Oqh0EifZN9R DiCTiatnDKC/5p5qX9KWH6VULIXS9CJ42iesG4ZuIBCl0uOy8FaSLPCWwqfqTzSZtnrJ UbmWsyEyEC8HS6zezkY0NHE8matobgM6Kc5OjG6uxVTcRPNZgjTUslKdW00p39832Mp2 rr+tyZrMNkWB243DzNrzuQ695W80iNFSvm2tiajWsHR/YjJP3jvMn80k1ilB2R+K92q3 +oug==
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=Sd2X6h9i0fiHvoG2y4QnUx11PAhsfFSCDSwIKSVftIA=; b=GePk5f9SAvgwI1guqXpFzD9NSBcihY7M3WW5EEKCDEerSNBPfZq7SYdGN4AmEx1CdF qVxBNTnfwRSjejL1mbv4Vg0AUFv1aYz33PvahgQSFQF4uHWL3fxF79ehDwSIqA1wVnQ6 F3CPQ1AcvnBZrKlPdpICN8Uei78IQuB7X5wYa8D+p1zmp87K4CUpzQ2OHuDlTCGFG1Ww mghISR417og+9Ngy+6b3igToLhpxJp02lhJBam6mOmiPtSUPswpyI7fO+aOAOdeQeegy MGL4MgNsHT6djmvXb+Pcq+6+pf7aNQAIW6aEUtCHBuW82ajzVb6LytiVVNSepmLkvzYG eOYA==
X-Gm-Message-State: AOAM5322YXvFt6vHgPBMElrHJ2ufPOp7fEp/vAwZN7Cc5FUP8pjkrGMt m+kgDOLqKTpho05icN1TRO/hcf48fImejlZ+PxI=
X-Google-Smtp-Source: ABdhPJysyikQHbN/Uxd9ibjmEpbDVeLC87jMrpD1HnngRu72CiJLIaOUV0r+pI70RoOPF4lACuzUypAxnLg1/rqjFPY=
X-Received: by 2002:a05:6830:1bc5:: with SMTP id v5mr12831377ota.348.1589837891275; Mon, 18 May 2020 14:38: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>
In-Reply-To: <CAOj+MMH0Q6ASmjPdmgNB2LHDhvCL2u2DLB9SBRLnJnCD3EbA4w@mail.gmail.com>
From: Mark Smith <markzzzsmith@gmail.com>
Date: Tue, 19 May 2020 07:37:45 +1000
Message-ID: <CAO42Z2wke4Lw44zdE0G9CJq3rXh69jsxjO5=RTcCv9EXdNOp5A@mail.gmail.com>
Subject: Re: Adoption call criteria for CRH? [was: Re: CRH and RH0]
To: Robert Raszuk <robert@raszuk.net>
Cc: Tom Herbert <tom@herbertland.com>, John Scudder <jgs=40juniper.net@dmarc.ietf.org>, 6man <6man@ietf.org>, "6man-chairs@ietf.org" <6man-chairs@ietf.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/cHO3UWmkNQ7FsXBmlTAJkJQdQdQ>
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: Mon, 18 May 2020 21:38:15 -0000

On Tue, 19 May 2020 at 00:42, Robert Raszuk <robert@raszuk.net> wrote:
>
> Hi Tom,
>
> Well what I do not like about CRH is this:
>
> *A* Requirement for mapping of SIDs to IPv6 addresses - see the header may look simple in the draft as the does not talk about mapping. Handwaving of config by hand or controller I do not buy.
>

What is wrong with mapping?

> *B* Two size will not fit all. Maybe if there is CRH type and we have 8,12, 16,24,32 bit SIDs it could be optimal for most deployments
>

Variable length identifiers in the forwarding plane has been tried
multiple times in the past and abandoned. See RFD 675, Internet
Engineering Note 21, etc.

"There had been debates during the 1976
year about address size and proposals ranged from 32 to 128 bit to
variable length address structures. No convergence appeared and, as the
program manager at DARPA, I felt it necessary to simply declare a
choice. At the time (1977), it seemed to me wasteful to select 128 bits
and variable length address structures led to a lot of processing
overhead per packet to find the various fields of the IP packet format.
So I chose 32 bits." - Vint Cerf -
https://mailman.nanog.org/pipermail/nanog/2010-April/020488.html


I would prefer CR had a singe size of 24 bits, as that would seem to
me to be the Goldilocks size for local network use (16 million
values), and per RFC 5505, "Anything that can be configured can be
misconfigured.".

However I don't know enough about ASICs to judge whether or not 24
bits could be acceptably accommodated for all cases, so I accept 2
sizes, 16 and 32 bits.

> *C* No mention what happens when node in the SID list is down ... modern networks do not tolerate outages required to signal all the way to the ingress to redo computation and start repair from there. This is BAD NETWORK DESIGN.
>

This problem exists with any source routing, and has existed for many
decades in IPv6, IPv4, MPLS and Token Ring source routing. ICMPv6,
routing protocol signalling, BFD, etc. are all existing solutions to
this problem.

> *D* Separation of destination actions into Destination Options Header. For some it may be a plus - for me this is minus.
>

RFC8200 compliance.

Separating hop-by-hop and destination option processing is good design
because forwarding needs to be as simple and as fast as possible.

Complex packet handling should be left to End-hosts because they're
only performing actions for themselves, so the cost of complex
processing is limited to the end-host that is exclusively benefiting
from it.

Complex packet handing in the network spreads the complexity costs to
all end-hosts attached to the network, even those that don't and may
never benefit from it.

> *E* Unlike say SRH RFC this draft does not even mention once that to impose CRH packets should be encapsulated.
>

While I think it is implicit in RFC8200, it probably should be
explicitly mentioned with a reference to RFC 2473, which shows how to
add new information through EHs to an existing packet via tunnel
encapsulation.

Regards,
Mark.


> Thx,
> R.
>
> On Mon, May 18, 2020 at 4:26 PM Tom Herbert <tom@herbertland.com> wrote:
>>
>>
>>
>> On Wed, May 13, 2020 at 1:12 PM Robert Raszuk <robert@raszuk.net> wrote:
>> >
>> > John,
>> >
>> > May I add one more perspective to this.
>> >
>> > 6man just standardized SRH. Why SRH content can not be filled by controller and used for the very same purpose as authors intend to use CRH for ?
>> >
>> > Oh one may say there is no compression there ... If so I recommend to take a look at uSID and vSID proposals.
>> >
>> Hi Robert,
>>
>> I took a look at these proposals. It's very obvious that the format of CRH is significantly simpler than either of these and is simpler than SRH as well. Complexity in protocol format correlates to how amenable the protocol is to feaible implementation (in HW and SW), how well it can be secured, and how efficient in terms of wire overhead and processing overhead.
>>
>> It is interesting to note that figure Figure 3 in draft-decraene-spring-srv6-vlsid-03 would be identical to Figure 1 in draft-bonica-6man-comp-rtg-hdr-22 if the Last Entry, Flags, Tag, and TLVs fields were removed. Since these fields aren't used in the common case, they are easily compressed by simply removing them. So the material difference between the formats is how the length of SIDs is determined. In CRH this is explicit in the routing type, there is one type for 16-bit SID format and one type for 32-bit format.. AFAICT in vSID the SID length is more like a negotiated parameter that per destination address that uses the same routing type as SRH. While the vSID method might be more flexible and allow arbitrary SID lengths, it leads to more complexity since the routing header can no longer be parsed without external information. For instance, if a management device snoops packets in the path it wouldn't be able to parse the SID list without participating in the protocol that distributes the length information. Similarly, if a legacy SRH receiver receives a vSID header it seems like it would parse it incorrectly.
>>
>> In any case, I don't see why the vSID and CRH proposals couldn't be unified or why SR wouldn't be able to use CRH to convey compressed SIDs.
>>
>> Tom
>>
>> > Is it in good interest of anyone deploying segment routing to have to deal with N different non interoperable headers ? Does it make anyone's life easier ?
>> >
>> > Kind regards,
>> > Robert.
>> >
>> > PS. So my own side observation lead me to believe it is not about "too early to ask for adoption" ... it is actually "way too late"
>> >
>> > On Wed, May 13, 2020 at 10:01 PM John Scudder <jgs=40juniper.net@dmarc.ietf.org> wrote:
>> >>
>> >> I’m a little confused about this conversation and I’d like to ask the chairs for clarification. My actual questions are at the end of this long(ish) message, and can be summarized as (1) does 6man require consent from SPRING before defining routing headers, and (2) what criteria are the chairs using to decide when an adoption call is OK?
>> >>
>> >> It seems to me there are at least two, only vaguely related, conversations going on. One of them is a debate about the assertion that 6man can’t even consider taking up CRH unless SPRING approves it. The other is a more free-wheeling line of questioning about “what is CRH for anyway”?
>> >>
>> >> I presume both of these relate to Ron’s request for an adoption call. Here’s what the minutes from the interim have:
>> >>
>> >> > Bob: Thank you Ron. I think it's too early for adoption call.
>> >> >
>> >> > Ron: What is needed to get to adoption call.
>> >> >
>> >> > Bob: I can't answer right now.
>> >> >
>> >> > Ron: Can I ask on list?
>> >> >
>> >> > Bob: OK.
>> >> >
>> >> > Ole: Related to what's going on in spring.
>> >>
>> >> Too bad we have no audio recording, but that’s not too far from my recollection. Anyway, I don’t think I’ve seen this answered on list yet, so I’m asking again.
>> >>
>> >> Regarding the SPRING-related process stuff:
>> >>
>> >> I have quite a bit of history with how SPRING was chartered; I was one of the original co-chairs and helped write the charter, god help me. I can tell you for certain there was no intent that SPRING should have exclusive ownership of source routing in the IETF, the name isn’t a power-grab, it’s a clever backronym, as we do in the IETF. If one entity in the IETF were to take charge of all source routing, that sounds more like a new area than a WG. But don’t take my word for it, go read the various iterations of the charter. As anyone who’s looked at the Segment Routing document set can tell, Segment Routing is one, very specific, way of doing source routing. As Ketan and others have pointed out, it’s a pile of architecture plus the bits and pieces to instantiate that architecture. That is fine, but the idea that merely because a technology might be used to instantiate part of that architecture, it’s owned by SPRING, is overreach. Just because a sandwich is a filling between two pieces of starch, doesn’t mean every filling between two pieces of starch is a sandwich. [1]
>> >>
>> >> But at any rate, the question for the chairs is: do you think 6man needs SPRING’s permission in order to consider adopting CRH? Does 6man need permission from SPRING for all routing headers, or just some, and if it’s just some, what characterizes them?
>> >>
>> >> Regarding the more general “what is CRH for anyway” stuff:
>> >>
>> >> This seems to me to be exactly the kind of discussion one would normally have in the context of an adoption call. Why is it not being had in that context? To rewind back to the interim, if it’s still “too early for adoption call”, what has to happen for it not to be too early?
>> >>
>> >> Thanks,
>> >>
>> >> —John
>> >>
>> >> [1] https://cuberule.com
>> >> --------------------------------------------------------------------
>> >> IETF IPv6 working group mailing list
>> >> ipv6@ietf.org
>> >> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>> >> --------------------------------------------------------------------
>> >
>> > --------------------------------------------------------------------
>> > IETF IPv6 working group mailing list
>> > ipv6@ietf.org
>> > Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>> > --------------------------------------------------------------------
>
> --------------------------------------------------------------------
> IETF IPv6 working group mailing list
> ipv6@ietf.org
> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
> --------------------------------------------------------------------