Download presentation
1
Classless and Subnet Address Extensions (CIDR)
Chapter 9
2
32-bit addresses are carefully assigned
Chapter 4 Discussed original Internet addressing scheme This chapter See 4 extensions to conserve network prefixes REVIEW 32-bit addresses are carefully assigned All hosts on given physical network share a common prefix Remainder of the address is the host portion Chief advantage: keeps routing tables small Router keeps one entry per network
3
Original scheme divided by network size
Class A: 8-bit network, 24-bit host Class B: 16-bit network, 16-bit host Class C: 24-bit network, 8-bit host Need to understand: Individual sites may modify addresses & routes Modifications must be invisible to the outside Hosts & routers at the site agree on addressing Other sites can treat addresses as a normal netid and hostid combination
4
Minimizing Network Numbers
Weakness in original scheme: growth Internet size doubling every 9-15 months Large admin overhead to manage addresses Large routing tables High load on Internet to exchange router information Eventual exhaustion of the address space Particularly Class B
5
How to minimize within the scheme?
Look at three ways Unnumbered point-to-point Proxy ARP Subnet addressing Extend subnet ideas to network prefixes Classless addressing Footnote: was predicted that IPv4 space would be exhausted by 2000; now appears that with careful allocation and this chapter’s techniques, it will last until around 2019
6
Proxy ARP (1) Technique has various names
Proxy ARP; promiscuous ARP; the ARP hack Used to map a single IP network prefix into two physical addresses Only applies to networks that use ARP to bind IP addresses to physical addresses
7
R knows which hosts are on which network
Uses ARP to maintain illusion that only one network exists Intercepts ARP requests from one network to the other Gives its own physical address Gets datagram Uses special routing table to route the datagram Main Network Router running proxy ARP H1 H2 H3 R H4 H5 Hidden Network
8
Routers running proxy ARP lie
Take advantage of trust in ARP protocol Mappings are usually installed: Without checking their validity Without maintaining consistency So, ARP table can map several IP addresses to the same physical address Some ARP implementations tell Complain about possible security violations Spoofing: one machine claims to be another Cannot use on networks with proxy ARP routers
9
Advantage of proxy ARP:
Can be added to a single router without disturbing the other routing tables on the net Disadvantages: Only works on networks that use ARP address resolution Does not generalize to more complex networks Does not support reasonable form of routing Managers must maintain tables of machines and addresses manually
10
Subnet Addressing (2) Most common of the 3 address extension techniques Is a required part of IP addressing General idea: Site has single IP network address Actually has two or more physical networks Only local routers know this To other routers: single physical network
11
Example of Class B network using subnetting
Third octet distinguishes between the two networks Fourth octet distinguishes between hosts H1 H2 Rest of the Internet R Network all traffic to H3 H4
12
IP address now divided into:
Network portion Remains the same as for networks not subnetting Local portion Interpretation left up to the site Identifies the physical network and host at the site
13
Result is hierarchical addressing
Top routing hierarchy uses first two octets Next level (local) uses an additional octet Lowest level uses the whole address Advantage of hierarchical addressing: Accommodates large growth Disadvantage: Choosing hierarchical structure is difficult Hierarchy hard to change once established
14
Flexibility in subnet addressing
TCP/IP standard allows flexibility Don’t have to divide local portion into two even parts for physical net and host Can partition in any desired fashion Defines number of subnets Defines hosts per subnet
15
Possible fixed-length subnets for Class B
Subnet Bits Number of Subnets Hosts per Subnet 1 65534 2 16382 3 6 8190 4 14 4094 5 30 2046 62 1022 7 126 510 8 254 9 10 11 12 13 * Avoids all 0s and all 1s subnet and host addresses
16
Variable-length subnets
Choosing a partition chooses a subnet scheme Most sites use fixed-length But, some sites need more internal flexibility May select a subnet partition on a per-network basis Partitions do not vary over time; only between networks All hosts and routers attached must honor the scheme Too many disadvantages; we will not consider
17
Implementing subnets with masks
32-bit mask is used to specify the division of the IP address Mask bit set: treat as part of subnet prefix Mask bit 0: treat as part of host id Example: First three octets identify the network Fourth octet identifies a host on the network Don’t have to use contiguous bits in the mask Makes understanding routing tricky
18
Subnet mask representation
Specifying masks in binary is difficult Awkward Error prone Most IP sw uses dotted decimal representation Works best when subnetting is aligned on octets Class B: 3rd octet for physical net; 4th for host Notation: Another way is a 3-tuple representation {<network number>, <subnet mask>, <host number>} Value –1 means “all ones” Above example: {-1, -1, 0}
19
Forwarding with subnets
Must modify our standard routing algorithm All hosts and routers attached to a network using subnet addressing must use subnet forwarding Not so obvious: Other hosts & routers at the site may have to as well Unless restrictions on using subnetting are followed
20
Theoretically simple subnet rule
Illegal topology H would have to use subnet routing even though Net 1 does not have a subnet address Theoretically simple subnet rule For optimal forwarding Machine M must use subnet forwarding for an IP network address N Unless there is a single path P such that P is a shortest path between M and every physical network that is a subset of N Net 1 (not a subnet address) R1 H R2 Net 2 (subnet of address N) Net 3 (subnet of address N)
21
Still, hard to assign subnets
Shortest path can change (HW fail; re-routing) Rule does not consider site boundaries Subnetting should be kept as simple as possible All subnets of a given network IP address should be contiguous The masks should be uniform across all networks All machines should participate in subnet routing
22
Subnet forwarding algorithm
Algorithm searches a table of routes like before Normal entries for standard algorithm: (network address, next hop address) Per-host and default routes are special cases Must be checked explicitly Algorithm compares network portion of destination to the network address field Knows how address is partitioned With subnets, not possible to know the partitioning from the address alone
23
Modified algorithm needs additional information
Must have the subnet mask Table entries are of the form: (address mask, network address, next hop address) Address mask used in routing Extracts right bits for comparison with network address entry Performs bit-wise Boolean and 32-bit destination IP address Subnet mask field Checks to see if result matches entry’s network address field If so, next hop address is used to route the datagram
24
Example: route to single host
By using arbitrary masks, will not need the special case checking of the standard algorithm Example: route to single host Mask of all 1’s Network address equal to host’s IP address Example: default route Mask of all 0’s Network address of all 0’s Example: route to non-subnetted Class B Mask of two octets of 1’s and two octets of 0’s Thus, the “unified” routing algorithm will contain fewer special cases
25
Forward_IP_Datagram (datagram, routing_table)
Algorithm: Forward_IP_Datagram (datagram, routing_table) Extract destination IP address, ID, from datagram; If prefix of ID matches address of any directly connected network send datagram to destination over that network (This involves resolving ID to a physical address, encapsulating the datagram, and sending the frame.) else for each entry in routing table do Let N be the bitwise-and of ID and the subnet mask If N equals the network address field of the entry then forward the datagram to the specified next hop address endforloop If no matches were found, declare a routing error
26
Maintenance of subnet masks
How do subnet masks get propagated? Answer that question later How do subnet masks get assigned? Harder question Each site free to choose masks for own networks Nonuniform masks give more flexibility, but may cause ambiguity Valid assignments may become invalid as hosts are added Usually: Select contiguous bits from the local portion to ID a network Use the same partition for all local physical networks on site
27
Broadcasting to subnets
More difficult Router cannot just send broadcast packet to all interfaces that share the subnet prefix Will cause a routing loop Use reverse path forwarding to prevent loops Router extracts source of broadcast datagram Looks up source in routing table Discards datagram unless it arrived on the interface used to route to the source (the shortest path) Is possible to broadcast to a specific subnet Consistent subnets masks are critical
28
Anonymous Point-to-Point (3)
Original IP scheme Each network was assigned a unique prefix Point-to-point connections viewed as networks Different view as addresses became scarce Anonymous networking Invented to avoid assigning such prefixes Does not number leased lines Does not assign host address to routers at each end No HW address needed; next hop address ignored
29
Called unnumbered or anonymous network
Figure 9.8 Called unnumbered or anonymous network Possible since only one destination
30
Classless Addressing (4) (Supernetting)
Subnetting invented in early 1980s By 1993, saw address space still in trouble New IP version in works with bigger addresses Needed something until new version standardized Temporary solution was classless addressing Permits a network prefix to be of arbitrary length Also invented forwarding & route propagation techniques Entire technology: Classless Inter-Domain Routing
31
Early use of classless: supernetting
Was adopted because: Different number of networks in each class Class C number were being requested slowly Class B numbers were running out quickly Early use of classless: supernetting Organization wants Class B address Instead, give block of Class C addresses Suppose organization wanted 200 networks With Class B, want to subnet with 3rd octet Assign 256 contiguous Class C numbers instead
32
CIDR address blocks and bit masks
Intended use beyond single organization For hierarchical Internet ISPs get large part of the address space They, in turn, allocate to their subscribers Uses a bit mask to identify the size of the block For 2048 addresses starting at lowest: highest: Mask: To specify the block of addresses, CIDR needs 32-bit value of lowest address 32-bit mask Mask delineates the end of the prefix Above, need 21 bits set in the mask
33
CIDR notation Also called slash notation
Used to specify the address and mask For the previous example: /21 /21 denotes 21 bits in a mask
34
Classless addressing provides complete flexibility in allocating various size blocks
ISP can choose to assign each customer a block of appropriate size If it owns a block of N bits, can assign a customer any piece of more than N bits Example: ISP has /16 Can give a customer the 2048 addresses in the /21 range Or, small customer with 2 computers, use /30 Lowest: Highest:
35
Recap: Classless addressing is used by ISPs
Treats IP addresses as arbitrary integers Allows network admin to assign addresses in contiguous blocks Number of addresses in each block is a power of two
36
Data structures and algorithms
Want speed Primary: speed for finding next hop Secondary: speed of making changes in table CIDR address in not self-identifying Router cannot determine division between prefix and suffix by just looking at the address For classful addressing, only needed hashing Router extracts network portion, N, and uses as hash key Computes hash function h(N) Result is index Router cannot find hash key for arbitrary address
37
Alternatives: Search by mask length
Iterates over all possible divisions between prefix/suffix Disadvantage: iteration is slow Better alternative: binary trie structure Hierarchical data structure Successive address bits determine a path from the root down PATRICIA and level compressed tries Are optimized to allow skipping of levels that do not distinguish between routes
38
32-bit Address Unique Prefix 00 0100 0101 011 1010 10110 10111
39
Interior node Exterior node
40
Summary Four techniques to conserve IP addresses Proxy ARP
Router impersonates computer on another physical net Subnet addressing TCP/IP standard Sites can share a single IP network address among multiple physical networks Unnumbered point-to-point Point-to-point links have no prefix
41
CIDR Major shift in IP technology
Classless addressing with arbitrary prefix and suffix boundaries Not self-identifying like classful addresses Significant changes to algorithms and data structures
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.