NAME

        pingwRH - Verify the behavior of NUT when it receives ICMP Echo Request which has Routing Header and Greater size than PMTU for next hop.


TARGET

        Host(LCNA)


SYNOPSIS

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


NETWORK CONFIGURATION

        In this test, NUT is a host(LCNA) and TN plays a Roll of Router and 
        other host.
        
        Phisical Network configuration
        
        --------+---------------+----------
                |               |
                NUT             TN

        Logical Network Configuration

                                NUT
                                |
        ----------------+-------+--------
                        |
                    Router-A
                        |
        ----------------+-------+--------
                                | 
                                HOST-A

        (NotYet)In this test, NUT receives strange Packet Too Big Message. 
        - Smaller MTU(1200) than Minimum MTU(1280)


INITIALIZATION

        (NotYet)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.                 


TEST PROCEDURE

        (NotYet)"pingwRH" verify NUT's behavior when it receives 
         ICMP Packet Too Big Mesg.

           TN          NUT
           |            |
        ---+------------+------

        1. Initializing send PKT TOO BIG (MTU=1280) if required ---
        1.1
        TN send Echo Request.  
        TN(A) === echo request(1400) ===> NUT

        1.2
        NUT send Echo Reply.
        TN(A) <=== echo reply(1400) ===== NUT

        1.3
        TN send ICMPv6 Too Big Mesg include MTU (1280).
        TN(A) === ICMPv6 Too Big Mesg(MTU=1280) ===> NUT

        1.4
        TN send Echo Request.  
        TN(A) === echo request(1280) ===> NUT

        1.5
        NUT send Echo Reply.
        << JUDGMENT 1 >>
        TN(A) <=== echo reply(1280)  ==== NUT

        1.6
        TN send Echo Request.  
        TN(B) === echo request(1400) ===> NUT

        1.7
        NUT send Echo Reply 
        << JUDGMENT 2 >>
        TN(B) <=== echo reply(1280 1/2) === NUT
        TN(B) <=== echo reply( 176 2/2) === NUT

        2. PKT TOO BIG (MTU=1400) -------------------------------
        2.1
        TN send ICMPv6 Too Big Mesg include MTU (1400).
        TN(B) === ICMPv6 Too Big Mesg(MTU=1400) ===> NUT

        2.4
        TN send Echo Request.  
        TN(B) === echo request(1400) ===> NUT

        2.5
        NUT send Echo Reply 
        << JUDGMENT 3 >>
        TN(B) <=== echo reply(1280 1/2) === NUT
        TN(B) <=== echo reply( 176 2/2) === NUT


JUDGMENT

        (not yet)
        << JUDGMENT 1 -PASS- >>
                NUT send Echo Reply

                "PASS" means that NUT can send ICMP Echo Reply which size is 1280.
                And packets are correct.

        << JUDGMENT 2 -PASS- >>
                NUT send Echo Reply

                "PASS" means that NUT does not transmit packets bigger than Minimum MTU.
                And fragmented packets are correct.
                But LCNA may not be able to deal with packets greater than Minimum MTU, 
                and also LNCA may not be able to fragment packets. 
                In this case LCNA could not send Echo Reply. 
                It is not critical, it means just "not supporting".
                The worst case is sending Echo Reply (1400) without fragment.
                It means NUT does not pay attention to received Packet Too Big Message.
                And also if the NUT does not support PMTU Discovery function, 
                it MUST NOT send greater packets than Minimun MTU.

        << JUDGMENT 3 -PASS- >>
                NUT send Echo Reply

                "PASS" means that NUT does not increase MTU by receiving PackeTooBig Message.
                And fragmented packets are correct.
                But LCNA may not be able to deal with packets greater than Minimum MTU, 
                and also LNCA may not be able to fragment packets. 
                In this case LCNA could not send Echo Reply. 
                It is not critical, it means just "not supporting".
                The worst case is sending Echo Reply (1400) without fragment.
                It means NUT increase PMTU by receiving Packet Too Big Message.
                And also if the NUT does not support PMTU Discovery function, 
                it MUST NOT send greater packets than Minimun MTU.


SEE ALSO

        perldoc V6evalTool
        perldoc V6evalRemote