draft-ietf-idr-ix-bgp-route-server-04.txt | draft-ietf-idr-ix-bgp-route-server-05.txt | |||
---|---|---|---|---|
IDR Working Group E. Jasinska | IDR Working Group E. Jasinska | |||
Internet-Draft Netflix, Inc | Internet-Draft Netflix, Inc | |||
Intended status: Standards Track N. Hilliard | Intended status: Standards Track N. Hilliard | |||
Expires: September 4, 2014 INEX | Expires: December 11, 2014 INEX | |||
R. Raszuk | R. Raszuk | |||
NTT MCL Inc. | NTT MCL Inc. | |||
N. Bakker | N. Bakker | |||
Akamai Technologies B.V. | Akamai Technologies B.V. | |||
March 3, 2014 | June 9, 2014 | |||
Internet Exchange Route Server | Internet Exchange Route Server | |||
draft-ietf-idr-ix-bgp-route-server-04 | draft-ietf-idr-ix-bgp-route-server-05 | |||
Abstract | Abstract | |||
This document outlines a specification for multilateral | This document outlines a specification for multilateral | |||
interconnections at Internet exchange points (IXPs). Multilateral | interconnections at Internet exchange points (IXPs). Multilateral | |||
interconnection is a method of exchanging routing information between | interconnection is a method of exchanging routing information between | |||
three or more exterior BGP speakers using a single intermediate | three or more exterior BGP speakers using a single intermediate | |||
broker system, referred to as a route server. Route servers are | broker system, referred to as a route server. Route servers are | |||
typically used on shared access media networks, such as Internet | typically used on shared access media networks, such as Internet | |||
exchange points (IXPs), to facilitate simplified interconnection | exchange points (IXPs), to facilitate simplified interconnection | |||
between multiple Internet routers. | between multiple Internet routers. | |||
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 September 4, 2014. | This Internet-Draft will expire on December 11, 2014. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2014 IETF Trust and the persons identified as the | Copyright (c) 2014 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 | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
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 to Multilateral Interconnection . . . . . . . . 2 | 1. Introduction to Multilateral Interconnection . . . . . . . . . 3 | |||
1.1. Notational Conventions . . . . . . . . . . . . . . . . . 3 | 1.1. Notational Conventions . . . . . . . . . . . . . . . . . . 3 | |||
2. Technical Considerations for Route Server Implementations . . 3 | 2. Technical Considerations for Route Server Implementations . . 4 | |||
2.1. Client UPDATE Messages . . . . . . . . . . . . . . . . . 3 | 2.1. Client UPDATE Messages . . . . . . . . . . . . . . . . . . 4 | |||
2.2. Attribute Transparency . . . . . . . . . . . . . . . . . 4 | 2.2. Attribute Transparency . . . . . . . . . . . . . . . . . . 4 | |||
2.2.1. NEXT_HOP Attribute . . . . . . . . . . . . . . . . . 4 | 2.2.1. NEXT_HOP Attribute . . . . . . . . . . . . . . . . . . 4 | |||
2.2.2. AS_PATH Attribute . . . . . . . . . . . . . . . . . . 4 | 2.2.2. AS_PATH Attribute . . . . . . . . . . . . . . . . . . 4 | |||
2.2.3. MULTI_EXIT_DISC Attribute . . . . . . . . . . . . . . 4 | 2.2.3. MULTI_EXIT_DISC Attribute . . . . . . . . . . . . . . 5 | |||
2.2.4. Communities Attributes . . . . . . . . . . . . . . . 5 | 2.2.4. Communities Attributes . . . . . . . . . . . . . . . . 5 | |||
2.3. Per-Client Policy Control in Multilateral Interconnection 5 | 2.3. Per-Client Policy Control in Multilateral | |||
2.3.1. Path Hiding on a Route Server . . . . . . . . . . . . 5 | Interconnection . . . . . . . . . . . . . . . . . . . . . 5 | |||
2.3.2. Mitigation of Path Hiding . . . . . . . . . . . . . . 6 | 2.3.1. Path Hiding on a Route Server . . . . . . . . . . . . 6 | |||
2.3.2.1. Multiple Route Server RIBs . . . . . . . . . . . 6 | 2.3.2. Mitigation of Path Hiding . . . . . . . . . . . . . . 7 | |||
2.3.2.2. Advertising Multiple Paths . . . . . . . . . . . 7 | 2.3.2.1. Multiple Route Server RIBs . . . . . . . . . . . . 7 | |||
2.3.3. Implementation Recommendations . . . . . . . . . . . 8 | 2.3.2.2. Advertising Multiple Paths . . . . . . . . . . . . 7 | |||
3. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | 2.3.3. Implementation Recommendations . . . . . . . . . . . . 8 | |||
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 | 3. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | |||
5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 | 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 | |||
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
6.1. Normative References . . . . . . . . . . . . . . . . . . 9 | 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | |||
6.2. Informative References . . . . . . . . . . . . . . . . . 9 | 6.1. Normative References . . . . . . . . . . . . . . . . . . . 9 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 | 6.2. Informative References . . . . . . . . . . . . . . . . . . 9 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 10 | ||||
1. Introduction to Multilateral Interconnection | 1. Introduction to Multilateral Interconnection | |||
Internet exchange points (IXPs) provide IP data interconnection | Internet exchange points (IXPs) provide IP data interconnection | |||
facilities for their participants, typically using shared Layer-2 | facilities for their participants, typically using shared Layer-2 | |||
networking media such as Ethernet. The Border Gateway Protocol (BGP) | networking media such as Ethernet. The Border Gateway Protocol (BGP) | |||
[RFC4271], an inter-Autonomous System routing protocol, is commonly | [RFC4271], an inter-Autonomous System routing protocol, is commonly | |||
used to facilitate exchange of network reachability information over | used to facilitate exchange of network reachability information over | |||
such media. | such media. | |||
skipping to change at page 5, line 31 | skipping to change at page 6, line 7 | |||
possible, there are circumstances where control of path distribution | possible, there are circumstances where control of path distribution | |||
on a per-client basis is important to ensure that desired | on a per-client basis is important to ensure that desired | |||
interconnection policies are met. | interconnection policies are met. | |||
The control of path distribution on a per-client basis can lead to a | The control of path distribution on a per-client basis can lead to a | |||
path being hidden from the route server client. We refer to this as | path being hidden from the route server client. We refer to this as | |||
"path hiding". | "path hiding". | |||
2.3.1. Path Hiding on a Route Server | 2.3.1. Path Hiding on a Route Server | |||
___ ___ | ___ ___ | |||
/ \ / \ | / \ / \ | |||
..| AS1 |..| AS2 |.. | ..| AS1 |..| AS2 |.. | |||
: \___/ \___/ : | : \___/ \___/ : | |||
: \ / | : | : \ / | : | |||
: \ / | : | : \ / | : | |||
: IXP \/ | : | : IXP \/ | : | |||
: /\ | : | : /\ | : | |||
: / \ | : | : / \ | : | |||
: ___/____\_|_ : | : ___/____\_|_ : | |||
: / \ / \ : | : / \ / \ : | |||
..| AS3 |..| AS4 |.. | ..| AS3 |..| AS4 |.. | |||
\___/ \___/ | \___/ \___/ | |||
Figure 1: Per-Client Policy Controlled Interconnection at an IXP | Figure 1: Per-Client Policy Controlled Interconnection at an IXP | |||
Using the example in Figure 1, AS1 does not directly exchange prefix | Using the example in Figure 1, AS1 does not directly exchange prefix | |||
information with either AS2 or AS3 at the IXP, but only interconnects | information with either AS2 or AS3 at the IXP, but only interconnects | |||
with AS4. | with AS4. | |||
In the traditional bilateral interconnection model, per-client policy | In the traditional bilateral interconnection model, per-client policy | |||
control to a third party exchange participant is accomplished either | control to a third party exchange participant is accomplished either | |||
by not engaging in a bilateral interconnection with that participant | by not engaging in a bilateral interconnection with that participant | |||
skipping to change at page 8, line 43 | skipping to change at page 9, line 18 | |||
The new set of mechanisms for route servers does not require any new | The new set of mechanisms for route servers does not require any new | |||
allocations from IANA. | allocations from IANA. | |||
5. Acknowledgments | 5. Acknowledgments | |||
The authors would like to thank Ryan Bickhart, Steven Bakker, Martin | The authors would like to thank Ryan Bickhart, Steven Bakker, Martin | |||
Pels, Chris Hall, Aleksi Suhonen, Bruno Decraene, Pierre Francois and | Pels, Chris Hall, Aleksi Suhonen, Bruno Decraene, Pierre Francois and | |||
Eduardo Ascenco Reis for their valuable input. | Eduardo Ascenco Reis for their valuable input. | |||
In addition, the authors would like to acknowledge the developers of | In addition, the authors would like to acknowledge the developers of | |||
BIRD, OpenBGPD and Quagga, whose open source BGP implementations | BIRD, OpenBGPD, Quagga and IOS whose BGP implementations include | |||
include route server capabilities which are compliant with this | route server capabilities which are compliant with this document. | |||
document. | ||||
Route server functionality was described in 1995 in [RFC1863] and | ||||
modern route server implementations are based on concepts developed | ||||
in the 1990s by the Routing Arbiter Project and the Route Server Next | ||||
Generation Project, managed by ISI and Merit. Although the original | ||||
RSNG code is no longer in use at any IXPs, the IXP community owes a | ||||
debt of gratitude to the many people who were involved in route | ||||
server development in the 1990s. | ||||
6. References | 6. References | |||
6.1. Normative References | 6.1. Normative References | |||
[RFC1997] Chandrasekeran, R., Traina, P., and T. Li, "BGP | [RFC1997] Chandrasekeran, R., Traina, P., and T. Li, "BGP | |||
Communities Attribute", RFC 1997, August 1996. | Communities Attribute", RFC 1997, August 1996. | |||
[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. | |||
skipping to change at page 9, line 22 | skipping to change at page 10, line 4 | |||
[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. | |||
[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, February 2006. | |||
6.2. Informative References | 6.2. Informative References | |||
[I-D.ietf-grow-diverse-bgp-path-dist] | [I-D.ietf-grow-diverse-bgp-path-dist] | |||
Raszuk, R., Fernando, R., Patel, K., McPherson, D., and K. | Raszuk, R., Fernando, R., Patel, K., McPherson, D., and K. | |||
Kumaki, "Distribution of diverse BGP paths.", draft-ietf- | ||||
grow-diverse-bgp-path-dist-08 (work in progress), July | Kumaki, "Distribution of diverse BGP paths.", | |||
2012. | draft-ietf-grow-diverse-bgp-path-dist-08 (work in | |||
progress), July 2012. | ||||
[I-D.ietf-idr-add-paths] | [I-D.ietf-idr-add-paths] | |||
Walton, D., Retana, A., Chen, E., and J. Scudder, | Walton, D., Retana, A., Chen, E., and J. Scudder, | |||
"Advertisement of Multiple Paths in BGP", draft-ietf-idr- | "Advertisement of Multiple Paths in BGP", | |||
add-paths-09 (work in progress), October 2013. | draft-ietf-idr-add-paths-09 (work in progress), | |||
October 2013. | ||||
[RFC1863] Haskin, D., "A BGP/IDRP Route Server alternative to a full | ||||
mesh routing", RFC 1863, October 1995. | ||||
[RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route | [RFC4456] Bates, T., Chen, E., and R. Chandra, "BGP Route | |||
Reflection: An Alternative to Full Mesh Internal BGP | Reflection: An Alternative to Full Mesh Internal BGP | |||
(IBGP)", RFC 4456, April 2006. | (IBGP)", RFC 4456, April 2006. | |||
Authors' Addresses | Authors' Addresses | |||
Elisa Jasinska | Elisa Jasinska | |||
Netflix, Inc | Netflix, Inc | |||
100 Winchester Circle | 100 Winchester Circle | |||
End of changes. 11 change blocks. | ||||
48 lines changed or deleted | 62 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |