This minimal setup procedure provides the NUT with a default router TR1, a global prefix, and ensures that the NUT can communicate with TR1.
TR1 HUT
| |
| --> | RA
| |
* | Wait (MAX_RTR_SOLICITATION_DELAY + RetransTimer * DupAddrDetectTransmits)
| |
| ----> | Echo Request
| <-- | NS
| ----> | NA
| <---- | Echo Reply
| |
V V
1. Send RA
IPv6 header
hop limit = 255
source = TR1 (link-local)
destination = all-nodes multicast address
RA
cur hop limit = 64
M = 0
O = 0
router lifetime = 1800
reachable time = 0
retrans timer = 0
Prefix Information option
prefix length = 64
L = 1
A = 1
valid Lifetime = 2592000
preferred lifetime = 604800
prefix = 3ffe:501:ffff:100::
2. Wait (MAX_RTR_SOLICITATION_DELAY + RetransTimer * DupAddrDetectTransmits)
Host constants:
MAX_RTR_SOLICITATION_DELAY: 1 second
Node constants:
RETRANS_TIMER : 1,000 milliseconds
Host Variables:
RetransTimer
Default : RETRANS_TIMER milliseconds
Node Variables:
DupAddrDetectTransmits
Default : 1
3. Send Echo Request
IPv6 header
source = TR1 (link-local)
destination = HUT (link-local)
Echo Request
4. Observe NS
IPv6 header
hop limit = 255
source = HUT (link-local)
destination = TR1 (solicited-node multicast address)
NS
target = TR1 (link-local)
SLL option
5. Send NA
IPv6 header
hop limit = 255
source = TR1 (link-local)
destination = HUT (link-local)
NA
R = 1
S = 1
O = 1
target = TR1 (link-local)
TLL option
6. Observe Echo Reply
IPv6 header
source = HUT (link-local)
destination = TR1 (link-local)
Echo Reply
Verify that a host properly processes invalid Redirect messages when redirected on-link.
TN1 TR1 TR2 HUT
| | | |
| ------+-------------> | Echo Request (via TR1)
| <-----+-------------- | Echo Reply (via TR1) [Judgment #1]
| | | |
| | | --> | RA
| | | |
| | ------------> | Redirect
| | | |
| ------+-------------> | Echo Request (via TR1)
| <-----+-------------- | Echo Reply (via TR1) [Judgment #2]
| | | |
V V V V
1. Send Echo Request (via TR1)
IPv6 header
source = TN1 (global)
destination = HUT (global)
Echo Request
2. Observe Echo Reply (via TR1)
IPv6 header
source = HUT (global)
destination = TN1 (global)
Echo Reply
3. Send RA
IPv6 header
hop limit = 255
source = TR2 (link-local)
destination = all-nodes multicast address
RA
cur hop limit = 64
M = 0
O = 0
router lifetime = 1800
reachable time = 0
retrans timer = 0
SLL option
Prefix Information option
prefix length = 64
L = 1
A = 1
valid Lifetime = 2592000
preferred lifetime = 604800
prefix = 3ffe:501:ffff:100::
4. Send Redirect
IPv6 header
hop limit = 255
source = TR1 (link-local)
destination = HUT (global)
Redirect
checksum = 0
target = TR2 (link-local)
destination = TN1 (global)
TLL option
length = 0
5. Send Echo Request (via TR1)
IPv6 header
source = TN1 (global)
destination = HUT (global)
Echo Request
6. Observe Echo Reply (via TR1)
IPv6 header
source = HUT (global)
destination = TN1 (global)
Echo Reply
The Cleanup procedure should cause the NUT to transition Neighbor Cache entries created in this test to state INCOMPLETE and remove any entries from its Default Router and Prefix Lists.
TR1 TR2 HUT
| | |
| | --> | RA
| | |
| --> | | RA
| | |
| | --> | NA
| | |
| | ----> | Echo Request
| | <---- | Echo Reply
| | |
| * | Wait (DELAY_FIRST_PROBE_TIME)
| | |
| | <---- | NS
| | <---- | NS
| | <---- | NS
| | |
| --> | | NA
| | |
| ------------> | Echo Request
| <------------ | Echo Reply
| | |
* | | Wait (DELAY_FIRST_PROBE_TIME)
| | |
| <------------ | NS
| <------------ | NS
| <------------ | NS
| | |
V V V
1. Send RA
IPv6 header
hop limit = 255
source = TR2 (link-local)
destination = all-nodes multicast address
RA
cur hop limit = 64
M = 0
O = 0
router lifetime = 1800
reachable time = 0
retrans timer = 0
Prefix Information option
prefix length = 64
L = 1
A = 1
valid Lifetime = 0
preferred lifetime = 0
prefix = 3ffe:501:ffff:100::
2. Send RA
IPv6 header
hop limit = 255
source = TR1 (link-local)
destination = all-nodes multicast address
RA
cur hop limit = 64
M = 0
O = 0
router lifetime = 1800
reachable time = 0
retrans timer = 0
Prefix Information option
prefix length = 64
L = 1
A = 1
valid Lifetime = 0
preferred lifetime = 0
prefix = 3ffe:501:ffff:100::
3. Send NA w/ TLL (diff)
IPv6 header
hop limit = 255
source = TR2 (link-local)
destination = all-nodes multicast address
NA
R = 1
S = 0
O = 1
target = TR1 (link-local)
TLL option
address = TRX (ether)
4. Send Echo Request
IPv6 header
source = TR2 (link-local)
destination = HUT (link-local)
Echo Request
5. Observe Echo Reply
IPv6 header
source = HUT (link-local)
destination = TR2 (link-local)
Echo Reply
6. Wait (DELAY_FIRST_PROBE_TIME)
Node constants:
DELAY_FIRST_PROBE_TIME: 5 seconds
7. Observe MAX_UNICAST_SOLICIT NSs
IPv6 header
hop limit = 255
source = HUT (link-local)
destination = TR2 (link-local)
NS
target = TR2 (link-local)
SLL option
Node constants:
MAX_UNICAST_SOLICIT: 3 transmissions
8. Send NA w/ TLL (diff)
IPv6 header
hop limit = 255
source = TR1 (link-local)
destination = all-nodes multicast address
NA
R = 1
S = 0
O = 1
target = TR1 (link-local)
TLL option
address = TRX (ether)
9. Send Echo Request
IPv6 header
source = TR1 (link-local)
destination = HUT (link-local)
Echo Request
10. Observe Echo Reply
IPv6 header
source = HUT (link-local)
destination = TR1 (link-local)
Echo Reply
11. Wait (DELAY_FIRST_PROBE_TIME)
Node constants:
DELAY_FIRST_PROBE_TIME: 5 seconds
12. Observe MAX_UNICAST_SOLICIT NSs
IPv6 header
hop limit = 255
source = HUT (link-local)
destination = TR1 (link-local)
NS
target = TR1 (link-local)
SLL option
Node constants:
MAX_UNICAST_SOLICIT: 3 transmissions