Subject: [mpls] BUG in RFC 4379 ( MPLS Ping / Traceroute) - or maybe not – please enlighten me

From: "Asaf Henig" <[email-masked]>
Date: Sat, 25 Nov 2006 17:26:45 +0200

Section 4.4.1 in the RFC describes an algorithm for Fec Validation, i.e. a procedure to verify the compatibility between the incoming label and the FEC tlv that describes it. 

However, it appears that the RFC writers didn’t notice that there are cases in which there is no 1 to 1 compatibility between the incoming labels and FECs.

Specifically let me point out the simple LDP ipv4 FEC tlv which includes only a simple prefix to describe any FEC. An LSR advertising the networks to which it is the egress router may advertise different labels to the same network to different LSRs with which it has opened an LDP sessions. This is especially true to LSRs working in Global label space. 

In general it appears that the RFC writers didn’t take into consideration the issue of different LDP sessions. Note that although the algorithm described in section 4.4.1 also asks to validate the interface through which the echo request packet arrived, this interface is not an indicator for the LDP session (think of several LSRs found in the same network and are connected by a bridge). 

It is important to note that there are some FEC TLVs in which this issue is not relevant. An example can be the RSVP ipv4 FEC which includes extended-tunnel-id that marks the ping originator and thus have a full 1 to 1 compatibility between the FEC and the incoming label.  

When an incoming mpls echo request packet, with an LDP ipv4 FEC, reaches an egress LSR (LER), this LSR needs to match between the incoming packet and one of his opened LDP sessions. There are several options to solve this issue: one would be to change RFC 4379 and to add to the LDP ipv4 FEC described in the RFC a ping originator address (this address should be the originator’s transport address).  Another option can be to conclude the LDP session from the source ip address of the echo request packet. The last option in my opinion shouldn’t be the preferred one since it requires matching between the incoming packet and the address-list TLV used in the LDP protocol. However even this last option should have been discussed in the RFC. 

Please enlighten me with your thoughts.

Did I miss something in the RFC. 

Regards

Asaf Henig 

MRV communications.  

 

 

Section 4.4.1 in the RFC describes an algorithm for Fec Validation, i.e. a procedure to verify the compatibility between the incoming label and the FEC tlv that describes it. 

However, it appears that the RFC writers didn’t notice that there are cases in which there is no 1 to 1 compatibility between the incoming labels and FECs.

Specifically let me point out the simple LDP ipv4 FEC tlv which includes only a simple prefix to describe any FEC. An LSR advertising the networks to which it is the egress router may advertise different labels to the same network to different LSRs with which it has opened an LDP sessions. This is especially true to LSRs working in Global label space. 

In general it appears that the RFC writers didn’t take into consideration the issue of different LDP sessions. Note that although the algorithm described in section 4.4.1 also asks to validate the interface through which the echo request packet arrived, this interface is not an indicator for the LDP session (think of several LSRs founnbsp;</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face="Times New Roman" 
size=3>When an incoming mpls echo request packet, with an LDP ipv4 FEC, reaches 
an egress LSR (LER), this LSR needs to match between the incoming packet and one 
of his opened LDP sessions. There are several options to solve this issue: one 
would be to change RFC 4379 and to add to the LDP ipv4 FEC described in the RFC 
a ping originator address (this address should be the originator’s transport 
address).<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>Another option can be to 
conclude the LDP session from the source ip address of the echo request packet. 
The last option in my opinion shouldn’t be the preferred one since it requires 
matching between the incoming packet and the address-list TLV used in the LDP 
protocol. However even this last option should have been discussed in the RFC. 
</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face="Times New Roman" 
size=3>Please enlighten me with your thoughts.</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face="Times New Roman" 
size=3>Did I miss something in the RFC. </FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face="Times New Roman" 
size=3>Regards</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face="Times New Roman" 
size=3>Asaf Henig </FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT size=3><FONT 
face="Times New Roman">MRV communications.<SPAN style="mso-spacerun: yes">&nbsp; 
</SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN 
style="mso-spacerun: yes"><FONT face="Times New Roman" size=3>&nbsp; 
</FONT></SPAN></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face="Times New Roman" 
size=3>&nbsp;</FONT></o:p></P></FONT></DIV></BODY></HTML>

_______________________________________________
mpls mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mpls