Title: Interdomain Routing BGP
1- Interdomain Routing (BGP)
- IPv6
2Last time Classless Interdomain Routing (CIDR)
- Goal Minimize the number of routes that a router
needs to know while keeping address assignment
efficiency high by giving out contiguous blocks
of Class C addresses.
Example
top 20 bits remain constant
20 bits
12 bits
192.4.16.0
11000000 00000100 0001
Network
Host
192.4.17.0
16 bits
8 bits
192.4.31.0
Host
Host
CLASS B
CLASS C
3CIDR
- In order to make this work, we need to
- Assign contiguous blocks of Class C addresses.
- Each block must contain a number of class C
networks that is a power of 2. - Use interdomain routing that understands
classless addresses (network number can be of any
length in number of bits). - Routing protocols see network numbers as
- This is analogous to subnetting
ltlength, valuegt
ltmask, valuegt
4CIDR vs. Subnetting
Multiple physical networks
Multiple network numbers
Physical Network 0
192.4.16.0
Physical Network 1
One address
192.4.17.0
128.96.34.0
11000000 00000100 0001
Physical Network 2
One network number
192.4.31.0
Physical Network 3
Route aggregation, or supernetting.
5Enhanced Route Aggregation
Both X and Y are accessible via the same provider
network, the ISP advertises a single route for
both using the 19-bit prefix they share. If
addresses are assigned carefully, better route
aggregation becomes possible.
6Interdomain RoutingThe Border Gateway Protocol
7Autonomous Systems
domain
Goal To hierarchically aggregate routing
information in a large internetwork to improve
scalability.
Border routers this is the default destination
of all packets bound to hosts outside the AS.
domain
The AS model decouples the intradomain routing
that happens within one AS from what is done in
another AS.
Prefix as in classless routing, this is
expressed as IP/length, i.e. 192.4.16/20.
8The BGP Model of the Internet
Multihomed AS An AS with connections to multiple
ASs, which refuses to carry external traffic.
Stub AS Only one connection to another AS.
Transit AS An AS with connections to multiple
Ass, which carries internal and external traffic.
9BGP Routing
- Challenges
- Scale (over 140,000 prefixes),
- Domains are autonomous and can assign arbitrary
metrics to its internal paths, - ASs can only cooperate if they can trust one
another to publicize accurate routing information
and to carry out their promises, - Policies should be flexible to allow ASs freedom
of action. This choice may override optimal paths
and determine the use of paths that are good
enough.
10BGP Routing
BGP advertises complete paths (enumerated lists
of ASs) to reach a certain network. This enables
policies to be tailored to the AS wishes and also
makes it easy to detect routing loops.
AS2
TCP
TCP
TCP
AS3
AS identifications are unique 16-bit values
assigned by a central authority.
AS1
Each domain determines at least one node to be
its BGP speaker (border gateways need not be the
same nodes).
An AS advertises routes that are good for itself
the speaker picks a favorite. A speaker is under
no obligation to advertise routes that it doesnt
want used. Speakers can withdraw routes.
11Integrating Interdomain and Intradomain Routing
- Stub AS The border router injects a default
route into the intradomain routing protocol. - Multihomed and Transit ASs The border routers
inject routes that they have learned from outside
the AS. - Transit ASs The information learned from BGP may
be too much to inject into the intradomain
protocol if a large number of prefixes in
inserted, large link-state packets will be
circulated and path calculations will get very
complex.
12IPv6
13Addresses and Routing
- 128-bit addresses (IPv4 32-bit addresses).
1,500 IPv6 addresses per square foot for the
whole planet!
14Address Space Allocation
Classes A, B, and C
May not be unique
May not be unique
Class D
15Address Notation
- XXXXXXXX where X is a 16-bit value
- When there are many consecutive 0s, omit them
- 47CD000000000000000000000000A4560124
becomes - 47CDA4560124 (double colon means a group of
0s) - Two types of IPv6 address can contain embedded
IPv4 addresses. For example, an IPv4 host address
128.96.33.81 becomes - FFFF128.96.33.81 (the last 32 bits are an IPv4
address) - This notation facilitates the extraction of an
IPv4 address from an IPv6 address.