The present invention relates generally to communications networks and in particular to methods, devices, systems and software for registering multiple care-of-addresses in such communication networks.
As the consumer electronics industry continues to mature, and the capabilities of processors increase, more devices have become available for public use that allow the transfer of data between devices and more applications have become available that operate based on their transferred data. Of particular note are the Internet and local area networks (LANs). These two innovations allow multiple users and multiple devices to communicate and exchange data between different devices and device types. With the advent of these devices and capabilities, users (both business and residential) increasingly desire to transmit data from mobile locations.
The first widespread deployment of a protocol to deal with these issues, was Internet Protocol version 4 (IPv4) in the early 1980's. IPv4 is a network layer protocol used to provide unique addressing to ensure that two computers communicating over the Internet can uniquely identify each other. IPv4 has a 32-bit addressing scheme which allows for 232 (approximately 4.2 billion) potentially unique addresses. This limit of 232 addresses is becoming a bottleneck as the need for more unique addresses will arrive in the foreseeable future. Additionally, IPv4 was not specifically designed to be efficient for mobile users. In fact, when IPv4 was implemented there were not a lot of mobile consumer devices that could communicate across the Internet as there are today. In this context, mobile IP equipment can be considered to be any a piece of equipment that is moveable, e.g., a laptop computer, cell phone or a Personal Digital Assistant (PDA), and that crosses boundaries between different networks while desiring to maintain connectivity or be allowed to connect to a foreign network. Accordingly, as this need and the need for more IP addresses developed, Internet Protocol version 6 (IPv6) was created and is now being implemented.
IPv6 uses a 128-bit addressing scheme which allows for 2128 unique addresses, i.e., significantly more addresses than are provided for in IPv4. The addressing scheme in IPv6 is composed of two parts: a 64-bit host part and a 64-bit sub network prefix (subnet prefix). IPv6 is also more mobile friendly than IPv4, particularly with the addition of Mobile IPv6 (MIPv6). MIPv6 is a protocol that allows providing continuous IP service to a mobile node (MN). The mobility service is provided by a Home Agent (HA) and the MN has a Home Address (HoA) hosted on the HA. When the MN moves and attaches itself to a different access router, it acquires a new address, the Care-Of Address (CoA). The MN then sends a Binding Update (BU) to the HA in order to bind the CoA to the HoA. The HA replies with a Binding Acknowledgement (BA) and forwards each packet with HoA as the destination address to the CoA using a bidirectional tunnel. The mobile node is thus able to move without ending ongoing sessions since the HoA is unchanged.
Additionally, MIPv6 defines a route optimization process where the MN can directly send a BU to a corresponding node (CN) in order to use a direct path. Before sending the direct BU, the MN has to perform a Return Routability (RR) test in order to give to the CN a certain level of guarantee that it can be joined at the HoA and the new CoA. To perform RR, an MN 100 sends a Home Test Init (HoTI) message to the CN 104 through the HA 102 as shown in
However, conventional return routability procedures suffer from certain problems. For example, the current RR procedure for multiple CoAs associated with a single MN will result in a large amount of signaling overhead.
According to one exemplary embodiment, a method for bulk care-of-address (CoA) registration includes the steps of receiving the bulk CoA registration message, analyzing the bulk CoA registration message to extract a plurality of care-of-addresses associated with a mobile node (MN), generating a token for each of the care-of-addresses, and sending a care-of-token (CoT) message, including the corresponding token, toward the MN for each of the care-of-addresses.
According to another exemplary embodiment, a network node for receiving a bulk care-of-address (CoA) registration from a mobile node includes a processor in communications with a memory unit, wherein the processor is configured to receive the bulk CoA registration message, analyze the bulk CoA registration message to extract a plurality of care-of-addresses associated with the mobile node, generate a token for each of the care-of-addresses, and transmit a care-of-token (CoT) message, including the corresponding token, toward the MN for each of the care-of-addresses.
According to another exemplary embodiment, a method for bulk care-of-address (CoA) registration includes the steps of generating a bulk care-of-address registration message including a plurality of care-of-addresses, transmitting the bulk care-of-address registration message, receiving a token associated with at least some of the plurality of CoAs, generating a bulk binding update message including the plurality of tokens, and transmitting the bulk binding update message.
According to still another exemplary embodiment, a mobile node includes a processor in communications with a memory unit, wherein the processor is configured to generate a bulk care-of-address registration message including a plurality of care-of-addresses, transmit the bulk care-of-address registration message, receive a token associated with at least some of the plurality of CoAs, generate a bulk binding update message including the plurality of tokens, and transmit the bulk binding update message.
The accompanying drawings illustrate exemplary embodiments, wherein:
a) depicts a mobile node (MN) communicating with a correspondent node (CN) through a home agent;
b) depicts a mobile node (MN) communicating with a correspondent node (CN) through an access router (AR);
a) shows the contents of an exemplary bulk care-of-address registration message according to an exemplary embodiment;
b) shows the contents of a Binding Identifier mobility option according to an exemplary embodiment;
a) is a flowchart depicting a method for bulk CoA registration according to an exemplary embodiment;
b) is a flowchart depicting another portion of a method for bulk CoA registration according to an exemplary embodiment;
The following detailed description of the exemplary embodiments refers to the accompanying drawings. The same reference numbers in different drawings identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims.
MIPv6 allows an MN to have several CoAs but to register only the primary CoA to the HA. To solve this issue, an IETF specification identifiable as draft-ietf-monami6-multiplecoa-07, “Multiple Care-of Addresses Registration”, April 2008 and referred to herein simply as the “multiple CoA” (MCoA) specification, the disclosure of which is incorporated here by reference, has been proposed to allow multiple CoAs to be bound to a single HoA. Using a flow binding message exchange, an MN is able to bind flows to its CoA. This is very useful, e.g., to add redundancy or load balancing. The MCoA specification also introduces bulk registration capabilities for the HA, which means that an MN can register several CoAs at the HA with a single BU/BA message exchange. This reduces the amount of signaling and the BU/BA delay which are associated with registering multiple CoAs.
However, the MCoA specification does not support bulk registration to the CN. Thus, the MN has to perform one RR test for each CoA. This implies more signaling, as a single RR test requires six messages. Accordingly, it would be desirable to provide systems, methods, devices and software to provide a method to perform bulk registration to the CN. This can be accomplished according to exemplary embodiments of the present invention by, for example, performing a single Home Test and combined CareOf Test exchange. The reachability of the MN at each CoA can also be checked according to these exemplary embodiments.
In order to provide some context for this discussion, a brief discussion of exemplary components used by a mobile network for communications will now be described according to
An exemplary signaling diagram associated with bulk CoA registration according to these exemplary embodiments is provided as
A B-CoTI message 306 according to an exemplary embodiment is illustrated in
More specifically, the BID mobility option 404 can be modified to accommodate bulk registration functionality according to these exemplary embodiments, an example of such a modified BID mobility option will now be described with respect to
According to this exemplary embodiment, the flag section of the BID mobility option 404 is extended to include a new T flag or bit field 428. The T flag 428 indicates to the message recipient whether the CoA field 420 currently carries a Care-of-Address, e.g., if the T flag 428 is unset, or if it instead carries a Care-of-Address token (sometimes also referred to as a CareOfKeygen Token), e.g., if the T flag 428 is set. According to this exemplary embodiment, the T flags 428 will be unset in the B-CoTI message 306, since each of the BID mobility options 404 are intended to carry a CoA. The T flags 428 will be set in BU messages, since each of the BID mobility options 404 in BU messages are intended to carry a CareOf Token related to the CoA.
The Reserved field 430 is, e.g., a 5 bit field reserved for later use which is set to zero by the message transmitter and ignored by the message's recipient. The Care-of Address field 420 may, as described above, either carry a CoA or a CoA token depending upon the setting of the T flag 428. Having described, in detail, the contents of an exemplary B-CoTI message 306 according to an exemplary embodiment, the discussion now returns to the signaling diagram of
Therein, having received the HoTI message 304, the CN 212 replies with a HoT message 308 addressed to the HoA, which message 308 includes the home token. The home agent 206 intercepts the HoT message 308 and forwards it (shown as message 310 in
Next, the MN 202 generates the binding management key (Kbm) using the home and primary CareOf Tokens that it received from the CN 212 as indicated by block 318 in FIG. 3. The MN 202 sends a BU message 320 using the Kbm 318 and the pCoA as source address. The entire BU message 320 is protected using a hashing function and the Kbm 318. The BU message 320 also includes the BID mobility options 404 and the corresponding token for each additional CoA. The pCoA will typically not be included in any of the BID mobility options 404 in the BU message 320 as it is already present in the source address. Alternatively, however, the pCoA may be included in a BID mobility option 404 so that all CoAs are treated in the same manner. The CN 212 accepts the binding, according to this exemplary embodiment, only if all of the CoAs that were in the B-CoTI message 306 are represented in the BU message 320. If so, then the CN 212 sends a binding acknowledgement (BA) message 322 including the BID mobility options 404 for all the accepted CoAs. According to another exemplary embodiment, each CoA can be accepted individually by the CN 212, i.e., without having to reject or accept the entire BU message 320. This enables an MN 202 to register a subset of its CoAs.
Accordingly, it can be seen from the foregoing exemplary embodiment that the present invention provides for a bulk RR procedure where a single message is sent from the MN 202 to the CN 212 with all of that MN 202's CoAs. The CN 212 then generates one token per CoA and performs a reachability test for each CoA. From the CN 212's perspective, a method for bulk care-of-address registration can include the steps illustrated in the flowchart of
From, for example, an MN 202's perspective, a method for bulk care of address registration can include the steps illustrated in
The exemplary embodiments described above provide for messages and protocols involving mobile nodes, access routers and other network nodes. An exemplary node 700 will now be described with respect to
Bulk registration according to these exemplary embodiments provides, among other things, for a reduction in signaling overhead associated with route optimization given a plurality of CoAs associated with a particular MN. For example, a single route optimization procedure typically requires eight messages (including BA and BU messages) of which six pass through the radio (air) interface. Thus, for a situation wherein n CoAs need to be registered, a total of 8n messages (6n through the air interface) would conventionally have been needed to perform the registration. However, using the techniques described in these exemplary embodiments, the signaling associated with this exemplary registration procedure can be reduced to 7+n messages (with only 5+n passing through the air interface).
The above-described exemplary embodiments are intended to be illustrative in all respects, rather than restrictive, of the present invention. Thus the present invention is capable of many variations in detailed implementation that can be derived from the description contained herein by a person skilled in the art. All such variations and modifications are considered to be within the scope and spirit of the present invention as defined by the following claims. No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items.