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

Brian E Carpenter <brian.e.carpenter@gmail.com> Sun, 17 October 2021 01:29 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 37C9B3A0A1B; Sat, 16 Oct 2021 18:29:46 -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 3xSsoWp93szK; Sat, 16 Oct 2021 18:29:41 -0700 (PDT)
Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) (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 107433A0A5E; Sat, 16 Oct 2021 18:29:41 -0700 (PDT)
Received: by mail-pj1-x1036.google.com with SMTP id pi19-20020a17090b1e5300b0019fdd3557d3so10041056pjb.5; Sat, 16 Oct 2021 18:29:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:from:to:cc:references:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=F7j2dMjNqYGHEu+pgmgTPNjpMbrO2rucGtggPTTzbWE=; b=LPeaTLEQ1Fl/CqdV8UdRYYuzlJxZzT+ZYncMP9oJw6A6k1iQR1c4GSpms5cCqSuubD uCvdemPx85+zxuEMRjygMMPQXisbCHzDF3gucHquPalPoP3v/30QR4f/OV0eEkgecRpV tSdg2V9CeosBQA8elMNRMMZLDarMLs2Z/vv6dsHA96LZr0FCpkmQ+8i1Tr8wbF7frFpI h511fbegAZUhq2HunDScrFxDOykj01lb+DLHCLUwZEpWuCcZiH/rc0GXRgYidpaMgMqw aqrkpELWzo1gl+dG7PhAXumnFzG3GDQxeHj0ZSVXqvh0rWc8eIW3GgAnOUp4P22+hIw/ nDLA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:from:to:cc:references:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=F7j2dMjNqYGHEu+pgmgTPNjpMbrO2rucGtggPTTzbWE=; b=A8OnanhohuyC3nH4vZoJhKYKrge4vcLWYCyO2YMbUYmZMah8mt3WzSTJv2utQK40w/ UOerHiQIfEOHp8svcoTxoDXbErXb7VuHFl76YpPV6MLtUzqV1SYFxmTDL15Q75xHEL9W OTU8q+7/HblK0Bb4jc73+ejpX+22umnITBhaPaSeF15F0Toxh4Jq7XVf1fJb0l/oSJ95 yk3NhFTVOg4TEC8w1obtWEaKx1SsOr6M/87bxEXT7/w3prcrIz3NpGE/ptJUS+rccXpb hp9JqIJHeOc8uvpMTznpEE7kBwhaPJOIs0wAceeLBljsm5XbK11wPdCkuTJ4EWroahvo txaA==
X-Gm-Message-State: AOAM532fLtrlnLwlOXT3JGIRb3hd7cqm+5oUh/OVt5r61hoSWQsnWPb6 xJE2RPgWGYlvBenEq1FHCRAFKY7y/W1KBA==
X-Google-Smtp-Source: ABdhPJwbajPR6GVTeVjg9mzum7OPwyR401Ba2ZhHV7pdQmaCyHK6hLw70rbuyAKjzXdcEICDTafMsA==
X-Received: by 2002:a17:90a:9b0d:: with SMTP id f13mr6785155pjp.235.1634434180117; Sat, 16 Oct 2021 18:29:40 -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 t1sm8651946pfe.51.2021.10.16.18.29.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 16 Oct 2021 18:29:39 -0700 (PDT)
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
To: "Francois Clad (fclad)" <fclad=40cisco.com@dmarc.ietf.org>
Cc: "spring@ietf.org" <spring@ietf.org>, "ipv6@ietf.org" <ipv6@ietf.org>, Erik Kline <ek.ietf@gmail.com>, "Joel M. Halpern" <jmh@joelhalpern.com>
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>
Message-ID: <6c852ab5-141f-4fad-1223-1a6a9eda375e@gmail.com>
Date: Sun, 17 Oct 2021 14:29:35 +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: <6baed9dc-36c6-720b-0a73-0af7f062cb6a@gmail.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/QxSp-k6w8Dx_ExcWlrODLUbcOQY>
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 01:29:52 -0000

> I can't find anywhere that an interface identifier of zero is forbidden

However, when I assign such an address to a Linux box, it is unpingable, so I'm guessing it breaks neighbor discovery.

Regards
   Brian Carpenter
On 17-Oct-21 13:31, Brian E Carpenter 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.
> 
> 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/>
>>
>>  
>>
>> Hope this helps.
>>
>>  
>>
>> Thanks,
>>
>> Francois
>>
>>  
>>
>> *From: *spring <spring-bounces@ietf.org> on behalf of Erik Kline <ek.ietf@gmail.com>
>> *Date: *Thursday, 14 October 2021 at 19:06
>> *To: *Joel M. Halpern <jmh@joelhalpern.com>
>> *Cc: *spring@ietf.org <spring@ietf.org>, ipv6@ietf.org <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>> 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/>.
>>
>>     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>
>>     https://www.ietf.org/mailman/listinfo/spring <https://www.ietf.org/mailman/listinfo/spring>
>>
>>
>> --------------------------------------------------------------------
>> IETF IPv6 working group mailing list
>> ipv6@ietf.org
>> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
>> --------------------------------------------------------------------
>>
>