Subject: Re: status signalling of MPLS PW state

From: Luca Martini <[email-masked]>
Date: Fri, 13 Jun 2003 12:17:38 -0600

Andy helped me get to the version below.

I changed to a PW status TLV , that is used in the LDP notification message.
( it makes coding a little harder , but it's difficult to justify another 
message type. )
Also changed the definitions of the PW faults.
Now there are 32 bits of PW status.
I still need to finish a iana section to allocate more bits.

any more comments ?

Luca
.Pb "Signaling of Pseudo Wire Status"

.Pc "Use of Label Mappings."
The PEs MUST send PW label mapping messages to their peers as soon as the PW
is configured and administratively enabled, regardless of the CE-facing
interface state. The PW label should not be withdrawn unless the user
administratively configures the CE-facing interface down (or the PW
configuration is deleted entirely). A simple label withdraw method SHOULD
also be supported as an alternative.

.Pc "Signaling PW status."
The PE devices use an LDP TLV to indicate status to their remote peers. This
PW Status TLV contains more information than the alternative simple Label
Withdraw message.

The format of the PW Status TLV is:
.DS 0 0
  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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|0|     PW Status (0x0???)    |            Length             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         Status Code                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.DE

Where status is a 4 octet bit field:

.nf
0x00000000 - Pseudo Wire forwarding ( clear all failures )
0x00000001 - Pseudo Wire Not Forwarding
0x00000002 - Local Customer-facing PW ( ingress ) Receive Fault
0x00000004 - Local Customer-facing PW ( egress ) Transmit Fault
0x00000008 - Local PSN-facing PW ( ingress ) Receive Fault
0x00000010 - Local PSN-facing PW ( egress ) Transmit Fault
.En

The above status codes can be logically combined to indicate more then a
single failure at once. Each fault can be cleared by sending an appropriate
status message with the respective bit cleared. The presence of the lowest
bit (PW Not Forwarding) acts only as a generic failure indication when there
is a link-down event for which none of the other bits apply.

The Status TLV is transported to the remote PW peer via the LDP notification
message. The format of the Notification Message is:

.DS 0 0
  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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|   Notification   (0x0001)   |      Message Length           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           Message ID                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           PW FEC TLV                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         PW Status TLV                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.DE

The PW FEC TLV SHOULD not include the interface parameters as they are
ignored in the context of this message. When a PE's CE-facing interface
encounters an error, use of the new message allows the PE to send a single
Status message, using a PW FEC TLV with only the group ID set, to denote
this change in status for all affected PW connections.

---

From: "Andrew G. Malis" <[email-masked]>
Date: Fri, 13 Jun 2003 14:39:24 -0400

Luca and I worked this out on the phone.  It's a nice way to get both of 
the functions we were discussing earlier (being able to signal both 
individual PW state and group ID failure) and it takes advantage of the 
existing LDP Notification message (and architecturally cleaner than using 
the Label Mapping message).

Andy

--------