Professional Documents
Culture Documents
AGENDA
IP Routing Overview
EIGRP
OSPF
Path Control
BGP
IPv6
BORDER GATEWAY
PROTOCOL
BGP
Protocol
BGP Basics
Routing protocol to exchange routing information between
different networks
RFC4721
AS (Autonomous System)
Used to uniquely identify networks with a common routing policy
Autonomous System
Collection of networks with
same routing policy
Single routing protocol
Usually under single
ownership, trust and
administrative control.
Identify by a unique AS
Number (ASN)
Ranges
0 65535 Original 16bit range
65536 4294967295 32bit range RFC4893
Usage :
BGP Basics
Characteristics
BGP shares some characteristics with some routing protocols
youve
already studied :
BGP supports VLSM and summarization.
BGP will send full updates when two routers initially become
neighbors and will send only partial updates after that.
BGP does create and maintain neighbor relationships before
exchanging routes, and keepalives are sent to keep this
relationship alive.
BGP States
Idle
Router is searching the routing table to see whether a route exists to reach
the neighbor.
Connect
Open sent
Open confirm Router received agreement on the parameters for establishing a session.
Alternatively, the router goes into active state if no response to open
message
Established
Before establishing a BGP peer connection the two neighbors must perform the
standard TCP three-way handshake and open a TCP connection to port 179.
After the TCP session is established, BGP peers exchanges several messages to
open and confirm connection parameters and to send BGP routing information.
All BGP messages are unicast to the one neighbor over the TCP connection.
The UPDATE messages contain all the information BGP uses to construct a loopfree picture of the internetwork.
Update messages advertises feasible routes, withdrawn routes, or both.
The three basic components of an UPDATE message are:
Network-Layer Reachability Information (NLRI)
Path Attributes
Withdrawn Routes
eBGP vs iBGP
eBGP
RTB: Note that the neighbor commands remote-as value, 100, is different from the
AS number specified by the router bgp command (200).
Because the two AS numbers are different, BGP will start an EBGP connection with RTA.
Communication will occur between autonomous systems.
eBGP vs iBGP
iBGP
Since the remote-as value (200) is the same as RTBs BGP AS number, BGP recognizes that this
connection will occur within AS 200, so it attempts to establish an IBGP session.
In reality, AS 200 is not a remote AS at all; it is the local AS, since both routers live there. But for
simplicity, the keyword remote-as is used when configuring both EBGP and IBGP sessions.
IGP/BGP Models
1. If the path specifies a next hop that is inaccessible, drop the update
2. Prefer the path with the largest weight.
3. If the weights are the same, prefer the path with the largest local preference.
4. If the local preferences are the same, prefer the path that was originated by BGP running on this router.
5. If no route was originated, prefer the route that has the shortest AS_path.
6. If all paths have the same AS_path length, prefer the path with the lowest origin type (where IGP is lower than EGP, and EGP is lower
than Incomplete).
7. If the origin codes are the same, prefer the path with the lowest MED attribute.
8. If the paths have the same MED, prefer the external path over the internal path.
9. If the paths are still the same, prefer the path through the closest IGP neighbor.
10. Prefer the path with the lowest IP address, as specified by the BGP router ID.
BGP configuration commands appear on the surface to mirror the syntax of familiar IGP
(for example, RIP, OSPF) commands.
Although the syntax is similar, the function of these commands is significantly different.
Note: Cisco IOS permits only one BGP process to run at a time, thus, a router cannot
belong to more than one AS.
the router has not installed the BGP routes you expect, you can use
the show ip bgp command to verify that BGP has learned these routes.
RTA#show ip bgp
BGP table version is 3, local router ID is 10.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
* i1.0.0.0
*>i10.1.1.1/32
*>i172.16.1.0/24
* i192.168.1.32/27
Next Hop
192.168.1.6
10.1.1.1
10.1.1.1
192.168.1.6
Route Reflector
Loop avoidance rule : that any route received from an iBGP
neighbor must not be advertised to any other iBGP
neighbor.
iBGP require all router running iBGP should be connected in
logical full mesh topology to allow routing information
propagation through out the network.
Full mesh = not scalable solution for large network.
Two solutions :
BGP Confederations
Route Reflector
Route Reflector
RFC 2796
Route Reflectors
Speaker classification
Route Reflector (RR)
Route Reflector client (client)
Regular iBGP speaker (non-client)
Route Reflector
A route reflector is BGP router that is allowed to break the iBGP loop avoidance rule.
Route reflectors can advertise updates received from an iBGP peer to another iBGP
peer under specific conditions.
By breaking the rules, route reflectors are used to eliminate the full mesh requirement
and allow for building iBGP networks that scale easily and cleanly.
Route Reflector
RR learns prefix from :
eBGP peer:
Advertise to all clients and
non-clients
non-client:
Reflect to all clients
client:
Reflect to all other clients
and to non-clients