| < draft-ietf-idr-bgp-extended-messages-20.txt | draft-ietf-idr-bgp-extended-messages-21.txt > | |||
|---|---|---|---|---|
| Network Working Group R. Bush | Network Working Group R. Bush | |||
| Internet-Draft Internet Initiative Japan | Internet-Draft Internet Initiative Japan | |||
| Updates: 4271 (if approved) K. Patel | Updates: 4271 (if approved) K. Patel | |||
| Intended status: Standards Track Arrcus, Inc. | Intended status: Standards Track Arrcus, Inc. | |||
| Expires: August 20, 2017 D. Ward | Expires: September 6, 2017 D. Ward | |||
| Cisco Systems | Cisco Systems | |||
| February 16, 2017 | March 5, 2017 | |||
| Extended Message support for BGP | Extended Message support for BGP | |||
| draft-ietf-idr-bgp-extended-messages-20 | draft-ietf-idr-bgp-extended-messages-21 | |||
| Abstract | Abstract | |||
| The BGP specification mandates a maximum BGP message size of 4096 | The BGP specification mandates a maximum BGP message size of 4096 | |||
| octets. As BGP is extended to support newer AFI/SAFIs, there is a | octets. As BGP is extended to support newer AFI/SAFIs, there is a | |||
| need to extend the maximum message size beyond 4096 octets. This | need to extend the maximum message size beyond 4096 octets. This | |||
| document updates the BGP specification RFC 4271 by providing an | document updates the BGP specification RFC4271 by providing an | |||
| extension to BGP to extend its current message size from 4096 octets | extension to BGP to extend its current maximum message size from 4096 | |||
| to 65535 octets. | octets to 65535 octets. | |||
| Requirements Language | Requirements Language | |||
| The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
| "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to | |||
| be interpreted as described in RFC 2119 [RFC2119] only when they | be interpreted as described in [RFC2119] only when they appear in all | |||
| appear in all upper case. They may also appear in lower or mixed | upper case. They may also appear in lower or mixed case as English | |||
| case as English words, without normative meaning. | words, without normative meaning. | |||
| Status of This Memo | Status of This Memo | |||
| This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
| provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on August 20, 2017. | This Internet-Draft will expire on September 6, 2017. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2017 IETF Trust and the persons identified as the | Copyright (c) 2017 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
| (http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
| publication of this document. Please review these documents | publication of this document. Please review these documents | |||
| skipping to change at page 2, line 27 ¶ | skipping to change at page 2, line 27 ¶ | |||
| the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
| described in the Simplified BSD License. | described in the Simplified BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. BGP Extended Message . . . . . . . . . . . . . . . . . . . . 2 | 2. BGP Extended Message . . . . . . . . . . . . . . . . . . . . 2 | |||
| 3. Extended message Capability for BGP . . . . . . . . . . . . . 3 | 3. Extended message Capability for BGP . . . . . . . . . . . . . 3 | |||
| 4. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 4. Operation . . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 5. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 3 | 5. Error Handling . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 4 | 6. Changes to RFC4271 . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | 8. Security Considerations . . . . . . . . . . . . . . . . . . . 4 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 4 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 4 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 5 | |||
| 10.2. Informative References . . . . . . . . . . . . . . . . . 5 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 1. Introduction | 1. Introduction | |||
| The BGP specification RFC4271 [RFC4271] mandates a maximum BGP | The BGP specification [RFC4271] mandates a maximum BGP message size | |||
| message size of 4096 octets. As BGP is extended to support newer | of 4096 octets. As BGP is extended to support newer AFI/SAFIs and | |||
| AFI/SAFIs and newer capabilities (e.g., | newer capabilities (e.g., [I-D.ietf-sidr-bgpsec-protocol]), there is | |||
| [I-D.ietf-sidr-bgpsec-overview]), there is a need to extend the | a need to extend the maximum message size beyond 4096 octets. This | |||
| maximum message size beyond 4096 octets. This draft provides an | draft provides an extension to BGP to extend its current message size | |||
| extension to BGP to extend its current message size limit from 4096 | limit from 4096 octets to 65535 octets. | |||
| octets to 65535 octets. | ||||
| 2. BGP Extended Message | 2. BGP Extended Message | |||
| A BGP message over 4096 octets in length is a BGP Extended Message. | A BGP message over 4096 octets in length is a BGP Extended Message. | |||
| BGP Extended Messages have maximum message size of 65535 octets. The | BGP Extended Messages have maximum message size of 65535 octets. The | |||
| smallest message that may be sent consists of a BGP header without a | smallest message that may be sent consists of a BGP header without a | |||
| data portion (19 octets). | data portion (19 octets). | |||
| Multi-octet fields MUST be in network byte order. | Multi-octet fields MUST be in network byte order. | |||
| skipping to change at page 3, line 19 ¶ | skipping to change at page 3, line 19 ¶ | |||
| To advertise the BGP Extended Message Capability to a peer, a BGP | To advertise the BGP Extended Message Capability to a peer, a BGP | |||
| speaker uses BGP Capabilities Advertisement [RFC5492]. By | speaker uses BGP Capabilities Advertisement [RFC5492]. By | |||
| advertising the BGP Extended Message Capability to a peer, a BGP | advertising the BGP Extended Message Capability to a peer, a BGP | |||
| speaker conveys that it is able to send, receive, and properly handle | speaker conveys that it is able to send, receive, and properly handle | |||
| BGP Extended Messages. | BGP Extended Messages. | |||
| A peer which does not advertise this capability MUST NOT send BGP | A peer which does not advertise this capability MUST NOT send BGP | |||
| Extended Messages, and BGP Extended Messages MUST NOT be sent to it. | Extended Messages, and BGP Extended Messages MUST NOT be sent to it. | |||
| The BGP Extended Message Capability is a new BGP Capability [RFC5492] | The BGP Extended Message Capability is a new BGP Capability [RFC5492] | |||
| defined with Capability code TBD and Capability length 0. | defined with Capability code 6 and Capability length 0. | |||
| 4. Operation | 4. Operation | |||
| A BGP speaker that is willing to send and receive BGP Extended | A BGP speaker that is willing to send and receive BGP Extended | |||
| Messages from its peer SHOULD advertise the BGP Extended Message | Messages with a peer SHOULD advertise the BGP Extended Message | |||
| Capability to its peer using BGP Capabilities Advertisement | Capability to the peer using BGP Capabilities Advertisement | |||
| [RFC5492]. A BGP speaker MAY send extended messages to its peer only | [RFC5492]. A BGP speaker MAY send Extended Messages to its peer only | |||
| if it has received the Extended Message Capability from its peer. | if it has received the Extended Message Capability from that peer. | |||
| An implementation that supports the BGP Extended Messages MUST be | Currently, the Extended Message Capability only applies to UPDATE | |||
| prepared to receive an UPDATE message that is larger than 4096 bytes. | messages. | |||
| Applications generating messages which might be encapsulated within | An implementation that advertises support for BGP Extended Messages | |||
| BGP messages MUST limit the size of their payload to take into | MUST be capable of receiving an UPDATE message with a length up to | |||
| account the maximum message size. | and including 65535 octets. | |||
| Applications generating information which might be encapsulated | ||||
| within BGP messages MUST limit the size of their payload to take the | ||||
| maximum message size into account. | ||||
| A BGP announcement will, in the normal case, propagate throughout the | ||||
| BGP speaking Internet; and there will undoubtedly be BGP speakers | ||||
| which do not have the Extended Message capability. Therefore putting | ||||
| an attribute which can not be decomposed to 4096 octets or less in an | ||||
| Extended Message is a sure path to routing failure. | ||||
| 5. Error Handling | 5. Error Handling | |||
| A BGP speaker that has the ability to use extended messages but has | A BGP speaker that has the ability to use Extended Messages but has | |||
| not advertised the BGP Extended Messages capability, presumably due | not advertised the BGP Extended Messages capability, presumably due | |||
| to configuration, SHOULD NOT accept an extended message. A speaker | to configuration, SHOULD NOT accept an Extended Message. A speaker | |||
| MAY implement a more liberal policy and accept extended messages even | MAY implement a more liberal policy and accept Extended Messages, | |||
| from a peer that has not advertised the capability. | even from a peer to which it has not advertised the capability, in | |||
| the interest of preserving the BGP session if at all possible. | ||||
| However, a BGP speaker that does not advertise the BGP Extended | A BGP speaker that does not advertise the BGP Extended Messages | |||
| Messages capability might also genuinely not support extended | capability might also genuinely not support Extended Messages. Such | |||
| messages. Such a speaker would be expected to follow the error | a speaker would be expected to follow the error handling procedures | |||
| handling procedures of [RFC4271], Section 6.1, and reset the session | of [RFC4271] if it receives an Extended Message. Similarly, any | |||
| with a Bad Message Length NOTIFICATION if it receives an extended | speaker that treats an improper Extended Message as a fatal error, | |||
| message. Similarly, any speaker that treats an improper extended | MUST treat it similarly. | |||
| message as a fatal error, MUST do likewise. | ||||
| The inconsistency between the local and remote BGP speakers MUST be | The inconsistency between the local and remote BGP speakers MUST be | |||
| reported via syslog and/or SNMP. | flagged to the network operator through standard operational | |||
| interfaces. The information should include the NLRI and as much | ||||
| relevant information as reasonably possible. | ||||
| 6. Acknowledgements | 6. Changes to RFC4271 | |||
| The authors thank Enke Chen, Susan Hares, John Scudder, John Levine, | [RFC4271] states "The value of the Length field MUST always be at | |||
| and Job Snijders for their input. | least 19 and no greater than 4096." This document changes the latter | |||
| number to 65535 for UPDATE messages. | ||||
| [RFC4271] Sec 6.1, specifies raising an error if the length of a | ||||
| message is over 4096 octets. For UPDATE messages, if the receiver | ||||
| has advertised the capability to receive Extended Messages, this | ||||
| document raises that limit to 65535. | ||||
| 7. IANA Considerations | 7. IANA Considerations | |||
| The IANA is requested to register a new BGP Capability Code to be | The IANA has made an early allocation for this new BGP BGP Extended | |||
| named BGP Extended Message Capability and referring to this document. | Message Capability referring to this document. | |||
| Registry: BGP Capability Code | Registry: BGP Capability Code | |||
| Value Description Document | Value Description Document | |||
| ----- ----------------------------------- ------------- | ----- ----------------------------------- ------------- | |||
| TBD BGP-Extended Message [this draft] | 6 BGP-Extended Message [this draft] | |||
| 8. Security Considerations | 8. Security Considerations | |||
| This extension to BGP does not change BGP's underlying security | This extension to BGP does not change BGP's underlying security | |||
| issues. It does enable large BGPsec BGPSEC_PATHs, see | issues; see [RFC4272]. | |||
| [I-D.ietf-sidr-bgpsec-protocol] | ||||
| 9. References | Section 5 allowed a receiver to accept an Extended Message even | |||
| though they had not advertised the capability. This slippery slope | ||||
| will surely lead to sloppy implementations sending Extended Messages | ||||
| when the receiver is not prepared to deal with them, e.g. to peer | ||||
| groups. At best, this will result in errors; at worst, buffer | ||||
| overflows. | ||||
| 9.1. Normative References | 9. Acknowledgments | |||
| The authors thank Alvaro Retana, Enke Chen, Susan Hares, John | ||||
| Scudder, John Levine, and Job Snijders for their input; and Oliver | ||||
| Borchert and Kyehwan Lee for their implementations and testing. | ||||
| 10. References | ||||
| 10.1. Normative References | ||||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
| [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway | [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway | |||
| Protocol 4 (BGP-4)", RFC 4271, January 2006. | Protocol 4 (BGP-4)", RFC 4271, January 2006. | |||
| [RFC4272] Murphy, S., "BGP Security Vulnerabilities Analysis", | ||||
| RFC 4272, January 2006. | ||||
| [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement | [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement | |||
| with BGP-4", RFC 5492, February 2009. | with BGP-4", RFC 5492, February 2009. | |||
| 9.2. Informative References | 10.2. Informative References | |||
| [I-D.ietf-sidr-bgpsec-overview] | ||||
| Lepinski, M. and S. Turner, "An Overview of BGPSEC", | ||||
| draft-ietf-sidr-bgpsec-overview-02 (work in progress), May | ||||
| 2012. | ||||
| [I-D.ietf-sidr-bgpsec-protocol] | [I-D.ietf-sidr-bgpsec-protocol] | |||
| Lepinski, M., "BGPSEC Protocol Specification", draft-ietf- | Lepinski, M., "BGPSEC Protocol Specification", draft-ietf- | |||
| sidr-bgpsec-protocol-07 (work in progress), February 2013. | sidr-bgpsec-protocol-07 (work in progress), February 2013. | |||
| Authors' Addresses | Authors' Addresses | |||
| Randy Bush | Randy Bush | |||
| Internet Initiative Japan | Internet Initiative Japan | |||
| 5147 Crystal Springs | 5147 Crystal Springs | |||
| End of changes. 26 change blocks. | ||||
| 59 lines changed or deleted | 87 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||