Hi Mrinmoy,

On Wed, Apr 22, 2020 at 9:35 AM Mrinmoy Das <[email protected]> wrote:
>
> Hi All,
>
> If we only mention 20-bit label then what will be the structure of it?
> As per generic MPLS label structure 24-bit used to look like as follows:
>
> |<--------20-bit---------->|<-3-bit->|<-1-bit->|
> |<-MPLS 20-bit label->|<- TC ->|<-  S  ->|
>
> Now if we just mention about MPLS 20-bit label, is that mean following 
> representation:
>
> |<-4-bit->|<--------20-bit---------->|
> |<-all 0->|<-MPLS 20-bit label->|
>

No!
The format is still based on RFC 5462 and thus it would look something
like this -

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |             Type              |             Length=7          |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |      BT=0     |                 Reserved                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                Label                  | all zeros (ignore)    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Even though the length=7, you will need to process the Binding Value
field based on the Binding Type (BT) which says that the format is as
per RFC 5462.

Note that the extra byte of zeros at the end is for padding as per
https://tools.ietf.org/html/rfc5440#section-7.1 and not counted in the
length.

Stay Safe!
Dhruv

PS. Request the authors to update the draft SOON based on Mrinmoy's
original email.

> Thanks & Regards,
> Mrinmoy
>
> On Wed, Mar 25, 2020 at 3:56 PM stefano previdi <[email protected]> wrote:
>>
>> Hi Dhruv,
>>
>> I agree with your proposed changes:
>>
>> 1. only mention the 20 bits label value
>> 2. fix the length to 4.
>>
>>
>> Thanks.
>> s.
>>
>>
>> > On Mar 24, 2020, at 3:14 PM, Dhruv Dhody <[email protected]> wrote:
>> >
>> > Hi Mrinmoy,
>> >
>> > I will give authors some time to respond and confirm (and spin a new
>> > update). I have noted this in the PCE WG wiki [
>> > https://trac.ietf.org/trac/pce/wiki/WikiStart ] to make sure we could
>> > track this to closure.
>> >
>> > Thanks!
>> > Dhruv
>> >
>> > On Tue, Mar 24, 2020 at 7:11 PM Mrinmoy Das <[email protected]> wrote:
>> >>
>> >> Hi Dhruv,
>> >>
>> >> Thanks for your quick reply.
>> >>
>> >> I have added PCE WG in this mail. More inline.
>> >>
>> >> Thanks & Regards,
>> >> Mrinmoy
>> >>
>> >> On Tue, Mar 24, 2020 at 6:00 PM Dhruv Dhody <[email protected]> wrote:
>> >>>
>> >>> Hi Mrinmoy,
>> >>>
>> >>> I was suggest you to also include [email protected]; WG could benefit from
>> >>> the discussion in future. More inline.
>> >>>
>> >>> On Tue, Mar 24, 2020 at 5:08 PM Mrinmoy Das <[email protected]> 
>> >>> wrote:
>> >>>>
>> >>>> Respected Authors and Contributors,
>> >>>>
>> >>>> Hope you all are doing well and safe in this tough times of Corona 
>> >>>> Virus Outbreak.
>> >>>>
>> >>>> I like to draw your attention regarding some parts of 
>> >>>> draft-ietf-pce-binding-label-sid-02 which I didn't able to understand 
>> >>>> properly.
>> >>>>
>> >>>> 1. BT = 0: The binding value is an MPLS label carried in the format
>> >>>>
>> >>>>  specified in [RFC5462] where only the label value is valid, and
>> >>>>  other fields (TC, S, and TTL) fields MUST be considered invalid.
>> >>>>  The Length MUST be set to 7.
>> >>>>
>> >>>>
>> >>>>    Previous versions of private draft uses 4 byte to store MPLS 20 Bit 
>> >>>> label and ignores TC, S & TTL fields.
>> >>>
>> >>> The length in the previous version was 6, which was incorrect. The TLV
>> >>> length is as per https://tools.ietf.org/html/rfc5440#section-7.1
>> >>> Which didnt make sense and your calculation below is correct!
>> >>>
>> >>>>    But in IETF draft after TLV structure redefinition, total length of 
>> >>>> the TLV becomes 7, i.e. BT(1 Byte)+Reserved(3 Byte)+MPLS 20bit Label(3 
>> >>>> Byte) = 7 Byte
>> >>>
>> >>> Yes
>> >>>
>> >>>>    So, now MPLS 20 Bit Labelwill be stored in 3 byte. Is it correct?
>> >>>
>> >>> You can consider it a case of rounding up 20 bits to 3 bytes.
>> >>>
>> >>>
>> >>>>    If this is correct then I feel the wording of the above paragraph 
>> >>>> needs to be more specific, meaning in 3 Byte Label there will be no 
>> >>>> space for TTL, so
>> >>>>    my suggestion is to make below correction:
>> >>>>
>> >>>>    BT = 0: The binding value is an MPLS label carried in the format
>> >>>>
>> >>>>  specified in [RFC5462] where only the label value is valid, and
>> >>>>  other fields (TC, S, and TTL) fields MUST be considered invalid.
>> >>>>  The Length MUST be set to 7.
>> >>>>
>> >>>
>> >>> My suggestion would be not mention any of the other fields and talk
>> >>> only of 20 bits of Label. I see other SR RFCs take similar approach.
>> >>
>> >>
>> >> Sounds Good. I'm agree with you.
>> >>
>> >>>
>> >>>>
>> >>>> 2. In some cases, a stateful PCE can request the PCC to allocate a
>> >>>>
>> >>>>  binding value.  It may do so by sending a PCUpd message containing an
>> >>>>  empty TE-PATH-BINDING TLV, i.e., no binding value is specified
>> >>>>  (making the length field of the TLV as 2).  A PCE can also make the
>> >>>>  request PCC to allocate a binding at the time of initiation by
>> >>>>  sending a PCInitiate message with an empty TE-PATH-BINDING TLV.
>> >>>>
>> >>>>
>> >>>>  As per new Binding TLV Structure below, BT is of 1 Byte and there will 
>> >>>> be 3 Byte Reserved.
>> >>>>
>> >>>>         0                   1                   2                   3
>> >>>>
>> >>>>       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
>> >>>>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >>>>      |             Type              |             Length            |
>> >>>>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >>>>      |      BT       |                 Reserved                      |
>> >>>>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >>>>      ~            Binding Value (variable length)                    ~
>> >>>>      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >>>>
>> >>>>
>> >>>>   Now, an empty Binding TLV should have length of BT(1 Byte) + Reserved 
>> >>>> (3 Byte) = 4 Byte instead of 2 Byte.
>> >>>>
>> >>>>   So, I do not understand how in the draft it is calculated as 2 Byte. 
>> >>>> Could you please give me some clue?
>> >>>
>> >>>
>> >>> This seems to be an error IMHO. 4 seems to be correct.
>> >>
>> >>
>> >> Okay. So what would  be your suggestion to developer who is implementing 
>> >> this draft? Should it be taken as 4? If draft needs correction
>> >> when will that be published?
>> >>>
>> >>>
>> >>> Thanks!
>> >>> Dhruv
>> >>>
>> >>>>
>> >>>> Thanks & Regards,
>> >>>> Mrinmoy
>>

_______________________________________________
Pce mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/pce

Reply via email to