draft-ietf-monami6-multiplecoa-05.txt   draft-ietf-monami6-multiplecoa-06.txt 
Monami6 Working Group R. Wakikawa (Editor) MEXT Working Group R. Wakikawa (Ed.)
Internet-Draft Keio University Internet-Draft Keio University
Intended status: Standards Track T. Ernst Intended status: Standards Track T. Ernst
Expires: July 31, 2008 INRIA Expires: August 27, 2008 INRIA
K. Nagami K. Nagami
INTEC NetCore INTEC NetCore
V. Devarapalli V. Devarapalli (Ed.)
Azaire Networks Azaire Networks
January 28, 2008 February 24, 2008
Multiple Care-of Addresses Registration Multiple Care-of Addresses Registration
draft-ietf-monami6-multiplecoa-05.txt draft-ietf-monami6-multiplecoa-06.txt
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware 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 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. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 39 skipping to change at page 1, line 39
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on July 31, 2008. This Internet-Draft will expire on August 27, 2008.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2008). Copyright (C) The IETF Trust (2008).
Abstract Abstract
According to the current Mobile IPv6 specification, a mobile node may According to the current Mobile IPv6 specification, a mobile node may
have several care-of addresses, but only one, termed the primary have several care-of addresses, but only one, called the primary
care-of address, can be registered with its home agent and the care-of address, that can be registered with its home agent and the
correspondent nodes. However, for matters of cost, bandwidth, delay, correspondent nodes. However, for matters of cost, bandwidth, delay,
etc, it is useful for the mobile node to get Internet access through etc, it is useful for the mobile node to get Internet access through
multiple access media simultaneously, in which case multiple active multiple accesses simultaneously, in which case the mobile node would
IPv6 care-of addresses would be assigned to the mobile node. We thus be configured with multiple active IPv6 care-of addresses. This
propose Mobile IPv6 extensions designed to register multiple care-of document proposes extensions to the Mobile IPv6 protocol to register
addresses bound to a single Home Address instead of the sole primary and use multiple care-of addresses. The extensions proposed in this
care-of address. For doing so, a new identification number must be document can be used by Mobile Routers using the NEMO (Network
carried in each binding for the receiver to distinguish between the Mobility) Basic Support protocol as well.
bindings corresponding to the same Home Address. Those extensions
are targeted to NEMO (Network Mobility) Basic Support as well as to
Mobile IPv6.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6
3. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7 3. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 7
4. Mobile IPv6 Extensions . . . . . . . . . . . . . . . . . . . . 9 4. Mobile IPv6 Extensions . . . . . . . . . . . . . . . . . . . . 9
4.1. Binding Cache Structure and Binding Update List . . . . . 9 4.1. Binding Cache Structure and Binding Update List . . . . . 9
4.2. Message Format Changes . . . . . . . . . . . . . . . . . . 9 4.2. Binding Identifier Mobility Option . . . . . . . . . . . . 9
4.2.1. Binding Identifier Mobility Option . . . . . . . . . . 9 4.3. New Status Values for Binding Acknowledgement . . . . . . 11
4.3. New Status Values for Binding Acknowledgment . . . . . . . 11
5. Mobile Node Operation . . . . . . . . . . . . . . . . . . . . 13 5. Mobile Node Operation . . . . . . . . . . . . . . . . . . . . 13
5.1. Management of Care-of Addresses and Binding Identifier . . 13 5.1. Management of Care-of Address(es) and Binding
Identifier(s) . . . . . . . . . . . . . . . . . . . . . . 13
5.2. Return Routability: Sending CoTI and Receiving CoT . . . . 13 5.2. Return Routability: Sending CoTI and Receiving CoT . . . . 13
5.3. Binding Registration . . . . . . . . . . . . . . . . . . . 14 5.3. Binding Registration . . . . . . . . . . . . . . . . . . . 14
5.4. Binding Bulk Registration . . . . . . . . . . . . . . . . 15 5.4. Bulk Registration . . . . . . . . . . . . . . . . . . . . 14
5.5. Binding De-Registration . . . . . . . . . . . . . . . . . 16 5.5. Binding De-Registration . . . . . . . . . . . . . . . . . 15
5.6. Returning Home . . . . . . . . . . . . . . . . . . . . . . 16 5.6. Returning Home . . . . . . . . . . . . . . . . . . . . . . 16
5.6.1. Using only Interface attached to the Home Link . . . . 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.2. Using only Interface attached to the Visited Link . . 16
5.6.3. Simultaneous Home and Visited Link Operation . . . . . 17 5.6.3. Simultaneous Home and Visited Link Operation . . . . . 17
5.7. Receiving Binding Acknowledgment . . . . . . . . . . . . . 19 5.7. Receiving Binding Acknowledgement . . . . . . . . . . . . 19
5.8. Receiving Binding Refresh Request . . . . . . . . . . . . 20 5.8. Receiving Binding Refresh Request . . . . . . . . . . . . 20
5.9. Sending Packets to Home Agent . . . . . . . . . . . . . . 20 5.9. Bootstrapping . . . . . . . . . . . . . . . . . . . . . . 20
5.10. Bootstrapping . . . . . . . . . . . . . . . . . . . . . . 21
6. Home Agent and Correspondent Node Operation . . . . . . . . . 22
6.1. Searching Binding Cache with Binding Identifier . . . . . 22
6.2. Receiving CoTI and Sending CoT . . . . . . . . . . . . . . 22
6.3. Processing Binding Update . . . . . . . . . . . . . . . . 23
6.4. Sending Binding Refresh Request . . . . . . . . . . . . . 25
6.5. Receiving Packets from Mobile Node . . . . . . . . . . . . 26
7. Network Mobility Applicability . . . . . . . . . . . . . . . . 27 6. Home Agent and Correspondent Node Operation . . . . . . . . . 21
6.1. Searching Binding Cache with Binding Identifier . . . . . 21
6.2. Receiving CoTI and Sending CoT . . . . . . . . . . . . . . 21
6.3. Processing Binding Update . . . . . . . . . . . . . . . . 22
6.4. Sending Binding Refresh Request . . . . . . . . . . . . . 24
6.5. Receiving Packets from Mobile Node . . . . . . . . . . . . 24
8. DSMIPv6 Applicability . . . . . . . . . . . . . . . . . . . . 28 7. Network Mobility Applicability . . . . . . . . . . . . . . . . 25
8.1. IPv4 Care-of Address Registration . . . . . . . . . . . . 28
8.2. IPv4 HoA Management . . . . . . . . . . . . . . . . . . . 29
9. IPsec and IKEv2 interaction . . . . . . . . . . . . . . . . . 30 8. DSMIPv6 Applicability . . . . . . . . . . . . . . . . . . . . 26
9.1. Use of Care-of Address in the IKEv2 exchange . . . . . . . 30 8.1. IPv4 Care-of Address Registration . . . . . . . . . . . . 26
9.2. Transport Mode IPsec protected messages . . . . . . . . . 31 8.2. IPv4 HoA Management . . . . . . . . . . . . . . . . . . . 27
9.3. Tunnel Mode IPsec protected messages . . . . . . . . . . . 31
9.3.1. Tunneled HoTi and HoT messages . . . . . . . . . . . . 31
9.3.2. Tunneled Payload Traffic . . . . . . . . . . . . . . . 32
10. Security Considerations . . . . . . . . . . . . . . . . . . . 33
11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 34 9. IPsec and IKEv2 interaction . . . . . . . . . . . . . . . . . 28
9.1. Use of Care-of Address in the IKEv2 exchange . . . . . . . 28
9.2. Transport Mode IPsec protected messages . . . . . . . . . 29
9.3. Tunnel Mode IPsec protected messages . . . . . . . . . . . 29
9.3.1. Tunneled HoTi and HoT messages . . . . . . . . . . . . 29
9.3.2. Tunneled Payload Traffic . . . . . . . . . . . . . . . 30
10. Security Considerations . . . . . . . . . . . . . . . . . . . 31
12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 35 11. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 33
13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 35 12. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 34
13.1. Normative References . . . . . . . . . . . . . . . . . . . 35
13.2. Informative References . . . . . . . . . . . . . . . . . . 36
Appendix A. Example Configurations . . . . . . . . . . . . . . . 37 13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 34
13.1. Normative References . . . . . . . . . . . . . . . . . . . 34
13.2. Informative References . . . . . . . . . . . . . . . . . . 34
Appendix B. Changes From Previous Versions . . . . . . . . . . . 42 Appendix A. Example Configurations . . . . . . . . . . . . . . . 36
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 42 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 40
Intellectual Property and Copyright Statements . . . . . . . . . . 44 Intellectual Property and Copyright Statements . . . . . . . . . . 42
1. Introduction 1. Introduction
A mobile node may use various types of network interfaces to obtain A mobile node may use various types of network interfaces to obtain
durable and wide area network connectivity. The assumed scenarios durable and wide area network connectivity. This is increasingly
and motivations for multiple points of attachment, and benefits for become true with mobile nodes having multiple interfaces such as
doing it are discussed at large in [ID-MOTIVATION]. 802.2, 802.11, 802.16, cellular radios, etc.. The motivations for
and benefits of using multiple points of attachment are discussed in
IPv6 [RFC-2460] conceptually allows a node to have several addresses [ID-MOTIVATION]. When a mobile node with multiple interfaces uses
on a given interface. Consequently, Mobile IPv6 [RFC-3775] has Mobile IPv6 [RFC-3775] for mobility management, it cannot use its
mechanisms to manage multiple ``Home Addresses'' based on home multiple interfaces to send and receive packets while taking
agent's managed prefixes such as mobile prefix solicitation and advantage of session continuity provided by Mobile IPv6. This is
mobile prefix advertisement. But assigning a single Home Address to because Mobile IPv6 allows the mobile node to only bind one care-of
a node is more advantageous than assigning multiple Home Addresses address at a time with its home address.
because applications do not need to be aware of the multiplicity of
Home Addresses. If multiple home addresses are available,
applications must reset the connection information when the mobile
node changes its active network interface (i.e. change the Home
Address).
According to the Mobile IPv6 specification, a mobile node is not
allowed to register multiple care-of addresses bound 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 as a mobile
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 Monami6
and NEMO Working Group.
In this document, we thus propose a new identification number called This document proposes extensions to Mobile IPv6 to allow a mobile
Binding Identification (BID) number for each binding cache entry to node to register multiple care-of addresses for a home address and
accommodate multiple bindings registration. The mobile node notifies create multiple binding cache entries. A new Binding Identification
the BID to both its Home Agent and correspondent nodes by means of a (BID) number is created for each binding the mobile node wants to
Binding Update. Correspondent nodes and the home agent record the create and sent in the binding update. The home agent that receives
BID into their binding cache. The Home Address thus identifies a this Binding Update creates separate binding for each BID. The BID
mobile node itself whereas the BID identifies each binding registered information is stored in the corresponding binding cache entry. The
by a mobile node. By using the BID, multiple bindings can then be BID information can now be used to identify individual bindings. The
distinguished. same extensions can also be used in Binding Updates sent to the
correspondent nodes.
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC-2119]. document are to be interpreted as described in [RFC-2119].
Terms used in this draft are defined in [RFC-3775], [RFC-3753] and Terms used in this draft are defined in [RFC-3775], [RFC-3753] and
[RFC-4885]. In addition or in replacement of these, the following [RFC-4885]. In addition or in replacement of these, the following
terms are defined or redefined: terms are defined or redefined:
Binding Identification number (BID) Binding Identification number (BID)
The BID is an identification number used to distinguish multiple The BID is an identification number used to distinguish multiple
bindings registered by the mobile node. Assignment of distinct bindings registered by the mobile node. Assignment of distinct
BID allows a mobile node to register multiple binding cache BIDs allows a mobile node to register multiple binding cache
entries for a given Home Address. The BID MUST be unique for a entries for a given home address. The BID MUST be unique for a
binding to a specific care-of address for a given home address and binding to a specific care-of address for a given home address and
care-of address pair. The zero value and a negative value MUST care-of address pair. Zero and negative values MUST NOT be used.
NOT be used. Each BID is generated and managed by a mobile node. Each BID is generated and managed by a mobile node. The BID is
After being generated by the mobile node, the BID is stored in the stored in the Binding Update List and is sent by the mobile node
Binding Update List and is sent by the mobile node in the Binding in the Binding Update. A mobile node MAY change the value of a
Update. A mobile node MAY change the value of a BID at any time BID at any time according to its administrative policy, for
according to its administrative policy, for instance to protect instance to protect its privacy. An implementation must carefully
its privacy. An implementation must carefully assign the BID so assign the BID so as to keep using the same BID for the same
as to keep using the same BID for the same binding even when the binding even when the status of the binding is changed. More
status of the binding is changed. More details can be found in details can be found in Section 5.1.
Section 5.1.
Binding Identifier Mobility Option Binding Identifier Mobility Option
The Binding Identifier mobility option is used to carry the BID. The Binding Identifier mobility option is used to carry the BID
information.
Bulk Registration Bulk Registration
A mobile node can register multiple bindings at once by sending a A mobile node can register multiple bindings at once by sending a
single binding update. The mobile node does not necessarily put single Binding Update. A mobile node can also replace some or all
all the available care-of addresses in the binding update, but the bindings available at the home agent with the new bindings by
several care-of addresses. A mobile node can also replace all the using the bulk registration. Bulk registration is supported only
bindings available at the home agent with the new bindings by with the home agent as explained in Section 5.5. A mobile node
using the bulk registration. The bulk registration is supported MUST NOT perform bulk registration with a correspondent node.
only for home registration and de-registration as explained in
Section 5.5. A mobile node MUST NOT perform bulk registration
with correspondent nodes.
3. Protocol Overview 3. Protocol Overview
A new identification number (BID) is introduced to distinguish A new extension called the Binding identification number (BID) is
multiple bindings pertaining to the same Home Address. Once a mobile introduced to distinguish between multiple bindings pertaining to the
node gets several IPv6 global addresses on one or more of its same home address. If a mobile node configures several IPv6 global
interfaces, it can register these addresses with its home agent. If addresses on one or more of its interfaces, it can register these
the mobile node wants to register multiple bindings, it MUST generate addresses with its home agent as care-of addresses. If the mobile
a BID for each care-of address and record the BID into the binding node wants to register multiple bindings, it MUST generate a BID for
update list. A mobile node can manipulate each binding independently each care-of address and store the BID in the binding update list. A
by using a BID. The mobile node then registers its care-of addresses mobile node can manipulate each binding independently by using the
by sending a Binding Update with a Binding Identifier mobility BIDs. The mobile node then registers its care-of addresses by
option. The BID MUST be included in the Binding Identifier mobility sending a Binding Update with a Binding Identifier mobility option.
option. After receiving such Binding Update and Binding Identifier The BID is included in the Binding Identifier mobility option. After
mobility option, the home agent MUST copy the BID from the Binding receiving the Binding Update with a Binding Identifier mobility
Identifier mobility option to the corresponding field in the binding option, the home agent MUST copy the BID from the Binding Identifier
cache entry. Even if there is already an entry for the mobile node's mobility option to the corresponding field in the binding cache
home address, the home agent MUST register a new binding entry for entry. If there is an existing binding cache entry for the mobile
the BID stored in the Binding Identifier mobility option. The mobile node, and if the BID in the Binding Update does not match the one
node registers multiple care-of addresses either independently in with the existing entry, the home agent MUST create a new binding
cache entry for the new care-of address and BID. The mobile node can
register multiple care-of addresses either independently in
individual Binding Updates or multiple at once in a single Binding individual Binding Updates or multiple at once in a single Binding
Update. Update.
If the mobile host wishes to register its binding with a If the mobile host wishes to register its binding with a
correspondent node, it must perform return routability operations. correspondent node, it must perform return routability operations.
The mobile host MUST manage a Care-of Keygen Token per care-of This includes managing a Care-of Keygen token per care-of address and
address. The mobile host exchanges CoTI and CoT for the exchanging CoTi and CoT message with the correspondent node for each
corresponding care-of addresses if necessary. When the mobile host care-of address. The mobile node MAY use the same BID that it used
registers several care-of addresses to a correspondent node, it uses with the home agent for a particular care-of address. For protocol
the same BID as the one generated for the home registration's simplicity, bulk registration to correspondent nodes is not supported
bindings. The binding registration step is the same as for the home in this document. This is because the Return Routability mechanism
registration except for calculating authenticator. For protocol introduced in [RFC-3775] cannot be easily extended to verify multiple
simplicity, the bulk registration is not supported for correspondent care-of addresses stored in a single Binding Update.
nodes in this document. Return Routability 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 If the mobile node decides to act as a regular mobile node compliant
with [RFC-3775] , it just sends a Binding Update without any Binding with [RFC-3775], it sends a Binding Update without any Binding
Identifier mobility options. The receiver of the Binding Update Identifier mobility options. The receiver of the Binding Update
deletes all the bindings registering with a BID and registers only a deletes all the bindings registering with a BID and registers only a
single binding for the mobile node. Note that the mobile node can single binding for the mobile node. Note that the mobile node can
continue using BID even if only a single binding is active at some continue using the BID even if it has only a single binding that is
time. active.
When a home agent and a correspondent node check the binding cache Binding cache lookup is done based on the home address and BID
database for the mobile node, they search a corresponding binding information. This is different from RFC 3775, where only the home
entry with the pair of Home Address and BID of the desired binding. address is used for binding cache lookup. The binding cache lookup
If necessary, a mobile node can use policy and filter information to may also involve policy or flow filters in cases where some policy or
look up the best binding per sessions, flow, packets, but this is out flow filters are used to direct certain packets or flows to a
of scope in this document. If there is no desired binding, it particular care-of address. The binding cache lookup using policy or
searches the binding cache database with the Home Address as flow filters is out of scope for this document. In case the binding
specified in Mobile IPv6. The first matched binding entry may be cache lookup, using the combination of home address and BID, does not
found, although this is implementation dependent. return a valid binding cache entry, the home agent MAY perform
another lookup based on only the home address. This is
implementation dependent and configurable on the home agent.
The mobile node may return to the home link through one its The mobile node may return to the home link through one of its
interfaces. There are three options possible for the mobile node interfaces. There are three options possible for the mobile node
when its returns home. when its returns home.
1. The mobile node uses only the interface with which it attaches to 1. The mobile node uses only the interface with which it attaches to
the home link. It de-registers all bindings related to all the home link. It de-registers all bindings related to all
care-of addresses. The interfaces which are still attached to care-of addresses. The interfaces still attached to the visited
the visited link are not used. link(s) are 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 2. The mobile node uses only the interfaces still attached to the
visited link. The interface with which the mobile node attaches visited link(s). The interface with which the mobile node
to the home link is not used. attaches to the home link is not used.
3. The mobile node may simultaneously use both the interface 3. The mobile node may simultaneously use both the interface
attached to the home link and the interfaces still attached to attached to the home link and the interfaces still attached to
the visited links. the visited link(s).
Section 5.6 describes the returning home procedures in more detail. Section 5.6 describes the returning home procedures in more detail.
4. Mobile IPv6 Extensions 4. Mobile IPv6 Extensions
This section summarizes the changes to Mobile IPv6 necessary to This section summarizes the extensions to Mobile IPv6 necessary for
manage multiple bindings bound to a same Home Address. manage multiple bindings.
4.1. Binding Cache Structure and Binding Update List 4.1. Binding Cache Structure and Binding Update List
The BID is required in the binding cache and binding update list The BID is required to be stored in the binding cache and binding
structure. update list structure.
4.2. Message Format Changes
4.2.1. Binding Identifier Mobility Option 4.2. Binding Identifier Mobility Option
The Binding Identifier mobility option is included in the Binding The Binding Identifier mobility option is included in the Binding
Update, Binding Acknowledgment, Binding Refresh Request, and Care-of Update, Binding Acknowledgement, Binding Refresh Request, and Care-of
Test Init and Care-of Test message. Test Init and Care-of Test message.
1 2 3 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 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 | | Type = TBD | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Binding ID (BID) | Status |C|O|H|D|Resrvd | | Binding ID (BID) | Status |C|O|H|D|Resrvd |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-------------------------------+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-------------------------------+
+ + + +
skipping to change at page 10, line 4 skipping to change at page 9, line 47
Type value for Binding Identifier is TBD Type value for Binding Identifier is TBD
Length Length
8-bit unsigned integer. Length of the option, in octets, 8-bit unsigned integer. Length of the option, in octets,
excluding the Type and Length fields. MUST be set to 4 when the 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 'C' flag is unset. Otherwise, the Length value MUST be set to
either 8 or 20 depending on the 'D' (DSMIPv6) flag. either 8 or 20 depending on the 'D' (DSMIPv6) flag.
Binding ID (BID) Binding ID (BID)
The BID which is assigned to the binding carried in the Binding
Update with this mobility option. BID is 16-bit unsigned integer. The BID which is assigned to the binding indicated by the care-of
A value of zero is reserved. address in the Binding Update or the BID mobility option. The BID
is a 16-bit unsigned integer. The value of zero is reserved and
MUST NOT be used.
Status Status
When the Binding Identifier mobility option is included in a When the Binding Identifier mobility option is included in a
Binding Acknowledgment, this field overwrites the status field Binding Acknowledgement, this field overwrites the status field in
correspondent to each binding in the Binding Acknowledgment. If the Binding Acknowledgement. If this field is zero, the receiver
this field is zero, the receiver MUST use the registration status MUST use the registration status stored in the Binding
stored in the Binding Acknowledgment message. This Status field Acknowledgement message. This Status field is also used to carry
can be used to carry error information for a Care-of Test message. error information related to the care-of address test in the
The status is 8-bit unsigned integer. The possible status codes Care-of Test message. The status is 8-bit unsigned integer. The
are the same as the status codes of Binding Acknowledgment. possible status codes are the same as the status codes of Binding
Acknowledgement.
Care-of address (C) flag Care-of address (C) flag
When this flag is set, a mobile node can store a Care-of Address When this flag is set, it indicates that a valid care-of address
corresponding to the BID in the Binding Identifier mobility is present in the care-of address field in the BID mobility
option. This flag MUST be used whenever a mobile node sends option. This flag MUST be set whenever the mobile node sends
multiple care-of addresses in a single Binding Update, i.e. bulk multiple care-of addresses in a single Binding Update, i.e., bulk
registration. It MUST be also used for the independent binding registration. It MAY also used as a substitute for alternate
registration as a substitute for an alternate care-of address care-of address option even for Binding Updates that are sent only
option. This flag is valid only for binding update sent to the for one care-of address. This flag is valid only for Binding
home agent. Update sent to the home agent.
Overwrite (O) flag Overwrite (O) flag
When this flag is set, a mobile node requests a home agent to When this flag is set, a mobile node requests the recipient to
replace all the bindings to binding entries stored in a Binding replace all the bindings to binding entries stored in a Binding
Update. This flag is valid only for binding update sent to the Update.
home agent.
Simultaneous Home and Foreign Binding (H) flag Simultaneous Home and Foreign Binding (H) flag
This flag indicates that the mobile node registers multiple This flag indicates that the mobile node registers multiple
bindings to the home agent while is attached to the home link. bindings to the home agent while is attached to the home link.
This flag is valid only for a binding update sent to the home This flag is valid only for a Binding Update sent to the home
agent. agent.
DSMIPv6 (D) flag DSMIPv6 (D) flag
This flag indicates that the care-of address field MUST be set to This flag indicates that the care-of address is an IPv4 address.
IPv4 care-of address. If this flag is set, the Care-of Address When this flag is set, the care-of address field MUST contain an
field MUST be used. IPv4 address.
Reserved Reserved
5 bits Reserved field. Reserved field MUST be set with all 0. 5 bits Reserved field. The reserved field MUST be zero.
Care-of Address Care-of Address
This field has the variable length depending on the specified This field has the variable length depending on the specified
flags. When C flag is set and D flag is unset, an IPv6 Care-of flags. When the 'C' flag is set and the 'D' flag is not, an IPv6
Address matched to the BID is stored in this field. If both C and care-of address for the corresponding BID is stored in this field.
D flags are set, an IPv4 Care-of Address is stored. This field If both 'C' and 'D' flags are set, an IPv4 Care-of Address is
MUST NOT be used if a Binding Identifier mobility option is carried in this field. This field MUST NOT be used if a Binding
included in any other messages than a Binding Update message. The Identifier mobility option is included in any other message other
receiver SHOULD ignore this field if the mobility option is not than a Binding Update or if the 'C' flag is not set.
presented in Binding Update message.
4.3. New Status Values for Binding Acknowledgment 4.3. New Status Values for Binding Acknowledgement
New status values for the status field in a Binding Acknowledgment New status values for the status field in a Binding Acknowledgement
are defined for handling the multiple Care-of Addresses registration: are defined for handling the multiple Care-of Addresses registration:
MCOA NOTCOMPLETE (TBD < 128) MCOA NOTCOMPLETE (TBD < 128)
In bulk registration, not all the binding identifier mobility In bulk registration, not all the binding identifier mobility
option are successfully registered. Some of them are rejected. option are successfully registered. Some of them are rejected.
The error status value of the failed mobility option is The error status value of the failed mobility option is
individually stored in the status field of the binding identifier individually stored in the status field of the binding identifier
mobility option. mobility option.
MCOA RETURNHOME WO/NDP (TBD < 128) MCOA RETURNHOME WO/NDP (TBD < 128)
When a mobile node returns home, it MUST NOT use NDP for the home When a mobile node returns home, it MUST NOT use NDP for the home
address on the home link. The detail can be found in Section 5.6 address on the home link. This is explained in more detail in
Section 5.6
MCOA MALFORMED (TBD more than 128) MCOA MALFORMED (TBD more than 128)
Registration failed because Binding Identifier mobility option is Registration failed because Binding Identifier mobility option was
not formed correctly. not formatted correctly.
MCOA BID CONFLICT (TBD more than 128) MCOA BID CONFLICT (TBD more than 128)
The home agent cannot cache both a regular binding and a BID The home agent cannot cache both a regular binding and a BID
extended binding simultaneously. It returns this status value extended binding simultaneously. It returns this status value
when the received binding conflicts with the existing binding when the received binding conflicts with the existing binding
cache entry(ies). cache entry(ies).
MCOA PROHIBITED(TBD more than 128) MCOA PROHIBITED(TBD more than 128)
It implies the multiple care-of address registration is It implies the multiple care-of address registration is
administratively prohibited. administratively prohibited.
MCOA BULK REGISTRATION NOT SUPPORTED (TBD more than 128) MCOA BULK REGISTRATION NOT SUPPORTED (TBD more than 128)
The bulk binding registration is not supported. Bulk binding registration is not supported.
5. Mobile Node Operation 5. Mobile Node Operation
5.1. Management of Care-of Addresses and Binding Identifier 5.1. Management of Care-of Address(es) and Binding Identifier(s)
There are two cases when a mobile node has several Care-of Addresses. There are two cases when a mobile node might acquire several care-of
Note that a mixture of the two cases are possible. addresses. Note that a mixture of the two cases is also possible.
1. A mobile node uses several physical network interfaces and 1. A mobile node may be using several physical network interfaces
acquires a care-of address on each of its interfaces. and acquires a care-of address on each of its interfaces.
2. A mobile node uses a single physical network interface, but 2. A mobile node uses a single physical network interface, but
multiple prefixes are announced on the link the interface is receives advertisements for multiple prefixes on the link the
attached to. Several global addresses are configured on this interface is attached to. This will result in the mobile node
interface for each of the announced prefixes. configuring several global addresses on the interface from each
of the announced prefixes.
The difference between the above two cases is only a number of The difference between the above two cases is only in the number of
physical network interfaces and therefore does not matter in this physical network interfaces and therefore irrelevant in this
document. The Identification number is used to identify a binding. document. What is of significance is the fact that the mobile node
To implement this, a mobile node MAY assign an identification number has several addresses it can use as care-of addresses.
for each 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 A mobile node assigns a BID to each care-of address when it wants to
register them simultaneously with its Home Address. The BID MUST be register them simultaneously with its home address. The BID MUST be
unique for a binding to a specific care-of address for a given home unique for a given home address and care-of address pair. The value
address and care-of address pair. The value should be generated from should be an integer between 1 and 65535. Zero and negative values
a value comprised between 1 to 65535. Zero and negative values MUST MUST NOT be used as BIDs. If a mobile node has only one care-of
NOT be used as a BID. If a mobile node has only one care-of address, address, the assignment of a BID is not needed until it has multiple
the assignment of a BID is not needed until it has multiple care-of care-of addresses to register with, at which time all of the care-of
addresses to register with. addresses MUST be mapped to BIDs.
5.2. Return Routability: Sending CoTI and Receiving CoT 5.2. Return Routability: Sending CoTI and Receiving CoT
When a mobile node wants to register bindings to a Correspondent When a mobile node wants to register multiple care-of address with a
Node, it MUST have the valid care-of Keygen token per care-of correspondent node, it MUST have the valid Care-of Keygen token per
address, while the HoTI and HoT can be exchanged only once for a Home care-of address. The mobile node needs only one Home Keygen token
Address. for its home address.
If the Mobile Node manages bindings with BID, it MUST include a The mobile node MUST include a Binding Identifier mobility option in
Binding Identifier mobility option in a Care-of Test Init message. the Care-of Test Init message. It MUST NOT set any flags in the
It MUST NOT set the any flags in the mobility option. The receiver mobility option. The receiver (i.e. correspondent node) will
(i.e. correspondent node) will calculate a care-of Keygen token as calculate a care-of Keygen token as specified in [RFC-3775] and reply
specified in [RFC-3775] and reply a Care-of Test message and the with a Care-of Test message, with the Binding Identifier mobility
Binding Identifier mobility option as described in Section 6.2. When option as described in Section 6.2. When the mobile node receives
the mobile node receives the Care-of Test message, the Care-of Test the Care-of Test message, the message is verified as in [RFC-3775].
message is verified as same as in [RFC-3775]. If a Binding If a Binding Identifier mobility option is not present in the CoT
Identifier mobility option is not presented in CoT in reply to the message in reply to the CoTI message that included a Binding
CoTI containing the Binding Identifier mobility option, the Identifier mobility option, the mobile node must assume that the
correspondent node does not support the Multiple Care-of Address correspondent node does not support Multiple Care-of Address
registration. Thus, the mobile node MUST NOT use a Binding registration. Thus, the mobile node MUST NOT use a Binding
Identifier mobility option in the future Binding Update. The Mobile Identifier mobility option in any future Binding Updates to that
Node MAY skip re-sending regular CoTI message and keep the received correspondent node. The mobile node MAY skip re-sending regular CoTI
care-of Keygen token for the regular Binding Update, because the message and keep the received care-of Keygen token for the regular
correspondent node just ignores and skip the Binding Identifier Binding Update.
mobility option and calculates the care-of Keygen token as [RFC-3775]
specified.
5.3. Binding Registration 5.3. Binding Registration
When 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 For the multiple Care-of Addresses registration, the mobile node MUST
include a Binding Identifier mobility option(s) in the Mobility include a Binding Identifier mobility option(s) in the Binding Update
Option field of a Binding Update as shown in Figure 2. The BID is as shown in Figure 2. The BID is copied from a corresponding Binding
copied from a corresponding Binding Update List entry to the BID Update List entry to the BID field of the Binding Identifier mobility
field of the Binding Identifier mobility option. When ESP is used option. When IPsec ESP is used for protecting the Binding Update,
for binding update, the care-of address MUST be stored in the Care-of the care-of address can be carried in the Care-of Address field of
Address field by setting C flag as a substitute for the alternate the Binding Identifier mobility option. If this is done, the
care-of address option. The alternate care-of address option MUST be alternate care-of address option MUST NOT be included in the Binding
omitted. Additionally for binding registration to a correspondent Update. For binding registration to a correspondent node, the mobile
node, the mobile node MUST have both active home and care-of Keygen node MUST have both active Home and Care-of Keygen tokens for Kbm
tokens for Kbm (see Section 5.2.5 of [RFC-3775]). The care-of Keygen (see Section 5.2.5 of [RFC-3775]) before sending the Binding Update.
tokens MUST be maintained for each care-of address that the mobile The care-of Keygen tokens MUST be maintained for each care-of address
node wants to register to the correspondent node, as described in that the mobile node wants to register to the correspondent node.
Section 5.2. After computing an Authenticator value for the Binding The Binding Update to the correspondent node is protected by the
Authorization mobility option, it sends a Binding Update which Binding Authorization Data mobility option that is placed after the
contains a Binding Identifier mobility option. The Binding Update is Binding Identifier mobility option.
protected by a Binding Authorization Data mobility option placed
after the Binding Identifier mobility option.
IPv6 header (src=CoA, dst=HA) IPv6 header (src=CoA, dst=HA)
IPv6 Home Address Option IPv6 Home Address Option
ESP Header (for home registration) ESP Header (for home registration)
Mobility header Mobility header
-BU -BU
Mobility Options Mobility Options
- Binding Identifier mobility option - Binding Identifier mobility option
- Binding Authorization mobility option - Binding Authorization mobility option
(for Route Optimization) (for Route Optimization)
Figure 2: Binding Update for Binding Registration Figure 2: Binding Update for Binding Registration
5.4. Binding Bulk Registration 5.4. Bulk Registration
The bulk registration is an optimization for registering multiple Bulk registration is an optimization for binding multiple care-of
care-of addresses only to a home agent by using a single Binding addresses to a home address using a single Binding Update. This is
Update. If a mobile node, for instance, does not want to send a lot very useful if the mobile node, for instance, does not want to send a
of control messages through an interface which bandwidth is scarce, lot of signaling messages through an interface where the bandwidth is
it can use this bulk registration and send a Binding Update scarce.
containing multiple or all the valid care-of addresses.
A mobile node sets the C flag in a Binding Identifier mobility option To use bulk registration, the mobile node includes a Binding
and includes the particular care-of address in the Binding Identifier Identifier Mobility option for each BID and Care-of address pair it
mobility option. The mobile node stores multiple sets of a Binding wants to register in the same Binding Update message. This is shown
Identifier mobility option in a Binding Update as shown in Figure 3. in Figure 3. The rest of the fields and options in the Binding
In the bulk registration, all the other binding information such as Update such as Lifetime, Sequence Number, the flags in the Binding
Lifetime, Sequence Number, binding Flags are shared among the bulked Update are common across all care-of addresses. The alternate
Care-of Addresses. The alternate care-of address option MUST be care-of address option MUST NOT be used.
omitted when ESP is used to protect a binding update.
In the bulk registration, the Sequence Number field of a Binding In the bulk registration, the Sequence Number field of a Binding
Update SHOULD be carefully configured. This is because all the bulk- Update SHOULD be carefully configured. This is because all the bulk-
registered bindings uses the same Sequence Number specified in the registered bindings use the same Sequence Number specified in the
Binding Update. If each binding uses different sequence number, a Binding Update. If each binding uses different sequence number, a
mobile node MUST use the largest sequence number from the binding mobile node MUST use the largest sequence number from the Binding
update list used for the bulk registration. If it cannot select a Update list entries used for the bulk registration. If the mobile
sequence number for all the bindings due to sequence number out of node cannot select a sequence number for all the bindings due to
window, it MUST NOT use the bulk registration for the binding which sequence number out of window, it MUST NOT use the bulk registration
sequence number is out of window and uses a separate Binding Update for the binding whose sequence number is out of window. A separate
for the binding. Binding Update should be sent for the binding.
IPv6 header (src=CoA, dst=HA) IPv6 header (src=CoA, dst=HA)
IPv6 Home Address Option IPv6 Home Address Option
ESP Header ESP Header
Mobility header Mobility header
-BU -BU
Mobility Options Mobility Options
- Binding Identifier mobility options - Binding Identifier mobility options
(C flag is set, O flag is optional, (C flag is set, O flag is optional,
BID and CoA are stored) BID and CoA are stored)
Figure 3: Binding Update for Binding Bulk Registration Figure 3: Binding Update for Bulk Registration
If the mobile node wants to replace existing registered bindings on If the mobile node wants to replace existing registered bindings on
the home agent with the bindings in the sent Binding Update, it can the home agent with the bindings in the sent Binding Update, it sets
set O flag. Section 6.3 describes this registration procedure in the 'O' flag. Section 6.3 describes this registration procedure in
detail. detail.
5.5. Binding De-Registration 5.5. Binding De-Registration
When a mobile node decides to delete all the bindings for its home When a mobile node decides to delete all the bindings for its home
address at a visiting network, it simply sends a regular de- address, it sends a regular de-registration Binding Update with
registration Binding Update which lifetime is set to zero. A Binding lifetime set to zero as defined in [RFC-3775]. The Binding
Identifier mobility option is not required. Identifier mobility option is not required.
If a mobile node wants to delete a particular binding(s) from its If a mobile node wants to delete a particular binding(s) from its
home agent and correspondent nodes (e.g. from foreign link), the home agent and correspondent nodes, the mobile node sends a Binding
mobile node simply sets zero lifetime for the sending binding update. Update with lifetime set to zero and includes a Binding Identifier
The Binding Update MUST contain an appropriate Binding Identifier mobility option(s) with the BID(s) it wants to de-register. The
mobility option(s). The receiver will remove only the care-of receiver will remove only the care-of address(es) that match(es) the
address(es) that matches to the specified BID. For the bulk de- specified BID(s). The care-of addresses field in each mobility
registration, the care-of addresses field of each mobility option option SHOULD be omitted by the sender and MUST be ignored by the
SHOULD be omitted, because the receiver will remove all the care-of receiver. This is because the receiver will remove the binding that
addresses matching the specified BID. matches the specified BID.
5.6. Returning Home 5.6. Returning Home
The mobile node may return to the home link, by attaching to the home The mobile node may return to the home link, by attaching to the home
link through one of the interfaces on the mobile node. When the link through one of its interfaces. When the mobile node wants to
mobile node wants to return home, it should be configured with what return home, it should be configured with information on what
interface it needs to use. The mobile node may use only the interface it needs to use. The mobile node may use only the
interface with which it is attached to the home link, 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 interfaces still attached to the visited link or use both interfaces
attached to the home link and visited link simultaneously. The attached to the home link and visited link simultaneously. The
following describes each option in more detail. following describes each option in more detail.
5.6.1. Using only Interface attached to the Home Link 5.6.1. Using only Interface attached to the Home Link
The mobile node returns home and de-registers all the bindings as The mobile node returns home and de-registers all the bindings as
shown in Figure 9. How to de-register all the bindings is the same shown in Figure 8 and as defined in [RFC-3775]. De-registering all
as binding de-registration from foreign link described in the bindings is the same as binding de-registration from foreign link
Section 5.5. All the packets routed by the home agent are only described in Section 5.5. After the de-registration step, all the
forwarded to the interface attached to the home link, even if there packets routed by the home agent are only forwarded to the interface
are other active interfaces attached to the visited link. While the attached to the home link, even if there are other active interfaces
mobile node de-registers all the bindings from the home agent, it may attached to the visited link. While the mobile node de-registers all
continue registering bindings for interface attached to visited link the bindings from the home agent, it may continue registering
to the correspondent node as shown in Figure 9. These bindings at bindings for interface attached to visited link to the correspondent
correspondent node MUST be created before a mobile node returns home. node as shown in Figure 8.
5.6.2. Using only Interface attached to the Visited Link 5.6.2. Using only Interface attached to the Visited Link
The mobile node returns home and shutdown the interface attached to The mobile node returns home and shuts down the interface attached to
the home link as shown in Figure 10. The binding of the home the home link as shown in Figure 9. Before shutting down the
attached interface MUST be deleted by sending a de-registration interface, any binding for the care-of address previously associated
binding update from one of active interface attached to the foreign with the interface should be deleted. To delete the binding cache
links. This scenario is not the most efficient because all the entry, the mobile node SHOULD send a de-registration Binding Update
traffic from and to the mobile node is going through the bi- with the lifetime set to zero and include the corresponding BID
directional tunnel, whereas the mobile node is now accessible at one information. If the mobile node does not send a de-registration
hop from its home agent. Binding Update, the binding for the care-of address previously
assigned to the interface remains at the home agent. This binding is
deleted only when it expires. In order to avoid this, the mobile
node SHOULD send a de-registration binding update for the interface
attached to the home link.
This scenario is not the most efficient because all the traffic to
and from the mobile node is going through the bi-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 Operation 5.6.3. Simultaneous Home and Visited Link Operation
The mobile node returns home and continues using all the interfaces In this case, the mobile node returns home and continues using all
attached to both foreign and home links as shown in Figure 11. The the interfaces attached to both foreign and home links as shown in
mobile node indicates this by setting the 'H' flag in the BID Figure 10. The mobile node indicates this by setting the 'H' flag in
mobility option. There are additional requirements on the Returning the BID mobility option as defined below. There are additional
Home procedures for possible ND conflicts at the home link described requirements on the Returning Home procedures for possible ND
below. conflicts at the home link described below.
In [RFC3775], the home agent intercepts packets meant for the mobile In [RFC-3775], the home agent intercepts packets meant for the mobile
node using proxy NDP while the mobile node is away from the home node using proxy Neighbor Discovery while the mobile node is away
link. When the mobile node returns home, the home agent deletes the from the home link. When the mobile node returns home, the home
binding cache and stop the proxy NDP for the home address so that a agent deletes the binding cache and stops proxying for the home
mobile node can configure its home address on the interface attached address so that a mobile node can configure its home address on the
to the home link. In this specification, a mobile node may return interface attached to the home link. In this specification, a mobile
home while it keeps several interfaces attached to the foreign links node may return home, configure the home address on the interface
and continues using them. Therefore, even though both the mobile attached to the home link, but still use the interfaces attached to
node and the home agent need to intercept packets, the ND states of the foreign links. In this case, a possible conflict arises when the
the home address can conflict between the home agent and the mobile both the home agent and the mobile node try to defend the home
node. For instance, if the proxy ND for the Home Address is stopped address. If the home agent stops proxying for the home address, the
by the home agent, packets are always routed to the interface packets are always routed to the interface attached to the home link
attached to the home link and are never routed to the interface and are never routed to the interfaces attached to the visited links.
attached to the foreign link. It is required to avoid this ND It is required to avoid the conflict between the home agent and the
conflicts in the case of the simultaneous home and foreign mobile node, while still allowing the simultaneous use of home and
attachment. foreign links. The following describes the mechanism for achieving
this.
In this specification, the home agent MUST intercept all the packets In this specification, the home agent MUST intercept all the packets
meant for the mobile node and decide whether to send the traffic 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 directly to the home address on the link or tunnel to the care-of
address. The home agent would make this decision based on the type address. The home agent intercepts all the packets even when the
of packets and flows. How to make this decision is out of scope in mobile node is attached to the home link through one of its
this document. The delicate part would be to create a neighbor cache interfaces. The home agent would make this decision based on the
entry for the mobile node so that the home agent can deliver the type of packets and flows. How to make this decision is out of scope
packets on-link. The home agent would need to know the Layer-2 in this document. The critical 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 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 the home link. In order to create the neighbor cache entry for the
mobile node, following operations are required. mobile node, following operations are required.
The mobile node sends a de-registration binding update to the home The mobile node sends a de-registration Binding Update to the home
agent from the interface attached to the home link. In the Binding agent from the interface attached to the home link. In the Binding
Update, the BID mobility option must be stored for the BID assigned Update, the BID mobility option must include the BID the mobile node
to the interface. The H flag MUST be set in the BID mobility option. had previously associated with the interface attached to the home
When the H flag is appears, the home agent learns and remembers that link. The '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 the 'H' flag is set, the home agent recognizes that
the mobile node wants to continue using interfaces attached to both the mobile node wants to continue using interfaces attached to both
foreign and home links. If H flag is unset, the home agent deletes home and visited links. If the 'H' flag is unset, the home agent
either all the bindings or the binding corresponding to the BID. deletes either all the bindings or the binding corresponding to the
BID included in the Binding Identifier mobility option.
When the home agent sends the Binding Acknowledgment, it MUST store When the home agent sends the Binding Acknowledgement, it MUST set
one of two status values such as [Binding Update Accepted (0)] [MCOA the status value to either 0 [Binding Update Accepted] or to
RETURNHOME WO/NDP (TBD)] in the BID mobility option depending on home [MCOARETURNHOME WO/NDP (TBD)] in the BID mobility option depending on
agent configuration at the home link. The new values are: home agent configuration at the home link. The new values are:
o Binding Update Accepted (0): NDP is permitted for the home address o Binding Update Accepted (0): NDP is permitted for the home address
at the home link. This is regular returning home operation of 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 o MCOA RETURNHOME WO/NDP (TBD): NDP is prohibited for the home
address at the home link address at the home link
When the home agent is the only router at the home link, it can When the home agent is the only router at the home link, it can
intercept all the packets by IP routing without proxy NDP. It stops intercept all the packets by normal IP routing without using proxying
proxy ND for the requested home address and replies the [Binding for the home address. It stops proxy ND for the requested home
Update Accepted] value to the mobile node. The neighbor cache entry address and responds with the [Binding Update Accepted] status value
for the mobile node is created by the regular NDP operation (i.e. to the mobile node. The neighbor cache entry for the mobile node is
NS/NA exchange). On the other hand, if the home agent is not the created by the regular exchange of Neighbor Solicitation and Neighbor
only router, it MUST continue defending the home address by proxy NDP Advertisement. If the home agent is not the only router on the home
to capture all the mobile node's traffic. The home agent, then, link, it MUST continue defending the home address by proxy neighbor
returns [MCOA RETURNHOME WO/NDP] value in the Status field of the BID discovery in order to intercept the mobile node's traffic. The home
mobility option. The home agent also learns the mobile node's agent, then, returns [MCOA RETURNHOME WO/NDP] value in the Status
layer-2 address (i.e. MAC address) during this binding de- field of the BID mobility option. The home agent also learns the
registration. It keeps the learned layer-2 address as the neighbor mobile node's layer-2 address (i.e., MAC address) during this binding
de-registration. It stores the learnt layer-2 address in a neighbor
cache entry for the mobile node so that it can construct the layer-2 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 header for the packets meant for the mobile node and forwards them
directly to the mobile node's interface attached to the home link. directly to the mobile node's interface attached to the home link.
According to [RFC3775], the mobile node MUST NOT assign the home According to [RFC-3775], the mobile node MUST NOT assign the home
address to the interface attached to the home link and MUST NOT address to the interface attached to the home link and MUST NOT
attempt NDP operations for the home address before the completion of attempt NDP operations for the home address before the completion of
binding de-registration. It MUST NOT send and reply to Neighbor binding de-registration. It MUST NOT send and reply to Neighbor
Solicitation for the home address. The home address MUST be Solicitation for the home address. The home address MUST be
tentative address at this moment until it receives Binding tentative address at this moment until it receives Binding
Acknowledgment with success status value. Acknowledgement with success status value.
When the mobile node receives the binding acknowledgment and BID When the mobile node receives the Binding Acknowledgement and BID
mobility option, it assigns home address at the interface attached to mobility option, it assigns home address to the interface attached to
the home link according to the status field of the BID. If the value 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 is [Binding Update Accepted], the mobile node can start defending the
home address using NDP. The home agent can create neighbor cache home address using regular Neighbor Discovery.
entry for the mobile node by NS and NA exchange as normal IPv6
operation.
If the home agent receives the [MCOA RETURNHOME WO/NDP], it MUST NOT If the mobile node receives the [MCOA RETURNHOME WO/NDP], it MUST NOT
defends its home address at the home link by NDP. When the mobile defend its home address on the home link. When the mobile node sends
node sends packets from the interface attached to the home link, it packets from the interface attached to the home link, it MUST learn
MUST learn the layer2 address (i.e. MAC address) of the next hop the layer 2 address (i.e., MAC address) of the next hop (i.e. default
(i.e. default router, it can be home agent) during the binding de- router, it can be home agent) during the binding de- registration and
registration and construct the packet including layer 2 header with construct the packet including layer 2 header with the learnt layer-2
the learned home agent's layer-2 address. address of the default router or the home agent.
5.7. Receiving Binding Acknowledgment 5.7. Receiving Binding Acknowledgement
The verification of a Binding Acknowledgment is the same as Mobile The verification of a Binding Acknowledgement is the same as Mobile
IPv6 (section 11.7.3 of [RFC-3775]). The operation for sending a IPv6 (section 11.7.3 of [RFC-3775]). The operation for sending a
Binding Acknowledgment is described in Section 6.3. Binding Acknowledgement is described in Section 6.3.
If a mobile node includes a Binding Identifier mobility option in a If a mobile node includes a Binding Identifier mobility option in a
Binding Update with A flag set, a Binding Acknowledgment MUST carry a Binding Update with the 'A' flag set, a Binding Acknowledgement MUST
Binding Identifier mobility option in the Mobility Options field. If carry a Binding Identifier mobility option. If no such mobility
no such mobility option is included in the Binding Acknowledgment option is included in the Binding Acknowledgement in response to a
replied to the Binding Update for the multiple care-of address Binding Update for multiple care-of address registration, this
registration, this indicates that the originator node of this Binding indicates that the originating node of the Binding Acknowledgement
Acknowledgment might not recognize the Binding Identifier mobility does not support processing the Binding Identifier mobility option.
option. The mobile node SHOULD stop registering multiple care-of The mobile node MUST then stop multiple care-of address registration
addresses by using a Binding Identifier mobility option. with that node.
If a Binding Identifier mobility option is present in the received If a Binding Identifier mobility option is present in the received
Binding Acknowledgment, the mobile node checks the registration Binding Acknowledgement, the mobile node checks the status field in
status for the Care-of address(es). The status value MUST be the option. If the status value in the Binding Identifier mobility
retrieved as follows. If the status value in the Binding Identifier option is zero, the mobile node uses the value in the Status field of
mobility option is zero, the mobile node uses the value in the Status the Binding Acknowledgement. Otherwise, it uses the value in the
field of the Binding Acknowledgment. Otherwise, it uses the value in Status field of the Binding Identifier mobility option.
the Status field of the Binding Identifier mobility option.
If the status code is greater than or equal to 128, the mobile node If the status code is greater than or equal to 128, the mobile node
starts relevant operations according to the error code. Otherwise, starts relevant operations according to the error code. Otherwise,
the originator (home agent or correspondent node) successfully the mobile node assumes that the originator (home agent or
registered the binding information and BID for the mobile node. correspondent node) successfully registered the binding information
and BID for the mobile node.
o If the Status value is [MCOA PROHIBITED], the mobile node MUST o If the Status value is [MCOA PROHIBITED], the mobile node MUST
give up registering multiple bindings to the peer sending the stop registering multiple bindings to the node that sent the
Binding Acknowledgment. It MUST return to the regular Mobile IPv6 Binding Acknowledgement.
[RFC-3775] for the peer node.
o If the Status value is [MCOA BULK REGISTRATION NOT SUPPORT], the o If the Status value is [MCOA BULK REGISTRATION NOT SUPPORT], the
mobile node SHOULD stop using bulk registration to the peer mobile node SHOULD stop using bulk registrations with the node
sending the Binding Acknowledgment. that sent the Binding Acknowledgement.
o If [MCOA MALFORMED] is specified, it indicates that the binding o If [MCOA MALFORMED] is specified, it indicates that the binding
identifier mobility option is formatted wrongly. For example, if identifier mobility option is formatted wrongly.
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 o If [MCOA BID CONFLICT] is specified, the binding entry specified
by the Binding Identifier mobility option is already registered as by the Binding Identifier mobility option is already registered as
a regular binding. In such case, the mobile node SHOULD stop a regular binding. In such case, the mobile node SHOULD stop
sending Binding Updates with BID, or SHOULD use O flag for the sending Binding Updates with BID, or SHOULD use the 'O' flag to
peer to reset all the registered bindings. reset all the registered bindings.
5.8. Receiving Binding Refresh Request 5.8. Receiving Binding Refresh Request
The verification of a Binding Refresh Request is the same as in 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 Mobile IPv6 (section 11.7.4 of [RFC-3775]). The operation of sending
a Binding Refresh Request is described in section Section 6.4. a Binding Refresh Request is described in section Section 6.4.
If a mobile node receives a Binding Refresh Request with a Binding If a mobile node receives a Binding Refresh Request with a Binding
Identifier mobility option, this Binding Refresh Request requests a Identifier mobility option, it indicates that the node sending the
new binding indicated by the BID. The mobile node SHOULD update only Binding Refresh Request message is requesting the mobile node to send
the respective binding. The mobile node MUST put a Binding a new Binding Update for the BID. The mobile node SHOULD then send a
Identifier mobility option into the Binding Update sent to refresh Binding Update only for the respective binding. The mobile node MUST
the entry. include a Binding Identifier mobility option in the Binding Update.
If no Binding Identifier mobility option is present in a Binding If no Binding Identifier mobility option is present in a Binding
Refresh Request, the mobile node sends a Binding Update according to Refresh Request, the mobile node sends a Binding Update according to
its Binding Update List. On the other hand, if the mobile node does 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 not have any Binding Update List entry for the requesting node, the
mobile node needs to register either a single binding or multiple mobile node needs to register either a single binding or multiple
bindings depending on its binding management policy. bindings depending on its binding management policy.
5.9. Sending Packets to Home Agent 5.9. Bootstrapping
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 bindings at the When a mobile node bootstraps and registers multiple bindings for the
first time, it SHOULD set O flag in the Binding Identifier mobility first time, it MUST set the 'O' flag in the Binding Identifier
option. If old bindings still exists at the Home Agent, the mobile mobility option. If old bindings still exists at the home agent, the
node has no way to know which bindings are still remained at the home mobile node has no knowledge of which bindings still exist at the
agent. This scenario happens when a mobile node reboots without home agent. This scenario happens when a mobile node reboots and
correct de-registration. If O flag is used, all the bindings are looses state regarding the registrations. If the 'O' flag is set,
replaced to the new binding(s). Thus, the garbage bindings are all the bindings are replaced by the new binding(s). If the mobile
surely replaced by new bindings registered with the first Binding node receives the Binding Acknowledgement with the status code set to
Update. If the mobile node receives the Binding Acknowledgment with 135 [Sequence number out of window], it MUST retry sending a Binding
the status code set to 135 [Sequence number out of window], it MUST Update with the last accepted sequence number indicated in the
retry sending a Binding Update with the last accepted sequence number Binding Acknowledgement.
which is notified by the Binding Acknowledgment.
For Correspondent nodes, the mobile node cannot use the O flag The 'O' flag can also be used in individual Binding Updates sent to
because of no bulk registration support. Thus, if necessary, it MUST the correspondent nodes to override any existing binding cache
sends a regular binding first to overwrite the remaining bindings at entries at the correspondent node.
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. Home Agent and Correspondent Node Operation
6.1. Searching Binding Cache with Binding Identifier 6.1. Searching Binding Cache with Binding Identifier
If either a correspondent node or a home agent has multiple bindings 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 for a mobile node in their binding cache database, it can use any of
the bindings to communicate with the mobile node. How to select the the bindings to communicate with the mobile node. This section
most suitable binding from the binding cache database is out of scope explains how to retrieve the desired binding for the binding
in this document. management. This document does not provide any mechnaism to select
the suitable binding for forwarding data packets.
Whenever a correspondent node searches a binding cache for a home A correspondent node SHOULD use both the home address and the BID as
address, it SHOULD uses both the Home Address and the BID as the the search key of the binding cache if it knows the corresponding BID
search key if it knows the corresponding BID. In the example below, (ex. when processing signaling messages). In the example below, if a
if a correspondent node searches the binding with the Home Address correspondent node searches the binding with the home address and
and BID2, it gets binding2 for this mobile node. BID2, it gets binding2 for this mobile node.
binding1 [a:b:c:d::EUI, care-of address1, BID1] binding1 [a:b:c:d::EUI, care-of address1, BID1]
binding2 [a:b:c:d::EUI, care-of address2, BID2] binding2 [a:b:c:d::EUI, care-of address2, BID2]
binding3 [a:b:c:d::EUI, care-of address3, BID3] binding3 [a:b:c:d::EUI, care-of address3, BID3]
Figure 4: Searching the Binding Cache Figure 4: Searching the Binding Cache
A correspondent node basically learns the BID when it receives a A correspondent node learns the BID when it receives a Binding
Binding Identifier mobility option. At the time, the correspondent Identifier mobility option. At that time, the correspondent node
node MUST look up its binding cache database with the Home Address MUST look up its binding cache database with the home address and the
and the BID retrieved from the Binding Update. If the correspondent BID retrieved from the Binding Update. If the correspondent node
node does not know the BID, it searches for a binding with only a does not know the BID, it searches for a binding with only the home
Home Address as performed in Mobile IPv6. In such case, the first address. In such a case, the first matched binding is found. If the
matched binding is found. But which binding entry is returned for correspondent node does not desire to use multiple bindings for a
the normal search depends on implementations. If the correspondent mobile node, it can simply ignore the BID.
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 6.2. Receiving CoTI and Sending CoT
When a correspondent node receives a CoTI message which contains a When a correspondent node receives a CoTI message which contains a
Binding Identifier mobility option, it MUST process it with following Binding Identifier mobility option, it processes it as follows.
steps.
First of all, the CoTI message is verified according to [RFC-3775]. First, the CoTI message is verified as specified in [RFC-3775]. The
The Binding Identifier mobility option MUST be, then, processed as Binding Identifier mobility option is processed as follows:
follows:
o If a correspondent node does not understand a Binding Identifier o If a correspondent node does not understand a Binding Identifier
mobility option, it just ignores and skip this option. The mobility option, it just ignores and skips processing the option.
calculation of a care-of Keygen token will thus be done without a The calculation of a care-of Keygen token will thus be done
BID value. The correspondent node returns a CoT message without a without a BID value. The correspondent node returns a CoT message
Binding Identifier mobility option. The mobile node can thus know without a Binding Identifier mobility option. The mobile node
whether the correspondent can process the Binding Identifier knows whether the correspondent supports processing the Binding
mobility option or not, by checking if such option is present in Identifier mobility option, by checking if the option is present
the CoT message. in the CoT message.
o If either or both C and O flag is set in the mobility option, the o If either the 'C' or the 'O' flag is set in the Binding Identifier
Correspondent Node SHOULD NOT calculate a care-of Keygen token and mobility option, the correspondent Node SHOULD NOT calculate a
MUST include a Binding Identifier mobility option which status care-of Keygen token, but MUST include a Binding Identifier
value set to [MCOA MALFORMED] in the returned Care-of Test mobility option with status value set to [MCOA MALFORMED] in the
message. Care-of Test message.
o Otherwise, the correspondent node MUST include a Binding o Otherwise, the correspondent node MUST include a Binding
Identifier mobility option which status value MUST be set to zero Identifier mobility option with status value set to zero (success)
in the returning a CoT message. in the Care-of Test message.
o All the Binding Identifier mobility options SHOULD be copied from o The Care-of address field of each Binding Identifier mobility
the received one except for the Status Field for CoT. The Care-of option, can be omitted, because the mobile node can identify the
address field of each Binding Identifier mobility option, however, corresponding Binding Update list entry using the BID.
can be omitted, because the mobile node can match a corresponding
binding update list by using BID.
6.3. Processing Binding Update 6.3. Processing Binding Update
If a Binding Update does not contain a Binding Identifier mobility If a Binding Update does not contain a Binding Identifier mobility
option, its processing is same as in [RFC-3775]. But if the receiver option, its processing is same as in [RFC-3775]. If the receiver
already has multiple bindings for the home address, it MUST replace already has multiple bindings for the home address, it MUST replace
all the existing bindings by the received binding. As a result, the all the existing bindings by the received binding. As a result, the
receiver node MUST have only a binding for the mobile node. If the receiver node MUST have only one binding cache entry for the mobile
Binding Update is for de-registration, the receiver MUST delete all node. If the Binding Update is for de-registration, the receiver
existing bindings from its Binding Cache. MUST delete all existing bindings from its Binding Cache.
If a Binding Update contains a Binding Identifier mobility option(s),
it is validated according to section 9.5.1 of [RFC-3775] and the
following step.
o If the home registration flag is set in the Binding 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.
The receiver node MUST process the Binding Identifier mobility
option(s) 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 If the Binding Update contains a Binding Identifier mobility
field of either a Binding Acknowledgment or a Binding Identifier option(s), it is first validated according to section 9.5.1 of [RFC-
mobility option. If the status value is specific to one of bindings 3775]. Then the receiver processes the Binding Identifier mobility
in the bulk registration, the status value MUST be stored in the option(s) as described in the following steps.
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, o The length value is examined. The length value MUST be either 4,
8, or 20 depending on C and D flag. If the length is incorrect, 8, or 20 depending on the 'C' and 'D' flags. If the length is
the receiver MUST rejects the Binding Update and returns the incorrect, the receiver MUST reject the Binding Update and returns
status value set to [MCOA MALFORMED]. the status value set to [MCOA MALFORMED].
o When C flag is specified, the care-of address MUST be given in the o When the 'C' flag is set, the care-of address MUST be present in
Binding Identifier mobility option. Otherwise, the receiver MUST the Binding Identifier mobility option. If the care-of address is
reject the Binding Identifier mobility option and returns the not present, the receiver MUST reject the Binding Identifier
status value set to [MCOA MALFORMED]. The operation of D flag is mobility option and returns the status value set to [MCOA
described in Section 8 MALFORMED]. The operation of 'D' flag is described in Section 8
o When multiple binding Identifier mobility options are presented, o When multiple Binding Identifier mobility options are present in
the receiver MUST support the bulk registration. Only a home the Binding Update, it is treated as bulk registration. If the
agent can accept the bulk registration. Otherwise, it MUST reject receiving node is a correspondent node, it MUST reject the Binding
the Binding Update and returns the status value set to [MCOA BULK Update and returns the status value in the binding acknowledgement
REGISTRATION NOT SUPPORT] in the Binding Acknowledgment. set to [MCOA BULK REGISTRATION NOT SUPPORT]
o If the Lifetime field of the Binding Update is zero, the receiver o If the Lifetime field in the Binding Update is set to zero, the
node deletes the binding entry which BID is same as BID sent by receiving node deletes the binding entry that corresponds to the
the Binding Identifier mobility option. If the receiver node does BID in the Binding Identifier mobility option. If the receiving
not have appropriate binding which BID is matched with the Binding node does not have an appropriate binding for the BID, it MUST
Update, it MUST reject this de-registration Binding Update for the reject the Binding Update and send a Binding Acknowledgement with
binding cache. If the receiver is a Home Agent, it SHOULD also status set to 133 [not home agent for this mobile node].
return the status value set to [not Home Agent for this mobile
node, 133].
o If O flag is set in the de-registering Binding Update, the o If the 'O' flag is set in the de-registering Binding Update, it is
receiver can ignore this flag for de-registration. If the H flag ignored. If the 'H' flag is set, the home agent stores a home
is set, the home agent stores a Home Address in the Care-of address in the Care-of Address field of the binding cache entry.
Address field of the binding cache entry. The home agent no The home agent also stops performing proxy ND for the mobile
longer performs proxy NDP for this mobile node until this entry is node's home address.
deleted.
o If the Lifetime field is not zero, the receiver node registers a o If the Lifetime field is not set to zero, the receiving node
binding with the specified BID as a mobile node's binding. The registers a binding with the specified BID as a mobile node's
Care-of address is picked from the Binding Update packet as binding. The Care-of address is obtained from the Binding Update
follows: packet as follows:
* If C flag is set in the Binding Identifier mobility option, the * If the 'C' flag is set in the Binding Identifier mobility
care-of address must be taken from the care-of address field in option, the care-of address is copied from the care-of address
each Binding Identifier mobility option. field in the Binding Identifier mobility option.
* If C flag is not set in the Binding Identifier mobility option, * If the 'C' flag is not set in the Binding Identifier mobility
the care-of address must be taken from the Source Address field option, the care-of address is copied from the source address
of the IPv6 header. field of the IPv6 header.
* If C flag is not set and an alternate care-of address is * If the 'C' flag is not set and an alternate care-of address is
present, the care-of address is taken from the Alternate present, the care-of address is copied from the Alternate
Care-of address mobility option. Care-of address mobility option.
o Once the care-of address(es) has been retrieved from the Binding o Once the care-of address(es) have been retrieved from the Binding
Update, it starts registering binding(s). Update, the receiving nodes creates new binding(s).
* Only if O flag is set in the mobility option, the home agent * If only the 'O' flag is set in the Binding Identifier mobility
first removes all the existing bindings and registers the option, the home agent removes all the existing bindings and
received bindings. registers the received bindings.
* If the receiver has a regular binding which does not have BID * If the receiver has a regular binding which does not have BID
for the mobile node, it de-registers the regular binding and for the mobile node, it must not process the binding update.
registers a new binding including BID according to the Binding The receiver should sent a binding acknowledgement with status
Update. In this case, the receiver MUST return [MCOA BID set to [MCOA BID CONFLICT].
CONFLICT].
* If the receiver node has already registered the binding which * If the receiver already has a binding with the same BID but
BID is matched with requesting BID, then it MUST update the different care-of address, it MUST update the binding and
binding with the Binding Update and returns [0 Binding Update respond with a Binding Acknowledgement with status set to 0
accepted]. [Binding Update accepted].
* If the receiver does not have a binding entry which BID is * If the receiver does not have a binding entry for the BID, it
matched with the requesting BID, it registers a new binding for registers a new binding for the BID and responds with a Binding
the BID and returns [0 Binding Update accepted]. Acknowledgement with status set to 0 [Binding Update accepted].
If all the above operations are successfully finished, the Binding If all the above operations are successfully completed, a Binding
Acknowledgment containing the Binding Identifier mobility options Acknowledgement containing the Binding Identifier mobility options
MUST be replied to the mobile node if A flag is set in the Binding MUST be sent to the mobile node. Whenever a Binding Acknowledgement
Acknowledgment. Whenever a Binding Acknowledgment is returned, all is sent, all the Binding Identifier mobility options stored in the
the Binding Identifier mobility options stored in the Binding Update Binding Update MUST be copied to the Binding Acknowledgement except
MUST be copied to the Binding Acknowledgment. The Care-of address the status field. The Care-of address field in each Binding
field of each Binding Identifier mobility option, however, can be Identifier mobility option, however, can be omitted, because the
omitted, because the mobile node can match a corresponding binding mobile node can match a corresponding binding update list entry using
update list by using BID. 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 6.4. Sending Binding Refresh Request
When a node sends a Binding Refresh Request for a particular binding When a node (home agent or correspondent node) sends a Binding
registering with BID, the node SHOULD contain a Binding Identifier Refresh Request for a particular binding created with the BID, the
mobility option in the Binding Refresh Request. node SHOULD include 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 6.5. Receiving Packets from Mobile Node
When a node receives packets with a Home Address destination option When a node receives packets with a Home Address destination option
from a mobile node, it MUST check that the care-of address appeared from a mobile node, it MUST check that the care-of address that
in the Source Address field MUST be equal to one of the care-of appears in the source address field of the IPv6 header MUST be equal
addresses in the binding cache entry. If no binding is found, the to one of the care-of addresses in the binding cache entry. If no
packets MUST be silently discarded and MUST send a Binding Error binding is found, the packets MUST be silently discarded. The node
message according to RFC3775. This verification MUST NOT be done for MUST also send a Binding Error message as specified in [RFC-3775].
a Binding Update. This verification MUST NOT be done for a Binding Update.
7. Network Mobility Applicability 7. Network Mobility Applicability
Support of multihomed mobile routers is advocated in the NEMO working The binding management mechanisms are the same for a mobile host that
group (see R12 "The solution MUST function for multihomed MR and uses Mobile IPv6 and for a mobile router that is using the NEMO Basic
multihomed mobile networks" in [RFC-4886]. Issues regarding mobile Support protocol [RFC-3963]. Therefore the extensions described in
routers with multiple interfaces and other multihoming configurations this document can also be used to support a mobile router with
are documented in [RFC-4980]. multiple care-of addresses.
Since the binding management mechanisms are the same for a mobile
host operating Mobile IPv6 and for a mobile router operating NEMO
Basic Support (RFC 3963), our extensions can also be used to deal
with multiple care-of addresses 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 Update
8. DSMIPv6 Applicability 8. DSMIPv6 Applicability
Dual Stack Mobile IPv6 (DSMIPv6) extends Mobile IPv6 to register an Dual Stack Mobile IPv6 (DSMIPv6) [ID-DSMIPv6] extends Mobile IPv6 to
IPv4 care-of address instead of the IPv6 care-of address when the register an IPv4 care-of address instead of the IPv6 care-of address
mobile node is attached to an IPv4-only access network. It also when the mobile node is attached to an IPv4-only access network. It
allows the mobile node to acquire an IPv4 home address in addition to also allows the mobile node to acquire an IPv4 home address in
an IPv6 home address for use with IPv4-only correspondent nodes. addition to an IPv6 home address for use with IPv4-only correspondent
This section describes how multiple care-of address registration nodes. This section describes how multiple care-of address
works with IPv4 care-of and home addresses. registration works with IPv4 care-of and home addresses.
8.1. IPv4 Care-of Address Registration 8.1. IPv4 Care-of Address Registration
In DSMIPv6, the binding update and acknowledgment exchange is used to The mobile node can use the extensions described in the document to
detect NAT. Thus, when a mobile node registers its IPv4 care-of register multiple care-of addresses, even if some of the care-of
address bound to IPv6 home address, it MUST first attempt to send a addresses are IPv4 address.
Binding Update with Binding Identifier mobility option independently.
The bulk registration MUST NOT be used for the first binding update Bulk registration MUST NOT be used for the initial binding from an
of the IPv4 care-of address. The Binding Update MUST be sent to the IPv4 care-of address. This is because, the Binding Update and
IPv4 home agent address by using UDP and IPv4 headers as shown in binding acknowledgement exchange is used to detect NAT on the path
Figure 6. It is similar to [DSMIP] except for using BID mobility between the mobile node and the home agent. So the mobile node needs
option instead of IPv4 care-of address option. to check for a NAT between each IPv4 care-of 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 Figure 5. It is similar to
[ID-DSMIPv6] except that the IPv4 care-of address option MUST NOT be
used when the BID mobility option is used.
IPv4 header (src=V4ADDR, dst=HA_V4ADDR) IPv4 header (src=V4ADDR, dst=HA_V4ADDR)
UDP Header UDP Header
IPv6 header (src=V6HoA, dst=HAADDR) IPv6 header (src=V6HoA, dst=HAADDR)
ESP Header ESP Header
Mobility header Mobility header
-BU -BU
Mobility Options Mobility Options
- Binding Identifier (IPv4 CoA) - Binding Identifier (IPv4 CoA)
Figure 6: Initial Binding Update for IPv4 Care-of Address Figure 5: Initial Binding Update for IPv4 Care-of Address
When 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 NAT is not detected, the mobile node can update the IPv4 care-of If a NAT is not detected, the mobile node can update the IPv4 care-of
address by using BULK registration. The mobile node can register the address by using bulk registration. The mobile node can register the
IPv4 care-of address with other care-of addresses. Figure 7 shows IPv4 care-of address along with other IPv4 and IPv6 care-of
the binding update format when the mobile node sends a Binding Update addresses. Figure 6 shows the Binding Update format when the mobile
from one of its IPv6 care-of addresses. If the mobile node sends a node sends a Binding Update from one of its IPv6 care-of addresses.
BU from IPv4 care-of address, it MUST follows the Figure 6 and store If the mobile node sends a BU from IPv4 care-of address, it MUST
more BID mobility options in the mobility options field. Note that follow the format described in Figure 5. Note that the IPv4 Care-of
IPv4 Care-of Address must be registered by non bulk Binding Address must be registered by non bulk Binding registration, whenever
registration, whenever it is changed. NAT detection MUST be carried it is changed.
out for every new IPv4 addresses.
IPv6 header (src=V6CoA, dst=HAADDR) IPv6 header (src=V6CoA, dst=HAADDR)
IPv6 Home Address Option IPv6 Home Address Option
ESP Header ESP Header
Mobility header Mobility header
-BU -BU
Mobility Options Mobility Options
- Binding Identifier (IPv6/v4 CoA) - Binding Identifier (IPv6/v4 CoA)
- Binding Identifier (IPv6/v4 CoA) - Binding Identifier (IPv6/v4 CoA)
- ... - ...
Figure 7: Binding Bulk Registration for IPv4 care-of address Figure 6: Binding Bulk Registration for IPv4 care-of address
If the IPv4 care-of address is successfully registered, the mobile
node sets up a relevant tunnel to the home agent according to
[DSMIP].
If the home agent rejects the IPv4 care-of address, it MUST store the If the home agent rejects the IPv4 care-of address, it MUST store the
error code value in the Status field of the BID mobility option. The error code value in the Status field of the BID mobility option.
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 8.2. IPv4 HoA Management
When the mobile node obtains an IPv4 home address, it MUST store the When the mobile node wants to configure an IPv4 home address in
addition to the IPv6 home address, it can request for one using the
IPv4 Home Address option in the Binding Update. If the home agent IPv4 Home Address option in the Binding Update. If the home agent
accepts the binding update, the mobile node can also register accepts the Binding Update, the mobile node can now register multiple
multiple care-of addresses for the IPv4 home address in addition to care-of addresses for the IPv4 home address in addition to the IPv6
the IPv6 home address. The same set of care-of addresses will be home address. The same set of care-of addresses will be registered
registered for both IPv6 and IPv4 home addresses. The mobile node for both IPv6 and IPv4 home addresses. The mobile node cannot bind
cannot binding different set of care-of addresses to each home different set of care-of addresses to each home address.
address.
The home agent MUST returns a binding acknowledgment and IPv4 address According to [ID-DSMIPv6], the home agent includes the IPv4 address
acknowledgment option to the mobile node only when a mobile node acknowledgement option in the Binding Acknowledgement only if the
requests IPv4 home address mobility management. In this case, this mobile node had requested for an IPv4 home address in the
option MUST be presented before any BID options. The status field of corresponding Binding Update. The IPv4 address acknowledgement
the IPv4 address acknowledgment option contains only the error code option MUST be present before any BID option. The status field of
regarding IPv4 home address management. The error value of the IPv4 the IPv4 address acknowledgement option contains only the error code
care-of address registration MUST be stored in the BID mobility corresponding to the IPv4 home address management. The error values
option. related to the IPv4 care-of address registration MUST be stored in
the BID mobility option.
9. IPsec and IKEv2 interaction 9. IPsec and IKEv2 interaction
Mobile IPv6 [RFC-3775] and the NEMO protocol [RFC-3963] require the Mobile IPv6 [RFC-3775] and the NEMO protocol [RFC-3963] require the
use of IPsec to protect signaling messages like Binding Updates, use of IPsec to protect signaling messages like Binding Updates,
Binding Acknowledgments and return routability messages. IPsec may Binding Acknowledgements and return routability messages. IPsec may
also be used protect all reverse tunneled data traffic. The Mobile also be used protect all tunneled data traffic. The Mobile IPv6-
IPv6-IKEv2 specification [RFC-4877] specifies how IKEv2 can be used IKEv2 specification [RFC-4877] specifies how IKEv2 can be used to
to setup the required IPsec security associations. The following setup the required IPsec security associations. The following
assumptions were made in [RFC-3775], [RFC-3963] and the MIP6-IKEv2 assumptions were made in [RFC-3775], [RFC-3963] and [RFC-4877] with
specification with respect to the use of IKEv2 and IPsec. respect to the use of IKEv2 and IPsec.
o There is only one primary care-of address per mobile node. 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 o The primary care-of address is stored in the IPsec database for
tunnel encapsulation and decapsulation. tunnel encapsulation and decapsulation.
o When the home agent receives a packet from the mobile node, the o When the home agent receives a packet from the mobile node, the
source address is verified against the care-of address in the source address is verified against the care-of address in the
corresponding binding cache entry. If the packet is a reverse corresponding binding cache entry. If the packet is a reverse
tunneled packet from the mobile node, the care-of address check is tunneled packet from the mobile node, the care-of address check is
skipping to change at page 31, line 20 skipping to change at page 29, line 20
For Mobile IPv6 signaling message protected using IPsec in transport For Mobile IPv6 signaling message protected using IPsec in transport
mode, the use of a particular care-of address among multiple care-of mode, the use of a particular care-of address among multiple care-of
addresses does not matter for IPsec processing. addresses does not matter for IPsec processing.
For Mobile Prefix Discovery messages, [RFC-3775] requires the home For Mobile Prefix Discovery messages, [RFC-3775] requires the home
agent to verify that the mobile node is using the care-of address 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 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 node's home address. If a different address is used as the source
address, the message is silently dropped by the home agent. This address, the message is silently dropped by the home agent. This
document requires the home agent implementation to process the document requires the home agent implementation to process the
message as long as the source address is is one of the care-of message as long as the source address is one of the care-of addresses
addresses in the binding cache entry for the mobile node. in the binding cache entry for the mobile node.
9.3. Tunnel Mode IPsec protected messages 9.3. Tunnel Mode IPsec protected messages
The use of IPsec in tunnel mode with multiple care-of address The use of IPsec in tunnel mode with multiple care-of address
introduces a few issues that require changes to how the mobile node introduces a few issues that require changes to how the mobile node
and the home agent send and receive tunneled traffic. The route and the home agent send and receive tunneled traffic. The route
optimization mechanism described in [RFC-3775] mandates the use of optimization mechanism described in [RFC-3775] mandates the use of
IPsec protection in tunnel mode for the HoTi and HoT messages. The 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 mobile node and the home agent may also choose to protect all reverse
tunneled payload traffic with IPsec in tunnel mode. The following tunneled payload traffic with IPsec in tunnel mode. The following
skipping to change at page 33, line 7 skipping to change at page 31, line 7
o For tunneled IPsec traffic from the home agent to the mobile 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 The IPsec implementation on the home agent may not be aware of
which care-of address to use when performing IPsec tunnel which care-of address to use when performing IPsec tunnel
encapsulation. The Mobile IP stack on the home agent must specify encapsulation. The Mobile IP stack on the home agent must specify
the tunnel end point for the IPsec tunnel. This may require tight the tunnel end point for the IPsec tunnel. This may require tight
integration between the IPsec and Mobile IP implementations on the integration between the IPsec and Mobile IP implementations on the
home agent. home agent.
10. Security Considerations 10. Security Considerations
As shown in Section 9, the Multiple Care-of Addresses Registration The security considerations for securing the Binding Update and
requires IPsec protection for all the signaling between a mobile node binding acknowledgement messages with multiple care-of address are
and its home agent. very similar to the security considerations for securing the Binding
Update and 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 With simultaneous binding support, it is possible for a malicious
mobile node to successfully bind a number of victims' addresses as mobile node to successfully bind a number of victims' addresses as
valid care-of addresses for the mobile node with its home agent. valid care-of addresses for the mobile node with its home agent.
Once these addresses have been bound, the malicious mobile node can Once these addresses have been bound, the malicious mobile node can
perform a re-direction attack by instructing the home agent (e.g. perform a re-direction attack by instructing the home agent (e.g.
setting filtering rules to direct a large file transfer) to tunnel setting filtering rules to direct a large file transfer) to tunnel
packets to the victims' addresses. Such risk is highlighted in [ID- packets to the victims' addresses. Such risk is highlighted in [ID-
MIP6ANALYSIS] and is possible because the care-of addresses specified MIP6ANALYSIS]. These attacks are possible because the care-of
by the mobile node in the binding update messages are not verified by addresses sent by the mobile node in the Binding Update messages are
home agent (since Mobile IPv6 assumes an existing trust relationship not verified by home agent, i.e., the home agent does not check if
between the mobile node and its home agent). the mobile node is at the care-of address it is claiming to be. The
security model for Mobile IPv6 assumes that there is a trust
relationship between the mobile node and its home 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 Although such risk exists in Mobile IPv6, the risk level is escalated
when simultaneous multiple care-of address bindings are performed. when simultaneous multiple care-of address bindings are performed.
One fundamental difference is the degree of risk involved is much In Mobile IPv6, a mobile node can only have a single care-of address
greater in the simultaneous binding support case. For a single binding per home address at a given time. However, for simultaneous
care-of address binding, a mobile node can only have a single care-of multiple care-of address bindings, a mobile node can have more than
address binding per home address at a given time. However, for one care-of address binding per home address at a given time. This
simultaneous multiple care-of address bindings, a mobile node can implies that a mobile node using simultaneous binding support can
have more than one care-of address binding per home address at a effectively bind more than a single victim's address. Another
given time. This implies that a mobile node using simultaneous difference is the degree of risk involved. In the single care-of
binding support can effectively bind more than a single victim's address binding case, once the re-direction attack is initiated, a
address. Another fundamental difference is the form of risk malicious mobile node would be unable to use its home address for
involved. In the single care-of address binding case, once the re- communications (such as to receive control packets pertaining to the
direction attack is initiated, a malicious mobile node would be file transfer). However, in the simultaneous binding support case, a
unable to use its home address for communications (such as to receive malicious mobile node could bind a valid care-of address in addition
control packets pertaining to the file transfer). However, in the to multiple victims addresses. This valid care-of address could then
simultaneous binding support case, a malicious mobile node could bind be used by the malicious mobile node to set up flow filtering rules
a valid care-of address in addition to multiple victims addresses. at its home agent, thereby controlling and/or launching new re-
This valid care-of address could then be used by the malicious mobile direction attacks.
node to set up flow filtering rules at its home agent, thereby
controlling and/or launching new re-direction attacks.
Thus, in view of such risk, it is advisable for a home agent to Thus, in view of such risks, it is advisable for a home agent to
employ some form of care-of address verification mechanism before employ some form of care-of address verification mechanism before
using the care-of addresses as a valid routing path to a mobile node. using the care-of addresses as a valid routing path to a mobile node.
Some solutions to advert such problems are described in Appendix. Solutions related to this are described in [ID-COAVERIFY].
11. IANA Considerations 11. IANA Considerations
The following Extension Types MUST be assigned by IANA: The following Extension Types MUST be assigned by IANA:
o Binding Identifier mobility option type:This must be assigned from o Binding Identifier mobility option type: This must be assigned
the same space as mobility option in [RFC3775]. from the same space as mobility option in [RFC-3775].
o New Successful Status of Binding Acknowledgment:This status code o New Successful Status of Binding Acknowledgement: This status code
must be assigned from the same space as binding acknowledgement must be assigned from the same space as binding acknowledgement
status codes in [RFC3775]. status codes in [RFC-3775].
* MCOA NOTCOMPLETE (TBD) * MCOA NOTCOMPLETE (TBD)
o New Unsuccessful Status of Binding Acknowledgment: These status o New Unsuccessful Status of Binding Acknowledgement: These status
codes must also be assigned from the same space as binding codes must also be assigned from the same space as binding
acknowledgement status codes in [RFC3775]. acknowledgement status codes in [RFC-3775].
* MCOA MALFORMED (TBD) * MCOA MALFORMED (TBD)
* MCOA BID CONFLICT (TBD) * MCOA BID CONFLICT (TBD)
* MCOA PROHIBITED(TBD) * MCOA PROHIBITED(TBD)
* MCOA BULK REGISTRATION NOT SUPPORTED (TBD) * MCOA BULK REGISTRATION NOT SUPPORTED (TBD)
12. Acknowledgments 12. Acknowledgements
The authors would like to thank Masafumi Aramoto (Sharp Corporation), The authors would like to thank Masafumi Aramoto, George Tsirtsis,
George Tsirtsis (Qualcomm), Keigo Aso (Panasonic), Julien Charbon, Keigo Aso, Julien Charbon, Tero Kauppinen, Benjamin Lim, Susumu
Tero Kauppinen (Ericsson), Benjamin Lim (Panasonic), Susumu Koshiba, Koshiba, Martti Kuparinen, Romain Kuntz, Heikki Mahkonen, Hiroki
Martti Kuparinen (Ericsson), Romain Kuntz (Keio-U), Heikki Mahkonen Matutani, Koshiro Mitsuya, Nicolas Montavont, Koji Okada, Keisuke
(Ericsson), Hiroki Matutani (Tokyo-U), Koshiro Mitsuya (Keio-U), Uehara, Masafumi Watari in alphabetical order, and the Jun Murai
Nicolas Montavont, Koji Okada (Keio-U), Keisuke Uehara (Keio-U), Laboratory at the KEIO University.
Masafumi Watari (KDDI R&D) in alphabetical order, the Jun Murai Lab.
at KEIO University.
13. References 13. References
13.1. Normative 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 [RFC-3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support
in IPv6", RFC 3775, June 2004. in IPv6", RFC 3775, June 2004.
[RFC-3963] Devarapalli, V., Wakikawa, R., Petrescu, A., and P. [RFC-3963] Devarapalli, V., Wakikawa, R., Petrescu, A., and P.
Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963, Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963,
January 2005. 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 [RFC-2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. 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 [RFC-4877] Devarapalli, V. and F. Dupont, "Mobile IPv6 Operation with
IKEv2 and the revised IPsec Architecture", RFC 4877, April 2007. IKEv2 and the revised IPsec Architecture", RFC 4877, April 2007.
13.2. Informative References 13.2. Informative References
[ID-MOTIVATION] Ernst, T., Montavont, N., Wakikawa, R., Ng, C., and [ID-MOTIVATION] Ernst, T., Montavont, N., Wakikawa, R., Ng, C., and
K. Kuladinithi, "Motivations and Scenarios for Using Multiple K. Kuladinithi, "Motivations and Scenarios for Using Multiple
Interfaces and Global Addresses", Interfaces and Global Addresses",
draft-ietf-monami6-multihoming-motivation-scenario-02 (work in draft-ietf-monami6-multihoming-motivation-scenario-02 (work in
[RFC-4980] Ng, C., Paik, Ernst, and C. Bagnulo, "Analysis of [RFC-4980] Ng, C., Paik, Ernst, and C. Bagnulo, "Analysis of
Multihoming in Network Mobility Support", RFC 4980, October 2007. Multihoming in Network Mobility Support", RFC 4980, October 2007.
[RFC-3972] Aura, T., "Cryptographically Generated Addresses (CGA)", [ID-MIP6ANALYSIS] Montavont, N., Wakikawa, R., Ernst, T., Ng, C., and
RFC 3972, March 2005. K. Kuladinithi, "Analysis of Multihoming in Mobile IPv6",
draft-ietf-monami6-mipv6-analysis-04 (work in progress), Novemver
2007.
[RFC-4866] Arkko, J., Vogt, C., and W. Haddad, "Enhanced Route [RFC-3753] Manner, J. and M. Kojo, "Mobility Related Terminology",
Optimization for Mobile IPv6", RFC 4866, May 2007. RFC 3753, June 2004.
[RFC-792] Postel, J., "Internet Control Message Protocol", STD 5, RFC [RFC-4885] Ernst, T. and H. Lach, "Network Mobility Support
792, September 1981. 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 Appendix A. Example Configurations
In this section, we describe typical scenarios when a mobile node has In this section, we describe typical scenarios when a mobile node has
multiple network interfaces and acquires multiple Care-of Addresses multiple network interfaces and acquires multiple Care-of Addresses
bound to a Home Address. The Home Address of the mobile node (MN in bound to a home address. The home address of the mobile node (MN in
figures) is a:b:c:d::EUI. MN has 3 different interfaces and possibly 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 acquires care-of addresses 1-3 (CoA1, CoA2, CoA3). The MN assigns
BID1, BID2 and BID3 to each care-of address. BID1, BID2 and BID3 to each care-of address.
+----+ +----+
| CN | | CN |
+--+-+ +--+-+
| |
+---+------+ +----+ +---+------+ +----+
+------+ Internet |----------+ HA | +------+ Internet |----------+ HA |
skipping to change at page 37, line 38 skipping to change at page 36, line 38
Binding Cache Database: Binding Cache Database:
home agent's binding (Proxy neighbor advertisement is active) 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 address1 BID1]
binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address2 BID2]
binding [a:b:c:d::EUI care-of address3 BID3] binding [a:b:c:d::EUI care-of address3 BID3]
correspondent node's binding correspondent node's binding
binding [a:b:c:d::EUI care-of address1 BID1] 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 address2 BID2]
binding [a:b:c:d::EUI care-of address3 BID3] binding [a:b:c:d::EUI care-of address3 BID3]
Figure 8: Multiple Interfaces Attached to a Foreign Link Figure 7: Multiple Interfaces Attached to a Foreign Link
Figure 8 depicts the scenario where all interfaces of the mobile node Figure 7 depicts the scenario where all interfaces of the mobile node
are attached to foreign links. After binding registrations, the home are attached to foreign links. After binding registrations, the home
agent (HA) and the Correspondent Node (CN) have the binding entries agent (HA) and the correspondent node (CN) have the binding entries
listed in their binding cache database. The mobile node can utilize listed in their binding cache database. The mobile node can utilize
all the interfaces. all the interfaces.
+----+ +----+
| CN | | CN |
+--+-+ +--+-+
| |
+---+------+ +----+ +---+------+ +----+
+------+ Internet |----------+ HA | +------+ Internet |----------+ HA |
| +--------+-+ +--+-+ | +--------+-+ +--+-+
skipping to change at page 38, line 26 skipping to change at page 37, line 26
CoA3| +---|-----------+ CoA3| +---|-----------+
+---------------+ +---------------+
Binding Cache Database: Binding Cache Database:
home agent's binding home agent's binding
none none
correspondent node's binding correspondent node's binding
binding [a:b:c:d::EUI care-of address2 BID2] binding [a:b:c:d::EUI care-of address2 BID2]
binding [a:b:c:d::EUI care-of address3 BID3] binding [a:b:c:d::EUI care-of address3 BID3]
Figure 9: One of Interface Attached to Home Link and Returning Home Figure 8: One of Interface Attached to Home Link and Returning Home
Figure 9 depicts the scenario where MN returns home with one of its Figure 8 depicts the scenario where MN returns home with one of its
interfaces. After the successful de-registration of the binding to interfaces. After the successful de-registration of the binding to
HA, HA and CN have the binding entries listed in their binding cache HA, HA and CN have the binding entries listed in their binding cache
database of Figure 9. After de-registration, the ND state of the database of Figure 8. After de-registration, the ND state of the
home address is managed by the MN. MN can communicate with the HA 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 through only the interface attached to the home link. On the other
hand, the mobile node can communicate with CN from the other hand, the mobile node can communicate with CN from the other
interfaces attached to foreign links (i.e. route optimization). Even interfaces attached to foreign links (i.e. route optimization). Even
if MN is attached to the home link, it can still send Binding Updates 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 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 bindings, packets are routed to each Care-of Addresses directly. Any
packet arrived at HA are routed to the interface attached to the home packet arrived at HA are routed to the interface attached to the home
link. link.
skipping to change at page 39, line 28 skipping to change at page 38, line 28
(Disable interface) (Disable interface)
Binding Cache Database: Binding Cache Database:
home agent's binding home agent's binding
binding [a:b:c:d::EUI care-of address1 BID1] 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 address2 BID2]
correspondent node's binding correspondent node's binding
binding [a:b:c:d::EUI care-of address1 BID1] 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 address2 BID2]
Figure 10: One of Interface Attached to Home Link and Not Returning Figure 9: One of Interface Attached to Home Link and Not Returning
Home Home
Figure 10 depicts the scenario where MN disables the interface Figure 9 depicts the scenario where MN disables the interface
attached to the home link and communicates with the interfaces attached to the home link and communicates with the interfaces
attached to foreign links. HA continues managing the ND state of the attached to foreign links. HA continues managing the ND state of the
home address by Proxy neighbor advertisement. The HA and the CN have home address by Proxy neighbor advertisement. The HA and the CN have
the binding entries listed in their binding cache database. All the binding entries listed in their binding cache database. All
packets routed to the home link are intercepted by the HA and packets routed to the home link are intercepted by the HA and
tunneled to the other interfaces attached to the foreign link tunneled to the other interfaces attached to the foreign link
according to the binding entries. according to the binding entries.
Topology-a) Topology-a)
+----+ +----+
skipping to change at page 40, line 44 skipping to change at page 39, line 44
Binding Cache Database: Binding Cache Database:
home agent's binding home agent's binding
binding [a:b:c:d::EUI care-of address1 BID1] 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 address2 BID2]
correspondent node's binding correspondent node's binding
binding [a:b:c:d::EUI care-of address1 BID1] 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 address2 BID2]
binding [a:b:c:d::EUI care-of address3 BID3] binding [a:b:c:d::EUI care-of address3 BID3]
Figure 11: Utilize Interfaces Attached to both Home and Foreign Links Figure 10: Utilize Interfaces Attached to both Home and Foreign Links
Figure 11 depicts the scenario where interfaces of MN are attached to Figure 10 depicts the scenario where interfaces of MN are attached to
both the home and foreign links. There are two possible topologies both the home and foreign links. There are two possible topologies
whether the HA is single router at the home link or not. The 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 operation of ND is different in two topologies. The HA and CN have
the binding entries listed in Figure 11 in their binding cache the binding entries listed in Figure 10 in their binding cache
database regardless of topologies. The HA also knows that the MN has database regardless of topologies. The HA also knows that the MN has
attached to the home link. All the traffic from the Internet are attached to the home link. All the traffic from the Internet are
intercepted by the HA and routed to either the interface attached to intercepted by the HA and routed to either the interface attached to
the home link or the interfaces attached to the foreign links. How the home link or the interfaces attached to the foreign links. How
to make the decision is out of scope in this document. to make the decision is out of scope in this document.
There are two different treatments of the ND state of the home There are two different treatments of the ND state of the home
address. address.
o MN defends the home address by regular ND (topology-a) o MN defends the home address by regular ND (topology-a)
o HA defends the home address by Proxy ND (topology-b) 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 first case is required that the HA is the single exit router to
the Internet and is capable of intercepting packets without relying 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 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 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 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 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 home at the home link. Since the MN cannot operate the ND of its home
addrss at the home link, HA cannot resolve the layer-2 address of the address at the home link, HA cannot resolve the layer-2 address of
MN at the home link. The HA MUST learn and record the layer-2 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 address (MAC address) of the MN's interface attached to the home link
to forward packets. The packets forwarding is achieved without ND to forward packets. The packets forwarding is achieved without ND
cache. The MN is also required to learn and record the layer-2 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. 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 Authors' Addresses
Ryuji Wakikawa (Editor) Ryuji Wakikawa (Editor)
Faculty of Environment and Information Studies, Keio University Faculty of Environment and Information Studies, Keio University
5322 Endo 5322 Endo
Fujisawa, Kanagawa 252-8520 Fujisawa, Kanagawa 252-8520
Japan Japan
Phone: +81-466-49-1100 Phone: +81-466-49-1100
Fax: +81-466-49-1395 Fax: +81-466-49-1395
 End of changes. 179 change blocks. 
794 lines changed or deleted 682 lines changed or added

This html diff was produced by rfcdiff 1.34. The latest version is available from http://tools.ietf.org/tools/rfcdiff/