Re: [spring] Question from SPRING regarding draft-filsfilscheng-spring-srv6-srh-compression

Brian E Carpenter <brian.e.carpenter@gmail.com> Sun, 17 October 2021 22:15 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 908113A127D; Sun, 17 Oct 2021 15:15:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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, FREEMAIL_FROM=0.001, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=unavailable 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 cvCwYkUHJiBQ; Sun, 17 Oct 2021 15:15:09 -0700 (PDT)
Received: from mail-pj1-x1033.google.com (mail-pj1-x1033.google.com [IPv6:2607:f8b0:4864:20::1033]) (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 3C0793A127E; Sun, 17 Oct 2021 15:15:09 -0700 (PDT)
Received: by mail-pj1-x1033.google.com with SMTP id om14so10898139pjb.5; Sun, 17 Oct 2021 15:15:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=5F9TE21t+KngT+F2ZNGdB6dKZ5lX2JC13t2o7kvsWvc=; b=Tz4nlQ9RkzXTqTL6XNsyjy04RXNJ9Xk4SkYVGYdv0eAmrK2RRKB7VeSNp16p2ZBN4m 6mfCydP9/j/N/BiPG/m8bSA7w8D7Rlq7BD/R3n3ZVuhDjGgMkz3wKQzOSW4tleVPkz9n wjipw+qup/H7p5H8Oxsof0wi0B0ZZtDnJQwdrbZ30sDBFuk2pCuSR4bNpBsHuSLvFyR6 0moxK5EZamOhKYpM80vSlDCcUdtnL0KbVcc7ICSetEiVyiPuCP9yfIfpOnB87qOjWOKl aQ1rbd4t6Vdf/TbBqlQ2kIi+QWJ9nHBshgCK0xhwxFyRgG+JRpPDN4Be/1wzPYM2Yuwi I6WA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=5F9TE21t+KngT+F2ZNGdB6dKZ5lX2JC13t2o7kvsWvc=; b=V1fdd3wnmekw3r0W1/jQ5RCTKz8j8nH7ayjGIMLx4BmeWCgklALzrKd19hSKU8KLKq N3XgROXH4cxMpkXv9Gi3Bu391DBTCl9H71kNO8EPO3echyMXfwmTze4CFo6hiBXG5W9r Xf2Z8i0g697WWhtdwN6xipYv3DbfqthT7dYcjqvb21/8e9g0Nhg71aRjVWvqq2iSlTHu RlteVtN7WGdAqVJe+KiLu0gxDbQdnEM5Z7mHI4kQwnTvPwm0f5B+pUWvtO9SLoNf1mDR Ad7Nvd584AKO2d/L7sCmgj99iGmGSqKMdWwO9G0hEik0vslcq40PK1mxBUrzjBLB3PLv nDOw==
X-Gm-Message-State: AOAM5302GpfWS1xdf48Kn5OfFWC5dDKaNM1ErJ5TUnezr4ltJvKWVnxH pV6NJZuazGVPVoZgHnw4Kts=
X-Google-Smtp-Source: ABdhPJzUju7XPBIxolwS0dUJ0EO1g3jid/PBU2eqOH6tR5dvrBoaK+qAFdZ1AWBScWjdxQCxQipd0w==
X-Received: by 2002:a17:902:7e84:b0:13e:d793:20d8 with SMTP id z4-20020a1709027e8400b0013ed79320d8mr23704665pla.67.1634508907347; Sun, 17 Oct 2021 15:15:07 -0700 (PDT)
Received: from ?IPv6:2406:e003:102d:e801:db7:d041:a2d:ce65? ([2406:e003:102d:e801:db7:d041:a2d:ce65]) by smtp.gmail.com with ESMTPSA id 12sm10819897pfz.133.2021.10.17.15.15.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 17 Oct 2021 15:15:06 -0700 (PDT)
To: "Darren Dukes (ddukes)" <ddukes@cisco.com>, Mark Smith <markzzzsmith@gmail.com>
Cc: SPRING WG List <spring@ietf.org>, 6man WG <ipv6@ietf.org>, "Francois Clad (fclad)" <fclad=40cisco.com@dmarc.ietf.org>
References: <85fddbe9-4eb8-7d90-d246-a888fe8bdcd3@joelhalpern.com> <CAMGpriXg0YuJtvmO84YzsahLMoV9SFVPez7AXirwx9PXFP24zQ@mail.gmail.com> <CO6PR11MB5650D2647CFD16908FE55159ACB99@CO6PR11MB5650.namprd11.prod.outlook.com> <6baed9dc-36c6-720b-0a73-0af7f062cb6a@gmail.com> <CAO42Z2zG=fkq0ZeAW=KuoQhRA8LgTgqhS1QSE-9ZUnErN8_ZAA@mail.gmail.com> <CANMZLAaB5dn=yaCSmU07NruASkZ-0h7q4xgTpawt-E8ooSFxpg@mail.gmail.com> <BN6PR11MB4081A6F3D3EB0F03B1C6A0D9C8BB9@BN6PR11MB4081.namprd11.prod.outlook.com>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Message-ID: <ddc0c6c9-16cf-b07b-e2da-c8ff53aa9976@gmail.com>
Date: Mon, 18 Oct 2021 11:15:03 +1300
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0
MIME-Version: 1.0
In-Reply-To: <BN6PR11MB4081A6F3D3EB0F03B1C6A0D9C8BB9@BN6PR11MB4081.namprd11.prod.outlook.com>
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/psHcs4mNnoso0IqBPCOZFlVMlbE>
Subject: Re: [spring] Question from SPRING regarding draft-filsfilscheng-spring-srv6-srh-compression
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 17 Oct 2021 22:15:14 -0000

On 18-Oct-21 09:28, Darren Dukes (ddukes) wrote:
> Hi Brian, the draft says:
> 
>    Loopback interface addresses are allocated from the prefix
>    2001:db8:a::/48. 
> 
> In the examples 2001:db8:a:1100:: is the IPv6 address assigned to the loopback interface of node 11. 


Still, using IID == 0 seems to be asking for trouble, since it's a reserved value and is definitely special-cased in some code. Unless, that is, you want exactly the properties described in RFC4291 section 2.6.1 (thanks, Mark Smith).

Would it change your examples if you used 2001:db8:a:1100::1 instead?

   Brian

> 
>  
> 
> Darren
> 
>  
> 
>  
> 
>  
> 
> On 2021-10-17, 2:06 AM, "ipv6" <ipv6-bounces@ietf.org> wrote:
> 
>  
> 
> Ah, thanks, that's the sort of thing you can only know by knowing it :-). Ok, so my question about the examples supplied stands. Using this as a 
source address has interesting implications.
> 
> Regards,
>     Brian Carpenter
>     (via tiny screen & keyboard)
> 
>  
> 
> On Sun, 17 Oct 2021, 18:58 Mark Smith, <markzzzsmith@gmail.com <mailto:markzzzsmith@gmail.com>> wrote:
> 
>     On Sun, 17 Oct 2021 at 11:32, Brian E Carpenter
>     <brian.e.carpenter@gmail.com <mailto:brian.e.carpenter@gmail.com>> wrote:
>     >
>     > Thanks for this draft.
>     >
>     > Question: where you show "Source address 2001:db8:a:1100::" is that intended to be the complete address, because it looks like a prefix? I 
can't find anywhere that an interface identifier of zero is forbidden, but it's unusual, and can only exist once in a given subnet.
>     >
> 
>     The IID value of all zeros is the subnet-router anycast address within
>     a subnet, and is required. See 2.6.1 of RFC4291.
> 
>     For example, Linux automatically configures the subnet-router anycast
>     address for all prefixes on an interface if the interface is a
>     forwarding interface.
> 
>     [mark@opy ~]$ ip -6 route show table local | grep anycast
>     anycast 2403:5803:XXXX:: dev wlp3s0 proto kernel metric 0 pref medium
>     anycast fe80:: dev wlp3s0 proto kernel metric 0 pref medium
>     [mark@opy ~]$
> 
>     (The "local" route table is where the interface address and multicast
>     route route table entries are kept in Linux. They don't all show up
>     via the normal 'ip addr show' or 'ifconfig' commands).
> 
>     Regards,
>     Mark.
> 
> 
>     > Regards
>     >    Brian Carpenter
>     >
>     > On 16-Oct-21 10:55, Francois Clad (fclad) wrote:
>     > > Hello Erik,
>     > >
>     > >
>     > >
>     > > You may find some examples here: https://datatracker.ietf.org/doc/draft-clad-spring-srv6-srh-compression-illus/ <https://datatracker.ietf.org/doc/draft-clad-spring-srv6-srh-compression-illus/> <https://datatracker.ietf.org/doc/draft-clad-spring-srv6-srh-compression-illus/ <https://datatracker.ietf.org/doc/draft-clad-spring-srv6-srh-compression-illus/>>
>     > >
>     > >
>     > >
>     > > Hope this helps.
>     > >
>     > >
>     > >
>     > > Thanks,
>     > >
>     > > Francois
>     > >
>     > >
>     > >
>     > > *From: *spring <spring-bounces@ietf.org <mailto:spring-bounces@ietf.org>> on behalf of Erik Kline <ek.ietf@gmail.com <mailto:ek.ietf@gmail.com>>
>     > > *Date: *Thursday, 14 October 2021 at 19:06
>     > > *To: *Joel M. Halpern <jmh@joelhalpern.com <mailto:jmh@joelhalpern.com>>
>     > > *Cc: *spring@ietf.org <mailto:spring@ietf.org> <spring@ietf.org 
<mailto:spring@ietf.org>>, ipv6@ietf.org <mailto:ipv6@ietf.org> <ipv6@ietf.org <mailto:ipv6@ietf.org>>
>     > > *Subject: *Re: [spring] Question from SPRING regarding draft-filsfilscheng-spring-srv6-srh-compression
>     > >
>     > > Joel,
>     > >
>     > >
>     > >
>     > > Thank you for your email.  The ADs and chairs have been discussing.
>     > >
>     > >
>     > >
>     > > One thing that would be very helpful to our discussions would be some worked examples of the various C-SID behaviors, showing some SRv6 datagrams and what happens to their contents as they move across some suitable example SR domain.
>     > >
>     > >
>     > >
>     > > (It would also be helpful if they showed what happens to something like
>     > an ICMPv6 Echo Request to a representative Destination Address in 
these cases when, say, an SRH is not present, i.e. to see when typical unicast semantics are preserved or when something more like anycast or multicast behavior is to be expected.)
>     > >
>     > >
>     > >
>     > > Assuming some forthcoming helpful examples, we have a goal to get a more complete answer back to you by the latter half of next week.
>     > >
>     > >
>     > >
>     > > Thanks,
>     > >
>     > > -Erik
>     > >
>     > >
>     > >
>     > > On Tue, Oct 12, 2021 at 8:53 PM Joel M. Halpern <jmh@joelhalpern.com <mailto:jmh@joelhalpern.com> <mailto:jmh@joelhalpern.com <mailto:jmh@joelhalpern.com>>> wrote:
>     > >
>     > >     The SPRING working group is in the midst of an adoption call on
>     > >     https://datatracker.ietf.org/doc/draft-filsfilscheng-spring-srv6-srh-compression/ <https://datatracker.ietf.org/doc/draft-filsfilscheng-spring-srv6-srh-compression/> <https://datatracker.ietf.org/doc/draft-filsfilscheng-spring-srv6-srh-compression/ <https://datatracker.ietf.org/doc/draft-filsfilscheng-spring-srv6-srh-compression/>>.
>     > >
>     > >     The SPRING charter has text that is explicit 
that modifications to data
>     > >     planes and architectures standardized by other working groups may not be
>     > >     modified in SPRING unless the chairs and ADs 
responsible for that data
>     > >     plane and / or architecture agree.
>     > >
>     > >     To complete the context, as my SPRING co-chairs are co-authors on the
>     > >     document in question, they have recused themselves from decisional
>     > >     activities regarding the document.  Therefore, this message is
>     > coming
>     > >     just from my as the responsible SPRING co-chair managing this adoption call.
>     > >
>     > >     As you have seen, multiple questions have been raised about the
>     > >     relationship of the document to the IPv6 defined data plane and
>     > >     architecture (particularly RFC 4291 and 8200). In particular the
>     > >     questions seem to revolve around what the document describes as the
>     > >     NEXT-C-SID flavor of compressed SID, and its 
relationship to the IPv6
>     > >     standards.  (For those seeking more context without reading the full
>     > >     document, a paraphrase and simplification of 
the NEXT-C_SID flavor is
>     > >     provided as a postscript.)
>     > >
>     > >     I raised the question of concurrence as required by the SPRING charter
>     > >     with the Internet ADs and SPRING chairs.  
They quite reasonably asked me
>     > >     to write a note to 6man explaining the concerns as clearly as a can, so
>     > >     that they can then determine how to proceed.
>     > >
>     > >     The questions that prompted my inquiry are:
>     > >
>     > >     1) Does the placement of a list of sids in the IPv6 DA field change
>     > the
>     > >     IPv6 architectural description of that field.
>     > >     2) Does the operation of shifting information around in the IPv6
>     > >     destination address field represent a modification or extension of the
>     > >     IPv6 data plane.
>     > >
>     > >     On a related note, the document in question also defines two other
>     > >     flavors, REPLACE-C-SID, and NEXT-and-REPLACE-C-SID.  The
>     > >     NEXT-and-REPLACE-C_SID flavor is defined to include the NEXT-C_SID
>     > >     flavor operation, so seems to be affected by 
the same question.
>     > >
>     > >      From my own reading, it appears that the REPLACE-C-SID flavor
>     > does not
>     > >     raise issues requiring 6man leadership concurrence.
>     > >
>     > >     Yours,
>     > >     Joel M. Halpern for the SPRING working group
>     > >
>     > >
>     > >     PS:
>     > >     Clearly, understanding the question requires 
some understanding of what
>     > >     the NEXT-C_SID flavor does.   This 
explanation is a simplification for
>     > >     length and context.  Really, the best place to understand it is the
>     > >     draft.  However, to give you enough information to let you decide
>     > >     whether you care, I will try to provide a fair summary.  My apologies in
>     > >     advance to the authors for necessary liberties for length.  Also,
>     > >     discussion of the draft contents (as distinct from the interaction with
>     > >     the IPv6 data plane and architecture) belongs on the SPRING list, and
>     > >     should not clutter up 6man.
>     > >
>     > >     SIDs are the identifiers used in segment routing.
>     > >     In SRv6, as document in the current RFCs, these are 128 bits.
>     >  As
>     > >     defined in the relevant RFCs, SIDs which identify endpoints to which
>     > >     packets are directed are identified by endpoint SIDs.  These can have
>     > >     behaviors (decapsulate and forward is one example).  They can have
>     > >     flavors such as where the SRH is removed.
>     > >
>     > >     The topic under discussion is means to compress these SIDs in the
>     > >     packets on the wire.  The document under discussion provides three
>     > >     flavors of compression.
>     > >
>     > >     The fundamental mechanism of the draft is to 
use a single SRH entry
>     > as a
>     > >     container for multiple SIDs.  In the NEXT-C_SID mechanism, when it is
>     > >     first encountered the entire container is copied into the desination
>     > >     address of the IPv6 packet.  The container has a common routing prefix
>     > >     used for all the NEXT-C-SID SIDs.  It is followed by a sequence of
>     > >     compressed SIDs of a configured length.  
One could configure 16, 24, or
>     > >     32 bits.  Or whatever length.  The 
routing advertisements
>     > are arranged
>     > >     so that the IPv6 packet is directed to the node represented by the first
>     > >     compressed SID on the basis of longest prefix match matching the
>     > >     combination of the common routing prefix and 
that compressed SID.
>     > >
>     > >     When the packet arrives at that node, it looks up the configured
>     > >     portion, the compressed SID, and determines the behavior and flavor.  In
>     > >     the case of the NEXT-C-SID flavor, the resulting operation is to shift
>     > >     the entire remaining contents of the IPv6 address (the bits past the
>     > >     first compressed sid) so as to over-write the first compressed SID.  0
>     > >     bits are shifted into the low order positions.  If the result is a
>     > >     non-zero new first compressed SID, then the packets is forwarded and the
>     > >     process repeats.  When all that is left 
are 0s, if there is an
>     > SRH, it
>     > >     is consulted to find the next SRH entry, which is, per normal SRv6
>     > >     processing, put into the IPv6 DA.
>     > >     Note that in the common case where the SIDS needed all fit in to a
>     > >     single container, the analysis also assumes the use of the reduced
>     > >     encapsulation options which omits the SRH that is not needed as it would
>     > >     have no entries.  This the packet contains a normal IPv6 header, with a
>     > >     sequence of compressed SIDs (what one might or might not call a source
>     > >     route) in the IPv6 destination address field.
>     > >
>     > >     PPS: If the authors of the NEXT-C-SID flavor 
feel I have mis-represented
>     > >     the work, please, send clarifications or corrections.   Again, the best
>     > >     source of information is the draft itself.  I was asked to provide extra
>     > >     context in this email.
>     > >
>     > >     _______________________________________________
>     > >     spring mailing list
>     > >     spring@ietf.org <mailto:spring@ietf.org> <mailto:spring@ietf.org <mailto:spring@ietf.org>>
>     > >     https://www.ietf.org/mailman/listinfo/spring 
<https://www.ietf.org/mailman/listinfo/spring> <https://www.ietf.org/mailman/listinfo/spring <https://www.ietf.org/mailman/listinfo/spring>>
>     > >
>     > >
>     > > --------------------------------------------------------------------
>     > > IETF IPv6 working group mailing list
>     > > ipv6@ietf.org <mailto:ipv6@ietf.org>
>     > > Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6 <https://www.ietf.org/mailman/listinfo/ipv6>
>     > > --------------------------------------------------------------------
>     > >
>     >
>     > _______________________________________________
>     > spring mailing list
>     > spring@ietf.org <mailto:spring@ietf.org>
>     > https://www.ietf.org/mailman/listinfo/spring <https://www.ietf.org/mailman/listinfo/spring>
>