MN-3-1-2-2-004 - Sending BU for each CN in BUL (after home re-registration)
Host
|
R CN0
| |
-----+-------+--------+---------------- LinkZ
|
R2 NUTY
| |
-----+-------+-----------------+------- LinkY
|
R1 NUTX
| |
-----+-------+-----------------+------- LinkX
|
HA0 Node0 NUT0
| | |
----------------------+---------------+---------+------- Link0
| Link0 |
3ffe:501:ffff:100::/64 |
home link |
| LinkX |
3ffe:501:ffff:102::/64 |
|
| LinkY |
3ffe:501:ffff:103::/64 |
|
| LinkZ |
3ffe:501:ffff:104::/64 |
|
| HA0(Link0) |
3ffe:501:ffff:100:200:ff:fe00:a0a0 |
|
| Node0(Link0) |
3ffe:501:ffff:100:200:ff:fe00:a3a3 |
|
| R1(LinkX) |
3ffe:501:ffff:102:200:ff:fe00:a4a4 |
|
| R2(LinkY) |
3ffe:501:ffff:103:200:ff:fe00:a6a6 |
|
| CN0(LinkZ) |
3ffe:501:ffff:104:200:ff:fe00:a8a8 |
|
1. Selection Option
- Route Optimization support: YES
2. Position of Mobile Node
HA0 NUT0 R1 R2 CN0
| | | | |
| ----> | | | | 1.Router Advertisement
| | | | |
| NUTX | | |
| | | | |
| | <---- | | | 2.Router Advertisement
| | | | |
| <---- | | | | 3.Neighbor Solicitations
| | | | | 4.(no reply:3 seconds)
| | | | |
| <---- | | | | 5.Binding Update
| ----> | | | | 6.Binding Acknowledgement
| | | | |
| ====> | <--------------------- | 7.ICMP Echo Request
| | | | |
| <==== | ---------------------> | 8.Home Test Init
| | ---------------------> | 9.Care-of Test Init
| | <--------------------- | 10.Care-of Test
| ====> | <--------------------- | 11.Home Test
| | | | |
| <==== | ---------------------> | 12.ICMP Echo Reply
| | ---------------------> | 13.Binding Update
| | ---------------------> | 14.ICMP Echo Reply
| | | | |
1. Send Router Advertisement. (HA0 -> HA0_allnode_multi)
2. Send Router Advertisement. (R1 -> R1_allnode_multi)
3. Receive Neighbor Solicitations. (NUT0 -> HA0)
4. (no reply)
# Wait during a maximum of 3 seconds(RFC2461).
5. Receive Binding Update to HA0. (NUTX -> HA0)
6. Send Binding Acknowledgement. (NUTX -> HA0)
7. Send ICMP Echo Request. (out: HA0 -> NUTX, in: CN0 -> NUT0)
8. Receive Home Test Init. (out: NUTX -> HA0, in: NUT0 -> CN0)
9. Receive Care-of Test Init. (NUTX -> CN0)
10. Send Care-of Test. (CN0 -> NUTX)
11. Send Home Test. (out: HA0 -> NUTX, in: CN0 -> NUT0)
12. Receive ICMP Echo Reply or [14]. (out: NUTX -> HA0, in: NUT0 -> CN0)
13. Receive Binding Update to CN0. (NUTX -> CN0)
14. [12] or Receive ICMP Echo Reply. (NUTX -> CN0)
# Home Address destination option is included.
HA0 NUTX R1 R2 CN0
| | | | |
| | <---- | | | 1.Router Advertisement
| | | | |
| NUTY | | |
| | | | |
| | <------------ | | 2.Router Advertisement
| | | | |
| | ----> | | | 3.Neighbor Solicitations
| | | | | 4.(no reply)
| | | | |
| <---- | | | | 5.Binding Update
| ----> | | | | 6.Binding Acknowledgement
| | | | |
| <==== | ---------------------> | 7.Home Test Init
| | ---------------------> | 8.Care-of Test Init
| | <--------------------- | 9.Care-of Test
| ====> | <--------------------- | 10.Home Test
| | | | |
| | ---------------------> | 11.Binding Update (*1)
| | | | |
1. Send Router Advertisement. (R1 -> R1_allnode_multi)
2. Send Router Advertisement. (R2 -> R2_allnode_multi)
3. Receive Neighbor Solicitations. (NUTX -> R1)
4. (no reply)
# Wait during a maximum of 3 seconds(RFC2461).
5. Receive Binding Update to HA0. (NUTY -> HA0)
6. Send Binding Acknowledgement. (HA0 -> NUTY)
7. Receive Home Test Init. (out: NUTY -> HA0, in: NUT0 -> CN0)
8. Receive Care-of Test Init. (NUTY -> CN0)
9. Send Care-of Test. (CN0 -> NUTY)
10. Send Home Test. (out: HA0 -> NUTY, in: CN0 -> NUT0)
11. Receive Binding Update to CN0. (NUTY -> CN0)
Packet Format is:
11.Binding Update
(*1) PASS: CN0 receives Binding Update.
Then, check whether this packet fills all of the following.
- The Destination Address is CN address.
- The Sequence Number is set more than that in the previous Binding Update.
- Check whether the Lifetime fills all of the following.
- The Lifetime is set less than MAX_RR_BINDING_LIFE(420seconds).
- The Lifetime is set less than the remaining lifetime
of the home registration.
- The Lifetime is set less than the remaining lifetime
of care-of address.
- Nonce Indices mobility option is included, and,
- Home Nonce Index is equal to the value in Home Test message.
- Care-of Nonce Index is equal to the value in Care-of Test message.
- Authorization Data mobility option is included, and,
- This option is placed as the right location.
- The Authenticator value has the valid value.
(draft-ietf-mobileip-ipv6-24.txt)
11.7.2 Correspondent Registration
(snip)
A Binding Update is created as follows:
o The current care-of address of the mobile node MUST be sent either
in the Source Address of the IPv6 header or in the Alternate
Care-of Address mobility option.
o The Destination Address of the IPv6 header MUST contain the
address of the correspondent node.
o The Mobility Header is constructed according to rules in Section
6.1.7 and Section 5.2.6, including the Binding Authorization Data
(calculated as defined in Section 6.2.7) and possibly the Nonce
Indices mobility options.
o The home address of the mobile node MUST be added to the packet in
a Home Address destination option, unless the Source Address is
the home address.
Each Binding Update MUST have a Sequence Number greater than the
Sequence Number value sent in the previous Binding Update to the same
destination address (if any). The sequence numbers are compared
modulo 2**16, as described in Section 9.5.1. There is no
requirement, however, that the Sequence Number value strictly
increase by 1 with each new Binding Update sent or received, as long
as the value stays within the window. The last Sequence Number value
sent to a destination in a Binding Update is stored by the mobile
node in its Binding Update List entry for that destination. If the
sending mobile node has no Binding Update List entry, the Sequence
Number SHOULD start at a random value. The mobile node MUST NOT use
the same Sequence Number in two different Binding Updates to the same
correspondent node, even if the Binding Updates provide different
care-of addresses.
9.5.1 Receiving Binding Updates
(snip)
When the Home Registration (H) bit is not set, the following are also
required:
o A Nonce Indices mobility option MUST be present, and the Home and
Care-of Nonce Index values in this option MUST be recent enough to
be recognized by the correspondent node. (Care-of Nonce Index
values are not inspected for requests to delete a binding.)
o The correspondent node MUST re-generate the home keygen token and
the care-of keygen token from the information contained in the
packet. It then generates the binding management key Kbm and uses
it to verify the authenticator field in the Binding Update as
specified in Section 6.1.7.
o The Binding Authorization Data mobility option MUST be present,
and its contents MUST satisfy rules presented in Section 5.2.6.
Note that a care-of address different from the Source Address MAY
have been specified by including an Alternate Care-of Address
mobility option in the Binding Update. When such a message is
received and the return routability procedure is used as an
authorization method, the correspondent node MUST verify the
authenticator by using the address within the Alternate Care-of
Address in the calculations.
o The Binding Authorization Data mobility option MUST be the last
option and MUST NOT have trailing padding.
11.4.2 Sending Mobile Prefix Solicitations
(snip)
As described in Section 11.7.2, Binding Updates sent by the mobile
node to other nodes MUST use a lifetime no greater than the remaining
lifetime of its home registration of its primary care-of address.
The mobile node SHOULD further limit the lifetimes that it sends on
any Binding Updates to be within the remaining valid lifetime (see
Section 10.6.2) for the prefix in its home address.
When the lifetime for a changed prefix decreases, and the change
would cause cached bindings at correspondent nodes in the Binding
Update List to be stored past the newly shortened lifetime, the
mobile node MUST issue a Binding Update to all such correspondent
nodes.