draft-ietf-mpls-icmp-01.txt   draft-ietf-mpls-icmp-02.txt 
MPLS Working Group R.Bonica MPLS Working Group R.Bonica
Internet Draft MCIWorldCom Internet Draft MCIWorldCom
Document: draft-ietf-mpls-icmp-01.txt D.Tappan Document: draft-ietf-mpls-icmp-02.txt D.Tappan
Cisco Systems Cisco Systems
D.Gan D.Gan
Juniper Networks Juniper Networks
December 1999 August 2000
ICMP Extensions for MultiProtocol Label Switching ICMP Extensions for MultiProtocol Label Switching
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of [RFC-2026]. all provisions of Section 10 of [RFC-2026].
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at line 48 skipping to change at line 49
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
this document are to be interpreted as described in [RFC-2119]. this document are to be interpreted as described in [RFC-2119].
3. Introduction 3. Introduction
Routers and destination hosts use the Internet Control Message Routers and destination hosts use the Internet Control Message
Protocol (ICMP) [RFC-792] to convey control information to source Protocol (ICMP) [RFC-792] to convey control information to source
hosts. Network operators use this information to diagnose routing hosts. Network operators use this information to diagnose routing
problems. problems.
Bonica, Tappan, Hwa Draft-Expires May 2000 1 Bonica, Tappan, Hwa Draft-Expires February 2001 1
When a router receives an undeliverable IP datagram, it can send an When a router receives an undeliverable IP datagram, it can send an
ICMP message to the host that originated the datagram. The ICMP ICMP message to the host that originated the datagram. The ICMP
message indicates why the datagram could not be delivered. It also message indicates why the datagram could not be delivered. It also
contains the IP header and leading payload octets of the "original contains the IP header and leading payload octets of the "original
datagram". datagram".
In this document, the term "original datagram" refers to the In this document, the term "original datagram" refers to the
datagram to which the ICMP message is a response. datagram to which the ICMP message is a response.
MPLS Label Switching Routers (LSR) also use ICMP to convey control MPLS Label Switching Routers (LSR) also use ICMP to convey control
skipping to change at line 100 skipping to change at line 101
ICMP extensions defined in the current memo support enhancements to ICMP extensions defined in the current memo support enhancements to
TRACEROUTE. The enhanced TRACEROUTE, like older implementations, TRACEROUTE. The enhanced TRACEROUTE, like older implementations,
indicates which nodes the original datagram visited en route to its indicates which nodes the original datagram visited en route to its
ultimate destination. It differs from older implementations in that ultimate destination. It differs from older implementations in that
it also indicates the original datagrams MPLS encapsulation status it also indicates the original datagrams MPLS encapsulation status
as it arrived at each node. as it arrived at each node.
Figure 1 contains sample output from an enhanced TRACEROUTE Figure 1 contains sample output from an enhanced TRACEROUTE
implementation. implementation.
Bonica,Tappan,Gan Draft-Expires May 2000 2 Bonica,Tappan,Gan Draft-Expires February 2001 2
>Traceroute 166.45.2.74 >Traceroute 166.45.2.74
traceroute to 166.45.2.74, 30 hops max, 40 byte packets traceroute to 166.45.2.74, 30 hops max, 40 byte packets
1 166.45.5.1 1.281 ms 1.103 ms 1.096 ms 1 166.45.5.1 1.281 ms 1.103 ms 1.096 ms
2 166.45.4.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2001 2 166.45.4.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2001
mplsExpBits1=0 mplsExpBits1=0
3 166.45.3.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2002 3 166.45.3.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2002
mplsExpBits1=0 mplsExpBits1=0
4 166.45.6.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2003 4 166.45.6.1 1.281 ms 1.103 ms 1.096 ms mplsLabel1=2003
mplsExpBits1=0 mplsExpBits1=0
5 166.45.2.1 1.281 ms 1.103 ms 1.096 ms 5 166.45.2.1 1.281 ms 1.103 ms 1.096 ms
skipping to change at line 149 skipping to change at line 150
6. Formal Syntax 6. Formal Syntax
This section defines a data structure that an LSR can append to This section defines a data structure that an LSR can append to
selected ICMP messages. The data structure contains the MPLS label selected ICMP messages. The data structure contains the MPLS label
stack that encapsulated the original datagram when it arrived at the stack that encapsulated the original datagram when it arrived at the
LSR. LSR.
The data structure defined herein can be appended to the following The data structure defined herein can be appended to the following
ICMP message types: ICMP message types:
Bonica,Tappan,Gan Draft-Expires May 2000 3 Bonica,Tappan,Gan Draft-Expires February 2001 3
1) Destination Unreachable 1) Destination Unreachable
2) Time Exceeded 2) Time Exceeded
3) Parameter Problem 3) Parameter Problem
4) Source Quench 4) Source Quench
5) Redirect 5) Redirect
According to RFC-792, the final field contained by each of these According to RFC-792, bytes 0 through 19 of any ICMP message contain
ICMP message types reflects the IP header and leading 64 bits of the a header whose format is analogous to that of the IP datagram. Bytes
original datagram. [RFC-1812] recommends that this final field be 20 through 23 contain an ICMP message type, code and checksum. Bytes
extended to include as much of the original datagram as possible. 24 through 27 contain message specific data.
Also according to RFC-792, the final field contained by each of the
ICMP message types listed above begins at byte 28. It reflects the
IP header and leading 64 bits of the original datagram. [RFC-1812]
recommends that this final field be extended to include as much of
the original datagram as possible.
When an LSR appends the data structure defined herein to an ICMP When an LSR appends the data structure defined herein to an ICMP
message, the final field of the ICMP message body MUST contain the message, the final field of the ICMP message body MUST contain the
first 128 octets of the original datagram. At least 20 of these 128 first 128 octets of the original datagram. At least 20 of these 128
octets represent the IP header of the original datagram. octets represent the IP header of the original datagram.
If the original datagram was shorter than 128 octets, the final If the original datagram was shorter than 128 octets, the final
field MUST be padded with 0's. field MUST be padded with 0's.
When an LSR appends the data structure defined herein to an ICMP When an LSR appends the data structure defined herein to an ICMP
skipping to change at line 189 skipping to change at line 196
an entire MPLS label stack, formatted exactly as it was when it an entire MPLS label stack, formatted exactly as it was when it
arrived at the LSR that sends the ICMP message. The other contains arrived at the LSR that sends the ICMP message. The other contains
some portion of the original datagram that could not be included in some portion of the original datagram that could not be included in
the final field of the ICMP message body (i.e., the octet 129 and the final field of the ICMP message body (i.e., the octet 129 and
beyond). beyond).
Both object classes are optional. Both object classes are optional.
In the future, additional object classes may be defined. In the future, additional object classes may be defined.
Bonica,Tappan,Gan Draft-Expires February 2001 4
6.1 Common Header 6.1 Common Header
0 1 2 3 0 1 2 3
+-------------+-------------+-------------+-------------+ +-------------+-------------+-------------+-------------+
| Vers | (Reserved) | Checksum | | Vers | (Reserved) | Checksum |
+-------------+-------------+-------------+-------------+ +-------------+-------------+-------------+-------------+
The fields in the common header are as follows: The fields in the common header are as follows:
Bonica,Tappan,Gan Draft-Expires May 2000 4
Vers: 4 bits Vers: 4 bits
ICMP extension version number. ICMP extension version number.
This is version 2. This is version 2.
Checksum: 16 bits Checksum: 16 bits
The one's complement of the one's complement sum of the data The one's complement of the one's complement sum of the data
structure, with the checksum field replaced by zero for the purpose structure, with the checksum field replaced by zero for the purpose
skipping to change at line 238 skipping to change at line 246
| // (Object contents) // | | // (Object contents) // |
| | | |
+-------------+-------------+-------------+-------------+ +-------------+-------------+-------------+-------------+
An object header has the following fields: An object header has the following fields:
Length: 16 bits Length: 16 bits
Length of the object, measured in octets, including the object Length of the object, measured in octets, including the object
header and object contents. header and object contents.
Bonica,Tappan,Gan Draft-Expires February 2001 5
Class-Num: 8 bits Class-Num: 8 bits
Identifies object class. Identifies object class.
C-Type: 8 bits C-Type: 8 bits
Identifies object sub-type. Identifies object sub-type.
Bonica,Tappan,Gan Draft-Expires May 2000 5
6.3 MPLS Stack Entry Object Class 6.3 MPLS Stack Entry Object Class
A single instance of the MPLS Entry Object class represents the A single instance of the MPLS Entry Object class represents the
entire MPLS label stack, formatted exactly as it was when it arrived entire MPLS label stack, formatted exactly as it was when it arrived
at the LSR that sends the ICMP message at the LSR that sends the ICMP message
In the illustration below, octets 0-3 depict the first member of the In the illustration below, octets 0-3 depict the first member of the
MPLS label stack. Each remaining member of the MPLS label stack is MPLS label stack. Each remaining member of the MPLS label stack is
represented by another 4 octets that share the same format. represented by another 4 octets that share the same format.
skipping to change at line 286 skipping to change at line 292
S: Bottom of Stack, 1 bit S: Bottom of Stack, 1 bit
TTL: Time to Live, 8 bits TTL: Time to Live, 8 bits
6.4 Extended Payload Object Class 6.4 Extended Payload Object Class
An instance of the Extended Payload Object class represents some An instance of the Extended Payload Object class represents some
portion of the original datagram that could not be fit in the final portion of the original datagram that could not be fit in the final
field of the ICMP message body (i.e., octets beyond 128). field of the ICMP message body (i.e., octets beyond 128).
Bonica,Tappan,Gan Draft-Expires February 2001 6
Syntax follows: Syntax follows:
MPLS Stack Entry Class = 2, C-Type = 1. MPLS Stack Entry Class = 2, C-Type = 1.
0 1 2 3 0 1 2 3
+-------------+-------------+-------------+-------------+ +-------------+-------------+-------------+-------------+
| | | |
| // Remaining MPLS Stack Entries // | | // Additional bytes of original datagram // |
| | | |
+-------------+-------------+-------------+-------------+ +-------------+-------------+-------------+-------------+
Bonica,Tappan,Gan Draft-Expires May 2000 6
7. Backward Compatibility 7. Backward Compatibility
ICMP extensions proposed in this document MUST be backward ICMP extensions proposed in this document MUST be backward
compatible with the syntax described in RFC-792. Extensions proposed compatible with the syntax described in RFC-792. Extensions proposed
in this memo MUST NOT change or deprecate any field defined in RFC- in this memo MUST NOT change or deprecate any field defined in RFC-
792. 792.
The extensions defined herein are in keeping with the spirit, if not The extensions defined herein are in keeping with the spirit, if not
the letter of RFC-1812. In order to support IP-in-IP tunneling, RFC- the letter of RFC-1812. In order to support IP-in-IP tunneling, RFC-
1812 extends the final field of selected ICMP messages to include a 1812 extends the final field of selected ICMP messages to include a
skipping to change at line 334 skipping to change at line 339
This memo presents no security considerations beyond those already This memo presents no security considerations beyond those already
presented by current ICMP applications (e.g., traceroute). presented by current ICMP applications (e.g., traceroute).
9. References 9. References
[ARCH], Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol [ARCH], Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol
Label Switching Architecture", Internet Draft <draft-ietf-mpls-arch- Label Switching Architecture", Internet Draft <draft-ietf-mpls-arch-
06.txt>, August, 1999 06.txt>, August, 1999
Bonica,Tappan,Gan Draft-Expires February 2001 7
[ENCODE], Rosen, E., Rekhter, Y., Tappan, D, Farinacci, D., [ENCODE], Rosen, E., Rekhter, Y., Tappan, D, Farinacci, D.,
Fedorkow, G., Li, T., Conta, A., "MPLS Stack Encoding", Internet Fedorkow, G., Li, T., Conta, A., "MPLS Stack Encoding", Internet
Draft, <draft-ietf-mpls-label-encapse-07.txt>, September 1999. Draft, <draft-ietf-mpls-label-encapse-07.txt>, September 1999.
[FRAME], Callon, R., Doolan, P., Feldman, N., Fredette, A., Swallow,
G., and A. Viswanathan, "A Framework for Multiprotocol Label
Switching", Internet Draft <draft-ietf-mpls-framework-05.txt>,
September 1999.
[MPLSATM], Davie, B., Lawrence, J., McCloghrie, K., Rekhter, Y., [MPLSATM], Davie, B., Lawrence, J., McCloghrie, K., Rekhter, Y.,
Rosen, E., Swallow, G, "MPLS using ATM VC Switching", <draft-ietf- Rosen, E., Swallow, G, "MPLS using LDP and ATM VC Switching",
mpls-atm-01.txt>, November, 1998. <draft-ietf- mpls-atm-04.txt>, June 2000.
Bonica,Tappan,Gan Draft-Expires May 2000 7
[MPLSFRAME], Conta, A., Doolan, P., Malis, A., "Use of Label [MPLSFRAME], Conta, A., Doolan, P., Malis, A., "Use of Label
Switching on Frame Relay Networks", <draft-ietf-mpls-fr-03.txt>, Switching on Frame Relay Networks", <draft-ietf-mpls-fr-06.txt>,
November, 1998. June, 2000.
[RFC-792], Postel, J., "Internet Control Message Protocol", RFC 792, [RFC-792], Postel, J., "Internet Control Message Protocol", RFC 792,
ISI, September 1981. ISI, September 1981.
[RFC-1812], Baker, F., "Requirements for IP Version 4 Routers", RFC [RFC-1812], Baker, F., "Requirements for IP Version 4 Routers", RFC
1812, June 1995. 1812, June 1995.
[RFC-2026], Bradner, S., "Internet Standards Process Revision 3", [RFC-2026], Bradner, S., "Internet Standards Process Revision 3",
RFC 2026, Harvard University, October 1996. RFC 2026, Harvard University, October 1996.
skipping to change at line 388 skipping to change at line 388
Daniel C. Tappan Daniel C. Tappan
Cisco Systems Cisco Systems
250 Apollo Drive 250 Apollo Drive
Chelmsford, Massachusetts, 01824 Chelmsford, Massachusetts, 01824
Email: tappan@cisco.com Email: tappan@cisco.com
Der-Hwa Gan Der-Hwa Gan
Juniper Networks Juniper Networks
385 Ravendale Drive 385 Ravendale Drive
Mountain View, California 94043 Mountain View, California 94043
Bonica,Tappan,Gan Draft-Expires February 2001 8
Email: dhg@juniper.net Email: dhg@juniper.net
Bonica,Tappan,Gan Draft-Expires May 2000 8 Bonica,Tappan,Gan Draft-Expires February 2001 9
Full Copyright Statement Full Copyright Statement
"Copyright (C) The Internet Society (date). All Rights Reserved. "Copyright (C) The Internet Society (date). All Rights Reserved.
This document and translations of it may be copied and furnished to This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it others, and derivative works that comment on or otherwise explain it
or assist in its implmentation may be prepared, copied, published or assist in its implmentation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph kind, provided that the above copyright notice and this paragraph
are included on all such copies and derivative works. However, this are included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be copyrights defined in the Internet Standards process must be
followed, or as required to translate it into followed, or as required to translate it into
Bonica,Tappan,Gan Draft-Expires May 2000 9 Bonica,Tappan,Gan Draft-Expires February 2001 10
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/