IP Dual-Stack Mobility Youn-Hee Han [email protected] Korea University of Technology and Education Internet Computing Laboratory http://icl.kut.ac.kr
Jan 13, 2016
IP Dual-Stack Mobility
Youn-Hee [email protected]
Korea University of Technology and EducationInternet Computing Laboratory
http://icl.kut.ac.kr
Outline
Background
DSMIPv6 (Dual-Stack Mobile IPv6) Operation
DSMIPv6 in PMIPv6 (Proxy Mobile IPv6)
Conclusions & Discussion
KRNet 20082/37
Background
KRNet 20083/37
IETF Internet-Draft Hesham Soliman (Ed.), “Mobile IPv6 Support for Dual
Stack Hosts and Routers (DSMIPv6),” draft-ietf-mip6-nemo-v4traversal-00.txt, October, 2005
참여 업체 : Nokia, NTT Docomo, Ericsson, CISCO, Flarion, Keio Univ.
Hesham Soliman (Ed.), “Mobile IPv6 Support for Dual Stack Hosts and Routers (DSMIPv6),” draft-ietf-mip6-nemo-v4traversal-06.txt, November, 2007
Hesham Soliman (Ed.), “Mobile IPv6 Support for Dual Stack Hosts and Routers (DSMIPv6),” draft-ietf-mext-nemo-v4travesrsal-02.txt, April, 2008
2008 년 하반기 RFC 예정
Dual-Stack Mobile IPv6 (DSMIPv6)
.
.
.
.
.
.
KRNet 20084/37
Recent Status of IPv4 Address Space
IANA (Internet Assigned Numbers Authority)- 인터넷 할당 번호 관리기관
RIR (Regional Internet Registry)- 대륙별 인터넷 레지스트리- APNIC: (Asia Pacific Network Information Center)
http://www.potaroo.net/tools/ipv4/index.html
KRNet 20085/37
Recent Status of IPv4 Address Space
KRNet 20086/37
Terminology IPv4 Capable & IPv6 Capable
IPv4 Stack, IPv6 Stack 이 구현이 되어져 있음 IPv4 Enabled & IPv6 Enabled
실제 Stack 이 가동되어 IPv4 Address, IPv6 Address 가 할당되고 활용됨
Mixed IPv4/IPv6 Devices/Networks
IPv4/IPv6 Capable &
Most of them are only IPv4 Enabled
현재의 단말기및 네트워크 장비들
현재 & 향후의 단말기및 네트워크 장비들
IPv4/IPv6 Capable &
Some of them areonly IPv4 Enabled
Others areonly IPv6 Enabled
The others areIPv4/IPv6 Enabled
현재와 미래의 단말기 및 장비의 상황
KRNet 20087/37
기대되는 상황
DSMIPv6 을 사용하기 위한 가정 상황
Mixed IPv4/IPv6 Devices/Networks
( 유무선 통신 ) 네트워크 사업자들이 구축하는 네트워크 장비 IPv4 Enabled, IPv6 Enabled, or IPv4/IPv6 Enabled
사업자들에 의해 서비스 되는 ( 이동 ) 단말기들 IPv4 Enabled, IPv6 Enabled, or IPv4/IPv6 Enabled
DSMIPv6 서비스가 구축된 이동 단말기들 IPv4/IPv6 Enabled
DSMIPv6 서비스가 구축된 Home Agent IPv4/IPv6 Enabled
KRNet 20088/37
DSMIPv6 가 고려하는 이동성 시나리오 IP Network Heterogeneity as well as Accee Network
Hetrogeneity IPv6/IPv4/Private IPv4 Transport Network Support
Expected Mobility Scenarios
CellularIP network
AAA
WLANIP Network
WiBro IP Network
RAS
LTE BS
WLAN AP
IPv4
IPv6
Private IPv4
NAT
DSMIPv6HADSMIPv6
MN
KRNet 20089/37
DSMIPv6 가 고려하는 응용레벨 시나리오 (1/2) IPv6 Home Address Mobility
Expected Mobility Scenarios
CellularIP network
WLANIP Network
WiBro IP Network
RAS
LTE BS
WLAN AP
IPv4
IPv6
Private IPv4
NAT
AAA
DSMIPv6HA
IPv4
IPv6
IPv6 Application(VoD, IP-Phone…)
DSMIPv6MN
KRNet 200810/37
DSMIPv6 가 고려하는 응용레벨 시나리오 (2/2) IPv4 Home Address Mobility
Expected Mobility Scenarios
CellularIP network
WLANIP Network
WiBro IP Network
RAS
LTE BS
WLAN AP
IPv4
IPv6
Private IPv4
NAT
AAA
DSMIPv6HA
IPv4
IPv6
IPv4 Application(VoD, IP-Phone…)
IPv6 Application(VoD, IP-Phone…)
DSMIPv6MN
KRNet 200811/37
Bad Solutions: Two IP Mobilty Stacks MN
Mobile IPv4 (RFC3344) & Mobile IPv6 (RFC3775) 을 동시에 구현 HA
Mobile IPv4 & Mobile IPv6 을 하나의 HA 에 동시에 구현 또는 Mobile IPv4 HA 및 Mobile IPv6 HA 를 각각 따로 운영
Problems IPv4IPv6 (or IPv4IPv6) 세션 유지 불가능 구현 (Implementation) 의 어려움
두 개의 프로토콜을 동시에 구현 단말 및 장비의 단가 향상 운영 (Operation) 의 어려움 비효율적인 이동성 관리
네트워크 시그널 메시지의 오버헤드
Alterative Solution: Mobile IPv4/IPv6 Traversal with DSMIPv6
IPv4IPv6 (or IPv4IPv6) 세션 유지
Existing Solution & Problems Except DSMIPv6
KRNet 200812/37
DSMIPv6 Operation
KRNet 200813/37
설계 목표 IPv4 및 IPv6 이동성을 위하여 하나의 통합된 이동성 관리
프로토콜 설계 Mobile IPv6 를 확장하여 다음 두 가지를 만족한다 .
IPv4 Transport Network Support
IPv4 Home Address Mobility
가정 (Assumption) MN 과 HA 는 IPv4/IPv6 Enabled 이다 . 단말은 IPv6 Home Address (IPv6 HoA) 와 IPv4 Home
Address (IPv4 HoA) 를 모두 알고 있어야 한다 . Dynamic
Stateless or Stateful
Static
DSMIPv6 Goal & Design Principle
KRNet 200814/37
설계 원칙 MN 은 IPv4 HoA/CoA 및 IPv6 HoA/CoA 에 대한 바인딩
정보를 함께 HA 에 등록을 한다 . MN 은 자신과 HA 사이의 네트워크에 NAT 가 있는지를
파악하여 올바르게 traverse 할 수 있어야 한다 . 임의의 IPv4 or IPv6 or IPv4/v6 Dual 네트워크로
이동하더라도 IPv4 및 IPv6 패킷을 받을 수 있도록 한다 .
DSMIPv6 Goal & Design Principle
KRNet 200815/37
프로토콜에 새로운 Options 정의 MIPv6 Binding Update (BU) 메시지에 추가되는 Option
IPv4 Home Address option
IPv4 Care-of Address option
MN 에서 HA 로 전달됨
MIPv6 Binding Acknowlegement (BAck) 메시지에 추가되는 Option
IPv4 Address Acknowledgement option
NAT Detection option
HA 에서 MN 으로 전달됨
Solution Sketching HA 가 각 MN 에 대한 IPv6/IPv4 Home Address (HoA) 바인딩
정보를 동시에 관리
DSMIPv6 Operation
HA
IPv6[MIPv6 BU with New Options]
HA
IPv6[MIPv6 BAck with New Options]
KRNet 200816/37
세 가지 경우로 나누어서 프로토콜이 기술됨 Case I. Visited network supports IPv6 Case II. Visited network supports IPv4
First of all, MN needs to detect whether a NAT is in its path to HA. This is done while exchanging BU and BAck
Case II-1. Visited network supports Public IPv4 MN can only configure a globally unique IPv4 CoA in the
visited network.
Case II-2. Visited network supports Private IPv4 MN can only configure a private IPv4 address in the visited
network.
DSMIPv6 Operation
KRNet 200817/37
Case I. Visited network supports IPv6 바인딩 관리 방법
터널 설정 및 Data Traffic 전송
DSMIPv6 Operation
HAIPv6[MIPv6 BU with IPv4 HoA option] MN’s IPv6 HoAMN’s IPv6 HoA MN’s IPv6 CoAMN’s IPv6 CoA
MN’s IPv4 HoAMN’s IPv4 HoA MN’s IPv6 CoAMN’s IPv6 CoA
IPv6 binding cache entry
IPv4 binding cache entry
IPv6[MIPv6 BAck with IPv4 Addr. Ack. option]
HAMN
IPv6 header (src=IPv6 CoA, dst=IPv6 HA)
IPv4 header (src=IPv4 HoA, dst=IPv4 CN)
Payload
IPv6 header (src=IPv6 HA, dst=IPv6 CoA)
IPv4 header (src=IPv4 CN, dst=IPv4 HoA)
Paylaod
IPv6 header (src=IPv6 CoA, dst=IPv6 HA)
IPv6 header (src=IPv6 HoA, dst=IPv6 CN)
Payload
IPv6 header (src=IPv6 HA, dst=IPv6 CoA)
IPv6 header (src=IPv6 CN, dst=IPv6 HoA)
Paylaod
CN
IPv6 Data Traffic(IPv6-in-IPv6)
IPv4 Data Traffic(IPv4-in-IPv6)
KRNet 200818/37
Case II-1. Visited network supports Public IPv4 바인딩 관리 방법
DSMIPv6 Operation
HAMN’s IPv6 HoAMN’s IPv6 HoA MN’s IPv4 CoAMN’s IPv4 CoA
MN’s IPv4 HoAMN’s IPv4 HoA MN’s IPv4 CoAMN’s IPv4 CoA
IPv6 binding cache entry
IPv4 binding cache entryIPv4[UDP[IPv6[MIPv6 BU with IPv4 HoA option, IPv4 CoA option]]]
IPv4[UDP[IPv6[MIPv6 BAck with IPv4 Addr. Ack. Option, NAT Detection option]]]
IPv4 CoAIPv4 CoA
Source Addr.Destination Addr.
HA’s IPv4 Addr.HA’s IPv4 Addr.
Outer IPv4 Header
IPv6 HoAIPv6 HoA
Source Addr. Destination Addr.
HA’s IPv6 Addr.HA’s IPv6 Addr.
Inner IPv6 HeaderHoA Destination
Option
IPv6HoA
Binding Update
… IPv4HoA
IPv4 HoA Option
UDP
… IPv4CoA
IPv4 CoA Option
=No NAT is Detected
(No Detection)
KRNet 200819/37
Case II-1. Visited network supports Public IPv4 터널 설정 및 Data Traffic 전송
DSMIPv6 Operation
MN
IPv4 header (src=IPv4 CoA, dst=IPv4 HA)
IPv4 header (src=IPv4 HoA, dst=IPv4 CN)
Payload
IPv4 header (src=IPv4 HA, dst=IPv4 CoA)
IPv4 header (src=IPv4 CN, dst=IPv4 HoA)
Paylaod
IPv4 header (src=IPv4 CoA, dst=IPv4 HA)
IPv6 header (src=IPv6 HoA, dst=IPv6 CN)
Payload
IPv4 header (src=IPv4 HA, dst=IPv4 CoA)
IPv6 header (src=IPv6 CN, dst=IPv6 HoA)
Paylaod
HA CN
IPv6 Data Traffic(IPv6-in-IPv4)
IPv4 Data Traffic(IPv4-in-IPv4)
KRNet 200820/37
Case II-2. Visited network supports Private IPv4 바인딩 관리 방법
DSMIPv6 Operation
HAMN’s IPv6 HoAMN’s IPv6 HoA MN’s IPv4 CoAMN’s IPv4 CoA
MN’s IPv4 HoAMN’s IPv4 HoA MN’s IPv4 CoAMN’s IPv4 CoA
IPv6 binding cache entry
IPv4 binding cache entryIPv4[UDP[IPv6[MIPv6 BU with IPv4 HoA option, IPv4 CoA option]]]
IPv4[UDP[IPv6[MIPv6 BAck with IPv4 Addr. Ack. Option, NAT Detection option]]]
IPv4 CoAIPv4 CoA
Source Addr.Destination Addr.
HA’s IPv4 Addr.HA’s IPv4 Addr.
Outer IPv4 Header
IPv6 HoAIPv6 HoA
Source Addr. Destination Addr.
HA’s IPv6 Addr.HA’s IPv6 Addr.
Inner IPv6 HeaderHoA Destination
Option
IPv6HoA
Binding Update
… IPv4HoA
IPv4 HoA Option
UDP
… IPv4CoA
IPv4 CoA Option
NAT is Detected
(NAT Detected)
NAT
KRNet 200821/37
Case II-2. Visited network supports Private IPv4 터널 설정 및 Data Traffic 전송
DSMIPv6 Operation
MN
IPv4 header (src=IPv4 CoA, dst=IPv4 HA)
UDP header
IPv4 header (src=IPv4 HoA, dst=IPv4 CN)
Payload
IPv4 header (src=IPv4 HA, dst=IPv4 CoA)
UDP header
IPv4 header (src=IPv4 CN, dst=IPv4 HoA)
Paylaod
IPv4 header (src=IPv4 CoA, dst=IPv4 HA)
UDP header
IPv6 header (src=IPv6 HoA, dst=IPv6 CN)
Payload
IPv4 header (src=IPv4 HA, dst=IPv4 CoA)
UDP header
IPv6 header (src=IPv6 CN, dst=IPv6 HoA)
Paylaod
HA CN
IPv6 Data Traffic(IPv6-in-UDP-in-IPv4)
IPv4 Data Traffic(IPv4-in-UDP-in-IPv4)
KRNet 200822/37
NAT Detection Option Message Format
F It indicates to MN that UDP encapsulation is required.
Refresh Time A suggested time (in seconds) for MN to refresh the NAT binding. “all 1s” means that keepalives are not needed (no NAT was
detected).
NAT binding Refreshment if MN is not active, it will need to periodically send a message to HA
in order to refresh the NAT binding.
The default time is NATKATIMEOUT (=110 sec.)
If “Refresh time” is suggested from HA, MN should use it.
NAT Detection Option & NAT Keepalive
KRNet 200823/37
6-in-udp-in-
4Tunnel
4-in-udp-in-
4Tunnel
6-in-4Tunnel
4-in-4Tunnel
MN 와 HA 사이의 시그널링 및 터널 설정
HA (IPv6 HoA & IPv4 HoA 적절한 IPv4 or IPv6 CoA )
MN MN
IPv4-UDP-IPv6-BU
IPv4-UDP-IPv6-BAck6-in-6
Tunnel4-in-6Tunnel
MN
IPv6-BU
IPv6-BAck NAT
종합적인 모습
MN 이 IPv6 네트워크로 이동할 때
MN 이 IPv4 네트워크로 이동할 때
MN 이 Private IPv4 네트워크로 이동할 때
IPv4-UDP-IPv6-BU
IPv4-UDP-IPv6-BAck
KRNet 200824/37
DSMIPv6 Operation
KRNet 200825/37
IETF PMIPv6 Drafts Official WG Item
S. Gundavelli (CISCO), K. Leung (CISCO), and V. Devarapalli (Azaire Networks), K. Chowdhury (Starent Networks), B. Patil (Nokia), “Proxy Mobile IPv6,” draft-ietf-netlmm-proxymip6-00.txt, April 8, 2007.
S. Gundavelli (CISCO), K. Leung (CISCO), and V. Devarapalli (Azaire Networks), K. Chowdhury (Starent Networks), B. Patil (Nokia), “Proxy Mobile IPv6,” draft-ietf-netlmm-proxymip6-01.txt, June 18, 2007.
S. Gundavelli (CISCO), K. Leung (CISCO), and V. Devarapalli (Azaire Networks), K. Chowdhury (Starent Networks), B. Patil (Nokia), “Proxy Mobile IPv6,” draft-ietf-netlmm-proxymip6-12.txt April 24, 2008.
2008 년 중반 RFC 예정
Internet Drafts of PMIPv6
.
.
.
KRNet 200826/37
PMIPv6 Overview
LMM (Localized Mobility Management)
Domain
MAG
LMA
Proxy Binding Update (PBU)Control message sent by MAG to LMA
to establish a binding between MN-HoA and Proxy-CoA
Home Network
Proxy Care of Address (Proxy-CoA)The address of MAG
That will be the tunnel end-point
IP Tunnel IP-in-IP tunnel between LMA and MAG
MAG
LMA: Localized Mobility AgentMAG: Mobile Access Gateway
LMA Address (LMAA)
MN’ Home Address (MN-HoA) MN continues to use it as long as
it roams within a same domain
That will be the tunnel entry-point
MN’s Home Network (Topological Anchor Point)
MN’s Home Network Prefix (MN-HNP)CAFE:2:/64
movement
KRNet 200827/37
PMIPv6 OverviewNew entities
LMA (Local Mobility Anchor) Home Agent for the mobile node in the PMIPv6 domain Assigns MN's home prefix and manages the MN's reachability state
MAG (Mobile Access Gateway) Manages the mobility related signaling for a mobile node Tracking the MN’s attachment to the link and for signaling the MN's
LMA
MAG
PBU
PBAck
MAG
PBU
PBAck
6-in-4 Tunne
l
6-in-6 Tunne
l
4-in-6 Tunne
l
MN
MAG
PBAck
6-in-udp-in-
4 Tunnel
4-in-udp-in-
4 Tunnel
PBU4-in-4 Tunne
lNAT
LMA
KRNet 200828/37
PMIPv6 Operation Flow
MN MAG AAA&Policy Store LMA CN
MN Attachment AAA Query with MN-ID
AAA Reply with Profile
PBU with MN-ID, Home Network Prefix option, Timestamp option
PBA with MN-ID, Home Network Prefix optionRA
[MN-HoA:CN](data)[Proxy-CoA:LMAA][MN-HoA:CN](data)
[MN-HoA:CN](data)
Tunnel Setup
PBU: Proxy Binding UpdatePBA: Proxy Binding Ack.
DHCP ServerDHCP Request
DHCP Response
DHCP Request
DHCP Response
Optional
KRNet 200829/37
PMIPv6 Features
Home in Any Place MAG sends the RA (Router Advertisement) messages advertising MN’s
home network prefix and other parameters MAG will emulate the home link on its access link.
MN always obtain its “home network prefix”, any where in the network. It will ensure that MN believes it is at its home.
RA Unicast RA should be UNICASTed to an MN It will contain MN’s Home Network Prefix
Per-MN Prefix
M:1 Tunnel LMA-MAG tunnel is a shared tunnel among many MNs. One tunnel is associated to multiple MNs’ Binding Caches.
KRNet 200830/37
IPv4 Support for PMIPv6
Two functions supported IPv4 Transport Network Support IPv4 Home Address Mobility
The new WG draft for IPv4 support for PMIPv6 R. Wakikawa (Keio Univ.), S. Gundavelli (Cisco), “IPv4 Support for Proxy Mobile
IPv6”, draft-ietf-netlmm-pmip6-ipv4-support-02.txt, November 19, 2007
KRNet 200831/37
IPv4 Support for PMIPv6
PMIPv6’s IPv4 Support
Dual Stack LMAOnly-IPv6 enabled(LMMAv6)
Dual Stack MNor
IPv4 MN
PBU (HoAv6, Proxy CoAv6, HoAv4)
HoAv4 and HoAv6
Proxy CoAv6
[Mobility Binding]
IPv6 Tunnel (LMAAv6->Proxy CoAv6)
IPv4 trafficCNv4 HoAv4
IPv6 trafficCNv6->HoAv6Dual Stack MAG
Only-IPv6 enabled(Proxy CoAv6) <MN in IPv6 domain>
Dual Stack LMAOnly-IPv4 enabled(LMAAv4)
Dual Stack MNor
IPv4 MN
PBU (HoAv6, Proxy CoAv4, HoAv4)
HoAv4 and HoAv6
Proxy CoAv4
[Mobility Binding]
IPv4 Tunnel (LMAAv4->Proxy CoAv4)
IPv4 trafficCNv4 HoAv4
IPv6 trafficCNv6->HoAv6Dual Stack MAG
Only-IPv4 enabled(Proxy CoAv4) <MN in IPv4 domain>
KRNet 200832/37
H/W 및 S/W 명세 MAG (MAG1, MAG2, MAG3)
CPU: Intel Pentium 4, 3.00GHz 802.11 NIC: Linksys Dual-Band Wireless A+G
PCI Adapter WMP-55AG (Atheros Chipset) OS: Debian 3.1 sarge, kernel 2.6.10
LMA CPU: Intel Pentium 4, 3.00GHz OS: Debian 3.1 sarge,
kernel 2.6.10 Free Radius S/W
CN, MN CPU: Intel Pentium 4,
1.80GHz, 1.6 GHz OS: Windows XP, SP2
VoD Streaming Software CN: VLC media server MN: VLC media player
테스트베드 구축
KRNet 200833/37
IPv6-IPv4 종합 테스트베드
MN has Dual Stack and both addresses are always
enabled
With ETRI, KT
SSID: PMIP1SSID: PMIP2
SSID: PMIP3
MAG1
ra0) 192.168.101.13ffe:1:1::1/64
fe80::1
eth0) 3ffe:1::2/64MAG2
ra0) 192.168.102.13ffe:1:2::1/64
fe80::1
eth0) 192.168.1.2
ra0) 10.0.1.13ffe:1:3::1/64
fe80::1
eth0) 10.0.0.1V6 networkV4 network
초기 실행 : v6 VoD Client 초기 실행 : v4 VoD Client
LMACN
NAT 192.168.1.3
eth0) 192.168.1.13ffe:1::1/64
eth1) 192.168.2.13ffe:2::1/64
eth0) 192.168.2.23ffe:2::2/64
V4/V6 network
Private V4 network
MAG3
LMA 가 MN 에게 할당할 Prefix Pool
3ffe:1:3:1::/64~
3ffe:1:3:ffff::/64
KRNet 200834/37
Only Private IPv4 NetworkWith KT
LMA(PC0)
VoD(PC4)
Subnet 4
NAT1 NAT2
MAG1(PC1)
MAG2(PC2)
Subnet 1 Subnet 2MAG3(PC3)
Subnet 3
Notebook1 Notebook2Notebook1 Notebook1
802.11g 802.11a192.168.1.2 192.168.3.2
192.168.1.1
192.168.3.1
192.168.4.1 192.168.4.2
10.0.1.1 10.0.2.1
10.0.1.2 10.0.2.2
10.0.1.1
10.0.1.2
10.0.101.1 10.0.102.1 10.0.101.1
192.168.5.1 192.168.5.2
192.168.5.1
192.168.5.1
KRNet 200835/37
Only Private IPv4 테스트 베드에서의 실험 결과
Handover Latency
UDP Thoughput 전송률
평균 1.6 Mbps
No.Events
1 2 3 4 5Averag
eMAC Handover
latency + EAP Auth. (ms)
92 37 116 29 65 68
DHCP, PBU/PBAck (ms) 201 118 317 220 125 196
총 응용계층 Handover Latency
(ms)293 155 433 249 190 264
HandoverEvents
KRNet 200836/37
3GPP 및 WiMAX 의 최근 표준 문서에 Mobile IPv4 와 Mobile IPv6 대신 많이 등장하는 용어
DSMIPv6 PMIPv6
한 사업자가 서비스하는 Network 을 한 번에 완벽히 IPv4 에서 IPv6 로 변경을 할 수 있다면 DSMIPv6 이 불필요… 그러나 그것이 항상 가능한가 ?
Mobile IPv4 고려 없이 DSMIPv6 으로 IPv4 네트워크에서 이동성 서비스 가능한가 ? 그렇다 .
추후 IPv6 네트워크로 변경을 고려하여 IPv4 네트워크에서도 DSMIPv6 을 이동성 관리 프로토콜로 사용할 것을 추천
좀 더 효율적인 이동성 관리를 위해서… MIPv6 대신 PMIPv6 를 기본으로 채택하고 그 위에 DSMIPv6 적
용 !!!
Conclusions & Discussion
KRNet 200837/37