Subject: Re: [mpls] Question about 0x8848 Ethertype

From: Nitin Bahadur <[email-masked]>
Date: Thu, 22 Oct 2009 11:10:17 -0700

See NB> below...

On 10/22/09 10:37 AM, "Shahram Davari" <[email-masked]> wrote:

Hi,

RFC 5332 says:

"Ethertype 0x8848, formerly known as the "MPLS multicast codepoint", is to be used only when an MPLS packet whose top label is upstream- assigned is carried in a multicast Ethernet frame."

It also says:

"It is expected that the LSR will follow the procedures of [RFC5331], pushing on two labels, with the topmost label being a "context label" that is the same for all MPLS packets being transmitted by the LSR onto the Ethernet, but with the second label being different for different LSPs"

And RFC 5331 defines context label as:

"A "context label" is one that identifies a label table in which the label immediately below the context label should be looked up. A context label carried as an outermost label over a particular multi-access subnet/tunnel MUST be unique within the scope of that subnet/tunnel."

Considering the above statements we can conclude that:

"Multicast MPLS packets with upstream assigned labels encapsulated in Multicast Ethernet frames in a Multi-access media (LAN) require to use 0x8848 as Ethertype and require to use a context label that is unique over that media to identify the label space for the Multicast MPLS packet"

The question is since a context label is unique in a LAN and can be immediately identified as an upstream label, then why do we need 0x8848 Ethertype? Looks like we could just use the context label.

Am I missing something?

NB> The question is "how to identify that this is an upstream label". Consider label 100. This label could have been allocated by upstream P1 router as an upstream label and distributed to downstream router PE. The same label could have been allocated by PE router and distributed to router P1. So now, when PE
receives a packet over the LAN (from P1) with label 100, it does not whether to look it up as an upstream label or as a downstream label..

Ethertype 0x8848 allows PE to perform lookups in context of P1 and not in context of labels distributed by PE.

Thanks
Nitin

---

From: "Shahram Davari" <[email-masked]>
Date: Thu, 22 Oct 2009 11:17:55 -0700

Hi Nitin,

Thanks for your answer. But RFC 5332 requires the use of unique "context label" at the top of the label stack which can't be used as downstream-assigned label on the multi-access media. So the mere presence of a "context label" should be enough and we don't need a dedicated Ethertype to tell us that the context label is upstream assigned.  

Do you agree?

Regards,
Shahram

-----Original Message-----
From: Nitin Bahadur [mailto:[email-masked]] 
Sent: Thursday, October 22, 2009 11:10 AM
To: Shahram Davari; [email-masked]
Subject: Re: [mpls] Question about 0x8848 Ethertype

See NB> below...

Hi,

RFC 5332 says:

It also says:

Am I missing something?

Thanks
Nitin

---

From: Nitin Bahadur <[email-masked]>
Date: Thu, 22 Oct 2009 11:27:54 -0700

I'm not 100% sure if your interpretation is correct.

The RFC I think tries to say that the context-label must be unique. In other words both P1 and P2 cannot use the same label to
denote their context . In other words, upstream distributed labels must be unique when using ether-type 0x8848.

I don't think the intention of the RFC was that both upstream and downstream allocated labels must be unique.

Nitin

On 10/22/09 11:17 AM, "Shahram Davari" <[email-masked]> wrote:

Hi Nitin,

Do you agree?

Regards,
Shahram

-----Original Message-----
From: Nitin Bahadur [mailto:[email-masked]]
Sent: Thursday, October 22, 2009 11:10 AM
To: Shahram Davari; [email-masked]
Subject: Re: [mpls] Question about 0x8848 Ethertype

See NB> below...

Hi,

RFC 5332 says:

It also says:

Am I missing something?

Thanks
Nitin

---

From: "Shahram Davari" <[email-masked]>
Date: Thu, 22 Oct 2009 11:37:33 -0700

Hi Nitin,

If we assume your interpretation of the RFC that the context label is unique only if it is used as upstream label, meaning that the same context label can be used as downsteam-assigned label on that LAN, then the question is what about unicast packets in a LAN? How will a node receiving a unicast packet can identify whether the top label is upstream assigned or downstream assigned?

Thanks,
Shahram 

