Title: IP V4 to V6 Transition Considerations
1IP V4 to V6 TransitionConsiderations
- Tom Chu
- Bell Laboratories
- Lucent Technologies
2IP V4 to V6 TransitionConsiderations
- Tom Chu
- Bell Laboratories
- Lucent Technologies
3Agenda
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussion and Comments
4AgendaSection 1
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussion and Comments
5IP V6 Background
- In the early 1990s, the IETF realized that IPV4
address space was near exhaustion - H factor analysis RFC 1715
- Began work on the next generation of IP IP V6
- Incorporated many of the experiences learned from
IPv4 - Went through a number of iterations
- In addition to larger address space (16 octets
instead of 4 octets), IP V6 provides many
enhanced intrinsic capabilities - Better structured address space
- Better multicast support
- Better mobile support
- Neighbor discovery
- Support for authentication payload encryption
6IP V6 Basic Header
Version 4 bits
Traffic Class 8 bits
Flow Label 20 bits
Payload Length 16 bits
Next header 8 bits
Hop Limit 8 bits
Source Address 128 bits
Destination Address 128 bits
Note the lack of checksum in header Rely on layer
2 to perform error checking Ref RFC 2460
7IP V6 Address Types
- Unicast addresses
- Multicast addresses
- Anycast addresses
- Solicited node addresses
- Addresses with embedded IP V4 addresses
- Unspecified address
- Ref RFC 3513 IP V6 Address Architecture
- The previous version is rfc2373 and a
newer version is in draft form.
8IP V6 Unicast Address Basic Structure
- Current address structure is as follows
- 64 bits for subnet prefix and 64 bits for
interface ID - The only exceptions to the 64/64 split are
addresses with embedded IP V4 address - The first 3 bits of these addresses are 000
Interface ID
Subnet prefix
64 bits
64 bits
Basic V6 unicast address
Subnet prefix
Interface ID
9IP V6 addresses with embedded V4 address
- V4 compatible IP V6 address
- IP V6 address that carries a IP v4 address
- The IP v4 address must be a globally unique IPv4
unicast address - To be deprecated in the next version
- V4 mapped IPv6 address
- Represents an IP v4 address in IP v6 format (I.e,
the end-point is a V4 node) - V4 translated address (SIIT, RFC 2765)
80 bits
16
32
00000
0000
IPv4 address
80 bits
16
32
00000
FFFF
IPv4 address
64 bits
16
32
16
00000
FFFF
IPv4 address
0000
10Current Address Assignment Recommendation
- IETF recommends assigning a /48 subnet mask to
sites - /64 subnet mask for single subnet sites
- For P25, probably sufficient to assign /64 subnet
mask to most radios. - May be a larger subnet for some radios with a lot
of peripherals
11Interface ID Encoding
- Recommend using modified EUI-64 format
- Except those where the first 3 bits of the
network prefix start with 000 - e.g., V4 compatible and V4 mapped addresses
- EUI-64 is extended unique identifier managed by
IEEE - extended ethernet address
- 24-bit manufacturer ID and 40-bit extension ID
- The 24 bit manufacturer ID includes two special
bits - Global/local, individual/group
- Modified referred to the fact the encoding of the
global/local bit is reversed - Current 48-ethernet address can be embedded into
the 64 bit-format
Manufacturer ID
extension ID
Global/local
Ind./group
12Interface Address Assignment for P25One scenario
- All peripherals are on the same subnet as the
radio. - The interface ID is used to distinguish the
devices - The radio probably should be assigned a global
interface ID - By setting the g/l bit to local, may be able to
encode the SUID within the interface ID - A radio may have two (or more) addresses, 1
global address and 1 local address - If we adopt this, actually there are 6 extra bits
in the interface-ID. We can be creative here.
13Neighbor Discovery
- Functions provided
- Address resolution decoupled from link layer
- Neighbor unreachability detection
- Duplicate address resolution
- Obtain subnet prefixes from routers
- ICMPv6 messages
- Router solicitation
- Router advertisement
- Neighbor solicitation
- Neighbor advertisements
- Redirect
- Stateless address auto-configuration
- RFC 2462 and RFC 3041
14AgendaSection 2
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussion and Comments
15Mobile IP V6RFC 3775
Mobile node at home network Home address
- Similar to mobile V4 in many respects
- But not backward compatible
- Has a number of enhancements, utilizing the new
capabilities in IP V6
Home agent
Home link
Home network
Mobility messages
IP V6 Bearer traffic
Corresponding node
Mobile node at visited network Care of address
16Mobility Messages
- Mobility messages are encapsulated as IP V6
options - Used by home agent, mobile node, and
corresponding node to manage binding - Mobility header
- Identified by 135 in the next header field of the
previous header - 4 new ICMPv6 messages are also introduced
- A few other modifications to basic V6
17Mobility Messages
- Binding refresh request
- Binding update
- Binding acknowledgement
- Binding error
- Home test init
- Care-of test init
- Home test
- Care of test
Note The last 4 messages are used in return
routibility procedure which is to ensure the
corresponding node can reach the mobile node
through the advertised care-of-address
18Mobile V6 Options
- Mobile V6 uses IP options to carry mobility
messages as well as the forwarding of payload
packets - Some important options for the latter
- Home Address destination option
- To carry the home address of a mobile node
- Type 2 Routing header
- Different some source routing option
- Used when sending packet to mobile node to
carrying its the care-of-address - There appears to be a discrepancy between format
description and procedure for this in RFC 3775.
Follow the one described in the procedure.
19Packet Transfer in Mobile V6Example
- Route Optimized mode
- Cache binding must occurred before
HA of A
V6 network
Correspondent Node Addr. B
V6 Mobile node Home addr. A Care-of-addr C
DA B
SA C
Home Addr. opt A
DA A
SA B
Type 2 Route C
20Packet Transfer in Mobile V6Example
- Mobile to Mobile Route Optimized
Addr D
Addr F
HA of A
HA of B
V6 network
V6 Mobile node Home addr. A Care-of-addr C
Correspondent Node Home Addr. B Care-of-addr. E
DA B
SA C
Home Addr. opt A
Type 2 Route E
21AgendaSection 3
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussion and Comments
22Transport Network Transition Phases
All IPv4
IPv6 Islands
IPv4/IPv6 mixed
Diagram reproduced from IPv4 to IPv6
Transition, Interoperability and Issues,
Shiao-Li Charles Tsao
IPv4-IPv6 Transition Scenarios
All IPv6
IPv4 Islands
- The transition method may differ for the
different phases - e.g. whether one has universal V4 connectivity,
V6 connectivity or not
23Some Current Popular Transition Methodsfor fixed
nodes
- Network address translation protocol
translation (NAT-PT RFC 2766) - For V6 node to communicate with V4 node
- V4 address can be assigned dynamically
- 6to4 (RFC 3056)
- Interconnection V6 subnets with an V4 network
- ISATAP (RFC 4214)
- for a dual stack node to access a V6 network
through a V4 network - Teredo
- For a V4 node to access a V6 network through a V4
network behind a NAT - Tidbits MicroSoft has indicated that Longhorn
would support 6to4, IASTAP, and Teredo
246to4 (RFC 3056)Connecting V6 subnets through a
V4 network
- 6to4 is a special class of V6 address, used when
V6 sub-networks are connected via a V4 network - The address prefix 2002/16 to allocated to
support 6to4 addresses - The V6 packet is encapsulated within a V4 address
- Encapsulation done by border 6to4 router
- Host required address selection rule
- Minimum impact on routing table
- The V4 address of the point of attachment is
encoded as part of the V6 address - The V4 address must be a public V4 address
FP 001
TLS 0x0002
V4 Address (pt. of attach.)
Sub-network ID
Interface ID
3
13
32
16
64 bits
256to4Configuration
V4 192.1.2.3
V4 9.254.253.252
IP V4 Core
IP V6 Site
IP V6 Site
6to4 router
6to4 router
6to4
6to4
L2
L2
6to4
V4
L2
6to4 address of local node
200209fefdfc/48
2002c0010203/48
6to4 address of local node
1100 0000 0000 0001 0000 0002 0000 0003
192.1.2.3
c0010203
Note The V4 network must be contiguous.
26Mixed Mode Transport Network
- Relay routers can be used to connect to native IP
V6 networks as well as 6to4 networks
V4 192.1.2.3
V4 9.254.253.252
IP V4 Core
IP V6 Site
IP V6 Site
6to4 router
Relay router
IP V6 network
6to4 200209fefdfc/48
V6 20010600/48
27Other transition techniquesfor fixed
end-endpoints
- There are other transition techniques
- 6over4 (RFC2 2529)
- Connecting V6 end-points through V4 network
- V4 over V4
- V4 network emulates an ethernet
- Requires multicast to be deployed in the V4
network - Scaling and networking concerns
- MPLS based
- Used RFC 2547 like techniques
- draft-ietf-l3vpn-bgp-ipv6-03.txt
- Draft-defeng-l3vpn-ipv4-ipv6-hybrid-01.txt
- Others
28AgendaSection 4
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussions and Comments
29Mobile V4 to Mobile V6 Transition
- Mobile V6 is not backward compatible with V4.
- A lot of interest in the IETF.
- Many efforts and proposal, addressing different
scenarios. - There is an an excellent document
- draft-larsson-v6ops-mip-scenarios-01 which
summarizes - Connectivity scenarios
- Hand-off scenarios
- The different objectives of the transition
- A survey of previous efforts for each
technique, a brief description, the problem that
it intends to solve, advantages and
disadvantages, etc. - This draft has generated a lot of discussions and
comments. Unfortunately, it had expired in the
IETF.
30Larsson DraftTransition Objectives
- Case 1 Mobile IP V4 already in place, needs
solution to allow mobile V4 to operate over V4
and V6 address space. - Needs enhancements to mobile V4
- Case 2 Operator is going to use Mobile V6 and
needs a solution to allow mobile V6 to work over
both IP V4 and IP V6 networks. - Needs enhancements to mobile V6
- Case 3 Mobile V4 already in place and needs to
solution to migrate to mobile V6. - It appears, this this time, that we are leaning
on using mobile V4. Then, migrate to mobile V6
(case 3) - However, case 1 may well be an interim step.
- Do we want to consider case 2, i.e. develop a
mobile V6 based spec that supports both V4 and V6
payload?
31Mobile-V4 to Mobile-V6 Transition
- One proposal for case 3 is to use dual stack
mobile V4 and mobile V6. - ltdraft-tsao-mobileip-dualstack-model-00.txtgt
(1/2001) - Implements a new address mapper
- Makes the proper association of the addresses
- Dispatches packet to the proper layer
- Initiates registration, binding, when the host
detects movement to networks that operate
different protocol versions. - The major disadvantages of dual mobile stack is
that the mobility management messages are
duplicated at each hand-off. - May not be a concern for P25 as number of users
of a network is comparatively small
32Dual Mobile Stack Architecture Model
IP V6 Applications
IP V4 Applications
Socket API
TCP/UDP
ICMP V6
Mobile V6
ICMP V4
Mobile V4
Address Mapper
IP V4
IP V6
PHY Link layer
33Enhancing Mobile V6 to support V4 payload
- Current interest in the industry
- ltdraft-ietf-mip6-nemo-v4traversal-00.txtgt,
10/2005 - Add new extensions to mobile V6
- IP V4 home address option
- IP V4 address acknowledgement option
- NAT detection option
- Proposal provides procedures for mobile node,
home agent, and NAT detection (and traversal). - No impact on correspondent node (V4 or V6)
34Mobile node procedureExample
- When sending Mip V6 binding update from V4
network - V6 packets encapsulated in UDP/IP-V4
- Source address of V4 packet is the V4 care of
address - Destination addr of V4 packet is the home agent
V4 addr - The source addr. of the V6 is the V4-mapped care
of addr - The home addr option contains the V6 home address
- V4 home address option (optional) may be encoded
with the unspecified address to request one - V6 packets authenticated per Mip V6
- Note the the IP V4 care of address appears in
both the C4 and V6 packets - Important for NAT detection
- Specification assumes that the transport network
can route packets across V4/V6 sub-networks.
35AgendaSection 5
- IP V6 Salient points
- Address architecture
- Neighbor discovery procedure
- Mobile V6 salient points
- Route optimization
- V4 to V6 transition
- Highlights of some current techniques
- Mobile V4 to Mobile V6 transition
- Current activities
- Discussion and Comments
36V4 V6 Transition for P25 Packet Service
- It is given that the transport network would
migrate from V4 to V6 - Some aspects of the transition mechanism may be
beyond the specification - We may need to make some recommendation to
facilitate the process - Mobility management may be the real challenge a
number of options are possible - MIP v4 over V4, to MIP v4 over V4/V6, then MIP
v4-v6 over V4/V6 - MIP v4 over V4 to MIP v4-v6 over V4/V6
- MIP v6 over V4/V6
- other???
37Impact on SNDCP
- When transition to V6, SNDCP may need to be
extended - The packet data channel may want to support both
V4 and V6 (e.g. use SAP to distinguish the two). - For interaction between dual stack end-points and
RFSS, multiple address binding may occur in a
single transaction (e.g, the care-of-address can
be V4, V6, 6to4, etc.) - There may be additional information that the
serving RFSS may want to tell the end-point - For example, the IP V6 (or IP V4) sub-networks
that RFSS directly connected to - Useful information for the end-point to decide
the address type to use in sending packets.
38Impact on Voice Services
- The V4-to-V6 transition also impacts voice
services - The SIP message may need to carry multiple IP
addresses of different types - Note RFC 4091 allows SDP to include multiple
address types, with preference indication. - What are address selection criteria at an
end-point? - Impact of roaming
- Others
39 40Packet Transfer in Mobile V6Example
- Tunnel Mode
- Packets going through home
Addr D
HA of A
SA A
DA B
DA D
SA C
SA A
DA B
V6 network
Correspondent Node Addr. B
V6 Mobile node Home addr. A Care-of-addr C
41Packet Transfer in Mobile V6Example
Addr D
HA of A
SA B
DA A
DA C
SA D
SA B
DA A
V6 network
Correspondent Node Addr. B
V6 Mobile node Home addr. A Care-of-addr C
42ISATAP (RFC 4214)
V4 tunnel
V6 network
V6/V4
Host
ISATAP
V4 network
ISATAP Interface
00005EFE
V4_addr
ISATAP V6 Address
IP V6 subnet Prefix
IANA OUI
- Intra-site Automatic Tunnel Addressing Protocol
- Use DNS to locate ISATAP Routers V4 address
isatap.domain_name.com - The IP V4 network is viewed as a NBMA link with
respect to V6 - The global/local bit in the interface ID will be
used denote whether the IP address is public
address or a private address
43Teredo
- To support remote access of V6 network through V4
network with NAT
V6 Network
Teredo Server
V4 Network
V6 host
V4 host
44Teredo
- Use STUN like procedure to determined NAT type
as well as translated address - Work for full cone, restricted cone, and
restricted port cone NATs but not symmetric NAT
V6 Network
Teredo Server
Translated address
V4 Network
STUN like procedure
V6 host
V6
teredo
V4
Null for most packets
L2
V4 host
45Teredo Relays
- Relays can be used to optimize routing
Teredo Server
V6 Network
Teredo Relay
V4 Network
V6 host
V4 host
46Teredo Address
- Translated V4 address embedded in V6 teredo
address - Use for Teredo server and relay points to forward
packets back to teredo host - Over the V4 network, the protocol stack is
v6/teredo/UDP/V4
V6 subnet prefix
Interface ID
UDP Port
Teredo Prefix 32 bits
Server V4 Address
Client V4 Address
Flag
Client V6 address
47Larsson DraftConnectivity Scenarios
---------------------------------------------
------------------- MN MIP Access
Transport Description -------------------
---------------------------------------------
1 IPv4 MIPv4 IPv4 IPv4 "Native
MIPv4" 2 IPv6 MIPv4 IPv4 IPv4
"IPv6 in MIPv4" 3 IPv4 MIPv6 IPv4
IPv4 "IPv4 in MIPv6 over IPv4" 4
IPv6 MIPv6 IPv4 IPv4 "MIPv6 over
IPv4" 5 IPv4 MIPv4 IPv6 IPv6
"MIPv4 over IPv6" 6 IPv6 MIPv4 IPv6
IPv6 "IPv6 in MIPv4 over IPv6" 7
IPv4 MIPv6 IPv6 IPv6 "IPv4 in
MIPv6" 8 IPv6 MIPv6 IPv6 IPv6
"Native MIPv6" -----------------------------
-----------------------------------
MN mobile node
- For P25, the access network can be interpreted as
the RFSS. - It is not necessary that the access network and
the transport network to support the same IP
version, the draft does discuss this. - The draft also points out that IPV4 can be either
IP with private address and IP with public
address. In general, the transport network would
use public address, but the transport network
could be either.
48Larsson DraftHand-off Scenarios
---------------------------------------------
---------------- MN MIP Access
handoff Description --------------------
----------------------------------------- a
IPv4 MIPv4 IPv4-IPv4 "Native MIPv4"
b IPv6 MIPv4 IPv4-IPv4 "IPv6 in
MIPv4" c IPv4 MIPv4 IPv4-IPv6
"MIPv4 over IPv6" d IPv6 MIPv4
IPv4-IPv6 "IPv6 in MIPv4 over IPv6" e
IPv4 MIPv4 IPv4-IPv6 "MIPv4 over
IPv6" f IPv6 MIPv4 IPv4-IPv6
"IPv6 in MIPv4 over IPv6" g IPv4 MIPv4
IPv6-IPv6 "MIPv4 over IPv6" h IPv6
MIPv4 IPv6-IPv6 "IPv6 in MIPv4 over
IPv6" i IPv4 MIPv6 IPv4-IPv4
"IPv4 in MIPv6 over IPv4" j IPv6 MIPv6
IPv4-IPv4 "MIPv6 over IPv4" k IPv4
MIPv6 IPv4-IPv6 "IPv4 in MIPv6 over
IPv4" l IPv6 MIPv6 IPv4-IPv6
"MIPv6 over IPv4" m IPv4 MIPv6
IPv4-IPv6 "IPv4 in MIPv6 over IPv4" n
IPv6 MIPv6 IPv4-IPv6 "MIPv6 over
IPv4" o IPv4 MIPv6 IPv6-IPv6
"IPv4 in MIPv6" p IPv6 MIPv6
IPv6-IPv6 "Native MIPv6"
--------------------------------------------------
-----------
- We will have our own configuration and hand-off
scenarios. The point is that we need to identify
them.
49Mobile Dual-Stack
- The draft contains some high level procedures on
how the behavior of the nodes when it roams. - It is at a very high level
- Two examples are given from V4 to V6 and from V6
to V4. - This is very old work (1/2001) improvements may
be possible or needed - For example, we may want to consider
- IP V4 applications at dual stack node moving from
V4 to V6 - IP V4 applications at dual stack node moving from
V6 to V4 - IP V6 applications at dual stack node moving from
V4 to V6 - IP V6 applications at dual stack node moving from
V6 to V4 - There is a subsequent work detailing some of the
scenarios - ltdraft-ietf-ngtrans-moving-01.txtgt, 3/2002.