Re: [spring] [IPv6] Subject: Mandating SRH when using C-SIDs (draft-ietf-spring-srv6-srh-compression)
Robert Raszuk <robert@raszuk.net> Thu, 04 April 2024 19:25 UTC
Return-Path: <robert@raszuk.net>
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 A1B2CC14F70D for <spring@ietfa.amsl.com>; Thu, 4 Apr 2024 12:25:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.095
X-Spam-Level:
X-Spam-Status: No, score=-2.095 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, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=raszuk.net
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J7b84w1acqqJ for <spring@ietfa.amsl.com>; Thu, 4 Apr 2024 12:25:03 -0700 (PDT)
Received: from mail-ed1-x52b.google.com (mail-ed1-x52b.google.com [IPv6:2a00:1450:4864:20::52b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5779BC14F6FA for <spring@ietf.org>; Thu, 4 Apr 2024 12:25:03 -0700 (PDT)
Received: by mail-ed1-x52b.google.com with SMTP id 4fb4d7f45d1cf-56829f41f81so1954852a12.2 for <spring@ietf.org>; Thu, 04 Apr 2024 12:25:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raszuk.net; s=google; t=1712258701; x=1712863501; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=ULj3BxBuFJ76bm6UTzy6VjXTf6InW4+d7uTBqM/cpj8=; b=Qrux3zVWHsmpLHbLzp5xAUrXjasSbaT7hwU0OFuyMNmkfD9F84pPCCtcocyzHLNSmI p5/zmy5TX/9CVvdgIhv4Cy1suZBzkw1/8tF/cMaryX72RDm6veZWI+kuvNnPC+y9asei M9xbEdXlQtLkjWKA8ODPeOSojFN5rT/67zrm3bQvKsbMW205JBu6LKJ7rV9XqSJaxtIy NzKgpG5TqdYElNp4JwPY4MreRvTlQbz4m+hel01LK9tYc/KdkNXF77iMypKHin3O8gVa 0K/gGvgjgm7K1PRl5ZKvSuux0m8G1/1n/ABWhYNjMhqI1Oum7eDhUobMz3mnRhq/Dj+K mrJQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712258701; x=1712863501; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ULj3BxBuFJ76bm6UTzy6VjXTf6InW4+d7uTBqM/cpj8=; b=DGmrXZwOAwRQuS5PA+lTvkzP73U2ZPpKt6gqNb53DhpDWTB0DO3KRWIxJDCWsurX1V QA4WAKgKSeWKwf1jFTUYDnYVR9pGyKcawDguK0KoSsx0inLwcU4gMHJw9f1t9zzJQ9YQ qlI56su0Ytl7AZn04wsKeXrAP6B51ZFHkfLM2Gglj0o6CfBGAyISGan1AS07a96D0Amp GftJ0DuxBFhcISewRJm8S9E1AhldCCgk2jOjrL85iuBHKkZ/foAUj9oOE6jRo8kOHW2Q qcngMfxUn2FBbDLpaVIcFUH9eGMKcA9r7aSRLLgkj/If3sjGwemHo8C4eo4L/YMiiM/l h6NQ==
X-Forwarded-Encrypted: i=1; AJvYcCWDnWVSh7wRjwr2TfnPkMniF4OUuUK6NrY0nbEimbUz95/4ZukSuEVhb3CwGOHT+zdFLgLryj6cLEU8c9y/BTE=
X-Gm-Message-State: AOJu0YwvTdWEKTJkIY+e7com0SbcFC26rp07Ttt2CrpJMH5xpWy15IvF OT6NF0A7e+kdUlIDEf0p//pj4DML5ja5CckUm+r7Z0lTvS9e9eu3YvAqRcuNOWlXTqyNwfmW/eH HPa+hIpoFzsieCwgRxGUI1I7i6iwXaLUSEZ2nN05Jg31/G9fL
X-Google-Smtp-Source: AGHT+IF/DEdJuufdLfesQsttqdFCAxmK9sszD7OR2KSVD5qD2YL65W145VtgjTRFuPBaiLL/lGVQbqtOzr4SgQ8N2e8=
X-Received: by 2002:a50:9ea6:0:b0:56e:2a38:1fac with SMTP id a35-20020a509ea6000000b0056e2a381facmr661494edf.0.1712258700947; Thu, 04 Apr 2024 12:25:00 -0700 (PDT)
MIME-Version: 1.0
References: <CAMMESszUUdDw-xnDtZKqz75g6SXZ+7mXtZujBKwN+hxypC-Kuw@mail.gmail.com> <CAMMESswF_NnpK7_xk9OXmmocU8P7pne0gmPjCkapXEQVfQA2zQ@mail.gmail.com> <CAHT6gR--Qw7W0ZqyfdEupTpLAjeJ5OLTTjzM6NvQ87zdizgb8Q@mail.gmail.com> <CAO42Z2xHNgzhmgC6mPrauSQZ6Q4mcgD_FOp_uWqRpz=pFwa7_w@mail.gmail.com> <CAHT6gR-q9B60fcvT7nTfErS8M+hUm+x8zoez0KkYiPtTthaYYg@mail.gmail.com> <CALx6S348-_7Xx8VsbdMpK3WLhprCWzx_hs-MQEPFdKtY8MMhrQ@mail.gmail.com> <CAHT6gR8oPH3o7FKx2pTSN=CbysCLcZ-pP98ZwuhGBxPNi0vSXA@mail.gmail.com> <CALx6S36c4tEbbiCAFLskQ1zSgi2the3H1_Sq8Jf7ZBhE=ezbFA@mail.gmail.com> <CAOj+MMH7hVffnF5YJY2hAUCNR5w6eRr65W1KnyyR5xjUe0WASw@mail.gmail.com> <CALx6S37HV3yQSfnYyQnw=A=_Mtnm4H53pSCWxpDvT7zHLx_HPg@mail.gmail.com> <CAOj+MMEhxS8FswKvH62u6W6p6xgx9G0X_kyx8UROc6woQ4wzmw@mail.gmail.com> <CALx6S34WAJxqZzcOVFUw4-L36kBJOx7rowcKbvzJLGUykTmzTg@mail.gmail.com>
In-Reply-To: <CALx6S34WAJxqZzcOVFUw4-L36kBJOx7rowcKbvzJLGUykTmzTg@mail.gmail.com>
From: Robert Raszuk <robert@raszuk.net>
Date: Thu, 04 Apr 2024 21:24:50 +0200
Message-ID: <CAOj+MMFa9UR9bzhJkLrHau6_woeyc_rKVtm08RKxBrfzxcgJ=A@mail.gmail.com>
To: Tom Herbert <tom@herbertland.com>
Cc: Francois Clad <fclad.ietf@gmail.com>, 6man <ipv6@ietf.org>, SPRING WG List <spring@ietf.org>, spring-chairs@ietf.org
Content-Type: multipart/alternative; boundary="000000000000a2535506154a4b65"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/LqtpHBv66wFH6tHCvOXH78z3zHI>
Subject: Re: [spring] [IPv6] Subject: Mandating SRH when using C-SIDs (draft-ietf-spring-srv6-srh-compression)
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.39
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: Thu, 04 Apr 2024 19:25:08 -0000
Show me Broadcom's SDK which does this in DNX family and we can talk more about such option. Best, R. On Thu, Apr 4, 2024 at 9:22 PM Tom Herbert <tom@herbertland.com> wrote: > > > On Thu, Apr 4, 2024, 3:12 PM Robert Raszuk <robert@raszuk.net> wrote: > >> Tom, >> >> > SR aware routers to update L4 checksum >> >> That is completely unrealistic. >> >> Show me the box which can forward all interfaces at 800 Gb/s and read >> entire each packet and compute upper layer checksum on it. >> > > Robert, > > It's not necessary to calculate the whole checksum, only the L4 checksum > needs to be updated by adding in the delta checksum. With IPv6 we can also > do a checksum neutral mapping. Basically, this uses the low order 16 bits > in the DA address as the checksum adjustment value. For instance, if we can > use the low order bits in a SID block then that would be simplest to > implement. > > Tom > > >> If anything just do encap and move on. >> >> Thx, >> R. >> >> >> On Thu, Apr 4, 2024 at 7:06 PM Tom Herbert <tom@herbertland.com> wrote: >> >>> >>> >>> On Thu, Apr 4, 2024, 12:30 PM Robert Raszuk <robert@raszuk.net> wrote: >>> >>>> Hi Tom, >>>> >>>> Yes I am with you here. >>>> >>>> However let's observe that this is pretty common best practice to >>>> disable any hardware offload on the box when running tcpdump or wireshark. >>>> >>>> In fact some implementations (F5) do it for you automagically :) >>>> >>>> And as it has been said based on the fact that hardware offload does >>>> not understand any Routing Headers it really does not matter if it is there >>>> or not :) >>>> >>> >>> Robert, >>> >>> tcpdump is independent of hardware offload. If the checksum is incorrect >>> per the packet contents we'll see bad checksums reported if we snoop >>> packets, but like I said, we can't differentiate the bad from the good. >>> >>> Offload becomes an issue for NICs that do protocol specific checksum >>> offload. We lose the capability on RX which is an inconvenience, on TX we'd >>> need to change the implementation to ensure the checksum is not computed by >>> HW. >>> >>> If SR without SRH is needed, then I believe the best answer is for SR >>> aware routers to update L4 checksum when they change DA per NAT >>> requirements. This solves tcpdump as well as offloads. >>> >>> Tom >>> >>> >>>> Cheers, >>>> R. >>>> >>>> >>>> On Thu, Apr 4, 2024 at 6:11 PM Tom Herbert <tom= >>>> 40herbertland.com@dmarc.ietf.org> wrote: >>>> >>>>> >>>>> >>>>> On Thu, Apr 4, 2024, 11:48 AM Francois Clad <fclad.ietf@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi Tom, >>>>>> >>>>>> Tcpdump can determine that this packet is steered onto an SRv6 path >>>>>> by checking if the DA matches the SRv6 SID block. >>>>>> >>>>> >>>>> Francois, >>>>> >>>>> That would require introducing external state to tcpdump for correct >>>>> operation. This would be a major divergence in both implementation and ops >>>>> compared to how things work today. >>>>> >>>>> Tom >>>>> >>>>> >>>>> >>>>>> Thanks, >>>>>> Francois >>>>>> >>>>>> On 4 Apr 2024 at 16:59:59, Tom Herbert <tom@herbertland.com> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Thu, Apr 4, 2024, 9:39 AM Francois Clad <fclad.ietf@gmail.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Mark, >>>>>>>> >>>>>>>> Tcpdump/wireshark decodes the IPv6 header just fine. I do not see >>>>>>>> any issue here. >>>>>>>> >>>>>>> >>>>>>> Francois, >>>>>>> >>>>>>> The problem is that tcpdump can't tell that a packet is an SR packet >>>>>>> if there's no SRH. For instance, if the checksum is not maintained to be >>>>>>> correct in the wire then tcpdump will show that the packet has a bad L4 >>>>>>> checksum, but there's no way to tell if that is an SR packet or if the >>>>>>> checksum is actually bad. This will make debugging checksum failures in the >>>>>>> network much more difficult, and this affects our ability to debug all >>>>>>> traffic not just SR packets. >>>>>>> >>>>>>> Tom >>>>>>> >>>>>>> >>>>>>>> Cheers, >>>>>>>> Francois >>>>>>>> >>>>>>>> On 4 Apr 2024 at 14:09:43, Mark Smith <markzzzsmith@gmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thu, 4 Apr 2024, 22:50 Francois Clad, <fclad.ietf@gmail.com> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hi Alvaro, all, >>>>>>>>>> >>>>>>>>>> RFC 8754 allows the SR source node to omit the SRH when it >>>>>>>>>> contains redundant information with what is already carried in the base >>>>>>>>>> IPv6 header. Mandating its presence for C-SID does not resolve any problem >>>>>>>>>> because it will not provide any extra information to the nodes along the >>>>>>>>>> packet path. >>>>>>>>>> >>>>>>>>> >>>>>>>>> How are troubleshooting tools like 'tcpdump' going to know how to >>>>>>>>> automatically decode these packets as SRv6 packets if there is no SRH? >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Specifically for the case of middleboxes attempting to verify the >>>>>>>>>> upper-layer checksum, >>>>>>>>>> >>>>>>>>>> - An SRv6-unaware middlebox will not be able to verify the >>>>>>>>>> upper-layer checksum of SRv6 packets in flight, regardless of whether an >>>>>>>>>> SRH is present or not. >>>>>>>>>> - An SRv6 and C-SID aware middlebox will be able to find the >>>>>>>>>> ultimate DA and verify the upper-layer checksum in flight, regardless of >>>>>>>>>> whether an SRH is present or not. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Furthermore, transit nodes (e.g., middleboxes) should not attempt >>>>>>>>>> to identify SRv6 traffic based on the presence of the SRH, because they >>>>>>>>>> will miss a significant portion of it: all the best-effort or Flex-Algo >>>>>>>>>> traffic steered with a single segment may not include an SRH, even without >>>>>>>>>> C-SID. Instead, RFC 8402, 8754, and 8986 define identification rules based >>>>>>>>>> on the SRv6 SID block. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Francois >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 2 Apr 2024 at 19:44:51, Alvaro Retana <aretana.ietf@gmail.com> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> [Moving this conversation up on your mailbox. :-) ] >>>>>>>>>>> >>>>>>>>>>> [Thanks, Robert and Tom for your input!] >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> We want to hear from more of you, including the authors. Even if >>>>>>>>>>> you already expressed your opinion in a different thread, please chime in >>>>>>>>>>> here. >>>>>>>>>>> >>>>>>>>>>> We will collect feedback until the end of this week. >>>>>>>>>>> >>>>>>>>>>> Thanks! >>>>>>>>>>> >>>>>>>>>>> Alvaro. >>>>>>>>>>> >>>>>>>>>>> On March 28, 2024 at 8:06:18 AM, Alvaro Retana ( >>>>>>>>>>> aretana.ietf@gmail.com) wrote: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Focusing on the C-SID draft, some have suggested requiring the >>>>>>>>>>> presence of the SRH whenever C-SIDs are used. Please discuss whether that >>>>>>>>>>> is the desired behavior (or not) -- please be specific when debating the >>>>>>>>>>> benefits or consequences of either behavior. >>>>>>>>>>> >>>>>>>>>>> Please keep the related (but independent) discussion of >>>>>>>>>>> requiring the SRH whenever SRv6 is used separate. This larger topic may >>>>>>>>>>> impact several documents and is better handled in a different thread (with >>>>>>>>>>> 6man and spring included). >>>>>>>>>>> >>>>>>>>>>> Thanks! >>>>>>>>>>> >>>>>>>>>>> Alvaro >>>>>>>>>>> -- for spring-chairs >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -------------------------------------------------------------------- >>>>>>>>>>> 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 >>>>>>>> -------------------------------------------------------------------- >>>>>>>> >>>>>>> -------------------------------------------------------------------- >>>>> IETF IPv6 working group mailing list >>>>> ipv6@ietf.org >>>>> Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6 >>>>> -------------------------------------------------------------------- >>>>> >>>>
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- [spring] Subject: Mandating SRH when using C-SIDs… Alvaro Retana
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- [spring] Requiring Tunneling - subject change Joel Halpern
- Re: [spring] [IPv6] Requiring Tunneling - subject… Martin Vigoureux (Nokia)
- Re: [spring] [IPv6] Requiring Tunneling - subject… Bob Hinden
- Re: [spring] Requiring Tunneling - subject change Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] Subject: Mandating SRH when using C-… Alvaro Retana
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Francois Clad
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Mark Smith
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Francois Clad
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Francois Clad
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Ole Troan
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Michael Richardson
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Ole Trøan
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Suresh Krishnan
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Francois Clad
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Adrian Farrel
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Bob Hinden
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Cheng Li
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Michael Richardson
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Michael Richardson
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Suresh Krishnan
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tal Mizrahi
- Re: [spring] Subject: Mandating SRH when using C-… Antoine FRESSANCOURT
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Tom Herbert
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Robert Raszuk
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Martin Vigoureux (Nokia)
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Ketan Talaulikar
- Re: [spring] [IPv6] Subject: Mandating SRH when u… Mark Smith