-----Original Message-----
From: Nitin Bahadur [mailto:[email-masked]] 
Sent: Thursday, October 22, 2009 11:28 AM
To: Shahram Davari; [email-masked]
Subject: Re: [mpls] Question about 0x8848 Ethertype

Nitin

Hi Nitin,

Do you agree?

Regards,
Shahram

-----Original Message-----
From: Nitin Bahadur [mailto:[email-masked]]
Sent: Thursday, October 22, 2009 11:10 AM
To: Shahram Davari; [email-masked]
Subject: Re: [mpls] Question about 0x8848 Ethertype

See NB> below...

Hi,

RFC 5332 says:

It also says:

Am I missing something?

Thanks
Nitin

---

From: Nitin Bahadur <[email-masked]>
Date: Thu, 22 Oct 2009 12:04:09 -0700

> If we assume your interpretation of the RFC that the context label is
> unique only if it is used as upstream label, meaning that the same context
> label can be used as downsteam-assigned label on that LAN, then the
> question is what about unicast packets in a LAN? 

> How will a node receiving
> a unicast packet can identify whether the top label is upstream assigned
> or downstream assigned?

Using ether-type...0x8848 will indicate upstream assigned.

> The RFC I think tries to say that the context-label must be unique. In
> other words both P1 and P2 cannot use the same label to
> I don't think the intention of the RFC was that both upstream and
> downstream allocated labels must be unique.
> 
> Nitin
> 
> Thanks for your answer. But RFC 5332 requires the use of unique "context
> label" at the top of the label stack which can't be used as downstream-
> assigned label on the multi-access media. So the mere presence of a
> "context label" should be enough and we don't need a dedicated Ethertype
> to tell us that the context label is upstream assigned.
> 
> Do you agree?
> 
> Regards,
> Shahram
> 
> "Ethertype 0x8848, formerly known as the "MPLS multicast codepoint", is to
> be used only when an MPLS packet whose top label is upstream- assigned is
> carried in a multicast Ethernet frame."
> 
> It also says:
> 
> "It is expected that the LSR will follow the procedures of [RFC5331],
> pushing on two labels, with the topmost label being a "context label" that
> is the same for all MPLS packets being transmitted by the LSR onto the
> Ethernet, but with the second label being different for different LSPs"
> 
> "A "context label" is one that identifies a label table in which the label
> immediately below the context label should be looked up. A context label
> carried as an outermost label over a particular multi-access subnet/tunnel
> MUST be unique within the scope of that subnet/tunnel."
> 
> "Multicast MPLS packets with upstream assigned labels encapsulated in
> Multicast Ethernet frames in a Multi-access media (LAN) require to use
> 0x8848 as Ethertype and require to use a context label that is unique over
> that media to identify the label space for the Multicast MPLS packet"
> 
> The question is since a context label is unique in a LAN and can be
> immediately identified as an upstream label, then why do we need 0x8848
> Ethertype? Looks like we could just use the context label.
> 
> Am I missing something?
> 
> NB> The question is "how to identify that this is an upstream label".
> Consider label 100. This label could have been allocated by upstream P1
> router as an upstream label and distributed to downstream router PE. The
> same label could have been allocated by PE router and distributed to
> router P1. So now, when PE
> receives a packet over the LAN (from P1) with label 100, it does not
> whether to look it up as an upstream label or as a downstream label..
>

---

From: "Shahram Davari" <[email-masked]>
Date: Thu, 22 Oct 2009 12:12:59 -0700

Nitin,

But RFC5332 explicitly says "Ethertype 0x8847 is used whenever a unicast ethernet frame carries an
MPLS packet". 

So we can't use 0x884 for unicast frames. Can we? If so then RFC 5332 has a problem.

Regards,
Shahram

---

From: Mitchell Erblich <[email-masked]>
Date: Thu, 22 Oct 2009 12:16:32 -0700

Nitin Bahadur,

		Are you you asking for uniqueness wrt only upstream or only  
downstream or both?

		I think it is the latter, last one.

		Mitchell Erblich
		=====================
On Oct 22, 2009, at 11:27 AM, Nitin Bahadur wrote:

