NAME

ncStateByNa4Nonce - Verifying State Machine: NA vs. NONCE


TARGET

Host and Router


SYNOPSIS

  ncStateByNa4Nonce.seq [-tooloption ...] -p ncStateByNa4Nonce.def


INITIALIZATION

  Clear NC state for TN.


TEST PROCEDURE

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

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

State: NONCE (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.

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.
================================+===============+============= NA |New State |cached LLA ---------------+-+--+-+---------+ | Destination |r| s|o|TLLA | | ===============+=+==+=+=========+===============+============= Unicast 0 0 0 none NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 0 1 none NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 0 none NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 1 none NONCE unchanged ===============+=+==+=+=========+===============+============= Unicast 0 0 0 exist NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 0 1 exist NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 0 exist NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Unicast 0 1 1 exist NONCE unchanged ===============+=+==+=+=========+===============+============= *Multicast 0 0 0 *none NONCE unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 0 1 *none NONCE unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 0 *none NONCE unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 1 *none NONCE unchanged *invalid ===============+=+==+=+=========+===============+============= Multicast 0 0 0 exist NONCE unchanged ---------------+-+--+-+---------+---------------+------------- Multicast 0 0 1 exist NONCE unchanged ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 0 exist NONCE unchanged *invalid ---------------+-+--+-+---------+---------------+------------- *Multicast 0 *1 1 exist NONCE unchanged *invalid ===============+=+==+=+=========+===============+=============


TERMINATION

  N/A


NOTE

  The test does not invoke any remote command.


SEE ALSO

  perldoc V6evalTool
  perldoc V6evalRemote