330 likes | 497 Views
CMPE 150 Fall 2005 Lecture 25. Introduction to Computer Networks. Announcements. Homework 4 due today by midnight. No class on Friday, 11.25.05. IMPORTANT: No lab tonight. Make up lab session next week. Final exam: December 7 th . 4-7pm In class. Closed books/notes. Course evaluation.
E N D
CMPE 150Fall 2005Lecture 25 Introduction to Computer Networks
Announcements • Homework 4 due today by midnight. • No class on Friday, 11.25.05. • IMPORTANT: No lab tonight. • Make up lab session next week. • Final exam: December 7th. 4-7pm • In class. • Closed books/notes. • Course evaluation. • Need volunteers! • CE 151 will be offered in Winter 06!
Today • IP (Cont’d).
IP (Internet Protocol) • Glues Internet together. • Common network-layer protocol spoken by all Internet participating networks. • Best effort datagram service: • No reliability guarantees. • No ordering guarantees.
IP Versions • IPv4: IP version 4. • Current, predominant version. • 32-bit long addresses. • IPv6: IP version 6 (aka, IPng). • Evolution of IPv4. • Longer addresses (16-byte long).
IP Datagram Format • IP datagram consists of header and data (or payload). • Header: • 20-byte fixed (mandatory) part. • Variable length optional part.
IP Options 5-54
IP Addresses • IP address formats.
IP Addresses (Cont’d) • Class A: 128 networks with 16M hosts each. • Class B: 16,384 networks with 64K hosts each. • Class C: 2M networks with 256 hosts each. • More than 500K networks connected to the Internet. • Network numbers centrally administered by ICANN.
IP Addresses (Cont’d) • Special IP addresses.
Scalability of IP Addresses • Problem: a single A, B, or C address refers to a single network. • As organizations grow, what happens?
Solution • Subnetting: divide the organization’s address space into multiple “subnets”. • How? Use part of the host number bits as the “subnet number”. • Example: Consider a university with 35 departments. • With a class B IP address, use 6-bit subnet number and 10-bit host number. • This allows for up to 64 subnets each with 1024 hosts.
Subnets • A class B network subnetted into 64 subnets.
Subnet Mask • Indicates the split between network and subnet number + host number. Subnet Mask: 255.255.252.0 or /22 (network + subnet part)
Subnetting: Observations • Subnets are not visible to the outside world. • Thus, subnetting (and how) is a decision made by local network admin.
Subnet: Example • Subnet 1: 10000010 00110010 000001|00 00000001 • 130.50.4.1 • Subnet 2: 10000010 00110010 000010|00 00000001 • 130.50.8.1 • Subnet 3: 10000010 00110010 000011|00 00000001 • 130.50.12.1
Problem with IPv4 • IPv4 is running out of addresses. • Problem: class-based addressing scheme. • Example: Class B addresses allow 64K hosts. • More than half of Class B networks have fewer than 50 hosts!
Solution: CIDR • CIDR: Classless Inter-Domain Routing. • RFC 1519. • Allocate remaining addresses in variable-sized blocks without considering classes. • Example: if an organization needs 2000 addresses, it gets 2048-address block. • Forwarding had to be modified. • Routing tables need an extra entry, a 32-bit mask, which is ANDed with the destination IP address. • If there is a match, the packet is forwarded on that interface.
Network Address Translation • Another “quick fix” to the address shortage in IP v4. • Specified in RFC 3022. • Each organization gets a single (or small number of) IP addresses. • This is used for Internet traffic only. • For internal traffic, each host gets its own “internal” IP address. • Three IP ranges have been declared as “private”. • 10.0.0.0 – 10.255.255.255/8 • 172.16.0.0 – 172.31.255.255/12 • 192.168.0.0 – 192.168.255.255/16 • No “private” IP address can show up on the Internet, i.e., outside the organization’s network.
Internet Control Protocols • “Companion” protocols to IP. • Control protocols used mainly for signaling and exchange of control information. • Examples: ICMP, ARP, RARP, BOOTP, and DHCP.
ICMP • Internet Control Message Protocol. • A way to “debug” the Internet and find out what is happening at routers. • Defines a dozen different messages that are generated typically by routers upon some unexpected event.
ICMP Message Types 5-61
Address Resolution Protocol • ARP. • RFC 826. • Protocol for machines to map IP addresses to Ethernet addresses. • This is needed when packet needs to be delivered to a local host on a LAN (Ethernet).
ARP: Example . Host 1 wants to send packet to host 2. . Assume that host 1 knows host 2’s IP address. . Host 1 builds packet with host 2’s IP address. . IP knows it’s a local destination but now needs host 2’s Ethernet address.
ARP Operation • Host 1 broadcasts an ARP request on the Ethernet asking who owns host 2’s IP address. • Host 2 replies with its Ethernet address. • Some optimizations: • ARP caches. • Piggybacking host’s own Ethernet address on ARP requests. • Proxy ARP: services ARP requests for hosts on separate LANs.
Beyond ARP • ARP solves the problem of mapping IP address to Ethernet address. • How do we solve the inverse problem? • I.e., how to map an Ethernet address to an IP address? • Older protocols: RARP (RFC 903) and BOOTP (RFC 951). • RARP broadcasts not forwarded by routers. • BOOTP uses UDP but requires manual configuration of IP-Ethernet mappings.
DHCP • Dynamic Host Configuration Protocol. • RFCs 2131 and 2132. • Assigns IP addresses to hosts dynamically. • DHCP server may not be on the same LAN as requesting host. • DHCP relay agent.
DHCP Operation • Newly booted host broadcasts a DHCP DISCOVER message. • DHCP relay agent intercepts DHCP DISCOVERs on its LAN and unicasts them to DHCP server.
DHCP: Address Reuse • How long should an IP address be allocated? • Issue: hosts come and go. • IP addresses may be assigned on a “Lease” basis. • Hosts must renew their leases.