Internetworking COS 461 Spring 2003 CS 461

advertisement
Internetworking
COS 461
Spring 2003
Spring 2003
CS 461
1
Mechanics
• Today: finish switches, cover IP
– Should have read 4.1
• Wednesday: Routing and TCP
– Read 4.2-4.4, 5.1-5.2
• Projects: begin Project 2
– Can be done in pairs
– Speak up soon if you want alternate projects
Spring 2003
CS 461
2
Outline
Best Effort Service Model
Global Addressing Scheme
Spring 2003
CS 461
3
IP Internet
• Concatenation of Networks
Network 1 (Ethernet)
H7
H2
H1
R3
H8
H3
Network 4
(point-to-point)
Network 2 (Ethernet)
R1
R2
H4
• Protocol Stack
Network 3 (FDDI)
H5
H6
H1
H8
TCP
R1
IP
IP
ETH
Spring 2003
R2
ETH
R3
IP
FDDI
FDDI
IP
PPP
CS 461
PPP
TCP
IP
ETH
ETH
4
Service Model
• Connectionless (datagram-based)
• Best-effort delivery (unreliable service)
–
–
–
–
packets are lost
packets are delivered out of order
duplicate copies of a packet are delivered
packets can be delayed for a long time
• Datagram format
0
4
Version
8
HLen
16
TOS
31
Length
Ident
TTL
19
Flags
Protocol
Offset
Checksum
SourceAddr
DestinationAddr
Options (variable)
Pad
(variable)
Data
Spring 2003
CS 461
5
Fragmentation and Reassembly
• Each network has some MTU
• Design decisions
–
–
–
–
–
–
–
fragment when necessary (MTU < Datagram)
try to avoid fragmentation at source host
re-fragmentation is possible
fragments are self-contained datagrams
use CS-PDU (not cells) for ATM
delay reassembly until destination host
do not recover from lost fragments
Spring 2003
CS 461
6
Example
Start of header
Ident= x
0
Offset= 0
Rest of header
1400 data bytes
Start of header
Ident= x
H1
R1
R2
R3
H8
1
Offset= 0
Rest of header
512 data bytes
Start of header
ETH IP (1400)
FDDI IP (1400)
PPP IP (512)
ETH IP (512)
PPP IP (512)
ETH IP (512)
Rest of header
PPP IP (376)
ETH IP (376)
512 data bytes
Ident= x
1 Offset= 512
Start of header
Ident= x
0 Offset= 1024
Rest of header
376 data bytes
Spring 2003
CS 461
7
Global Addresses
• Properties
– globally unique
– hierarchical: network + host
• Dot Notation
– 10.3.2.4
– 128.96.33.81
– 192.12.69.77
A:
B:
C:
Spring 2003
0
7
24
Network
Host
1 0
1 1 0
CS 461
14
16
Network
Host
21
8
Network
Host
8
Datagram Forwarding
• Strategy
–
–
–
–
–
–
every datagram contains destination’s address
if connected to destination network, then forward to host
if not directly connected, then forward to some router
forwarding table maps network number into next hop
each host has a default router
each router maintains a forwarding table
• Example (R2)
Spring 2003
Network Number
1
2
3
4
CS 461
Next Hop
R3
R1
interface 1
interface 0
9
Address Translation
• Map IP addresses into physical addresses
– destination host
– next hop router
• Techniques
– encode physical address in host part of IP address
– table-based
• ARP
–
–
–
–
table of IP to physical address bindings
broadcast request if IP address not in table
target machine responds with its physical address
table entries are discarded if not refreshed
Spring 2003
CS 461
10
ARP Details
• Request Format
–
–
–
–
–
HardwareType: type of physical network (e.g., Ethernet)
ProtocolType: type of higher layer protocol (e.g., IP)
HLEN & PLEN: length of physical and protocol addresses
Operation: request or response
Source/Target-Physical/Protocol addresses
• Notes
–
–
–
–
table entries timeout in about 10 minutes
update table with source when you are the target
update table if already have an entry
do not refresh table entries upon reference
Spring 2003
CS 461
11
ARP Packet Format
0
8
16
Hardware type = 1
HLen = 48
31
ProtocolT ype = 0x0800
PLen = 32
Operation
SourceHardwareAddr (bytes 0 – 3)
SourceHardwareAddr (bytes 4 – 5) SourceProtocolAddr (bytes 0 – 1)
SourceProtocolAddr (bytes 2 – 3) TargetHardwareAddr (bytes 0 – 1)
TargetHardwareAddr (bytes 2 – 5)
TargetProtocolAddr (bytes 0 – 3)
Spring 2003
CS 461
12
Internet Control Message Protocol
(ICMP)
•
•
•
•
•
•
•
Echo (ping)
Redirect (from router to source host)
Destination unreachable (protocol, port, or host)
TTL exceeded (so datagrams don’t cycle forever)
Checksum failed
Reassembly failed
Cannot fragment
Spring 2003
CS 461
13
Download