idnits 2.17.1 draft-evens-grow-bmp-adj-rib-out-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC7854, but the abstract doesn't seem to directly say this. It does mention RFC7854 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (March 30, 2017) is 2585 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Looks like a reference, but probably isn't: '1' on line 263 Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Global Routing Operations T. Evens 3 Internet-Draft S. Bayraktar 4 Updates: 7854 (if approved) Cisco Systems 5 Intended Status: Standards Track P. Lucente 6 Expires: October 1, 2017 NTT Communications 7 P. Mi 8 Tencent 9 S. Zhuang 10 Huawei 11 March 30, 2017 13 Support for Adj-RIB-Out in BGP Monitoring Protocol (BMP) 14 draft-evens-grow-bmp-adj-rib-out-01 16 Abstract 18 The BGP Monitoring Protocol (BMP) defines access to only the Adj-RIB- 19 In Routing Information Bases (RIBs). This document updates the BGP 20 Monitoring Protocol (BMP) RFC 7854 by adding access to the Adj-RIB- 21 Out RIBs. It adds a new flag to the peer header to distinguish Adj- 22 RIB-In and Adj-RIB-Out. 24 Status of this Memo 26 This Internet-Draft is submitted in full conformance with the 27 provisions of BCP 78 and BCP 79. 29 Internet-Drafts are working documents of the Internet Engineering 30 Task Force (IETF), its areas, and its working groups. Note that 31 other groups may also distribute working documents as Internet- 32 Drafts. 34 Internet-Drafts are draft documents valid for a maximum of six months 35 and may be updated, replaced, or obsoleted by other documents at any 36 time. It is inappropriate to use Internet-Drafts as reference 37 material or to cite them other than as "work in progress." 39 The list of current Internet-Drafts can be accessed at 40 http://www.ietf.org/ietf/1id-abstracts.txt 42 The list of Internet-Draft Shadow Directories can be accessed at 43 http://www.ietf.org/shadow.html 45 This Internet-Draft will expire on October 1, 2017. 47 Copyright and License Notice 49 Copyright (c) 2017 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (http://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with respect 57 to this document. Code Components extracted from this document must 58 include Simplified BSD License text as described in Section 4.e of 59 the Trust Legal Provisions and are provided without warranty as 60 described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 65 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 66 2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 4 67 3. Per-Peer Header . . . . . . . . . . . . . . . . . . . . . . . 4 68 4. Adj-RIB-Out . . . . . . . . . . . . . . . . . . . . . . . . . 4 69 4.1. Post-Policy . . . . . . . . . . . . . . . . . . . . . . . 4 70 4.2. Pre-Policy . . . . . . . . . . . . . . . . . . . . . . . . 4 71 5. BMP Messages . . . . . . . . . . . . . . . . . . . . . . . . . 5 72 5.1. Route Monitoring and Route Mirroring . . . . . . . . . . . 5 73 5.2. Statistics Report . . . . . . . . . . . . . . . . . . . . 5 74 5.3. Peer Down and Up Notifications . . . . . . . . . . . . . . 5 75 6. Security Considerations . . . . . . . . . . . . . . . . . . . 6 76 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 77 7.1. BMP Peer Flags . . . . . . . . . . . . . . . . . . . . . . 6 78 7.2. BMP Statistics Types . . . . . . . . . . . . . . . . . . . 6 79 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 80 8.1. URIs . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 81 8.2. Normative References . . . . . . . . . . . . . . . . . . . 6 82 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . 8 83 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 84 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 86 1. Introduction 88 BGP Monitoring Protocol (BMP) defines monitoring of the received 89 (e.g. Adj-RIB-In) Routing Information Bases (RIBs) per peer. The 90 Adj-RIB-In pre-policy conveys to a BMP receiver all RIB data before 91 any policy has been applied. The Adj-RIB-In post-policy conveys to a 92 BMP receiver all RIB data after policy filters and/or modifications 93 have been applied. An example of pre-policy verses post-policy is 94 when an inbound policy applies attribute modification or filters. 95 Pre-policy would contain information prior to the inbound policy 96 changes or filters of data. Post policy would convey the changed data 97 or would not contain the filtered data. 99 Monitoring the received updates that the router received before any 100 policy has been applied is the primary level of monitoring for most 101 use-cases. Inbound policy validation and auditing is the primary 102 use-case for enabling post-policy monitoring. 104 In order for a BMP receiver to receive any BGP data, the BMP sender 105 (e.g. router) needs to have an established BGP peering session and 106 actively be receiving updates for an Adj-RIB-In. 108 Being able to only monitor the Adj-RIB-In puts a restriction on what 109 data is available to BMP receivers via BMP senders (e.g. routers). 110 This is an issue when the receiving end of the BGP peer is not 111 enabled for BMP or when it is not accessible for administrative 112 reasons. For example, a service provider advertises prefixes to a 113 customer, but the service provider cannot see what it advertises via 114 BMP. Asking the customer to enable BMP and monitoring of the Adj-RIB- 115 In is not feasible. 117 This document updates BGP Monitoring Protocol (BMP) RFC 7854 118 [RFC7854] peer header by adding a new flag to distinguish Adj-RIB-In 119 verses Adj-RIB-Out. 121 Adding Adj-RIB-Out enables the ability for a BMP sender to send to a 122 BMP receiver what it advertises to BGP peers, which can be used for 123 outbound policy validation and to monitor RIBs that were advertised. 125 1.1. Terminology 127 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 128 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 129 document are to be interpreted as described in RFC 2119 [RFC2119]. 131 2. Definitions 133 o Adj-RIB-Out: As defined in [RFC4271], "The Adj-RIBs-Out contains 134 the routes for advertisement to specific peers by means of the 135 local speaker's UPDATE messages." 137 o Pre-Policy Adj-RIB-Out: The result before applying the outbound 138 policy to an Adj-RIB-Out. This normally would match what is in the 139 local RIB. 141 o Post-Policy Adj-RIB-Out: The result of applying outbound policy to 142 an Adj-RIB-Out. This MUST be what is actually sent to the peer. 144 3. Per-Peer Header 146 The per-peer header has the same structure and flags as defined in 147 section 4.2 [RFC7854] with the following O flag addition: 149 0 1 2 3 4 5 6 7 150 +-+-+-+-+-+-+-+-+ 151 |V|L|A|O| Resv | 152 +-+-+-+-+-+-+-+-+ 154 o The O flag indicates Adj-RIB-In if set to 0 and Adj-RIB-Out if 155 set to 1. 157 The remaining bits are reserved for future use. They MUST be 158 transmitted as 0 and their values MUST be ignored on receipt. 160 4. Adj-RIB-Out 162 4.1. Post-Policy 164 The primary use-case in monitoring Adj-RIB-Out is to monitor the 165 updates transmitted to the BGP peer after outbound policy has been 166 applied. These updates reflect the result after modifications and 167 filters have been applied (e.g. Adj-RIB-Out Post-Policy). The L flag 168 MUST be set to 1 in this case to indicate post-policy. 170 4.2. Pre-Policy 172 As with Adj-RIB-In policy validation, there are use-cases that pre- 173 policy Adj-RIB-Out is used to validate and audit outbound policies. 174 For example, a comparison between pre-policy and post-policy can be 175 used to validate the outbound policy. The L flag MUST be set to 0 in 176 this case to indicate pre-policy. 178 5. BMP Messages 180 Many BMP messages have a per-peer header but some are not applicable 181 to Adj-RIB-In or Adj-RIB-Out monitoring. Unless otherwise defined, 182 the O flag should be set to 0 in the per-peer header in BMP 183 messages. 185 5.1. Route Monitoring and Route Mirroring 187 The O flag MUST be set accordingly to indicate if the route monitor 188 or route mirroring message conveys Adj-RIB-In or Adj-RIB-Out. 190 5.2. Statistics Report 192 Statistics report message has Stat Type field to indicate the 193 statistic carried in the Stat Data field. Statistics report messages 194 are not specific to Adj-RIB-In or Adj-RIB-Out and MUST have the O 195 flag set to zero. The O flag SHOULD be ignored by the BMP receiver. 196 The following new statistic types are added: 198 o Stat Type = TBD: (64-bit Gauge) Number of routes in Adj-RIBs-Out 199 Pre-Policy. 201 o Stat Type = TBD: (64-bit Gauge) Number of routes in Adj-RIBs-Out 202 Post-Policy. 204 o Stat Type = TBD: Number of routes in per-AFI/SAFI Adj-RIB-Out Pre- 205 Policy. The value is structured as: 2-byte Address Family 206 Identifier (AFI), 1-byte Subsequent Address Family Identifier 207 (SAFI), followed by a 64-bit Gauge. 209 o Stat Type = TBD: Number of routes in per-AFI/SAFI Adj-RIB-Out 210 Post-Policy. The value is structured as: 2-byte Address Family 211 Identifier (AFI), 1-byte Subsequent Address Family Identifier 212 (SAFI), followed by a 64-bit Gauge. 214 5.3. Peer Down and Up Notifications 216 PEER UP and DOWN notifications convey BGP peering session state to 217 BMP receivers. The state is independent of whether or not route 218 monitoring or route mirroring messages will be sent for Adj-RIB-In, 219 Adj-RIB-Out, or both. BMP receiver implementations SHOULD ignore the 220 O flag in PEER UP and DOWN notifications. 222 6. Security Considerations 224 It is not believed that this document adds any additional security 225 considerations. 227 7. IANA Considerations 229 This document requests that IANA assign the following BMP new 230 parameters to the BMP parameters name space [1]. 232 7.1. BMP Peer Flags 234 This document defines a new flag (Section 3): 236 o Flag 3 as O flag 238 7.2. BMP Statistics Types 240 This document defines four new statistic types for statistics 241 reporting (Section 4.2): 243 o Stat Type = TBD: (64-bit Gauge) Number of routes in Adj-RIBs-Out 244 Pre-Policy. 246 o Stat Type = TBD: (64-bit Gauge) Number of routes in Adj-RIBs-Out 247 Post-Policy. 249 o Stat Type = TBD: Number of routes in per-AFI/SAFI Adj-RIB-Out Pre- 250 Policy. The value is structured as: 2-byte Address Family 251 Identifier (AFI), 1-byte Subsequent Address Family Identifier 252 (SAFI), followed by a 64-bit Gauge. 254 o Stat Type = TBD: Number of routes in per-AFI/SAFI Adj-RIB-Out 255 Post-Policy. The value is structured as: 2-byte Address Family 256 Identifier (AFI), 1-byte Subsequent Address Family Identifier 257 (SAFI), followed by a 64-bit Gauge. 259 8. References 261 8.1. URIs 263 [1] https://www.iana.org/assignments/bmp-parameters/bmp- 264 parameters.xhtml 266 8.2. Normative References 268 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 269 Requirement Levels", BCP 14, RFC 2119, DOI 270 10.17487/RFC2119, March 1997, . 273 [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A 274 Border Gateway Protocol 4 (BGP-4)", RFC 4271, DOI 275 10.17487/RFC4271, January 2006, . 278 [RFC7854] Scudder, J., Ed., Fernando, R., and S. Stuart, "BGP 279 Monitoring Protocol (BMP)", RFC 7854, DOI 280 10.17487/RFC7854, June 2016, . 283 Acknowledgments 285 The authors would like to thank John Scudder for his valuable input. 287 Contributors 289 Manish Bhardwaj 290 Cisco Systems 291 3700 Cisco Way 292 San Jose, CA 95134 293 USA 295 Email: manbhard@cisco.com 297 Xianyuzheng 298 Tencent 299 Tencent Building, Kejizhongyi Avenue, 300 Hi-techPark, Nanshan District,Shenzhen 518057, P.R.China 302 Weiguo 303 Tencent 304 Tencent Building, Kejizhongyi Avenue, 305 Hi-techPark, Nanshan District,Shenzhen 518057, P.R.China 307 Shugang cheng 308 H3C 310 Authors' Addresses 312 Tim Evens 313 Cisco Systems 314 2901 Third Avenue, Suite 600 315 Seattle, WA 98121 316 USA 318 Email: tievens@cisco.com 320 Serpil Bayraktar 321 Cisco Systems 322 3700 Cisco Way 323 San Jose, CA 95134 324 USA 326 Email: serpil@cisco.com 328 Paolo Lucente 329 NTT Communications 330 Siriusdreef 70-72 331 Hoofddorp 2132 WT 332 NL 334 Email: paolo@ntt.net 336 Penghui Mi 337 Tencent 338 Tengyun Building,Tower A ,No. 397 Tianlin Road 339 Shanghai 200233 340 China 342 Email: kevinmi@tencent.com 344 Shunwan Zhuang 345 Huawei 346 Huawei Bld., No.156 Beiqing Rd. 347 Beijing 100095 348 China 349 Email: zhuangshunwan@huawei.com