for the last label in the stack. Hence, a POP operation will result in an unlabeled packet. If the packet is labeled and the next hop is the same LSR, then the packet is fed back into the process described in this paragraph until the next hop is another LSR (or it is forwarded unlabeled). If an unlabeled packet arrives at the LSR, it will be compared with an entry in the FEC- to-NHLFE Map. This requires the attributes of the packet (e.g., destination IP address) to be compared against the FECs configured in the router, and when a match is found the NHLFE for that FEC is used to encode the packet for forwarding (as described in the previous para- graph). There might be multiple FECs that match the packet; for example, there might be a number of IP address prefixes that the destination IP address matches. In this case there are rules to typically find the lowest-granularity FEC; in the example of the destination IP address prefix, it is typically the longest prefix match that is used, as with conventional IP forwarding rules. Time-to-Live in MPLS Networks The TTL field in IP networks is widely used to mitigate IP routing loops and for network trouble shooting. In IP networks the TTL field is typically set to a value in the range of 30 to 255 at the source and decremented by 1 at each router. If there is a routing loop, the TTL field will eventually reach 0, and the packet will be discarded by the router. Routing loops occur either through transient effects of dynamic routing protocols or because of configura- tion error. Without the TTL-based loop mitigation, a routing loop would cause excessive congestion in the links of the loop. When a router discards a packet with an expired TTL value, it sends an Internet Control Message Protocol (ICMP) packet to the source with a "time exceeded" message. This latter message is used to good effect by utilities such as traceroute, which sends probe UDP packets into the network with TTL values starting at 1 and getting successively bigger. By listening to the ICMP "time exceeded