One document matched: draft-thaler-mobility-comparison-02.txt

Differences from draft-thaler-mobility-comparison-01.txt



Internet Draft                                                 D. Thaler 
October 19, 2006                                               Microsoft 
Expires April 2007                                                       
 
             A Comparison of IP Mobility-Related Protocols 
               <draft-thaler-mobility-comparison-02.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. 

   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/1id-abstracts.html  
    
   The list of Internet-Draft Shadow Directories can be accessed at 
   http://www.ietf.org/shadow.html. 

Copyright Notice 

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

Abstract 

   Mobile IPv6 (MIP6), the Level 3 Multihoming Shim Protocol (SHIM6), 
   and the Host Identity Protocol (HIP) all address various aspects of 
   mobility and multi-homing in similar ways.  This document gives a 
   brief comparison of their features. 

1. Introduction 

   This document describes a number of commonalities and differences 
   between Mobile IPv6 [MIP6], the Level 3 Multihoming Shim Protocol 
   [SHIM6], and the Host Identity Protocol [HIP].  Each of them 
   addresses different aspects of the overall mobility and multi-homing 
   problems.  The set of features compared herein was constructed based 
   on taking the union of the problem statements for each protocol.  As 
   we will see, significant overlap exists, but each has unique aspects 
   that the others do not address. 


  
Thaler                    Expires April 2007                         1 
Draft                   IP Mobility Comparison            October 2006 
 
 
   This comparison shows a snapshot in time, and there may be 
   additional work not mentioned here which adds capabilities to one or 
   more of the protocols discussed herein.  Only work currently within 
   the IETF has been considered in the tables below.  Finally, only 
   IPv6 is considered within this document, although some protocols may 
   work for IPv4 as well. 

   In this document, three types of identifiers are referred to: 

   Name: A DNS fully-qualified domain name. 

   Upper-layer Identifier (ULID): An address used by protocols and 
      applications above the mobility/multi-homing sub-layer.  In MIP6, 
      this is a Home Address (HoA).  SHIM6 uses normal IPv6 addresses 
      as upper-layer identifiers, and calls them ULIDs when used as 
      such.  In HIP, this is a Host Identity Tag (HIT). 

   Locator: An address used for routing below the mobility/multi-homing 
      sub-layer.  In MIP6, this is a Care-of Address.  SHIM6 and HIP 
      use normal IPv6 addresses and simply call them Locators. 

2. Layering 

   MIP6, SHIM6, and HIP all insert a conceptual sub-layer between the 
   routing portion of the network layer, and the transport layer.  Each 
   of them does some processing in the data path for specific headers.  

   MIP6 uses a Destination Options Header with a Home Address Option in 
   data packets sent from a home address, and a Type 2 Routing Header 
   in packets sent to a home address.  SHIM6 defines a Payload 
   Extension Header.  HIP uses the Encapsulating Security Payload 
   header itself.  A theoretical packet with all of the above present, 
   plus other extension headers, would thus look like this: 

   +------+------+-------+---------+-------+------+-------+---------- 
   | IPv6 | HbH  | Type2 | DstOpts | SHIM6 | Frag |  ESP  | Payload  
   | Hdr  | Opts | RtHdr | (HoA)   |  PEH  | Hdr  | (HIP) |      
   +------+------+-------+---------+-------+------+-------+----------     
    
   As can be seen from this, MIP6 headers appear first, followed by 
   SHIM6, followed by HIP.  As such, a natural organization in an 
   implementation would be (ignoring other destination options): 











  
Thaler                   Expires August 2006                        2 
Draft                   IP Mobility Comparison            October 2006 
 
 
   +============================+ 
   |  Transport layer           | 
   +============================+    
   |  IPsec + HIP sub-layer     |    \ 
   +----------------------------+     \ 
   |  Fragmentation/reassembly  |      \ 
   +----------------------------+       \ 
   |  SHIM6 sub-layer           |         Network layer 
   +----------------------------+       / 
   |  MIP6 sub-layer            |      / 
   +----------------------------+     / 
   |  Routing sub-layer         |    / 
   +============================+    
    
