NAME

ncStateByNa4Nonce - Verifying State Machine: NA vs. No neighbor cache entry


TARGET

Host and Router


INITIALIZATION

  Clear a neighbor cache entry for TN.


TEST PROCEDURE

ncStateByNa4Nonce verifies that state transition for a NUT in NONCE state when receiving a NA.

  TN               NUT
  ----------------------

State: No neighbor cache entry (for TN)
==== NA ===> src=TN's link-local dst=NUT's link-local or all-node w/o or w/ TLLA r=0, s=0/1, o=0/1
Judgment: Examining NUT's neighbor cache state


JUDGMENT

  Any NA should be ignored if no Neighbor Cache entry exists.
================================+===============+============= NA |New State |cached LLA ---------------+-+--+-+---------+ | Destination |r| s|o|TLLA | | ===============+=+==+=+=========+===============+============= Unicast 0 0 0 none none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 0 1 none none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 0 none none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 1 none none unchanged ===============+=+==+=+=========+===============+============= Unicast 0 0 0 exist none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 0 1 exist none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 0 exist none unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 1 exist none unchanged ===============+=+==+=+=========+===============+============= *Multicast 0 0 0 *none none unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 0 1 *none none unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 0 *none none unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 1 *none none unchanged *invalid ===============+=+==+=+=========+===============+============= Multicast 0 0 0 exist none unchanged ---------------+-+--+-+---------+---------------+------------- Multicast 0 0 1 exist none unchanged ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 0 exist none unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 1 exist none unchanged *invalid ===============+=+==+=+=========+===============+=============


TERMINATION

  N/A


NOTE

  The test does not invoke any remote command.


REFERENCE

RFC2461

7.2.5. Receipt of Neighbor Advertisements
When a valid Neighbor Advertisement is received (either solicited or unsolicited), the Neighbor Cache is searched for the target's entry. If no entry exists, the advertisement SHOULD be silently discarded. There is no need to create an entry if none exists, since the recipient has apparently not initiated any communication with the target.


SEE ALSO

  perldoc V6evalTool
  perldoc V6evalRemote