Mobile IPv6 has become the key enabling technology for mobile data and multimedia services and devices worldwide (i.e., cellular systems, VoIP handovers over LAN, multi-access network handovers, location privacy, enterprise mobile networking, etc.). ,
This book covers the IPv6 host mobility protocol known as mobile IPv6 and begins with a basic description of mobile IPv6 and then details protocol specifications and data structures as well as actual implementation. , A sample configuration for a real Mobile IPv6 operation is provided at the end of the book. , Source code will be downloadable form a companion website.
Mobile IPv6 has become the key enabling technology for mobile data and multimedia services and devices worldwide (i.e., cellular systems, VoIP handovers over LAN, multi-access network handovers, location privacy, enterprise mobile networking, etc.).This book covers the IPv6 host mobility protocol known as "e;mobile IPv6"e; and begins with a basic description of mobile IPv6 and then details protocol specifications and data structures as well as actual implementation. A sample configuration for a real Mobile IPv6 operation is provided at the end of the book. Provides a detailed introduction to the IETF Mobile IPv6 standard Includes extensive line-by-line code sets with meticulous explanations of their implementation Numerous diagrams and illustrations to help in visualizing the implementation
Front Cover 1
Title Page 4
Copyright Page 5
Table of Contents 6
About the Authors 12
Chapter 1. Introduction 14
1.1 History of IP Mobility 15
1.2 Benefit of IP Mobility 16
1.3 Supplemental Technologies of Mobile IPv6 18
1.4 Coverage of this Book 29
Chapter 2. Mobile IPv6 Overview 30
2.1 Types of Nodes 31
2.2 Basic Operation of Mobile IPv6 32
Chapter 3. Header Extension 38
3.1 Alignment Requirements 39
3.2 Home Address Option 39
3.3 Type 2 Routing Header 40
3.4 Mobility Header 41
3.5 Mobility Options 49
3.6 Neighbor Discovery Messages 52
3.7 ICMPv6 Messages 55
Chapter 4. Procedure of Mobile IPv6 60
4.1 Protocol Constants and Variables 60
4.2 Home Registration 60
4.3 Bidirectional Tunneling 64
4.4 Intercepting Packets for a Mobile Node 67
4.5 Returning Home 67
Chapter 5. Route Optimization 70
5.1 Return Routability 71
5.2 Sending Initial Messages 71
5.3 Responding to Initial Messages 72
5.4 Computing a Shared Secret 74
5.5 Verifying Message 75
5.6 Security Considerations 77
5.7 Deregister Binding for Correspondent Nodes 77
5.8 Backward Compatibility 77
5.9 Movement Detection 79
Chapter 6. Dynamic Home Agent Address Discovery 80
Chapter 7. Mobile Prefix Solicitation/Advertisement 84
Chapter 8. Relationship with IPsec 88
Chapter 9. Code Introduction 92
9.1 Statistics 92
Chapter 10. Mobile IPv6-related Structures 96
10.1 Files 96
10.2 Mobility Header Message: ip6_mh{} Structure 97
10.3 Binding Refresh Request Message: ip6_mh_binding_request{} Structure 98
10.4 Home Test Init Message: ip6_mh_home_test_init{} Structure 99
10.5 Care-of Test Init Message: ip6_mh_careof_test_init{} Structure 100
10.6 Home Test Message: ip6_mh_home_test{} Structure 100
10.7 Care-of Test Message: ip6_mh_careof_test{} Structure 101
10.8 Binding Update Message: ip6_mh_binding_update{} Structure 102
10.9 Binding Acknowledgment Message: ip6_mh_binding_ack{} Structure 103
10.10 Binding Error Message: ip6_mh_binding_error{} Structure 105
10.11 Mobility Option Message Structures 105
10.12 Mobility Option Message: ip6_mh_opt{} Structure 106
10.13 Binding Refresh Advice Option: ip6_mh_opt_refresh_advice{} Structure 106
10.14 Alternate Care-of Address Option: ip6_mh_opt_altcoa{} Structure 107
10.15 Nonce Index Option: ip6_mh_opt_nonce_index{} Structure 107
10.16 Authentication Data Option: ip6_mh_opt_auth_data{} Structure 108
10.17 The Internal Mobility Option: mip6_mobility_options{} Structure 108
10.18 Home Address Option: ip6_opt_home_address{} Structure 109
10.19 Type 2 Routing Header: ip6_rthdr2{} Structure 109
10.20 The Modified Router Advertisement Message: nd_router_advert{} Structure 110
10.21 The Modified Prefix Information Option: nd_opt_prefix_info{} Structure 111
10.22 Advertisement Interval Option: nd_opt_adv_interval{} Structure 112
10.23 Home Agent Information Option: nd_opt_homeagent_info{} Structure 112
10.24 Dynamic Home Agent Address Discovery Request Message: mip6_dhaad_req{} Structure 112
10.25 Dynamic Home Agent Address Discovery Reply Message: mip6_dhaad_rep{} Structure 113
10.26 Mobile Prefix Solicitation Message: mip6_prefix_solicit{} Structure 114
10.27 Mobile Prefix Advertisement Message: mip6_prefix_advert{} Structure 114
10.28 Binding Cache Entry: mip6_bc{} Structure 115
10.29 Binding Update List Entry: mip6_bu{} Structure 117
10.30 Home Agent Entry: mip6_ha{} Structure 119
10.31 Prefix Entry: mip6_prefix{} Structure 120
10.32 Home Virtual Interface: hif_softc{} Structure 121
Chapter 11. Macro and Type Definitions 126
Chapter 12. Utility Functions 130
12.1 Global Variables 130
12.2 Files 130
12.3 Creation of IPv6 Header 130
12.4 Checksum Computation 133
Chapter 13. Common Mobility Header Processing 136
13.1 Files 136
13.2 Mobility Header Input 136
13.3 Generating Binding Error Messages 142
13.4 Rate Limitation of Binding Error Messages 143
13.5 Creation of Binding Error Message 144
13.6 Mobility Header Message Delivery to Raw Sockets 146
Chapter 14.Home Agent and Correspondent Node 150
14.1 Files 150
14.2 Binding Update Message Input 151
14.3 Binding Cache Entry Management 159
14.4 Mobility Options Processing 169
14.5 Validation of Binding Update Message for Correspondent Node 170
14.6 Kbm and Authorization Data Computation 172
14.7 Managing Binding Cache Entry as Correspondent Node 176
14.8 Sending Binding Refresh Request Message 180
14.9 Home Registration Processing 183
14.10 The DAD Procedure 189
14.11 Proxy Neighbor Discovery Control 196
14.12 Home Deregistration Procedure 201
14.13 Sending a Binding Acknowledgment Message 203
14.14 Nonce and Nodekey Management 210
14.15 Receiving a Home Address Option 214
14.16 Sending Packets to Mobile Nodes via Tunnel 221
14.17 Recovery of Temporarily Disabled Proxy Entry 225
14.18 Receiving ICMPv6 Error Messages 227
14.19 Home Agent List Management 231
14.20 Prefix List Management 244
14.21 Sending a Mobile Prefix Advertisement Message 245
14.22 Constructing the Payload 247
Chapter 15. Mobile Node 250
15.1 Files 250
15.2 Binding Update List Entry Management 250
15.3 Movement Detection 260
15.4 Configuring Home Addresses 272
15.5 Sending a Binding Update Message 281
15.6 Receiving a Binding Acknowledgment Message 296
15.7 Receiving a Type 2 Routing Header 309
15.8 Receiving a Binding Refresh Request Message 313
15.9 Receiving a Binding Error Message 314
15.10 Source Address Selection 317
15.11 Home Agent List Management 322
15.12 Prefix Information Management 331
15.13 Receiving Prefix Information by Router Advertisement Messages 343
15.14 Sending a Mobile Prefix Solicitation Message 351
15.15 Receiving a Mobile Prefix Advertisement Message 354
15.16 Sending a Dynamic Home Agent Address Discovery Request Message 362
15.17 Receiving a Dynamic Home Agent Address Discovery Reply Message 366
15.18 Receiving ICMPv6 Error Messages 370
15.19 State Machine 373
15.20 Primary State Machine 375
15.21 Secondary State Machine 394
15.22 Virtual Home Interface 400
15.23 Return Routability and Route Optimization 413
15.24 Route-Optimized Communication 430
15.25 Tunnel Control 439
15.26 Receiving Packets from a Tunnel 443
15.27 I/O Control 444
Chapter 16. Mobile IPv6 Operation 448
16.1 Rebuilding a Kernel with Mobile IPv6 Extension 448
16.2 Rebuilding User Space Programs 449
16.3 IPsec Signal Protection 450
16.4 Configuring Node 453
16.5 Viewing Status Information 455
16.6 Viewing Statistics 456
Appendix: The Manual Page of mip6control 458
A.1 Name 458
A.2 Synopsis 458
A.3 Description 458
A.4 Examples 459
A.5 History 460
A.6 Bugs 460
References 462
Index 464
Introduction
When communication resources were precious, it was natural to design a special method for better utilization of these resources. Thus, for a long time, many information network infrastructure providers developed their own network designs and protocols. The recent wide deployment of Internet Protocol (IP) technology provides a simple communication framework for any kind of information infrastructure, and it is integrating all information infrastructures into one protocol—IP.
The evolution first occurred for the wired infrastructure because the wired networks had a faster communication property than the wireless networks. Whereas many wired network infrastructures changed their dedicated network designs and protocols to the generic IP-based system, the wireless infrastructures kept their own designs. The wireless infrastructure, which had a slower communication property, could not accept the overhead of the generic protocol, even though having a common protocol had many benefits, such as interoperability, simplicity, and cost performance.
Recently, however, advances in wireless communication technology have resulted in much wider broadband infrastructures for the wireless environment than in the past. The IEEE 802.11- based technology will soon provide 600 Mbps communication speed, IEEE 802.16 (WiMAX) technology provides more than 70 Mbps with an approximately 50-km communication range, and IEEE 802.16e (Mobile WiMAX) provides more than 20 Mbps communication speed for moving nodes. There is no doubt that future wireless technology will provide much faster communication properties. They are still narrower than those of wired communication devices; however, the overhead of using IP over them is no longer a major issue.
Although the history of mobility technology research and development is quite long, the technology is still not widely deployed. We now have many mobile devices, such as laptop computers, PDAs, and mobile phones, but none of them currently use IP mobility technology. One of the reasons is that the wireless communication technology has not provided the required bandwidth and quality as described previously. Another reason is that we have not had a mobile-ready environment to apply IP mobility technology.
The situation is now drastically changing. In the past, we could not utilize the full advantages of IP mobility technology, even though we had the mechanism to do so. The goal of an unwired mobile Internet world will be achieved with the combination of recent advanced communication technology and the long-researched and -developed IP mobility framework.
1.1 History of IP Mobility
IP mobility protocol is not a special feature for Internet Protocol version 6 (IPv6). The mobility support protocol for IPv4 (Mobile IP) [RFC3344] also has a long history. The initial proposal of the mobility support protocol for IPv4 was presented in 1993. At that time, there were no real “mobile” computers. There were some small computers called laptops, but they were still relatively large and they were very expensive compared to desktop computers. Mobile phones were in use, but they were large and had poor computing resources. Even with this level of technology, IP engineers were trying to provide mobility support for computer devices as if they were foreseeing the future. Mobile IPv4 was finally standardized as RFC2002 (the latest revision is RFC3344) in 1996. In the late 1990s, the Internet era began. Some pioneers started commercial services to provide Internet connectivity. Many companies and universities started providing their information and services over the Internet. Individual users soon followed, and the Internet became the largest information network in the world. Unfortunately for Mobile IPv4, the communication technology, especially the wireless communication technology, was still poor at that time. Although the protocol could support handover from one network to another, we could not use networks in this manner. Mobile IPv4 is now used in the backend system of some mobile telephone service networks. In that sense, it is deployed in the real service network, but we still do not see Mobile IP devices near us and the benefit we receive is limited.
The discussion of Mobile IPv6 [RFC3775] started in 1996. The initial action of the standardization process of IPv6 mobility was very quick. Considering that the first draft of the IPv6 protocol specification was submitted in 1995, the discussion of IPv6 mobility was started almost at the same time as that of IPv6. However, the standardization of Mobile IPv6 was a thorny path. The final specification of Mobile IPv6 was published as RFC3775 in 2004. By contrast, from the first draft to publication as request for comment (RFC), Mobile IPv4 required only 3 years. Recently, the period required to publish a specification as an RFC has become increasingly longer, but 9 years is a surprisingly long time. The draft specification was revised 24 times before it was published as an RFC.
The first turning point of the Mobile IPv6 standardization process was its 13th draft in 2000. The Mobile IP working group reached a consensus on the specification and the 13th draft was submitted to the Internet Engineering Steering Group (IESG) for final review and publication as an RFC. However, the IESG rejected the specification.
Mobile IPv6 was trying to solve one major problem of Mobile IPv4—the path optimization mechanism between a mobile node and its communicating node. Mobile IP is a kind of automatic tunnel establishment protocol. The moving node registers its current location to the proxy node called the home agent. All the packets are forwarded once to the home agent and then sent to the final destination. Apparently, if the mobile node and its communicating node reside nearby and the home agent is located far away, the communication path becomes long and redundant. The Mobile IPv4 base protocol does not mention the optimization mechanism for this case. The Mobile IPv6 specification includes the optimization mechanism from the first draft of the specification. In the mechanism, the mobile node sends its current location to its communicating node. The problem concerns how the communicating node verifies the message sent from the mobile node. If there is no authorization mechanism of the message, any node can send a bogus message to the communicating node. If a malicious node sends such a request using the identifier of the mobile node, then all the data sent from the communicating node to the mobile node are stolen by the malicious node. The Mobile IPv6 specification before the 14th draft was using the IPsec mechanism to protect the message. However, it is usually difficult to set up IPsec parameters between two random nodes. IESG pointed out the difficulty of the IPsec setup process and judged that the specification was not feasible.
After receiving the rejection message from IESG, the working group invented a new mechanism to protect the message. The 14th and 15th drafts proposed a shared secret-based authorization mechanism. It was simple and easy to understand; however, the problem of how the two nodes share the secret remained. In 2002, the 16th draft introduced a completely new mechanism called the return routability mechanism to authorize the message. By using the mechanism, a mobile node and its communicating node can generate secret information with several messages exchanged between them before sending the notification message from the mobile node to register its current location. The detailed procedure of the return routability mechanism is explained later.
Finalizing the specification required only 2 years after the 16th draft. The final draft was published in 2003, and it became RFC3775 in 2004.
1.2 Benefit of IP Mobility
Mobile IP provides a mobility function to IP devices. But what is mobility? When we say “mobility,” it implies that there are many different levels of mobility. For example, a cellular network can provide a mobility function to cellular phones. We can use our cellular phone almost everywhere with the same communication identifier—phone numbers. We can even establish an IP connection over the cellular network by using the dial-up connection function. Isn’t this mobility? Another example is the e-mail system. We send an e-mail using a fixed identifier, such as bob@example.com. Wherever Bob is, the message will be delivered to the mailbox associated with the mail address bob@example.com, and Bob can retrieve the message independent of his location. It is a kind of mobility.
Figure 1-1 shows various levels of mobility support. SIP (Session Initiation Protocol) [RFC3261] is a session-layer protocol that establishes an application session between two application entities. Because it is independent of the actual location of the terminal on which the application is running, it can be considered as a mobile protocol in the session layer. SCTP (Stream Control Transport Protocol) [RFC2960] is a new transport protocol aiming to replace TCP (Transmission Control Protocol). It is defined on top of the IP layer and supports the IP address migration function while keeping the transport connectivity. HIP (Host Identity Protocol) [RFC4423] is another IP-layer mobility protocol. Unlike Mobile IP-based protocols, HIP is a completely new protocol to pursue the ideal mobility support in the IP layer. The design is cleaner than Mobile IP-based protocols; however, it does not have compatibility with the existing IPv4/IPv6 stacks, whereas Mobile IP-based protocols do. As demonstrated in Figure 1-1, the more we focus on the lower-layer technology, the more device and...
Erscheint lt. Verlag | 13.7.2009 |
---|---|
Sprache | englisch |
Themenwelt | Sachbuch/Ratgeber |
Informatik ► Netzwerke ► TCP / IP und IPv6 | |
Mathematik / Informatik ► Informatik ► Web / Internet | |
ISBN-10 | 0-12-378568-5 / 0123785685 |
ISBN-13 | 978-0-12-378568-8 / 9780123785688 |
Haben Sie eine Frage zum Produkt? |
![PDF](/img/icon_pdf_big.jpg)
Größe: 2,6 MB
Kopierschutz: Adobe-DRM
Adobe-DRM ist ein Kopierschutz, der das eBook vor Mißbrauch schützen soll. Dabei wird das eBook bereits beim Download auf Ihre persönliche Adobe-ID autorisiert. Lesen können Sie das eBook dann nur auf den Geräten, welche ebenfalls auf Ihre Adobe-ID registriert sind.
Details zum Adobe-DRM
Dateiformat: PDF (Portable Document Format)
Mit einem festen Seitenlayout eignet sich die PDF besonders für Fachbücher mit Spalten, Tabellen und Abbildungen. Eine PDF kann auf fast allen Geräten angezeigt werden, ist aber für kleine Displays (Smartphone, eReader) nur eingeschränkt geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen eine
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen eine
Geräteliste und zusätzliche Hinweise
Zusätzliches Feature: Online Lesen
Dieses eBook können Sie zusätzlich zum Download auch online im Webbrowser lesen.
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
![EPUB](/img/icon_epub_big.jpg)
Kopierschutz: Adobe-DRM
Adobe-DRM ist ein Kopierschutz, der das eBook vor Mißbrauch schützen soll. Dabei wird das eBook bereits beim Download auf Ihre persönliche Adobe-ID autorisiert. Lesen können Sie das eBook dann nur auf den Geräten, welche ebenfalls auf Ihre Adobe-ID registriert sind.
Details zum Adobe-DRM
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen eine
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen eine
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.