3. Feature Comparison 

   The following table summarizes the features compared in this 
   section.  Each line has a corresponding section below with a more 
   detailed explanation. 

   +-------------------+--------------+-------------+-----------------+ 
   |                   | MIP6         | SHIM6       | HIP             | 
   +-------------------+--------------+-------------+-----------------+ 
   | Preserve          |              |             |                 | 
   | established       | Yes          | Yes         | Yes             | 
   | connections       |              |             |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Support both ends | Yes          | Only w/in   | Yes             | 
   | moving simultan.  |              | known set   |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Span path outages | No           | Yes         | No              | 
   |                   |              |             |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Resolve name to   |              |             |                 | 
   | locators immed.   | Yes          | No          | Yes             | 
   | after move        |              |             |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Support referrals | Yes          | Yes         | Only by name    | 
   +-------------------+--------------+-------------+-----------------+ 
   | Stable addresses  | Yes          | Assumed     | Non-routable    | 
   +-------------------+--------------+-------------+-----------------+ 
   | Support load      | Yes          | Yes         | Yes             | 
   | spreading         | (monami6)    |             |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Multicast support | Yes          | Not mobile  | No              | 
   +-------------------+--------------+-------------+-----------------+ 
    
3.1. Preserve established connections 

   All three protocols are able to preserve established connections 
   across a locator change, including by both sides simultaneously. 


  
Thaler                   Expires August 2006                        3 
Draft                   IP Mobility Comparison            October 2006 
 
 
3.2. Support both ends moving simultan. 

   MIP6 and HIP both are able to preserve established connections even 
   if both ends move simultaneously.  SHIM6 is only able to do so if at 
   least one end only moves to a new locator which has previously been 
   communicated to the other prior to the move. 

3.3. Span path outages 

   A "path outage" here refers to a case where both ends of a 
   connection believe they have network connectivity and their locator 
   is valid, but the path between the locator pair is broken somewhere 
   in the middle of the network. 

   MIP6 is not able to preserve connections across such outages between 
   the correspondent node and the home address.  HIP would be capable 
   of preserving connections across such outages, but has no mechanisms 
   for detecting failures end-to-end and testing alternate paths.  
   SHIM6 was designed for this scenario and is able to preserve 
   connections across such outages. 

3.4. Resolve name to locators immed. after move 

   If the TTL in the DNS AAAA records is (say) 30 seconds, or if DNS 
   resolvers do not respect a TTL less than 30 seconds, then normally 
   new connections to a device would not be able to be established for 
   up to 30 seconds after the device moves to a new network location.  
   MIP6 and HIP are both able to accept new connections without waiting 
   for name resolution, since DNS records need not be updated when 
   moving. 

   SHIM6 does not attempt to address this problem. 

3.5. Support referrals 

   In some applications and protocols, one device redirects another 
   device to a third device.  Such a redirection may be by giving it 
   the name or the upper-layer identifier of the third party.  Another 
   similar variation occurs when one device wants to connect back to 
   another device which previously connected to it. 

   MIP6 and SHIM6 both support such referrals by either name or upper-
   layer identifier.   

   HIP, on the other hand, currently only supports referrals by name, 
   not upper-layer identifier.  This is because there is currently no 
   way to get the locator corresponding to a HIT, without knowing the 
   name.  As a result, applications and protocols that use address-
   based referrals do not work with HIP.  The IRTF is currently 
   investigating addressing this problem via a Distributed Hash Table.   



  
Thaler                   Expires August 2006                        4 
Draft                   IP Mobility Comparison            October 2006 
 
 
3.6. Stable addresses 

   Many applications and higher-layer protocols today cache addresses 
   for a significant length of time.  Because of this, there is often a 
   desire for stable (i.e., long-lived) upper-layer identifiers.  
   Typically this is desired to be able to accept new connections 
   immediately (section 3.2) and to support referrals (section 3.5).  
   It is also useful for management purposes.  

   MIP6 provides this by providing a stable Home Address.  SHIM6 does 
   not attempt to address this problem, nor does it make the problem 
   any worse.  HIP provides a stable upper-layer identifier, but it is 
   not a routable address. 

