draft-ietf-idr-rfc2796bis-02.txt | rfc4456.txt | |||
---|---|---|---|---|
Network Working Group T. Bates (Cisco Systems) | Network Working Group T. Bates | |||
Internet Draft R. Chandra (Sonoa Systems) | Request for Comments: 4456 E. Chen | |||
Expiration Date: April 2006 E. Chen (Cisco Systems) | Obsoletes: 2796, 1966 Cisco Systems | |||
Category: Standards Track R. Chandra | ||||
BGP Route Reflection - | Sonoa Systems | |||
An Alternative to Full Mesh IBGP | April 2006 | |||
draft-ietf-idr-rfc2796bis-02.txt | ||||
Status of this Memo | ||||
By submitting this Internet-Draft, each author represents that any | BGP Route Reflection: | |||
applicable patent or other IPR claims of which he or she is aware | An Alternative to Full Mesh Internal BGP (IBGP) | |||
have been or will be disclosed, and any of which he or she becomes | ||||
aware will be disclosed, in accordance with Section 6 of BCP 79. | ||||
Internet-Drafts are working documents of the Internet Engineering | Status of This Memo | |||
Task Force (IETF), its areas, and its working groups. Note that | ||||
other groups may also distribute working documents as Internet- | ||||
Drafts. | ||||
Internet-Drafts are draft documents valid for a maximum of six months | This document specifies an Internet standards track protocol for the | |||
and may be updated, replaced, or obsoleted by other documents at any | Internet community, and requests discussion and suggestions for | |||
time. It is inappropriate to use Internet-Drafts as reference | improvements. Please refer to the current edition of the "Internet | |||
material or to cite them other than as "work in progress." | Official Protocol Standards" (STD 1) for the standardization state | |||
and status of this protocol. Distribution of this memo is unlimited. | ||||
The list of current Internet-Drafts can be accessed at | Copyright Notice | |||
http://www.ietf.org/ietf/1id-abstracts.txt | ||||
The list of Internet-Draft Shadow Directories can be accessed at | Copyright (C) The Internet Society (2006). | |||
http://www.ietf.org/shadow.html. | ||||
Abstract | Abstract | |||
The Border Gateway Protocol (BGP) is an inter-autonomous system | The Border Gateway Protocol (BGP) is an inter-autonomous system | |||
routing protocol designed for TCP/IP internets. Typically all BGP | routing protocol designed for TCP/IP internets. Typically, all BGP | |||
speakers within a single AS must be fully meshed so that any external | speakers within a single AS must be fully meshed so that any external | |||
routing information must be re-distributed to all other routers | routing information must be re-distributed to all other routers | |||
within that AS. This represents a serious scaling problem that has | within that Autonomous System (AS). This represents a serious | |||
been well documented with several alternatives proposed. | scaling problem that has been well documented with several | |||
alternatives proposed. | ||||
This document describes the use and design of a method known as | This document describes the use and design of a method known as | |||
"Route Reflection" to alleviate the the need for "full mesh" IBGP. | "route reflection" to alleviate the need for "full mesh" Internal BGP | |||
(IBGP). | ||||
This documents obsoletes RFC 2796 and RFC 1966. | This document obsoletes RFC 2796 and RFC 1966. | |||
Table of Contents | ||||
1. Introduction ....................................................2 | ||||
2. Specification of Requirements ...................................2 | ||||
3. Design Criteria .................................................3 | ||||
4. Route Reflection ................................................3 | ||||
5. Terminology and Concepts ........................................4 | ||||
6. Operation .......................................................5 | ||||
7. Redundant RRs ...................................................6 | ||||
8. Avoiding Routing Information Loops ..............................6 | ||||
9. Impact on Route Selection .......................................7 | ||||
10. Implementation Considerations ..................................7 | ||||
11. Configuration and Deployment Considerations ....................7 | ||||
12. Security Considerations ........................................8 | ||||
13. Acknowledgements ...............................................9 | ||||
14. References .....................................................9 | ||||
14.1. Normative References ......................................9 | ||||
14.2. Informative References ....................................9 | ||||
Appendix A: Comparison with RFC 2796 ..............................10 | ||||
Appendix B: Comparison with RFC 1966 ..............................10 | ||||
1. Introduction | 1. Introduction | |||
Typically all BGP speakers within a single AS must be fully meshed | Typically, all BGP speakers within a single AS must be fully meshed | |||
and any external routing information must be re-distributed to all | and any external routing information must be re-distributed to all | |||
other routers within that AS. For n BGP speakers within an AS that | other routers within that AS. For n BGP speakers within an AS that | |||
requires to maintain n*(n-1)/2 unique IBGP sessions. This "full | requires to maintain n*(n-1)/2 unique Internal BGP (IBGP) sessions. | |||
mesh" requirement clearly does not scale when there are a large | This "full mesh" requirement clearly does not scale when there are a | |||
number of IBGP speakers each exchanging a large volume of routing | large number of IBGP speakers each exchanging a large volume of | |||
information, as is common in many of today's networks. | routing information, as is common in many of today's networks. | |||
This scaling problem has been well documented and a number of | This scaling problem has been well documented, and a number of | |||
proposals have been made to alleviate this [2,3]. This document | proposals have been made to alleviate this [2,3]. This document | |||
represents another alternative in alleviating the need for a "full | represents another alternative in alleviating the need for a "full | |||
mesh" and is known as "Route Reflection". This approach allows a BGP | mesh" and is known as "route reflection". This approach allows a BGP | |||
speaker (known as "Route Reflector") to advertise IBGP learned routes | speaker (known as a "route reflector") to advertise IBGP learned | |||
to certain IBGP peers. It represents a change in the commonly | routes to certain IBGP peers. It represents a change in the commonly | |||
understood concept of IBGP, and the addition of two new optional non- | understood concept of IBGP, and the addition of two new optional | |||
transitive BGP attributes to prevent loops in routing updates. | non-transitive BGP attributes to prevent loops in routing updates. | |||
This documents obsoletes RFC 2796 [6] and RFC 1966 [4]. | This document obsoletes RFC 2796 [6] and RFC 1966 [4]. | |||
2. Specification of Requirements | 2. Specification of Requirements | |||
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" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
document are to be interpreted as described in RFC 2119 [7]. | document are to be interpreted as described in RFC 2119 [7]. | |||
3. Design Criteria | 3. Design Criteria | |||
Route Reflection was designed to satisfy the following criteria. | Route reflection was designed to satisfy the following criteria. | |||
o Simplicity | o Simplicity | |||
Any alternative must be both simple to configure as well as | Any alternative must be simple to configure and easy to | |||
understand. | understand. | |||
o Easy Transition | o Easy Transition | |||
It must be possible to transition from a full mesh | It must be possible to transition from a full-mesh | |||
configuration without the need to change either topology or AS. | configuration without the need to change either topology or AS. | |||
This is an unfortunate management overhead of the technique | This is an unfortunate management overhead of the technique | |||
proposed in [3]. | proposed in [3]. | |||
o Compatibility | o Compatibility | |||
It must be possible for non compliant IBGP peers to continue be | It must be possible for noncompliant IBGP peers to continue to | |||
part of the original AS or domain without any loss of BGP | be part of the original AS or domain without any loss of BGP | |||
routing information. | routing information. | |||
These criteria were motivated by operational experiences of a very | These criteria were motivated by operational experiences of a very | |||
large and topology rich network with many external connections. | large and topology-rich network with many external connections. | |||
4. Route Reflection | 4. Route Reflection | |||
The basic idea of Route Reflection is very simple. Let us consider | The basic idea of route reflection is very simple. Let us consider | |||
the simple example depicted in Figure 1 below. | the simple example depicted in Figure 1 below. | |||
+-------+ +-------+ | +-------+ +-------+ | |||
| | IBGP | | | | | IBGP | | | |||
| RTR-A |--------| RTR-B | | | RTR-A |--------| RTR-B | | |||
| | | | | | | | | | |||
+-------+ +-------+ | +-------+ +-------+ | |||
\ / | \ / | |||
IBGP \ ASX / IBGP | IBGP \ ASX / IBGP | |||
\ / | \ / | |||
+-------+ | +-------+ | |||
| | | | | | |||
| RTR-C | | | RTR-C | | |||
| | | | | | |||
+-------+ | +-------+ | |||
Figure 1: Full Mesh IBGP | Figure 1: Full-Mesh IBGP | |||
In ASX there are three IBGP speakers (routers RTR-A, RTR-B and RTR- | In ASX, there are three IBGP speakers (routers RTR-A, RTR-B, and | |||
C). With the existing BGP model, if RTR-A receives an external route | RTR-C). With the existing BGP model, if RTR-A receives an external | |||
and it is selected as the best path it must advertise the external | route and it is selected as the best path it must advertise the | |||
route to both RTR-B and RTR-C. RTR-B and RTR-C (as IBGP speakers) | external route to both RTR-B and RTR-C. RTR-B and RTR-C (as IBGP | |||
will not re-advertise these IBGP learned routes to other IBGP | speakers) will not re-advertise these IBGP learned routes to other | |||
speakers. | IBGP speakers. | |||
If this rule is relaxed and RTR-C is allowed to advertise IBGP | If this rule is relaxed and RTR-C is allowed to advertise IBGP | |||
learned routes to IBGP peers, then it could re-advertise (or reflect) | learned routes to IBGP peers, then it could re-advertise (or reflect) | |||
the IBGP routes learned from RTR-A to RTR-B and vice versa. This | the IBGP routes learned from RTR-A to RTR-B and vice versa. This | |||
would eliminate the need for the IBGP session between RTR-A and RTR-B | would eliminate the need for the IBGP session between RTR-A and RTR-B | |||
as shown in Figure 2 below. | as shown in Figure 2 below. | |||
+-------+ +-------+ | +-------+ +-------+ | |||
| | | | | | | | | | |||
| RTR-A | | RTR-B | | | RTR-A | | RTR-B | | |||
skipping to change at page 4, line 21 | skipping to change at page 4, line 31 | |||
IBGP \ ASX / IBGP | IBGP \ ASX / IBGP | |||
\ / | \ / | |||
+-------+ | +-------+ | |||
| | | | | | |||
| RTR-C | | | RTR-C | | |||
| | | | | | |||
+-------+ | +-------+ | |||
Figure 2: Route Reflection IBGP | Figure 2: Route Reflection IBGP | |||
The Route Reflection scheme is based upon this basic principle. | The route reflection scheme is based upon this basic principle. | |||
5. Terminology and Concepts | 5. Terminology and Concepts | |||
We use the term "Route Reflection" to describe the operation of a BGP | We use the term "route reflection" to describe the operation of a BGP | |||
speaker advertising an IBGP learned route to another IBGP peer. Such | speaker advertising an IBGP learned route to another IBGP peer. Such | |||
a BGP speaker is said to be a "Route Reflector" (RR), and such a | a BGP speaker is said to be a "route reflector" (RR), and such a | |||
route is said to be a reflected route. | route is said to be a reflected route. | |||
The internal peers of a RR are divided into two groups: | The internal peers of an RR are divided into two groups: | |||
1) Client Peers | 1) Client peers | |||
2) Non-Client Peers | 2) Non-Client peers | |||
A RR reflects routes between these groups, and may reflect routes | An RR reflects routes between these groups, and may reflect routes | |||
among client peers. A RR along with its client peers form a Cluster. | among client peers. An RR along with its client peers form a | |||
The Non-Client peer must be fully meshed but the Client peers need | cluster. The Non-Client peer must be fully meshed but the Client | |||
not be fully meshed. Figure 3 depicts a simple example outlining the | peers need not be fully meshed. Figure 3 depicts a simple example | |||
basic RR components using the terminology noted above. | outlining the basic RR components using the terminology noted above. | |||
/ - - - - - - - - - - - - - - | / - - - - - - - - - - - - - - | |||
| Cluster | | | Cluster | | |||
+-------+ +-------+ | +-------+ +-------+ | |||
| | | | | | | | | | | | | | |||
| RTR-A | | RTR-B | | | RTR-A | | RTR-B | | |||
| |Client | |Client | | | | |Client | |Client | | | |||
+-------+ +-------+ | +-------+ +-------+ | |||
| \ / | | | \ / | | |||
IBGP \ / IBGP | IBGP \ / IBGP | |||
skipping to change at page 5, line 33 | skipping to change at page 5, line 33 | |||
+-------+ +-------+ | +-------+ +-------+ | |||
| RTR-D | IBGP | RTR-E | | | RTR-D | IBGP | RTR-E | | |||
| Non- |---------| Non- | | | Non- |---------| Non- | | |||
|Client | |Client | | |Client | |Client | | |||
+-------+ +-------+ | +-------+ +-------+ | |||
Figure 3: RR Components | Figure 3: RR Components | |||
6. Operation | 6. Operation | |||
When a RR receives a route from an IBGP peer, it selects the best | When an RR receives a route from an IBGP peer, it selects the best | |||
path based on its path selection rule. After the best path is | path based on its path selection rule. After the best path is | |||
selected, it must do the following depending on the type of the peer | selected, it must do the following depending on the type of peer it | |||
it is receiving the best path from: | is receiving the best path from | |||
1) A Route from a Non-Client IBGP peer | 1) A route from a Non-Client IBGP peer: | |||
Reflect to all the Clients. | Reflect to all the Clients. | |||
2) A Route from a Client peer | 2) A route from a Client peer: | |||
Reflect to all the Non-Client peers and also to the Client | Reflect to all the Non-Client peers and also to the Client | |||
peers. (Hence the Client peers are not required to be fully | peers. (Hence the Client peers are not required to be fully | |||
meshed.) | meshed.) | |||
An Autonomous System could have many RRs. A RR treats other RRs just | An Autonomous System could have many RRs. An RR treats other RRs | |||
like any other internal BGP speakers. A RR could be configured to | just like any other internal BGP speakers. An RR could be configured | |||
have other RRs in a Client group or Non-client group. | to have other RRs in a Client group or Non-client group. | |||
In a simple configuration the backbone could be divided into many | In a simple configuration, the backbone could be divided into many | |||
clusters. Each RR would be configured with other RRs as Non-Client | clusters. Each RR would be configured with other RRs as Non-Client | |||
peers (thus all the RRs will be fully meshed.). The Clients will be | peers (thus all the RRs will be fully meshed). The Clients will be | |||
configured to maintain IBGP session only with the RR in their | configured to maintain IBGP session only with the RR in their | |||
cluster. Due to route reflection, all the IBGP speakers will receive | cluster. Due to route reflection, all the IBGP speakers will receive | |||
reflected routing information. | reflected routing information. | |||
It is possible in a Autonomous System to have BGP speakers that do | It is possible in an Autonomous System to have BGP speakers that do | |||
not understand the concept of Route-Reflectors (let us call them | not understand the concept of route reflectors (let us call them | |||
conventional BGP speakers). The Route-Reflector Scheme allows such | conventional BGP speakers). The route reflector scheme allows such | |||
conventional BGP speakers to co-exist. Conventional BGP speakers | conventional BGP speakers to coexist. Conventional BGP speakers | |||
could be either members of a Non-Client group or a Client group. This | could be members of either a Non-Client group or a Client group. | |||
allows for an easy and gradual migration from the current IBGP model | This allows for an easy and gradual migration from the current IBGP | |||
to the Route Reflection model. One could start creating clusters by | model to the route reflection model. One could start creating | |||
configuring a single router as the designated RR and configuring | clusters by configuring a single router as the designated RR and | |||
other RRs and their clients as normal IBGP peers. Additional clusters | configuring other RRs and their clients as normal IBGP peers. | |||
can be created gradually. | Additional clusters can be created gradually. | |||
7. Redundant RRs | 7. Redundant RRs | |||
Usually a cluster of clients will have a single RR. In that case, the | Usually, a cluster of clients will have a single RR. In that case, | |||
cluster will be identified by the BGP Identifier of the RR. However, | the cluster will be identified by the BGP Identifier of the RR. | |||
this represents a single point of failure so to make it possible to | However, this represents a single point of failure so to make it | |||
have multiple RRs in the same cluster, all RRs in the same cluster | possible to have multiple RRs in the same cluster, all RRs in the | |||
can be configured with a 4-byte CLUSTER_ID so that an RR can discard | same cluster can be configured with a 4-byte CLUSTER_ID so that an RR | |||
routes from other RRs in the same cluster. | can discard routes from other RRs in the same cluster. | |||
8. Avoiding Routing Information Loops | 8. Avoiding Routing Information Loops | |||
When a route is reflected, it is possible through mis-configuration | When a route is reflected, it is possible through misconfiguration to | |||
to form route re-distribution loops. The Route Reflection method | form route re-distribution loops. The route reflection method | |||
defines the following attributes to detect and avoid routing | defines the following attributes to detect and avoid routing | |||
information loops: | information loops: | |||
ORIGINATOR_ID | ORIGINATOR_ID | |||
ORIGINATOR_ID is a new optional, non-transitive BGP attribute of Type | ORIGINATOR_ID is a new optional, non-transitive BGP attribute of Type | |||
code 9. This attribute is 4 bytes long and it will be created by a RR | code 9. This attribute is 4 bytes long and it will be created by an | |||
in reflecting a route. This attribute will carry the BGP Identifier | RR in reflecting a route. This attribute will carry the BGP | |||
of the originator of the route in the local AS. A BGP speaker SHOULD | Identifier of the originator of the route in the local AS. A BGP | |||
NOT create an ORIGINATOR_ID attribute if one already exists. A | speaker SHOULD NOT create an ORIGINATOR_ID attribute if one already | |||
router which recognizes the ORIGINATOR_ID attribute SHOULD ignore a | exists. A router that recognizes the ORIGINATOR_ID attribute SHOULD | |||
route received with its BGP Identifier as the ORIGINATOR_ID. | ignore a route received with its BGP Identifier as the ORIGINATOR_ID. | |||
CLUSTER_LIST | CLUSTER_LIST | |||
CLUSTER_LIST is a new optional, non-transitive BGP attribute of Type | ||||
CLUSTER_LIST is a new, optional, non-transitive BGP attribute of Type | ||||
code 10. It is a sequence of CLUSTER_ID values representing the | code 10. It is a sequence of CLUSTER_ID values representing the | |||
reflection path that the route has passed. | reflection path that the route has passed. | |||
When a RR reflects a route, it MUST prepend the local CLUSTER_ID to | When an RR reflects a route, it MUST prepend the local CLUSTER_ID to | |||
the CLUSTER_LIST. If the CLUSTER_LIST is empty, it MUST create a new | the CLUSTER_LIST. If the CLUSTER_LIST is empty, it MUST create a new | |||
one. Using this attribute an RR can identify if the routing | one. Using this attribute an RR can identify if the routing | |||
information has looped back to the same cluster due to mis- | information has looped back to the same cluster due to | |||
configuration. If the local CLUSTER_ID is found in the CLUSTER_LIST, | misconfiguration. If the local CLUSTER_ID is found in the | |||
the advertisement received SHOULD be ignored. | CLUSTER_LIST, the advertisement received SHOULD be ignored. | |||
9. Impact on Route Selection | 9. Impact on Route Selection | |||
The BGP Decision Process Tie Breaking rules (Sect. 9.1.2.2, [1]) are | The BGP Decision Process Tie Breaking rules (Sect. 9.1.2.2, [1]) are | |||
modified as follows: | modified as follows: | |||
If a route carries the ORIGINATOR_ID attribute, then in Step f) | If a route carries the ORIGINATOR_ID attribute, then in Step f) | |||
the ORIGINATOR_ID SHOULD be treated as the BGP Identifier of | the ORIGINATOR_ID SHOULD be treated as the BGP Identifier of the | |||
the BGP speaker that has advertised the route. | BGP speaker that has advertised the route. | |||
In addition, the following rule SHOULD be inserted between Steps | In addition, the following rule SHOULD be inserted between Steps | |||
f) and g): a BGP Speaker SHOULD prefer a route with the shorter | f) and g): a BGP Speaker SHOULD prefer a route with the shorter | |||
CLUSTER_LIST length. The CLUSTER_LIST length is zero if a route | CLUSTER_LIST length. The CLUSTER_LIST length is zero if a route | |||
does not carry the CLUSTER_LIST attribute. | does not carry the CLUSTER_LIST attribute. | |||
10. Implementation Considerations | 10. Implementation Considerations | |||
Care should be taken to make sure that none of the BGP path | Care should be taken to make sure that none of the BGP path | |||
attributes defined above can be modified through configuration when | attributes defined above can be modified through configuration when | |||
exchanging internal routing information between RRs and Clients and | exchanging internal routing information between RRs and Clients and | |||
Non-Clients. Their modification could potentially result in routing | Non-Clients. Their modification could potentially result in routing | |||
loops. | loops. | |||
In addition, when a RR reflects a route, it SHOULD NOT modify the | In addition, when a RR reflects a route, it SHOULD NOT modify the | |||
following path attributes: NEXT_HOP, AS_PATH, LOCAL_PREF, and MED. | following path attributes: NEXT_HOP, AS_PATH, LOCAL_PREF, and MED. | |||
Their modification could potential result in routing loops. | Their modification could potentially result in routing loops. | |||
11. Configuration and Deployment Considerations | 11. Configuration and Deployment Considerations | |||
The BGP protocol provides no way for a Client to identify itself | The BGP protocol provides no way for a Client to identify itself | |||
dynamically as a Client of an RR. The simplest way to achieve this | dynamically as a Client of an RR. The simplest way to achieve this | |||
is by manual configuration. | is by manual configuration. | |||
One of the key component of the route reflection approach in | One of the key component of the route reflection approach in | |||
addressing the scaling issue is that the RR summarizes routing | addressing the scaling issue is that the RR summarizes routing | |||
information and only reflects its best path. | information and only reflects its best path. | |||
Both MEDs and IGP metrics may impact the BGP route selection. | Both Multi-Exit Discriminators (MEDs) and Interior Gateway Protocol | |||
Because MEDs are not always comparable and the IGP metric may differ | (IGP) metrics may impact the BGP route selection. Because MEDs are | |||
for each router, with certain route reflection topologies the route | not always comparable and the IGP metric may differ for each router, | |||
reflection approach may not yield the same route selection result as | with certain route reflection topologies the route reflection | |||
that of the full IBGP mesh approach. A way to make route selection | approach may not yield the same route selection result as that of the | |||
the same as it would be with the full IBGP mesh approach is to make | full IBGP mesh approach. A way to make route selection the same as | |||
sure that route reflectors are never forced to perform the BGP route | it would be with the full IBGP mesh approach is to make sure that | |||
selection based on IGP metrics which are significantly different from | route reflectors are never forced to perform the BGP route selection | |||
the IGP metrics of their clients, or based on incomparable MEDs. The | based on IGP metrics that are significantly different from the IGP | |||
former can be achieved by configuring the intra-cluster IGP metrics | metrics of their clients, or based on incomparable MEDs. The former | |||
to be better than the inter-cluster IGP metrics, and maintaining full | can be achieved by configuring the intra-cluster IGP metrics to be | |||
mesh within the cluster. The latter can be achieved by: | better than the inter-cluster IGP metrics, and maintaining full mesh | |||
within the cluster. The latter can be achieved by | ||||
o setting the local preference of a route at the border router to | o setting the local preference of a route at the border router to | |||
reflect the MED values. | reflect the MED values, or | |||
o or by making sure the AS-path lengths from different ASs are | o making sure the AS-path lengths from different ASes are | |||
different when the AS-path length is used as a route selection | different when the AS-path length is used as a route selection | |||
criteria. | criteria, or | |||
o or by configuring community based policies using which the | o configuring community-based policies to influence the route | |||
reflector can decide on the best route. | selection. | |||
One could argue though that the latter requirement is overly | One could argue though that the latter requirement is overly | |||
restrictive, and perhaps impractical in some cases. One could | restrictive, and perhaps impractical in some cases. One could | |||
further argue that as long as there are no routing loops, there are | further argue that as long as there are no routing loops, there are | |||
no compelling reasons to force route selection with route reflectors | no compelling reasons to force route selection with route reflectors | |||
to be the same as it would be with the full IBGP mesh approach. | to be the same as it would be with the full IBGP mesh approach. | |||
To prevent routing loops and maintain consistent routing view, it is | To prevent routing loops and maintain consistent routing view, it is | |||
essential that the network topology be carefully considered in | essential that the network topology be carefully considered in | |||
designing a route reflection topology. In general, the route | designing a route reflection topology. In general, the route | |||
reflection topology should congruent with the network topology when | reflection topology should be congruent with the network topology | |||
there exist multiple paths for a prefix. One commonly used approach | when there exist multiple paths for a prefix. One commonly used | |||
is the POP-based reflection, in which each POP maintains its own | approach is the reflection based on Point of Presence (POP), in which | |||
route reflectors serving clients in the POP, and all route reflectors | each POP maintains its own route reflectors serving clients in the | |||
are fully meshed. In addition, clients of the reflectors in each POP | POP, and all route reflectors are fully meshed. In addition, clients | |||
are often fully meshed for the purpose of optimal intra-POP routing, | of the reflectors in each POP are often fully meshed for the purpose | |||
and the intra-POP IGP metrics are configured to be better than the | of optimal intra-POP routing, and the intra-POP IGP metrics are | |||
inter-POP IGP metrics. | configured to be better than the inter-POP IGP metrics. | |||
12. Security Considerations | 12. Security Considerations | |||
This extension to BGP does not change the underlying security issues | This extension to BGP does not change the underlying security issues | |||
inherent in the existing IBGP [1, 5]. | inherent in the existing IBGP [1, 5]. | |||
13. Acknowledgments | 13. Acknowledgements | |||
The authors would like to thank Dennis Ferguson, John Scudder, Paul | The authors would like to thank Dennis Ferguson, John Scudder, Paul | |||
Traina and Tony Li for the many discussions resulting in this work. | Traina, and Tony Li for the many discussions resulting in this work. | |||
This idea was developed from an earlier discussion between Tony Li | This idea was developed from an earlier discussion between Tony Li | |||
and Dimitri Haskin. | and Dimitri Haskin. | |||
In addition, the authors would like to acknowledge valuable review | In addition, the authors would like to acknowledge valuable review | |||
and suggestions from Yakov Rekhter on this document, and helpful | and suggestions from Yakov Rekhter on this document, and helpful | |||
comments from Tony Li, Rohit Dube, John Scudder and Bruce Cole. | comments from Tony Li, Rohit Dube, John Scudder, and Bruce Cole. | |||
14. References | 14. References | |||
14.1. Normative References | 14.1. Normative References | |||
[1] Rekhter, Y., T. Li and S. Hares, "A Border Gateway Protocol 4 | [1] Rekhter, Y., Li, T., and S. Hares, "A Border Gateway Protocol 4 | |||
(BGP-4)", draft-ietf-idr-bgp4-26.txt, October 2004. | (BGP-4)", RFC 4271, January 2006. | |||
14.2. Informative References | 14.2. Informative References | |||
[2] Haskin, D., "A BGP/IDRP Route Server alternative to a full mesh | [2] Savola, P., "Reclassification of RFC 1863 to Historic", RFC | |||
routing", RFC 1863, October 1995. | 4223, October 2005. | |||
[3] Traina, P., "Limited Autonomous System Confederations for BGP", | [3] Traina, P., McPherson, D., and J. Scudder, "Autonomous System | |||
RFC 1965, June 1996. | Confederations for BGP", RFC 3065, February 2001. | |||
[4] Bates, T. and R. Chandra, "BGP Route Reflection An alternative | [4] Bates, T. and R. Chandra, "BGP Route Reflection An alternative | |||
to full mesh IBGP", RFC 1966, June 1996. | to full mesh IBGP", RFC 1966, June 1996. | |||
[5] Heffernan, A., "Protection of BGP Sessions via the TCP MD5 | [5] Heffernan, A., "Protection of BGP Sessions via the TCP MD5 | |||
Signature Option", RFC 2385, August 1998. | Signature Option", RFC 2385, August 1998. | |||
[6] Bates, T., R. Chandra and E. Chen "BGP Route Reflection - An | [6] Bates, T., Chandra, R., and E. Chen, "BGP Route Reflection - An | |||
Alternative to Full Mesh IBGP", RFC 2796, Arpil 2000. | Alternative to Full Mesh IBGP", RFC 2796, April 2000. | |||
[7] Bradner, S., "Key words for use in RFCs to Indicate Requirement | [7] Bradner, S., "Key words for use in RFCs to Indicate Requirement | |||
Levels", BCP 14, RFC 2119, March 1997. | Levels", BCP 14, RFC 2119, March 1997. | |||
15. Authors' Addresses | Appendix A: Comparison with RFC 2796 | |||
The impact on route selection is added. | ||||
The pictorial description of the encoding of the CLUSTER_LIST | ||||
attribute is removed as the description is redundant to the BGP | ||||
specification, and the attribute length field is inadvertently | ||||
described as one octet. | ||||
Appendix B: Comparison with RFC 1966 | ||||
All the changes listed in Appendix A, plus the following. | ||||
Several terminologies related to route reflection are clarified, and | ||||
the reference to EBGP routes/peers are removed. | ||||
The handling of a routing information loop (due to route reflection) | ||||
by a receiver is clarified and made more consistent. | ||||
The addition of a CLUSTER_ID to the CLUSTER_LIST has been changed | ||||
from "append" to "prepend" to reflect the deployed code. | ||||
The section on "Configuration and Deployment Considerations" has been | ||||
expanded to address several operational issues. | ||||
Authors' Addresses | ||||
Tony Bates | Tony Bates | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
170 West Tasman Drive | 170 West Tasman Drive | |||
San Jose, CA 95134 | San Jose, CA 95134 | |||
EMail: tbates@cisco.com | EMail: tbates@cisco.com | |||
Ravi Chandra | Ravi Chandra | |||
Sonoa Systems, Inc. | Sonoa Systems, Inc. | |||
3255-7 Scott Blvd. | 3255-7 Scott Blvd. | |||
Santa Clara, CA 95054 | Santa Clara, CA 95054 | |||
Email: rchandra@sonoasystems.com | EMail: rchandra@sonoasystems.com | |||
Enke Chen | Enke Chen | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
170 West Tasman Drive | 170 West Tasman Drive | |||
San Jose, CA 95134 | San Jose, CA 95134 | |||
EMail: enkechen@cisco.com | EMail: enkechen@cisco.com | |||
16. Appendix A Comparison with RFC 2796 | Full Copyright Statement | |||
The impact on route selection is added. | ||||
The pictorial description of the encoding of the CLUSTER_LIST | ||||
attribute is removed as the description is redundant to the BGP | ||||
specification, and the attribute length field is inadvertently | ||||
described as one octet. | ||||
17. Appendix B Comparison with RFC 1966 | ||||
All the changes listed in Appendix A, plus the following. | ||||
Several terminologies related to route reflection are clarified, and | ||||
the reference to EBGP routes/peers are removed. | ||||
The handling of a routing information loop (due to route reflection) | Copyright (C) The Internet Society (2006). | |||
by a receiver is clarified and made more consistent. | ||||
The addition of a CLUSTER_ID to the CLUSTER_LIST has been changed | This document is subject to the rights, licenses and restrictions | |||
from "append" to "prepend" to reflect the deployed code. | contained in BCP 78, and except as set forth therein, the authors | |||
retain all their rights. | ||||
The section on "Configuration and Deployment Considerations" has been | This document and the information contained herein are provided on an | |||
expanded to address several operational issues. | "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | |||
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | ||||
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, | ||||
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE | ||||
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | ||||
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
18. Intellectual Property Considerations | Intellectual Property | |||
The IETF takes no position regarding the validity or scope of any | The IETF takes no position regarding the validity or scope of any | |||
Intellectual Property Rights or other rights that might be claimed to | Intellectual Property Rights or other rights that might be claimed to | |||
pertain to the implementation or use of the technology described in | pertain to the implementation or use of the technology described in | |||
this document or the extent to which any license under such rights | this document or the extent to which any license under such rights | |||
might or might not be available; nor does it represent that it has | might or might not be available; nor does it represent that it has | |||
made any independent effort to identify any such rights. Information | made any independent effort to identify any such rights. Information | |||
on the procedures with respect to rights in RFC documents can be | on the procedures with respect to rights in RFC documents can be | |||
found in BCP 78 and BCP 79. | found in BCP 78 and BCP 79. | |||
Copies of IPR disclosures made to the IETF Secretariat and any | Copies of IPR disclosures made to the IETF Secretariat and any | |||
assurances of licenses to be made available, or the result of an | assurances of licenses to be made available, or the result of an | |||
attempt made to obtain a general license or permission for the use of | attempt made to obtain a general license or permission for the use of | |||
such proprietary rights by implementers or users of this | such proprietary rights by implementers or users of this | |||
specification can be obtained from the IETF on-line IPR repository at | specification can be obtained from the IETF on-line IPR repository at | |||
http://www.ietf.org/ipr. | http://www.ietf.org/ipr. | |||
The IETF invites any interested party to bring to its attention any | The IETF invites any interested party to bring to its attention any | |||
copyrights, patents or patent applications, or other proprietary | copyrights, patents or patent applications, or other proprietary | |||
rights that may cover technology that may be required to implement | rights that may cover technology that may be required to implement | |||
this standard. Please address the information to the IETF at ietf- | this standard. Please address the information to the IETF at | |||
ipr@ietf.org. | ietf-ipr@ietf.org. | |||
19. Full Copyright Notice | ||||
Copyright (C) The Internet Society (2005). | ||||
This document is subject to the rights, licenses and restrictions | Acknowledgement | |||
contained in BCP 78, and except as set forth therein, the authors | ||||
retain all their rights. | ||||
This document and the information contained herein are provided on an | Funding for the RFC Editor function is provided by the IETF | |||
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS | Administrative Support Activity (IASA). | |||
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET | ||||
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, | ||||
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE | ||||
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED | ||||
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. | ||||
End of changes. 69 change blocks. | ||||
179 lines changed or deleted | 204 lines changed or added | |||
This html diff was produced by rfcdiff 1.29, available from http://www.levkowetz.com/ietf/tools/rfcdiff/ |