lecture25 - Courses

cursefarmΔίκτυα και Επικοινωνίες

24 Οκτ 2013 (πριν από 3 χρόνια και 9 μήνες)

84 εμφανίσεις

CMPE 150
-

Introduction to Computer Networks

1

CMPE 150



Fall 2005

Lecture 25

Introduction to Computer
Networks

CMPE 150
-

Introduction to Computer Networks

2

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.


Need volunteers!


CE 151 will be offered in Winter 06!




CMPE 150
-

Introduction to Computer Networks

3

Today


IP (Cont’d).

CMPE 150
-

Introduction to Computer Networks

4

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

5

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

6

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

7

The IP v4 Header

CMPE 150
-

Introduction to Computer Networks

8

IP Options


5
-
54

CMPE 150
-

Introduction to Computer Networks

9

IP Addresses


IP address formats.

CMPE 150
-

Introduction to Computer Networks

10

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

11

IP Addresses (Cont’d)


Special IP addresses.

CMPE 150
-

Introduction to Computer Networks

12

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

13

Example: A Campus Network

CMPE 150
-

Introduction to Computer Networks

14

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

15

Subnets


A class B network subnetted into 64 subnets.

CMPE 150
-

Introduction to Computer Networks

16

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

17

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

18

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

19

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

20

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.

CMPE 150
-

Introduction to Computer Networks

21

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

22

NAT


Network Address
Translation

CMPE 150
-

Introduction to Computer Networks

23

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

24

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

25

ICMP Message Types


5
-
61

CMPE 150
-

Introduction to Computer Networks

26

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

27

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

28

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

29

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

30

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

31

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

32

DHCP Operation

CMPE 150
-

Introduction to Computer Networks

33

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.