Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Computer security wikipedia , lookup
Point-to-Point Protocol over Ethernet wikipedia , lookup
Distributed firewall wikipedia , lookup
Computer network wikipedia , lookup
Dynamic Host Configuration Protocol wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Introduction to Computer Networks CMPE 150 Fall 2005 Lecture 25 CMPE 150- Introduction to Computer Networks 1 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! CMPE 150- Introduction to Computer Networks 2 Today • IP (Cont’d). CMPE 150- Introduction to Computer Networks 3 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. CMPE 150- Introduction to Computer Networks 4 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). CMPE 150- Introduction to Computer Networks 5 IP Datagram Format • IP datagram consists of header and data (or payload). • Header: – 20-byte fixed (mandatory) part. – Variable length optional part. CMPE 150- Introduction to Computer Networks 6 The IP v4 Header CMPE 150- Introduction to Computer Networks 7 IP Options 5-54 CMPE 150- Introduction to Computer Networks 8 IP Addresses • IP address formats. CMPE 150- Introduction to Computer Networks 9 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. CMPE 150- Introduction to Computer Networks 10 IP Addresses (Cont’d) • Special IP addresses. CMPE 150- Introduction to Computer Networks 11 Scalability of IP Addresses • Problem: a single A, B, or C address refers to a single network. • As organizations grow, what happens? CMPE 150- Introduction to Computer Networks 12 Example: A Campus Network CMPE 150- Introduction to Computer Networks 13 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. CMPE 150- Introduction to Computer Networks 14 Subnets • A class B network subnetted into 64 subnets. CMPE 150- Introduction to Computer Networks 15 Subnet Mask • Indicates the split between network and subnet number + host number. Subnet Mask: 255.255.252.0 or /22 (network + subnet part) CMPE 150- Introduction to Computer Networks 16 Subnetting: Observations • Subnets are not visible to the outside world. • Thus, subnetting (and how) is a decision made by local network admin. CMPE 150- Introduction to Computer Networks 17 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 CMPE 150- Introduction to Computer Networks 18 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! CMPE 150- Introduction to Computer Networks 19 Solution: CIDR • CIDR: Classless Inter-Domain Routing. – RFC 1519. • Allocate remaining addresses in variablesized 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. CMPE 150- Introduction to Computer Networks 20 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. CMPE 150- Introduction to Computer Networks 21 NAT – Network Address Translation CMPE 150- Introduction to Computer Networks 22 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. CMPE 150- Introduction to Computer Networks 23 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. CMPE 150- Introduction to Computer Networks 24 ICMP Message Types 5-61 CMPE 150- Introduction to Computer Networks 25 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). CMPE 150- Introduction to Computer Networks 26 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. CMPE 150- Introduction to Computer Networks 27 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. CMPE 150- Introduction to Computer Networks 28 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. CMPE 150- Introduction to Computer Networks 29 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. CMPE 150- Introduction to Computer Networks 30 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. CMPE 150- Introduction to Computer Networks 31 DHCP Operation CMPE 150- Introduction to Computer Networks 32 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. CMPE 150- Introduction to Computer Networks 33