You are on page 1of 48

Next Generation IP < IPv6 >

National Dong Hwa University Director of Computer Center Han-Chieh Chao

Overview
Limitations of current Internet Protocol (IP) IPv6 addressing IPv4/IPv6 Transition IPv6 features
Autoconfiguration IPSec QoS

IPv6 Mobility Support Summary

Internet Growth

Internet Growth

Growing Pains
Depletion of IP address ( between 2005 and 2001 ) Explosion of Routing Tables ( routing table explosion will condemn the internet even sooner than the exhaustion of network addresses )

IPv4 Addresses
Example: 203.64.105.100
=1100 1011:0100 0000:0110 1001:0110 0100 (32 bits) = CB:40:69:64

Maximum = 232 = 4 Billion Class A Network: 15 Million nodes Class B Network: 64,000 nodes or less Class C Network: 250 nodes or less

IPv4 Address (cont.)


127 Class A + 16,381 Class B + 2,097,151 Class C Network = 2,113,659 networks total Class B is most popular 20% of Class B were assigned by 7/90 and doubling every 14 months => Will exhaust by 3/94 Question: Estimate how big will you become? Answer: more than 256! Class C is too small. Class B is just right.

How many address?


Some believe 26 to 28 address per host Safety margin => 1015 addresses IPng Requirements => 1012 end systems and 109 networks. Desirable 1012 to 1015 networks

Address Size
H Ratio = log10(number of objects)/available bits 2n objects with n bits: H Ratio = log102 = 0.30103 French telephone moved from 8 to 9 digits at 107 households => H = 0.26 (assuming 3.3 bits/digit) US telephone expanded area codes with 108 subscribers => H = 0.24 SITA expanded 7-character address at 64k nodes => H = 0.14 (assuming 5 bits/char)

Address Size (cont.)


Physics/space science net stopped at 15000 nodes using 16-bit addresses => H = 0.26 3 Million Internet hosts currently using 32-bit addresses => H = 0.20 => A few more years to go

IPv6 motivation
The enormous growth of Internet. The Address space is running out in IPv4 (32 bits). Routing tables are exploding. The lack of security at the network layer Device Control Smart Homes High Performance Networks IP Based Cellular Systems Connect everything over IP Several years of networking with TCP/IP had brought lessons and knowledge Lack of Mobility support New Applications such as Real Time Multimedia. Networked Entertainment your TV will be an Internet host More Scalable Solution is needed

IPv6 Standardization
Internet Draft

Where in the standardization process is IPv6?


Yes Proposed Standard (RFC) Yes Multiple Interoperable Implementations

Technically complete and stable?

Draft Standard (RFC)

Significant Operational Experience?

Yes

Internet Standard (RFC)

6ren, vBNS etc. GPRS, UMTS?

Ipng long term solution


1991: Work starts on next generation Internet protocols -- More than 6 different proposals were developed 1993: IETF forms IPng Directorate --To select the new protocol by consensus 1995: IPv6 selected -- Evolutionary (not revolutionary) step from IPv4 1996: 6Bone started 1998: IPv6 standardized Today: Initial products and deployments

IPv6 Main Features/Functionality


expanded addressing and routing capabilities support for extension headers and options Simplified header format quality of service capabilities Auto-configuration Multi-Homing Class of Service/Multimedia support support for authentication and privacy Multicast (No more broadcast ) IPv4 , IPv6 Transition Strategy

IPv4 Header
20 Octets+Options : 13 fields, include 3 flag bits
Revised 0 bits Ver 4 IHL 8 16 Service Type Flags
Renamed Suppressed

24 Total Length Fragment Offset

31

Identifier

Time to Live

Protocol

Header Checksum

32 bit Source Address 32 bit Destination Address Options and Padding

IPv6 Header
40 Octets, 8 fields
New Version Class Flow Label Next Header Hop Limit

Payload Length

128 bit Source Address

128 bit Destination Address

Major Simplifications
Assign a fixed format to all headers (40 bytes) Remove the header checksum Remove the hop-by-hop segmentation procedure Built-in security

IPv6 Address
128 bits long. Fixed size 2128 = 3.41038 addresses => 6.651023 addresses per m2 of earth surface If assigned at the rate of 106/s, it would take 20 years Expected to support 81017 to 21033 addresses 81017 => 1,564 address per m2 Allows multiple interfaces per host Allows multiple addresses per interface

Text Representation of ddresses


Colon-Hex: 1080 : 0 : 0 : 0 : 8 : 800 : 200C : 417A :: indicates multiple groups of 16-bits of zeros 1080 :: 8 : 800 : 200C : 417A
The "::" can only appear once in an address The "::" can also be used to compress the leading and/or trailing zeros in an address

Dot-Decimal : 203.64.105.100
Can leave the last 32 bits in dot-decimal,

:: 203.64.105.100

Hierachy

3+5+16+16+8+32=80 The remaining 48 bits define the particular system on the subnetwork.

IPv6 Address Models


Allows unicast, multicast, anycast Allows provider based, site-local, link-local

Global

Site-Local

Link-Local

85% of the space is unassigned

Addresses have lifetime


Valid and Preferred lifetime

Local-Use Address
Link Local: Not forwarded outside the link, 10 54 64 FE80::xxx
1111 1110 10 0

bits Interface ID

Site Local: Not forwarded outside the site, FEC0::xxx 10 38 16 64


1111 1110 11 0 Subnet ID

bits Interface ID

Multicast Address
8bits
1111 1111

4bits
Flags 0 0 0 T

4bits
Scope

112bits
Group ID

T=0 => Permanent (well-known) multicast address, T=1 => Transient Scope: 1 Node-local, 2 Link-local, 5 Site-local, 8 Organization-local, E Global, F Reserved Predefined: 1 => All nodes, 2 => Routers,

Multicast Address (cont.)


Link-local scope limits multicast to single Ethernet

Multicast Address (cont.)


Organization-local scope limits multicast to organization boundary

Workstation uses an anycast address to ask for help from any router.

Anycast Address (the subnetrouter address)

Can any local router help me

Destination address : 5A01: 203 : 405 :607 : 809 : 0 : 0 : 0 Subnetwork Prefix : 5A01: 203 : 405 :607 : 809 :: /80

Address Prefixes
Can specify a prefix by /length

IPv6 Address Allocation


Prefix Fraction of (binary) Address Space -------------------------------------------------Reserved 0000 0000 1/256 (0::/8) Unassigned 0000 0001 1/256 (100::/8) Reserved for NSAP Allocation 0000 001 1/128 (200::/7) Reserved for IPX Allocation 0000 010 1/128 (400::/7) Unassigned 0000 011 1/128 (600::/7) Unassigned 0000 1 1/32 (800::/5) Unassigned 0001 1/16 (1000:/4) Allocation

IPv6 Address Allocation (cont.)


Allocation Prefix (binary) ------------------------------- -------Aggregatable Global Unicast Addresses 001 Unassigned 1111 0 Unassigned 1111 10 Unassigned 1111 110 Unassigned 1111 1110 0 Link Local Unicast Addresses 1111 1110 10 Site Local Unicast Addresses 1111 1110 11 Multicast Addresses 1111 1111 Fraction of Address Space ------------1/8 (2000::3) 1/32 (F000::/5) 1/64 (F800::/6) 1/128 (FC00::/7) 1/512 (FE00::/9) 1/1024 (FE80::/10) 1/1024 (FEC0::/10) 1/256 (FF00::/8)

IPv6 Extension Headers


IP options have been moved to a set of optional Extension Headers Extension Headers are chained together Next Header
IPv6 Header Next Header=TCP TCP Header

IPv6 Header Next Header= Routing

Routing Header Next Header= TCP

TCP Header

IPv6 Header Next Header= Routing

Routing Header Fragment Header TCP Header Next Header= Next Header= Fragment TCP

Routing Header
Next Header Reserved Routing Type Num. Address Next Address

Strict/Loose bit mask Address 1

Address 2

Address n

..

Routing Header (cont.)


Strict => Discard if Address[Next-Address] neighbor Type = 0 => Current source routing Type > 0 => Policy based routing (later) New Functionality: Provider selection, Host mobility, Auto-readdressing (route to new address)

Address Autoconfiguration
Allow plug and play BOOTP and DHCP are used in IPv4 DHCPng will be used with IPv6 Two Methods: Stateless and Stateful Stateless:
A system uses link-local address as source and multicasts to "All routers on this link" Router replies and provides all the needed prefix info All prefixes have a associated lifetime System can use link-local address permanently if no router

Address Autoconfiguration (cont.)


Stateful:
Problem w stateless: Anyone can connect Routers ask the new system to go DHCP server (by setting managed configuration bit) System multicasts to "All DHCP servers" DHCP server assigns an address

Automatic Renumbering
Renumbering IPv6 Hosts is easy
Add a new Prefix to the Router Reduce the Lifetime of the old prefix As nodes depreciate the old prefix the new Prefix will start to be used for new connections

Renumbering in IPv6 is designed to happen! An end of ISP lock in!


Improved competition

Transition Mechanism
Dual Stack : Providing complete support for both IPv4 and IPv6 in hosts and routers.
APPLICATION

TCP/UDP

IPv4

IPv6

DRIVER

IPv6 host

IPv4 host Dual IP host This allows indefinite co-existence of IPv4 and IPv6, and gradual, app-by-app upgrades to IPv6 usage

Transition Mechanism (cont.)


IPv6 over IPv4 tunneling : Encapsulating IPv6 packets within IPv4 headers to carry them over IPv4 routing infrastructures.

Entry IPv4 Leaving Router Infrastructure Router IPv4 header

Protocol number=41 IPv6 packet

IPv6 packet

IPv6 packet

Transition Mechanism (cont.)


Encapsulate IPv6 packets inside IPv4 packets (or MPLS frames) any methods exist for establishing tunnels:
-- configured tunnels - manual -- automatic tunnels - IPv4 compatible addresses ::<ipv4>

IPv6-to-IPv4 (inter-domain, using IPv4 addr as IPv6 site prefix)

Transition Mechanism (cont.)


IPv4-compatible IPv6 Addresses 96 bits 32 bits

|0000..............................00000000| IPv4 address

Dest. :: 0102:0304

Dest. 1.2.3.4

Dest. :: 0102:0304

Transition Mechanism (cont.)


IPv4-mapped IPv6 address 80 bits 16 bits

| 000000 : 11.11: IPv4 |

Dest. ::FFFF: 0102:0304

Dest. ::FFFF: 0102:0304

Dest. 1.2.3.4

QoS
Class Field
Diff Serv Code Point will be used Can be used for distinguish between different traffic classes

Flow label
Identifies streams that needs special handling Used by RSVP today Not fully defined yet Could be used for a deterministic hashkey to classify on L2L7 -> Would make it easier to implement in Hardware

IPv6 Security
Two headers in IPv6 that provides security - AH, ESP AH - Authentication Header
Provides source authentication Integrity

ESP - Encrypted Security Payload


Integrity Authentication Confidentiality

Note: IPSec is exactly the same for IPv4 and IPv6 only that it was Taylor-made for IPv6. Advantages with IPsec
Network level security Transparent to End-user Open Standard

Mobile IPv6
IPv6 Mobility is based on core features of IPv6
The base IPv6 was designed to support Mobility Mobility is not an Add-on features
All IPv6 Networks are IPv6-Mobile Ready All IPv6 nodes are IPv6-Mobile Ready All IPv6 LANs / Subnets are IPv6 Mobile Ready

IPv6 Neighbor Discovery and Address Autoconfiguration allow hosts to operate in any location without any special support

Mobile IPv6 (cont.)


No Foreign Agent
In a Mobile IP, an MN registers to a foreign node and borrows its address to build an IP tunnel so that the HA can deliver the packets to the MN. But in Mobile IPv6, the MN can get a new IPv6 address, which can be only used by the MN and thus the FA no longer exists.

More Scalable : Better Performance


Less traffic through Home Link Less redirection / re-routing (Traffic Optimisation)

IPv6 Mobility Support


No FAs, ND, always Co-located Co addresses

for mn.ndhu.tw at agent.mit.us


Router Home Agent Correspondend Node

mn.ndhu.tw

for mn.ndhu.tw
ndhu.tw INTERNET

Gets an address trough ND

mit.us

Improved Performance
Faster processing time per IPv6 packet
Align on 64 bits boundary Fewer Optional Headers (from 12 to 8) Removed checksum

Better designed for HW support Scalable hierarchical address architecture


Faster routing lookups Smaller routing tables due to Hierarchical address architecture -> which make ip_forwarding faster and more efficient use of the memory Less routing traffic in the backbone -> which mean less load on the network

Summary
Streamlined Header Format Flow Label 128-bit Network Addresses Elimination of Header Checksum Fragmentation only by source Host Extension Headers Built-in-security

You might also like