3.7. Support load spreading 

   When multiple locators are advertised to another device, that other 
   device can do load spreading of different connections to the first 
   device by using different locators. 

   SHIM6 supports the ability to advertise multiple locators, whereas 
   MIP6 itself only advertises a single one, but there is work in 
   progress [MCOA] on extending MIP6 to advertise multiple locators.  
   HIP also supports the ability to advertise multiple locators, but 
   its ability to use them is not as mature as SHIM6. 

3.8. Multicast support 

   MIP6 supports sourcing multicast from home addresses by tunneling it 
   through the home agent.  In SHIM6, multicast can be sourced from any 
   address, but it does not support moving such sessions with SHIM6.  
   HIP, on the other hand, does not support sourcing multicast from 
   HITs. 

4. Efficiency Considerations 

   The following table summarizes the efficiency metrics compared in 
   this section.  Each line has a corresponding section below with a 
   more detailed explanation. 














  
Thaler                   Expires August 2006                        5 
Draft                   IP Mobility Comparison            October 2006 
 
 
   +--------------+-------------------+-------------+-----------------+ 
   |              | MIP6              | SHIM6       | HIP             | 
   +--------------+-------------------+-------------+-----------------+ 
   | Per-packet   | 0 if both home /  | 0 normally/ | 0 (beyond IPsec | 
   | overhead     | 20/40 if src away | 8 if moved  | transport mode) | 
   | (bytes)      | + 24 if dest away |             |                 | 
   +--------------+-------------------+-------------+-----------------+ 
   | Connect      | 0                 | 0           | 0 + 4 for IPsec | 
   | overhead     |                   |             | key negotiation | 
   | (messages)   |                   |             |                 | 
   +--------------+-------------------+-------------+-----------------+ 
   | Locator      | 2 to update HA    |             | 3 to update RVS | 
   | change       |      +            |             |      +          | 
   | overhead     | 6 / 4 (cga) /     | 4 to update | 3 to update     | 
   | (messages)   | 0 if local (hmip6)|      peer   |      peer       | 
   |              | to update peer    |             |                 | 
   +--------------+-------------------+-------------+-----------------+ 
    
4.1. Per-packet overhead (bytes) 

   MIP6 uses a Destination Options Header with a Home Address Option 
   (20 bytes) in data packets sent from a home address.  If packets are 
   reverse tunneled to a home agent, then there is instead an overhead 
   of at least 40 bytes (the size of an IPv6 Header), plus any other 
   extension headers used by the tunnel, if any, on packets between the 
   mobile node and the home agent 

   MIP6 uses a Type 2 Routing Header (24 bytes) in packets sent to a 
   home address.  When both ends use home addresses, the overhead is 
   thus 44 bytes (or if reverse tunneling is used instead, 64 bytes 
   between the mobile node and the home agent).   

   If a packet is fragmented, the above overhead is added to every 
   fragment. 

   SHIM6 uses an 8-byte Payload Extension Header with data packets.  If 
   a packet is fragment, this overhead is added to every fragment.  
   This overhead is only present after a locator change occurs. 

   HIP uses the IP Encapsulating Security Payload (ESP) within data 
   packets.  As such, the overhead is equal to the size of the ESP 
   header, or 0 if IPsec transport mode would be used anyway.  
   Furthermore, its processing is per reassembled packet, not per 
   fragment. 

4.2. Connect overhead 

   At the time data is first exchanged between a mobile node and a 
   correspondent node (e.g., a TCP connect), MIP6 generates no 
   additional messages prior to a switch to use route optimization.  At 
   the time a mobile node is away from home and decides to use route 
   optimization, it generates 6 additional messages (Binding Update, 

  
Thaler                   Expires August 2006                        6 
Draft                   IP Mobility Comparison            October 2006 
 
 
   Binding Acknowledgement, Home Test Init, Home Test, Care-of Test 
   Init, and Care-of Test). 

   SHIM6 assumes the node is always at home and generates no messages 
   prior to a locator change. 

   In HIP, a node is always "away from home" in the sense that its 
   locator is never equal to the ULID (which is non-routable), and 
   hence it uses a 4-way handshake to negotiate IPsec state prior to 
   being able to send data.  If IPsec would be used anyway, HIP 
   requires no additional messages (although whether this is the same, 
   more, or less overhead than typical IPsec overhead depends on the 
   key management protocol it is compared to). 

