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

Joel Halpern Direct <> Fri, 12 March 2021 14:58 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 0E94D3A1157 for <>; Fri, 12 Mar 2021 06:58:06 -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 i--ca7F7mdKi for <>; Fri, 12 Mar 2021 06:58:04 -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 4EBA13A114B for <>; Fri, 12 Mar 2021 06:58:04 -0800 (PST)
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4DxppM6gWKz6G9Q7; Fri, 12 Mar 2021 06:58:03 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=2.tigertech; t=1615561083; bh=q2ygOhG9SeCa3IQKIcmpc2qQ37nVwtLl3UL1YaETaHA=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=ZUo0BDmn9gBpU4FdJMisYXyDNCOl4MiBC1ue78YSbMno4w/mHXdqqTd46cAB2mDbF VyIHTfIrYyke01waQhYNnoqC2jK8ccaj4r3cfnDK7JeDpmOG5OIZW6Yx8h2qJ37SBm F3gW8qydkN73LeNZc6agr2iJiI4NCVpZ6vGGr2uo=
X-Quarantine-ID: <2zRDjMTbU8eD>
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) server-digest SHA256) (No client certificate requested) by (Postfix) with ESMTPSA id 4DxppM0hkQz6G7wR; Fri, 12 Mar 2021 06:58:02 -0800 (PST)
To: Huaimo Chen <>, "Joel M. Halpern" <>
Cc: "" <>, Lizhenbin <>
References: <>
From: Joel Halpern Direct <>
Message-ID: <>
Date: Fri, 12 Mar 2021 09:58:00 -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 14:58:10 -0000

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.


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