idnits 2.17.1 draft-ietf-idr-bgp4-cap-neg-05.txt: ** The Abstract section seems to be numbered Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 4 longer pages, the longest (page 2) being 61 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** The abstract seems to contain references ([BGP-4]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- Couldn't find a document date in the document -- date freshness check skipped. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 1771 (ref. 'BGP-4') (Obsoleted by RFC 4271) ** Obsolete normative reference: RFC 2385 (ref. 'Heffernan') (Obsoleted by RFC 5925) Summary: 7 errors (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Network Working Group Ravi Chandra 2 Internet Draft Siara Systems 3 Expiration Date: August 2000 John G. Scudder 4 cisco Systems 5 Capabilities Negotiation with BGP-4 7 draft-ietf-idr-bgp4-cap-neg-05.txt 9 1. Status of this Memo 11 This document is an Internet-Draft and is in full conformance with 12 all provisions of Section 10 of RFC2026 except that the right to 13 produce derivative works is not granted. 15 Internet-Drafts are working documents of the Internet Engineering 16 Task Force (IETF), its areas, and its working groups. Note that 17 other groups may also distribute working documents as Internet- 18 Drafts. 20 Internet-Drafts are draft documents valid for a maximum of six months 21 and may be updated, replaced, or obsoleted by other documents at any 22 time. It is inappropriate to use Internet-Drafts as reference 23 material or to cite them other than as ``work in progress.'' 25 The list of current Internet-Drafts can be accessed at 26 http://www.ietf.org/ietf/1id-abstracts.txt 28 The list of Internet-Draft Shadow Directories can be accessed at 29 http://www.ietf.org/shadow.html. 31 2. Abstract 33 Currently BGP-4 [BGP-4] requires that when a BGP speaker receives an 34 OPEN message with one or more unrecognized Optional Parameters, the 35 speaker must terminate BGP peering. This complicates introduction of 36 new capabilities in BGP. 38 This document defines new Optional Parameter, called Capabilities, 39 that is expected to facilitate introduction of new capabilities in 40 BGP by providing graceful capability negotiation without requiring 41 that BGP peering be terminated. 43 3. Overview of Operations 45 When a BGP speaker that supports capabilities negotiation sends an 46 OPEN message to its BGP peer, the message may include an Optional 47 Parameter, called Capabilities. The parameter lists the capabilities 48 supported by the speaker. 50 A BGP speaker determines the capabilities supported by its peer by 51 examining the list of capabilities present in the Capabilities 52 Optional Parameter carried by the OPEN message that the speaker 53 receives from the peer. 55 A BGP speaker that supports a particular capability may use this 56 capability with its peer after the speaker determines (as described 57 above) that the peer supports this capability. 59 A BGP speaker determines that its peer doesn't support capabilities 60 negotiation, if in response to an OPEN message that carries the 61 Capabilities Optional Parameter, the speaker receives a NOTIFICATION 62 message with the Error Subcode set to Unsupported Optional Parameter. 63 In this case the speaker should attempt to re-establish a BGP 64 connection with the peer without sending to the peer the Capabilities 65 Optional Parameter. 67 If a BGP speaker that supports a certain capability determines that 68 its peer doesn't support this capability, the speaker may send a 69 NOTIFICATION message to the peer, and terminate peering. The Error 70 Subcode in the message is set to Unsupported Capability. The message 71 should contain the capability (capabilities) that causes the speaker 72 to send the message. The decision to send the message and terminate 73 peering is local to the speaker. Such peering should not be re- 74 established automatically. 76 4. Capabilities Optional Parameter (Parameter Type 2): 78 This is an Optional Parameter that is used by a BGP speaker to convey 79 to its BGP peer the list of capabilities supported by the speaker. 81 The parameter contains one or more triples , where each triple is encoded as 83 shown below: 85 +------------------------------+ 86 | Capability Code (1 octet) | 87 +------------------------------+ 88 | Capability Length (1 octet) | 89 +------------------------------+ 90 | Capability Value (variable) | 91 +------------------------------+ 93 The use and meaning of these fields are as follows: 95 Capability Code: 97 Capability Code is a one octet field that unambiguously 98 identifies individual capabilities. 100 Capability Length: 102 Capability Length is a one octet field that contains the length 103 of the Capability Value field in octets. 105 Capability Value: 107 Capability Value is a variable length field that is interpreted 108 according to the value of the Capability Code field. 110 A particular capability, as identified by its Capability Code, may 111 occur more than once within the Optional Parameter. 113 5. Extensions to Error Handling 115 This document defines new Error Subcode - Unsupported Capability. 116 The value of this Subcode is 7. The Data field in the NOTIFICATION 117 message lists the set of capabilities that cause the speaker to send 118 the message. Each such capability is encoded the same way as it was 119 encoded in the received OPEN message. 121 6. IANA Considerations 123 As specified in this document, the Capability optional parameter 124 contains the Capability Code field. Capability Code value 0 is 125 reserved. Capability Code values 1 through 63 are to be assigned by 126 IANA using the "IETF Consensus" policy defined in RFC2434. Capability 127 Code values 64 through 127 are to be assigned by IANA, using the 128 "First Come First Served" policy defined in RFC2434. Capability Code 129 values 128 through 255 are vendor-specific, and values in this range 130 are not to be assigned by IANA. 132 7. Security Considerations 134 This extension to BGP does not change the underlying security issues 135 inherent in the existing BGP [Heffernan]. 137 8. Acknowledgements 139 The authors would like to thank members of the IDR Working Group for 140 their review and comments. 142 9. References 144 [BGP-4] Rekhter, Y., and T. Li, "A Border Gateway Protocol 4 (BGP- 145 4)", RFC 1771, March 1995. 147 [Heffernan] Heffernan, A., "Protection of BGP Sessions via the TCP 148 MD5 Signature Option", RFC2385, August 1998. 150 10. Author Information 152 Ravi Chandra 153 Siara Systems Incorporated 154 1195 Borregas Avenue 155 Sunnyvale, CA 94089 156 e-mail: rchandra@siara.com 158 John G. Scudder 159 Cisco Systems, Inc. 160 170 West Tasman Drive 161 San Jose, CA 95134 162 e-mail: jgs@cisco.com