NAME

MN-4-2-2-2-007 - Receiving ICMP error (Code = 1) after sending BU to CN


TARGET

Host


TOPOLOGY

                    
                                  |
                                  R       CN0
                                  |        |
                     -----+-------+--------+---------------- LinkZ
                          |
                          R2                      NUTY
                          |                         |
                     -----+-------+-----------------+------- LinkY
                                  |
                                  R1              NUTX
                                  |                 |
                     -----+-------+-----------------+------- LinkX
                          |
                         HA0             Node0    NUT0
                          |               |         |
    ----------------------+---------------+---------+------- Link0
                    
Link0 3ffe:501:ffff:100::/64 home link
LinkX 3ffe:501:ffff:102::/64  
LinkY 3ffe:501:ffff:103::/64  
LinkZ 3ffe:501:ffff:104::/64  
HA0(Link0) 3ffe:501:ffff:100:200:ff:fe00:a0a0  
Node0(Link0) 3ffe:501:ffff:100:200:ff:fe00:a3a3  
R1(LinkX) 3ffe:501:ffff:102:200:ff:fe00:a4a4  
R2(LinkY) 3ffe:501:ffff:103:200:ff:fe00:a6a6  
CN0(LinkZ) 3ffe:501:ffff:104:200:ff:fe00:a8a8  


INITIALIZATION

 1. Selection Option
    - Route Optimization support : YES
 2. Position of Mobile Node
       HA0     NUT0     R1      R2      CN0
        |       |       |       |        |
        | ----> |       |       |        | 1.Router Advertisement
        |       |       |       |        |
        |      NUTX     |       |        |
        |       |       |       |        |
        |       | <---- |       |        | 2.Router Advertisement
        |       |       |       |        |
        | <---- |       |       |        | 3.Neighbor Solicitations
        |       |       |       |        | 4.(no reply:3 seconds)
        |       |       |       |        |
        | <---- |       |       |        | 5.Binding Update
        | ----> |       |       |        | 6.Binding Acknowledgement
        |       |       |       |        |
                    
        1. Send Router Advertisement. (HA0 -> HA0_allnode_multi)
        2. Send Router Advertisement. (R1 -> R1_allnode_multi)
        3. Receive Neighbor Solicitations. (NUT0 -> HA0)
        4. (no reply)
            # Wait during a maximum of 3 seconds(RFC2461).
        5. Receive Binding Update to HA0. (NUTX -> HA0)
        6. Send Binding Acknowledgement. (HA0 -> NUTX)


TEST PROCEDURE

                    
       HA0     NUTX     R1      R2      CN0
        |       |       |       |        |
        | ====> | <--------------------- |  1.ICMP Echo Request
        |       |       |       |        |
        | <==== | ---------------------> |  2.Home Test Init
        |       | ---------------------> |  3.Care-of Test Init
        |       | <--------------------- |  4.Care-of Test
        | ====> | <--------------------- |  5.Home Test
        |       |       |       |        |
        | <==== | ---------------------> |  6.ICMP Echo Reply
        |       | ---------------------> |  7.Binding Update
        |       | <--------------------- |  8.ICMP Error(Code=1)
        | <==== | ---------------------> |  9.ICMP Echo Reply
        |       |       |       |        |
        | ====> | <--------------------- | 10.ICMP Echo Request
        | <==== | ---------------------> | 11.ICMP Echo Reply (*1)
        |       |       |       |        |
                    
        1. Send ICMP Echo Request. (out: HA0 -> NUTX, in: CN0 -> NUT0)
        2. Receive Home Test Init. (out: NUTX -> HA0, in: NUT0 -> CN0)
        3. Receive Care-of Test Init. (NUTX -> CN0)
        4. Send Care-of Test. (CN0 -> NUTX)
        5. Send Home Test. (out: HA0 -> NUTX, in: CN0 -> NUT0)
        6. Receive ICMP Echo Reply or [9]. (out: NUTX -> HA0, in: NUT0 -> CN0)
        7. Receive Binding Update to CN. (NUTX -> CN0)
        8. Send ICMP Parameter Problem, Code 1. (CN0 -> NUTX)
            # The Type field is set to 4(Parameter Problem).
            # The Code field is set to 1.
        9. [6] or Receive ICMP Echo Reply. (out: NUTX -> HA0, in: NUT0 -> CN0)
       10. Send ICMP Echo Request. (out: HA0 -> NUTX, in: CN0 -> NUT0)
       11. Receive ICMP Echo Reply. (out: NUTX -> HA0, in: NUT0 -> CN0)
                    
        Packet Format is:
          10.ICMP Echo Request Data is:
            IPv6 header (source = home agent,
                         destination = care-of address)
            ESP header
            IPv6 header (source = correspondent node,
                         destination = home address)
            ICMPv6 Echo Request
                    
          11.ICMP Echo Reply Data is:
            IPv6 header (source = care-of address,
                         destination = home agent)
            ESP header
            IPv6 header (source = home address,
                         destination = correspondent node)
            ICMPv6 Echo Reply
                    


JUDGEMENT

 (*1) PASS: CN0 receives ICMP Echo Reply by reverse tunneling.


REFERENCE

                    
(draft-ietf-mobileip-ipv6-24.txt)
                    
11.3.5 Receiving ICMP Error Messages
                    
   Any node that does not recognize the Mobility header will return an
   ICMP Parameter Problem, Code 1, message to the sender of the packet.
   If the mobile node receives such an ICMP error message in response to
   a return routability procedure or Binding Update, it SHOULD record in
   its Binding Update List that future Binding Updates SHOULD NOT be
   sent to this destination.  Such Binding Update List entries SHOULD be
   removed after a period of time, in order to allow for retrying route
   optimization.
                    
   New Binding Update List entries MUST NOT be created as a result of
   receiving ICMP error messages.