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.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/