BGP

advertisement
BGP
CST 415
4/13/2015
CST 415 - Computer Networks
1
Topics
•
•
•
•
BGP Defined
BGP Message Generation
BGP Message Types
BGP Limitations
4/13/2015
CST 415 - Computer Networks
2
Problem Definition
• A network may consist of many internal networks.
• Each of these internal networks is connected via a
router.
• The structure of the internal networks is managed
locally, known as an autonomous system.
• Any internal network can be connected to an
external network.
• This router at this connection point is known as a
boundary gateway.
4/13/2015
CST 415 - Computer Networks
3
Problem Definition
• Consider the state of the Internet if the boundary
condition did not exist.
– Every router in the Internet would be required to
communicate with an arbitrary set of routers.
» The propagation of route updates could overwhelm the
bandwidth of the Internet.
– For routers to communicate directly, they would all
need to be connected to a single backbone network.
– Administration of a single Internet would require a
single, global, administrative entity.
» This condition is in direct contradiction to the “controlled
chaos” growth of the Internet.
4/13/2015
CST 415 - Computer Networks
4
Problem Definition
• For the global Internet to work, router interaction
must be limited.
• The solution to the routing problem is to have
subsets of routers be locally managed (autonomous
systems).
– General heuristic
» LAN – up to 5 routers can be involved in getting a packet from
source host to destination host.
» WAN - up to 12 routers can be involved in getting a packet
from source host to destination host.
– In reality, this number depends on network bandwidth
and utilization.
4/13/2015
CST 415 - Computer Networks
5
Problem Definition
• Participating Router
– A router that actively participates in a routing
scheme (e.g. exchanges routing tables).
– This router must be associated with the system
for which it is performing routing.
• Non Participating Router
– A router not participating in a routing scheme.
– This router may or may not be associated with
the system it is not routing for.
4/13/2015
CST 415 - Computer Networks
6
Problem Definition
Non participating routers and the extra hop problem.
This is a problem occurs because the non-participating router
does not exchange routing information with participating
routers.
4/13/2015
CST 415 - Computer Networks
7
Problem Definition
Hidden Networks
4/13/2015
CST 415 - Computer Networks
The external
network can not
exchange
information
about internal
network
structure.
8
Problem Definition
The Upshot…
Routing information must be passed:
» From routers participating actively in a routing group
to routers that are passive, yet connected directly to
that group.
» Information about hidden networks must be
propagated from non-participating routers to routers
involved in a group routing scenario.
4/13/2015
CST 415 - Computer Networks
9
BGP Defined
To effect the communication between
participating groups of routers (autonomous
systems) and non-participating routers
(boundary gateways), BGP has been
defined.
Boundary Gateway Protocol
4/13/2015
CST 415 - Computer Networks
10
BGP Defined
Boundary Gateway Protocol
Purpose - To exchange network reachability
information between autonomous systems
and from this information determine routes
to networks.
4/13/2015
CST 415 - Computer Networks
11
Problem Definition
Internal routers are shown in blue while border routers are red. BGP
speakers that communicate within an AS are internal peers. Those that
communicate between ASes are external peers. This highly simplified
internetwork shows two stub ASes, both of which only connect to the
multihomed AS #2
4/13/2015
CST 415 - Computer Networks
12
BGP Defined
Boundary Gateway Protocol
• Each BGP stores information about networks and
the routes to them in a set of Routing Information
Bases (RIBs).
• This route information is exchanged between BGP
routers, and propagated throughout the entire
internetwork, allowing each AS (Autonomous
System) to find paths to each others AS.
• This enables routing across the entire internetwork.
4/13/2015
CST 415 - Computer Networks
13
BGP Defined
Boundary Gateway Protocol
• BGP supports an arbitrary topology of ASes.
• They can be connected in any manner.
• An AS must have a minimum of one router
running BGP, but can have more than one.
• BGP can be used to communicate between
BGP routers within the same autonomous
system.
4/13/2015
CST 415 - Computer Networks
14
BGP Defined
BGP Provides:
• Inter-Autonomous System Communication –
Provide a standard mechanism for autonomous
systems to exchange routing information.
• Coordination among multiple BGP speakers –
Allow for boundary routers from a single
autonomous to exchange routing information.
• Propagation of reachability information – Allow
autonomous systems to advertise information
related to internal systems as well as systems it is
willing to forward packets on behalf of.
• Next-hop information – Provide information
related to the “next-hop”.
4/13/2015
CST 415 - Computer Networks
15
BGP Defined
BGP Provides:
• Policy support – support administrative
policies related to internal autonomous
system privileges as viewed by the outside
world.
• Reliable transport – runs on top of TCP
• Routing path information – Provide
information related to actual routes available
through the autonomous system.
4/13/2015
CST 415 - Computer Networks
16
BGP Defined
BGP Provides:
• Incremental route updates – Only update routes
that have changed.
• Classless addressing support – Provide support for
the CIDR address masking mechanism.
• Route information aggregation – Allow for
multiple route information updates to be sent in a
single update packet.
• Authentication – Provide for message
authentication before processing.
4/13/2015
CST 415 - Computer Networks
17
BGP State Transition
4/13/2015
CST 415 - Computer Networks
18
BGP Message Generation
BGP peers will exchange messages for:
• Peer acquisition and authentication
• Peer exchange of positive and negative
network reachability information,
• Peer network function verification.
4/13/2015
CST 415 - Computer Networks
19
BGP Message Types
Open Message:
• Version – 1 octet: identification of protocol
version.
• Autonomous Systems Number – 2 octets:
Identifier for the senders autonomous system.
• Hold Time – 2 octets: The maximum amount of
time to wait for a message from the sender.
• BGP Identifier – 4 octets: A unique identifier for
identification of the sender.
• Optional parameters
4/13/2015
CST 415 - Computer Networks
20
BGP Message
Update Message
4/13/2015
CST 415 - Computer Networks
21
BGP Message Types
Update Message:
• Withdrawn Length – 2 octets: number of octets for the
destinations that are being withdrawn from the source.
• Withdrawn Destinations – variable: the destination
networks that the source is withdrawing from the
destination routing tables.
• Path Length – 2 octets: number of octets for destination
addresses that are being added to source routing.
• Path Attributes – variable: a descriptor for all destination
networks in the update (e.g. list of reachable networks, list
of next hops, etc.)
• Destination Networks – variable: the destination networks
that are being added to the destination routing tables.
4/13/2015
CST 415 - Computer Networks
22
BGP Message Types
Keepalive Message:
• Inform the receiver to not allow the TCP
connection to drop.
• As long as the BGP TCP connection is “kept
alive”, the BGP servers will know any new
routing information will be up-to-date.
4/13/2015
CST 415 - Computer Networks
23
BGP Message Types
Notification Message:
• Used to inform of error conditions in the
BGP peer network.
4/13/2015
CST 415 - Computer Networks
24
BGP Limitations
• BGP only advertises networks that can be
reached through the BGP server’s
autonomous system.
• BGP does not exchange route cost.
– This makes it hard to compute a “least-cost”
route across autonomous systems.
• Because of this, the BGP router should only
advertise routes that will be beneficial to
outside autonomous systems.
4/13/2015
CST 415 - Computer Networks
25
Download