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