- Verify that NUT doesn't update entry's reachablity state
- Verify that NUT transmits valid NA in STALE state
- Verify that NUT transmits valid NSs in PROBE state
TN NUT
| |
| ----> | Echo Request
| <-- | NS (multicast)
| ----> | NA
| <---- | Echo Reply
| |
| ----> | Echo Request
| <---- | Echo Reply
| |
* | Wait (REACHABLE_TIME * MAX_RANDOM_FACTOR)
| |
| ----> | NS (unicast)
| ----> | Echo Request
| <---- | NA [Judgment #1]
| <---- | Echo Reply
| |
* | Wait (DELAY_FIRST_PROBE_TIME)
| |
| <---- | NS (unicast) [Judgment #2]
| <---- | NS (unicast)
| <---- | NS (unicast)
| |
V V
State: NONE (TN) (link-local)
1. Send Echo Request
IPv6 header
source = TN (link-local)
destination = NUT (link-local)
Echo Request
State: INCOMPLETE (TN) (link-local)
2. Observe NS
IPv6 header
hop limit = 255
source = NUT (link-local)
destination = TN (solicited-node multicast address)
NS
target = TN (link-local)
SLL option
3. Send NA
IPv6 header
hop limit = 255
source = TN (link-local)
destination = NUT (link-local)
NA
R = 0
S = 1
O = 1
target = TN (link-local)
TLL option
State: REACHABLE (TN) (link-local)
4. Observe Echo Reply
IPv6 header
source = NUT (link-local)
destination = TN (link-local)
Echo Reply
State: REACHABLE (TN) (link-local)
5. Send Echo Request
IPv6 header
source = TN (link-local)
destination = NUT (link-local)
Echo Request
6. Observe Echo Reply
IPv6 header
source = NUT (link-local)
destination = TN (link-local)
Echo Reply
State: REACHABLE (TN) (link-local)
7. Wait (REACHABLE_TIME * MAX_RANDOM_FACTOR)
Node constants:
REACHABLE_TIME : 30,000 milliseconds
MAX_RANDOM_FACTOR: 1.5
State: STALE (TN) (link-local)
8. Send NS
IPv6 header
hop limit = 255
source = TN (link-local)
destination = NUT (solicited-node multicast address)
NS
target = NUT (link-local)
SLL option
9. Send Echo Request
IPv6 header
source = TN (link-local)
destination = NUT (link-local)
Echo Request
10. Observe NA [Judgment #1]
IPv6 header
source = NUT (link-local)
destination = TN (link-local)
NA
R = 0 (If NUT is Host)
= 1 (If NUT is Router)
= any (If NUT is Embedded)
S = 1
O = 1
target = NUT (link-local)
TLL option
11. Observe Echo Reply
IPv6 header
source = NUT (link-local)
destination = TN (link-local)
Echo Reply
State: DELAY (TN) (link-local)
12. Wait (DELAY_FIRST_PROBE_TIME)
Node constants:
DELAY_FIRST_PROBE_TIME: 5 seconds
State: PROBE (TN) (link-local)
13. Observe MAX_UNICAST_SOLICIT NSs [Judgment #2]
IPv6 header
hop limit = 255
source = NUT (link-local)
destination = TN (link-local)
NS
target = TN (link-local)
SLL option
Node constants:
MAX_UNICAST_SOLICIT: 3 transmissions
State: NONE (TN) (link-local)