Oct 26, 2004CS573: Network Protocols and Standards1 IP: Routing and Subnetting Network Protocols and...

26
Oct 26, 2004 CS573: Network Protocols and Sta ndards 1 IP: Routing and Subnetting Network Protocols and Standards Autumn 2004-2005
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    0

Transcript of Oct 26, 2004CS573: Network Protocols and Standards1 IP: Routing and Subnetting Network Protocols and...

Oct 26, 2004 CS573: Network Protocols and Standards

1

IP: Routing and Subnetting

Network Protocols and Standards

Autumn 2004-2005

Oct 26, 2004 CS573: Network Protocols and Standards 2

Routing IP Datagram Direct Delivery (i.e., not involving routers):

Transmission of an IP datagram between two machines on a single physical network does not involve routers

The sender encapsulates the datagram in a physical frame, binds the destination IP address to a physical hardware address (using ARP), and sends the resulting frame directly to the destination

The two machines are known to be on the same network because they have the same network identifier

Example: A sends IP Datagram to B

Router

A B C

Oct 26, 2004 CS573: Network Protocols and Standards 3

Routing IP Datagram Indirect delivery (i.e. through

intermediate routers) Host performs routing decisions based on

routing table indicating “next hop” “Next hop” refers to next router IP address on

this network, via which the destination is reached

Routing decisions are made based on network prefixes (not full IP address)

The sender encapsulates the datagram in a frame with the router’s physical destination address (which is found by means of ARP).

Oct 26, 2004 CS573: Network Protocols and Standards 4

Direct and Indirect Routing

Host A204.240.18.10

Host B204.240.18.20

Router

204.240.18.1

Internet

Host C36.14.0.200

Direct Routing: Packets sent directly usingMAC address of A

Indirect Routing: Packets sent to the MAC addressof the router. At the IP level, B isthe source and C is the destination

B wants to send packets to A and C!

Oct 26, 2004 CS573: Network Protocols and Standards 5

IP Routing Decisions

Network10.0.0.0

Network40.0.0.0

Network20.0.0.0

Network30.0.0.0

R1R2

R3

10.0.0.5

20.0.0.520.0.0.6 30.0.0.6

30.0.0.7

40.0.0.7

Routing Table of R2

To Reach Hosts on Network

Next Hop Address

20.0.0.0 Direct Delivery

30.0.0.0 Direct Delivery

10.0.0.0 20.0.0.5

40.0.0.0 30.0.0.7

Oct 26, 2004 CS573: Network Protocols and Standards 6

IP Routing Algorithm Router receives an IP datagram with network portion N

and destination D If N is directly connected

Transmit on that network Else If host specific entry for D exists

Use next hop in that entry Else If route entry for N exists

Use next hop in that entry Else If default route for next hop exists

Use default route for next hop Else

Declare error

Oct 26, 2004 CS573: Network Protocols and Standards 7

Routing Within Same Network Consider a small company with a single LAN

to which a class C network address has been assigned

The company is interested in adding another small physical network (connected to old network through a router) with a few hosts

Question: Could this company assign these hosts IP addresses from the same C class network? i.e., could the two LANs share the same class C network address?

Oct 26, 2004 CS573: Network Protocols and Standards 8

Proxy ARP

Used to allow two physical networks to share the same IP network prefix

Router R’s table is configured manually to route between these two networks

Router R answers ARP requests on each network for hosts on the other network, giving its own hardware address as the target address

Main Router

A B C

Main NetworkTo Internet

Hidden NetworkED

Router R

Oct 26, 2004 CS573: Network Protocols and Standards 9

Proxy ARP Advantage of Proxy ARP Router

Can be added without disturbing the routing table in other hosts or routers on that network

Disadvantages: Does not generalize to complex network topologies

(does not scale) Does not support a reasonable form of routing.

(relies on network managers to maintain tables of machines and addresses manually)

Issues: Several IP addresses map to the same physical

address. How to distinguish between a legitimate Proxy ARP router and spoofing?

Oct 26, 2004 CS573: Network Protocols and Standards 10

Issues in Addressing A large corporate/campus environment

Large number of Local Area Networks Some with fewer than 256 hosts Some with more than 256 hosts

If each physical network is assigned a network number:

Immense administrative overhead to manage a large number of network addresses

Routing tables in routers become extremely large (one entry for each physical network)

Insufficient number of class B prefixes to cover medium sized networks (having more than 256 hosts)

Oct 26, 2004 CS573: Network Protocols and Standards 11

Subnetting Solution: Provide the campus with a

single class B network Give freedom to the campus network

admin to allocate host numbers to hosts From outside, the whole campus is simply

known by the class B network ID Inside, there may be a hierarchy that

remains transparent to the outside world

Oct 26, 2004 CS573: Network Protocols and Standards 12

Subnetting Consider a class B network

How to allocate host numbers to hosts? A single LAN is out of question If host numbers are assigned randomly,

i.e., without any hierarchy, the routers inside the network will have to deal with large tables – one entry per host

Thus, a hierarchical structure is required

