300 likes | 306 Vues
Scaling the Network: Subnetting and Other Protocols. Networking CS 3470, Section 1. Today. CIDR Subnetting Private IP addresses ICMP, IMAP, and DHCP Protocols. Packet Encapsulation. ** Creative Commons: http://en.wikipedia.org/wiki/File:UDP_encapsulation.svg. IP Addressing.
E N D
Scaling the Network: Subnetting and Other Protocols Networking CS 3470, Section 1
Today • CIDR • Subnetting • Private IP addresses • ICMP, IMAP, and DHCP Protocols
Packet Encapsulation ** Creative Commons: http://en.wikipedia.org/wiki/File:UDP_encapsulation.svg
IP Addressing • Classful addressing scheme separates groups of addresses into classes • Class A • 8 bits used for network (256) • 24 bits used for hosts and network devices (16,777,216) • Binary address starts with 0 • Class B • 16 bits for networks (65,536) • 16 bits for hosts and network devices (65,536) • binary address starts with 10 • Class C • 24 bits for the network (16,777,216) • 8 bits for the host (256) • Binary address starts with 110
Classless Inter-Domain Routing • Classful addressing scheme wasteful • IP address space exhaustion • Class B net allocated enough for 65K hosts • Even if only 2K hosts in that network • Solution: Classless Inter Domain Routing (CIDR) • Eliminate class distinction • No A,B,C • Keep multicast class D
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Classless Addressing • Addresses allocated in contiguous blocks • Number of addresses assigned always power of 2 • Network portion of address is of arbitrary length • Address format: a.b.c.d/x • x is number of bits in network portion of address
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Subnet Motivation • This network can have 215 = 32,768 hosts! • Imagine the size of the routing tables if we had a flat network of all these hosts! • We want to split this network up into smaller networks
host part network part 11001000 000101111 0000000 00000000 200.23.128.0/17 Subnet Motivation • We probably want to split this network up into smaller networks (subnets) due to • Security reasons • Logistical reasons • Routing reasons
host part network part 11000000 1010100000001010 00000000 192.168.10.0/24 Let’s play with a small example • Suppose you have this private class C network, and you need to divide it evenly • You will have hosts 0-127 • Friend will have hosts 128-255
host part network part 11000000 1010100000001010 00000000 192.168.10.0/24 Let’s play with a small example • Dividing the network into subnets involves using some of the host bits as the subnet ID • What bit of the host part of the address do we have to flip to signify >= 128 for the host ID?
host part host part network part network part 11000000 10101000000010100 0000000 11000000 10101000000010101 0000000 192.168.10.0/25 192.168.10.128/25 Let’s play with a small example subnet ID • Can address hosts 0-127 • Can address hosts 128-255 subnet ID
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • Now, how can routers easily figure out where destination IP address 192.168.10.202 should be routed? • 192.168.10.0/25 or 192.168.10.128/25 subnet?
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • A subnet number is the network part + subnet ID + zeros for the host • 192.168.10.0 • A subnet mask consists of all 1’s for the network+subnet ID and all 0’s for the host part • What is this subnet mask?
host part network part 11000000 10101000000010100 0000000 192.168.10.0/25 Let’s play with a small example subnet ID • Subnet mask: 255.255.255.128 11111111 11111111 11111111 10000000
host part network part 11000000 10101000000010101 0000000 192.168.10.128/25 Let’s play with a small example subnet ID • Subnet mask: 255.255.255.128 11111111 11111111 11111111 10000000
Subnet Masks • We can figure out where to route by noting that dest subnet = subnet mask & dest IP addr
Subnet Masks dest subnet = subnet mask & dest IP addr • Let’s say destination IP is 192.168.10.202 and lets & with subnet mask 192 . 168 . 10 . 128 We send packet to 192.168.10.128/25 network! 11000000 10101000 00001010 110001010 & 11111111 11111111 11111111 100000000 11000000 10101000 00001010 100000000
Longest-Prefix Match • Suppose two network IDs exist: 1) 128.186.0.0/16 2) 128.186.134.0/24 • Suppose you have destination IP of 128.186.134.100 • Both subnet mask & IP of 1 and 2 will yield match – what to do? • Longest-prefix match– route to network with the most matching host bits.
Subnetting Notes • Would use a default router if nothing matches • Not necessary for all ones in subnet mask to be contiguous • Can put multiple subnets on one physical network • Subnets not visible from the rest of the Internet
Routing with CIDR • Destination IP is BA.DB.EE.F2
Special IP Addresses • Network address: host id = all 0’s • Local broadcast address: all 1’s • Used during system startup • Directed broadcast address: host id = all 1’s • Routers will forward this broadcast address • Local host address (this computer): all 0’s • Used during system startup • Loopback address • network id = 127, any host id (e.g. 127.0.0.1)
Private IP Addresses • Some addresses are not globally routable • IP packets created by these addresses cannot be transmitted into the public domain • Commonly used for home, office, and enterprise LANS
Private IP addresses • Router uses Network Address Translation (NAT) to send IP packets from private IP addresses onto public networks • Router places it’s own IP address as destination • Maintains table, knows which host to route addresses Router keeps translation table
IP Address Configuration • May configure a network statically by giving each host it’s IP address and routing information (like gateway) • Or may configure a server to do this for you dynamically
DHCP Server • Dynamic Host Configuration Protocol (DHCP) • DHCP server is responsible for providing configuration information to hosts • There is at least one DHCP server for an administrative domain • DHCP server maintains a pool of available addresses
DHCP Protocol • State Protocol • DHCPDISCOVER (client) • DHCPOFFER (server) • DHCPREQUEST (client) • DHCPACK (server) • DHCPNAK (server) • DHCPINFORM (client)
DHCP • Newly booted or attached host sends DHCPDISCOVER message to a special IP address (255.255.255.255) • Rest of messages are unicast back and forth
DHCP • IP leases are valid for a predefined period of time (T1) • Leases are renewed at T1/2 • Leases are released if they have not been renewed at the expiration of the lease time
Internet Control Message Protocol (ICMP) • Defines a collection of error messages that are sent back to the source host whenever a router or host is unable to process an IP datagram successfully • Destination host unreachable due to link /node failure • Reassembly process failed • TTL had reached 0 (so datagrams don't cycle forever) • IP header checksum failed • The ping application is a very common ICMP-message-generator