2. IPv6
• Initial motivation: 32-bit address space soon to be
completely allocated.
– Increase IP address from 32 bits to 128
• Additional motivation:
• header format helps speed processing
– Longer header but fewer fields (8 vs 12), so routers should have
less processing
• header changes to facilitate QoS
– Accommodate higher network speeds, mix of data streams
(graphics, video, audio)
• IPv6 datagram format:
– fixed-length 40 byte header
– no fragmentation allowed
3. Advantages
• Overcome IPv4 scaling problem
– lack of address space.
• Flexible transition mechanism.
• New routing capabilities.
• Quality of service.
• Security.
• Ability to add features in the future.
4. IPv6 Background
• IP has been patched (subnets, supernets) but
there is still the fundamental 32 bit address
limitation
• IETF started effort to specify new version of IP in
1991
– New version would require change of header
– Include all modifications in one new protocol
– Solicitation of suggestions from community
– Result was IPng which became IPv6
– First version completed in ’94
• Same architectural principles as v4 – only bigger
5. Features of IPv6
• Larger Address Space
• Aggregation-based address hierarchy
– Efficient backbone routing
• Efficient and Extensible IP datagram
• Stateless Address Autoconfiguration
• Security (IPsec mandatory)
• Mobility
• IPv6 can address 3.4×1038 nodes
7. 7
IPv6 Header Fields
• VERS: 6 (IP version number)
• Priority: will be used in congestion control
• Flow Label: experimental - sender can
label a sequence of packets as being in
the same flow.
• Payload Length: number of bytes in
everything following the 40 byte header, or
0 for a Jumbogram.
8. 8
IPv6 Header Fields
• Next Header is similar to the IPv4
“protocol” field - indicates what type of
header follows the IPv6 header.
• Hop Limit is similar to the IPv4 TTL field
(but now it really means hops, not time).
9. Address Space
Allocation
• IPv6 addresses are also classless, but the
address space is still subdivided in various
ways based on the leading bits.
• The leading bits specify different uses of
the IPv6 address.
10.
11. • A node may be assigned an IPv4-compatible
IPv6 address by zero-extending a 32-bit IPv4
address to 128 bits.
• A node that is only capable of understanding
IPv4 can be assigned an IPv4-mapped IPv6
address by prefixing the 32-bit IPv4 address with
2 bytes of all 1s and then zero-extending the
result to 128 bits.
• These two special address types have uses in
the IPv4-to-IPv6 transition
13. For example,
The IPv4-mapped IPv6 address of a host whose
IPv4 address was 128.96.33.81
could be written as
::FFFF:128.96.33.81
14. Global Unicast
Addresses
• at the heart of IPv6 is the unicast address
allocation plan that determines how unicast
addresses will be assigned to
• service providers,
• autonomous systems,
• networks,
• hosts, and
• routers.
15. Network Layer 15
Address Complexity
• IPv6 actually has many kinds of addresses
– unicast, anycast, multicast,
– link-local, site-local, loopback, IPv4-
embedded, care-of, manually-
assigned, DHCP-assigned, self-
assigned, solicited-node, and more…
• most of this complexity is also present in IPv4,
just never written down in one place
– a result of 20 years of protocol evolution
• one simplification: no broadcast addresses in IPv6!
– uses multicast to achieve same effects
16. Network Layer 16
IPv6 Addressing
• Classless addressing/routing (similar to CIDR)
• Notation: x:x:x:x:x:x:x:x (x = 16-bit hex number)
– contiguous 0s are compressed: 47CD::A456:0124
– IPv6 compatible IPv4 address: ::128.42.1.87
• Address assignment
– provider-based (can’t change provider easily)
– geographic
001 Registry ID Provider ID Subscriber ID Subnet ID Interface ID
n bits m bits o bits p bits (125-m-n-o-p) bits
17. 40
bytes
20
bytes
IPv4
IPv6
0 15 16 31
vers hlen TOS total length
identification flags flag-offset
TTL protocol header checksum
source address
destination address
options and padding
vers traffic class flow-label
payload length next header hop limit
source address
destination address
Removed (6)
• ID, flags, flag offset
• TOS, hlen
• header checksum
Changed (3)
Added (2)
Expanded
• total length => payload
• protocol => next header
• TTL => hop limit
• traffic class
• flow label
• address 32 to 128 bits
Header comparison
18. Major Improvements of
IPv6 Header
• No option field: Replaced by extension
header. Result in a fixed length, 40-byte
IP header.
• No header checksum: Result in fast
processing.
• No fragmentation at intermediate nodes:
Result in fast IP forwarding.
19. Extension Headers
• Routing – Extended routing, like IPv4 loose list
of routers to visit
• Fragmentation – Fragmentation and
reassembly
• Authentication – Integrity and authentication,
security
• Encapsulation – Confidentiality
• Hop-by-Hop Option – Special options that
require hop-by-hop processing
• Destination Options – Optional information to
be examined by the destination node