4.3. Locator change overhead 

   To change a locator for existing communication, MIP6 generates 2 
   messages to update the Home Agent, and 6 (or 4 if the optimization 
   in [CGA] is used) to update the correspondent node.  If the mobile 
   node is communicating with multiple correspondent nodes, the 2 to 
   update the Home Agent only applies once, not per correspondent node.  
   Hierarchical Mobile IPv6 [HMIP6] specifies an optimization which 
   avoids any messages to correspondent nodes in the case where the 
   mobile node moves within the same domain; it does so, however, at 
   the expense of requiring that a Mobility Anchor Point (MAP) is 
   deployed within that domain and routers are configured to advertise 
   it. 

   SHIM6 generates 4 messages to update the peer.  HIP generates 3 
   messages to update the Rendezvous Server (RVS), and a 3 message 
   handshake to update each peer. 

5. Deployment Considerations 

   The following table summarizes the deployment considerations 
   compared in this section.  Each line has a corresponding section 
   below with a more detailed explanation. 

   +-------------------+----------------+-----------+-----------------+ 
   |                   | MIP6           | SHIM6     | HIP             | 
   +-------------------+----------------+-----------+-----------------+ 
   | One-end benefit   | Yes            | No        | No              | 
   +-------------------+----------------+-----------+-----------------+ 
   | Typical           | Home agent,    |           | Rendezvous Svr, | 
   | deployment        | if hmip used:  | None      | New RR, IPsec   | 
   | dependencies      | MAP + config   |           |                 | 
   |                   |       routers  |           |                 | 
   +-------------------+----------------+-----------+-----------------+ 

5.1. One-end benefit 

   Protocols that allow some partial benefit when only one end of a 
   connection supports the protocol have a deployment advantage over 
  
Thaler                   Expires August 2006                        7 
Draft                   IP Mobility Comparison            October 2006 
 
 
   those that require support from both ends.  This is because the 
   former allows a new device to gain immediate benefit, whereas the 
   latter only gives significant benefit once the majority of devices 
   it talks to are upgraded. 

   MIP6 provides benefit for a mobile node even without support in 
   correspondent nodes; traffic is simply less efficient since traffic 
   must be routed via the home agent rather than using route 
   optimization. 

   SHIM6 and HIP both require support in both ends before their 
   benefits can be realized. 

5.2. Typical deployment dependencies 

   To gain the full benefits of a protocol, often additional deployment 
   dependencies exist on other protocols or servers. 

   MIP6 depends on the existence of a MIP6 Home Agent to be deployed.  
   As noted in section 4.3, the HMIP6 optimization also requires that a 
   Mobility Anchor Point be deployed within a domain desiring the 
   optimization for local movement, and also that routers in that 
   domain be configured to advertise it. 

   SHIM6 has no outside dependencies. 

   HIP depends on the IPsec [IPSEC] protocol for basic operation.  It 
   also depends on the existence of a HIP Rendezvous Server for its 
   mobility mechanisms.  Finally, it requires a new DNS resource 
   record, and to gain the full security benefit, it depends on the 
   DNSSec [DNSSEC] protocol.  However, the dependency on DNSSec to 
   secure the name-to-ULID-related information is the same as for the 
   other protocols, which do not attempt to address the key negotiation 
   problem. 

6. Security Considerations 

   Security considerations for each protocol discussed herein are 
   covered in the respective protocol documents.  A brief comparison of 
   their security aspects is listed below. 













  