Oct 26, 2004 CS573: Network Protocols and Standards 13

Subnetting

Physical Network(Subnet 1)

Physical Network(Subnet 2)

Physical Network(Subnet 3)

Physical Network(Subnet 4)

R

RR R

R

H H

H H

H

H HHH

H

H

H

Oct 26, 2004 CS573: Network Protocols and Standards 14

Subnetting

RInternetH1 H2

H4H3

Network 128.10.1.0

Network 128.10.2.0

128.10.1.1 128.10.1.2

128.10.2.2128.10.2.1

H1 wants to send an IP datagram to H3:Old addressing dictates it is a “direct delivery”With subnetting, it may become “indirect”

R is not a Proxy ARP router!

Subnet 1

Subnet 2

Oct 26, 2004 CS573: Network Protocols and Standards 15

Subnetting We previously divided IP addresses in a

network portion and a host portion More generally, think of a 32-bit IP address as

having an Internet part and a Local part Internet part of the IP address identifies a site

(possibly with many physical networks) The local portion identifies a physical network and

host at that siteInternet Part Local Part

Internet Part Subnet Host

Oct 26, 2004 CS573: Network Protocols and Standards 16

Subnetting

Examples: Class B IP address

Internet Part Subnet Host

16bits 8bits 8bits

Internet Part Subnet Host

16bits 3bits 13bits

Oct 26, 2004 CS573: Network Protocols and Standards 17

Subnet ImplementationSubnet Mask:

Specifies the bits of the IP address used to identify the subnet

Internet Part of Address Subnet Host

16bits 8bits 8bits 11111111 11111111 11111111 00000000

Internet Part of Address Subnet Host

Subnet Mask(32bits)

16bits 3bits 13bits11111111 11111111 111 00000 00000000

255. 255. 255. 0

255. 255. 224. 0

Oct 26, 2004 CS573: Network Protocols and Standards 18

Subnetting It is recommended that sites use

contiguous subnet masks Avoid masks such as

11111111 11111111 11000010 11000000 When choosing a subnet mask, balance:

Size of networks Number of networks Expected growth Ease of maintenance

It is possible to use different masks in different parts of the network

Oct 26, 2004 CS573: Network Protocols and Standards 19

Subnet Routing Conventional routing table entry

(network address, next hop address) Network address format is predetermined for a given

class (e.g., first 16 bits for class B addresses!)

With subnetting, routing table entry becomes (subnet mask, network address, next hop

address) Then compare with network address field of

entries to find next hop address Subnet mask indicates the network address!

Oct 26, 2004 CS573: Network Protocols and Standards 20

Subnet Routing The use of mask generalizes the subnet routing algorithm to

handle all the special cases of the standard algorithm Routes to individual hosts Default route Routes to directly connected networks Routes to conventional networks (that do not use subnet

addressing) Merely combine the 32-bit mask field with the 32-bit IP

address Example: To install a route for:

Individual host (Mask of all 1’s, Host IP address) Default Route (Mask of all 0’s, network address all 0’s) Class B network address (Mask of two octets of 1’s and two of

0’s)

Oct 26, 2004 CS573: Network Protocols and Standards 21

Subnet Routing Algorithm

Extract destination IP (D) from datagram Compute IP address of destination network N If N matches any directly connected network address

Send datagram over that network (obviously encapsulated in a frame)

Else For each entry in the routing table, do N* = bitwise-AND of D and subnet mask If N* equals the network address field of the entry, then

route the datagram to the specified next hop

Oct 26, 2004 CS573: Network Protocols and Standards 22

Supernet Addressing Use of many IP network addresses for a

single organization Example:

To conserve class B addresses, issue multiple class C address to the same organization

Issue: increase in the number of entries in the routing table

Solutions: Collapse a block of contiguous class C address into

the pair: (network address, count) where network address is the smallest number in the block

Oct 26, 2004 CS573: Network Protocols and Standards 23

Supernet Addressing It requires each block to be a power of 2

and uses bit mask to identify the size of the block

Example Dotted decimal 32-bit binary equivalent

Lowest: 234.170.168.0 11101010 10101010 10101000 00000000

Highest: 234.170.175.255 11101010 10101010 10101111 11111111

A block of 2048 addresses 32-bit mask is 11111111 11111111 11111000 00000000

Do we really need address classes when we have masks?

Answer: NO CIDR (Classless Inter Domain Routing)

Oct 26, 2004 CS573: Network Protocols and Standards 24

Supernet Addressing In the router, the entry consists of:

The lowest address and the 32-bit mask

A block of addresses can be subdivided, and separate route can be entered for each subdivision

When looking up a route, the routing software uses a longest-match paradigm to select a route

Oct 26, 2004 CS573: Network Protocols and Standards 25

IPv6 Motivation

Limited address space Support for new applications

Multimedia streams, for example Security Extensibility

Oct 26, 2004 CS573: Network Protocols and Standards 26

Features of IPv6 Larger addresses

128 bit addresses Flexible header format

Set of optional headers Support for flow identification

Needed in resource allocation for multimedia streams

Provision for protocol extension