> The RFC I think tries to say that the context-label must be unique.  
> In other words both P1 and P2 cannot use the same label to
> denote their context . In other words, upstream distributed labels  
> must be unique when using ether-type 0x8848.
>
> Thanks for your answer. But RFC 5332 requires the use of unique  
> "context label" at the top of the label stack which can't be used as  
> downstream-assigned label on the multi-access media. So the mere  
> presence of a "context label" should be enough and we don't need a  
> dedicated Ethertype to tell us that the context label is upstream  
> assigned.
>
> Do you agree?
>
> Regards,
> Shahram
>
> "Ethertype 0x8848, formerly known as the "MPLS multicast codepoint",  
> is to be used only when an MPLS packet whose top label is upstream-  
> assigned is carried in a multicast Ethernet frame."
>
> It also says:
>
> "It is expected that the LSR will follow the procedures of  
> [RFC5331], pushing on two labels, with the topmost label being a  
> "context label" that is the same for all MPLS packets being  
> transmitted by the LSR onto the Ethernet, but with the second label  
> being different for different LSPs"
>
> "A "context label" is one that identifies a label table in which the  
> label immediately below the context label should be looked up. A  
> context label carried as an outermost label over a particular multi- 
> access subnet/tunnel MUST be unique within the scope of that subnet/ 
> tunnel."
>
> "Multicast MPLS packets with upstream assigned labels encapsulated  
> in Multicast Ethernet frames in a Multi-access media (LAN) require  
> to use 0x8848 as Ethertype and require to use a context label that  
> is unique over that media to identify the label space for the  
> Multicast MPLS packet"
>
> immediately identified as an upstream label, then why do we need  
> 0x8848 Ethertype? Looks like we could just use the context label.
>
> Am I missing something?
>
> NB> The question is "how to identify that this is an upstream  
> label". Consider label 100. This label could have been allocated by  
> upstream P1 router as an upstream label and distributed to  
> downstream router PE. The same label could have been allocated by PE  
> router and distributed to router P1. So now, when PE
> Ethertype 0x8848 allows PE to perform lookups in context of P1 and  
> not in context of labels distributed by PE.
>
> Thanks
> Nitin
>
>
>
> _______________________________________________
> mpls mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/mpls

---

From: Eric Rosen <[email-masked]>
Date: Thu, 22 Oct 2009 15:20:39 -0400

Nitin's interpretation matches the intention of the text.

If the ethertype of an ethernet frame is 8848:

- The top label is to be looked up an interface-specific label space that is
  populated by the context labels in use on the LAN.  Each such label must
  uniquely correspond to an LSR on the LAN.

- As a result of making this lookup, you identify a second label space, one
  that is specific to the LSR that transmitted the frame.  This label space
  is populated by the labels that have been upstream-assigned by that LSR.

If the ethertype is 8847, the top label is an ordinary downstream-assigned
label, looked up in a label space populated by the downstream-assigned
labels of the LSR that receives the frame.

The above mentions three different label spaces; all label uniqueness
requirements are relative to a particular label space.

> How will a node receiving a unicast packet can identify whether the top
> label is upstream assigned or downstream assigned?

Per the standards, there is no way of using upstream-assigned labels in
unicast ethernet frames.

---

From: "Shahram Davari" <[email-masked]>
Date: Thu, 22 Oct 2009 12:28:00 -0700

Hi Eric,

Thanks for your clarifications.

Regards,
Shahram

---

From: "Shahram Davari" <[email-masked]>
Date: Fri, 23 Oct 2009 10:08:38 -0700

Hi Eric,

Do you know why such restriction for unicast exist? Why didn't the standard let unicast Ethernet carrying upstream-assigned label also use 0x8848? 

What should a system that receives a Unicast Ethernet frame with Ethertype 0x8848 do? Should the packet be dropped?

Regards,
Shahram

-----Original Message-----
From: Shahram Davari 
Sent: Thursday, October 22, 2009 12:28 PM
To: [email-masked]
Cc: Nitin Bahadur; [email-masked]
Subject: RE: [mpls] Question about 0x8848 Ethertype

Hi Eric,

Regards,
Shahram

---

From: Eric Rosen <[email-masked]>
Date: Mon, 26 Oct 2009 11:07:34 -0400

> Why didn't the standard let unicast Ethernet carrying upstream-assigned
> label also use 0x8848?

Unicast was considered to be out of scope of RFCs 5331/5332.