CS716
Advanced Computer Networks
By Dr. Amir Qayyum
1
1
Lecture No. 26
2
Internetworking
• Basics of internetworking (heterogeneity)
– IP protocol, address resolution, control messages,
…
• Routing
• Global internets (scale)
– Virtual geography and addresses
– Hierarchical routing
• Future internetworking: IPv6
• Multicast traffic
• MPLS
3
IPv6 History
• Nextgeneration IP, previously denoted IPng
• Intended to extend address space/routing limitations
– Requires header change: new protocol for all nodes!
– Try to include everything new with one change
• IETF (Internet Engineering Task Force) solicited white
papers
• Many suggestions, merged in time to several options
• IETF selected Simple Internet Protocol Plus (SIPP with
some modifications, dubbed it version 6
4
IPv6 and NAT
• Address space pressure reduced with NAT technique
– Few public addresses with Network Address Translation
– Driving force reduces and so the rapid transition!
– Will IPv6 succeed in completely replacing IPv4 ? ? ?
Local network
Local network
with many hosts
with many hosts
NAT Box
Internet
Internet
5
IPv6 Wish List / Planned Support
•
•
•
•
•
•
•
•
•
128bit addresses
Multicast traffic
Mobility
Realtime traffic/quality of service guarantees
Authentication and security
Autoconfiguration: determining local IP address
Endtoend fragmentation
Protocol extensions (flexible protocol)
Smooth transition spread over time is critical
– Islands of v6 and then v4, traffic is tunneled in Internet
6
IPv6 Addresses
• Classless addressing/routing (similar to CIDR)
• Address notation
– String of eight 16bit hex values separated by colons
e.g. 5CFA:0002:0000:0000:CF07:1234:5678:FFCD
– Only one set of contiguous zeroes can be elided, e.g.
5CFA:0002::CF07:1234:5678:FFCD
• Address assignment
– Providerbased
– Geographic
010 region ID provider ID subscriber ID subnet host
7
IPv6 Address Prefix
• 0000 0000
• 0000 001
•
•
•
•
•
•
•
0000 010
010
100
1111 1110 10
1111 1110 11
1111 1111
Other
reserved (includes transition addresses)
ISO NSAP (Network Service Access
Point) allocation
Novell IPX allocation
providerbased unicast
geographic unicast
link local addresses
site local addresses
multicast addresses
unassigned
8
IPv4 Packet Format Review
0
4
Version
8
HLen
16
TOS
31
Length
Ident
TTL
19
Flags
Protocol
Offset
Checksum
SourceAddr
DestinationAddr
Options (variable)
Pad
(variable)
Data
• 20byte minimum
• Mandatory fields not always used (e.g.
fragmentation)
• Options are unordered list of (name, value) pairs
9
IPv6 Packet Format
0
4
8
version priority
payload length
16
31
24
flow label
next header
hop limit
source address word 1
source address word 2
source address word 3
source address word 4
destination address word 1
destination address word 2
destination address word 3
destination address word 4
10
IPv6 Packet Format
0
4
8
version priority
payload length
16
31
24
flow label
next header
hop limit
source address (4 words)
destination address (4 words)
option (variable number, usually fixed length)
• 40byte minimum
• Mandatory fields (probably) always used
• Strict order on options reduces processing
time (no need to parse irrelevant options)
11
IPv6 Packet Format
• Priority and flow label
– Support service guarantees
– Allow “fair” bandwidth allocation
• Payload length (header not included, unlike IPv4)
• Next header
– Combines options and protocol
– Linked list of options
– Ends with higherlevel protocol header (e.g. TCP)
• Hop limit is TTL field renamed to match usage
12
IPv6 Extension Headers
• Extension headers (options) appear in order
1. Hopbyhop options .. .. misc. info. for routers
2. Routing .. .. .. .. .. full/partial route to follow
3. Fragmentation
.. .. .. IP fragmentation info
4. Authentication
.. .. .. sender identification
5. Encrypt security payload info. about contents
6. Destination options .. .. info. for destination
13
IPv6 Extension Headers
• Hopbyhop extension
– Length is in bytes beyond mandatory 8
0
8
16
24
next header
length
type
value
31
• Jumbogram option (packet longer than 65,535 bytes)
– Payload length in main header set to 0
0
8
16
24
next header
0
194
payload length in bytes
31
0
14
IPv6 Extension Headers
• Routing extension
0
8
next header
31
16
24
0
no.of.address next address
es
strict/loose routing bitmap
1 – 24 addresses
– Up to 24 “anycast” addresses target AS’s or providers
– Next address tracks current target
– Strict routing requires direct link, loose routing allows
intermediate nodes
15
IPv6 Extension Headers
• Fragmentation extension
0
8
next header
16
reserved
offset
identification
31
29
resv M
• Similar to IPv4 fragmentation
– 13bit offset,
– Lastfragment mark (M)
• Larger fragment identification field
16
IPv6 Extension Headers
• Security without bothering the routers
• Authentication extension
– Designed to be very flexible
– Includes Security Parameters Index (SPI) and
Authentication data at the end
• Encryption extension
– Called Encapsulation Security Payload (ESP)
– Includes an SPI
– All headers and data after ESP are encrypted
17
IPv6 Design Controversies
Address length
• 8byte
– Less header overhead. Might run out in a few
decades
• 16byte
– More overhead. Good for foreseeable future
• 20byte
– Even more overhead. Compatible with OSI
• Variablelength
– Difficult for router design
18
IPv6 Design Controversies
Hop limit
• 65,535
– 32hop paths are common now
– In a decade, much longer paths possible
• 255
– Limits lost packet lifetime (65,535 is far too long)
– Good network design makes long paths unlikely
• Source to backbone
• Across backbone
• Backbone to destination
19
IPv6 Design Controversies
Maximum packet size
• > 64kB: supercomputer/high bandwidth
applications
– Too much overhead to fragment data
– Want much larger packets
• 64 kB: longer packets incompatible with
lowbandwidth lines
– Consider 1MB packet across 1.5 Mbps line
– Ties up line for greater than 5 seconds
– Inconveniences interactive users
20
IPv6 Design Controversies
Keep IP checksum ?
• Yes
– Removing checksum from IP analogous to removing
brakes from a car
• Lighter, so you go faster
• Unprepared for the unexpected
• No
– Typically duplicated in data link and transport layers
– Major expense in IPv4 routers
– In case of IPv6, it is mandatory in UDP and TCP
21
IPv6 Design Controversies
Mobile hosts
• Direct or Indirect ?
– Reconnect directly using canonical address
– Use home and foreign agents to forward traffic
• Mobility introduces asymmetry
– Base station signal is strong, heard by mobile units
– Mobile unit signal is weak and susceptible to
interference, not heard by base station
• No clearly superior design proposal
22
IPv6 Design Controversies
Security
• Where ?
– Network layer: a standard service
– Application layer
• No viable standard
• Applications susceptible to errors in
network implementations
• Too clunky to turn off
• How ?
– Political export/import issues
– Cryptographic strength issues 23