1 / 35

PMIPv6 구현기술 및 성능 테스트

PMIPv6 구현기술 및 성능 테스트. Youn-Hee Han yhhan@kut.ac.kr Korea University of Technology and Education Internet Computing Laboratory http://icl.kut.ac.kr. Outline. Proxy Mobile IPv6 Overview IPv4 Support in PMIPv6 Implementation of Proxy Mobile IPv6 & IPv4 Support

ivan
Download Presentation

PMIPv6 구현기술 및 성능 테스트

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PMIPv6 구현기술 및 성능 테스트 Youn-Hee Han yhhan@kut.ac.kr Korea University of Technology and EducationInternet Computing Laboratory http://icl.kut.ac.kr 2008년 제1차 IPv6 기술 워크샵

  2. Outline • Proxy Mobile IPv6 Overview • IPv4 Support in PMIPv6 • Implementation of Proxy Mobile IPv6 & IPv4 Support • Experimental Results & Conclusions

  3. Proxy Mobile IPv6 Overview

  4. PMIPv6 Overview LMA: Local Mobility AnchorMAG: Mobile Access Gateway IP Tunnel IP-in-IP tunnel between LMA and MAG LMA Home Network MN’s Home Network (Topological Anchor Point) MAG LMA Address (LMAA) That will be the tunnel entry-point LMM (Localized Mobility Management)Domain MAG movement Proxy Binding Update (PBU) Control message sent by MAG to LMA to establish a binding between MN-HoA and Proxy-CoA MN’s Home Network Prefix (MN-HNP) CAFE:2:/64 MN’ Home Address (MN-HoA) MN continues to use it as long as it roams within a same domain Proxy Care of Address (Proxy-CoA) The address of MAG That will be the tunnel end-point

  5. PMIPv6 Overview • New 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 LMA <MN ID# - Home Network Prefix - Tunnel ID#> PBU PBU 4-to-6 Tunnel 4-to-4 Tunnel 6-to-6 Tunnel 6-to-4 Tunnel PBAck PBAck <MN ID# - Home Network Prefix - Tunnel ID#> MAG MAG <Home Network Prefix – Link-specific (MAC) Address>

  6. PMIPv6 Overview • Assumptions (or Restrictions) • Link between MN and MAG is a point-to-point link (not shared link) • Logically exclusive layer 3 link between MN and MAG • Per-MN Prefix model • unique home network prefix is assigned to MN AR/MAG Point-to-point link Point-to-point link MN . . . MN Per-MN Prefix Per-MN Prefix

  7. PMIPv6 Operation Flow PBU: Proxy Binding UpdatePBA: Proxy Binding Ack. 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 option RA** Tunnel Setup Optional DHCP Server DHCP Request DHCP Request DHCP Response DHCP Response [MN-HoA:CN](data) [Proxy-CoA:LMAA][MN-HoA:CN](data) [MN-HoA:CN](data)

  8. PMIPv6 Features • Proxy Registration • LMA needs to understand the Proxy Registration • RFC 3775 MIPv6 BU/BAck Reuse PBU (Proxy Binding Update) PBAck (Proxy Binding Acknowledgement)

  9. 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.

  10. PMIPv6 Features • Any MN is just a IPv6 host • Any MN is just a IPv6 host with its protocol operation consistent with the base IPv6 specification. • All aspects of Neighbor Discovery Protocol will not change. • IPv6 protocol parameter consideration • Lower default-router list cache timeout LLA: Link Local Address (e.g., MAC Address)

  11. IPv4 Support in PMIPv6

  12. IPv4 Support for MIPv6 (RFC 3775) • Leveraging the existing Dual Stack Mobile IPv6 (DSMIPv6) protocol • Hesham Soliman (Ed.), “Mobile IPv6 support for dual stack Hosts and Routers (DSMIPv6)”, draft-ietf-mip6-nemo-v4traversal-06.txt, Nov., 2007 • 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, Nov., 2007 IPv4 CN HA Tunneled to IPv6 CoA IPv4 Packet v6 Network v4 Network Movement Tunneled to IPv4 CoA IPv6 Packet IPv4 CN v4 Network v6 Network NAT Tunneled to private IPv4 CoA Private v4 Network Movement

  13. IPv4 Support for PMIPv6 • PMIPv6’s IPv4 Support [Mobility Binding] HoAv4 and HoAv6 PBU (HoAv6, Proxy CoAv6, HoAv4) Proxy CoAv6 Dual Stack MNor IPv4 MN IPv4 traffic CNv4  HoAv4 IPv6 Tunnel (LMAAv6Proxy CoAv6) IPv6 traffic CNv6->HoAv6 Dual Stack MAG Only-IPv6 enabled (Proxy CoAv6) Dual Stack LMA Only-IPv6 enabled (LMMAv6) <MN in IPv6 domain> [Mobility Binding] HoAv4 and HoAv6 PBU (HoAv6, Proxy CoAv4, HoAv4) Dual Stack MNor IPv4 MN Proxy CoAv4 IPv4 traffic CNv4  HoAv4 IPv4 Tunnel (LMAAv4Proxy CoAv4) IPv6 traffic CNv6->HoAv6 Dual Stack MAG Only-IPv4 enabled (Proxy CoAv4) Dual Stack LMA Only-IPv4 enabled (LMAAv4) <MN in IPv4 domain>

  14. IPv4 Support for PMIPv6 • PMIPv6’s IPv4 Support by using DSMIPv6 proposal • When MN moves to an IPv6 network IPv6 header (src=IPv6 LMMA, dst=IPv6 Proxy CoA) Mobility header - Proxy BAck [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Ack. Option IPv6 header (src=IPv6 Proxy CoA, dst=IPv6 LMMA) Mobility header - Proxy BU [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Option (possibly empty) Proxy Binding Update IPv6 binding cache entry LMA MN MAG MN’s IPv6 HoA IPv6 Proxy CoA IPv4 binding cache entry MN’s IPv4 HoA IPv6 Proxy CoA IPv6 header (src=IPv6 LMMA, dst=IPv6 Proxy CoA) IPv6 header (src=IPv6 CN_ADDR, dst=IPv6 HoA) Paylaod IPv6 header (src=IPv6 Proxy CoA, dst=IPv6 LMMA) IPv6 header (src=IPv6 HoA, dst=IPv6 CN_ADDR) Payload IPv6 Data Traffic IPv6 header (src=IPv6 LMMA, dst=IPv6 Proxy CoA) IPv4 header (src=IPv4 CN_ADDR, dst=IPv4 HoA) Paylaod IPv6 header (src=IPv6 Proxy CoA, dst=IPv6 LMMA) IPv4 header (src=IPv4 HoA, dst=IPv4 CN_ADDR) Payload IPv4 Data Traffic

  15. IPv4 Support for PMIPv6 • PMIPv6’s IPv4 Support by using DSMIPv6 proposal • When MN moves to a Public IPv4 network IPv4 header (src=IPv4 LMMA, dst=IPv4 Proxy CoA) UDP header IPv6 header (src=IPv6 LMMA, dst=IPv6 Proxy CoA) Mobility header - Proxy BAck [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Ack. Option - NAT Detection Option IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMMA) UDP header IPv6 header (src=IPv6 Proxy CoA, dst=IPv6 LMMA) Mobility header - Proxy BU [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Option - MN IPv4 CoA Option Proxy Binding Update LMA IPv6 binding cache entry MN MAG MN’s IPv6 HoA IPv4 Proxy CoA IPv4 binding cache entry MN’s IPv4 HoA IPv4 Proxy CoA IPv4 header (src=IPv4 LMAA, dst=IPv4 Proxy CoA) IPv6 header (src=IPv6 CN_ADDR, dst=IPv6 HoA) Payload IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMAA) IPv6 header (src=IPv6 HoA, dst=IPv6 CN_ADDR) Payload IPv6 Data Traffic IPv4 header (src=IPv4 LMMA, dst=IPv4 Proxy CoA) IPv4 header (src=IPv4 CN_ADDR, dst=IPv4 HoA) Payload IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMMA) IPv4 header (src=IPv4 HoA, dst=IPv4 CN_ADDR) Payload IPv4 Data Traffic

  16. IPv4 Support for PMIPv6 • PMIPv6’s IPv4 Support by using DSMIPv6 proposal • When MN moves to a Private IPv4 network IPv4 header (src=IPv4 LMMA, dst=IPv4 Proxy CoA) UDP header IPv6 header (src=IPv6 LMMA, dst=IPv6 Proxy CoA) Mobility header - Proxy BAck [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Ack. Option - NAT Detection Option IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMMA) UDP header IPv6 header (src=IPv6 Proxy CoA, dst=IPv6 LMMA) Mobility header - Proxy BU [P flag is set] Mobility Option - IPv6 Home Network Prefix (MN IPv6 HoA) - Timestamp Option - MN IPv4 HoA Option - MN IPv4 CoA Option Proxy Binding Update IPv4 NAT IPv6 binding cache entry LMA MN MAG MN’s IPv6 HoA IPv4 Proxy CoA IPv4 binding cache entry MN’s IPv4 HoA IPv4 Proxy CoA IPv4 header (src=IPv4 LMAA, dst=IPv4 Proxy CoA) UDP header IPv6 header (src=IPv6 CN_ADDR, dst=IPv6 HoA) Payload IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMAA) UDP header IPv6 header (src=IPv6 HoA, dst=IPv6 CN_ADDR) Payload IPv6 Data Traffic IPv4 header (src=IPv4 LMMA, dst=IPv4 Proxy CoA) UDP header IPv4 header (src=IPv4 CN_ADDR, dst=IPv4 HoA) Payload IPv4 header (src=IPv4 Proxy CoA, dst=IPv4 LMMA) UDP header IPv4 header (src=IPv4 HoA, dst=IPv4 CN_ADDR) Payload IPv4 Data Traffic

  17. Implementation of Proxy Mobile IPv6 & IPv4 Support

  18. Schedule • Schedule 11월 20일 3월 5월 6월 7월 8월 30일 10월 4월 9월 MIPL Mobile IPv6 코드 분석 및 Kernel 2.6.10으로의 Porting 작업 PMIPv6 구현 이슈 및 Implementation Scope 셋업 PMIPv6 구현 데모 시나리오 작성 데모 시나리오 테스트 및 디버그 중간 데모 IPv4 Support 구현 이슈 및 Implementation Scope 셋업 IPv4 Support 구현 및 PMIPv6 구현 보완 데모 시나리오 보완 최종 테스트 및 디버그 최종 보고 및 데모

  19. 실험실 테스트 베드 • MAG/LMA Specification • MAG (MAG1, MAG2, MAG3) • CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz, • Memory: 1GB • 802.3 NIC: Marvel 88E8001 • 802.11 NIC: Linksys Dual-Band PCI Adapter WMP-55AG • OS: Debian 3.1 sarge, kernel 2.6.10 • LMA • CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz • Memory: 1 GB • 802.3 NIC: Realtek-8139 (x 2개) , 3Com 3c905c-TX • OS: Debian 3.1 sarge, kernel 2.6.10 • CN • CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz • Memory: 1 GB • 802.3 NIC: Marvel 88E8001 • OS: Windows XP SP2 • MN (노트북) • CPU: Intel Centrino, Pentium Dual Core 1.86 GHz • Memory: 2 GB • OS: Windows XP SP2 실험실 테스트 베드 구축 모습

  20. Implementation Issues • Issue #1. RA의 전송 시점 • In the Draft… • Case 1: Policy Profile에서 AAA-Reply를 통하여 제공하는 경우 • MAG에서 AAA-Reply를 받은 이후 RA전송 가능 • Case 2: LMA에서 PBA를 통하여 제공되는 경우 • MAG에서 PBA를 받은 이후 RA전송 가능 • Selected Approach • LMA에서 PBA를 통하여 제공 • Issue #2. PBU 갱신 시 MN 존재 유무 파악 • In the Draft… • Binding Cache를 갱신하기 위한 PBU를 전송하는 경우 MN의 존재를 재확인 해야 함 • 드래프트에 기술된 재확인 방법들 • Link-layer event specific to the access technology • PPP Session termination event on point-to-point link types • IPv6 NUD event from IPv6 stack • Absence of data traffic from MN on the link for a certain duration of time • Selected Approach • MAG에서 PBU에 대한 lifetime 이 끝나가게 되면 NUD를 MN에게 수행한 후 MN이 존재하는 것이 확인되면 PBU 전송

  21. Implementation Issues • Issue #3. default gateway의 변경 • In the Draft… • Handover 이후 MN에서 NUD과정에 따른 Default Gateway 변경 지연 • 드래프트에서제안된 방법들 • Lower Default-Router List Cache Time-out • By using a context transfer, new MAG multicasts an RA using the link-local address that of the previous MAG and with the Router Lifetime field set to value 0. • assignment of a unique link-local address for all the ARs in the PMIPv6 Network. • Selected Approach • 세 번째 방법의 변형 • 모든 AR의 link-local address는 원래대로 다르게 셋팅함 • RA 메시지를 만들어 보낼 때 모든 MAG 마다 같은 link-local address를 Source Address로 셋팅해서 보냄 • Issue #4. MN들에게 RA 메시지를 Unicast로 전달하는 방법 • Selected Approach • 특별한 기법 사용 없이 구현 가능 • IP Destination: All-node Multicast Address • MAC Destination: Unicast MAC Address

  22. Implementation Issues • Issue #5. WLAN에서 Peer-to-Peer 링크 구현 이슈 • In the Draft… • WLAN이 Peer-to-Peer 링크가 아님으로써 발생하는 문제 • Selected Approach • RA를 Unicast 로 전송 • 물리적으로 같은 서브넷에 위치한 두 Neighbor MN들이 지닌 Neighbor Cache에 대한 Status 때문에 발생하는 통신 단절 • 서로 다른 서브넷 Prefix를 가진 단말들끼리 Direct Communication을 위한 ARP Cache를 가지게 되면 두 단말 중 어느 한 단말이 이동하게 되면 Session이 끊어지게 됨. • 테스트 결과 일반적인 데이터 통신상에서 Off-link Prefix에 대해서는 무조건 Default Router로 패킷을 보내기 때문에 문제가 없음. • 하지만, Unsolicited Neighbor Advertisement 가 발생되는 경우에는 문제가 발생 • Unsolicited Neighbor Advertisement가 발생되는 경우? AR/MAG Point-to-point link Point-to-point link MN MN . . . Per-MN Prefix Per-MN Prefix

  23. Implementation Issues • Issue #6. IPv4-HoA 할당 방법 • LMA를 통한 동적 할당 방법으로 구현 • 절차 • IPv4 단말이 보내는 DHCP discovery을 MAG에서 Catch • MAG가 이미 IPv4-HoA를 가지고 있는지 판단. • MAG가 이미 IPv4-HoA를 지니고 있지 않으면 PBU-PBACK 교환을 LMA와 수행 • PBU always contains “IPv4 HoA option” defined in DSMIPv6 and the option is set 0.0.0.0. • PBAck contains rightful IPv4 address for the MN-NAI • MAG gets an IPv4-address for the MN-NAI • MAG에서 DHCP offer를 보낼 때 IPv4 HoA 를 옵션으로 넣어줌 • 단말이 보내는 DHCP Request를 MAG에서 Catch • 다시 DHCP Ack. 보냄

  24. Implementation Issues • Issue #7. 인증 방법 및 LMA 주소 할당 방법 • IEEE 802.1x EAP 인증 절차와 PMIPv6의 Policy Store 연동 방법 변경 • 사용자 인증을 위해 EAPoL과 MD5 프로토콜을 이용 LMA

  25. System Block • System Block Diagram PBU/PBAck IPv6 ND Message Exchange Data PacketProcessing & Routing IEEE 802.11 MAC Control Link-Up Event Link-Up Event Processing Address Configuration PMIPv6 Routing & Tunneling PBU/PBAck Data PacketProcessing & Routing Address Configuration PMIPv6 Routing & Tunneling

  26. 종합 테스트 베드 구축 CN 종합 테스트 베드 eth1) 192.168.2.1 3ffe:2::1/64 LMA/Radius V4/V6 network MN has Dual Stack and both addresses are always enabled eth0) 192.168.2.2 3ffe:2::2/64 eth0) 192.168.1.1 3ffe:1::1/64 NAT 192.168.1.3 Private V4 network V6 network MAG3 /DHCP4 eth0) 10.0.0.1 V4 network eth0) 3ffe:1::2/64 MAG1 /DHCP4 MAG2 /DHCP4 eth0) 192.168.1.2 ra0) 10.0.1.1 3ffe:1:3::1/64 fe80::1 ra0) 192.168.101.1 3ffe:1:1::1/64 fe80::1 ra0) 192.168.102.1 3ffe:1:2::1/64 fe80::1 SSID: PMIP3 SSID: PMIP1 SSID: PMIP2 초기 실행: v4 VoD Client 초기 실행: v6 VoD Client

  27. 종합 테스트 베드 터널 설정 • LMA와 MAG 사이의 시그널링 및 터널 설정 LMA PBU PBU PBU PBAck PBAck PBAck NAT 6-to-udp-4Tunnel 4-to-udp-4Tunnel 6-to-6Tunnel 4-to-6Tunnel 6-to-4Tunnel 4-to-4Tunnel MAG1 MAG2 MAG3

  28. IPv4 Only 테스트베드 구축 Subnet 4 VoD (PC4) 192.168.4.1 192.168.4.2 LMA (PC0) 192.168.3.1 192.168.1.1 192.168.3.2 192.168.1.2 802.11g 802.11a NAT2 NAT1 10.0.1.1 10.0.2.1 10.0.1.1 10.0.1.2 10.0.2.2 10.0.1.2 Subnet 1 Subnet 2 Subnet 3 MAG1 (PC1) MAG2 (PC2) MAG3 (PC3) 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 Notebook1 Notebook1 Notebook2 Notebook1

  29. IPv4 Only 테스트베드 터널 설정 • LMA와 MAG 사이의 시그널링 및 터널 설정 LMA PBU PBU PBU PBAck PBAck PBAck NAT NAT NAT 6-to-udp-4Tunnel 4-to-udp-4Tunnel 6-to-udp-4Tunnel 4-to-udp-4Tunnel 6-to-udp-4Tunnel 4-to-udp-4Tunnel MAG1 MAG2 MAG3

  30. 테스트 목적 및 시나리오 • 테스트 목적 및 시나리오 • Target Goal • 이동 단말이미디어 스트리밍 서버로 부터 실시간으로 동영상을 받아 Play 하면서 서로 다른 IP Network을 움직일 때 세션이 끊기지 않음을 보임 • 이동 단말 (Windows XP Operating System) 에는 어떠한 변경도 하지 않음 • 테스트시나리오 • Case 1 • CN: VLC 서버를 IPv4로 구동하여 IPv4 MN으로 Traffic 보냄 • MN: VLC 클라이언트를 IPv4 로 구동 • MN은 3 개의 네트워크를 차례대로 이동함 • IPv6  IPv4  Private IPv4 • Case 2 • CN: VLC 서버를 IPv6로 구동하여 IPv6 MN에게 Traffic 보냄 • MN: VLC 클라이언트를 IPv6 로 구동 • MN은 3 개의 네트워크를 차례대로 이동함 • IPv6  IPv4  Private IPv4 • Case 3 • CN: VLC 서버를 IPv4로 구동하여 IPv4 MN으로 Traffic 보냄 • MN: VLC 클라이언트를 IPv4 로 구동 • Private IPv4 Only Network에서 실험

  31. Experimental Results & Conclusions

  32. 종합 테스트베드에서의실험 결과 • HandoverLatency (IPv6 네트워크로의 이동) • UDP Thoughput • 전송률 • 평균 3.0 Mbps HandoverEvents

  33. 종합 테스트베드에서의실험 결과 Packet Tracing (IPv6 네트워크로의 이동)

  34. Private IPv4 Only 테스트베드에서의실험 결과 • HandoverLatency (Private-IPv4 네트워크로의 이동) • UDP Thoughput • 전송률 • 평균 1.6 Mbps HandoverEvents

  35. Conclusions • PMIPv6 can be a way to facilitate the deployment of IP mobility • Favorable to ISPs • PMIPv6 is New Idea? Absolutely No!, but new trend!. It’s a turn for the better! • In the handover latency aspect, PMIPv6 has a very good performance. • PMIPv6 + IPv4 support is well working. • No H/W Upgrade, Just S/W issue • In current system, IPv6 signaling is trivial!!! • More Study and Standardization Needed • Route Optimization in PMIPv6 • Fast Handover in PMIPv6, Multihoming • Cross-layering Issues • PMIPv6 over IEEE 802.11/16/WiBro • Fast Handover with leverage of IEEE 802.21 • Vertical Handover based on PMIPv6 • Network-based Global Mobility • PMIPv6-based NeMo (MANEMO) • PMIPv6-based 6LowPAN Sensor Node Mobility

More Related