Example Supernetting

advertisement
Example
Routing with subnetting
Start of header
Ident = x
Offset = 0
0
Rest of header
„
The host want to send a packet to a certain IP address
…
1400 data bytes
…
…
„
Start of header
Ident = x
1
1). Bitwise AND between its own subnet mask & the destination IP address
2). If the same subnet number is obtained, direct delivery over that subnet
3). If not, it send s the packet to its default router
The job of a router changes when introduce subnetting
Offset = 0
…
the entries of <Dest. NetworkNum, NextHop> ->
…
the router ANDs the destination address with the Subnet Mask for each
<Dest. SubnetNum, SubnetMask, NextHop>
Rest of header
512 data bytes
entry, the matched one is the entry to be use
Start of header
Ident = x
1
Offset =64
„
Note: Subnets is not visible from the rest of the Internet
Rest of header
Note: Offset field counts 8-byte units of data, not
individual bytes (the change has been made w/ red)
Start of header
Ident = x
0
Subnet mask: 255.255.255.128
Subnet number: 128.96.34.0
Forwarding table at router R1
512 data bytes
Offset =128
Rest of header
376 data bytes
Subnet Number
128.96.34.0
128.96.34.128
128.96.33.0
Subnet Mask
255.255.255.128
255.255.255.128
255.255.255.0
128.96.34.15
Next Hop
interface 0
interface 1
R2
128.96.34.1
H1
R1
Spring 2004
EE4272
Supernetting – Classless Interdomain Routing (CIDR)
„
R2
H3
Two scaling concerns in the Internet to be addressed
… address assignment efficiency (especially class B IP address)
… the growth of backbone routing table
„
Classless Interdomain Routing (CIDR)
… try to balance the desire of minimizing the routing table of the routers
involved and the desire of handing out IP address efficiently by
aggregating the routes (e.g. …)
…
Assign block of contiguous network numbers to nearby networks, the
common parts of the network numbers -> single network prefix (used in
forwarding table)
…
Restrict block sizes to powers of 2
…
Handout blocks of class C address that share a common prefix
Need a routing protocol can deal with these “classless” address with any
length of the network number part (e.g. BGP)
EE4272
128.96.33.1
Subnet mask: 255.255.255.0
Subnet number: 128.96.33.0
Problem: if a single AS has n class C network numbers assigned, every backbone
router needs n entries in its routing table for that AS
„
„
H2
Supernetting
The IP address structure (w/ class A, B, C) forces to hand out network
address space in fixed size chunks of 3 very different size
… Unlike subnetting, supernetting gives appropriate # of class C address to
cover the expected number of host (address utilization >50%)
„
Spring 2004
128.96.34.139
128.96.34.129
128.96.33.14
EE4272
Subnet mask: 255.255.255.128
Subnet number: 128.96.34.128
128.96.34.130
Spring 2004
„
Assign a portion of address space to the ISP,
and let ISP assign addresses to its customer
„
It can advise a single route to both customer by
just advertising the common 19-bits prefix they
share
EE4272
Spring 2004
1
Interdomain Routing
Supernetting
„
Essences:
… “subnetting” allows a class B kind of IP address be
shared by multiple physical networks
… “supnetting” aims to collapse the multiple class C kind of
IP addresses that would be assigned to a single AS
general, it is possible to apply the principle (network
prefixes) of CIDR in the Internet service provider network
“repeatedly” if addresses are assigned carefully
„
The idea behind ASs (domain) is to provide an additional way to
hierarchically aggregate routing information in a large internet, thus
improving scalability
Intradomain routing (w/ in a single AS): finding “optimal” paths based on the link
metrics
… Interdomain routing (between ASs) : concerning more on reachability of packets
among ASs
…
„
Interdomain Routing : a hard problem
…
… In
…
„
BGP: finding any loop-free path to the intended destination
…
…
… CIDR
means prefixes may be of variable length, in case
of some addresses may matches more than one prefix,
follow the principle of “longest match”
EE4272
…
…
…
Spring 2004
Exterior Gateway Protocol (EGP): limited to treelike topology(early Internet)
Border Gateway Protocol (BGP): flexible to an arbitrarily interconnected set
of ASs
matter of scale: 140,000 prefix
impossible to calculate meaningful path costs cross multiple ASs
“BGP speaker” exchange reachability infor. among ASs
BGP advertises “complete path” to achieve loop-free
No. of nodes involving in BGP is on the order of ASs
Spring 2004
EE4272
BGP Example
„
Beside BGP speaker,
AS has border gateways
which are responsible of
forwarding packets
between ASs
„
Speaker for AS2 advertises reachability to P and Q
…
network 128.96, 192.4.153, 192.4.32, and 192.4.3, can be reached directly from AS2
Regional provider A
(AS 2)
Backbone network
(AS 1)
Regional provider B
(AS 3)
„
Spring 2004
128.96
192.4.153
Customer Q
(AS 5)
192.4.32
192.4.3
Customer R
(AS 6)
192.12.69
Customer S
(AS 7)
192.4.54
192.4.23
Speaker for backbone advertises
…
EE4272
Customer P
(AS 4)
networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be reached along the path (AS1, AS2)
„
To prevent loop, the complete AS path should be carried in the message
„
Speaker can cancel previously advertised paths, in case of failure
„
Note: A “stub AS” has a single connection to one other AS
A “transit AS” has connections to more than one other ASs
EE4272
Spring 2004
2
IP Version 6
„
… 128-bit addresses (classless)
… real-time service
… authentication and security
… autoconfiguration
… end-to-end fragmentation
… protocol extensions
… multicast
„
Internet Multicast
Features
„
… class
D addresses
… demonstrated with MBone
… uses tunneling
Header
… 40-byte
“base” header
headers (fixed order, mostly fixed length)
… extension
„
„
„
„
EE4272
fragmentation
source routing
authentication and security
other options
Spring 2004
Link-State Multicast
„
Each host on a LAN periodically announces the
groups it belongs to by Internet Group Management
Protocol (IGMP): reading assignment (P331-335)
„
Augment update message (link state packet-LSP) to
include set of groups that have members on a
particular LAN
„
Each router uses Dijkstra's algorithm to compute
shortest-path spanning tree for each source/group
pair
„
Each router computes and stores the cache of
trees for currently active source/group pairs.
IPv4
„
Integral part of IPv6
… problem
is making it scale
EE4272
Spring 2004
Example
‰ Example shortest-path multicast trees
‰ Member of group G in color
EE4272
Spring 2004
EE4272
Spring 2004
3
Distance-Vector Multicast
Reverse Path Broadcast (RPB)
„ Each router already knows that shortest path to
destination S goes through router N
„
„
When receive multicast packet from S, forward
on all outgoing links (except the one on which
the packet arrived), iff packet arrived from N
Eliminate duplicate broadcast packets by only
letting “parent” for LAN (relative to S) forward
… shortest
path to S (learn via distance vector)
… smallest address to break ties
EE4272
Spring 2004
Reverse Path Multicast (RPM)
„
Goal: Prune networks that have no hosts in group G
… Step
1: Determine of LAN is a leaf with no members in G
„ leaf if parent is the only router on the LAN
„ determine if any hosts are members of G using IGMP
… Step
2: Propagate “no members of G here” information
augment <Destination, Cost> update sent to
neighbors with set of groups for which this network is
interested in receiving multicast packets.
„ only happens with multicast address becomes active.
„
EE4272
Spring 2004
4
Download