Title: CMPE 150 Fall 2005 Lecture 25
1CMPE 150 Fall 2005Lecture 25
- Introduction to Computer Networks
2Announcements
- 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!
3Today
4IP (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.
5IP 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).
6IP Datagram Format
- IP datagram consists of header and data (or
payload). - Header
- 20-byte fixed (mandatory) part.
- Variable length optional part.
7The IP v4 Header
8IP Options
5-54
9IP Addresses
10IP Addresses (Contd)
- 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.
11IP Addresses (Contd)
12Scalability of IP Addresses
- Problem a single A, B, or C address refers to a
single network. - As organizations grow, what happens?
13Example A Campus Network
14Solution
- Subnetting divide the organizations 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.
15Subnets
- A class B network subnetted into 64 subnets.
16Subnet Mask
- Indicates the split between network and subnet
number host number.
Subnet Mask 255.255.252.0 or
/22 (network subnet part)
17Subnetting Observations
- Subnets are not visible to the outside world.
- Thus, subnetting (and how) is a decision made by
local network admin.
18Subnet Example
- Subnet 1 10000010 00110010 00000100 00000001
- 130.50.4.1
- Subnet 2 10000010 00110010 00001000 00000001
- 130.50.8.1
- Subnet 3 10000010 00110010 00001100 00000001
- 130.50.12.1
19Problem 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!
20Solution 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.
21Network 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 organizations
network.
22NAT Network Address Translation
23Internet Control Protocols
- Companion protocols to IP.
- Control protocols used mainly for signaling and
exchange of control information. - Examples ICMP, ARP, RARP, BOOTP, and DHCP.
24ICMP
- 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.
25ICMP Message Types
5-61
26Address 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).
27ARP Example
. Host 1 wants to send packet to host 2. .
Assume that host 1 knows host 2s IP address.
. Host 1 builds packet with host 2s IP address.
. IP knows its a local destination but now
needs host 2s Ethernet address.
28ARP Operation
- Host 1 broadcasts an ARP request on the Ethernet
asking who owns host 2s IP address. - Host 2 replies with its Ethernet address.
- Some optimizations
- ARP caches.
- Piggybacking hosts own Ethernet address on ARP
requests. - Proxy ARP services ARP requests for hosts on
separate LANs.
29Beyond 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.
30DHCP
- 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.
31DHCP Operation
- Newly booted host broadcasts a DHCP DISCOVER
message. - DHCP relay agent intercepts DHCP DISCOVERs on its
LAN and unicasts them to DHCP server.
32DHCP Operation
33DHCP 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.