Internet DRAFT - draft-shivani-mpls-ldp-capability
draft-shivani-mpls-ldp-capability
Network Working Group S. Aggarwal
Internet Draft Juniper Networks
Expiration Date: December 2006
R. Aggarwal
Juniper Networks
J. L. Le Roux
France Telecom
June 2006
Capabilities Advertisement with LDP
draft-shivani-mpls-ldp-capability-00.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Copyright Notice
Copyright (C) The Internet Society (2006). All Rights Reserved.
Shivani, Raggarwa & Le Roux [Page 1]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
Abstract
This document defines a new Optional Parameter, called Capabilities
TLV, that is expected to facilitate the introduction of new
capabilities in the Label Distribution Protocol (LDP) by providing
graceful capability advertisement without requiring that LDP peering
be terminated.
The "LDP peering" in this document refers to the TCP connection
between the 2 routers and not the actual session. The "LDP session"
refers to the connection after the initialization message has been
successfully processed and the session is marked operational.
Table of Contents
1 Specification of requirements ......................... 2
2 Overview of Operations ................................ 3
3 Capabilities TLV ...................................... 4
4 Extensions to Error Handling .......................... 5
5 IANA Considerations ................................... 6
6 Security Considerations ............................... 6
7 Acknowledgements ...................................... 6
8 References ............................................ 6
9 Author Information .................................... 7
10 Intellectual Property Statement ....................... 7
11 Full Copyright Statement .............................. 8
1. Specification of requirements
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
Shivani, Raggarwa & Le Roux [Page 2]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
2. Overview of Operations
When a LDP speaker that supports capabilities advertisement sends an
INITIALIZATION message to its LDP peer, the message MAY include an
Optional Parameter, called Capabilities TLV. The parameter lists the
capabilities supported by the speaker.
A LDP speaker determines the capabilities supported by its peer by
examining the list of capabilities present in the Capabilities TLV
Optional Parameter carried by the INITIALIZATION message that the
speaker receives from the peer.
A LDP speaker that supports a particular capability may use this
capability with its peer after the speaker determines (as described
above) that the peer supports this capability.
A LDP speaker determines that its peer doesn't support capabilities
advertisement, if in response to an INITIALIZATION message that
carries the Capabilities TLV Optional Parameter, the speaker receives
a NOTIFICATION message with the Status Code of the Status TLV set to
Unknown TLV. This assumes that the speaker knows which TLV was
considered as an Unknown TLV by its peer. In this case, the speaker
SHOULD attempt to re-establish a LDP connection with the peer
without sending to the peer the Capabilities TLV Optional Parameter.
If a LDP speaker that supports a certain capability determines that
its peer doesn't support this capability, the speaker MAY send a
NOTIFICATION message to the peer, and terminate peering (see Section
"Extensions to Error Handling" for more details). The Status Code in
the Status TLV of the NOTIFICATION message is set to Unsupported
Capability. The message SHOULD contain the capability (capabilities)
that caused the speaker to send the message. The decision to send the
message and terminate peering is local to the speaker. If terminated,
such peering SHOULD NOT be re-established automatically. How the
session is re-established is beyond the scope of this document. It
is dependent on the capability and MUST be specified along with the
procedures specifying the LDP capability.
These procedures enable a LDP speaker A, that supports the LDP
Capabilities TLV to establish a LDP session with a LDP speaker B,
that does not support the LDP Capabilities TLV. However the
capabilities that LDP speaker A advertises in the Capabilities TLV,
can not be used between LDP speakers A and B, in this case.
These procedures also enable a LDP speaker C, that supports a
specific LDP capability, to establish a LDP session with a LDP
speaker D, that does not support this specific capability, though LDP
speaker D may support the LDP Capabilities TLV. However this specific
capability supported by LDP speaker C, can not be used between LDP
Shivani, Raggarwa & Le Roux [Page 3]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
speakers C and D in this case.
Further these procedures provide the choice to LDP speakers A and C
to terminate the LDP session with LDP speakers B and D respectively.
Whether LDP speakers A and C decide to do this or not is dependent on
the LDP capability that is not supported by LDP speakers B and D and
MUST be specified along with the procedures specifying the LDP
capability.
3. Capabilities TLV
This is an Optional Parameter that is used by a LDP speaker to convey
to its LDP peer the list of capabilities supported by the speaker.
This new optional paramter is called the Capabilities TLV and it
contains one or more sub-TLVs, each to signal a specific capability.
Following is the format of the LDP Capability TLV:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0|0| Capability TLV (0x0504) | Length (Variable) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sub-TLVs... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type : To be assigned by IANA. Suggested value is 0x0504
Length: Variable
Each capability sub-TLV is encoded as follows:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Capability Code | Capability Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Capability Value (variable) |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The use and meaning of these fields are as follows:
Capability Code:
Capability Code is a two octets field that unambiguously
identifies individual capabilities. Capability codes are to be
assigned by IANA.
Shivani, Raggarwa & Le Roux [Page 4]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
Capability Length:
Capability Length is a two octets field that contains the length
of the Capability Value field in octets.
Capability Value:
Capability Value is a variable length field that is interpreted
according to the value of the Capability Code field.
LDP speakers SHOULD NOT include more than one instance of a
capability with the same Capability Code, Capability Length, and
Capability Value. Note however, that processing of multiple
instances of such capability does not require special handling, as
additional instances do not change the meaning of announced
capability.
4. Extensions to Error Handling
This document defines new Status Code - Unsupported Capability. The
value of this Subcode is to be assigned by IANA. The 'E' bit of the
Status TLV in the NOTIFICATION message SHOULD be set to 0.
The NOTIFICATION message SHOULD list the set of capabilities that
caused the speaker to send the message.
For this purpose, a new Optional Parameter, Returned TLV is added to
the NOTIFICATION message. The value of this Optional Parameter,
Returned TLV, is to be assigned by IANA. The suggested value is
0x0505. The 'U' and 'F' bit of the Returned TLV in the
NOTIFICATION message is TBD and will be specified when the value
of the Returned TLV is defined.
If the Status Subcode is UNKNOWN TLV, the Returned TLV MUST contain
the Capability TLV that wasn't understood. If the Status Subcode is
Unsupported Capability, the Capability TLV MUST be encoded in the
Returned TLV Optional Paramter of the NOTIFICATION message with only
the capabilities that aren't supported. Each such capability is
encoded the same way as it would be encoded in the INITIALIZATION
Shivani, Raggarwa & Le Roux [Page 5]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
message.
5. IANA Considerations
This document defines a Capability TLV. We would like to request type
0x0504, to be assigned by IANA to this TLV. IANA maintains the
registry for Capability Code values. Capability Code value 0 is
reserved. Capability Code values 1 through 63 are to be assigned by
IANA using the "IETF Consensus" policy defined in RFC 2434.
Capability Code values 64 through 127 are to be assigned by IANA,
using the "First Come First Served" policy defined in RFC 2434.
Capability Code values 128 through 255 are for "Private Use" as
defined in RFC 2434.
This document also defines a Returned TLV and we would like to
request type 0x0505, to be assigned by IANA to this TLV.
This document defines new Status Code for the LDP Status TLV:
Unsupported Capability. The value of this subcode is to be assigned
by IANA.
6. Security Considerations
This extension to LDP does not change the underlying security issues
inherent in the existing LDP [RFC3036].
7. Acknowledgements
This extension to LDP is modelled after a similar extension to the
Border Gateway Protocol for capability advertisement [RFC3392].
Thanks to Ina Minei for her comments.
8. References
[RFC3036] L. Andersson, et. al., "LDP Specification", January 2001.
[RFC3392] R. Chandra, et. al., "Capabilities Advertisement with
BGP-4", November 2002
[RFC2119] "Key words for use in RFCs to Indicate Requirement
Levels.", Bradner, March 1997
Shivani, Raggarwa & Le Roux [Page 6]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
9. Author Information
Shivani Aggarwal
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
Email: shivani@juniper.net
Rahul Aggarwal
Juniper Networks
1194 North Mathilda Ave.
Sunnyvale, CA 94089
Email: rahul@juniper.net
Jean-Louis Le Roux
France Telecom
2, avenue Pierre-Marzin
22307 Lannion Cedex
France
E-mail: jeanlouis.leroux@francetelecom.com
10. Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this specification
can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf-
ipr@ietf.org.
Shivani, Raggarwa & Le Roux [Page 7]
Internet Draft draft-shivani-mpls-ldp-capability-00.txt June 2006
11. Full Copyright Statement
Copyright (C) The Internet Society (2006). All Rights Reserved.
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Shivani, Raggarwa & Le Roux [Page 8]