NAME

V6LC_2_2_15_C - Router Advertisement Processing, Neighbor Cache (RA with SLLA changed, NCE REACHABLE)


TARGET

Host


TOPOLOGY

    |
   TR1     HUT
    |       |
----+-------+--- Link0

Link0 link-local fe80::/64
TR1 link-local fe80::200:ff:fe00:a0a0
ether 00:00:00:00:a0:a0
HUT link-local fe80::<NutDef.Link0_addr>
ether <NutDef.Link0_addr>


SETUP

none


TEST PROCEDURE

Verify that a host properly updates its Neighbor Cache upon receipt of a Router Advertisement.
   TR1     HUT
    |       |
    | ----> | Echo Request
    |   <-- | NS (multicast) [Judgment #1]
    | ----> | NA
    | <---- | Echo Reply     [Judgment #2]
    |       |
    | -->   | RA
    |       |
    | ----> | Echo Request
    | <---- | Echo Reply     [Judgment #3]
    |       |
    *       | Wait (DELAY_FIRST_PROBE_TIME)
    |       |
    | <---- | NS             [Judgment #4]
    | <---- | NS
    | <---- | NS
    |       |
    V       V

1. Send Echo Request
        IPv6 header
            source      = TR1 (link-local)
            destination = HUT (link-local)
        Echo Request
2. Observe NS
        IPv6 header
            hop limit   = 255
            source      = RUT (link-local)
            destination = TR1 (solicited-node multicast address)
        NS
            target      = TR1 (link-local)
        SLL option
3. 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
4. Observe Echo Reply
        IPv6 header
            source      = HUT (link-local)
            destination = TR1 (link-local)
        Echo Reply
5. 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    = 0
            reachable time     = 10000
            retrans timer      = 1000
        SLL option
            address     = TRY (ether)
6. Send Echo Request
        IPv6 header
            source      = TR1 (link-local)
            destination = HUT (link-local)
        Echo Request
7. Observe Echo Reply
        IPv6 header
            source      = HUT (link-local)
            destination = TR1 (link-local)
        Echo Reply
8. Wait (DELAY_FIRST_PROBE_TIME)
        Node constants:
            DELAY_FIRST_PROBE_TIME: 5 seconds
9. 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


JUDGEMENT

[Judgment #1] The HUT should create a Neighbor Cache Entry for TR1 and set the state of the Entry to INCOMPLETE. The HUT should send a multicast Neighbor Solicitation to TR1.
[Judgment #2] The HUT should update the state of TR1's NCE to REACHABLE and record TR1's Link-layer Address. Because the HUT is in state REACHABLE, after receiving the earlier Echo Request from TR1, the HUT should send an Echo Reply using the received Link-Layer Address. After DELAY_FIRST_PROBE_TIME, the HUT should not send a unicast Neighbor Solicitation to TR1.
[Judgment #3] The HUT must change the state of the TR1's NCE to STALE and update its Link-layer Address according to the Router Advertisement received in Step 12. Because the HUT's NCE for TR1 is in state STALE, the HUT should send an Echo Reply to TR1 using the new Link-Layer address and enter state DELAY.
[Judgment #4] After DELAY_FIRST_PROBE_TIME, the HUT should send a unicast Neighbor Solicitation to TR1.


CLEANUP

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     HUT
    |       |
    | -->   | RA
    |       |
    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    = 0
            reachable time     = 30000
            retrans timer      = 1000
        Prefix Information option
            prefix length      = 64
            L                  = 1
            A                  = 1
            valid Lifetime     = 0
            preferred lifetime = 0
            prefix             = 3ffe:501:ffff:100::


REFERENCE

RFC 2461 - Neighbor Discovery for IPv6