Re: [Idr] locator length : draft-li-idr-flowspec-srv6

Joel Halpern Direct <> Fri, 12 March 2021 16:49 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id CB0923A1326 for <>; Fri, 12 Mar 2021 08:49:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2.12
X-Spam-Status: No, score=-2.12 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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 7r8v7_W8LeWP for <>; Fri, 12 Mar 2021 08:49:24 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 085B53A12D5 for <>; Fri, 12 Mar 2021 08:49:24 -0800 (PST)
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4DxsGq3rjDz6G9Gw; Fri, 12 Mar 2021 08:49:23 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=2.tigertech; t=1615567763; bh=aDAA+ObtygR+ibBQhMaRPeE63zu5q6CxMxrVy1VJALs=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=PLZF3fg+Lh32Nlbo9cu0tsJszLPHRg0gEIC7WfBjKxaO2X//E3kCEOes2n+malT9V AH1vMBbAba/3LDGGLSx/F70tFyeKJNTGKo584UG6iVSQSiMb3BSFkiPb4HXtl60qqE h8P9Ygn2KQMoy/0RG7h6H+War9Jxhli7qeIT9vBM=
X-Quarantine-ID: <BW8qUX5wOj2Z>
X-Virus-Scanned: Debian amavisd-new at
Received: from [] (unknown []) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by (Postfix) with ESMTPSA id 4DxsGp6Rswz6G9JD; Fri, 12 Mar 2021 08:49:22 -0800 (PST)
To: Huaimo Chen <>
Cc: "" <>, Lizhenbin <>
References: <> <> <>
From: Joel Halpern Direct <>
Message-ID: <>
Date: Fri, 12 Mar 2021 11:49:21 -0500
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1
MIME-Version: 1.0
In-Reply-To: <>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Archived-At: <>
Subject: Re: [Idr] locator length : draft-li-idr-flowspec-srv6
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 12 Mar 2021 16:49:26 -0000

Given that you have to check loc before func and check loc and func 
before arg, it would seem simpler to just use an address prefix.  Gets 
around all of the knowledge problems.

Note that a UI for creating flowspec filters can allow the user to 
specify it in all sorts of ways.  that does not mean we need to put all 
of them in the protocol when they are equivalent.


On 3/12/2021 11:44 AM, Huaimo Chen wrote:
> Hi Joel,
>      Thanks much for your further comment.
>      Just checking the FUNC bits should be limited. We will add some
> text to state that in order to check the FUNC bits, the LOC needs to
> be examined and matched first.
> Best Regards,
> Huaimo
> ------------------------------------------------------------------------
> *From:* Joel Halpern Direct <>
> *Sent:* Friday, March 12, 2021 9:58 AM
> *To:* Huaimo Chen <>; Joel M. Halpern 
> <>
> *Cc:* <>; Lizhenbin <>
> *Subject:* Re: locator length : draft-li-idr-flowspec-srv6
> An operator can assign B::/48 and C::?46  for Locators.  Sure, it would
> usually be a single prefix with a single length.  But that is not required.
> When one is examining the LOC, sure, you can use the value length to
> handle it.
> But the way the mechanism is described, one could try to check just the
> FUNC bits, without matching the LOC.
> First, that has the problem of needing exogenous information about the
> LOC length.
> And it is actually worse than that.  Testing the FUNC bits of the
> destination field of an IP packet without checking the LOC bits is
> actually meaningless.  You don't even know if the DA is an SRv6 SID.
> An yet further, there is no requirement that the encoding of the FUNC in
> different SIDs uses the same value representation.  The standardized
> values are for advertising in routing protocols, not for the packets.
> Net: I don't think having the field identification works.
> Yours,
> Joel
> On 3/12/2021 9:51 AM, Huaimo Chen wrote:
>> Hi Joel,
>>      Thank you very much for your comment during the IETF 110.
>>      Regarding to the lengths of locator(LOC)s and function(FUNCT)s in 
>> SIDs,
>> RFC8986 says that the locator length, is flexible, and an operator is free
>> to use the locator length of their choice. This seems indicating that the
>> operator can select the length for the locator. After their selection, the
>> the locator length is determined/fixed. This is illustrated by examples
>> in RFC8986.
>>      One example in the beginning of section 3.2 is as follows:
>>         For example, a network operator may:
>>            Assign block B::/48 to the SR domain
>>            Assign a unique B:N::/64 block to each SRv6-enabled node in 
>> the domain.
>> After this assignment, the length of the locators of the SIDs in the domain
>> is 64 bits.
>>      In the end of section 3.2, the text shows the Function fields of SIDs.
>> The length of function(FUNCT)s is 16 bits.
>>      When a SID is used in the domain, its locator length and function 
>> length
>> should have been determined.
>>      When an operator configures a SRv6 flow specification, involving
>> a SID or a group of SIDs, s/he should have known the locator length and
>> function length in the SID(s).
>> Best Regards,
>> Huaimo