BGP Border Gateway Protocol e Book 1
BGP Border Gateway Protocol e Book 1
•
•
Economics
EBGP Multipath, IBGP Multipath and EIBGP Multipath
out
Inter domain routing – Settlement Free Peering, Partial
Peering, Remote Peering and IP Transit
•
•
BGP Route Servers and the Looking Glasses
ISP Tiers – Tier 1 , 2 , 3 Type Providers lin
e
Cisco Certified Design Expert Practical Exam v2.0 www.orhanergun.net
•
Controller
BGP RTBH , Source and Destination based Remotely out
Triggered Blackholing and Scrubbing for DDOS mitigation
•
with BGP
BGP Flowspec – RFC 5575
lin
e
Cisco Certified Design Expert Practical Exam v2.0 www.orhanergun.net
lin
BGP Information Security - Sub-Prefix Hijacking, Exact
Prefix Hijacking , IP Squatting , Path-Shortening, Prefix
Filters, IRR , RPSL , RPKI – Resource Public Key
Infrastructure, PeeringDB, BGPSEC , Origin and Path
Validation, AS-Cones , ASPA
e
Cisco Certified Design Expert Practical Exam v2.0 www.orhanergun.net
e
BGP – Border Gateway Protocol Basics
Why BGP ?
• BGP is the most scalable routing protocol and considered as very robust
as it runs over TCP and TCP is inherently reliable
• BGP is a multi protocol , with the new NLRI it can carry many address
families. Today almost a 20 different NLRI is carried over BGP. New AFI,
SAFI is defined for the new address families
(https://orhanergun.net/tag/multi-protocol-bgp/)
BGP – Border Gateway Protocol Basics
Autonomous System
• EBGP and IBGP are our main focus. If the BGP connection
between two different Autonomous Systems, it is called EBGP
(External BGP).
• Unlike IGP protocols, BGP doesn’t use link metrics for the best path
selection. Instead it uses many attributes for the best path selection. This
allows creating complex BGP policies
• In fact IGPs don’t support traffic engineering like the BGP does
BGP Best Path Selection
• BGP path vector protocol which has many similarities with the Distance Vector
protocols such as EIGRP
• For example in EBGP and IBGP, always one best path is chosen and placed in the
Routing table, this path is advertised to the other BGP neighbor. This might create
sub optimal routing design or slow BGP convergence as we will see later in the BGP
course
• There might be vendor specific attributes such as Weight attribute. Also there are
some intermediary steps which is not used commonly. Below is the BGP best path
selection criteria list
BGP best path selection steps
• Weight
• Local Preference
• As-Path
• Origin
• MED
• Multipath
• Local Preference is used to send traffic on outbound direction. When prefixes are
received from BGP neighbor, default local preference value is 100
• Local preference value can be changed, higher local preference value is preferred to
lower value
• If same prefix is received from two BGP neighbors, neighbor which has higher local
preference value is chosen by BGP as a best path and used to send traffic from
Autonomous System to the other Autonomous Systems
• For incoming traffic from other Autonomous Systems to Local Autonomous
System, BGP MED Attribute, AS-Path Prepending and Community Attribute
techniques can be used
• Until BMP, information about BGP session was received with CLI which can
be a CPU intensive
• BMP is an automated way of collecting the BGP data from the routers
BMP - BGP Monitoring Protocol
• BMP client (monitored router) peers with several BGP speaking routers (BGP
peers). The BMP client establishes a monitoring session to one or more BMP
collectors (monitoring devices)
• The client encapsulates BGP messages from one or more BGP peers into a
single TCP stream to one or more BMP collectors
• BMP also provides a periodic dump of statistics that can be used for further
analysis
BMP - BGP Monitoring Protocol
• When a TCP connection is established, BMP messages are being sent from
the BMP client to a BMP collector
• Peer down notification, including a code indicating why the peer went down
• Peer up notification
What you cannot do with BMP?
• You can’t see why routes didn’t win the best path selection
• There are two drafts in IETF as BMP extension, one is for Outgoing routes
(Adj-RIB-OUT) and another for best BGP routes (Loc-RIB)
EBGP
• EBGP is used between two different Autonomous Systems, loop prevention in EBGP is
done by the AS Path attribute, that’s why it is a mandatory BGP attribute
• If BGP node sees its own AS Path in the incoming BGP update message, BGP message is
rejected
EBGP
EBGP Traffic Engineering
• BGP traffic engineering is to send and receive the network traffic based on customer
business and technical requirements
• For example link capacities might be different, one link might be more stable than the
other, or monetary costs of the links might be different
• In all these cases , customer may want to optimize their incoming and outgoing traffic
EBGP Traffic Engineering
• Outbound Traffic Engineering: Refers sending the traffic from Local AS to the
other Autonomous Systems from one of the many paths or sending specific
application/services traffic to other AS from any path
• For the BGP outgoing traffic, commonly, local preference attribute is used
EBGP Outbound Traffic Engineering
AS 65000 has two paths to AS1, by increasing Local Preference on one of the links,
AS 65000 sends all outbound traffic from the AS over that path
EBGP Outbound Traffic Engineering
• BGP weight attribute can be used for the outgoing traffic engineering as well
but don’t forget that it is local to the router which mean is not propagated
between the IBGP neighbors and it is Cisco preparatory, no vendor
interoperability
GAO – Rexford Model
• Service Providers chooses to send the traffic for their customer prefixes over
the customer link first, then peering links, lastly through upstream ISP.
Because they want to utilize the customer link as much as possible to charge
more money
• Utilizing Customer link can generate revenue , Settlement Free Peering Link or
Upstream ISP link usage cost money, thus technical solution provided by GAO
and Rexford is used to realize this business requirement
GAO – Rexford Model
• Basic local preference policy could be; Local Preference 100 towards
Customer, local Preference 90 towards peering link and Local Preference 80
towards upstream ISP
GAO – Rexford Model
EBGP Inbound Traffic Engineering
2. AS-Path prepending
• Creating an inter domain policy with the MED attribute is not a good
practice
• As per RFC 4451 – BGP MED Considerations : BGP speakers often derive
MED values by obtaining the IGP metric associated with reaching a given
BGP NEXT_HOP within the local AS. This allows MEDs to reasonably reflect
IGP topologies when advertising routes to peers. While this is fine when
comparing MEDs between multiple paths learned from a single AS, it can
result in potentially "weighted" decisions when comparing MEDs between
different autonomous systems.
• This is most typically the case when the autonomous systems use different
mechanisms to derive IGP metrics for BGP MEDs, or when they perhaps
even use different IGP protocols with vastly contrasting metric spaces (e.g.,
OSPF vs. traditional metric space in IS-IS)
EBGP Inbound Traffic Engineering with AS-Path Prepending
• Customer AS 20 is connected to
two Service Providers. Customer is
sending 10.0.10.0/24 prefix to both
ISP
There are some challenges with BGP as-path • You might think that link from AS 30
prepending when it is used in multi-homed won’t be used anymore so it will be
BGP setup used as backup. But that's not
totally true !
AS-Path Prepending will not work in some cases for EBGP Inbound Traffic
Engineering !
.
AS-Path Prepending will not work in some cases for EBGP Inbound Traffic Engineering !
• AS 20 sends
10.0.10.0/24 prefix with
the BGP community
which changes local
preference value of AS
30, link between
customer and AS 30 is
not used anymore.
• As an example AS 20
could send the
community as 30:70
which reduces the Local
Preference to 70 for the
AS 20 prefixes over the
customer BGP session,
Instead of prepending AS,BGP community AS 30 would start to use
attribute technique should be used instead of BGP peer link to reach to
prepending AS, if the topology is multi homed 10.0.10.0/24 prefix
BGP!
EBGP Inbound Traffic Engineering with Community Attribute
• Community attribute is sent over the BGP session between BGP Peers. Upon
receiving the prefixes BGP peer can take an action for their predefined
communities
• ISPs publish their supported community attribute values. For example they
can say that if my customer send the prefixes with the attached 5000:110
community I will apply Local preference 110 towards that circuit.
• BGP by default installs only single path in IBGP and EBGP deployment
• If prefixes is learned via multiple path, BGP supports multipath for IBGP ,
EBGP or across both IBGP and EBGP via EIBGP Multipath feature
AS 200 AS 200
NH1 NH2
AS 100
Two different AS requires ‘ multipath-relax ‘
192.168.0.0/24
AS 400
AS 200 AS 300
NH1 NH2
AS 100
“bgp bestpath as-path multipath-relax”
IBGP Multipath
AS 200
192.168.0.0/24
AS 100 AS 100
NH1 NH2
192.168.0.0./24 NH1
NH2
AS 100
EIBGP Multipath
• BGP Best path selection algorithm prefers EBGP paths over IBGP paths
• This prevents having both IBGP and EBGP prefixes to be installed in the
routing table at the same time
• EIBGP multipath feature allows same prefix to be installed both with IBGP
and EBGP next hops
EIBGP Multipath
AS 200
192.168.0.0/24
AS 100 AS 100
192.168.0.0./24 AS 200 EBGP
AS 100 IBGP
NH1 NH2
AS 100
EIBGP Multipath
• EIBGP Multipath feature can create routing loop , that is why important to
understand it from design point of view
• Provider – Typically someone you pay money to, who has the responsibility
of routing your packets to/from the entire Internet
• Customer – Typically someone who pays you money, with the expectation
that you will route their packets to/from the entire Internet
• Peers – Two networks who get together and agree to exchange traffic
between each others’ networks, typically for free. There are two types of
peering in general , Private and Public which will be explained later
Settlement Free Peering
• If there is big amount of traffic between two networks, private peering makes
more sense than public peering (Avoid some extra hops/network devices)
Private Peering
• Private peering can be setup inside Internet Exchange Point as well (Internet
Exchange Point will be explained)
• Larger companies generally use Private peering rather than Public peering
since they want to select who they are going to be peer with and the amount
of traffic between them is large, they don’t want to exchange traffic with
everyone by joining to the Public Peering
Public BGP Peering
• Typically, public peering is done at the Internet Exchange Point. BGP Route
servers are used in public peering to improve scalability
• BGP Route Server is used at the Internet Exchange Point to simplify BGP
Peering process. Instead of managing, maintaining hundreds of Peering
sessions in large Internet Exchange Point, BGP Route Server is used
• Every BGP speaking router has a BGP session with BGP Route Server
• Route Server doesn’t change the BGP Attributes, although the type of BGP
Peering session is EBGP (Similar to Route Reflector in IBGP)
BGP Route Server
BGP Route Server
• BGP Route Server doesn’t change the next-hop to itself, thus it is used only
as a Control Plane device, not a Data Plane. Which means, actual traffic is
passed between the companies that participant to the Public Peering Internet
Exchange Point , traffic doesn’t go through the Route Server
• When two networks negotiate with each other and establish a peering session
directly, this is called Bilateral Peering. Generally done when there is a big
amount of traffic between two networks
• Also Tier 1 Operators just do Bilateral peering as they don’t want to peer with
anyone other than other Tier 1 Operators. Rest of the companies are their
potential customers, not their peers
Multilateral Peering
• Bilateral peering offers the most control, but some networks with very open
peering policies may wish to simplify the process, and simply “connect with
everyone”. To help facilitate this, many Exchange Points offer “multilateral
peering exchanges”, or an “MLPE”
• Basically, Public Peering and MLPE is almost the same thing and used mostly
interchangeably
Looking Glass
• Reduced operating cost: A transit provider is not being paid to deliver some
portion of your traffic. Peering traffic is free!
• Almost every country has Internet Exchange Point where Service Providers,
Content Networks, CDNs, Enterprises, Mobile Operators, Carriers, TLD (Top
Level Domains) and Root DNS Servers can meet
What is IXP (Internet Exchange Point)?
• A layer 2 network where multiple network entities meet, for the purposes of
interconnection and exchanging traffic with one another
• Internet Exchange Points start with a single Layer 2 switch at one location.
Networks peer with each other in this facility
• When the number of participant grows, more switches are added at that
location and more locations are added to the IXP itself. For example, AMS-IX
in Netherlands have many places, inside many Datacenters and each
Datacenter they have more than one switch for the Settlement Free
Interconnection
What is IXP (Internet Exchange Point)?
• Today most Exchange Points are Ethernet based LANs, where all
members sharing a common broadcast domain, and each member is
given a single IP per router out of a common IP block (such as a /24)
• Most of the IXPs in the World in Europe. There are many IXP in North
America as well
• IXPs in the Europe work mainly based on Membership model, IXPs in the U.S
work based on Commercial model. There are exceptions in each case though
• Tier 1 Service Provider is a network which does not purchase transit from any
other network and peers with every other Tier 1 network to maintain global
reachability
• Tier 2 Service Provider is a network with transit customers and some peering,
but still buys full transit to reach some portion of the Internet
Tier 2 ISP and its Connections
Tier 3 ISP
• A Tier 1 ISP is an ISP that has access to the entire Internet Region solely via
its settlement free peering relationship
• Tier 1 ISPs only peer with other Tier 1 ISPs and sometimes with CDN and the
Search Engines. They don’t have any Transit ISP but they are the top tier ISP
Tier 1 ISP and its Connections
Who are Global Tier 1 ISPs in the World?
• As of 2016, there are 13 Tier 1 ISP which don’t have any transit provider
• Baker’s Dozen is considered as Tier 1 ISP List and every year list is updated
with the ISP ranking. List is provided by measuring the Transit IP Space of
each ISP
2016 Baker’s Dozen Tier 1 ISP Rankings
IP Transit
• It’s also known as Internet Transit. ISPs simply connect their network to their
Transit Provider and pay the Transit Provider, which will do the rest
Selling an IP Transit Service in the IXP
• BGP is a policy based protocol and we use inbound and outbound filters
with the attributes. BGP updates are kept in many different places in the
router.
• BGP RIB which is routing table of BGP , RIB which is a router’s general
routing table created by all the routing protocols , FIB which is a
forwarding table which is data plane
BGP Soft Reconfiguration and Route Refresh
• In addition to BGP RIB, BGP uses adjacency RIB-IN and RIB-OUT databases in
the Routers
• All the prefixes from the remote BGP neighbor is placed in the BGP RIB-IN
database first.
BGP Soft Reconfiguration and Route Refresh
BGP Soft Reconfiguration and Route Refresh
• That's why if BGP soft reconfiguration inbound is enabled, even if you filter the
prefixes after receiving from the neighboring BGP device , you can still reach
them for maybe troubleshooting purposes
• But obviously this is memory intensive since you keep those prefixes in
BGP RIB-IN database in addition to BGP RIB database
• BGP Route refresh works in a different way to accomplish the same task.
Still filter is applied for the incoming or outgoing prefixes
BGP Soft Reconfiguration and Route Refresh
• With Route Refresh, you don’t keep the prefixes in the separate databases
• You either take them into BGP RIB database or ignore entirely after filtering
• This rule is not required in EBGP because routing loop prevention is done
by checking the AS number in the AS path in EBGP. In IBGP, AS number
is not sent between the BGP neighbors
• Route reflectors and confederations can be used to reduce the sessions on each
router. Number of sessions and configuration can be reduced by the route
reflectors and confederations but they both have important design considerations
• Confederations give the ability to have ebgp rules between Sub-ASes. Also inside
each Sub-AS, different IGP can be used. Also merging company’s scenarios is
easier with Confederation than Route Reflectors
BGP Route Reflectors
• There are many design caveats when BGP RR is used, most important ones
are BGP RR can create sub optimal routing, increases convergence time,
reduces redundancy
BGP RR Creates Logical Hub and Spoke Topology
• It creates a logical Hub and Spoke Topology. Each BGP RR Client has a BGP
session with only BGP RR, not with each other.
• Thus Full Mesh IBGP topology become Hub and Spoke IBGP Topology with
BGP RR
BGP RR Path Selection and Distribution
• Route reflectors choose the best path to the exit point based on their
perspective, and not the client’s perspective.
• A path to the exit point of the network for a certain prefix can be optimal for
the Route Reflector based on its lowest IGP metric to the exit point, but this
might not be true from the client’s perspective.
• Route Reflectors only advertise one path as their best path for a prefix and
don’t advertise any other paths to their clients.
BGP RR Sub-optimal Routing
• This is because the Route Reflector client will not have all the available routes
and it cannot compare the IGP metric of every path in order to determine the
shortest path.
BGP RR Sub-optimal Routing
• This might not be the best path according to the client’s point
of view.
• RRs run best path algorithm and advertise only one update to
their clients, which may result in suboptimal routing.
• Route Reflectors use the same best-path selection process as normal BGP speakers do. When
receiving the same prefix coming from multiple peers, the tiebreaker decision process is done:
• Highest LOCAL_PREF
• Shortest AS-Path
• Lowest MED
• Path with the lowest IGP metric to the BGP next hop
• If all the steps before the 7th step are equal, then step 7 will be the deciding
factor for the best path for the Route Reflector. So, the preferred path will be
the lowest IGP metric to the BGP next hop.
• By default, Route Reflector’s only advertise the best path to their clients, so in
case of the tiebreaker explained above, the traffic will be send to the exit point
with the lowest cost/shortest path possible.
In-band vs. Out-band (Inline vs. Offline) BGP RR for Optimal
Routing
• In-band Route Reflectors usually have better view of the IGP topology of the
network than out-of-band Route Reflectors, so they can advertise better
optimal best paths to their clients
• Centralized BGP Route Reflectors can be used together with BGP ORR
(Optimal Route Reflection) to provide optimal routing for RR Clients
Centralized BGP RR Design
Centralized BGP RR Design
In Centralized RR Design, even though there are Internet exit from East and West Region as well, all Internal
routers use North Region Internet connectivity as RR’s point of view North Region Internet Gateways have
lowest IGP cost
Distributed BGP RR Design
Distributed BGP RR Design
BGP Route Reflector Cluster
• Route reflectors create a hub and spoke topology from the control
plane standpoint. RR is the hub and the clients are the spokes.
• Using same BGP Cluster ID is good for resource consumption but bad for fast
convergence
Changing the BGP Route Reflector Behavior via BGP Shadow
RR and BGP Add-Path
• If you want to send more than one best path by the BGP Route Reflectors
for multi pathing or fast reroute purpose then below are the approaches.
• Unique RD per VRF per PE. Unique Route Distinguisher is used per VRF
per PE. No need, Add-Path, Shadow RRs, Diverse Paths. But only
applicable in MPLS VPNs.
• BGP Add-Path
Shadow Route reflectors; you have two Route reflectors, one route reflector sends best path, second one calculate the second best and
sends the second best path.
BGP SHADOW ROUTE REFLECTORS
• In IBGP, if multiple paths are sent over the same BGP session, last one is
kept by the receiving BGP speaker, because for the first one implicit
withdrawn is sent, if route is completely gone then BGP Explicit withdrawn is
sent
• With Add-Path, withdrawn is not sent thus receiving BGP router keeps all the
paths and can make a best path selection based on its own view
BGP Add-Path
BGP Route Reflector behavior in MPLS VPN
Using Unique RD per VRF per PE Approach
• When VPN RR receives the prefixes, since there will be unique VPN prefix for
the same customer prefix, RR doesn’t perform best path selection, it reflects
both prefixes with their own next hops
BGP Route Reflector behavior in MPLS VPN
Using Unique RD per VRF per PE Approach
Comparison between BGP Add-path, Shadow RR, Shadow Sessions
and Unique RD per VRF per PE
BGP RR Benefits
• BGP Route Reflector reduces the total number of BGP sessions in the
network and also reduces the number of BGP session per router
• Route Reflector hides the available paths. This is benefit for some networks,
problem for the others
• BGP RR provides RBAC Opportunity, Low level engineers can maintain the
RR Client and only Advanced level engineers can touch the Route Reflectors
BGP RR Problems
• Improved Path Diversity is another benefit from this solution, which can bring
effective BGP level load and fast connectivity restoration (ex. BGP PIC -
Prefix Independent Convergence for faster convergence-FRR)
Memory consumption on the edge devices with BGP Add-
Path
• By expanding the network to more exit point peering connections, which can
result in getting same routes from more peers (especially when receiving full
routing tables)
• More paths and lots of updates are advertised to clients, so the number of
BGP announcements will increase for Route Reflector clients, which might
lead to significant memory problems on the edge devices.
• Introducing a large number of BGP states to all routers will create a lot of
entry on the Route Reflector clients BGP Table. Some clients might not
support Add-Path, others that support, might not have enough capacity.
How can optimal routing with BGP can be guaranteed?
• If all available next hops won’t be advertise how can optimality can be
guaranteed?
• Optimal Route Reflection is a IETF Draft but there are many vendor
implementation as of 2019
• Based on this solution, the RR will do the optimal path selection based on
each client’s point of view. It runs SPF calculation with their clients as the root
of the tree and calculates the cost to the BGP next-hop based on this view
BGP Optimal Route Reflection – BGP ORR
• From the logical point of view, the Route Reflector position is virtualized,
making it independent of its RR-Clients
• With ORR Route Reflectors location would be independent from the selection
process of the best-path. Each ingress BGP border router can have a different
exit point to the transit providers, for the same prefix for example
BGP Optimal Route Reflection – BGP ORR
Requirements for BGP ORR
• Link-state routing protocol is required in the network for the Route Reflectors
to have a complete view of the network topology based on the IGP
perspective. No changes are required to be done by the clients
• ORR is applicable only when BGP path selection algorithm is based on IGP
metric to BGP next hop, so the path will be the lowest metric for getting the
Internet traffic out of the network as soon as possible
BGP ORR is not an Alternative but Complementary to the
BGP Add-Path
• ORR can be used together with ADD-PATH to improve the quality of multiple
advertisements, to propagate the route that can be the best path. Also, it can
add resiliency and faster re-convergence for the network. For example, by
receiving 4 paths from exit point peers across the network, it will choose the
best path plus the 3 other paths based on the IGP cost. So, it’s a true way to
add resiliency through add-path
How BGP ORR Works?
• With ORR, at the 1st step, the topology data is acquired via ISIS, OSPF, or
BGP-LS. The Route Reflector will then have the entire IGP Topology, so it
can run its own computations (SPF) with the client as the root. There could be
as many rSPF (Reverse SPF) run based on the number of RR clients, which
can increase the CPU load on the RR
• So, a separate RIB for each of the clients/groups of clients is kept by the RR.
BGP NLRI and next-hop changes trigger ORR SPF calculations. Based on
each next-hop change, the SPF calculation is triggered on the Route Reflector
How BGP ORR Works?
• The Route Reflectors should have complete IGP view of the network topology
for ORR, so a link-state routing protocol is required to be used in the network.
OSPF/IS-IS can be used to build the IGP topology information
• Route Reflectors keeps track of which route it has sent to each client, so it
can resend a new route based on changes in the network topology (BGP/IGP
changes reachability). The Route Reflector function is 1 process per route but
the ORR function is 1 process per route per client router
• ORR brings the flexibility to place the Route Reflector anywhere in the
topology, which provides Hot Potato Routing, supports resiliency via ORR
Groups, requires no support from clients and finally brings much better output
when is used with ADD-PATH
Different types of ORR (Optimal Route Reflection)
Deployments
• Optimal BGP path selection is done Based on the Client’s IGP Perspective,
and not the RR’s IGP perspective. To reduce the SPF calculation overhead
on the RR, Optimization such as partial and incremental SPF can be used
2. Optimal BGP Path Selection Based on Policy
• This solution is based on User Defined Policy. The clients will always send
traffic to a specific exit point of the network regardless of how the topology
looks like
• For example, one of the Policy methods can be using for the customers who
pay more and gets SLA (Can be classified and marked with BGP
Communities), so the traffic can be sent to particular Internet region and
particular Transit Operator, instead of doing Hot Potato routing
Same or Different BGP RR for Different Services
(Different BGP Address Families)
• For the different address families, different set of Route reflectors can be used, this
avoids fate sharing
For example if IPv4 RR is attacked, VPN customers may not be impacted if different sets
of RR is used
Route Target (RT) Constraints
• If you are using VPN Route reflectors , you can use multiple Route reflectors
for different prefixes if scalability is a concern
• Based on Route Targets, we can use Route Reflector Group-1 to serve odd
Route Target values, Route Reflector Group-2 to serve even Route target
values
Route Target (RT) Constraints
• In this solution PEs send all the RT values to both Route Reflector Groups.
They receive and process all the prefixes but based on odd/even ownership
they filter the unwanted ones. But processing the prefixes which will be filtered
anyway is not efficient way
• RR sends to the clients the prefixes which are asked with the RT values send
to them by the clients
BGP Confederations
• RFC 5065 describes the use of Autonomous System Confederations for BGP
• BGP confederations help with this scalability issue by allowing the engineer to
subdivide the autonomous system into smaller sub-autonomous systems
• BGP routers in different sub-AS are EBGP peers which means that the AS
number is prepended when an update travels between the sub-AS
• If a router has to send an update towards its IBGP neighbor within a sub-AS,
it will not change the AS_PATH attribute
• EBGP routes that are exchanged between the sub-ASs are also known
as confederation external routes, which are preferred over IBGP routes when
it comes to best path selection
• If BGP has to choose between two paths to the same destination, one path
leading inside the sub-AS, and another outside the sub-AS but within
confederation, it will choose the external path – towards the neighboring sub-
AS.
• If it has to choose between confederation EBGP route and EBGP route that
leads outside the confederation, BGP will choose the second one
BGP Confederation Route Preference – Best Path Selection
If same prefix learned over real EBGP , intra-confederation EBGP and IBGP
within sub-AS, preference will be:
• Between Confederation EBGP and Real EBGP, there are some differences
• With BGP confederation EBGP session, MED, local preference and the next-
hop are sent unmodified, this is similar to how IBGP works, but AS-Path
attribute is changed
How BGP Confederation Works
• Because the next-hop is sent unchanged, either an IGP needs to run across
the entire confederation or the border routers need to set the next-hop to
themselves
BGP Confederation
How BGP Confederation Works
• To make it appear as one AS to all real EBGP peers, the sub-AS in the AS
path need to be stripped when sending updates to its peers
• For example prefixes can be sent between the BGP peers within sub-AS with
the NO_EXPORT_SUBCONFED community and policy can be distributed
within the sub-AS but not outside the sub-AS
BGP Confederation Routing Loop Avoidance
Drivers
• Some devices cannot manage receiving the route from multiple next hops
• Less number of devices to touch when New BGP routers are added to the
network
Full mesh IBGP to RR Migration
Preparation Steps:
• Verify that BGP next hops are reachable via IGP ( Example Loopbacks)
Preparation Steps:
BEFORE AFTER
Migration Procedure
• In this case, Core Routers are selected as an RR, they are migrated first
• First migrate the Core routers that will become Route Reflectors and then
migrate RR client routers one at a time
• In order to do this, one of the two Core routers advertise into the IGP that it
shouldn’t be used as a Transit (OSPF Max-metric , IS-IS Overload)
Full mesh IBGP to RR Migration
• When all edge BGP routers (RR Clients) are migrated to both of the RRs,
their full mesh IBGP sessions should be removed
• After removing the Full Mesh IBGP sessions, BGP reachability to the prefixes
should be verified again
BGP – IGP Interactions
• When BGP and MPLS is used together, generally it is used for VPN services
• It was specified first in RFC 3107 ‘ Carrying Label Information in BGP-4 ‘ and
then updated with RFC 8277
BGP Labeled Unicast (BGP LU)
• With BGP LU , BGP sends the IPv4 prefix + Label (Address Family Identifier
(AFI) 1 and Subsequent Address Family Identifier (SAFI) 4) , which is different
than sending a Label for the VPN prefix (Ex: MPLS L3 VPN)
• RSVP-TE have been providing resource allocation and provide an LSP with
the distributed path computation algorithm (CSPF) since decades
• In order to overcome Bin Packing , Dead Lock or Network wide optimal traffic
engineering, centralized controllers have been used for a long time
• It requires Link State and Traffic Engineering attributes such as Link coloring ,
SRLG , reserved bandwidth etc., from the network
• Link state IGP protocols (OSPF, IS-IS) can be used for this purpose but they
are considered chatty and non-scalable
BGP LS (Link State and TE Information Distribution using
BGP
• Monetary cost , latency and packet loss are important parameters for the
Quality of User Experience and Traffic Engineering can be done by optimizing
any of the above parameters
• BGP NLRIs don’t provide the information about the cost, latency or loss of the
path or exit point for the destinations
BGP EPE (Egress Peer Engineering)
• The selection of the best exit link for a given destination prefix selection and
the enforcement of this selection on a network is not simple task. This is
because the decision for one prefix might impact other traffic by changing the
utilization of the NNI link and potentially leading to overload
• This traditional technique provides some level of flexibility and control on how
traffic leaves the SP and AS
• However, it is also limited by the BGP path selection algorithm and the fact
that the results apply to all traffic for given prefix, regardless of the traffic’s
origin (Doesn’t matter which Ingress ASBR sends the traffic)
Traditional EPE Example
Prefix : 8.8.8.8
Egress ASBR 1 NNI 2.1
Ingress ASBR 1 AS2
NNI 2.2
Ingress ASBR 2 AS1
NNI 3.1
Egress ASBR 2
AS3
Ingress ASBR 3
Modern – Better way of EPE
• If EPE had the ability to distribute traffic among several egress links based not
only on destination address, but also by considering the ingress ASBR (or
ingress port etc.), this would provide much finer granularity and also
bandwidth management
• This would be especially true if EPE were combined with traffic statistics and
centralized optimization
Modern – Better way of EPE
• The EPE solution should direct traffic for a given prefix that enters the network
on a particular Ingress ASBR to a particular egress NNI (Egress Link) on a
particular Egress ASBR
Modern – Better way of EPE
Better Policy for utilization of both internal and inter-domain resources (NNI
Bandwidth etc.) can be as follows for AS 1
Egress ASBR 1
Prefix : 8.8.8.8
NNI 2.1
Ingress ASBR 1 AS2
NNI 2.2
Ingress ASBR 2 AS1
NNI 3.1
• The utilization data for each of NNI. This data is provided by traditional or
modern telemetry infrastructure (for example, SNMP interface statistics)
• The fine-grain partitioning of egress traffic into “flows” with information about
the traffic volume carried by each
EPE CONTROLLER
Egress ASBR 1
Prefix : 8.8.8.8
NNI 2.1
Ingress ASBR 1 AS2
NNI 2.2
Ingress ASBR 2 AS1
NNI 3.1
• Remotely triggered blackholing is used for DDOS prevention for a long time
• According to NBC News article, More than 40% of DDOS Attacks cost $1
million per day
BGP RTBH (Remotely Triggered Blackholing)
• With this technique, SP and the Customer agree on the discard community
Destination BGP RTBH (Remotely Triggered Blackholing)
• When there is an attack to the server, victim (customer) send the server prefix
with the previously agreed community value
• When SP receives the update with that community, action is set to next hop to
null, so packet is dropped before reaching to the customer link
Destination BGP RTBH (Remotely Triggered Blackholing)
Null Route
Prefix 1.1.1.1
Community X:X
• Problem with this attack, server will not be reachable from the legitimate
sources too
• Also customer might change the IP address of the attacked server in DNS,
which might take time to propagate this though
Destination BGP RTBH (Remotely Triggered Blackholing)
• By combining uRPF and discard route (null route) configuration, based on the
attack source, DDOS is mitigated (In theory)
uRPF and S/RTBH
• There are four types of uRPF : Strict, Loose , Feasible Path and VRF mode
Strict and Loose Mode uRPF
• If source is reachable via any route in the routing table then it is forwarded,
otherwise packet is dropped, this mode is called Loose mode uRPF
Strict and Loose Mode uRPF
• For Multihomed customers, traffic can come from different interfaces, thus
uRPF Loose mode should be used
• For Source Based RTBH, Source addresses are injected into the BGP and
with uRPF check traffic is sent to the blackhole (Null)
Strict and Loose Mode uRPF
• BGP Injector Machine is used to quickly detect source addresses and placed
into BGP
• Type 3 : IP Protocol
• When validated, firewall filter is created based on match and action criteria
BGP Flowspec Matching Fields
• Type 11 : DSCP
• Remarking
• BGP Flowspec can filter the traffic based on many other fields in the IP Packet
, still provides same level of automation as RTBH
• Automation means, distributing the filtering policy rules to the edge nodes in
the network, based on the matching criteria
How BGP Flowspec Works?
Flowspec announcement
For UDP/Port 53 Only
• With BGP Flowspec, customer can initiate the filtering rules by advertising
flowspec routes , saying to the SP that filter UDP port 53 for their specific IP
address
• BGP Session Culling minimizes the amount of disruption that lower- layer
network maintenance activities cause, by making BGP speakers preemptively
converge onto alternative paths while the lower-layer network's forwarding
plane remains fully operational
BGP Session
Culling
There are two paths between ISP1 and
ISP2
Two EBGP sessions are created
between two operators
EBGP Session
The ACL causes that BGP Hold timer expires, ISP 1 ISP 2
BGP sessions are culled down and end-user
traffic can be rerouted over alternative paths.
Afterwards maintenance is commenced.
IXP SW 3 IXP SW 4
EBGP Session
BGP Session Culling Alternatives
BGP Session Culling is described as Involuntary BGP Session Teardown technique in the RFC
8327. Lower layer network operator , such as IXP , cannot access to the IXP member routers ,
thus cannot bring the BGP session down which would help to avoid dataplane traffic loss
Alternative to Involuntary BGP Session Teardown, BGP Session can be teardown voluntarily. In
this case, ISP shutdown the BGP session, IXP operator monitors the dataplane and when the
traffic reaches to a minimum, IXP operator starts maintenance on the switches
Some IXPs use Optical Switch and terminate their IXP members to the Optical Cross Connect
(OXC) Switch which is connected to the Fabric Switches
BGP Session Culling Alternatives
• AMS-IX (Amsterdam Internet Exchange) uses Optical Cross Connect Switch to
have redundancy. It helps to redirect traffic to the second plane when there is a
maintenance activity on the first plane
• BGP session culling gains popularity and is applied at more and more IXPs
• It is a IETF standard
• Graceful Restart is available today for OSPF, ISIS, EIGRP, LDP and BGP.
Standards are defined for OSPF, ISIS, BGP and LDP to ensure vendor
interoperability
• GR is usually used when the active route processor (RP) fails because of a
software or hardware error, or used by an administrator to perform the
master/slave switchover
• Dual processor systems which support Stateful Switch Over (SSO) or In-
Service Software Upgrades (ISSU) can continue to forward traffic while
restarting the control plane on the second processor
BGP Graceful Restart
• Usually, when BGP on a router restarts, all the BGP peers detect that the
session went down and then came up. This "down/up" transition results in a
"routing flap" and causes BGP route re-computation, generation of BGP
routing updates, and unnecessary churn to the forwarding tables
BGP Graceful Restart
• While control plane restarting, routers can forward the traffic, routes are
marked as stale and removed after BGP session is re-established
BGP Graceful Shutdown
• Loss comes from transient lack of reachability during BGP convergence that
follows the shutdown of an EBGP peering session between two Autonomous
System Border Routers (ASBRs)
• Graceful Shutdown is used when GR is not applicable, for example during the
maintenance forwarding/data plane might be impacted
BGP Graceful Shutdown
• If a BGP speaker decides to terminate its session with a BGP neighbor, and it
sends a NOTIFICATION message with the Error Code "Cease" and Error
Subcode "Administrative Shutdown" or "Administrative Reset", it MAY include
an UTF-8 encoded string
• IGPs are designed to run within a single administrative domain and they make
path-selection decision based on metric value
• The accumulated IGP (AIGP) metric attribute for BGP enables deployment in
which a single administration can run several contiguous BGP ASs.
• Such deployments allow BGP to make routing decisions based on the IGP
metric
• In this case, BGP chooses the shortest path between two nodes, even though
the nodes might be in two different ASs
AIGP – Accumulated IGP Metric Attribute for BGP
• The AIGP attribute preference rule is applied after the local-preference rule.
• The AIGP distance is compared to break a tie in the BGP best path selection
How AIGP Works
Bottom Path End to End IGP Cost is PE1 to ASBR2 + ASBR 4 to PE2 = 500
Top Path End to End IGP Cost is PE1 to ASBR 1 + ASBR3 to PE2 = 600
Thus better path is selected by PE1 to reach PE 2 if AIGP is enabled
AS10 AS20
P1 ASBR1 ASBR3 P3
300 100
100 100
PE1 PE2
100 200
100 100
P2 ASBR2 ASBR4 P4
BGP MED vs. AIGP Metric Attributes
MED 200
AS10 P1 ASBR1 ASBR3 P3
AS20
300 100
100 100
PE1 PE2
100 200
100 100
P2 ASBR2 ASBR4 P4
MED 300
EBGP Default Route Propagation Behavior without Policies–
RFC 8212
• Behavior of EBGP route propagation without Import and Export Route Policy
created many problems on Internet
• With RFC 8212 routes are neither imported nor exported unless specifically
enabled by configuration
EBGP Default Route Propagation Behavior without Policies–
RFC 8212
• Many deployed BGP speakers send and accept any and all route
announcements between their BGP neighbors by default
• This behavior results with Route Leaks which will be covered in next topic
AS 100 AS300
AS200
EBGP Default Route Propagation Behavior without Policies–
RFC 8212
• We will deal with BGP Route Leaks, Different Types of BGP Hijackings and
IP Address Spoofing
BGP Information Security
BGP Information Security
• BGPSEC
BGP Information Security
• Insecure routing is one of the most common paths for malicious threats
• Inadvertent error can take entire countries offline, while attackers steal money
or data (Current Bitcoin Attack)
We will deal with BGP Route Leaks, Different Types of BGP
Hijacking and IP Address Spoofing
IP Address Spoofing
BGP Information Security
• BGP Information Security deals with the anything related with the network
traffic, it doesn’t deal with the BGP Transport Security, such as TCP AO ,
MD5 Authentication etc.
BGP Information Security – Route Leaks
• BGP Route Leak is dangerous for the network traffic in many ways
• BGP Route Leak happens mostly due to miss-configuration but some BGP
Route Leak Types is considered as an Attack
BGP Information Security – Route Leaks
• It can create blackhole , extra latency , packet loss , thus will have bad effect
for the customer experience
AS 100 AS300
Prefix P
Customer AS200
BGP Information Security – Route Leaks
• RFC 7908 highlights the Problem Definition and Classification of BGP Route
Leaks
• It should be noted that leaks of this type are often accidental (not malicious)
• The leak often succeeds (the leaked update is accepted and propagated)
because the second ISP prefers customer announcement over peer
announcement of the same prefix
BGP Route Leak - Type 1 - Hairpin Turn with Full Prefix
Peer Link
AS 100 AS300
Prefix P
Customer AS200
BGP Route Leak - Type 2 – Lateral ISP-ISP-ISP Leak
• This type of route leak typically occurs when, for example, three sequential
ISP peers (ISP-A, ISP-B, and ISP-C) are involved, and ISP-B receives a route
from ISP-A and in turn leaks it to ISP-C
BGP Route Leak - Type 2 – Lateral ISP-ISP-ISP Leak
• The typical routing policy between laterally (i.e., non-transit) peering ISPs is
that they should only propagate to each other their respective customer
prefixes
BGP Route Leak - Type 2 – Lateral ISP-ISP-ISP Leak
Route Leak P
Prefix P Update
Customer Prefix P
• This type of route leak occurs when an offending AS leaks routes learned
from its transit provider to a lateral (i.e., non-transit) peer
BGP Route Leak – Type 3 – Leak of Transit Provider
Prefixes to Peer
Provider $$
Prefix P Leak
Customer
Peer Link
AS 100 AS200
BGP Route Leak - Type 4 - Leak of Peer Prefixes to
Transit Provider
• This type of route leak occurs when an offending AS leaks routes learned
from a lateral (i.e., non-transit) peer to its (the AS's) own transit provider
BGP Route Leak - Type 4 - Leak of Peer Prefixes to
Transit Provider
AS 300
AS 300 is Transit
Provider Provider of AS200
$$ AS 100 and AS 200 are
Settlement Free Peers
Prefix P Leak
Customer
Peer Link
• A multihomed AS learns a route from one upstream ISP and announces the
prefix to another upstream ISP as if it is being originated by it (i.e., strips the
received AS path and re-originates the prefix). This can be called re-
origination or mis-origination
BGP Route Leak - Type 5: Prefix Re-origination with Data
Path to Legitimate Origin
Peer Link
AS 100 AS300
Prefix P
Customer AS200
BGP Route Leak - Type 6: Accidental Leak of Internal
Prefixes and More-Specific
Prefixes
• An offending AS simply leaks its internal prefixes to one or more of its transit-
provider ASes and/or ISP peers. The leaked internal prefixes are often more-
specific prefixes subsumed by an already announced, less-specific prefix
• Partly because of this route leak , 512k incident happened in August 2014
BGP Route Leak - Type 6: Accidental Leak of Internal
Prefixes and More-Specific
Prefixes
More Specifics +
More
Aggregates
Specifics +
Aggregates
Peer Link
AS 100 AS300
More Specific
Prefixes
Customer AS200
BGP Route Leak - Type 6: Accidental Leak of Internal
Prefixes and More-Specific
Prefixes
• The 12th August 2014 was widely reported as a day when the Internet
collapsed
• What was happening was that the Internet’s growth had just exceeded the
default configuration limits of certain models of network switching equipment
• 0800 UTC on that day, when the Internet was flooded with 22,000 new
prefixes, which were withdrawn very rapidly thereafter
512K Incident, Type 6 BGP Route Leak Contribution to it!
• All these routes shared a common origin, AS 701, and were all more specifics
of already announced aggregate routes
• The announcements were short-lived, and were withdrawn soon after their
announcement
512K Incident, Type 6 BGP Route Leak Contribution to it!
• This was a Type 6 Route Leak by AS 701, announced 22k more specific
prefixes to the Internet. This amount of extra prefixes suddenly exceeds the
512000 prefixes in the Default Free Zone
• This triggered some BGP session restarts due to tripping some maximum
prefix threshold values that was installed by network operators
Preventing BGP Route Leaks
• While you won’t have complete control in a route leak situation, you do have
some options to fight with ongoing route leaks
Preventing BGP Route Leaks
• IRR Route Objects, RPKI ROAs and BGPSEC all contributed to prevent
Route Leak
• Most people deploy Static Prefix Filters but when the network gets larger,
maintaining prefix list becomes easily cumbersome
BGP Hijacking
• Hijacking occurs when an attacker claims to own a prefix or sub-prefix that belongs
to another AS causing redirection of routes from the AS to the attacker
• Attackers hijack prefixes to produce different malicious activities. For example, the
hijacker can blackhole all traffic to the victim causing a DoS for that network
• Between October 2013 – May 2014 , Canadian Hijacker ISP originated more
specifics (Sub-Prefix Hijack) to stole Bitcoin
• Find unused space & announce for few hours and send spam
• Hijacking a prefix
• Hijacking a sub-prefix
• BGP allows any BGP speaker to announce any route regardless of whether
the route actually exists or not
• Since shortest route paths are typically preferred, only a part of the Internet
that is closer to the hijacker (in number of AS-hops) switches to route paths
towards the hijacker
Prefix and its AS Hijack
• BGP selects the most specific address or longest address match. For
example, a BGP router will select a specific address such as 10.10.0.0/24
over a more general address such as 10.10.0.0/16
BGP Sub-prefix Hijacking
• This is the most widely propagated type of hijacking since all ASes between
the attacker and the victim are affected
AS4 announces a
prefix 10.10.0.0/24
which is a part of the
prefix 10.10.0.0/16
owned by AS1
All ASes in this
example chooses AS
4 as an Origin AS
Famous Sub-Prefix Hijack
• Using a fake path with sub-prefix hijack represents a critical challenge for
detection as the attacker does not claim to own a full prefix length
AS 2 , 3, and 5
believe that AS4 is
the Origin AS for
the prefix
10.10.0.0/24
What is Traffic Interception?
• After hijacking the prefix, malicious AS can also forward the hijacked traffic
back to real destination and this type of attack is called Traffic Interception
• Announcements by customer ASes and peer ASes in which prefixes are out
of the allocated range can be filtered
• If route filters at the links between providers and their customers are properly
configured in order to prevent customer ASes from advertising the routes for
the prefixes which do not belong to them
Challenges with Prefix Filters to mitigate Hijacking
• To install ingress filters, it is not always possible for providers to know which
prefixes are assigned to which customers. If customers have multiple
providers, they may have different address prefixes from different providers
Challenges with BGP Prefix Filters to mitigate Hijacking
• Even if route filters are installed in ingress points, when there is one provider
that does not practice route filtering, IP hijacking becomes possible
• IRR and RPKI have same goals which is Origin AS Validation, BGPSEC
provides both Origin and Path Validation
• IRR and RPKI databases can be used to automatically generate prefix filters
with the help of some tools
Alternate methods to build BGP Prefix Filters
• There are some tools designed to work with IRR policies to automatically
generate ingress and egress filters by parsing aut-num object, commonly
used tools are IRRToolset, BGPQ3 and IRRPT
• IRR, RPKI , BGPSEC and Filters are not mutually exclusive. In a given
network all four approaches can be used. In fact having Filter and RPKI at
the same time are seen as common deployment as of 2020
Three Source Database for Routing Security
• There are three databases and repositories which should be used by the
network operators to document routing policy and maintain contact
information.
• You can publish your contact information, create route objects and Routing
Registry through these systems
• IRR Route Objects and RPKI ROAs are used to provide Origin Validation
• Cases which cannot be solved with Origin Validation might require Path
Validation and there are couple solutions that provides Path Validation for
BGP routes
What is Origin Validation?
• RPKI ROAs and IRR Route Objects are used for Origin Validation
Origin Validation Example
• In the next section, RPKI will be explained and how it provides Origin
Validation will be shown
RPKI – Resource Public Key Infrastructure
• These certificates are issued to Local Internet Registries (LIRs) by one of the
five Regional Internet Registries (RIRs)
RPKI – Resource Public Key Infrastructure
• APNIC, ARIN, LACNIC, AFRINIC and RIPE are the five RIR who are
responsible for allocation and assignment of these resources in their service
regions
• Each RIR acts as a CA and trust anchor for the resources assigned within
their service regions
Configuring RPKI on Router Example
BGP Hijacks is solved with RPKI
• Exact Prefix Hijacks and Sub-Prefix Hijacks can be solved with RPKI but still attacker
can launch a path-shortening attack as we will see in the next example
• AS-Path Shortening is an advertising the prefix with the legitimate Origin AS but shorten
it, so other ASes can see insecure path is the best due to shorter AS-Path
AS 400 chooses
Attacker for
10.10.10.0/24
AS400
AS300
AS200
Attacker
I am connected to AS
100
My prefix is
10.10.10.0/24
AS 100
Attacker is not connected to AS 100 but
can manipulate the path and send an
Prefix 10.10.10.0/24 advertisement as it was originated from
AS 100
RPKI without BGPSEC?
• This prevents Path shortening attacks which cannot be solved with RPKI, thus
densely peering is considered an advantage on top of RPKI
Do everyone really need an RPKI?
• IRR is a public database of Internet route object. IRRs are used for
determining and sharing route and other related information used for
configuring routers
• Using IRR, networks exchange their routing policies with each other
• When you want to create a Route Object, you should be the Prefix Holder at
least, some RIRs require ASN owner to approve Route Object creation (Ex:
RIPE NCC)
• Difference between Route Objects in IRR and the RPKI ROA is, ROA digitally
signs the prefixes and the Maximum length of the prefix can be specified with
ROAs, not with the Route Objects
IRR – Internet Routing Registry
• There are many IRR (34 as of 2019), most widely used ones are RIPE
Database and RADB
• Based on Internet Society below IRR should be used for given regions:
Number of Route and Route 6 Objects in RIPE Database
IRR – Internet Routing Registry
• IRR supposed to verify the holdership, which mean they need to verify
whether the ASNs which announce the prefixes are valid owner of the
prefixes
IRR – Internet Routing Registry
• There are many Route Objects in IRR but we will cover three types of Objects
defined in IRR Database
How IRR Works?
IRR Objects:
• AUT-NUM
• Route/Route6
• AS-SET
• In addition to these objects, other IRR objects are; inet-rtr, peering-set, rtr-set, filter-set. Each
object has its own purpose. Together they express routing policies
IRR – Aut-Num Object
• PeeringDB allows you to publish information to let other networks know about
your network, lets other network know how to contact you, and it is the first
place when deciding where and whom to peer with
PeeringDB
BGPSEC - Cryptographic Path Validation
• The community has considered a number of solutions that can eliminate the
attacks that can be launched against the RPKI
• Building on the RPKI's guarantees that a BGP route has an authorized origin
AS, BGPSEC also provides path validation
• The signature on a BGPSEC message covers (1) the prefix and AS-level
path; (2) the AS number of the AS receiving the BGPSEC message; and
includes (3) all the signed messages received from the previous ASes on the
path
BGPSEC solves some issues which RPKI cannot solve
• This means the security benefits of BGPSEC apply only after every AS on the
path has deployed BGPSEC
Protocol Downgrade Attack
AS400
AS300
AS200
Attacker
I am connected to AS
100
My prefix is
10.10.10.0/24
AS 100
Attacker is not connected to AS 100 but
can manipulate the path and send an
advertisement as it was originated from
AS 100
Prefix 10.10.10.0/24
BGPSEC Summary
• It is an IETF Standard
• BGP is used on the Internet facing routers which are mostly placed in the
Datacenter but this is not the topic of BGP for the Internet (Inter-domain
routing)
• RFC 7938 – Use of BGP for Routing in Large Scale Datacenters cover the
usage of BGP in DC networks
BGP in the Datacenter – Why not other IGPs?
• OSPF and IS-IS were considered and used by some of the Web-scale
companies initially
• Select a topology that can be scaled "horizontally" by adding more links and
network devices of the same type without requiring upgrades to the network
elements themselves
• Allow for some traffic engineering, preferably via explicit control of the routing
prefix next hop using built-in protocol mechanics (BGP 3rd part next hop
allows some level of Traffic Engineering)
Routing Protocol and Topology Requirements in the Large
Scale Datacenters based on RFC 7938
• This is partly through, thus there are some tweaks for BGP to use in the
Datacenter as Routing Protocol
• Events within this minimum interval window are collected together and sent at
one shot when the minimum interval expires
• This is essential for the most stable code, but it also helps prevent
unnecessary processing in the event of multiple updates within a short
duration such as link flaps
Counter Arguments for BGP in DC – It is Slow
MRAI Timer
• The default value for this interval is 30 seconds for EBGP peers, and 0
seconds for IBGP peers. However, waiting 30 seconds between updates is
not necessary for a densely connected network such as CLOS topology
• 0 is the more appropriate choice for MRAI timers in EBGP in the DC, because
we’re not dealing with routers across administrative domains when we deploy
EBGP in the Datacenter
Counter Arguments for BGP in DC – It is Slow
Keepalive and Hold Timer
• By default, the keepalive timer is 60 seconds and the hold timer is 180
seconds
• This means that a node sends a keepalive message for a session every
minute. If the peer does not see a single keepalive message for three
minutes, it declares the session dead
Counter Arguments for BGP in DC – It is Slow
Keepalive and Hold Timer
• By default, for EBGP sessions for which the peer is a single routing hop away,
if the link fails, this is detected and the session is reset immediately
• What the keepalive and hold timers do is to catch any software errors while
the link is up but has become one-way due to an error, such as in cabling
issue
Counter Arguments for BGP in DC – It is Slow
Keepalive and Hold Timer
• Inside the data center, three minutes is too much. Recommended values
configured inside the data center are 3 seconds for keepalive and 9 seconds
for the hold timer
Counter Arguments for BGP in DC – Lack of BGP Neighbor
Auto-Discovery
• There are two IETF draft now for BGP neighbor auto discovery
• This IETF draft can change the behavior of manual adjacency setup, allowing
the BGP adjacency on the point-to-point links to be established automatically,
using the LLDP protocol
• BGP peering discovery using LLDP could be used in large Layer 3 data
centers where eBGP is being used as a single routing protocol
• Deployment of BGP with enabled BGP peering discovery using LLDP in large
data centers in the future would significantly lower the BGP configuration
overhead
Counter Arguments for BGP in DC – BGP Neighbor
Discovery Draft
• Instead of using other protocols such as LLDP, the draft introduces a new
BGP Hello message
Counter Arguments for BGP in DC – BGP Neighbor
Discovery Draft
• The message is sent periodically on the interfaces where BGP neighbor auto-
discovery is enabled to the multicast IP address using UDP port 179
• The hello message contains ASN of the sender along with IP address, router
id etc
BGP Path Hunting
• When BGP is used in the DC, based on the AS allocation, it might suffer from
the BGP Path Hunting behavior
• BGP Path Hunting will slow down the convergence based on the topology and
ASN allocation schema when there is a failure in the network, link or node
failure
• Let’s have a look at the details of BGP Path Hunting before start talking about
BGP ASN allocation
BGP Path Hunting
• Without topology information a Router does not know the physical link state of
every other node in the network, it doesn’t know whether the route is truly
gone (because the node at the end went down itself) or is reachable via some
other path
• That’s why a Router proceeds to hunt down reachability to the destination via
all its other available paths. This is called path hunting
BGP Path Hunting
AS 20 My best
path is R3-
R2 R4 link
R1 R4
192.168.0.0/24
AS 10 AS 40
R3
AS30
BGP Path Hunting
R1 R4
192.168.0.0/24
AS 10 AS 40
R3
AS30
BGP Path Hunting
• EBGP AS number allocation will trigger path hunting when there is a failure to
the destination
• Path Hunting will slow down the convergence which is not good for the
Datacenter BGP
BGP Path Hunting
• Path Hunting in BGP is a normal process for convergence, you cannot say I
don’t want Path Hunting, it is how protocol works (Similar to EIGRP)
• All ToR (Top of Rack) switches (Sometimes referred as Tier 3 switches) are
assigned their own ASN , unique ASN
• Leaf Switches (Tier 2 Switches) inside a pod have a same ASN, but leaves in
different pod have a unique ASN.POD sometimes referred as Cluster
• Since Operator knows most of the public AS numbers of the large companies,
allocating private AS number for DC usage is better for troubleshooting
Possible Problems with BGP ASN Allocation Schema
• Two Options : Either use 4 byte ASN or assign same AS numbers on different
POD/Cluster’s TOR switches
Possible Problems with BGP ASN Allocation Schema
• 4 byte ASN is not still supported by some BGP implementations thus it might
limit the vendor selection of DC equipment
• If same AS numbers are used in the different Cluster TOR switches, when
there is a traffic between separate Cluster TOR, Allow-as in feature is
required
Recommended BGP ASN Allocation when Private 2 Byte
Private ASN is used
BGP in the Wide Area Network
• BGP is designed first for the Wide Area Network and today it is mostly still
used for the Wide Area Network
• When it is first invented, it was for the IPv4 Unicast address family but today
BGP supports 20 different address families which are mostly used for the
WAN use cases
• It is the most scalable routing protocol and for the Inter-domain routing
scalability is must as there are 800k+ prefixes in the Global routing table
which is commonly known as Default Free Zone (DFZ)
BGP in the Wide Area Network
• Stability in the Default Free Zone is important since the failure impacts so
many networks and so many routers in the Internet
• Policy is the key function of BGP which companies in the Internet express
their business intent with BGP
BGP in the Wide Area Network
• BGP is used in the WAN network not just for the Internet but for VPNs (MPLS
Layer 2 and Layer 3 VPNs) commonly as well
• BGP PIC has two modes , BGP PIC Core and BGP PIC Edge
• BGP PIC Core provides fast convergence in case of Core Link or Node
Failure, IGP converges is important for BGP PIC Core
• BGP PIC Edge provides fast convergence in case of Edge Link or Node
Failure
Three Different FIB Architecture
• For us to understand both BGP PIC Core and Edge and how they provide
Fast Convergence for the failure scenarios, let’s have a look at different FIB
architectures in the routers
• Hierarchical FIB helps for the BGP PIC Core, when there is a Core Link or Device Failure, BGP next hop
doesn’t change, FIB just changes the IGP next hop if there is one available
Three Different FIB Architecture – Hierarchical FIB
Architecture/BGP PIC CORE
5.5.5.5 10.0.0.1
6.6.6.6 10.0.0.2
10.0.0.1 172.16.0.1
10.0.0.1 172.16.1.1
10.0.0.2 172.16.0.1
10.0.0.2 172.16.1.1
Three Different FIB Architecture – Hierarchical FIB
Architecture/BGP PIC CORE
• Generalized FIB Architecture relies on a concept, sharing BGP Path List for
the external prefixes and IGP Path List for the BGP Next Hops
• External BGP Prefixes will share the multiple BGP Next hops and BGP next
hop will share multiple IGP Next hops
Three Different FIB Architecture – Generalized FIB
Architecture/BGP PIC CORE and EDGE
• Generalized FIB is an evolution of Hierarchical FIB and helps for the Core and
Edge link or node failure situations
• BGP PIC Core and Edge provides fast convergence incase of Core and Edge
link or node failure situations
• Flat FIB points direct Layer 2 adjacency not to the BGP next hop or BGP Path
List for the external prefixes, thus incase of failure, all the prefixes need to be
refreshed with the new next hop which can take so much time
• Hierarchical and Generalized FIB helps for the BGP PIC Core and Edge
scenarios
BGP PIC Core and Edge Summary
• If there is no alternate IGP next hop, BGP PIC Core is useless, if there is no
alternate BGP next hop, BGP PIC Edge is useless as well
• When R3 receives the packet, It will do the destination based lookup for
prefix A then it will find next hop R1
If MPLS would be enabled, we wouldn’t have the same behavior since when R2
do the destination lookup for the prefix A, it will find the next hop R4 but in order to
reach to R4, it would push the transport label
When R3 receives the packet from R2, R3 wouldn’t do the IP based lookup but
MPLS label lookup so it would swap the incoming label from R2 to outgoing label
towards R4
BGP Hot Potato Routing
• IGP distances are shown in the diagram. Since there is no any special BGP policy
( Local pref, MED, AS-Path is the same , Origin and so on ) , Hot Potato rule will
apply so egress path will be chosen from AS 200 and AS100 based on IGP
distances
• Egress traffic from AS 200 is
the green arrow in the below
diagram, since SF path is
shorter IGP distance. Ingress
traffic to AS200 from AS 100 is
the blue arrow, since NYC
connection from AS100 shorter
IGP distance (40 vs. 200)
• AS 200 is complaining from the performance and they are looking for a solution to
fix the above behavior. What would you suggest to AS200 ?
• Customer AS200 should force AS100 for cold potato routing. By forcing for cold
potato routing ,AS 100 has to carry the Web content traffic to the closest exit point
to AS200, which is San Francisco.
That’s why AS200 is sending its prefixes from SF with lower MED than NYC as
depicted in the below diagram
How to use Transit service for Free with BGP Jack Move
• Network Z only announces the aggregate to the world. What is the impact of this
design ?
• But here customer (Network A) is sending aggregates only to Network Z but more
specific routes are coming from Peer network, Network B
• Prefix length overrides the local preference during forwarding
• If Network Z watch for peers advertising more specific of routes for the
routes learned from the customers, it is the only way to prevent this
BGP Unintended Behaviors (aka BGP Wedgies)
Primary Backup
Customer 10.0.10.0/24
AS 20
AS 10
Provider
Primary Backup
10.0.10.0/24 10.0.10.0/24
ASPATH =20 ASPATH =20 20 20 20
Customer 10.0.10.0/24
AS 20
• They want to use second service provider link as backup link. They
learned from the early experience the as-path prepending trick
AS 10 AS 30
Provider Provider
Primary Backup
10.0.10.0/24 10.0.10.0/24
ASPATH =20 ASPATH =20 20 20 20 20 20 20 20
Customer 10.0.10.0/24
AS 20
• Question 2: Is there a problem with this design ?
• Yes
• No
Primary Backup
10.0.10.0/24 10.0.10.0/24
ASPATH =20 ASPATH =20 20 20 20 20 20 20 20
Customer 10.0.10.0/24
AS 20
• There is a problem with the design since customer wants to use second
service provider as backup. AS-Path prepending in this way is often used
as a form of load Balancing
Backup
10.0.10.0/24
ASPATH =20 20 20 2020 20 20
Primary
10.0.10.0/24
ASPATH =20 Customer import policy at AS 30:
If 30:90 in COMMUNITY then
set local preference to 90
If 30:80 in COMMUNITY then
set local preference to 80
Customer 10.0.10.0/24
If 30:70 in COMMUNITY then
set local preference to 70
AS 20
GAO – REXFORD MODEL
• Question 5: What if customer uses second service provider link as
primary and the old provider secondary and the second provider peering
connection as depicted in the below topology ?
Provider/Customer
Provider C
(Tier 2)
Primary
Customer
Customer sends community to Provider C, in
order to use Provider B as backup
Provider/C
ustomer
Provider C
(Tier 2)
Backup Primary
Customer
Provider/C
ustomer
Provider C
(Tier 2)
Backup Primary
Customer
Provider/C
ustomer
Provider C
(Tier 2)
Backup Primary
Customer
• When primary link comes back, both path is used for the incoming traffic
anymore
• Solution to fix it, either Provider C will send a Provider A for its customer a
community attribute, or Backup BGP link will be resetted when primary
link comes back
BGP Best External
• eBGP sessions exist between the provider edge (PE) and customer edge (CE)
routers
• PE1 is the primary router and has a higher local preference setting
The best external path (PE2) is advertised to the peer routers, in addition to the
best path
BGP Route Reflector Clusters
• Question : Customer wants to use two BGP Route reflector for the
redundancy but they don’t know the design best practices whether they
should use same or different BGP Route Reflector Cluster ID ? Can you
help them ?
• Yes
• No
Should you use different or same Cluster IDs if you have more than one RR in
BGP design?
• Almost always use same RR. With different cluster IDs on RR, you will accept and
keep the prefixes on the RR. Those prefixes will never be used. But with same
cluster ID, prefixes will not be accepted since the ID is the same, this will reduce the
resource consumption.
Do you need to install all the prefixes into the RIB and FIB ?
• Enterprise company has two datacenters. They have 200 remote offices
and all the locations access to the internet from the Datacenters
• They recently had an outage on the internet circuit and all the Internet
sessions from the remote offices which uses that link wad dropped
• What are the solutions to prevent the session failure in case of a link
failure on the Internet Gateways of this company ?
IGW IGW
DC SWITCH DC SWITCH
DATACENTER 1 DATACENTER 2
Solution 1 – Best option but can be costly. Budget might be concern, also
deployment might take longer compare to other solutions
DC SWITCH DC SWITCH
DATACENTER 1 DATACENTER 2
Solution 2 – Fastest option , don’t require Service Provider Interaction.
It should be used as a short term solution
DC SWITCH DC SWITCH
DATACENTER 1 DATACENTER 2
Solution 3 : IBGP over MPLS VPN
Can be quicker compare to Direct
Physical Link but should be considered
SP MPLS as short term solution
VPN
IGW IGW
DC SWITCH DC SWITCH
DATACENTER 1 DATACENTER 2
Enterprise Edge Design with BGP
• Their networking team knows that for the best user performance traffic should be
symmetric between servers and the users/clients.
IGW IGW
FW FW
DMZ SWITCH
DMZ SWITCH
DC SWITCH DC SWITCH
DATACENTER 1 DATACENTER 2
• It is already given in the requirements that traffic from DC1 should come
back to DC1 directly. Asymmetric traffic cause firewall to drop all the
traffic
• So if the users are accessing to DC1 servers it should go back from the
DC1. Classical design for this, servers uses DC switch as default
gateway. DC switches receive default route redistributed to their IGP from
BGP by the IGW. And IGP cost is used to reach to the closest IGW by the
DC switches
• In the above topology if traffic comes to DC1 it has to go back from DC1
and vice versa, it is not only for asymmetric flow on the Firewalls, Load
Balancers and so on but also important to avoid hairpin
• They can split their public IP space to half and advertise specifics from
each datacenters and summary from both datacenters as a backup in
case first DC IGW link or node fails
• Imagine they have /23 address space, they can dive 2x/24 and advertise
each /24 from local datacenters only and /23 from both datacenters. Since
their upstream SP will profer longest match routing over any other BGP
attribute, traffic returns to the location where it is originated
BGP vs. IGP Comparison
BGP in the CCDE Exam
• BGP Route Reflectors and the different BGP Route Reflector Design Options
• BGP Confederation and using multiple Sub AS for the multinational providers
and so on.
• Different NLRI, especially IPv6, IPv6 and VPN address families with BGP
should be understood
• BGP Traffic Engineering with BGP Path Attributes. Local Pref, MED, As-Path
Prepend and Community etc.
BGP Summary
• IBGP , Full Mesh IBGP, Route Reflectors, Confederation and their design
options
• BGP in the Datacenter – IBGP vs. EBGP , EBGP ASN Allocation, BGP
Path Hunting
C. It is used with Route Reflectors for the scalability reason in large scale
networks
One of the correct answers of this question is to carry EBGP prefixes inside an
Autonomous system.
Option D is one of the correct answers as well because with IBGP, internal
network is protected from the outside failures by separating the local failure
domains.
That’s why; answers of this question are B and D.
BGP Quiz - Question 2
Which of the below options are true for the BGP Route Reflectors? (Choose
Three)
C. Route Reflectors selects and advertise only the best path to Route Reflector
clients
Route reflectors are used to improve scalability of the BGP design in large-scale
deployments.
Route reflectors hide the available path information by selecting and advertising
only the best path to the clients.
Option D is wrong because, Route Reflectors should follow the physical topology
in an IP backbone, it cannot be placed everywhere, careful planning is required.
Otherwise forwarding loop occurs as it was explained in one of the case studies
in the BGP chapter.
BGP Quiz - Question 3
Which below attributes are commonly used for BGP path manipulation?
(Choose Three)
A. Local Preference
B. Origin
C. As-Path
D. Community
E. Weight
BGP Quiz – Answer 3
Origin is not used commonly for the BGP path manipulation. Weight is Cisco
preparatory and it is only local to the routers. It shouldn’t be used for path
manipulation.
There is nothing called BGP Map Servers. In the Public Internet Exchange points
BGP Route Servers are used to reduce configuration overhead.
They improve scalability. Very similar to Route Reflectors but Route Reflectors
are used in IBGP, not in the Public Exchange Points. That’s why answer of this
question is C.
BGP Quiz - Question 5
Which below options are true for the BGP Confederation? (Choose Three)
From the migration point of view, Full mesh IBGP to BGP Confederation is
harder, compare to BGP Route Reflectors. Thus Option B is invalid.
All the other options are correct thus the answer of this question is A, C and D
BGP Quiz - Question 6
Which below option is used for inbound BGP path manipulation? (Choose Three)
A. Local Preference
B. MED
C. As-Path prepending
D. Community
Hot Potato Routing and Local Preference are used for Outbound BGP Path
manipulation as explained in the BGP chapter in detail.
MED should be used if there is only one upstream ISP but still it is used for
inbound path manipulation. AS-Path prepending and the communities are used
for the multihoming connections as well.
MP-BGP (Multi Protocol BGP) is the BGP implementation, which can carry
multiple Address Families. BGP in 2016, can carry more than 20 different
Address Families such as IPv4 Unicast, IPv6 Unicast, IPv4 Multicast, L2 VPN,
L3VPN, Flowspec and so on.
A. Sending the traffic to the most optimum exit for the neighboring AS
C. By coordinating with the neighboring AS, sending traffic to the closest exit
point
Hot Potato Routing means, sending the traffic to the closest exist point from the
Local Autonomous system to the neighboring Autonomous System by taking the
IGP metric into consideration
A. Implementing BFD
They should implement BGP PIC features to protect BGP from the link or node
failure. Especially Edge node failures, even if MPLS Traffic Engineering or IP
FRR deployed, couldn’t be recovered in sub second.
• With which below options, internal BGP speaker can receive more than one
best path even if BGP Route Reflectors are deployed? (Choose Three)
A. BGP Shadow RR
C. BGP Add-path
D. BGP Confederation
E. BGP Multipath
BGP Quiz - Answer 10
Shadow Sessions, Shadow RR and BGP Add-path design provides more than
best path to the internal BGP speaker even if BGP Route Reflectors are
deployed.
BGP Multipath requires more than one best path and all the path attributes to be
the same. Thus it requires one of the above mechanisms. BGP Confederation
doesn’t provide this functionality.
Which below option is recommended to send more than one best path to
the VPN PEs in the MPLS VPN deployment if VPN Route Reflectors are
deployed?
A. BGP Add-path
B. BGP Shadow RR
BGP Add-path, BGP Shadow RR and Sessions deployments are suitable for the
IP backbones.
If there is an MPLS backbone, configuring unique RD per VRF per PE is best and
recommended design option since there is no software or hardware upgrade, no
additional BGP sessions and so on.
What are the reasons to send more than one BGP best path in IP and MPLS
deployment? (Choose Four)
A. BGP Multipath
C. BGP Multihop
There are many reasons to send more than one BGP best path in both IP and
MPLS deployments.
Sometimes for the optimal routing, just sending more than one BGP best path is
not enough but may require all available paths though.
What is the drawback of sending more than one BGP best path
in BGP?
C. Slower Convergence
D. Security Risk
BGP Quiz - Answer 13
Sending more than one BGP best path requires more memory, CPU, network
bandwidth, thus more resource usage in the network.
What below options are the advantages of Full Mesh IBGP design compare to BGP
Route Reflector design? (Choose Four)
Although there are advantages of using BGP Route Reflectors, there are many
drawbacks as well. Probably it is more harmful than deploying Full Mesh IBGP if
the requirement is optimal routing, faster convergence and avoiding route churns.
Full Mesh IBGP design consumes more device and network resources and
requires more configurations on the devices compare to Route Reflector design.
That’s why the answer of this question is A, B, D and E
BGP Quiz - Question 15
Since it is given as IP backbone, IP destination based lookup is done for the BGP
prefixes.
Sine BGP prefixes require recursion and IGP next hop needs to be found for the
BGP prefixes, R2’s and R3’s IGP next hops for the BGP prefixes should be
found.
On R2, For the BGP next hop of 70.70.0.0/24 BGP prefix is R4. R2 can only
reach R4 through R3.
Thus, R2’s IGP next hop is R3. It applies for the R3.
R2’s IGP next hop is R3 and R3’s IGP next hop is R2. That’s why the answer of
this question is C.
BGP Quiz - Answer 15
Please note that in this topology BGP Route Reflectors don’t follow the physical
topology, which is against to BGP Route Reflector design requirement in IP
networks.
That’s why, in this design between R2 and R3, routing loop occurs.
What can be the problem with BGP design in the Enterprise if there are
more than one datacenter?
Which below option is true for the VPN Route Reflectors in MPLS
deployments? (Choose Two)
B. It doesn’t have to follow physical topology, can have more flexible placement
compare to IP Route Reflectors
C. It is best practice to use VPN Route Reflectors for the IP Route Reflectors as
well
VPN Route reflector can be deployed in the centralized placed and they have
more flexible placement advantage compare to the IP Route Reflector.
The reason is there is no IP destination based lookup in the MPLS networks.
Thus there is no layer 3 routing loop problem as in the case of IP Route Reflector
which was explained in the Answer 15.
BGP Quiz - Answer 17
It is not best practice to deploy IP and VPN services on the same node. Reason
will be explained in Answer 18.
VPN RR, similar to IP RR, cannot always provide most optimal path to their
clients. Because they selects the BGP best path from their point view, not from
their clients point of view.
What can be the problem with using IP and VPN Route Reflector on the
same device? (Choose Two)
When a Route Reflector is used for more than one service, it is called Multi
Service Route Reflector. The problem of using Internet and VPN services on the
same BGP Route Reflector is Fate Sharing
Internet based attacks can affect VPN customers and any problem on the VPN
service users affect Internet customers. Also in case of failure, all the customers
fail.
BGP Quiz - Answer 18
Thus using a separate BGP Route Reflector per service is a best practice.
Using Multi Service RRs don’t reduce the scalability. And when using multi
service RRs, they still don’t have to participate in IGP process
A. In West DC
B. In East DC
C. Doesn’t matter the placement
D. Both in East and West DC
BGP Quiz - Answer 19
Route Reflectors should be placed in both East and West DC. Otherwise Route
Reflector would choose the best path from their point of view and would send the
best path to the Route Reflector Clients from their best path.
If RR would be placed in West DC, all BGP RR Clients in East DC would choose
the West DC IGW (Internet Gateways) as exit point and vice versa.
Which below options are true for the BGP PIC deployment?
(Choose Two)
A. BGP PIC can provide sub second convergence even if there are millions of
prefixes in the routing table
B. BGP edge devices don’t have to receive more than one best path for BGP
PIC Edge to work
C. BGP PIC Edge can protect both from Edge link and Node failure
BGP edge nodes have to receive more than one best path for BGP PIC Edge
operation. This was explained in the BGP chapter in detail. BGP Add-Path is one
of the mechanisms, which is used to send multiple paths even RR is deployed in
the network.
BGP PIC Edge can protect from both Edge link and node failures and can
provide sub second convergence even if there are millions of prefixes.
A. IRR
B. Peeringdb
C. RPKI
D. BGPSEC
E. Flowspec
BGP Quiz - Answer 21
IRR is used to provide information for filtering on the Internet facing routers but
doesn’t provide Origin validation
RPKI is the only correct answer, it provides Origin Validation which mean, by
creating ROAs, networks can validate the prefixes if they are coming from correct
origin AS
BGP Quiz - Question 22
What are the important consideration when EBGP is used in the Massively Scale
Datacenters?
D. Traffic Engineering
Also in the Datacenter BGP Route Server is not used, it is used in the IXP
networks
Also traffic engineering with BGP is one of the main reasons why BGP is used
inside the Massively Scale Data Centers. Between different TOR and Leaf or
Leaf and Spine switches, for different type of applications or different type of
traffic class, such as Elephant and Mice flows, DC operators provide different
paths for different applications and the services.
Books :
• http://www.amazon.com/BGP-Design-Implementation-Randy-
Zhang/dp/1587051095/ref=sr_1_1?ie=UTF8&qid=1436564612&sr=8-
1&keywords=bgp+design+and+implementation
• Videos :
• https://www.nanog.org/meetings/nanog38/presentations/dragnet.mp4
https://www.youtube.com/watch?v=txtiNFyvWjQ
• Articles :
• https://www.nanog.org/meetings/nanog51/presentations/Sunday/NANOG51.Talk3.peerin
g-nanog51.pdf
• http://ripe61.ripe.net/presentations/150-ripe-bgp-diverse-paths.pdf
• http://orhanergun.net/2015/05/bgp-pic-prefix-independent-convergence/
• http://orhanergun.net/2015/01/bgp-route-flap-dampening/
• https://www.nanog.org/meetings/nanog48/presentations/Tuesday/Raszuk_To_AddPaths
_N48.pdf
❖ http://orhanergun.net/2015/03/bgp-design-quiz/
❖
❖ http://packetpushers.net/bgp-rr-design-part-1/
❖
❖ http://packetpushers.net/bgp-rr-design-part-2/
❖
❖ https://tools.ietf.org/html/draft-ietf-idr-bgp-optimal-route-reflection-10
❖
❖ http://arxiv.org/pdf/0907.4815.pdf
❖
❖ http://www.scn.rain.com/~neighorn/PDF/Traffic_Engineering_with_BGP_and_Level3.pdf
❖
❖ http://packetpushers.net/bgp-path-huntingexploration/