Thaler                   Expires August 2006                        8 
Draft                   IP Mobility Comparison            October 2006 
 
 
   +-------------------+--------------+-------------+-----------------+ 

   |                   | MIP6         | SHIM6       | HIP             | 
   +-------------------+--------------+-------------+-----------------+ 
   | Control message   |              |             |                 | 
   | auth check        |              |             |                 | 
   |           Minimum | On path      | On path +   | Cryptographic   | 
   |                   |              | same node   |                 | 
   |           --------+--------------+-------------+-----------------+ 
   |           Maximum | Crypto.      | Crypto.     | Crypto.         | 
   +-------------------+--------------+-------------+-----------------+ 
   | Maximum control   | Crypto.      | Crypto.     | Crypto.         | 
   | msg auth check    |              |             |                 | 
   +-------------------+--------------+-------------+-----------------+ 
   | Data security     | Optional     | Optional    | Required        | 
   +-------------------+--------------+-------------+-----------------+ 
    
6.1. Control message auth check 

   Control messages indicating a locator change must be authenticated.  
   MIP6 and SHIM6 at minimum only verify that control messages were 
   originated by someone on the path between the two ends.  MIP6 at a 
   mimum only verifies that control messages were originated by someone 
   on the path between the two ends using a return routability test, 
   but allows optional cryptographic checks (using what is known as 
   Cryptographically Generated Addresses (CGAs) [CGA]) for more 
   security.  SHIM6 also uses a return routability test, plus at least 
   a verification that the new locator is a locator of the same node 
   (but does not verify that the control message was actually sent by 
   that node) using a technique known as Hash-Based Addresses; it also 
   optionally allows CGAs for more security. 

   HIP, on the other hand, requires strong cryptographic checks on all 
   control messages. 

6.2. Data security 

   HIP requires that IPsec [IPSEC] be used for data, whereas IPsec is 
   optional for MIP6 and SHIM6. 

7. IANA Considerations 

   This document has no actions for IANA. 

8. Acknowledgements 

   Marcelo Bagnulo, Tom Henderson, Vijay Devarapalli, and Hesham 
   Soliman provided valuable feedback and technical information 
   regarding this draft. 




  
Thaler                   Expires August 2006                        9 
Draft                   IP Mobility Comparison            October 2006 
 
 
9. Informative References 

   [CGA]     Arkko, J., Vogt, C., and W. Haddad, "Applying 
             Cryptographically Generated Addresses and Credit-Based 
             Authorization to Mobile IPv6", Internet Draft, draft-ietf-
             mipshop-cga-cba-01.txt, September 2006. 

   [DNSSEC]  Arends, R., Austein, R., Larson, M., Massey, D., and S. 
             Rose, "DNS Security Introduction and Requirements", RFC 
             4033, March 2005. 

   [HIP]     Moskowitz, R. and P. Nikander, "Host Identity Protocol 
             (HIP) Architecture", RFC 4423, May 2006.  

   [HMIP6]   Soliman, H., Castelluccia, C., El Malki, K., and L. 
             Bellier, "Hierarchical Mobile IPv6 Mobility Management 
             (HMIPv6)", RFC 4140, August 2005. 

   [IPSEC]   Kent, S. And K. Seo, "Security Architecture for the 
             Internet Protocol", RFC 4301, December 2005. 

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

   [MCOA]    Wakikawa, R., Ernst, T., and K. Nagami, "Multiple Care-of 
             Addresses Registration", Internet Draft, draft-ietf-
             monami6-multiplecoa-00.txt, June 2006. 

   [SHIM6]   Nordmark, E. And M. Bagnulo, "Level 3 multihoming shim 
             protocol", Internet Draft, draft-ietf-shim6-proto-05.txt, 
             May 2006.  

Authors' Addresses 

   Dave Thaler 
   Microsoft 
   One Microsoft Way 
   Redmond, WA 98052 
   Phone: +1 425 703 8835 
   Email: dthaler@microsoft.com 

Full Copyright Statement 

   Copyright (C) The Internet Society (2006).  
    
   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.  
    
   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 
  
Thaler                   Expires August 2006                       10 
Draft                   IP Mobility Comparison            October 2006 
 
 
   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. 

Intellectual Property 

   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. 


























  
Thaler                   Expires August 2006                       11

PAFTECH AB 2003-20262026-04-23 21:52:37