Hi Yubao,

The label fields per RFC7432 are 24-bit. When carrying actual MPLS labels
in them, the high-order 20 bits are to be used per RFC7432. The rest of the
4 bits are not meant for TC/S though. Moreover, for SRv6 we are following
the convention of VXLAN where 24-bit VNI is encoded in the EVPN label
fields - refer https://datatracker.ietf.org/doc/html/rfc8365#section-5.1.3

Now contrast this with encodings that follow RFC8277 where the label field
itself is 20-bit and leaves 3 bits reserved (not really TC semantics) and 1
bit for S (bottom of the stack semantics but only for the purpose of
encoding a stack of labels) - refer
https://datatracker.ietf.org/doc/html/rfc8277#section-2.2

I hope this clarifies.

Thanks,
Ketan

On Fri, Jun 17, 2022 at 9:33 AM <wang.yub...@zte.com.cn> wrote:

>
> Hi Ketan,
>
>
> Thanks for your clarifications.
>
> But I still don't notice that RFC7432 has said that the label value is 24
> bits,
>
> I just found these paragraphs in RFC7432 or rfc7432bis:
>
>
> <rfc7432#section9.2.1>
>
>    The MPLS Label1 field is encoded as 3 octets, where *the high-order*
>
> *   20 bits* contain *the label value*.  The MPLS Label1 MUST be
> downstream
>
>    assigned, and it is associated with the MAC address being advertised
>
>    by the advertising PE.  The advertising PE uses this label when it
>
>    receives an MPLS-encapsulated packet to perform forwarding based on
>
>    the destination MAC address toward the CE.  The forwarding procedures
>
>    are specified in Sections 13 and 14.
>
>    ...
>
>    The MPLS Label2 field is an optional field.  If it is present, then
>
>    it is encoded as 3 octets, where *the high-order 20 bits* contain *the*
>
> *   label value*.
>
> </rfc7432>
>
>
> <rfc7432bis>
>
> 7.5.  ESI Label Extended Community
>
>
>    This Extended Community is a new transitive Extended Community having
>
>    a Type field value of 0x06 and the Sub-Type 0x01.  It may be
>
>    advertised along with Ethernet Auto-discovery routes, and it enables
>
>    split-horizon procedures for multihomed sites as described in
>
>    Section 8.3 ("Split Horizon").  The ESI Label field represents an ES
>
>    by the advertising PE, and it is used in split-horizon filtering by
>
>    other PEs that are connected to the same multihomed Ethernet segment.
>
>
>    The ESI Label field is encoded as 3 octets, where *the high-order*
>
> *   20 bits* contain *the label value*.
>
> </rfc7432bis>
>
>
> In these paragraphs, It is clear that the MPLS Label/ESI label can only
> carry a label value which is no more than 20 bits.
>
> Have I missed something important?
>
> When the ESI label field of RFC7432 carries a 20 bits ESI label 17, the 24
> bits ESI label field should be 0x000110 or 0x000011?
>
> When the ESI label field of draft-ietf-bess-srv6-services-15 carries a 20
> bits Arg.FE2 17, the 24 bits ESI label field should be 0x000110 or 0x000011?
>
> When the ESI label field of draft-ietf-bess-srv6-services-15 carries a 16
> bits Arg.FE2 17, the 24 bits ESI label field should be 0x000110 or 0x001100
> or 0x000011?
>
>
>
> Thanks,
>
> Yubao
>
>
>
>
> 原始邮件
> *发件人:*KetanTalaulikar
> *收件人:*王玉保10045807;
> *抄送人:*draft-ietf-bess-srv6-servi...@ietf.org;BESS;
> *日 期 :*2022年06月16日 22:04
> *主 题 :**Re: Whether the TC/S field of the ESI label field can be used to
> carry a portion of Arg.FE2 according to draft-ietf-bess-srv6-services-15 ?*
> Hi Yubao,
> Sorry for the delay in response and thanks for catching this issue. We'll
> try to correct this during the AUTH48 process.
>
> Please check inline below.
>
> On Thu, May 26, 2022 at 8:20 AM <wang.yub...@zte.com.cn> wrote:
>
>>
>> Hi authors,
>>
>>
>> There may be conflicting description in
>> draft-ietf-bess-srv6-services-15#section-6.1.1
>> <https://datatracker.ietf.org/doc/html/draft-ietf-bess-srv6-services-15#section-6.1.1>
>> on the usage of Transposition Length.
>>
>>
>> <draft-ietf-bess-srv6-services-15#section-6.1.1>
>>
>>    The 24-bit ESI label field of the ESI label extended community
>>
>>    carries the whole or a portion of the Argument part of the SRv6 SID
>>
>>    when the ESI filtering approach is used along with the Transposition
>>
>>    Scheme of encoding (Section 4) and otherwise set to Implicit NULL
>>
>>    value.  *In either case*, *the value* is set in *the high order 20
>> bits*
>>
>>    (e.g., as 0x000030 in the case of Implicit NULL).  When using the
>>
>>    Transposition Scheme, the *Transposition Length* MUST be less than or
>>
>>    *equal to 24* and less than or equal to the Argument Length.
>>
>> </draft-ietf-bess-srv6-services-15>
>>
>>
>> I think that "The value" which is set in "the high order 20 bits" should
>> be the same thing as "the whole or a portion of the Argument part of the
>> SRv6 SID",
>>
>> If this is true, the length of "The value" (which is also the
>> Transposition Length)  can only be as much as 20, it can't be equal to 24.
>>
>> Otherwise, "The value" may have to be carried in the high X bits of the
>> ESI label field (wherein X is the argument length), not always the "the
>> high order 20 bits".
>>
>>
>>
> KT> This is an error in the draft. Since the field is 24-bit, we should
> just say "set in the 24 bits" instead of the existing text "set in the high
> order 20 bits". This applies to all EVPN encodings in the draft.
>
>>
>>
>> I also noted that in some other sections(e.g. Section 5.1), it is clearly
>> described that the Transposition Length MUST be no more 20.
>>
> KT> This depends on the encoding for the specific AFI/SAFI. For those that
> use the RFC8277 label encoding, the transposition length is limited to 20.
> That is why the "high order" clarification came in but it does not apply to
> EVPN. Please also see the following text in Sec 3.2.1
>
>    The size of the MPLS label field limits the bits transposed from the    
> SRv6 SID value into it.  E.g., the size of MPLS label field in    [RFC4364 
> <https://datatracker.ietf.org/doc/html/rfc4364>] [RFC8277 
> <https://datatracker.ietf.org/doc/html/rfc8277>] is 20 bits while in [RFC7432 
> <https://datatracker.ietf.org/doc/html/rfc7432>] is 24 bits.
>
>
>>
>> So I think may be the transposition length for EVPN routes is not
>> necessary to be greater than 20.
>>
> KT> For EVPN encodings the field is 24-bit and so we can transpose up to
> 24 bits.
>
>>
>> If it is greater than 20, the TC/S field of the ESI label may have to be
>> used,
>>
> KT> There is no TC/S encoding in the ESI label field.
>
>>
>> and the bit order may be not the same "In either case".
>>
> KT> I am not sure what you mean by bit order. If you are referring to byte
> ordering then everything is in network byte order.
>
> Thanks,
> Ketan
>
>>
>> Because that if the Transposition Length is less than 21, it MUST be
>> cairried in the high order 20 bits (along with some padding bits) according
>> to the history of this draft, not just the high X bits.
>>
>> Is my understanding correct?
>>
>>
>> Glad to receive any clarifications.
>>
>>
>> Thanks,
>>
>> Yubao
>>
>>
>>
>>
>>
>
_______________________________________________
BESS mailing list
BESS@ietf.org
https://www.ietf.org/mailman/listinfo/bess

Reply via email to