BGP: Difference between revisions

10,716 bytes added ,  2 years ago
Line 730:
 
= R&S Quick Notes =
 
When using Communities, don’t forget “neighbor send-community”
* When using Communities, don’t forget “neighbor send-community”
Know your attributes and the direction which applied, when to used what.
* Know your attributes and the direction which applied, when to used what.
“aggregate address” needs a more specific prefix in the BGP table for aggregate to be advertised.
* “aggregate address” needs a more specific prefix in the BGP table for aggregate to be advertised.
Synchronization issue has 3 solutions, 1- Load BGP on all transit routers, 2- GRE tunnel, 3- Redistribution BGP>IGP.
* Synchronization issue has 3 solutions, 1- Load BGP on all transit routers, 2- GRE tunnel, 3- Redistribution BGP>IGP.
“no bgp nexthop trigger” – Disables next-hop tracking between scanner intervals.
* “no bgp nexthop trigger” – Disables next-hop tracking between scanner intervals.
“no bgp fast-ext-fallover” – Force the router to wait for the dead-timer to expire, before generating notification messages , when a connected peer goes down.
* “no bgp fast-ext-fallover” – Force the router to wait for the dead-timer to expire, before generating notification messages , when a connected peer goes down.
“neighbor fall-over” – Will check neighbor connenctivity between scanner intervals, aka BGP Fast Peering.
* “neighbor fall-over” – Will check neighbor connenctivity between scanner intervals, aka BGP Fast Peering.
Only the Holdtime is sent in update-msg. Two neighbors will use the lowest holdtime and then calculate the keepalive from that.
* Only the Holdtime is sent in update-msg. Two neighbors will use the lowest holdtime and then calculate the keepalive from that.
Know your Regular Expressions
* Know your Regular Expressions
Know the difference between Peer-Groups and Peer-Templates
* Know the difference between Peer-Groups and Peer-Templates
 
= BGP Notes 2 =
 
* BGP Synchronization rule -IF the AS is acting transient for other AS routes learn through BGP will not be advertized unless the all the routes learn this routes though IGP.
* If we turned on the synchronisation BGP router will not advertize the route learned from IBGP PEER to EBGP Peer unless that route is learned through IGP.
* Split horizon rule -Routes larn though IBGp nei will not be advertized to other IBGP nei .
* BGP path selection criterion
Route is excluded if next hop is unreachable
hightest wieight
high local pref
route if locally orginated
shortest as path len
prefer lowest origin code (IGP<EGP<Unknown)
lowest MED
ebgp over IBGP
between IBGP closed IGP nei
bet EBGP oldest route
lowest Router ID.
 
* BGP Message types - Keepalive, notification, open, update.
 
* Routes received from a Route-Reflector-client is reflected to other clients and non-client neighbors.So if we have two route reflectors we should also keep in separte clusters ,, to avoide loops .That means that if you have multiple RRs with different cluster ID, optimal path is selected by selecting shorter cluster list. Having multiple RRs in the same cluster creates partial connectivity during failure
 
* The first route reflector also set an additonal BGP attribute called originator id and add it to BGP router -id of client.if any router receive the route which contains its own router id will ignore the route
 
* Confedrations - Breaking As into smaller As so that they can exchange routing updates using intra confedration EBGp Seesion.
but on the intraconfedration EBGP session parmaters for IBGP are still preserved. (like next hop self, metric, preference)
 
* Commands - under BGP process bgp confedration id x.x -Original As
- BGP confederation peers x.x ,y...- Need to specify the the intra confdration with in AS.
 
* MED Vs AS path prepend - MED doesnot goes beyond neibor As while As path prepeend goes beyond that.
* BGP always compare md - compares MED for a path from neighbors in different AS.
* BGP Determinsic-Med -comparison of MEd for a path from differnt Peers advertize in same AS.
 
* BGP conditional advertizement uses two terms advertize-map and non-exist-map, advertize the prefix in adtervertize map only if there is no route in BGPtable defined in non-exist-map.
* BGP conditonal Inject and Exist map -BGP conditional Route injection advertize the specific route defined in inject map from the summary route present in exist map .Its reverse of Aggregation .
* SOO - Site of orgin -is used to prevent routing loops and is used to identify the site from where the route is orginated and does not readvertize same route back to the site .
* SOO is enabled on PE routers - marked the customer prefixes.
* BGP communities are used to TAG the routes and they are used to perform policy routing in upstream router. Community attribute consist of four octets. Inorder to send community
* We need to use send community command under BGP process.
* BGP community are :
Internet: advertise these routes to all neighbors.
Local-as: prevent sending routes outside the local As within the confederation.
No-Advertise: do not advertise this route to any peer, internal or external.
No-Export: do not advertise this route to external BGP peers.
 
* Local AS command can be used in while migration of As - it will genrate BGP open message which is defined in local AS.
* nei x.x.x. local 100 no prepend replace as dual-as.( can be used for remote peer to configue whatever AS no has configured at there side ).
 
* Peers Group -Peer groups are a way of defining templates/groups with settings for neighbor
* Relationships - The same policy that goes to 1 neighbor in the peer group must go to all if it case one neighbor has a slightly different config we do not use peer-group for this neighbor the idea being a group with all required bgp settings and then add the neighbors to this group so they inherit the settings.
* Using BGP peer group one update is sent to peer group instead of individual updates helps in optimisation of updates .Configration makes its simpler.
 
