Abstract:
The current application concerns a method, mobile node, home agent and system for route optimisation between a mobile node and at least one correspondent node in a packet switched network, wherein a route via a first home agent is redirected via a second home agent. The mobile node sends an extended home test initiation message comprising following information: authentication data, an address of the correspondent node, a first home address and a second home address. The first home agent receives the extended home test initiation message and sends an extended home test message to the second home agent, the extended home test message comprising the information from the extended home test initiation message. The second home agent receives the extended home test message and a communication is routed between the mobile node and the at least one correspondent node via the second home agent.

Description:
FIELD OF THE INVENTION 
       [0001]    The invention relates to optimized routing in mobile packet-based communication networks. 
         [0002]    This invention describes a method, mobile node, home agent, system and computer readable medium that enables a Mobile IPv6 (Internet Protocol version 6) mobile node to reduce signalling messages during route optimisation to a correspondent node and at the same time maintains security. 
       TECHNICAL BACKGROUND 
       [0003]    The invention is described for the example of the Internet Protocol version 6 (IPv6). It is, however, also applicable to other protocols defining equivalent entities corresponding to the described entities of IPv6. 
         [0004]    The same basic components exist in MIPv6 as in MIPv4, except there are, no foreign agents in MIPv6. While a mobile node is at home, packets addressed to its home address are routed to the mobile node&#39;s home link, using conventional Internet routing mechanisms. When a mobile node (MN) moves to a foreign link, the MN will receive a care-of-address (CoA) using stateless or stateful autoconfiguration. The MN will then send a binding update to the Home Agent (HA) with the MN&#39;s new CoA for use while roaming. 
         [0005]    There are two ways to handle packet forwarding between correspondent nodes (CNs) and MNs, route optimization mode and bidirectional tunneling mode. In route optimization mode type  2  routing header are used, MIPv6 functionality on the CN is required, initial packets are routed from the CN to the MN via the HA, the MN replies to the CN directly, and the CN does a binding cache update for MN&#39;s new CoA, and subsequent packets between CN and MN are routed directly with no interaction needed on the HA. 
         [0006]    Mobile Nodes (MN) using Mobile IP are still reachable when they are away from their home link. The Home Agent (HA) forwards packets for the MN towards the location where the MN resides. Also packets from the MN towards corresponding nodes flow through the HA. Thus, the HA forwards traffic back and forth between corresponding nodes and mobile nodes that are away from home. Clearly, this approach is not optimal since the packets travel a longer route than strictly necessary. For this purpose, a technique called Route Optimization can be used. 
         [0007]    Part of the Route Optimization process is the Return Routability (RR) protocol. This enables a Correspondent Node (CN) to obtain some reasonable assurance that a mobile node is in fact addressable at its claimed Care-of Address (CoA) as well as at its Home Address (HoA). Only with this assurance is the correspondent node able to accept Binding Updates from the mobile node, which would then instruct the correspondent node to direct that mobile node&#39;s data traffic to its claimed care-of address. The binding update messages are protected using a session key generated during the process. 
         [0008]    The Return Routability protocol can be used in a scenario where the MN is registered at two home agents. It is then possible, using the standard RR protocol, to redirect the flow between the MN and CN from one HA to another HA (see  FIG. 1 ). This can serve different purposes like route optimization with location privacy support, or to overcome IP version incompatibilities. It is exactly in this scenario where the route optimization process can be optimized. 
         [0009]    In the following, two related solutions in the prior art will be discussed, the first is the standard mobile IP method to redirect the traffic from one HA to another HA, and the second is Proxy MIP where the MN is not actively involved in any mobile IP related messaging. 
         [0010]    The standard route optimization process in defined in RFC 3775. As stated before, this standard can be used to redirect traffic from one HA to anther HA. The messages involved are shown in  FIG. 1  and are described in more detail below: 
       HoTI (Home Test Init) Message: 
       [0011]    When a mobile node wants to perform route optimization it sends a HoTI message to the correspondent node in order to initiate the return routability verification for the Home Address. This message tells the mobile node&#39;s home address to the correspondent node. The mobile node also sends along cookie C 0  that the correspondent node must return later, along with a nonce index (an index of numbers used once) and a token that it generates based on the home address. The HoTI message is reverse tunnelled through the Home Agent. 
       HoT (Home Test) Message: 
       [0012]    When the correspondent node receives the HoTI message, it generates a token K 0  and send it to the mobile node via the Home Agent; it is an assumption of the protocol that the home agent-mobile node HoT/HoTi signalling is encrypted. K 0  acts as a challenge to test that the mobile can receive messages sent to its home address. A security key (Kcn) and a nonce is used in the production of K 0  in order to allow the correspondent node to verify that the tokens used later really came from itself, without forcing the correspondent node to remember a list of all tokens it has handed out. Cookie C 0  from the mobile node is returned as well in the HoT message, to ensure that the message comes from someone on the path towards the correspondent node. 
       CoTI (Care-of Test Init) Message: 
       [0013]    When a mobile node wants to perform route optimization it sends a CoTI message to the correspondent node in order to initiate the return routability verification for the care-of address. This message can be sent in parallel with HoTI. A CoTI tells the correspondent node the mobile node&#39;s care-of address. The mobile node also sends along cookie C 1  that the correspondent node must return later, along with the token that it generates based on the care-of address. The CoTI message is sent directly to the CN. 
       CoT (Care-of Test) Message: 
       [0014]    This message is sent in response to a CoTI message. When the correspondent node receives the CoTI message, it generates a token K 1  and sends it to the mobile node. Cookie C 1  from the mobile node is returned as well, to ensure that the message comes from someone on the path towards the correspondent node. 
       BU (Binding Update) Message: 
       [0015]    When the MN has received both the HoT and CoT it has the tokens and nonce indices necessary to authenticate the Binding Update. The mobile node hashes together the challenges to form a session key (Kbu), and then uses this session key to authenticate a binding update. 
         [0016]    Once the correspondent node has verified the BU, it can create a binding cache entry for the mobile. 
       BA (Binding Acknowledgement) Message: 
       [0017]    The correspondent node optionally acknowledges the Binding Update. It uses the same key (Kbu) to authenticate a binding acknowledgement. 
       BR (Binding Request) Message: 
       [0018]    The correspondent node can optionally request a binding to be refreshed using the Binding Request message. This message can be authenticated using C 2  from the Binding Update, and the Kbu that was created earlier. It should be noted that one of the design goals of RO was to have the same level of security as in normal IP. This means that only nodes on the path between correspondent node and home network can disrupt traffic. 
         [0019]    The second prior art is Proxy Mobile IP, which allows any mobile node to connect to the network and be mobile without Mobile IPv6 in the mobile node and without losing its layer  3  connectivity or having to perform additional signalling to maintain layer  3  connectivity during handoffs. In Proxy Mobile IP all mobility functions are located in the network. Currently, no route optimization is used/specified in Proxy Mobile IP and the MN has no control over this. 
         [0020]    The problem when using the standard route optimization procedure for redirecting traffic from one HA to another is the number of messages needed to and from the MN. Since these messages are transmitted over the scarce air interface bandwidth, and these messages must be repeated every 7 minutes for each CN, it places a significant burden on the air interface. 
         [0021]    Furthermore, since many MNs are battery powered, each message sent by the MN that can be avoided is a clear benefit. Longer idle periods at the MN also allow longer dormant modes at the MN, thus saving energy. 
         [0022]    However, each message in the RO process has its own goal, as described above, and these are all related to security. 
       SUMMARY OF THE INVENTION 
       [0023]    The object of the invention is to provide increased efficiency of communications of a mobile node while maintaining the same level of security as in standard Route Optimisation. 
         [0024]    The object is solved by the subject matter of the independent claims. Advantageous embodiments of the invention are subject matters to the dependent claims. 
         [0025]    To achieve this object, the present invention provides a method, mobile node, home agent, system and computer readable medium method for route optimisation between a mobile node and at least one correspondent node in a packet switched network, wherein a route via a first home agent is redirected via a second home agent. The method comprises the steps of: sending by the mobile node an extended home test initiation message comprising following information: authentication data, an address of the correspondent node, a first home address and a second home address and receiving the extended home test initiation message by the first home agent. The first home agent sends an extended home test message to the second home agent, the extended home test message comprising the information from the extended home test initiation message and the extended home test message is received by the second home agent. A communication is routed between the mobile node and the at least one correspondent node via the second home agent. 
         [0026]    According to an advantageous embodiment the method further comprises the following steps before the step of sending an extended home test message to the second home agent: storing the information from the extended home test initiation message by the first home agent; sending a home test initiation message to the at least one correspondent node by the first home agent using a first home address of the mobile node; and intercepting by the first home agent a home test message sent by the at least one correspondent node and verifying its correctness. 
         [0027]    Another embodiment of the invention relates to the extended home test message further comprising information from the home test message. 
         [0028]    In another embodiment of the invention before a communication is routed between the mobile node and the at least one correspondent node via the second home agent, a care-of test initiation message to the at least one correspondent node is sent by the second home agent; a care-of test message addressed to the second home address, which was sent by the at least one correspondent node, is intercepted by the second home agent; and a valid binding update message is sent to the at least one correspondent node. 
         [0029]    An advantageous aspect of the invention is that the extended home test initiation message comprises values for options used in a binding update message. 
         [0030]    According to another embodiment of the invention messages between the mobile node, the first home agent, the second home agent and the correspondent node are encrypted. 
         [0031]    A further embodiment of this invention further comprises the step of digitally signing data in the extended home test initiation message using a security key from a security association between the mobile node and the second home agent. 
         [0032]    In another advantageous embodiment of this invention the step of digitally signing comprises using a sequence number or a time stamp. 
         [0033]    Another embodiment of the invention further comprises the steps of receiving by the first home agent or the second home agent a returned cookie sent by the at least one correspondent node; and checking by the first home agent or by the second home agent whether the returned cookie is the cookie that was generated by the first home agent or the second home agent, respectively. 
         [0034]    In another aspect of the invention the step of sending the home test initiation message is performed simultaneously with sending by the first home agent an extended care-of test initiation message to the second home agent. 
         [0035]    In a variation of this embodiment of the invention the steps of intercepting by the first home agent the home test message and sending by the second home agent the care-of test initiation message are performed simultaneously and the step of sending an extended home test message and intercepting by the second home agent a care-of test message are performed simultaneously. 
         [0036]    In a further advantageous embodiment of the invention the step of storing the information from the extended home test initiation message by the first home agent comprises storing the information in a table, wherein each entry of the table comprises fields needed for each of the at least one correspondent nodes. 
         [0037]    In another embodiment of the invention the fields of the table comprise an address of a correspondent node, the second home address, binding update options and authentication information. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0038]    The accompanying drawings are incorporated into and form a part of the specification for the purpose of explaining the principles of the invention. The drawings are not to be construed as limiting the invention to only the illustrated and described examples of how the invention can be made and used. Further features and advantages will become apparent from the following and more particular description of the invention as illustrated in the accompanying drawings, wherein 
           [0039]      FIG. 1  depicts standard Mobile IP Route Optimization; 
           [0040]      FIG. 2  shows how user traffic flows before and after the Route Optimization; 
           [0041]      FIG. 3  shows the standard Route Optimization procedure when two home agents are involved; 
           [0042]      FIG. 4  shows the messages involved in the invention&#39;s RO procedure; 
           [0043]      FIG. 5  shows an embodiment of the invention, in which the messages are sent in parallel; 
           [0044]      FIG. 6  is a flow diagram showing a time comparison of the serial and parallel method; 
           [0045]      FIG. 7  shows an embodiment of the invention in which multiple RO procedures to different CNs are initiated by a single message from the MN; and 
           [0046]      FIG. 8  shows a variation of an embodiment, using multiple bindings per MN at the HA. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0047]    The illustrative embodiments of the present invention will be described with reference to the figure drawings wherein like elements and structures are indicated by like reference numbers. The following paragraphs will describe various embodiments of the invention. For exemplary purposes only, most of the embodiments are outlined in relation to a MIPv6 communication system and the terminology used in the subsequent sections mainly relates to the MIPv6 terminology. However, the terminology used and the description of the embodiments with respect to an MIPv6 architecture is not intended to limit the principles and ideas of the inventions to such systems. 
         [0048]    Also the detailed explanations given in the Technical Background section above are merely intended to better understand the mostly MIPv6 specific exemplary embodiments described in the following and should not be understood as limiting the invention to the described specific implementations of processes and functions in the packet switched communication network. 
         [0049]    The present invention provides a method to significantly reduce the signalling messages to and from the mobile node during mobile IP route optimization. This method can be used for mobile nodes that are registered at multiple home agents. To maintain the same level of security and robustness as in standard mobile IP, certain security mechanisms like authentication need to be added or changed. 
         [0050]    The main idea is to let two HAs together perform the RO procedure on behalf of the MN, where the MN only triggers the process with one message. Additionally, the existing two security associations between MN and both HAs are used to provide the required level of security. A security relation between both HAs is not necessary. 
         [0051]      FIG. 3  shows a legacy system where the MN  120  initiates route optimization with a CN  124  via a second HA  202 . Multiple reasons could exist for having the second HA  202 : it could for instance be used to provide location privacy, or to overcome IP version incompatibilities. 
         [0052]    The goal of the RO procedure as shown in  FIG. 3  is to change the user data path between MN  120  and CN  124  from HA 1   122  to HA 2   202 . Note that “normal” RO is used to allow MN  120  and CN  124  to communicate directly with each other (without any HA intervention). 
         [0053]    The RO procedure as illustrated in  FIG. 3  can be done with standard mobile IPv6. The MN however uses its HoA 2  as its care of address in the procedure. Note that in the prior art case (as described above), the MN uses its address in the foreign network as its Care-of Address. 
         [0054]    Because the messages between the two HAs make use of existing security associations between the MN  120  and both HAs, it is not necessary to have a security relation between the two HAs. 
         [0055]    Although the messages in the figure are numbered, it should be noted that the messages  301  to  304  and  305  to  308  could be sent and processed in parallel. The Binding Update can be sent when the MN  120  has received the HoT and CoT messages. Optionally, a flag in the BU messages can be set to request a Binding Acknowledgement (not shown), which follows the same path as the BU, but in the opposite direction. 
         [0056]    The reason for these messages is to let the CN  124  obtain some reasonable assurance that a mobile node is in fact addressable at its claimed Care-of Address (CoA) as well as at its Home Address (HoA). 
         [0057]      FIG. 4  shows the messages involved in this embodiment of the invention. The EHoTI message is a new message that functions as a trigger for the HA 1   122  to start the RO process with the CN  124 . The contents of this message include all information and security related data to securely perform the RO process on behalf of the MN  120 . This message and all others are explained in detail below. 
       EHoTI (Extended Home Test Init) 
       [0058]    This is the trigger from the MN  120  to the HA  122  that currently forwards the packets to and from the CN  124 . Note that this message should be encrypted. The contents of this message includes: 
         [0000]    The CN node IP address,
 
