pmtuStore - Verify if NUT can store PMTU for multiple Destinations.
Host
This test evaluate the behavior of NUT when it receive the ICMP
Packet Too Big Message for multiple destinations.
In this test, NUT is a host and TN plays a Roll of Routers and
other hosts.
Phisical Network configuration
--------+---------------+----------
| |
NUT TN
Logical Network Configuration
NUT
|
----------------+-------+--------
|
Router-1
|
--------+-------+-------+--------
| |
Router-2 HOST-1
|
--------+-------+-------+--------
| |
Router-n HOST-2
|
----------------+-------+--------
|
HOST-n
:
:
In this test, NUT receives Packet Too Big Messages for multiple
destinations.
- Register PMTU for multiple HOST
- Verify PMTU for multiple HOST
The TN send a RA to assign global address prefix.
TN NUT
| |
---+------------+------
===multicast RA===>
src=TN's link-local
dst=LinkLocal-all-node
M=0, O=0,
Lifetime=3600, ReachableTime=60000, RetransTimer=1005
Prefix:
L=1, A=1,
ValidLifetime=3600005, PreferredLifetime=3600005
Prefix=3ffe:501:ffff:100::, PrefixLength=64
Wait (5 sec.)
Ignoring DAD packets for global address.
"pmtuStore" verify NUT's behavior when it receives
ICMP Packet Too Big Mesg for multiple destinations.
TN NUT
| |
---+------------+------
1. Register PMTU for multiple destinations
1.1
TN send Echo Request.
TN(n) === echo request(1500) ===> NUT
1.2
NUT send Echo Reply.
TN(n) <=== echo reply(1500) === NUT
1.3
TN send ICMPv6 Too Big Mesg with MTU (1280+n*8).
TN(n) === ICMPv6 Too Big Mesg(MTU=1280+n*8) ===> NUT
2. Confirm PMTU for multiple destinations
2.1
TN send Echo Request.
TN(n) === echo request(1500) ===> NUT
2.2
NUT send Echo Reply
<< JUDGMENT 1 >>
TN(n) <=== echo reply(1280+n*8 1/2) === NUT
TN(n) <=== echo reply( 276-n*8 2/2) === NUT
<< JUDGMENT 1 -PASS- >>
NUT send Echo Reply
"PASS" means that NUT set valid MTU in received Packet Too Big message for multiple destinations.
And fragmented packets are correct.
perldoc V6evalTool
perldoc V6evalRemote