Detecting Wireless Network Attachment Author: Heikki Mahkonen Supervisor: Professor Raimo Kantola Instructor: M.Sc. Tero Kauppinen February 14, 2006 Contents Objectives and Research Methods IPv6 Information Configuration Mobility Protocols – Mobility Management – Movement Detection Detecting Wireless Network Attachment Simulation Environment Results and Conclusions 2 (19) 2006-01-12 Objectives and Research Methods Objective was to evaluate different network attachment detection methods and how they are suited for wireless network environments. Provide a simulation environment for further mobility protocol research for Ericsson Research, Finland (NomadicLab). The first objective was conducted as a literature study. The simulation environment was implemented as a part of this Master’s thesis. Different movement detection mechanisms were simulated and their behavior compared and analyzed to produce results and conclusions. 3 (19) 2006-01-12 IPv6 Information Configuration IPv6 Neighbor Discovery (RFC 2461) – – Message exchange Data structures Router list Prefix list Neighbour cache Destination cache Parameter Discovery – – Router Advertisement Router Solicitation Stateless and stateful address autoconfiguration. – – Stateless Address Autoconfiguration (SAA) (RFC 2462) Dynamic Host Configuration Protocol for IPv6 (DHCPv6) (RFC 3315) Duplicate Address Detection (DAD) – – Neighbor Solicitation Neighbor Advertisement Neighbor Unreachability Detection (NUD) – – Neighbor Solicitation Neighbor Advertisement 4 (19) 2006-01-12 IPv6 Information Configuration Router Advertisement and Solicitation Messages Router Advertisement Router Solicitation Type=134 Code=0 Checksum CHL M O Res. Router Lifetime Reachable Time Retrans Timer Type=134 Code=0 Checksum Reserved Options... Options... Prefix Information Option Type=3 Length Prefix Len. L A Res. Valid Lifetime Preferred Lifetime Reserved2 Prefix 5 (19) 2006-01-12 IPv6 Information Configuration MH Stateful Address Autoconfiguration MH Stateless Address Autoconfiguration Mobile Host IPv6 ND Access Router 1. Router Advertisement RA retrans. timer (3-16 sec.) RA received RS delay timer (0 - 1 sec.) * [forever] 2. Router Solicitation RS retrans. timer (1 sec.) 3. Router Advertisement RA delay timer (0 – 0.5 sec.) RA received * [3 or if RA received] 4. RA received Address Autoconfiguration Parameter Discovery 5a. [M:=No] Configure Address 6a. Address 7a. Neighbour Solicitation (DAD) DAD timer * [number of prefixes in RA] 5b. [M:=Yes] Configure address 6b. Address 7b. Neighbour Solicitation (DAD) DAD timer 8. [O:=Yes] Configure IPv6 information 9. IPv6 Information 10. Check reachability Neighbour Unreachable Detection 6 (19) Duplicate Address Detection 11. Neighbour Solicitation 12. Neighbour Advertisement 2006-01-12 Mobility Protocols Mobility protocols work on network and upper OSI reference model layers. Different mobility protocols for different OSI reference model layers. Upper Layers Application layer Sockets Session layer Transport layer SIP Mobility Session Layer Mobility SCTP Mobility TCP Mobility UDP Mobility HIP Mobility Network layer Lower Layers MIPv6 Data-link layer Physical layer 7 (19) 2006-01-12 Mobility Protocols Mobility protocols provide a mobile host a way to retain Internet connectivity while changing attachment point to the Internet. Mobility for a mobile host is achieved by providing distinction between location and identity of the mobile host. Mobility protocol can be divided into three parts – location update – location management – movement detection 8 (19) 2006-01-12 Mobility Protocols Location Update in MIPv6. MH WLAN Home Link Data HA Internet WLAN Foreign Link Data Router BU Access Network BA Router 9 (19) 2006-01-12 CH Mobility Protocols Location Management in MIPv6. MH WLAN Home Link Data HA Internet Data Router Access Network BU WLAN Foreign Link BA Router 10 (19) 2006-01-12 CH Mobility Protocols Movement detection signals the attachment changes of the mobile host to the mobility protocol. Two movement detection mechanisms are defined to give comparison for the DNAv6 optimized movement detection mechanisms in the simulations. Basic Movement Detection – Bases on the data structures provided by the IPv6 ND. – Uses the signaling provided by the IPv6 ND. Link-layer Notification Enhanced Movement Detection – Uses the Link-layer notifications to trigger IPv6 information configuration. – Needs ”link up” and ”link down” notifications from network interface to work. 11 (19) 2006-01-12 Mobility Protocols Basic Movement Detection Mobile Host Mobility Protocol Mobile Host RAI Timer Mobile Host IPv6 ND NC Mobile Host Address Autoconfiguration Mobile Host IPv6 ND 3. Start RAI timer Access Router 1. Router Advertisement (from a new router) 2. Select default router 4. Create NC elememt NC timer 5. Check reachability 6. Neighbour Solicitation 8. NC element reachable NC timer 9. Check reachability RAI timer 10. Neighbour Solicitation ND retrans timer 12. RAI timer expired 15. Access router reachable RAI timer 7. Neighbour Advertisement 16. RAI timer expired 11. Purge IPv6 information 13. Neighbour Solicitation 14. Neighbour Advertisement 17. Neighbour Solicitation ND retrans timer 21. Purge IPv6 information 18. Router Advertisement (from the same router) 19. Update address lifetimes 20. Restart RAI timer 22. Purge IPv6 information 21. Update router and prefix list timers 23. Remove addresses 25. NC element unreachable 24. Purge router and prefix list 26. Stop RAI timer 27. Select default router 28. Select default router 29. Neighbour Solicitation 30. Neighbour Advertisement 31. Signal movement 12 (19) 2006-01-12 Mobility Protocols Link-layer Enhanced Detection Mobile Host Mobility Protocol Mobile Host Address Autoconfiguration Mobile Host IPv6 ND Access Router 1. Link Up 2. Neighbour Solicitation (DAD) 3. Router Solicitation 4. Router Advertisement RA delay timer (0 – 0.5 sec.) 5. Select default router 6. Link Down 7. Purge IPv6 information 8. Router Advertisement (from the same router) 9. Update address lifetimes 11. Purge IPv6 information 10. Update router and prefix list timers 12. Remove addresses 13. Purge router and prefix list 14. Select default router 15. Select default router 16. Neighbour Solicitation 17. Neighbour Advertisement 18. Signal movement 13 (19) 2006-01-12 Detecting Wireless Network Attachment IETF DNA (Detecting Network Attachment) Working Group. “The purpose of the DNA working group is to define standards track and BCP documents that allow hosts to detect their IP layer configuration and connectivity status quickly, proposing some optimization to the current specifications that would allow a host to reconfigure its IPv6 layer faster than today.” (IETF DNA Working Group) Contributions: – – – – – – – RFC 4135: Goals of Detecting Network Attachment in IPv6. Draft: BCP for Hosts. Draft: BCP for Routers. Draft: Link-layer Event Notifications for DNA. Draft: Fast Router Discovery with L2 Support. Draft: DNA with unmodified routers: Prefixlist based approach. Draft: Detecting Network Attachment in IPv6 Networks (DNAv6) 14 (19) 2006-01-12 Detecting Wireless Network Attachment DNAv6 Problems – Link identification issues. – Delay Issues. – Issues with wireless network environments. DNAv6 Goals – – – – – – – – – – The DNA solution must detect whether the mobile host must configure the IPv6 information on a newly attached link. The delay for identifying the link and possible IPv6 information configuration must be minimized. The DNA solution must not falsely assume that the link change has occurred and initiate a re-configuration of the IPv6 information. The DNA solution must keep the signaling needed for the detection process at minimum. The DNA solution must reuse the existing signaling mechanisms. The DNA solution must use the link-local signaling for the detection procedure and there must be no need for global IPv6 addresses for the detection process. The DNA solution must also function on links where secure ND. The security vulnerabilities in the IPv6 information configuration must not be increased by the DNA solution. There must be appropriate backward compatibility with hosts and access routers using the DNA solution and with hosts and access routers not utilizing the DNA solutions. The DNA solution must take into account the characteristics of the wireless network environments. 15 (19) 2006-01-12 Detecting Wireless Network Attachment Best Current Practices for Hosts and Routers – Configuration instructions for hosts and routers. – Does not provide/demand any implementation add-ons to existing protocols. Fast Router Discovery (FRD) with L2 Support – Specifies a way to disscover access routers as fast as possible in the WLAN access networks. – Uses a L2 support in the WLAN AP. – The ”link up” notifications sent to the access router or the AP caches and proxies the RA messages to mobile hosts. 16 (19) 2006-01-12 Detecting Wireless Network Attachment DNAv6 specifies a optimal solutions for the link identification and fast routter discovery. Satisfies all the goals specified in the RFC 4135. Defines three data structures. – – Landmark prefix – The prefix which the mobile host is currently using. Link identifier prefix – – For router: ”DNARouterList” ”DNARouterPrefixList” For mobile host: ”DNAHostPrefixList” Access routers choose the numerically smallest prefix to be used as the LinkID prefix. At least this prefix must be added to every RA message. Fast Router Advertisement – – – – ”DNARouterList” has a router tokens (SHA-1 hash of the access router address). Source address in the RS message is hashed and compared to the router tokens (XOR) to get the ”ranking” of the router. Router with ranking zero will answer first. RA delay is the ”rankin” multiplied by RASeparation (20) milliseconds. 17 (19) 2006-01-12 Detecting Wireless Network Attachment DNAv6 uses two flags in the RA message. – – D flag indicates DNAv6 compatibility. C flag indicates that the RA message carries complete set of network prefixes. DNAv6 specifies two new options to RS and RA messages. Learned Prefix Option Router Advertisement Type Type=134 Code=0 Checksum CHL M O D C R Router Lifetime Reachable Time Retrans Timer Length Prefix L. 1 Prefix L. 2 ... Prefix L. N Padding Prefix 1 Options... Prefix 2 Landmark Prefix Option Type ... Length Prefix Len. Y N Res. Prefix N Reserved Landmark Prefix 18 (19) 2006-01-12 Detecting Wireless Network Attachment DNAv6 operation for an access router. Access Router IPv6 ND Access Router DNARouterPrefixList Access Router DNARouterList Access Router 1. Bootstrap Other Access Routers on link Mobile Host 1. Router Advertisement (D=0, C=0) 2. Router Solicitation 4. Store router 3. Router Advertisement (D=1, C=1) RA delay timer 5. Store prefix 6. Router Advertisement (D=1, C=1) 7. Update router 8. Update prefix 9. Router Solicitation RA delay timer 10. Router Advertisement (D=1, C=1) 11. Router Solicitation (without LMPO) 13. Get learned prefixes 14. Learned prefix option 15. Get ranking 16. Ranking RA delay timer 19. Check landmark prefix 17. Router Advertisement (D=1, C=1) 18. Router Solicitation (with LMPO) 20. Result 21. Check landmark prefix 22. Result 23. Get learned prefixes 24. Learned prefix option 25. Get ranking 26. Ranking RA delay timer 19 (19) 27. Router Advertisement (D=1, C=1 & LMPO) 2006-01-12 Detecting Wireless Network Attachment DNAv6 operation for a mobile host. Mobile Host Mobility Protocol Mobile Host DNAHostPrefixList Mobile Host Address Autoconfiguration Mobile Host IPv6 ND Access Router 1. Link Up (establish) 2. Link-layer addresse in ”optimistic” state DAD timer 6. Add prefixes 3. Neighbour Solicitation (DAD) 4. Router Solicitation (with TSLLAO) 5. Router Advertisement (D=1,C=1 & to unicast) RA delay timer 7. Link-layer address in ”preferred” state 8. Select default router 9. Link Up (re-establish) 10. Addresses to ”optimistic” state 13. Add prefixes 11. Router Solicitation (with TSLLAO & LMPO) 12. Router Advertisement (D=1,C=1, with LMPO & to unicast) RA delay timer 14. Identify the link 15. Identify the link 16. Check LMPO 17. Check prefixes in the IPv6 ND prefix list 18. Check prefixes 19. Result 20a. Addresses to ”preferred” state 20b. Purge all IPv6 information and reconfigure it 21b. Select default router 22. Select default router 23. Signal movement 20 (19) 2006-01-12 Simulation Environment Simulation environment was implemented into NS2 (Network Simulator 2). – IEEE 802.11 Management frames. Beacon Frame Probe Request and Response Association Request and Response – Basic IPv6 ND implementation. RS,RA,NS and NA message exchange. IPv6 ND NC for mobile host. Parameter discovery, SAA, NUD, DAD. – MIPv6 implementation without route optimization. – Three different MD types (Basic, LL Enhanced and DNAv6). – Two DNAv6 solutions for routers (DNAv6 and the FRD). 21 (19) 2006-01-12 Simulation Environment Simulation environment includes: – – Mobile host (MH), Home Agent (HA), Correspondent Host (CH) and foreign access router. Home and foreign WLAN access networks. Four handover scenarios were simulated. CH HA Router 4. MH MH 2. 1. 3. MH MH 22 (19) 2006-01-12 Results Simulation results from 4 handover scenarios. 23 (19) 2006-01-12 Results Simulation results from 4 handover scenarios when FRD is used. 24 (19) 2006-01-12 Results Simulation results from 4 handover scenarios. Simulation results from 4 handover scenarios when FRD is used. 25 (19) 2006-01-12 Conclusions The DNAv6 solutions performes best in every handover scenario. The DNAv6 offers good base for standardized MD mechanism (access routers and mobile hosts). The FRD is a good solution for WLAN networks. – Does not require implementation changes to the mobile hosts. – Only for WLAN. Should be generalized for other wireless network technologies as well. Further work: – DNAv4 and DNAv6 interoperability. – Work on the simulation environment. 26 (19) 2006-01-12 27 (19) 2006-01-12