Internet DRAFT - draft-petander-mip6-mbb

draft-petander-mip6-mbb



Mip6 Working Group                                      Henrik Petander 
                                                          Eranga Perera 
Internet Draft                                   National ICT Australia 
Expires: April 2006                                    October 16, 2005 
                                    
 
                                      
   Improved Binding Management for Make Before Break Handoffs in Mobile 
                                   IPv6 
                      draft-petander-mip6-mbb-00.txt 


Status of this Memo 

   By submitting this Internet-Draft, each author represents that       
   any applicable patent or other IPR claims of which he or she is       
   aware have been or will be disclosed, and any of which he or she       
   becomes aware will be disclosed, in accordance with Section 6 of       
   BCP 79. 

   This document may only be posted in an Internet-Draft. 

   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that 
   other groups may also distribute working documents as Internet-
   Drafts. 

   Internet-Drafts are draft documents valid for a maximum of six months 
   and may be updated, replaced, or obsoleted by other documents at any 
   time.  It is inappropriate to use Internet-Drafts as reference 
   material or to cite them other than as "work in progress." 

   The list of current Internet-Drafts can be accessed at 
        http://www.ietf.org/ietf/1id-abstracts.txt 

   The list of Internet-Draft Shadow Directories can be accessed at 
        http://www.ietf.org/shadow.html 

   This Internet-Draft will expire on April 16, 2006. 

Copyright Notice 

   Copyright (C) The Internet Society (2005).  All Rights Reserved. 

Abstract 

   Mobile IPv6 binding management has been designed for break-before-
   make handoffs, which can be performed by hosts equipped with a single 
 
 
 
Petander                Expires April 16, 2006                 [Page 1] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

   interface. However, a Mobile Node may be equipped with multiple 
   interfaces, allowing it to perform Make-Before-Break handoffs by 
   connecting simultaneously to two overlapping access networks during 
   the handoff. In theory these handoffs can be lossless, provided that 
   there is sufficient overlap between the two networks. However, unless 
   Mobile IPv6 bindings are managed carefully Mobile Node and 
   Correspondent Node will have inconsistent binding state during the 
   handoff, which will lead to packet loss. In this draft we propose 
   changes to binding management for lossless make-before-break 
   handoffs. The proposed changes do not affect the interoperability 
   with Mobile IPv6 nodes not implementing these changes. 

Conventions used in this document 
 
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in RFC-2119 [1]. 

   We refer to Home Agent (HA) and Correspondent Node (CN) as 
   Correspondent Node for brevity, and distinguish between them only 
   when there is a difference in their or Mobile Node's behavior.  

1. Introduction 

   In a Break-Before-Make (BBM) handoff, Mobile Node (MN) loses 
   connectivity with its old access network before connecting to a new 
   one. In a Make-Before-Break (MBB) handoff MN is still connected to 
   its old Access Router while performing a handoff using a new one. MBB 
   handoffs can in theory be completely lossless, since MN can receive 
   data to its Care-of Address (CoA) on the old access network while 
   registering a new CoA with its HA and CNs via the new access network.  
   Normally, only MNs equipped with multiple interfaces can perform MBB 
   handoffs. For example, inter access technology handoffs can often be 
   performed as MBB handoffs. A MN may also be equipped with multiple 
   interfaces of the same type and can use them for lossless intra 
   access technology handoffs as proposed in [3]. 

   In this draft we propose an extension to Mobile IPv6 [2] signaling 
   and binding management to enhance performance of MBB handoffs. We 
   first describe the problem, and then look at possible solutions and 
   finally we propose changes to Mobile IPv6 binding update list and 
   binding cache management.  

2. Problem of Inconsistent Binding State between MN and CN 

   In MBB handoffs MN is able to receive and send data using its old CoA 
   for the duration of the handoff to the new CoA. Completion of the 
 
 
Petander                Expires April 16, 2006                 [Page 2] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

   handoff in Mobile IPv6 means either sending a Binding Update (BU) or 
   receiving a Binding Acknowledgement (BA). In order for MN to be able 
   to send and receive packets during the handoff, MN and CN need to 
   have a synchronous state of the binding between the home address and 
   the CoA of MN. The problem is that MN cannot know with certainty when 
   the binding cache entry of CN is updated to the new CoA, only that it 
   happens between sending of BU and receiving of BA.  

   If MN changes its binding when sending BU (instead of waiting for 
   BA), it will drop all packets CN sends using the old CoA, i.e. 
   packets CN has sent before it received BU: MN compares the CoA in its 
   binding update list with (new CoA) with the old CoA used as 
   destination address in IPv6 header, and drops the packets due to the 
   mismatch. This is not necessarily the case for route optimized MN - 
   CN communication due to the more relaxed checks, but will cause MN to 
   drop all packets tunneled by HA due to the more strict checks on the 
   tunnel header. MN can avoid this by changing its binding update list 
   entry for CN to use new CoA only when receiving BA. However, during 
   the time period between CN receiving BU and MN receiving BA, MN is 
   likely to send packets to CN using the old CoA. CN will drop these 
   packets due to the mismatch with the CoA in its binding cache and the 
   one in the packets.  

   As long as a MN and a CN use unmodified Mobile IPv6 signaling and 
   binding management, it is impossible for them to have a consistent 
   state for the home address to CoA binding. 

 
3. Options for ensuring consistency of incoming and outgoing states for 
   Binding Update List and Binding Cache 
    

   With unmodified Mobile IPv6 signaling there exist two possible 
   solutions for ensuring consistent state of bindings in CN and MN. 
   Both solutions require that either MN or CN accepts incoming packets 
   with the old CoA for a certain period after updating its binding(s) 
   to use the new CoA.  

   MN can update its binding update list entry for outgoing packets to 
   include the new CoA immediately after sending BU. This will ensure 
   that if packets arrive in the correct order at HA, i.e. after the BU, 
   they will match the binding state and be processed correctly. To 
   enable MN to receive incoming packets which CN sends to old CoA 
   before it receives BU, MN also needs to retain the binding update 
   list state for old CoA for receiving tunneled and route optimized 
   packets sent by CN. MN needs to retain the old state until it 

 
 
Petander                Expires April 16, 2006                 [Page 3] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

   receives BA or possibly for longer to handle packets arriving out of 
   order. 

   This approach has the potential drawback of outgoing packets sent by 
   MN being lost, if HA or CN does not receive or accept the BU 
   immediately. An example of non-immediate binding cache update in HA 
   is the case of MN moving from its home network to a foreign network 
   and HA performing proxy DAD before updating its binding cache. 
   However, MN knows when it is registering for the first time, so it 
   can avoid this problem. To avoid loss of packets due to BUs lost in 
   transit, MN can send two BUs through both the old and new interfaces.  

   A second option is to retain the old binding cache entry in CN with 
   old CoA of MN for a short period of time after receiving a BU from MN 
   including a new CoA and sending a BA. This allows MN to wait for a BA 
   from CN before it starts using the new CoA for outgoing 
   communications. In this case MN would send its packets via its old 
   access router using the old CoA for the duration of a RTT between MN 
   and HA (and any other delays, such as proxy DAD). To ensure 
   consistent state for the new CoA MN needs to request for a BA, so 
   that it knows for sure when CN has processed and accepted the BU. 

   The latter option is more reliable, but also results in a slower 
   handoff for outgoing packets. In some cases the handoff may take 
   longer than the simultaneous connectivity to the old and new network 
   and MN would be better of by using the new CoA at the new access 
   router as soon as possible. If CN accepts incoming packets with old 
   CoA, MN can choose between using its old and new CoA for outgoing 
   packets for the period of time between sending BU and receiving BA 
   depending on the situation. 

4. Changes to use and management of Binding Update List  

   MN MAY keep its state for the Binding Update Entry with its old CoA 
   after sending a Binding Update containing its new CoA to CN. MN 
   SHOULD keep this entry until it can be safely deleted. In the case of 
   BU to HA MN SHOULD remove its OLD_BUL_STATE_LIFETIME seconds after 
   receiving a positive BA from HA. In the case of BU to CN, MN SHOULD 
   remove it OLD_BUL_STATE_LIFETIME seconds after receiving a positive 
   BA from CN or if MN did not request a BA from CN 
   OLD_BUL_STATE_LIFETIME after sending the BU. 

   MN SHOULD accept packets from CN using the old CoA during the 
   lifetime of the entry. MN MAY also send packets to CN using the old 
   CoA until it gets a BA from CN indicating success of BU. MN SHOULD 
   set the acknowledgment flag in BU, if MN uses the old CoA to send 
   packets to CN after sending BU. If old CoA can be used for sending 
 
 
