Subject: rfc3032 doubts.

From: Abhijit Gadgil <[email-masked]>
Date: Thu, 20 Sep 2001 10:07:43 +0530 (IST)

Hi all,

rfc3032, in section 2.3.2 mentions

<snip>
   In this environment, in order to send an ICMP message to the source
   of a packet, one can copy the label stack from the original packet to
   the ICMP message, and then label switch the ICMP message. This will
   cause the message to proceed in the direction of the original
   packet's destination, rather than its source.  Unless the message is
   label switched all the way to the destination host, it will end up,
<snip>
   When copying the label stack from the original packet to the ICMP
   message, the label values must be copied exactly, but the TTL values
   in the label stack should be set to the TTL value that is placed in
   the IP header of the ICMP message.  This TTL value should be long
   enough to allow the circuitous route that the ICMP message will need
   to follow.
<snip>

I have some doubt wrt copying labels like this

eg. Consider a packet L1 - L2 - Payload (IP)

Where an LSR while looking into NHLFE finds out
1. There is no valid nhlfe entry
2. Fragmentation needed
3. TTL exceeded.

by some means it discovers the packet is IP packet and wants to send ICMP
message, However what I feel is The procedure described in this section
will not achieve this result.

eg. now I construct a packet  "L1 - L2 - Payload(ICMP)" as mentioned here,
and forward it along the original LSP, Following things can happen.

1. If there is no valid NHLFE, where exactly this packet gets forwarded?

2. Even if there is a valid NHLFE(for case 2 and 3 above), simply copying
the Label Stack will not serve the purpose as the label L1 cannot be
interpreted by the downstream LSR, or may be interpreted incorrectly (the
second case is not really problematic as it will eventually take it
somewhere, where the stack will be stripped of and the ICMP message can be
then sent back to the source).

The solution to this could be to use something like a default NHLFE and
use one of the reseverved values of labels for carrying ICMP packets
along this default NHLFE. This NHLFE could be used for both the scenarios
in section 2.3.1 and 2.3.2

Is this correct?

Regards,

-abhijit