hRouterOhterNode.seq - "Multicast Listener Discovery for IPv6" Test
Router send Query, But Another node reply (use Global scope)
Host
None
This test check following, if node listen to Global scope Multicast.
*1: A node don't transmit an Report message,
when a node receives a Query message
and a node recives another node's Report message
before node transmit an Report message.
-- in RFC2710 page 6 --
If a node receives another node's Report from an interface for a
multicast address while it has a timer running for that same address
on that interface, it stops its timer and does not send a Report for
that address, thus suppressing duplicate reports on the link.
-- in RFC2710 page 6 --
*2: A node don't transmit an Done message,
When a node ceases to listen to a multicast.
-- in RFC2710 page 7 --
If the node's most
recent Report message was suppressed by hearing another Report
message, it MAY send nothing, as it is highly likely that there is
another listener for that address still present on the same link.
-- in RFC2710 page 7 --
-Test flow
1. Listen to Multicast
1.1. Wait 1 or 2 Unsolicited Report message from NUT
Now Idle Listener state
2. TN send General Query message (Maximum Response Delay = 7000 ms)
2.1. TN send another node's Report message
2.2. NUT don't transmit an Report message
Check *1
3. TN send Multicast-Address-Specific Query message
(Maximum Response Delay = 7000 ms
Multicast Address = NUT is listening to)
3.1. TN send another node's Report message
3.2. NUT don't transmit an Report message
Check *1
4. Stop to Listen Multicast
4.1. NUT don't transmit an Done message
Check *2
NUT TN
| |
|<-<-<-<-+ Command: Listen to Multicast
| |
+------->| Unsolicited Report message
+------->| Unsolicited Report message
| |
|<-------+ General Query message (Maximum Response Delay = 7000 ms)
|<-------+ another node's Report message
| |
| | No Report message
| | Check *1
| |
|<-------+ Multicast-Address-Specific Query message
| | (Maximum Response Delay = 7000 ms
| | Multicast Address = NUT is listening to)
|<-------+ another node's Report message
| |
| | No Report message
| | Check *1
| |
|<-<-<-<-+ Command: Stop to Listen Multicast
| |
| | No Done message
| | Check *2
| |
PASS: Don't receive any Report message
Don't receive any Done message
perldoc V6evalTool
MLD.pm "Multicast Listener Discovery for IPv6" Test Common Utility