Petander                Expires April 16, 2006                 [Page 4] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

   packets between BU and BA, this use MUST be configurable, so that the 
   default is to use the new CoA. 

 

5. Changes to use and management of Binding Cache 

   CN MAY keep its state for Binding Cache Entry with the old CoA of MN 
   after accepting a Binding Update from MN for a period of 
   OLD_BC_STATE_LIFETIME. During this time CN SHOULD accept packets from 
   MN with the old CoA. CN MUST not use the old CoA for sending packets 
   to MN. 

6. Security Considerations 

  An attacker on the previous link of MN could inject packets with the 
  old CoA to CN or HA during the lifetime of the receiving state for 
  old CoA, if MN disconnects from the old link before binding cache or 
  binding update list entries for the old CoA are deleted. However, the 
  short lifetime of the receiving state for old CoA limits the scope of 
  any vulnerability created by the dual receiving state in MN and CN. 

7. Protocol Constants 

   OLD_BUL_STATE_LIFETIME - 2s 

   OLD_BC_STATE_LIFETIME - 1s  

   A lifetime of 1s for old BC entries guarantees that the entries do 
   not accumulate, since 1s is the minimum BU interval.  

    















 
 
Petander                Expires April 16, 2006                 [Page 5] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

8. Normative References 

   [1]   Bradner, S., "Key words for use in RFCs to Indicate Requirement 
         Levels", BCP 14, RFC 2119, March 1997. 

   [2]   Johnson, D., Perkins, C., and Arkko J., "Mobility Support in 
         IPv6", RFC 3775, June 2004. 

9. Informative References 

   [3]  Petander H., Perera E., Seneviratne A., "Multiple Interface 
        Handoffs: A Practical Method for Access Technology Independent 
        Make-Before-Break Handoffs", NICTA Technical Report, July 2005, 
        http://nicta.com.au/uploads/documents/PA005092_NICTA1.pdf

Author's Address 

   Henrik Petander 

   National ICT Australia 

   Australian Technology Park 

   Bay 15 Locomotive Workshop, 

   Eveleigh NSW 1430  

   Australia 
       
   Email: henrik.petander@nicta.com.au 
    

   Eranga Perera 

   National ICT Australia 

   Australian Technology Park 

   Bay 15 Locomotive Workshop, 

   Eveleigh NSW 1430  

   Australia 
       
   Email: eranga.perera@nicta.com.au 
    
 
 
Petander                Expires April 16, 2006                 [Page 6] 

Internet-Draft      draft-petander-mip6-mbb-00.txt         October 2005 
    

Intellectual Property Statement 

   The IETF takes no position regarding the validity or scope of any 
   Intellectual Property Rights or other rights that might be claimed to 
   pertain to the implementation or use of the technology described in 
   this document or the extent to which any license under such rights 
   might or might not be available; nor does it represent that it has 
   made any independent effort to identify any such rights.  Information 
   on the procedures with respect to rights in RFC documents can be 
   found in BCP 78 and BCP 79. 

   Copies of IPR disclosures made to the IETF Secretariat and any 
   assurances of licenses to be made available, or the result of an 
   attempt made to obtain a general license or permission for the use of 
   such proprietary rights by implementers or users of this 
   specification can be obtained from the IETF on-line IPR repository at 
   http://www.ietf.org/ipr. 

   The IETF invites any interested party to bring to its attention any 
   copyrights, patents or patent applications, or other proprietary 
   rights that may cover technology that may be required to implement 
   this standard.  Please address the information to the IETF at 
   ietf-ipr@ietf.org 

Disclaimer of Validity 

   This document and the information contained herein are provided on an 
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 

Copyright Statement 

   Copyright (C) The Internet Society (2005). 

   This document is subject to the rights, licenses and restrictions 
   contained in BCP 78, and except as set forth therein, the authors 
   retain all their rights. 

Acknowledgments 

   Funding for the RFC Editor function is currently provided by the 
   Internet Society.   

 
 
Petander                Expires April 16, 2006                 [Page 7]