NAME

V6LC_2_2_10 - Default Router Switch


TARGET

Host


TOPOLOGY

                   TN2
                    |
----+-------+-------+--- LinkX
    |       |
   TR1     TR2     HUT
    |       |       |
----+-------+-------+--- Link0

Link0 global 3ffe:501:ffff:100::/64
link-local fe80::/64
LinkX global 3ffe:501:ffff::/64
link-local fe80::/64
TR1 global 3ffe:501:ffff:100:200:ff:fe00:a0a0
link-local fe80::200:ff:fe00:a0a0
ether 00:00:00:00:a0:a0
TR2 global 3ffe:501:ffff:100:200:ff:fe00:a1a1
link-local fe80::200:ff:fe00:a1a1
ether 00:00:00:00:a1:a1
HUT global 3ffe:501:ffff:100::<NutDef.Link0_addr>
link-local fe80::<NutDef.Link0_addr>
ether <NutDef.Link0_addr>
TN2 global 3ffe:501:ffff::<TnDef.Link0_addr>
link-local fe80::<TnDef.Link0_addr>
ether <TnDef.Link0_addr>
HUT global 3ffe:501:ffff:100::<NutDef.Link0_addr>
link-local fe80::<NutDef.Link0_addr>
ether <NutDef.Link0_addr>


SETUP

none


TEST PROCEDURE

- Verify that a host maintains at least two routers in its Default Router List and will switch routers when the router in use fails.
   TN2     TR1     TR2     HUT
    |       |       |       |
    |       | -->   |       | RA (multicast)
    |       |       |       |
    | ------+-------------> | Echo Request (via TR1)
    |       |       |   <-- | NS (multicast)         [Judgment #1]
    |       | ------------> | NA
    | <-----+-------------- | Echo Reply   (via TR1) [Judgment #1]
    |       |       |       |
    |       |       | -->   | RA (multicast)
    |       |       |       |
    | ------+-------------> | Echo Request (via TR1)
    | <-----+-------------- | Echo Reply   (via TR1)
    |       |       |       |
    |       *       |       | Reachable Time expires
    |       |       |       |
    | ------+-------------> | Echo Request (via TR1)
    |       | <------------ | NS                     [Judgment #2]
    |       | <------------ | NS
    |       | <------------ | NS
    |       |       |       |
    | ------+-------------> | Echo Request (via TR1)
    |       |       |   <-- | (multicast)            [Judgment #3]
    |       |       |       |
    V       V       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    = 45
            reachable time     = 10000
            retrans timer      = 1000
        Prefix Information option
            prefix length      = 64
            L                  = 1
            A                  = 1
            valid Lifetime     = 2592000
            preferred lifetime = 604800
            prefix             = 3ffe:501:ffff:100::
2. Send Echo Request
        IPv6 header
            source      = TN2 (global)
            destination = HUT (global)
        Echo Request
3. Observe NS
        IPv6 header
            hop limit   = 255
            source      = HUT (link-local)
            destination = TR1 (solicited-node multicast address)
        NS
            target      = TR1 (link-local)
        SLL option
4. 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
5. Observe Echo Reply
        IPv6 header
            source      = HUT (global)
            destination = TN2 (global)
        Echo Reply
6. 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    = 45
            reachable time     = 10000
            retrans timer      = 1000
        Prefix Information option
            prefix length      = 64
            L                  = 1
            A                  = 1
            valid Lifetime     = 2592000
            preferred lifetime = 604800
            prefix             = 3ffe:501:ffff:100::
7. Send Echo Request every 3 seconds for 30 seconds
        IPv6 header
            source      = TN2 (global)
            destination = HUT (global)
        Echo Request
8. Observe MAX_UNICAST_SOLICIT NSs, when reachable time expires.
        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
9. Send Echo Request
        IPv6 header
            source      = TN2 (global)
            destination = HUT (global)
        Echo Request
10. Observe MAX_MULTICAST_SOLICIT NSs
        IPv6 header
            hop limit   = 255
            source      = HUT (link-local)
            destination = TR2 (solicited-node multicast address)
        NS
            target      = TR2 (link-local)
        SLL option
        Node constants:
            MAX_MULTICAST_SOLICIT: 3 transmissions


JUDGEMENT

[Judgment #1] The HUT should transmit a Neighbor Solicitation with a Target Address equal to TR1's link-local address. The HUT should send an Echo Reply to TN2 via TR1 in response to Packet A.
[Judgment #2] The HUT should send Echo Replies to TR1's link local address until Reachable Time expires. When Reachable Time expires, the HUT should send 3 Neighbor Solicitations to TR1's link local address.
[Judgment #3] The HUT selects TR2 from its Default Router list. The HUT sends Neighbor Solicitations to TR2's link local address. After sending the packets to TR2, the HUT probes TR2 as a side effect.


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     TR2     HUT
    |       |       |
    | -->   |       | RA
    |       |       |
    |       | -->   | RA
    |       |       |
    V       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::
2. 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    = 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