Actually the fully-meshed RR's actually do "reflect" routes to each other.
They are still breaking the iBGP to iBGP rule, they're just exercising the 
"client to non-client" rule in 2) when "relying" route from a local cluster to 
RRs in other clusters and in turn those RRs in other clusters then employ the " 
non-client to client" in 1) to "relay" the route to their local-cluster clients:
1) A route from a Non-Client IBGP peer:
         Reflect to all the Clients.
2) A route from a Client peer:
         Reflect to all the Non-Client peers and also to the Client
         peers.  (Hence the Client peers are not required to be fully
         meshed.)
-But I see what you mean it's not client-to-client reflection -that happens 
only between clients within each individual local cluster.
CtoC---CtoNC--NCtoC  
C---->RR---->RR---->C
            |
C<----+


Anyways I understand your design choice and it makes sense in your environment 
as your iBGP infrastructure currently carries a single copy of the DFZ routing 
table and there's most likely some path-hiding going on as RRs are employed in 
best path selection process and on top of that there are plethora of resources 
on RRs, so I agree there's no need to deploy any scaling tuning as it would be 
just added complexity with no perceived benefit. 
Maybe you might start looking at some scaling techniques when you'll have a 
need to transport multiple paths for a prefix for load-sharing or 
primary-backup use cases, say to reduce internet convergence times form 2 mins 
down to less than 1ms (MX with 2M prefixes). 


adam

netconsultings.com
::carrier-class solutions for the telecommunications industry::

From: Mark Tinka [mailto:[email protected]] 
Sent: Tuesday, March 13, 2018 11:29 PM
To: [email protected]; 'Saku Ytti'
Cc: 'Job Snijders'; 'Cisco Network Service Providers'
Subject: Re: [c-nsp] IOS-XR BGP RR MCID (Multiple Cluster ID)


On 13/Mar/18 18:47, [email protected] wrote:
Ok you’re still missing the point, let me ty with the following example. 

Now suppose we both have: 
pe1-cluster-1 sending prefix X to rr1-cluster1 and rr2-cluster1 and these are 
then reflecting it further to RRs in cluster2

Okay, so just to be pedantic, fully-meshed RR's don't "reflect" routes to each 
other (they can, but it's redundant). 

But I get what you're trying to say...



Now in your case: 
rr1-cluster2 receives prefix X from both rr1-cluster1 and rr2cluster1 –so how 
may paths will it keep? yes 2
rr2-cluster2 receives prefix X from both rr1-cluster1 and rr2cluster1 –so how 
may paths will it keep? yes 2

In my case:
rr1-cluster2 receives prefix X from rr1-cluster1 –so how may paths will it 
keep, yes 1
rr2-cluster2 receives prefix X from rr2-cluster1 –so how may paths will it 
keep, yes 1

Yes, understood.

So in our case, we are happy to hold several more paths this way within our RR 
infrastructure in exchange for a standard, simple configuration, i.e., a 
full-mesh amongst all RR's.

Having to design RR's such that RR1-Cluster-A only peers with RR1-Cluster-B_Z, 
rinse repeat for RR2-* is just operational complexity that requires too much 
tracking. Running the network is hard enough as it is.

We are taking full advantage of the processing and memory power we have on our 
x86 platforms to run our RR's. We don't have the typical constraints associated 
with purpose-built routers configured as RR's. It's been a long time since I 
had dedicated Juniper M120's running as RR's - I'm never going back to those 
days :-).

Mark.

_______________________________________________
cisco-nsp mailing list  [email protected]
https://puck.nether.net/mailman/listinfo/cisco-nsp
archive at http://puck.nether.net/pipermail/cisco-nsp/

Reply via email to