* BGP route relector -Eliminates the need of bgp full mesh ,similar to ospf DR ,BDR elecltion, only peering needs to with RR.
* When RR get the update from its client it sent to other RR and its client .
* Modify the spilt horizon rule .BGP cluster id is used as loop prevention.
* Does not modiy the next hope attributes.
* Route reflectores modify split horizon rule now routes learn through IBGP can be forwarded to other IBGP nei ,route reflectore can do .
* if the client is having IBGP session with multiple routereflectores so each client will receive two copies of all routes.this can create the routing loops to avoid it each route reflector and its client form cluster which is identifed by cluster id which is unique in AS.
* whenver particular route is reflected route reflector router id is added to cluster list attirbute and set cluster id number in cluster -list.if for any reason route is reflected back to route reflectore for some reason it will reconganize cluster id includes its own router id . and will not forward it .
 
* The BGP Link Bandwidth feature used to enable multipath load balancing for external links with unequal bandwidth capacity. This feature is enabled under an IPv4 or VPNv4 address family sessions by entering the bgp dmzlink-bw command. This feature supports both iBGP, eBGP multipath load balancing, and eiBGP multipath load balancing in Multiprotocol Label Switching (MPLS) Virtual Private Networks (VPNs). When this feature is enabled, routes learned from directly connected external neighbor are propagated through the internal BGP (iBGP) network with the bandwidth of the source external link.
 
* The link bandwidth extended community indicates the preference of an autonomous system exit link in terms of bandwidth. This extended community is applied to external links between directly connected eBGP peers by entering the neighbor dmzlink-bw command. The link bandwidth extended community attribute is propagated to iBGP peers when extended community exchange is enabled with the neighbor send-community command.
 
* It should be configured in conjuction with max path command:
bgp dmzlink-bw
neighbor ip-address dmzlink-bw
neighbor ip-address send-community [both | extended | standard
 
* Aggreagate with AS set command - normal aggregation with summary command advertise the summary prefix only and suppress all the specific routes, so router which is performing the aggreagation will include its own AS while sending the update.
*So when Aggreagate with AS set command is used it will include all the AS in updates for summary prefix for those AS route performing the aggregation with AS list, this will prevent routing loop.
 
* Attribute map -can be used to modify the community received in aggregation router to none.(command) MAP. When particular is sending the prefix to router performing aggregation with community like no export attached, Aggregate router will inherit the communtiy and can cause issue to aggregate prefix while propagating, To avoid it we can modifiy the community to none using atrribute map command (aggrgate address x.x.x.x .x.x.x as-set summary only attribute map)
 
* BGP Backdor link - used to modifiy the AD for external route from 20 to 200 so that IGP learned route can be prefered over EBGP.
* Command will be added to router which is learning the prefises from two routing ptotocols .
 
router bgp x.x.x.x
network x.x.x.x mask backdoor
 
= Redistribution from osfp to bgp =
 
* All redistributed routes into bgp takes ad value of BGP ,inorder redistribute all the ospf routes internal ,external (E1&E2) we need to uses redisrtibute ospf process mathc internal external 1 external 2
 
* Redistribution of bgp into Ospf will take metric one ,Reditributio of ospf into BGP take IGP metric
 
* Qos -Each router maintain two queue hardware queue works on FIFO and software queues (LLQ,CBWFQ,Flow based WFq) ,service policy applies only on software queue
 
* Use the tx-ring-limit command to tune the size of the transmit ring to a non-default value (hardware queue is last stop before the packet is transmitted)
 
Note: An exception to these guidelines for LLQ is Frame Relay on the Cisco 7200 router and other non-Route/Switch Processor (RSP) platforms. The original implementation of LLQ over Frame Relay on these platforms did not allow the priority classes to exceed the configured rate during periods of non-congestion. Cisco IOS Software Release 12.2 removes this exception and ensures that non-conforming packets are only dropped if there is congestion. In addition, packets smaller than an FRF.12 fragmentation size are no longer sent through the fragmenting process, reducing CPU utilization.
 
* It's all based upon whether there is or is not congestion on the link.
 
* The priority queue (LLQ) will always be served first, regardless of congestion. It will be both guaranteed bandwidth AND policed if there is congestion. If there is not congestion, you may get more throughput of your priority class traffic.
 
* If the class is underutilized then the bandwidth may get used by other classes. Generally speaking this is harder to quantify than you may think. Because in normal classes, the "bandwidth" command is a minimum of what's guaranteed. So you may get MORE in varying amounts just depending on what is in the queue at any point in time of congestion.
 
* As mentioned before, policers determine whether each packet conforms or exceeds (or, optionally, violates) to the traffic configured policies and take the prescribed action. The action taken can include dropping or re-marking the packet. Conforming traffic is traffic that falls within the rate configured for the policer. Exceeding traffic is traffic that is above the policer rate but still within the burst parameters specified. Violating traffic is traffic that is above both the configured traffic rate and the burst parameters.
 
* An improvement to the single-rate two-color marker/policer algorithm is based on RFC 2697, which details the logic of a single-rate three-color marker.
 
* The single-rate three-color marker/policer uses an algorithm with two token buckets. Any unused tokens in the first bucket are placed in a second token bucket to be used as credits later for temporary bursts that might exceed the CIR. The allowance of tokens placed in this second bucket is called the excess burst (Be), and this number of tokens is placed in the bucket when Bc is full. When the Bc is not full, the second bucket contains the unused tokens. The Be is the maximum number of bits that can exceed the burst siz
 
=LAB=