Global Internet
Download
Report
Transcript Global Internet
CSS432 Subnetting and CIDR
Textbook Ch3.2.5
Global Internet
Textbook Ch4.1
Professor: Munehiro Fukuda
CSS 432: Subnetting, CIDR, and Global
Internet
1
Internet Structure
NSFNET backbone
Stanford
ISU
BARRNET
MidNet
regional
regional
Westnet
regional
Berkeley
PARC
UNM
NCAR
UNL
KU
UA
Autonomous System (AS):
Administered independently of other AS
Have a different routing protocol and metrics
Do we really need to give an independent class A/B/C network number to every
single AS?
CSS 432: Subnetting, CIDR, and Global
Internet
2
Scaling Issues in Routing
Inefficient use of IP Address Space
Class
C with 2 hosts (2/255 = 0.78% efficient)
Class B with 256 hosts (256/65535 = 0.39% efficient)
IP
address space gets consumed too quickly
Too Many Networks
Routing
tables do not scale
Route propagation protocols do not scale
Router gets slower to scan a big forwarding table
Hierarchy
CSS 432: Subnetting, CIDR, and Global
Internet
3
Subnetting - Concept
Flat networks
A collection of subnets
Internet
Internet
30 nodes: Class C
EDU
128.96.34.1 - 30
40 nodes: Class C
BBUS
Class B: 128.97.0.0
30 nodes
EDU
Subnet: 128.97.1.0
40 nodes
Subnet: 128.97.2.0
128.96.35.1-40
200 nodes: Class C IAS
128.96.36.1-200
256 nodes: Class B CSS
128.97.0.1 – 128.97.1.2
128.97.1.1-30
BBUS
128.97.2.1-30
200 nodes
Subnet: 128.97.3.0
256 nodes
Subnet: 128.97.4.0
IAS
128.97.3.1-200
CSS
128.97.4.1 – 128.97.5.2
Problem: Internet identifies only classes
Four networks must receive an independent class of network number, (which
exhausts IP addresses and floods network #s.)
Subnet: collects networks belonging to the same AS and give a single class of
network number, which is then divided into subnet numbers internally.
CSS 432: Subnetting, CIDR, and Global
Internet
4
Subnetting – How to Address
Subnet masks define variable partition of host part
Subnets visible only within site
Network number
Host number
127.97.0.1 – 127.97.255.254
Class B address
111111111111111111111111
00000000
# of bits in subnet mask
Subnet mask (255.255.255.0)
127.97.8.254/24
Network number
Subnet ID
Host ID
Subnet ID
Subnetted address
CSS 432: Subnetting, CIDR, and Global
Internet
5
Subnetting – How to Address
#bits
Subnetwork Mask
#subnets in Class B
#subnets in Class C
# of hosts
16
255.255.0.0
1
-
65534
17
255.255.128.0
-
-
32766
18
255.255.192.0
2
-
16382
19
255.255.224.0
6
-
8190
20
255.255.240.0
14
-
4094
21
255.255.248.0
30
-
2046
22
255.255.252.0
62
-
1022
23
255.255.254.0
126
-
510
24
255.255.255.0
254
1
254
25
255.255.255.128
510
0
126
26
255.255.255.192
1022
2
62
27
255.255.255.224
2046
6
30
28
255.255.255.240
4094
14
14
29
255.255.255.248
8190
30
6
30
255.255.255.252
16382
62
2
31
255.255.255.254
32766
126
-
32
255.255.255.255
65534
254
-
Note: subnet all 0’s and all 1’s are not recommended
CSS 432: Subnetting, CIDR, and Global
Internet
6
Subnet Example
Subnet mask: 255.255.255.128
Subnet number: 128.96.34.0/25
128.96.34.15
128.96.34.1
H1
IP address & subnet mast = subnet number
Example: 128.96.34.15 & 255.255.255.128
= 128.96.34.0
R1
Subnet mask: 255.255.255.128
Subnet number: 128.96.34.128/25
128.96.34.130
128.96.34.139
128.96.34.129
H2
R2
H3
128.96.33.14
128.96.33.1
Subnet mask: 255.255.255.0
Subnet number: 128.96.33.0/24
Forwarding table at router R1
Subnet Number Subnet Mask
128.96.34.0
255.255.255.128
128.96.34.128 255.255.255.128
128.96.33.0
255.255.255.0
CSS 432: Subnetting, CIDR, and Global
Internet
Next Hop
interface 0
interface 1
R2
7
Forwarding Algorithm
D = destination IP address
for each entry (SubnetNum, SubnetMask, NextHop)
D1 = SubnetMask & D
if D1 = SubnetNum
if NextHop is an interface
deliver datagram directly to destination
else
deliver datagram to NextHop (a router)
Use a default router if nothing matches
Not necessary for all 1s in subnet mask to be contiguous
Can put multiple subnets on one physical network
But should be avoided
Ex. Two or more departments want to have their own subnet and to
allocate IP addresses in it while sharing just one physical network
Subnets not visible from the rest of the Internet
CSS 432: Subnetting, CIDR, and Global
Internet
8
Supernetting
Subnetting
Purpose: divide a large class of network number into sub
network numbers → help assign address carefully.
Problem: an AS with more than 255 hosts still needs class B.
Supernetting
Solution: assign block of contiguous network numbers to an
institution.
Ex. Assign two class C network numbers instead of one class B
network.
Side effect: The information routers store and exchange
increases dramatically
Ex. If an AS has 16 class C network numbers, every Internet
router needs 16 entries for this AS.
CIDR: Classless Inter-Domain Routing
CSS 432: Subnetting, CIDR, and Global
Internet
9
CIDR
Basic concept of supernetting using class C:
Represent blocks with a single pair
Example (192.5.48.0, 3)
(first_class_C_network_address, count)
Points to a group of blocks such as 192.5.48.0,
192.5.49.0, and 192.5.50.0
In practice
No restriction to class C nor use of count
Restrict block sizes to powers of 2
Use a bit mask (CIDR mask) to identify block size
Ex. An AS assigned a block of 2048 contiguous addresses starting at
128.211.168.0, (i.e., a collection of 8 class C networks)
Lowest 128.211.168.0
10000000 11010011 10101000 00000000
Highest 128.211.175.255
10000000 11010011 10101111 11111111
CIDR mask (21bits)
11111111 11111111 11111000 00000000
Address Notation:
128.211.168.0/21
CSS 432: Subnetting, CIDR, and Global
Internet
10
Classless Addressing Examples
CIDR allows to aggregate routes repeatedly
Corporation X
11000000 00000100 0000
192.4.0.0/20
Internet
backbone
Regional network
Border gateway
11000000 00000100 00
192.4.0.0/18
Corporation Y
11000000 00000100 0001
192.4.16.0/20
Corporation Z
11000000 00000100 0011
192.4.48.0/20
Then, what if there is a router capable of forwarding packets both to the regional
network and to the cooperation Z?
Prefix
Next Hop
192.4.0.0/18
the regional network
192.4.48.0/20
corporation Z
To which of those two should we forward a packet destined to 192.4.48.3?
Use Principle of Longest Match
CSS 432: Subnetting, CIDR, and Global
Internet
11
Classless Lookup
Binary Tree for IP Routing
1
1
0
0
0
0
128.4.0.0/18
65.4.0.0/14
10000000 00000100 00
01000001 000001
01 0
0
0
Patricia Tree for IP Routing
192.4.48.0/20
1
0 1
192.4.0.0/18
11000000 00000100 0011
11000000 00000100 00
11000000 00000100 0011
0 1 0 1 1 192.4.48.0/20
1
Skip 10 Skip 4 192.4.0.0/18
11000000 00000100 00
0
0
128.4.0.0/18
10000000 00000100 00
65.4.0.0/14
01000001 000001
1
CSS 432: Subnetting, CIDR, and Global
Internet
12
Route Propagation
Know a smarter router
NSFNET backbone
Stanford
ISU
Hosts know local (default) routers
BARRNET
Local routers know site routers
MidNet
regional
regional
Westnet
Site routers know core router
regional
Berkeley
Core routers know everything
PARC
UNL
KU
UNM
NCAR
Site routers are called border routers.
UA
Autonomous System (AS)
Corresponds to an administrative domain
Examples: University, company, backbone network
Two-level route propagation hierarchy
AS2
AS1
Interior gateway protocol (each AS selects its own)
R2
Exterior gateway protocol (Internet-wide standard)
R1
Interior
Exterior
CSS 432: Subnetting, CIDR, and Global
Internet
13
Popular Interior Gateway Protocols
RIP: Route Information Protocol
Distributed
with Unix
Distance-vector algorithm
Based on hop-count
OSPF: Open Shortest Path First
Recent
Internet standard
Uses link-state algorithm
Supports load balancing
Supports authentication
CSS 432: Subnetting, CIDR, and Global
Internet
14
Well-known Exterior Gateway Protocol
Border Gateway Protocol – 4th Version (BGP-4)
Assumption: Internet as an arbitrarily interconnected set
of ASs
Goal: Reachability than optimality
Large corporation
“Consumer ” ISP
Peering
point
Backbone service provider
“ Consumer” ISP
Large corporation
Small
corporation
Stub AS:
Peering
point
Multihomed AS:
“Consumer”ISP
A single connecitoin to another AS
Only carries local traffic.
Connections to multi ASs
Refuses to carry transit traffic
Transit AS:
CSS 432: Subnetting, CIDR, and Global
Internet
Connections to multi-ASs
Carries both transit and local traffic.
15
BGP-4
Each AS has:
one or more border routers
one BGP speaker that advertises:
local networks
other reachable networks (transit AS only)
gives complete path information
Characteristics
Inter-BGP speaker communication based on P2P and TCP
Consistent maintenance on routing information among multiple BGP
speakers
Reachability-based information
Policy Support to distinguish between intra- and inter-AS reachability
information
Incremental updates that sends only reachability change
Route aggregation to send multiple routes in one message
Authentication to allow a receiver to authenticate messages
CSS 432: Subnetting, CIDR, and Global
Internet
16
BGP Example
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
Customer P
(AS 4)
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
Regional provider A
(AS 2)
Backbone network
(AS 1)
Regional provider B
(AS 3)
Speaker for backbone advertises
networks 128.96, 192.4.153, 192.4.32, and 192.4.3 can be
reached along the path (AS1, AS2).
Speaker can cancel previously advertised paths
CSS 432: Subnetting, CIDR, and Global
Internet
17
BGP Messages
BGP Speaker (receiver)
BGP Speaker (sender)
OPEN( myAS#, timeRequiredToReceiveTheRestOfMessage, myIP, options)
KEEPALIVE( )
UPDATE( #Withdrawn, #MaskBits, IP, …., #NewPath, #MaskBits, IP, …., PathAttributes )
TCP connection
KEEPALIVE( )
Next UPDATE( ) or KEEPALIVE( )
Next UPDATE( ) or KEEPALIVE( )
Timer Interrupt
NOTIFICATION(ErrorCode, ErroSubCode, Data)
Timeline
CSS 432: Subnetting, CIDR, and Global
Internet
18
BGP Configuration for Cisco
Routers
AS 777
AS 101
(myself)
R_A
AS 102
R_me
NO
R_B
R_f
(friend)
AS 103
! Our AS number is 101, provide A’s is 102, provide B’s 103, and our firend’s is 777
router bgp 101
network 172.16.0.0
neighbor 172.16.1.1 remote-as 102
! Provider A
neighbor 172.16.1.1 filter-list 81 weight 100 ! Traffic to our friend 777 uses provider
neighbor 172.16.1.1 filter-list 82 out
neighbor 172.16.2.7 remote-as 103
! Provider B
neighbor 172.16.2.7 filter-list 83 out
!
! Define an AS path access-list that selects our friend’s routes
ip as-path access-list 81 permit _777$
! There is a path through A to our friend
at the end
!
! Define an AS path access-list that blocks provider B’s routes
ip as-path access-list 82 deny ^102_
! Don’t let provider A use my network for
ip as-path access-list 82 permit .*
at the beginning
!
! Define an AS path access-list that blocks provider A’s routes
ip as-path access-list 83 deny ^103_
! Don’t let provider B use my network for
Ip as-path access-list 83 permit .*
CSS 432: Subnetting, CIDR, and Global
Internet
A
777
transit
transit
19
Routing Areas
AS divided into areas
Area 0
Known as the backbone
area and connected to the
back bone
Routers (R1, R2, R3) called
ABR (Area Border Router)
OSPF link states
Area 3
Area 1
Area 0
R7
R9
R8
do not leave the area in
which they originated if they
are not ABRs.
ABRs summarize routing
information that they have
learned from one area and
make it available in their
advertisements to other
areas.
R3
R1
R4
Virtual Link
R2
Area 2
R6
CSS 432: Subnetting, CIDR, and Global
Internet
NO
R5
20
OSPF Configuration for Cisco
Routers
Router 2
Router 1
Router 3
172.168.48.0/24
172.168.50.0/24
Router 4
Router 5
172.168.49.0/24
172.168.0.0/24
! Router 1 starts an OSPF process and place all interfaces in area 0
router ospf 1
network 0.0.0.0 255.255.255.255 area 0 ! Mask here means wild cards 0 or 1.
! Router 2 starts an OSPF process and place all interfaces in area 1
router ospf 1
network 0.0.0.0 255.255.255.255 area 0
! Router 3 starts an OSPF process and place in area1 the interface that is part
! of 172.168.48.0./22. Place all the other interfaces in area 0
router ospf 1
network 172.168.48.0 0.0.3.255 area 1 ! The last 10 bits may be 0 or 1
netwrok 0.0.0.0 255.255.255.255 area 0
CSS 432: Subnetting, CIDR, and Global
Internet
21
IP Version 6
Features
128-bit addresses (classless)
multicast
real-time service
authentication and security
autoconfiguration
end-to-end fragmentation
protocol extensions
Header
40-byte “base” header
extension headers (fixed order, mostly fixed length)
fragmentation
source routing
authentication and security
other options
CSS 432: Subnetting, CIDR, and Global
Internet
22
Reviews
Subnetting:
How to address and forwarding algorithm
Supernetting: CIDR, principle of longest match, and
classless lookup
Exterior gateway protocol: BGP and routing areas
Exercises in Chapter 3
Ex.
55 (Subnetting)
Ex. 68 (CIDR)
Ex. 72 (CIDR)
Ex. 74 (CIDR)
CSS 432: Subnetting, CIDR, and Global
Internet
23