Subject: LDP, LSP PING and VPLS OAM questions

From: "Yifat Migdal-Steinberg" <[email-masked]>
Date: Wed, 6 Aug 2003 16:24:32 +0300

Hello,

I have the following questions regarding VPLS (H-VPLS) based on the lassere-vkompella draft:

Control plane versus Data plane:

would it be true to say that :

1. data plane is responsible for encapsulation, de-encapsulation 
and forwarding  of packets.
All packets arriving to the data plane are encapsulated with a VC label and one or more LSP labels.

2. Control plane is responsible for setting up the VC and LSP tunnels. It would usually be LDP for VC tunnels,
and might be RSVP-TE for LSP tunnels in the core. 
The signaling messages (IP/UDP or IP/TCP frames MAY be encapsulated)
(The main question is whether LDP packets are NEVER encapsulated, or MAY be encapsulated).
If they are encapsulated, is there a special encapsulation for signaling (like special label value) ?

LSP ping and VPLS OAM (Ping+Traceroute):

Error codes: When sending an echo reply of a VPLS ping/traceroute, in case of error, what would the
return code in the echo reply message be - is it always 0, and an error TLV is included with the appropriate VPLS OAM return code (1-7...)
OR, the return value is one of the LSP ping error codes, and 0 + error TLV is a private state.

If only an H. L2 TLV (type=10) is included in the request message, is the LSP checked as well, based on the label
of the encapsulated packet, and an error code returned, or is it checked ONLY if the appropriate
TLV is included in the TLV stack. In case of error in the LSP  - what would the return codes be?
In case of error in the VC - what would the return code be?

Generally - if an hierarchy of LSPs are tested, and a TLVs stack is included, 
in case of error, what would be the return code in the reply message -
does it refer only to the bottom TLV/LSP or other?
(The question rises since the return code is one, while the TLVs may be stackable)

Yifat

Mrs. Yifat Migdal-Steinberg
RAD Data communications Ltd.
24 Raoul Vallenberg St.
Tel-Aviv
Tel:03-7657035
Fax:03-6455305

---

From: Olen Stokes <[email-masked]>
Date: Thu, 7 Aug 2003 06:37:29 -0700

Please see comments in line...

-----Original Message-----
From: Yifat Migdal-Steinberg [mailto:[email-masked]]
Sent: Wednesday, August 06, 2003 9:25 AM
To: [email-masked]
Subject: LDP, LSP PING and VPLS OAM questions

Hello,

I have the following questions regarding VPLS (H-VPLS) based on the
lassere-vkompella draft:

All packets arriving to the data plane are encapsulated with a VC label and
one or more LSP labels.

[OLS]: in cases where PHP is used, there may not be a "LSP label."

2. Control plane is responsible for setting up the VC and LSP tunnels. It
would usually be LDP for VC tunnels,

(The main question is whether LDP packets are NEVER encapsulated, or MAY be
encapsulated).

[OLS]: Packets for the targeted LDP session may be sent using the underlying
LSP.

If they are encapsulated, is there a special encapsulation for signaling
(like special label value) ?

Error codes: When sending an echo reply of a VPLS ping/traceroute, in case
of error, what would the

return code in the echo reply message be - is it always 0, and an error TLV
is included with the appropriate VPLS OAM return code (1-7...)

OR, the return value is one of the LSP ping error codes, and 0 + error TLV
is a private state.
 
[OLS]: The following LSP ping error codes should be used when responding to
a HVPLS ping/traceroute:

1    Malformed echo request received

2    One or more of the TLVs was not understand

For other codes, an error TLV is used.

If only an H. L2 TLV (type=10) is included in the request message, is the
LSP checked as well, based on the label

of the encapsulated packet, and an error code returned, or is it checked
ONLY if the appropriate

TLV is included in the TLV stack. 

[OLS] : If only an H. L2 TLV is included in the request, the label for the
underlying LSP cannot be checked since the packet may have gone through
intermediate MPLS nodes.  The label is included in the label stack of the
downstream mapping so that an operator can see which of multiple equal cost
underlying LSPs was chosen at the previous HVPLS node.

 In case of error in the LSP  - what would the return codes be?

Generally - if an hierarchy of LSPs are tested, and a TLVs stack is
included, 

(The question rises since the return code is one, while the TLVs may be
stackable)

[OLS]: If a request is received that has, for example, a stack of three
TLVs, then my opinion would be:

1) the first TLV is checked.  If this node is not the egress, then this TLV
would be included in the reply and the appropriate return code set.  If this
node is the egress, then this TLV would be included in the reply and
checking would move to the second TLV.

2) if this node is not the egress for the second TLV, then this TLV would be
included in the reply and the return code set based on this TLV.  If this
node is the egress, then this TLV would be included in the reply and
checking would move to the third TLV.

3) if this node is not the egress for the third TLV, then this TLV would be
included in the reply and the return code set based on this TLV.  If this
node is the egress, then this TLV would be included in the reply and a
return code of egress set.

So, the reply would contain TLVs from the stack of TLVs in the request, up
to where the replying node is not the egress.  The return code would be set
based on the last TLV in the stack in the reply.  A return code of egress is
assumed for the other TLVs in the stack.

 Again, this is my opinion.  The authors of the LSP ping draft may have
something else in mind.

Yifat

24 Raoul Vallenberg St.

Tel-Aviv

Tel:03-7657035

Fax:03-6455305