Monami6MEXT Working Group R. Wakikawa(Editor)(Ed.) Internet-Draft Keio University Intended status: Standards Track T. Ernst Expires:July 31,August 27, 2008 INRIA K. Nagami INTEC NetCore V. Devarapalli (Ed.) Azaire NetworksJanuary 28,February 24, 2008 Multiple Care-of Addresses Registrationdraft-ietf-monami6-multiplecoa-05.txtdraft-ietf-monami6-multiplecoa-06.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/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 onJuly 31,August 27, 2008. Copyright Notice Copyright (C) The IETF Trust (2008). Abstract According to the current Mobile IPv6 specification, a mobile node may have several care-of addresses, but only one,termedcalled the primary care-of address, that can be registered with its home agent and the correspondent nodes. However, for matters of cost, bandwidth, delay, etc, it is useful for the mobile node to get Internet access through multipleaccess mediaaccesses simultaneously, in which case the mobile node would be configured with multiple active IPv6 care-ofaddresses would be assignedaddresses. This document proposes extensions to themobile node. We thus proposeMobile IPv6extensions designedprotocol to register and use multiple care-ofaddresses bound to a single Home Address instead of the sole primary care-of address. For doing so, a new identification number must be carriedaddresses. The extensions proposed ineach binding for the receiver to distinguish between the bindings corresponding tothis document can be used by Mobile Routers using thesame Home Address. Those extensions are targeted toNEMO (Network Mobility) Basic Support protocol aswell as to Mobile IPv6.well. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6 3. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7 4. Mobile IPv6 Extensions . . . . . . . . . . . . . . . . . . . . 9 4.1. Binding Cache Structure and Binding Update List . . . . . 9 4.2.Message Format Changes . . . . . . . . . . . . . . . . . . 9 4.2.1.Binding Identifier Mobility Option . . . . . . . . . . . . 9 4.3. New Status Values for BindingAcknowledgment .Acknowledgement . . . . . . 11 5. Mobile Node Operation . . . . . . . . . . . . . . . . . . . . 13 5.1. Management of Care-ofAddressesAddress(es) and BindingIdentifierIdentifier(s) . . . . . . . . . . . . . . . . . . . . . . 13 5.2. Return Routability: Sending CoTI and Receiving CoT . . . . 13 5.3. Binding Registration . . . . . . . . . . . . . . . . . . . 14 5.4.BindingBulk Registration . . . . . . . . . . . . . . . .15. . . . 14 5.5. Binding De-Registration . . . . . . . . . . . . . . . . .1615 5.6. Returning Home . . . . . . . . . . . . . . . . . . . . . . 16 5.6.1. Using only Interface attached to the Home Link . . . . 16 5.6.2. Using only Interface attached to the Visited Link . . 16 5.6.3. Simultaneous Home and Visited Link Operation . . . . . 17 5.7. Receiving BindingAcknowledgment .Acknowledgement . . . . . . . . . . . . 19 5.8. Receiving Binding Refresh Request . . . . . . . . . . . . 20 5.9.Sending Packets to Home Agent . . . . . . . . . . . . . . 20 5.10.Bootstrapping . . . . . . . . . . . . . . . . . . . . . .2120 6. Home Agent and Correspondent Node Operation . . . . . . . . .2221 6.1. Searching Binding Cache with Binding Identifier . . . . .2221 6.2. Receiving CoTI and Sending CoT . . . . . . . . . . . . . .2221 6.3. Processing Binding Update . . . . . . . . . . . . . . . .2322 6.4. Sending Binding Refresh Request . . . . . . . . . . . . .2524 6.5. Receiving Packets from Mobile Node . . . . . . . . . . . .2624 7. Network Mobility Applicability . . . . . . . . . . . . . . . .2725 8. DSMIPv6 Applicability . . . . . . . . . . . . . . . . . . . .2826 8.1. IPv4 Care-of Address Registration . . . . . . . . . . . .2826 8.2. IPv4 HoA Management . . . . . . . . . . . . . . . . . . .2927 9. IPsec and IKEv2 interaction . . . . . . . . . . . . . . . . .3028 9.1. Use of Care-of Address in the IKEv2 exchange . . . . . . .3028 9.2. Transport Mode IPsec protected messages . . . . . . . . .3129 9.3. Tunnel Mode IPsec protected messages . . . . . . . . . . .3129 9.3.1. Tunneled HoTi and HoT messages . . . . . . . . . . . .3129 9.3.2. Tunneled Payload Traffic . . . . . . . . . . . . . . .3230 10. Security Considerations . . . . . . . . . . . . . . . . . . .3331 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . .3433 12.AcknowledgmentsAcknowledgements . . . . . . . . . . . . . . . . . . . . . . .3534 13. References . . . . . . . . . . . . . . . . . . . . . . . . . .3534 13.1. Normative References . . . . . . . . . . . . . . . . . . .3534 13.2. Informative References . . . . . . . . . . . . . . . . . .3634 Appendix A. Example Configurations . . . . . . . . . . . . . . .37 Appendix B. Changes From Previous Versions . . . . . . . . . . . 4236 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . .4240 Intellectual Property and Copyright Statements . . . . . . . . . .4442 1. Introduction A mobile node may use various types of network interfaces to obtain durable and wide area network connectivity. This is increasingly become true with mobile nodes having multiple interfaces such as 802.2, 802.11, 802.16, cellular radios, etc.. Theassumed scenarios andmotivations for and benefits of using multiple points ofattachment, and benefits for doing itattachment are discussedat largein [ID-MOTIVATION].IPv6 [RFC-2460] conceptually allowsWhen a mobile nodeto have several addresses on a given interface. Consequently,with multiple interfaces uses Mobile IPv6 [RFC-3775]has mechanisms to managefor mobility management, it cannot use its multiple``Home Addresses'' based on home agent's managed prefixes such as mobile prefix solicitation and mobile prefix advertisement. But assigning a single Home Addressinterfaces toa nodesend and receive packets while taking advantage of session continuity provided by Mobile IPv6. This ismore advantageous than assigning multiple Home Addressesbecauseapplications do not need to be aware of the multiplicity of Home Addresses. If multiple home addresses are available, applications must reset the connection information whenMobile IPv6 allows the mobile nodechangesto only bind one care-of address at a time with itsactive network interface (i.e. change the Home Address). Accordinghome address. This document proposes extensions totheMobile IPv6specification,to allow a mobile nodeis not allowedto register multiple care-of addressesbound to a single Home Address. Since NEMO Basic Support [RFC-3963] is based on Mobile IPv6, the same issues apply to a mobile node acting asfor amobile router. Multihoming issues pertaining to mobile nodes operating Mobile IPv6 and mobile routers operating NEMO Basic Support are respectively discussed [ID-MIP6ANALYSIS] and [RFC-4980] in Monami6home address andNEMO Working Group. In this document, we thus propose acreate multiple binding cache entries. A newidentification number calledBinding Identification (BID) number is created for each bindingcache entry to accommodate multiple bindings registration. Thethe mobile nodenotifies the BIDwants toboth its Home Agent and correspondent nodes by means of a Binding Update. Correspondent nodescreate and sent in the binding update. The home agentrecord the BID into theirthat receives this Binding Update creates separate bindingcache.for each BID. TheHome Address thus identifies a mobile node itself whereas theBIDidentifies each binding registered by a mobile node. By usinginformation is stored in theBID, multiple bindingscorresponding binding cache entry. The BID information canthennow bedistinguished.used to identify individual bindings. The same extensions can also be used in Binding Updates sent to the correspondent nodes. 2. Terminology 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]. Terms used in this draft are defined in [RFC-3775], [RFC-3753] and [RFC-4885]. In addition or in replacement of these, the following terms are defined or redefined: Binding Identification number (BID) The BID is an identification number used to distinguish multiple bindings registered by the mobile node. Assignment of distinctBIDBIDs allows a mobile node to register multiple binding cache entries for a givenHome Address.home address. The BID MUST be unique for a binding to a specific care-of address for a given home address and care-of address pair.The zero valueZero andanegativevaluevalues MUST NOT be used. Each BID is generated and managed by a mobile node.After being generated by the mobile node, theThe BID is stored in the Binding Update List and is sent by the mobile node in the Binding Update. A mobile node MAY change the value of a BID at any time according to its administrative policy, for instance to protect its privacy. An implementation must carefully assign the BID so as to keep using the same BID for the same binding even when the status of the binding is changed. More details can be found in Section 5.1. Binding Identifier Mobility Option The Binding Identifier mobility option is used to carry theBID.BID information. Bulk Registration A mobile node can register multiple bindings at once by sending a singlebinding update. The mobile node does not necessarily put all the available care-of addresses in the binding update, but several care-of addresses.Binding Update. A mobile node can also replace some or all the bindings available at the home agent with the new bindings by using the bulk registration.The bulkBulk registration is supported onlyforwith the homeregistration and de-registrationagent as explained in Section 5.5. A mobile node MUST NOT perform bulk registration with a correspondentnodes.node. 3. Protocol Overview A new extension called the Binding identification number (BID) is introduced to distinguish between multiple bindings pertaining to the sameHome Address. Oncehome address. If a mobile nodegetsconfigures several IPv6 global addresses on one or more of its interfaces, it can register these addresses with its homeagent.agent as care-of addresses. If the mobile node wants to register multiple bindings, it MUST generate a BID for each care-of address andrecordstore the BIDintoin the binding update list. A mobile node can manipulate each binding independently by usinga BID.the BIDs. The mobile node then registers its care-of addresses by sending a Binding Update with a Binding Identifier mobility option. The BIDMUST beis included in the Binding Identifier mobility option. After receivingsuchthe Binding Updateandwith a Binding Identifier mobility option, the home agent MUST copy the BID from the Binding Identifier mobility option to the corresponding field in the binding cache entry.Even ifIf there isalreadyan existing binding cache entry for the mobilenode's home address,node, and if the BID in the Binding Update does not match the one with the existing entry, the home agent MUSTregistercreate a new binding cache entry for theBID stored in the Binding Identifier mobility option.new care-of address and BID. The mobile noderegisterscan register multiple care-of addresses either independently in individual Binding Updates or multiple at once in a single Binding Update. If the mobile host wishes to register its binding with a correspondent node, it must perform return routability operations.The mobile host MUST manageThis includes managing a Care-of KeygenTokentoken per care-ofaddress. The mobile host exchanges CoTIaddress and exchanging CoTi and CoTfor the corresponding care-of addresses if necessary. Whenmessage with themobile host registers several care-of addresses to acorrespondentnode, it uses the same BID as the one generatednode forthe home registration's bindings.each care-of address. Thebinding registration step ismobile node MAY use the sameas forBID that it used with the homeregistration exceptagent forcalculating authenticator.a particular care-of address. For protocol simplicity,thebulk registration to correspondent nodes is not supportedfor correspondent nodesin this document. This is because the Return Routability mechanism introduced in [RFC-3775] cannot be easily extended to verify multiple care-of addresses stored in a single Binding Update. If the mobile node decides to act as a regular mobile node compliant with[RFC-3775] ,[RFC-3775], itjustsends a Binding Update without any Binding Identifier mobility options. The receiver of the Binding Update deletes all the bindings registering with a BID and registers only a single binding for the mobile node. Note that the mobile node can continue using the BID even if it has only a single binding that isactive at some time. When aactive. Binding cache lookup is done based on the homeagentaddress anda correspondent node checkBID information. This is different from RFC 3775, where only the home address is used for binding cachedatabase for the mobile node, they search a correspondinglookup. The bindingentry with the pair of Home Address and BID of the desired binding. If necessary, a mobile node can usecache lookup may also involve policyand filter informationor flow filters in cases where some policy or flow filters are used tolook up the bestdirect certain packets or flows to a particular care-of address. The bindingper sessions, flow, packets, but thiscache lookup using policy or flow filters is out of scopeinfor this document.If there is no desired binding, it searchesIn case the binding cachedatabase withlookup, using theHome Address as specified in Mobile IPv6. The first matchedcombination of home address and BID, does not return a valid bindingentry may be found, although thiscache entry, the home agent MAY perform another lookup based on only the home address. This is implementationdependent.dependent and configurable on the home agent. The mobile node may return to the home link through one of its interfaces. There are three options possible for the mobile node when its returns home. 1. The mobile node uses only the interface with which it attaches to the home link. It de-registers all bindings related to all care-of addresses. The interfaceswhich arestill attached to the visitedlinklink(s) arenot used.no longer going to be receiving any encapsulated traffic from the home agent. 2. The mobile node uses only the interfaces still attached to the visitedlink.link(s). The interface with which the mobile node attaches to the home link is not used. 3. The mobile node may simultaneously use both the interface attached to the home link and the interfaces still attached to the visitedlinks.link(s). Section 5.6 describes the returning home procedures in more detail. 4. Mobile IPv6 Extensions This section summarizes thechangesextensions to Mobile IPv6 necessarytofor manage multiplebindings bound to a same Home Address.bindings. 4.1. Binding Cache Structure and Binding Update List The BID is required to be stored in the binding cache and binding update list structure. 4.2.Message Format Changes 4.2.1.Binding Identifier Mobility Option The Binding Identifier mobility option is included in the Binding Update, BindingAcknowledgment,Acknowledgement, Binding Refresh Request, and Care-of Test Init and Care-of Test message. 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type = TBD | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Binding ID (BID) | Status |C|O|H|D|Resrvd | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-------------------------------+ + + : IPv4 or IPv6 care-of address (CoA) : + + +---------------------------------------------------------------+ Figure 1: BID Mobility Option Type Type value for Binding Identifier is TBD Length 8-bit unsigned integer. Length of the option, in octets, excluding the Type and Length fields. MUST be set to 4 when the 'C' flag is unset. Otherwise, the Length value MUST be set to either 8 or 20 depending on the 'D' (DSMIPv6) flag. Binding ID (BID) The BID which is assigned to the bindingcarriedindicated by the care-of address in the Binding Updatewith thisor the BID mobility option. The BID is a 16-bit unsigned integer.AThe value of zero isreserved.reserved and MUST NOT be used. Status When the Binding Identifier mobility option is included in a BindingAcknowledgment,Acknowledgement, this field overwrites the status fieldcorrespondent to each bindingin the BindingAcknowledgment.Acknowledgement. If this field is zero, the receiver MUST use the registration status stored in the BindingAcknowledgmentAcknowledgement message. This Status fieldcan beis also used to carry error informationfor arelated to the care-of address test in the Care-of Test message. The status is 8-bit unsigned integer. The possible status codes are the same as the status codes of BindingAcknowledgment.Acknowledgement. Care-of address (C) flag When this flag is set, it indicates that amobile node can store a Care-of Address corresponding tovalid care-of address is present in theBIDcare-of address field in theBinding IdentifierBID mobility option. This flag MUST beusedset wheneverathe mobile node sends multiple care-of addresses in a single Binding Update,i.e.i.e., bulk registration. ItMUST beMAY also usedfor the independent binding registrationas a substitute foranalternate care-of addressoption.option even for Binding Updates that are sent only for one care-of address. This flag is valid only forbinding updateBinding Update sent to the home agent. Overwrite (O) flag When this flag is set, a mobile node requestsa home agentthe recipient to replace all the bindings to binding entries stored in a Binding Update.This flag is valid only for binding update sent to the home agent.Simultaneous Home and Foreign Binding (H) flag This flag indicates that the mobile node registers multiple bindings to the home agent while is attached to the home link. This flag is valid only for abinding updateBinding Update sent to the home agent. DSMIPv6 (D) flag This flag indicates that the care-of addressfield MUST be set tois an IPv4care-ofaddress.IfWhen this flag is set, theCare-of Addresscare-of address field MUSTbe used.contain an IPv4 address. Reserved 5 bits Reserved field.ReservedThe reserved field MUST beset with all 0.zero. Care-of Address This field has the variable length depending on the specified flags. WhenCthe 'C' flag is set andDthe 'D' flag isunset,not, an IPv6Care-of Address matched tocare-of address for the corresponding BID is stored in this field. If bothC'C' andD'D' flags are set, an IPv4 Care-of Address isstored.carried in this field. This field MUST NOT be used if a Binding Identifier mobility option is included in any othermessagesmessage other than a Binding Updatemessage. The receiver SHOULD ignore this fieldor if themobility option'C' flag is notpresented in Binding Update message.set. 4.3. New Status Values for BindingAcknowledgmentAcknowledgement New status values for the status field in a BindingAcknowledgmentAcknowledgement are defined for handling the multiple Care-of Addresses registration: MCOA NOTCOMPLETE (TBD < 128) In bulk registration, not all the binding identifier mobility option are successfully registered. Some of them are rejected. The error status value of the failed mobility option is individually stored in the status field of the binding identifier mobility option. MCOA RETURNHOME WO/NDP (TBD < 128) When a mobile node returns home, it MUST NOT use NDP for the home address on the home link.TheThis is explained in more detailcan be foundin Section 5.6 MCOA MALFORMED (TBD more than 128) Registration failed because Binding Identifier mobility optioniswas notformedformatted correctly. MCOA BID CONFLICT (TBD more than 128) The home agent cannot cache both a regular binding and a BID extended binding simultaneously. It returns this status value when the received binding conflicts with the existing binding cache entry(ies). MCOA PROHIBITED(TBD more than 128) It implies the multiple care-of address registration is administratively prohibited. MCOA BULK REGISTRATION NOT SUPPORTED (TBD more than 128)The bulkBulk binding registration is not supported. 5. Mobile Node Operation 5.1. Management of Care-ofAddressesAddress(es) and BindingIdentifierIdentifier(s) There are two cases when a mobile nodehasmight acquire severalCare-of Addresses.care-of addresses. Note that a mixture of the two casesareis also possible. 1. A mobile nodeusesmay be using several physical network interfaces and acquires a care-of address on each of its interfaces. 2. A mobile node uses a single physical network interface, but receives advertisements for multiple prefixesare announcedon the link the interface is attached to.SeveralThis will result in the mobile node configuring several global addressesare configuredonthisthe interfaceforfrom each of the announced prefixes. The difference between the above two cases is onlyain the number of physical network interfaces and thereforedoes not matterirrelevant in this document.The Identification numberWhat isused to identify a binding. To implement this, aof significance is the fact that the mobile nodeMAY assign an identification number for eachhas several addresses it can use as care-of addresses.How to assign an identification number is implementation specific, but the following rules MUST be followed.A mobile node assigns a BID to each care-of address when it wants to register them simultaneously with itsHome Address.home address. The BID MUST be unique for abinding to a specific care-of address for agiven home address and care-of address pair. The value should begenerated from a value comprisedan integer between 1toand 65535. Zero and negative values MUST NOT be used asa BID.BIDs. If a mobile node has only one care-of address, the assignment of a BID is not needed until it has multiple care-of addresses to registerwith.with, at which time all of the care-of addresses MUST be mapped to BIDs. 5.2. Return Routability: Sending CoTI and Receiving CoT When a mobile node wants to registerbindings tomultiple care-of address with aCorrespondent Node,correspondent node, it MUST have the validcare-ofCare-of Keygen token per care-ofaddress, while the HoTI and HoT can be exchangedaddress. The mobile node needs onlyonce for aone HomeAddress. If the Mobile Node manages bindings with BID, itKeygen token for its home address. The mobile node MUST include a Binding Identifier mobility option inathe Care-of Test Init message. It MUST NOT settheany flags in the mobility option. The receiver (i.e. correspondent node) will calculate a care-of Keygen token as specified in [RFC-3775] and reply with a Care-of Testmessage andmessage, with the Binding Identifier mobility option as described in Section 6.2. When the mobile node receives the Care-of Test message, theCare-of Testmessage is verified assame asin [RFC-3775]. If a Binding Identifier mobility option is notpresentedpresent in the CoT message in reply to the CoTIcontaining themessage that included a Binding Identifier mobility option, the mobile node must assume that the correspondent node does not supporttheMultiple Care-of Address registration. Thus, the mobile node MUST NOT use a Binding Identifier mobility option intheany future BindingUpdate.Updates to that correspondent node. TheMobile Nodemobile node MAY skip re-sending regular CoTI message and keep the received care-of Keygen token for the regular BindingUpdate, because the correspondent node just ignores and skip the Binding Identifier mobility option and calculates the care-of Keygen token as [RFC-3775] specified.Update. 5.3. Binding RegistrationWhen a mobile node sends a Binding Update, it MUST decide whether it registers multiple care-of addresses or not. However, how this decision is taken is out-of scope in this document. If a mobile node decides not to register multiple care-of addresses, it completely follows the RFC3775 specification.For the multiple Care-of Addresses registration, the mobile node MUST include a Binding Identifier mobility option(s) in theMobility Option field of aBinding Update as shown in Figure 2. The BID is copied from a corresponding Binding Update List entry to the BID field of the Binding Identifier mobility option. When IPsec ESP is used forbinding update,protecting the Binding Update, the care-of addressMUSTcan bestoredcarried in the Care-of Address fieldby setting C flag as a substitute forof thealternate care-of addressBinding Identifier mobility option.TheIf this is done, the alternate care-of address option MUST NOT beomitted. Additionally forincluded in the Binding Update. For binding registration to a correspondent node, the mobile node MUST have both activehomeHome andcare-ofCare-of Keygen tokens for Kbm (see Section 5.2.5 of[RFC-3775]).[RFC-3775]) before sending the Binding Update. The care-of Keygen tokens MUST be maintained for each care-of address that the mobile node wants to register to the correspondentnode, as described in Section 5.2. After computing an Authenticator value for the Binding Authorization mobility option, it sends a Binding Update which contains a Binding Identifier mobility option.node. The Binding Update to the correspondent node is protected byathe Binding Authorization Data mobility option that is placed after the Binding Identifier mobility option. IPv6 header (src=CoA, dst=HA) IPv6 Home Address Option ESP Header (for home registration) Mobility header -BU Mobility Options - Binding Identifier mobility option - Binding Authorization mobility option (for Route Optimization) Figure 2: Binding Update for Binding Registration 5.4.BindingBulk RegistrationThe bulkBulk registration is an optimization forregisteringbinding multiple care-of addressesonlyto a homeagent byaddress using a single Binding Update.If aThis is very useful if the mobile node, for instance, does not want to send a lot ofcontrolsignaling messages through an interfacewhichwhere the bandwidth isscarce, it canscarce. To usethisbulkregistration and send a Binding Update containing multiple or allregistration, thevalid care-of addresses. Amobile nodesets the C flag inincludes a Binding IdentifiermobilityMobility option for each BID andincludes the particular care-ofCare-of address pair it wants to register in theBinding Identifier mobility option. The mobile node stores multiple sets of a Binding Identifier mobility option in asame Binding Updateasmessage. This is shown in Figure 3.InThe rest of thebulk registration, allfields and options in theother binding informationBinding Update such as Lifetime, Sequence Number,binding Flags are shared amongthebulked Care-of Addresses.flags in the Binding Update are common across all care-of addresses. The alternate care-of address option MUST NOT beomitted when ESP is used to protect a binding update.used. In the bulk registration, the Sequence Number field of a Binding Update SHOULD be carefully configured. This is because all the bulk- registered bindingsusesuse the same Sequence Number specified in the Binding Update. If each binding uses different sequence number, a mobile node MUST use the largest sequence number from thebinding updateBinding Update list entries used for the bulk registration. Ifitthe mobile node cannot select a sequence number for all the bindings due to sequence number out of window, it MUST NOT use the bulk registration for the bindingwhichwhose sequence number is out ofwindow and uses awindow. A separate Binding Update should be sent for the binding. IPv6 header (src=CoA, dst=HA) IPv6 Home Address Option ESP Header Mobility header -BU Mobility Options - Binding Identifier mobility options (C flag is set, O flag is optional, BID and CoA are stored) Figure 3: Binding Update forBindingBulk Registration If the mobile node wants to replace existing registered bindings on the home agent with the bindings in the sent Binding Update, itcan set Osets the 'O' flag. Section 6.3 describes this registration procedure in detail. 5.5. Binding De-Registration When a mobile node decides to delete all the bindings for its homeaddress at a visiting network,address, itsimplysends a regularde- registrationde-registration Binding Updatewhichwith lifetimeisset tozero. Azero as defined in [RFC-3775]. The Binding Identifier mobility option is not required. If a mobile node wants to delete a particular binding(s) from its home agent and correspondentnodes (e.g. from foreign link),nodes, the mobile nodesimply sets zero lifetime for the sending binding update. Thesends a Binding UpdateMUST contain an appropriatewith lifetime set to zero and includes a Binding Identifier mobilityoption(s).option(s) with the BID(s) it wants to de-register. The receiver will remove only the care-of address(es) thatmatches tomatch(es) the specifiedBID. For the bulk de- registration, theBID(s). The care-of addresses fieldofin each mobility option SHOULD beomitted,omitted by the sender and MUST be ignored by the receiver. This is because the receiver will removeallthecare-of addresses matchingbinding that matches the specified BID. 5.6. Returning Home The mobile node may return to the home link, by attaching to the home link through one ofthe interfaces on the mobile node.its interfaces. When the mobile node wants to return home, it should be configured with information on what interface it needs to use. The mobile node may use only the interface with which it is attached to the home link, only the interfaces still attached to the visited link or use both interfaces attached to the home link and visited link simultaneously. The following describes each option in more detail. 5.6.1. Using only Interface attached to the Home Link The mobile node returns home and de-registers all the bindings as shown in Figure9. How to de-register8 and as defined in [RFC-3775]. De-registering all the bindings is the same as binding de-registration from foreign link described in Section 5.5.AllAfter the de-registration step, all the packets routed by the home agent are only forwarded to the interface attached to the home link, even if there are other active interfaces attached to the visited link. While the mobile node de-registers all the bindings from the home agent, it may continue registering bindings for interface attached to visited link to the correspondent node as shown in Figure9. These bindings at correspondent node MUST be created before a mobile node returns home.8. 5.6.2. Using only Interface attached to the Visited Link The mobile node returns home andshutdownshuts down the interface attached to the home link as shown in Figure10. The9. Before shutting down the interface, any bindingoffor the care-of address previously associated with thehome attachedinterfaceMUSTshould be deleted. To delete the binding cache entry, the mobile node SHOULD send a de-registration Binding Update with the lifetime set to zero and include the corresponding BID information. If the mobile node does not send a de-registration Binding Update, the binding for the care-of address previously assigned to the interface remains at the home agent. This binding is deletedby sendingonly when it expires. In order to avoid this, the mobile node SHOULD send a de-registration binding updatefrom one of activefor the interface attached to theforeign links.home link. This scenario is not the most efficient because all the trafficfrom andto and from the mobile node is going through thebi- directionalbi-directional tunnel, whereas the mobile node is now accessible at one hop on the home link from its home agent. 5.6.3. Simultaneous Home and Visited Link OperationTheIn this case, the mobile node returns home and continues using all the interfaces attached to both foreign and home links as shown in Figure11.10. The mobile node indicates this by setting the 'H' flag in the BID mobilityoption.option as defined below. There are additional requirements on the Returning Home procedures for possible ND conflicts at the home link described below. In[RFC3775],[RFC-3775], the home agent intercepts packets meant for the mobile node using proxyNDPNeighbor Discovery while the mobile node is away from the home link. When the mobile node returns home, the home agent deletes the binding cache andstop the proxy NDPstops proxying for the home address so that a mobile node can configure its home address on the interface attached to the home link. In this specification, a mobile node may return home, configure the homewhile it keeps severaladdress on the interface attached to the home link, but still use the interfaces attached to the foreignlinks and continues using them. Therefore, even though bothlinks. In this case, a possible conflict arises when themobile node andboth the home agentneed to intercept packets,and theND states ofmobile node try to defend the homeaddress can conflict betweenaddress. If the home agentand the mobile node. For instance, if the proxy NDstops proxying for theHome Address is stopped by thehomeagent,address, the packets are always routed to the interface attached to the home link and are never routed to theinterfaceinterfaces attached to theforeign link.visited links. It is required to avoidthis ND conflicts inthecase ofconflict between the home agent and the mobile node, while still allowing the simultaneous use of home and foreignattachment.links. The following describes the mechanism for achieving this. In this specification, the home agent MUST intercept all the packets meant for the mobile node and decide whether to send the traffic directly to the home address on the link or tunnel to the care-of address. The home agent intercepts all the packets even when the mobile node is attached to the home link through one of its interfaces. The home agent would make this decision based on the type of packets and flows. How to make this decision is out of scope in this document. Thedelicatecritical part would be to create a neighbor cache entry for the mobile node so that the home agent can deliver the packets on-link. The home agent would need to know the Layer-2 address of the interface with which the mobile node is attached to the home link. In order to create the neighbor cache entry for the mobile node, following operations are required. The mobile node sends a de-registrationbinding updateBinding Update to the home agent from the interface attached to the home link. In the Binding Update, the BID mobility option mustbe stored forinclude the BIDassignedthe mobile node had previously associated with the interface attached to theinterface.home link. TheH'H' flag MUST be set in the BID mobility option. The 'C' flag MUST NOT be set and the care-of address field MUST NOT be included. When theH'H' flag isappears,set, the home agentlearns and remembersrecognizes that the mobile node wants to continue using interfaces attached to bothforeign andhome and visited links. IfHthe 'H' flag is unset, the home agent deletes either all the bindings or the binding corresponding to theBID.BID included in the Binding Identifier mobility option. When the home agent sends the BindingAcknowledgment,Acknowledgement, it MUSTstore one of twoset the statusvalues such asvalue to either 0 [Binding UpdateAccepted (0)] [MCOA RETURNHOMEAccepted] or to [MCOARETURNHOME WO/NDP (TBD)] in the BID mobility option depending on home agent configuration at the home link. The new values are: o Binding Update Accepted (0): NDP is permitted for the home address at the home link. This is regular returning home operation of[RFC3775][RFC-3775] o MCOA RETURNHOME WO/NDP (TBD): NDP is prohibited for the home address at the home link When the home agent is the only router at the home link, it can intercept all the packets by normal IP routing withoutproxy NDP.using proxying for the home address. It stops proxy ND for the requested home address andrepliesresponds with the [Binding Update Accepted] status value to the mobile node. The neighbor cache entry for the mobile node is created by the regularNDP operation (i.e. NS/NA exchange). On the other hand, ifexchange of Neighbor Solicitation and Neighbor Advertisement. If the home agent is not the onlyrouter,router on the home link, it MUST continue defending the home address by proxyNDPneighbor discovery in order tocapture allintercept the mobile node's traffic. The home agent, then, returns [MCOA RETURNHOME WO/NDP] value in the Status field of the BID mobility option. The home agent also learns the mobile node's layer-2 address(i.e.(i.e., MAC address) during this bindingde- registration.de-registration. Itkeepsstores thelearnedlearnt layer-2 addressas thein a neighbor cache entry for the mobile node so that it can construct the layer-2 header for the packets meant for the mobile node and forwards them directly to the mobile node's interface attached to the home link. According to[RFC3775],[RFC-3775], the mobile node MUST NOT assign the home address to the interface attached to the home link and MUST NOT attempt NDP operations for the home address before the completion of binding de-registration. It MUST NOT send and reply to Neighbor Solicitation for the home address. The home address MUST be tentative address at this moment until it receives BindingAcknowledgmentAcknowledgement with success status value. When the mobile node receives thebinding acknowledgmentBinding Acknowledgement and BID mobility option, it assigns home addressatto the interface attached to the home link according to the status field of the BID. If the value is [Binding Update Accepted], the mobile node can start defending the home address usingNDP. The home agent can create neighbor cache entry forregular Neighbor Discovery. If the mobile nodeby NS and NA exchange as normal IPv6 operation. If the home agentreceives the [MCOA RETURNHOME WO/NDP], it MUST NOTdefendsdefend its home addressaton the homelink by NDP.link. When the mobile node sends packets from the interface attached to the home link, it MUST learn thelayer2layer 2 address(i.e.(i.e., MAC address) of the next hop (i.e. default router, it can be home agent) during the binding de- registration and construct the packet including layer 2 header with thelearned home agent'slearnt layer-2address.address of the default router or the home agent. 5.7. Receiving BindingAcknowledgmentAcknowledgement The verification of a BindingAcknowledgmentAcknowledgement is the same as Mobile IPv6 (section 11.7.3 of [RFC-3775]). The operation for sending a BindingAcknowledgmentAcknowledgement is described in Section 6.3. If a mobile node includes a Binding Identifier mobility option in a Binding Update withAthe 'A' flag set, a BindingAcknowledgmentAcknowledgement MUST carry a Binding Identifier mobilityoption in the Mobility Options field.option. If no such mobility option is included in the BindingAcknowledgment repliedAcknowledgement in response tothea Binding Update forthemultiple care-of address registration, this indicates that theoriginatororiginating node ofthisthe BindingAcknowledgment mightAcknowledgement does notrecognizesupport processing the Binding Identifier mobility option. The mobile nodeSHOULDMUST then stopregisteringmultiple care-ofaddresses by using a Binding Identifier mobility option.address registration with that node. If a Binding Identifier mobility option is present in the received BindingAcknowledgment,Acknowledgement, the mobile node checks theregistrationstatusforfield in theCare-of address(es). The status value MUST be retrieved as follows.option. If the status value in the Binding Identifier mobility option is zero, the mobile node uses the value in the Status field of the BindingAcknowledgment.Acknowledgement. Otherwise, it uses the value in the Status field of the Binding Identifier mobility option. If the status code is greater than or equal to 128, the mobile node starts relevant operations according to the error code. Otherwise, the mobile node assumes that the originator (home agent or correspondent node) successfully registered the binding information and BID for the mobile node. o If the Status value is [MCOA PROHIBITED], the mobile node MUSTgive upstop registering multiple bindings to thepeer sendingnode that sent the BindingAcknowledgment. It MUST return to the regular Mobile IPv6 [RFC-3775] for the peer node.Acknowledgement. o If the Status value is [MCOA BULK REGISTRATION NOT SUPPORT], the mobile node SHOULD stop using bulkregistration toregistrations with thepeer sendingnode that sent the BindingAcknowledgment.Acknowledgement. o If [MCOA MALFORMED] is specified, it indicates that the binding identifier mobility option is formatted wrongly.For example, if the C flag is set, all mobility options MUST have C flag. It is same for O flag. How to handle other error status codes is specified in [RFC-3775].o If [MCOA BID CONFLICT] is specified, the binding entry specified by the Binding Identifier mobility option is already registered as a regular binding. In such case, the mobile node SHOULD stop sending Binding Updates with BID, or SHOULD useO flag forthepeer'O' flag to reset all the registered bindings. 5.8. Receiving Binding Refresh Request The verification of a Binding Refresh Request is the same as in Mobile IPv6 (section 11.7.4 of [RFC-3775]). The operation of sending a Binding Refresh Request is described in section Section 6.4. If a mobile node receives a Binding Refresh Request with a Binding Identifier mobility option,thisit indicates that the node sending the Binding Refresh Requestrequestsmessage is requesting the mobile node to send a newbinding indicated byBinding Update for the BID. The mobile node SHOULDupdatethen send a Binding Update only for the respective binding. The mobile node MUSTputinclude a Binding Identifier mobility optionintoin the BindingUpdate sent to refresh the entry.Update. If no Binding Identifier mobility option is present in a Binding Refresh Request, the mobile node sends a Binding Update according to its Binding Update List. On the other hand, if the mobile node does not have any Binding Update List entry for the requesting node, the mobile node needs to register either a single binding or multiple bindings depending on its binding management policy. 5.9.Sending Packets to Home Agent When a multihomed mobile node sends packets to its home agent, there are conceptually two ways to construct packets. 1. Using Home Address Option. (required additional 24 bytes) 2. Using IPv6-IPv6 tunnel. (required additional 40 bytes) Beside the additional size of packets, no difference is observed between these two. The routing path is always the same and no redundant path such as dog-leg route occurs. However, in this document, the mobile node is capable of using multiple care-of addresses for outgoing packets. This is problem in home agent side because they must verify the Care-of address for all the packets received from the mobile node (i.e. ingress filtering). When it uses the Home Address option, the home agent MAY check the care-of address in the packet with the registering binding entries. This causes additional overhead to the home agent. Therefore, the mobile node SHOULD use the bi-directional tunnel even if it registers a binding(s) to the home agent. 5.10.Bootstrapping When a mobile node bootstraps and registers multiple bindingsatfor the first time, itSHOULDMUST setOthe 'O' flag in the Binding Identifier mobility option. If old bindings still exists at theHome Agent,home agent, the mobile node has noway to knowknowledge of which bindingsarestillremainedexist at the home agent. This scenario happens when a mobile node rebootswithout correct de-registration.and looses state regarding the registrations. IfOthe 'O' flag isused,set, all the bindings are replacedtoby the new binding(s).Thus, the garbage bindings are surely replaced by new bindings registered with the first Binding Update.If the mobile node receives the BindingAcknowledgmentAcknowledgement with the status code set to 135 [Sequence number out of window], it MUST retry sending a Binding Update with the last accepted sequence numberwhich is notified byindicated in the BindingAcknowledgment. For Correspondent nodes, the mobile node cannot use the OAcknowledgement. The 'O' flagbecause of no bulk registration support. Thus, if necessary, it MUST sends a regular binding firstcan also be used in individual Binding Updates sent tooverwritetheremaining bindingscorrespondent nodes to override any existing binding cache entries at the correspondent node.Then, it can re-register the set of bindings by using Multiple Care-of Address Registration.6. Home Agent and Correspondent Node Operation 6.1. Searching Binding Cache with Binding Identifier If either a correspondent node or a home agent has multiple bindings for a mobile node in their binding cache database, it can use any of the bindings to communicate with the mobile node.HowThis section explains how toselectretrieve themost suitabledesired bindingfromfor the bindingcache database is out of scope in this document. Whenever a correspondent node searches amanagement. This document does not provide any mechnaism to select the suitable bindingcachefora home address, itforwarding data packets. A correspondent node SHOULDusesuse both theHome Addresshome address and the BID as the search key of the binding cache if it knows the correspondingBID.BID (ex. when processing signaling messages). In the example below, if a correspondent node searches the binding with theHome Addresshome address and BID2, it gets binding2 for this mobile node. binding1 [a:b:c:d::EUI, care-of address1, BID1] binding2 [a:b:c:d::EUI, care-of address2, BID2] binding3 [a:b:c:d::EUI, care-of address3, BID3] Figure 4: Searching the Binding Cache A correspondent nodebasicallylearns the BID when it receives a Binding Identifier mobility option. Atthethat time, the correspondent node MUST look up its binding cache database with theHome Addresshome address and the BID retrieved from the Binding Update. If the correspondent node does not know the BID, it searches for a binding with onlya Home Address as performed in Mobile IPv6.the home address. In such a case, the first matched binding is found.But which binding entry is returned for the normal search depends on implementations.If the correspondent node does not desire to use multiple bindings for a mobile node, it can simply ignore the BID. 6.2. Receiving CoTI and Sending CoT When a correspondent node receives a CoTI message which contains a Binding Identifier mobility option, itMUST processprocesses itwith following steps. First of all,as follows. First, the CoTI message is verifiedaccording toas specified in [RFC-3775]. The Binding Identifier mobility optionMUST be, then,is processed as follows: o If a correspondent node does not understand a Binding Identifier mobility option, it just ignores andskip thisskips processing the option. The calculation of a care-of Keygen token will thus be done without a BID value. The correspondent node returns a CoT message without a Binding Identifier mobility option. The mobile nodecan thus knowknows whether the correspondentcan processsupports processing the Binding Identifier mobilityoption or not,option, by checking ifsuchthe option is present in the CoT message. o If either the 'C' orboth C and Othe 'O' flag is set in the Binding Identifier mobility option, theCorrespondentcorrespondent Node SHOULD NOT calculate a care-of Keygentoken andtoken, but MUST include a Binding Identifier mobility optionwhichwith status value set to [MCOA MALFORMED] in thereturnedCare-of Test message. o Otherwise, the correspondent node MUST include a Binding Identifier mobility optionwhichwith status valueMUST beset to zero (success) in thereturning a CoTCare-of Test message. oAll the Binding Identifier mobility options SHOULD be copied from the received one except for the Status Field for CoT.The Care-of address field of each Binding Identifier mobility option,however,can be omitted, because the mobile node canmatch aidentify the correspondingbinding updateBinding Update listbyentry using the BID. 6.3. Processing Binding Update If a Binding Update does not contain a Binding Identifier mobility option, its processing is same as in [RFC-3775].But ifIf the receiver already has multiple bindings for the home address, it MUST replace all the existing bindings by the received binding. As a result, the receiver node MUST have onlyaone binding cache entry for the mobile node. If the Binding Update is for de-registration, the receiver MUST delete all existing bindings from its Binding Cache. Ifathe Binding Update contains a Binding Identifier mobility option(s), it is first validated according to section 9.5.1 of[RFC-3775] and the following step. o If the home registration flag is set in[RFC- 3775]. Then theBinding Update, the home agent MUST carefully operate Duplicate Address Detection (DAD) for the received Home Address. If the home agent has already had a binding(s) for the Mobile Node, it MUST avoid running DAD check when it receives the Binding Update. Thereceivernode MUST processprocesses the Binding Identifier mobility option(s) as described in the following steps.When a correspondent node sends a Binding Acknowledgment, the status value MUST be always stored in the Status field of the Binding Acknowledgment and keep the Status field of Binding Identifier mobility option to zero. For the Home Agent, the status value can be stored in the Status field of either a Binding Acknowledgment or a Binding Identifier mobility option. If the status value is specific to one of bindings in the bulk registration, the status value MUST be stored in the Status field in the corresponding Binding Identifier mobility option. In this case, [MCOA NOTCOMPLETE] MUST be set to the Status field of the Binding Acknowledgment so that the receiver can examine the Status field of each Binding Identifier mobility option for further operations.o The length value is examined. The length value MUST be either 4, 8, or 20 depending onCthe 'C' andD flag.'D' flags. If the length is incorrect, the receiver MUSTrejectsreject the Binding Update and returns the status value set to [MCOA MALFORMED]. o WhenCthe 'C' flag isspecified,set, the care-of address MUST begivenpresent in the Binding Identifier mobility option.Otherwise,If the care-of address is not present, the receiver MUST reject the Binding Identifier mobility option and returns the status value set to [MCOA MALFORMED]. The operation ofD'D' flag is described in Section 8 o When multiplebindingBinding Identifier mobility options arepresented, the receiver MUST supportpresent in the Binding Update, it is treated as bulk registration.Only a home agent can acceptIf thebulk registration. Otherwise,receiving node is a correspondent node, it MUST reject the Binding Update and returns the status value in the binding acknowledgement set to [MCOA BULK REGISTRATION NOT SUPPORT]in the Binding Acknowledgment.o If the Lifetime fieldofin the Binding Update is set to zero, thereceiverreceiving node deletes the binding entrywhich BID is same asthat corresponds to the BIDsent byin the Binding Identifier mobility option. If thereceiverreceiving node does not have an appropriate bindingwhich BID is matched withfor theBinding Update,BID, it MUST rejectthis de-registrationthe Binding Updatefor the binding cache. If the receiver isand send aHome Agent, it SHOULD also return theBinding Acknowledgement with statusvalueset to 133 [notHome Agenthome agent for this mobilenode, 133].node]. o IfOthe 'O' flag is set in the de-registering Binding Update,the receiver can ignore this flag for de-registration.it is ignored. If theH'H' flag is set, the home agent stores aHome Addresshome address in the Care-of Address field of the binding cache entry. The home agentno longer performsalso stops performing proxyNDPND forthisthe mobilenode until this entry is deleted.node's home address. o If the Lifetime field is not set to zero, thereceiverreceiving node registers a binding with the specified BID as a mobile node's binding. The Care-of address ispickedobtained from the Binding Update packet as follows: * IfCthe 'C' flag is set in the Binding Identifier mobility option, the care-of addressmust be takenis copied from the care-of address field ineachthe Binding Identifier mobility option. * IfCthe 'C' flag is not set in the Binding Identifier mobility option, the care-of addressmust be takenis copied from theSource Addresssource address field of the IPv6 header. * IfCthe 'C' flag is not set and an alternate care-of address is present, the care-of address istakencopied from the Alternate Care-of address mobility option. o Once the care-of address(es)hashave been retrieved from the Binding Update,it starts registeringthe receiving nodes creates new binding(s). *Only if OIf only the 'O' flag is set in the Binding Identifier mobility option, the home agentfirstremoves all the existing bindings and registers the received bindings. * If the receiver has a regular binding which does not have BID for the mobile node, itde-registersmust not process theregularbindingand registersupdate. The receiver should sent anewbindingincluding BID accordingacknowledgement with status set tothe Binding Update. In this case, the receiver MUST return[MCOA BID CONFLICT]. * If the receivernode hasalreadyregistered thehas a bindingwhich BID is matchedwithrequesting BID, thenthe same BID but different care-of address, it MUST update the bindingwith the Binding Updateandreturns [0respond with a Binding Acknowledgement with status set to 0 [Binding Update accepted]. * If the receiver does not have a binding entrywhich BID is matched withfor therequestingBID, it registers a new binding for the BID andreturns [0responds with a Binding Acknowledgement with status set to 0 [Binding Update accepted]. If all the above operations are successfullyfinished, thecompleted, a BindingAcknowledgmentAcknowledgement containing the Binding Identifier mobility options MUST berepliedsent to the mobilenode if A flag is set in the Binding Acknowledgment.node. Whenever a BindingAcknowledgmentAcknowledgement isreturned,sent, all the Binding Identifier mobility options stored in the Binding Update MUST be copied to the BindingAcknowledgment.Acknowledgement except the status field. The Care-of address fieldofin each Binding Identifier mobility option, however, can be omitted, because the mobile node can match a corresponding binding update listbyentry using the BID. When a correspondent node sends a Binding Acknowledgement, the status value MUST be always stored in the Status field of the Binding Acknowledgement and the Status field of Binding Identifier mobility option set to zero. For the home agent, the status value can be stored in the Status field of either a Binding Acknowledgement or a Binding Identifier mobility option. If the status value is specific to one of bindings in the bulk registration, the status value MUST be stored in the Status field in the corresponding Binding Identifier mobility option. In this case, [MCOA NOTCOMPLETE] MUST be set to the Status field of the Binding Acknowledgement so that the receiver can examine the Status field of each Binding Identifier mobility option for further operations. 6.4. Sending Binding Refresh Request When a node (home agent or correspondent node) sends a Binding Refresh Request for a particular bindingregisteringcreated with the BID, the node SHOULDcontain ainclude the Binding Identifier mobility option in the Binding Refresh Request. If the mobile node had used bulk registration, the sender SHOULD include all the Binding Identifier mobility options. If the mobile node had not used bulk registration, the sender includes the Binding Identifier mobility options only for those bindings that need to be refreshed. 6.5. Receiving Packets from Mobile Node When a node receives packets with a Home Address destination option from a mobile node, it MUST check that the care-of addressappearedthat appears in theSource Addresssource address field of the IPv6 header MUST be equal to one of the care-of addresses in the binding cache entry. If no binding is found, the packets MUST be silentlydiscarded anddiscarded. The node MUST also send a Binding Error messageaccording to RFC3775.as specified in [RFC-3775]. This verification MUST NOT be done for a Binding Update. 7. Network Mobility ApplicabilitySupport of multihomed mobile routers is advocated in the NEMO working group (see R12 "The solution MUST function for multihomed MR and multihomed mobile networks" in [RFC-4886]. Issues regarding mobile routers with multiple interfaces and other multihoming configurations are documented in [RFC-4980]. Since theThe binding management mechanisms are the same for a mobile hostoperatingthat uses Mobile IPv6 and for a mobile routeroperatingthat is using the NEMO Basic Support(RFC 3963), ourprotocol [RFC-3963]. Therefore the extensions described in this document can also be used todealsupport a mobile router with multiple care-ofaddresses registration sent from a multihomed mobile router. Figure 5 shows an example format of a Binding Update used by a mobile router. IPv6 header (src=CoA, dst=HA) IPv6 Home Address Option ESP Header Mobility header -BU Mobility Options - Binding Identifier - Mobile Network Prefix Figure 5: NEMO Binding Updateaddresses. 8. DSMIPv6 Applicability Dual Stack Mobile IPv6 (DSMIPv6) [ID-DSMIPv6] extends Mobile IPv6 to register an IPv4 care-of address instead of the IPv6 care-of address when the mobile node is attached to an IPv4-only access network. It also allows the mobile node to acquire an IPv4 home address in addition to an IPv6 home address for use with IPv4-only correspondent nodes. This section describes how multiple care-of address registration works with IPv4 care-of and home addresses. 8.1. IPv4 Care-of Address RegistrationIn DSMIPv6,The mobile node can use the extensions described in the document to register multiple care-of addresses, even if some of the care-of addresses are IPv4 address. Bulk registration MUST NOT be used for the initial bindingupdatefrom an IPv4 care-of address. This is because, the Binding Update andacknowledgmentbinding acknowledgement exchange is used to detectNAT. Thus, when aNAT on the path between the mobile noderegisters its IPv4 care-of address bound to IPv6and the homeaddress, it MUST first attemptagent. So the mobile node needs tosend a Binding Update with Binding Identifier mobility option independently. The bulk registration MUST NOT be usedcheck forthe first binding update of thea NAT between each IPv4 care-ofaddress.address and the home agent. The Binding Update MUST be sent to the IPv4 home agent address by using UDP and IPv4 headers as shown in Figure6.5. It is similar to[DSMIP][ID-DSMIPv6] exceptfor using BID mobility option instead ofthat the IPv4 care-of addressoption.option MUST NOT be used when the BID mobility option is used. IPv4 header (src=V4ADDR, dst=HA_V4ADDR) UDP Header IPv6 header (src=V6HoA, dst=HAADDR) ESP Header Mobility header -BU Mobility Options - Binding Identifier (IPv4 CoA) Figure6:5: Initial Binding Update for IPv4 Care-of AddressWhen the home agent detects NAT for the received binding update, it MUST send the NAT detection option in the Binding Acknowledgment. Whenever the NAT detection option is found, the mobile node MUST NOT use the bulk registration for the IPv4 care-of address. Otherwise, it can send the IPv4 care-of address with other care-of addresses in the bulk registration mode. How to handle NAT is same as [DSMIP].If a NAT is not detected, the mobile node can update the IPv4 care-of address by usingBULKbulk registration. The mobile node can register the IPv4 care-of address along with other IPv4 and IPv6 care-of addresses. Figure76 shows thebinding updateBinding Update format when the mobile node sends a Binding Update from one of its IPv6 care-of addresses. If the mobile node sends a BU from IPv4 care-of address, it MUSTfollowsfollow theFigure 6 and store more BID mobility optionsformat described inthe mobility options field.Figure 5. Note that the IPv4 Care-of Address must be registered by non bulk Binding registration, whenever it is changed.NAT detection MUST be carried out for every new IPv4 addresses.IPv6 header (src=V6CoA, dst=HAADDR) IPv6 Home Address Option ESP Header Mobility header -BU Mobility Options - Binding Identifier (IPv6/v4 CoA) - Binding Identifier (IPv6/v4 CoA) - ... Figure7:6: Binding Bulk Registration for IPv4 care-of address If theIPv4 care-of address is successfully registered, the mobile node sets up a relevant tunnel to the home agent according to [DSMIP]. If thehome agent rejects the IPv4 care-of address, it MUST store the error code value in the Status field of the BID mobility option.The home agent MUST send the binding acknowledgment and all the received BID mobility options to the mobile node. In this case, the IPv4 address acknowledgment option MUST NOT be included in the Binding Acknowledgment. All the error codes for IPv4 care-of address registration MUST be stored in the Status field of the BID mobility option. The IPv4 address acknowledgment option is used only when a mobile node requests IPv4 home address management.8.2. IPv4 HoA Management When the mobile nodeobtainswants to configure an IPv4 home address in addition to the IPv6 home address, itMUST storecan request for one using the IPv4 Home Address option in the Binding Update. If the home agent accepts thebinding update,Binding Update, the mobile node canalsonow register multiple care-of addresses for the IPv4 home address in addition to the IPv6 home address. The same set of care-of addresses will be registered for both IPv6 and IPv4 home addresses. The mobile node cannotbindingbind different set of care-of addresses to each home address.TheAccording to [ID-DSMIPv6], the home agentMUST returns a binding acknowledgment andincludes the IPv4 addressacknowledgmentacknowledgement optiontoin themobile nodeBinding Acknowledgement onlywhen aif the mobile noderequestshad requested for an IPv4 home addressmobility management. In this case, thisin the corresponding Binding Update. The IPv4 address acknowledgement option MUST bepresentedpresent before any BIDoptions.option. The status field of the IPv4 addressacknowledgmentacknowledgement option contains only the error coderegardingcorresponding to the IPv4 home address management. The errorvalue ofvalues related to the IPv4 care-of address registration MUST be stored in the BID mobility option. 9. IPsec and IKEv2 interaction Mobile IPv6 [RFC-3775] and the NEMO protocol [RFC-3963] require the use of IPsec to protect signaling messages like Binding Updates, BindingAcknowledgmentsAcknowledgements and return routability messages. IPsec may also be used protect allreversetunneled data traffic. The MobileIPv6-IKEv2IPv6- IKEv2 specification [RFC-4877] specifies how IKEv2 can be used to setup the required IPsec security associations. The following assumptions were made in [RFC-3775], [RFC-3963] andthe MIP6-IKEv2 specification[RFC-4877] with respect to the use of IKEv2 and IPsec. o There is only one primary care-of address per mobile node. o The primary care-of address is stored in the IPsec database for tunnel encapsulation and decapsulation. o When the home agent receives a packet from the mobile node, the source address is verified against the care-of address in the corresponding binding cache entry. If the packet is a reverse tunneled packet from the mobile node, the care-of address check is done against the source address on the outer IPv6 header. The reverse tunnel packet could either be a tunneled HoTi message or tunneled data traffic to the correspondent node. o The mobile node runs IKEv2 (or IKEv1) with the home agent using the care-of address. The IKE SA is based on the care-of address of the mobile node. The above assumptions may not be valid when multiple care-of addresses are used by the mobile node. In the following sections, the main issues with the use of multiple care-of address with IPsec are addressed. 9.1. Use of Care-of Address in the IKEv2 exchange For each home address the mobile node sets up security associations with the home agent, the mobile node must pick one care-of address and use that as the source address for all IKEv2 messages exchanged to create and maintain the IPsec security associations associated with the home address. The resultant IKEv2 security association is created based on this care-of address. If the mobile node needs to change the care-of address, it just sends a Binding Update with the care-of address it wants to use, with the corresponding Binding Identifier mobility option, and with the 'K' bit set. This will force the home agent to update the IKEv2 security association to use the new care-of address. If the 'K' bit is not supported on the mobile node or the home agent, the mobile node MUST re-establish the IKEv2 security association with the new care-of address. This will also result in new IPsec security associations being setup for the home address. 9.2. Transport Mode IPsec protected messages For Mobile IPv6 signaling message protected using IPsec in transport mode, the use of a particular care-of address among multiple care-of addresses does not matter for IPsec processing. For Mobile Prefix Discovery messages, [RFC-3775] requires the home agent to verify that the mobile node is using the care-of address that is in the binding cache entry that corresponds to the mobile node's home address. If a different address is used as the source address, the message is silently dropped by the home agent. This document requires the home agent implementation to process the message as long as the source address isisone of the care-of addresses in the binding cache entry for the mobile node. 9.3. Tunnel Mode IPsec protected messages The use of IPsec in tunnel mode with multiple care-of address introduces a few issues that require changes to how the mobile node and the home agent send and receive tunneled traffic. The route optimization mechanism described in [RFC-3775] mandates the use of IPsec protection in tunnel mode for the HoTi and HoT messages. The mobile node and the home agent may also choose to protect all reverse tunneled payload traffic with IPsec in tunnel mode. The following sections address multiple care-of address support for these two types of messages. 9.3.1. Tunneled HoTi and HoT messages The mobile node MAY use the same care-of address for all HoTi messages sent reverse tunneled through the home agent. The mobile node may use the same care-of address irrespective of which correspondent node the HoTi message is being sent. RFC 3775 requires the home agent to verify that the mobile node is using the care-of address that is in the binding cache entry, when it receives a reverse tunneled HoTi message. If a different address is used as the source address, the message is silently dropped by the home agent. This document requires the home agent implementation to decapsulate and forward the HoTi message as long as the source address is one of the care-of addresses in the binding cache entry for the mobile node. When the home agent tunnels a HoT message to the mobile node, the care-of address used in the outer IPv6 header is not relevant to the HoT message. So regular IPsec tunnel encapsulation with the care-of address known to the IPsec implementation on the home agent is sufficient. 9.3.2. Tunneled Payload Traffic When the mobile sends and receives multiple traffic flows protected by IPsec to different care-of addresses, the use of the correct care-of address for each flow becomes important. Support for this requires the following two considerations on the home agent. o When the home agent receives a reverse tunneled payload message protected by IPsec in tunnel mode, it must check that the care-of address is one of the care-of addresses in the binding cache entry. According to RFC 4306, the IPsec implementation on the home agent does not check the source address on the outer IPv6 header. Therefore the care-of address used in the reverse tunneled traffic can be different from the care-of address used as the source address in the IKEv2 exchange. However, the Mobile IPv6 stack on the home agent MUST verify that the source address is one of the care-of addresses registered by the mobile node before decapsulating and forwarding the payload traffic towards the correspondent node. o For tunneled IPsec traffic from the home agent to the mobile node, The IPsec implementation on the home agent may not be aware of which care-of address to use when performing IPsec tunnel encapsulation. The Mobile IP stack on the home agent must specify the tunnel end point for the IPsec tunnel. This may require tight integration between the IPsec and Mobile IP implementations on the home agent. 10. Security ConsiderationsAs shown in Section 9,The security considerations for securing theMultiple Care-of Addresses Registration requires IPsec protectionBinding Update and binding acknowledgement messages with multiple care-of address are very similar to the security considerations forallsecuring thesignaling between a mobile nodeBinding Update andits home agent.binding acknowledgement. Please see [RFC-3775] for more information. The Binding Update and binding acknowledgement messages with multiple care-of addresses MUST be protected using IPsec as show in Section 9. Additional security considerations are described below. With simultaneous binding support, it is possible for a malicious mobile node to successfully bind a number of victims' addresses as valid care-of addresses for the mobile node with its home agent. Once these addresses have been bound, the malicious mobile node can perform a re-direction attack by instructing the home agent (e.g. setting filtering rules to direct a large file transfer) to tunnel packets to the victims' addresses. Such risk is highlighted in [ID-MIP6ANALYSIS] and isMIP6ANALYSIS]. These attacks are possible because the care-of addressesspecifiedsent by the mobile node in thebinding updateBinding Update messages are not verified by home agent, i.e., the home agent(sincedoes not check if the mobile node is at the care-of address it is claiming to be. The security model for Mobile IPv6 assumesan existingthat there is a trust relationship between the mobile node and its homeagent).agent. Any malicious attack by the mobile node is traceable by the home agent. This acts as a deterrent for the mobile node to launch such attacks. Although such risk exists in Mobile IPv6, the risk level is escalated when simultaneous multiple care-of address bindings are performed.One fundamental difference is the degree of risk involved is much greater in the simultaneous binding support case. For a single care-of address binding,In Mobile IPv6, a mobile node can only have a single care-of address binding per home address at a given time. However, for simultaneous multiple care-of address bindings, a mobile node can have more than one care-of address binding per home address at a given time. This implies that a mobile node using simultaneous binding support can effectively bind more than a single victim's address. Anotherfundamentaldifference is theformdegree of risk involved. In the single care-of address binding case, once there- directionre-direction attack is initiated, a malicious mobile node would be unable to use its home address for communications (such as to receive control packets pertaining to the file transfer). However, in the simultaneous binding support case, a malicious mobile node could bind a valid care-of address in addition to multiple victims addresses. This valid care-of address could then be used by the malicious mobile node to set up flow filtering rules at its home agent, thereby controlling and/or launching newre-directionre- direction attacks. Thus, in view of suchrisk,risks, it is advisable for a home agent to employ some form of care-of address verification mechanism before using the care-of addresses as a valid routing path to a mobile node.Some solutionsSolutions related toadvert such problemsthis are described inAppendix.[ID-COAVERIFY]. 11. IANA Considerations The following Extension Types MUST be assigned by IANA: o Binding Identifier mobility optiontype:Thistype: This must be assigned from the same space as mobility option in[RFC3775].[RFC-3775]. o New Successful Status of BindingAcknowledgment:ThisAcknowledgement: This status code must be assigned from the same space as binding acknowledgement status codes in[RFC3775].[RFC-3775]. * MCOA NOTCOMPLETE (TBD) o New Unsuccessful Status of BindingAcknowledgment:Acknowledgement: These status codes must also be assigned from the same space as binding acknowledgement status codes in[RFC3775].[RFC-3775]. * MCOA MALFORMED (TBD) * MCOA BID CONFLICT (TBD) * MCOA PROHIBITED(TBD) * MCOA BULK REGISTRATION NOT SUPPORTED (TBD) 12.AcknowledgmentsAcknowledgements The authors would like to thank MasafumiAramoto (Sharp Corporation),Aramoto, GeorgeTsirtsis (Qualcomm),Tsirtsis, KeigoAso (Panasonic),Aso, Julien Charbon, TeroKauppinen (Ericsson),Kauppinen, BenjaminLim (Panasonic),Lim, Susumu Koshiba, MarttiKuparinen (Ericsson),Kuparinen, RomainKuntz (Keio-U),Kuntz, HeikkiMahkonen (Ericsson),Mahkonen, HirokiMatutani (Tokyo-U),Matutani, KoshiroMitsuya (Keio-U),Mitsuya, Nicolas Montavont, KojiOkada (Keio-U),Okada, KeisukeUehara (Keio-U),Uehara, Masafumi Watari(KDDI R&D)in alphabetical order, and the Jun MuraiLab.Laboratory at the KEIO University. 13. References 13.1. Normative References[RFC-2460] Deering, S. and R. Hinden, "Internet Protocol Version 6 (IPv6)", IETF RFC 2460, December 1998.[RFC-3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in IPv6", RFC 3775, June 2004. [RFC-3963] Devarapalli, V., Wakikawa, R., Petrescu, A., and P. Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963, January 2005.[ID-MIP6ANALYSIS] Montavont, N., Wakikawa, R., Ernst, T., Ng, C., and K. Kuladinithi, "Analysis of Multihoming in Mobile IPv6", draft-ietf-monami6-mipv6-analysis-04 (work in progress), Novemver 2007.[RFC-2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.[RFC-3753] Manner, J. and M. Kojo, "Mobility Related Terminology", RFC 3753, June 2004. [RFC-4885] Ernst, T. and H. Lach, "Network Mobility Support Terminology", RFC 4885, July 2007. [RFC-4886] Ernst, T., "Network Mobility Support Goals and Requirements", RFC 4886, July 2007.[RFC-4877] Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with IKEv2 and the revised IPsec Architecture", RFC 4877, April 2007. 13.2. Informative References [ID-MOTIVATION] Ernst, T., Montavont, N., Wakikawa, R., Ng, C., and K. Kuladinithi, "Motivations and Scenarios for Using Multiple Interfaces and Global Addresses", draft-ietf-monami6-multihoming-motivation-scenario-02 (work in progress), July 2007 [RFC-4980] Ng, C., Paik, Ernst, and C. Bagnulo, "Analysis of Multihoming in Network Mobility Support", RFC 4980, October 2007.[RFC-3972] Aura,[ID-MIP6ANALYSIS] Montavont, N., Wakikawa, R., Ernst, T.,"Cryptographically Generated Addresses (CGA)", RFC 3972, March 2005. [RFC-4866] Arkko, J., Vogt,Ng, C., andW. Haddad, "Enhanced Route Optimization forK. Kuladinithi, "Analysis of Multihoming in Mobile IPv6",RFC 4866, Maydraft-ietf-monami6-mipv6-analysis-04 (work in progress), Novemver 2007.[RFC-792] Postel, J., "Internet Control Message Protocol", STD 5,[RFC-3753] Manner, J. and M. Kojo, "Mobility Related Terminology", RFC792, September 1981.3753, June 2004. [RFC-4885] Ernst, T. and H. Lach, "Network Mobility Support Terminology", RFC 4885, July 2007. [ID-DSMIPv6] Soliman, H., "Mobile IPv6 support for dual stack Hosts and Routers (DSMIPv6)", draft-ietf-mip6-nemo-v4traversal-06 (work in progress), November 2007. [ID-COAVERIFY] Lim, B., C. NG and K. Aso, "Verification of Care-of Addresses in Multiple Bindings Registration", draft-lim-mext-multiple-coa-verify-01 (work in progress), February 2008. Appendix A. Example Configurations In this section, we describe typical scenarios when a mobile node has multiple network interfaces and acquires multiple Care-of Addresses bound to aHome Address.home address. TheHome Addresshome address of the mobile node (MN in figures) is a:b:c:d::EUI. MN has 3 different interfaces and possibly acquires care-of addresses 1-3 (CoA1, CoA2, CoA3). The MN assigns BID1, BID2 and BID3 to each care-of address. +----+ | CN | +--+-+ | +---+------+ +----+ +------+ Internet |----------+ HA | | +----+---+-+ +--+-+ CoA2| | | | Home Link +--+--+ | | ------+------ | MN +========+ | +--+--+ CoA1 | CoA3| | +---------------+ Binding Cache Database: home agent's binding (Proxy neighbor advertisement is active) binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address3 BID3] correspondent node's binding binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address3 BID3] Figure8:7: Multiple Interfaces Attached to a Foreign Link Figure87 depicts the scenario where all interfaces of the mobile node are attached to foreign links. After binding registrations, the home agent (HA) and theCorrespondent Nodecorrespondent node (CN) have the binding entries listed in their binding cache database. The mobile node can utilize all the interfaces. +----+ | CN | +--+-+ | +---+------+ +----+ +------+ Internet |----------+ HA | | +--------+-+ +--+-+ CoA2| | | Home Link +--+--+ | --+---+------ | MN +========+ | | +--+--+ | | | CoA3| +---|-----------+ +---------------+ Binding Cache Database: home agent's binding none correspondent node's binding binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address3 BID3] Figure9:8: One of Interface Attached to Home Link and Returning Home Figure98 depicts the scenario where MN returns home with one of its interfaces. After the successful de-registration of the binding to HA, HA and CN have the binding entries listed in their binding cache database of Figure9.8. After de-registration, the ND state of the home address is managed by the MN. MN can communicate with the HA through only the interface attached to the home link. On the other hand, the mobile node can communicate with CN from the other interfaces attached to foreign links (i.e. route optimization). Even if MN is attached to the home link, it can still send Binding Updates for other active care-of addresses (CoA2 and CoA3) to CNs. If CN has bindings, packets are routed to each Care-of Addresses directly. Any packet arrived at HA are routed to the interface attached to the home link. +----+ | CN | +--+-+ | +---+------+ +----+ +------+ Internet |----------+ HA | | +----+-----+ +--+-+ CoA2| | | Home Link +--+--+ | --+---+------ | MN +========+ | +--+--+ CoA1 | | | +---------------------------+ (Disable interface) Binding Cache Database: home agent's binding binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] correspondent node's binding binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] Figure10:9: One of Interface Attached to Home Link and Not Returning Home Figure109 depicts the scenario where MN disables the interface attached to the home link and communicates with the interfaces attached to foreign links. HA continues managing the ND state of the home address by Proxy neighbor advertisement. The HA and the CN have the binding entries listed in their binding cache database. All packets routed to the home link are intercepted by the HA and tunneled to the other interfaces attached to the foreign link according to the binding entries. Topology-a) +----+ | CN | +--+-+ | +---+------+ +----+ +------+ Internet |----------+ HA | | +----+-----+ +--+-+ CoA2| | | Home Link +--+--+ | --+---+------ | MN +========+ | +--+--+ CoA1 | CoA3 | | +---------------------------+ Topology-b) +----+ | CN | +--+-+ | +---+------+ Router +----+ +------+ Internet |-------R | HA | | +----+-----+ | +--+-+ CoA2| | | | Home Link +--+--+ | --+-+-------+------ | MN +========+ | +--+--+ CoA1 | CoA3 | | +---------------------------+ Binding Cache Database: home agent's binding binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] correspondent node's binding binding [a:b:c:d::EUI care-of address1 BID1] binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address3 BID3] Figure11:10: Utilize Interfaces Attached to both Home and Foreign Links Figure1110 depicts the scenario where interfaces of MN are attached to both the home and foreign links. There are two possible topologies whether the HA is single router at the home link or not. The operation of ND is different in two topologies. The HA and CN have the binding entries listed in Figure1110 in their binding cache database regardless of topologies. The HA also knows that the MN has attached to the home link. All the traffic from the Internet are intercepted by the HA and routed to either the interface attached to the home link or the interfaces attached to the foreign links. How to make the decision is out of scope in this document. There are two different treatments of the ND state of the home address. o MN defends the home address by regular ND (topology-a) o HA defends the home address by Proxy ND (topology-b) The first case is required that the HA is the single exit router to the Internet and is capable of intercepting packets without relying on proxy ND. The MN can manage the ND of the home address on the home link. In the second case, the HA is not only router at the home link and cannot intercept all the packets meant for the MN by IP routing. The HA needs to run Proxy ND to intercept all the packets at the home link. Since the MN cannot operate the ND of its homeaddrssaddress at the home link, HA cannot resolve the layer-2 address of the MN at the home link. The HA MUST learn and record the layer-2 address (MAC address) of the MN's interface attached to the home link to forward packets. The packets forwarding is achieved without ND cache. The MN is also required to learn and record the layer-2 address of the HA's interface to send packets from the home link.Appendix B. Changes From Previous Versions Changes from draft-ietf-monami6-multiplecoa-04.txt o Binding Unique Identifier is renamed to Bidning Identifier o New Status Code [MCOA NOTCOMPLETE], the home agent uses this status code in the Binding Acknowledgement when not all the bindings are accepted in the bulk registration. o [MCOA FLAG CONFLICTS] are now merged with [MCOA MALFORMED] o Add care-of address verification issue in the Security Consideration, the text is proposed by Benjamin Lim. o Support DSMIPv6 o Support simultaneous foreign and home location. (Section 5.5) o Editorial updates, thanks George Tsirtsis for detailed comments!Authors' Addresses Ryuji Wakikawa (Editor) Faculty of Environment and Information Studies, Keio University 5322 Endo Fujisawa, Kanagawa 252-8520 Japan Phone: +81-466-49-1100 Fax: +81-466-49-1395 Email: ryuji@sfc.wide.ad.jp URI: http://www.wakikawa.org/ Thierry Ernst INRIA INRIA Rocquencourt Domaine de Voluceau B.P. 105 Le Chesnay, 78153 France Phone: +33-1-39-63-59-30 Fax: +33-1-39-63-54-91 Email: thierry.ernst@inria.fr URI: http://www.nautilus6.org/~thierry Kenichi Nagami INTEC NetCore Inc. 1-3-3, Shin-suna Koto-ku, Tokyo 135-0075 Japan Phone: +81-3-5565-5069 Fax: +81-3-5565-5094 Email: nagami@inetcore.com Vijay Devarapalli Azaire Networks 3121 Jay Street Santa Clara, CA 95054 USA Email: vijay.devarapalli@azairenet.com Full Copyright Statement Copyright (C) The IETF Trust (2008). 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, THE IETF TRUST 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. 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. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).