The HoA of the MN as registered at HA 2  (i.e. the target HA)
 
The HoA of the MN as registered at HA 1 
 
         [0059]    This can be explicitly written in a field in the EHoTi packet or taken from the source address of the packet. 
         [0060]    Since the network is performing the final Binding Update message on behalf of the MN, various options normally set by the MN, must already be included in this EHoTI message. See RFC 3775 for all options used in a BU. One example is the optional request for a Binding Acknowledgement to be returned upon receipt of the BU. 
       Authentication Information: 
       [0061]    The purpose of this is that HA 2  should later be able to check the authenticity and the integrity of the request (the items 1, 2 and 4 in this list are later forwarded by HA 1  to HA 2 ). This is needed to encounter denial of service (DoS) attacks and provides security against false binding updates from malicious nodes. 
         [0062]    One way to achieve the authenticity is to digitally sign the data in the EHoTI message using the security key from the security association between MN and HA 2 . To encounter a replay attack, a sequence number or timestamp should be included in the digital signature of the data, so that HA 2  can detect a replay attack. For example, after receiving an EHoTI from an MN with sequence number X, HA 2  should only accept higher sequence numbers. X can initially be zero, and additional care should be taken when X wraps around because of the finite range of X. 
         [0063]    So the whole EHoTI message is secured by using the security association between MN and HA 1 , and the part that will be later forwarded by HA 1  to HA 2  is additionally secured using the message security association between MN and HA 2 . 
         [0064]    Upon reception of the EHoTI packet at the HA  122 , the HA  122  stores the information in the packet for later use, and creates a MIP standard conform HoTI message and sends this message to the CN  124 . This means that the HA  122  creates the cookie C 0  (on behalf of the MN  120 ), which is also stored and used in the HoTI packet. 
       HoTI (Home Test Init) 
       [0065]    The HoTI message is generated by HA 1   122  and uses the HoA 1  of the MN  120  as the source address. Upon reception at the CN  124 , the CN cannot see the difference between this message and a HoTI that was truly originated at a MN  120 . 
         [0066]    The CN  124  normally processes the HoTI and generates a standard HoT message with destination HoA 1  of the MN  120 . 
       HoT (Home Test) and EHoT (Extended Home Test) 
       [0067]    The HA  122  must intercept the HoT messages destined for the MNs under its administration. Based on the stored information the HA  122  verifies the correctness of the HoT (as a normal MN would do) and if correct it generates a new message type the EHoT. This message contains information from the corresponding original EHoTI from the MN  120  and the HoT message from the CN  124 , as shown below:
       Home Keygen Token   Taken from the HoT message and copied in the EHoT   Index to the home nonce   Taken from the HoT message, to allow easier finding of the appropriate nonce by the CN.   MN&#39;s home address as registered at HA 1     MN&#39;s home address as registered at HA 2     Taken from the EHoTI   Authentication data       
 
         [0076]    As contained within the EHoTI message, that was generated by the MN and destined for HA 2 . See the EHoTI description. 
         [0077]    This EHoT message is sent to HoA 2 , i.e., the home address of the MN  120 . 
         [0078]    HA 2   202  must intercept the EHoT message, which is addressed to the MN&#39;s HoA 2 . Once this message is intercepted, the home agent  202  must verify the authenticity, using the already existing security association between MN  120  and HA 2   202 . 
         [0079]    If this check is successful, HA 2   202  now initiates the CoTI-CoT procedure on behalf of the MN  120 , similar to the HoTI-HoT procedure performed at HA 1   122 . 
         [0080]    The CoTI is created by HA 2   202 ; it therefore generates a cookie that the CN  124  returns later in the CoT message. The CN  124  also generates a token that is based on the care-of address. The destination address of the CoT message is HoA 2   202 . Again, this message must be intercepted by HA 2   202 . 
         [0081]    Based on the information contained in the EHoT message and in the CoT reply from the CN  124 , HA 2   202  has now all the data to construct a valid binding update to send to the CN  124 . 
         [0082]    If the MN  120  indicated (by setting a flag in the EHoTI, and later copied into the BU) that it wants a Binding Acknowledgement (BA) from the CN  124 , then this BA message will be handled as a normal data packet for the MN  122 : the BA is sent to HoA 2 , intercepted by the HA 2   202  and forwarded to the MN  120 . Note that HAs only intercept packets for a MN if that MN is not on its home link (i.e. away from home). The exception are the EHoTI and EHoT, HoT and CoT messages, these must always be intercepted in the current invention. 
         [0083]    Since the HAs must intercept the HoT and CoT messages, they must have a way to distinguish between standard RO and RO as used in this invention. This can be accomplished by checking if the returned cookie is a cookie that was generated by the HA itself. 
         [0084]    As security is an important issue in Mobile IPv6, it is pointed out that the following security aspects are addressed by the invention as described above:
       Authentication of Binding Updates: Only bindings from the correct MN should be accepted. Note that mobile identification is not a goal, as this is not a goal in standard Mobile IP RR, either;   Resist Denial of Service (DoS) attacks; and   Only nodes between correspondent node and home network can disrupt traffic.       
 
         [0088]    In a further embodiment of the invention parallelization of some of the messaging described above is described. As explained above, the care-of address test is performed after the home address test. Parallelization of these tests is possible, as it is in standard MIP. This embodiment needs one additional signalling message in the network (ECoTI, see  FIG. 5 ) to accomplish this. The extra message (ECoTI) contains a part of the information from the original EHoT message, and upon reception at HA 2   202 , this ECoTI message functions as a trigger to initiate the care-of address test. 
         [0089]    In summary, the two embodiments described above are functionally equal, only the information in the original EHoT message is distributed over two messages in the second embodiment. There are multiple options to accomplish this, depending which of the two messages forwards the information from the MN  120  to HA 2   202 . What is important is the authenticity and integrity of both messages, and to prevent replay attacks. This can be accomplished in the same way as in the base solution. 
         [0090]      FIG. 6  illustrates the difference between the parallel and serial method. Clearly, the parallel method saves time at the cost of one more signalling message between HA 1   122  and HA 2   202 . 
         [0091]    In the following embodiment the case of multiple correspondent nodes is described. 
         [0092]    The Binding Update needs to be performed for all CNs independently and needs to be repeated every 7 minutes (this is the default value as defined in Mobile IP). Because of this, it is beneficial to combine multiple route optimization processes. This is what is shown in  FIG. 7 , where the MN  120  triggers the RO process for two CNs with only one message. Note that in the figure, these CNs perform route optimization via different HAs (HA 2  and HA 3 ), but it may be the case that multiple CNs share the same HA. This does not have any impact on the method used in this embodiment. 
         [0093]    Basically, all CN-specific fields in the EHoTI packet are now conceptually stored as a list, where each entry contains the fields needed for one CN. These fields are:
       1. The CN IP address   2. The HoA of the MN as registered at HA 2     3. Binding Update Options   4. Authentication Information (as in normal EHoTI)       
 
         [0098]    A variation of the invention is to use mechanisms currently under consideration at the IETF Monami working group. The work in this group deals with the possibility to register multiple care-of addresses at the same HA. With filter rules at the HA, different traffic flows could be forwarded to different care-of addresses of the same MN. Such a mechanism could be used to optimize the route optimization process in a similar way as in a previous of this invention. The advantage of this approach is that probably no changes to HA 1  would be necessary. 
         [0099]      FIG. 8  illustrates the idea; assumed is that the MN already registered at both HAs. The first step is that the MN registers its HoA 2  as an additional CoA at HA 1 . In addition, a filter rule should be activated that forwards the HoT message from the CN to the HoA 2  address. Without this rule, the HoT  806  message would be forwarded to the MN, which is not wanted. 
         [0100]    After installing the filter rule, the MN sends an EHoTI message to HA 2 . Although this message is not identical to the one used in the main invention, the principle remains the same. It functions as a trigger to HA 2  to start the return routability test. In this case HA 2 , and only HA 2 , acts on behalf of the MN. All further messages can be standard-conform return routability messages. Note that this became possible because of the filter rule at HA 1 . 
         [0101]    Another embodiment of the invention relates to the implementation of the above described various embodiments using hardware and software. It is recognized that the various methods mentioned above may be implemented or performed using computing devices (processors), as for example general purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, etc. The various embodiments of the invention may also be performed or embodied by a combination of these devices. 
         [0102]    Further, the various embodiments of the invention may also be implemented by means of software modules which are executed by a processor or directly in hardware. Also a combination of software modules and a hardware implementation may be possible. The software modules may be stored on any kind of computer readable storage media, for example RAM, EPROM, EEPROM, flash memory, registers, hard disks, CD-ROM, DVD, etc.