| < draft-keyupate-idr-i2rs-bgp-usecases-00.txt | draft-keyupate-idr-i2rs-bgp-usecases-01.txt > | |||
|---|---|---|---|---|
| IDR K. Patel | IDR K. Patel | |||
| Internet-Draft Cisco Systems | Internet-Draft Cisco Systems | |||
| Intended status: Informational R. White | Intended status: Informational R. White | |||
| Expires: December 2, 2015 Ericsson | Expires: February 28, 2016 Ericsson | |||
| S. Hares | S. Hares | |||
| Huawei | Huawei | |||
| May 31, 2015 | August 27, 2015 | |||
| Use Cases for an Interface to BGP Protocol | Use Cases for an Interface to BGP Protocol | |||
| draft-keyupate-idr-i2rs-bgp-usecases-00.txt | draft-keyupate-idr-i2rs-bgp-usecases-01.txt | |||
| Abstract | Abstract | |||
| A network routing protocol like BGP is typically configured and | A network routing protocol like BGP is typically configured and | |||
| analyzed through some form of Command Line Interface (CLI) or | analyzed through some form of Command Line Interface (CLI) or | |||
| NETCONF. These interactions to control BGP and diagnose its | NETCONF. These interactions to control BGP and diagnose its | |||
| operation encompass: configuration of protocol parameters, display of | operation encompass: configuration of protocol parameters, display of | |||
| protocol data, setting of certain protocol state and debugging of the | protocol data, setting of certain protocol state and debugging of the | |||
| protocol. | protocol. | |||
| skipping to change at page 1, line 46 ¶ | skipping to change at page 1, line 46 ¶ | |||
| 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 December 2, 2015. | This Internet-Draft will expire on February 28, 2016. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2015 IETF Trust and the persons identified as the | Copyright (c) 2015 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 35 ¶ | skipping to change at page 2, line 35 ¶ | |||
| Without obtaining an adequate license from the person(s) controlling | Without obtaining an adequate license from the person(s) controlling | |||
| the copyright in such materials, this document may not be modified | the copyright in such materials, this document may not be modified | |||
| outside the IETF Standards Process, and derivative works of it may | outside the IETF Standards Process, and derivative works of it may | |||
| not be created outside the IETF Standards Process, except to format | not be created outside the IETF Standards Process, except to format | |||
| it for publication as an RFC or to translate it into languages other | it for publication as an RFC or to translate it into languages other | |||
| than English. | than English. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 3 | 1.1. Requirements Language . . . . . . . . . . . . . . . . . . 4 | |||
| 1.2. Requirements for I2S . . . . . . . . . . . . . . . . . . 4 | 1.2. Requirements for I2S . . . . . . . . . . . . . . . . . . 4 | |||
| 2. Summary of Requirements for I2RS Module for BGP . . . . . . . 4 | 2. Summary of Requirements for I2RS Module for BGP . . . . . . . 4 | |||
| 3. BGP Protocol Operation . . . . . . . . . . . . . . . . . . . 6 | 3. BGP Protocol Operation . . . . . . . . . . . . . . . . . . . 6 | |||
| 3.1. BGP Error Handling for Internal BGP Sessions . . . . . . 6 | 3.1. BGP Error Handling for Internal BGP Sessions . . . . . . 7 | |||
| 3.2. Summary of I2RS Capabilities and Interactions . . . . . . 7 | 3.2. Summary of I2RS Capabilities and Interactions . . . . . . 7 | |||
| 4. BGP Route Manipulation . . . . . . . . . . . . . . . . . . . 7 | 4. BGP Route Manipulation . . . . . . . . . . . . . . . . . . . 7 | |||
| 4.1. Customized Best Path Selection Criteria . . . . . . . . . 7 | 4.1. Customized Best Path Selection Criteria . . . . . . . . . 8 | |||
| 4.2. Flowspec Routes . . . . . . . . . . . . . . . . . . . . . 8 | 4.2. Flowspec Routes . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 4.3. Route Filter Routes for Legacy Routers . . . . . . . . . 8 | 4.3. Route Filter Routes for Legacy Routers . . . . . . . . . 8 | |||
| 4.4. Optimized Exit Control . . . . . . . . . . . . . . . . . 9 | 4.4. Optimized Exit Control . . . . . . . . . . . . . . . . . 9 | |||
| 4.5. Summary of I2RS Capabilities and Interactions . . . . . . 9 | 4.5. Summary of I2RS Capabilities and Interactions . . . . . . 9 | |||
| 5. BGP Events . . . . . . . . . . . . . . . . . . . . . . . . . 10 | 5. BGP Events . . . . . . . . . . . . . . . . . . . . . . . . . 10 | |||
| 5.1. Notification of Routing Events . . . . . . . . . . . . . 10 | 5.1. Notification of Routing Events . . . . . . . . . . . . . 10 | |||
| 5.2. Tracing Dropped BGP Routes . . . . . . . . . . . . . . . 11 | 5.2. Tracing Dropped BGP Routes . . . . . . . . . . . . . . . 11 | |||
| 5.3. BGP Protocol Statistics . . . . . . . . . . . . . . . . . 12 | 5.3. BGP Protocol Statistics . . . . . . . . . . . . . . . . . 12 | |||
| 5.4. Summary of I2RS Capabilities and Interactions for Event | 5.4. Summary of I2RS Capabilities and Interactions for Event | |||
| statistics . . . . . . . . . . . . . . . . . . . . . . . 13 | statistics . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
| 6. Central membership computation for MPLS based VPNs . . . . . 14 | 6. Central membership computation for MPLS based VPNs . . . . . 14 | |||
| 7. Marking Overlapping Traffic Engineering Routes for Removal . 15 | 7. Marking Overlapping Traffic Engineering Routes for Removal . 15 | |||
| 8. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 | 9. Security Considerations . . . . . . . . . . . . . . . . . . . 16 | |||
| 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 | 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 10.1. Normative References . . . . . . . . . . . . . . . . . . 16 | 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
| 10.2. Informative References . . . . . . . . . . . . . . . . . 16 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 16 | |||
| Appendix A. BGP Configuration . . . . . . . . . . . . . . . . . 17 | 11.2. Informative References . . . . . . . . . . . . . . . . . 17 | |||
| A.1. BGP Protocol Configuration . . . . . . . . . . . . . . . 18 | Appendix A. BGP Configuration . . . . . . . . . . . . . . . . . 18 | |||
| A.2. BGP Policy Configuration . . . . . . . . . . . . . . . . 19 | A.1. BGP Protocol Configuration . . . . . . . . . . . . . . . 19 | |||
| A.2. BGP Policy Configuration . . . . . . . . . . . . . . . . 20 | ||||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
| 1. Introduction | 1. Introduction | |||
| Typically, a network routing protocol like BGP is configured and | Typically, a network routing protocol like BGP is configured and | |||
| results of its operation are analyzed through some form of Command | results of its operation are analyzed through some form of Command | |||
| Line Interface (CLI) or NETCONF. These interactions to control BGP | Line Interface (CLI) or NETCONF. These interactions to control BGP | |||
| and diagnose its operation encompass: configuration of protocol | and diagnose its operation encompass: configuration of protocol | |||
| parameters, display of protocol data, setting of certain protocol | parameters, display of protocol data, setting of certain protocol | |||
| state and debugging of the protocol. | state and debugging of the protocol. | |||
| skipping to change at page 15, line 39 ¶ | skipping to change at page 16, line 5 ¶ | |||
| o BGP-REQ17: The I2RS client via the I2RS agent SHOULD have the the | o BGP-REQ17: The I2RS client via the I2RS agent SHOULD have the the | |||
| ability to read the loc-RIB-in BGP table to discover overlapping | ability to read the loc-RIB-in BGP table to discover overlapping | |||
| routes, and determine which may be safely marked for removal. | routes, and determine which may be safely marked for removal. | |||
| o BGP-REQ18: The I2RS client via the I2RS Agent SHOULD have the | o BGP-REQ18: The I2RS client via the I2RS Agent SHOULD have the | |||
| ability to modify filtering rules and initiate a re-computation of | ability to modify filtering rules and initiate a re-computation of | |||
| the local BGP table through those policies to cause specific | the local BGP table through those policies to cause specific | |||
| routes to be marked for removal at the outbound eBGP edge. | routes to be marked for removal at the outbound eBGP edge. | |||
| 8. Security Considerations | 8. IANA Considerations | |||
| This document makes no request of IANA. | ||||
| 9. Security Considerations | ||||
| The BGP use cases described in this document assumes use of I2RS | The BGP use cases described in this document assumes use of I2RS | |||
| programmatic interfaces described in the I2RS framework mentioned in | programmatic interfaces described in the I2RS framework mentioned in | |||
| [I-D.ietf-i2rs-architecture]. This document does not change the | [I-D.ietf-i2rs-architecture]. This document does not change the | |||
| underlying security issues inherent in the existing in | underlying security issues inherent in the existing in | |||
| [I-D.ietf-i2rs-architecture]. | [I-D.ietf-i2rs-architecture]. | |||
| 9. Acknowledgements | 10. Acknowledgements | |||
| The authors would like to thank Ed Crabbe, Joel Halpern, Wes George, | The authors would like to thank Ed Crabbe, Joel Halpern, Wes George, | |||
| Carlos Pignataro, Jon Mitchell, Rex Fernando, Hannes Gredler, Shane | Carlos Pignataro, Jon Mitchell, Rex Fernando, Hannes Gredler, Shane | |||
| Amante, Bill Atwood for their comments and suggestions. | Amante, Bill Atwood for their comments and suggestions. | |||
| 10. References | 11. References | |||
| 10.1. Normative References | 11.1. Normative References | |||
| [I-D.ietf-i2rs-architecture] | [I-D.ietf-i2rs-architecture] | |||
| Atlas, A., Halpern, J., Hares, S., Ward, D., and T. | Atlas, A., Halpern, J., Hares, S., Ward, D., and T. | |||
| Nadeau, "An Architecture for the Interface to the Routing | Nadeau, "An Architecture for the Interface to the Routing | |||
| System", draft-ietf-i2rs-architecture-09 (work in | System", draft-ietf-i2rs-architecture-09 (work in | |||
| progress), March 2015. | progress), March 2015. | |||
| [I-D.ietf-i2rs-usecase-reqs-summary] | [I-D.ietf-i2rs-usecase-reqs-summary] | |||
| Hares, S. and M. Chen, "Summary of I2RS Use Case | Hares, S. and M. Chen, "Summary of I2RS Use Case | |||
| Requirements", draft-ietf-i2rs-usecase-reqs-summary-01 | Requirements", draft-ietf-i2rs-usecase-reqs-summary-01 | |||
| (work in progress), May 2015. | (work in progress), May 2015. | |||
| [RFC1997] Chandrasekeran, R., Traina, P., and T. Li, "BGP | [RFC1997] Chandra, R., Traina, P., and T. Li, "BGP Communities | |||
| Communities Attribute", RFC 1997, August 1996. | Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996, | |||
| <http://www.rfc-editor.org/info/rfc1997>. | ||||
| [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, | |||
| DOI 10.17487/RFC2119, March 1997, | ||||
| <http://www.rfc-editor.org/info/rfc2119>. | ||||
| [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, | [RFC2629] Rose, M., "Writing I-Ds and RFCs using XML", RFC 2629, | |||
| June 1999. | DOI 10.17487/RFC2629, June 1999, | |||
| <http://www.rfc-editor.org/info/rfc2629>. | ||||
| [RFC3392] Chandra, R. and J. Scudder, "Capabilities Advertisement | ||||
| with BGP-4", RFC 3392, November 2002. | ||||
| [RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC | [RFC3552] Rescorla, E. and B. Korver, "Guidelines for Writing RFC | |||
| Text on Security Considerations", BCP 72, RFC 3552, July | Text on Security Considerations", BCP 72, RFC 3552, | |||
| 2003. | DOI 10.17487/RFC3552, July 2003, | |||
| <http://www.rfc-editor.org/info/rfc3552>. | ||||
| [RFC4271] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway | [RFC4271] Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A | |||
| Protocol 4 (BGP-4)", RFC 4271, January 2006. | Border Gateway Protocol 4 (BGP-4)", RFC 4271, | |||
| DOI 10.17487/RFC4271, January 2006, | ||||
| <http://www.rfc-editor.org/info/rfc4271>. | ||||
| [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended | [RFC4360] Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended | |||
| Communities Attribute", RFC 4360, February 2006. | Communities Attribute", RFC 4360, DOI 10.17487/RFC4360, | |||
| February 2006, <http://www.rfc-editor.org/info/rfc4360>. | ||||
| [RFC4760] Bates, T., Chandra, R., Katz, D., and Y. Rekhter, | [RFC5492] Scudder, J. and R. Chandra, "Capabilities Advertisement | |||
| "Multiprotocol Extensions for BGP-4", RFC 4760, January | with BGP-4", RFC 5492, DOI 10.17487/RFC5492, February | |||
| 2007. | 2009, <http://www.rfc-editor.org/info/rfc5492>. | |||
| 10.2. Informative References | 11.2. Informative References | |||
| [I-D.ietf-grow-bgp-gshut] | [I-D.ietf-grow-bgp-gshut] | |||
| Francois, P., Decraene, B., Pelsser, C., Patel, K., and C. | Francois, P., Decraene, B., Pelsser, C., Patel, K., and C. | |||
| Filsfils, "Graceful BGP session shutdown", draft-ietf- | Filsfils, "Graceful BGP session shutdown", draft-ietf- | |||
| grow-bgp-gshut-05 (work in progress), January 2014. | grow-bgp-gshut-06 (work in progress), August 2014. | |||
| [I-D.mcpherson-irr-routing-policy-considerations] | [I-D.mcpherson-irr-routing-policy-considerations] | |||
| McPherson, D., Amante, S., Osterweil, E., and L. Blunk, | McPherson, D., Amante, S., Osterweil, E., and L. Blunk, | |||
| "IRR & Routing Policy Configuration Considerations", | "IRR & Routing Policy Configuration Considerations", | |||
| draft-mcpherson-irr-routing-policy-considerations-01 (work | draft-mcpherson-irr-routing-policy-considerations-01 (work | |||
| in progress), September 2012. | in progress), September 2012. | |||
| [I-D.white-grow-overlapping-routes] | [I-D.white-grow-overlapping-routes] | |||
| White, R., Retana, A., and S. Hares, "Filtering of | White, R., Retana, A., and S. Hares, "Filtering of | |||
| Overlapping Routes", draft-white-grow-overlapping- | Overlapping Routes", draft-white-grow-overlapping- | |||
| routes-01 (work in progress), February 2013. | routes-03 (work in progress), October 2014. | |||
| [RFC2622] Alaettinoglu, C., Villamizar, C., Gerich, E., Kessens, D., | [RFC2622] Alaettinoglu, C., Villamizar, C., Gerich, E., Kessens, D., | |||
| Meyer, D., Bates, T., Karrenberg, D., and M. Terpstra, | Meyer, D., Bates, T., Karrenberg, D., and M. Terpstra, | |||
| "Routing Policy Specification Language (RPSL)", RFC 2622, | "Routing Policy Specification Language (RPSL)", RFC 2622, | |||
| June 1999. | DOI 10.17487/RFC2622, June 1999, | |||
| <http://www.rfc-editor.org/info/rfc2622>. | ||||
| [RFC2858] Bates, T., Rekhter, Y., Chandra, R., and D. Katz, | ||||
| "Multiprotocol Extensions for BGP-4", RFC 2858, June 2000. | ||||
| [RFC5156] Blanchet, M., "Special-Use IPv6 Addresses", RFC 5156, | [RFC4760] Bates, T., Chandra, R., Katz, D., and Y. Rekhter, | |||
| April 2008. | "Multiprotocol Extensions for BGP-4", RFC 4760, | |||
| DOI 10.17487/RFC4760, January 2007, | ||||
| <http://www.rfc-editor.org/info/rfc4760>. | ||||
| [RFC5575] Marques, P., Sheth, N., Raszuk, R., Greene, B., Mauch, J., | [RFC5575] Marques, P., Sheth, N., Raszuk, R., Greene, B., Mauch, J., | |||
| and D. McPherson, "Dissemination of Flow Specification | and D. McPherson, "Dissemination of Flow Specification | |||
| Rules", RFC 5575, August 2009. | Rules", RFC 5575, DOI 10.17487/RFC5575, August 2009, | |||
| <http://www.rfc-editor.org/info/rfc5575>. | ||||
| [RFC5735] Cotton, M. and L. Vegoda, "Special Use IPv4 Addresses", | ||||
| RFC 5735, January 2010. | ||||
| [RFC6198] Decraene, B., Francois, P., Pelsser, C., Ahmad, Z., | [RFC6198] Decraene, B., Francois, P., Pelsser, C., Ahmad, Z., | |||
| Elizondo Armengol, A., and T. Takeda, "Requirements for | Elizondo Armengol, A., and T. Takeda, "Requirements for | |||
| the Graceful Shutdown of BGP Sessions", RFC 6198, April | the Graceful Shutdown of BGP Sessions", RFC 6198, | |||
| 2011. | DOI 10.17487/RFC6198, April 2011, | |||
| <http://www.rfc-editor.org/info/rfc6198>. | ||||
| [RFC6890] Cotton, M., Vegoda, L., Bonica, R., Ed., and B. Haberman, | ||||
| "Special-Purpose IP Address Registries", BCP 153, | ||||
| RFC 6890, DOI 10.17487/RFC6890, April 2013, | ||||
| <http://www.rfc-editor.org/info/rfc6890>. | ||||
| Appendix A. BGP Configuration | Appendix A. BGP Configuration | |||
| The configuration of BGP is arduous to establish and maintain, | The configuration of BGP is arduous to establish and maintain, | |||
| particularly on networks whose services have a requirement for | particularly on networks whose services have a requirement for | |||
| complex routing policies. This need is magnified by the need to | complex routing policies. This need is magnified by the need to | |||
| routinely perform changes to large numbers of BGP routers to, for | routinely perform changes to large numbers of BGP routers to, for | |||
| example: add or remove customer's BGP sessions, announce or withdraw | example: add or remove customer's BGP sessions, announce or withdraw | |||
| (customer) IP prefixes in BGP, modify BGP policies to effect changes | (customer) IP prefixes in BGP, modify BGP policies to effect changes | |||
| in Traffic Engineering, audit BGP routers to ensure they have | in Traffic Engineering, audit BGP routers to ensure they have | |||
| skipping to change at page 19, line 28 ¶ | skipping to change at page 20, line 12 ¶ | |||
| I2RS agents in turn would use the information towards enabling/ | I2RS agents in turn would use the information towards enabling/ | |||
| disabling of BGP specific features on BGP speakers. | disabling of BGP specific features on BGP speakers. | |||
| A.2. BGP Policy Configuration | A.2. BGP Policy Configuration | |||
| Filtering of BGP routes is strongly recommended to control the | Filtering of BGP routes is strongly recommended to control the | |||
| announcements of BGP prefixes across the internet. Most providers | announcements of BGP prefixes across the internet. Most providers | |||
| make extensive use of BGP prefix filtering policies at the edge of | make extensive use of BGP prefix filtering policies at the edge of | |||
| their networks. The reasons for filtering BGP prefixes are: | their networks. The reasons for filtering BGP prefixes are: | |||
| o Avoid Unwanted Route Announcements. Filter prefixes that MUST not | o Avoid Unwanted Route Announcements. Filter prefixes that MUST NOT | |||
| be routed [RFC5735], [RFC5156]. Filter prefixes that are not | be routed [RFC6890]. Filter prefixes that are not allocated by | |||
| allocated by Internet Routing Registries. | Internet Routing Registries. | |||
| o Facilitate Route Summarization. Filter prefixes beyond certain | o Facilitate Route Summarization. Filter prefixes beyond certain | |||
| agreed prefix mask length between providers. Route Summarization | agreed prefix mask length between providers. Route Summarization | |||
| helps control BGP RIB and FIB table size. | helps control BGP RIB and FIB table size. | |||
| o Defensive Security. Filter prefixes from Stub customer ASes that | o Defensive Security. Filter prefixes from Stub customer ASes that | |||
| are not owned by the customers. Filter customer prefixes | are not owned by the customers. Filter customer prefixes | |||
| announced by other providers. This helps avoid prefix hijacking. | announced by other providers. This helps avoid prefix hijacking. | |||
| A set of standards-based schemas to enable configuration of Local BGP | A set of standards-based schemas to enable configuration of Local BGP | |||
| End of changes. 27 change blocks. | ||||
| 52 lines changed or deleted | 66 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/ | ||||