Subject: Re: [Mip6] Non-tunnelled Echo Req MN to HA

From: Alexandru Petrescu <[email-masked]>
Date: Thu, 01 Feb 2007 15:33:20 +0100

Vijay Devarapalli wrote:
> Hello Kawaguchi-san,
> 
> Sorry for the late reply.
> 
> K.Kawaguchi wrote:
>> The test specification interprets RFC3775 as follows now.
>>
>> a) Whether HA transmits BRR or not.
>>
>>    => HA doesn't send BRR.
> 
> That is correct.
> 
>> b) How should HA do, when HA receives the packet of Echo Request with
>>    Home Address destination option from MN where HA has the binding
>>    cache entry.
>>
>>    => HA replies Echo Reply wtih type2 routing headr.
>>       When HA sends the packet to MN, the processing of HA is the same
>>       as CN (10.4.2 refer to 9.3.2 in RFC3775).
>>       In view of the situation, when HA receives the packet from MN,
>>       the processing of HA is the same as CN (so 10.4.x seems to have
>>       missed the reference to 9.3.1.).
> 
>> c) How should HA do, when HA receives the packet of Echo Request with
>>    Home Address destination option from node where HA hasn't the binding
>>    cache entry.
>>
>>    => HA replies Binding Error(status 1).
>>       The reason is the same as b).
> 
> No. If you want to interpret RFC 3775 accurately, the HA
> should send a binding error (status 1) only if the home
> address in the home address option does not belong to the
> home prefix served by the HA. If the HA is the home agent
> for that mobile node, the packet should be dropped (no
> binding error is sent).

No, same RFC says that MH Binding Error should be sent by _any_ node 
that doesn't understand (not only under the condition you mention above).

Alex

_______________________________________________
Mip6 mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/mip6

---

From: Vijay Devarapalli <[email-masked]>
Date: Thu, 01 Feb 2007 11:44:18 -0800

K.Kawaguchi wrote:
> - There are the home prefix 2001:DB8:1:1::/64 served by the HA.
> - The HA has one binding cache entry for the MN-1.

I assume the binding cache entry is for the MN's home
address - 2001:DB8:1:1::1

> - The MN-1 home address is 2001:DB8:1:1::1.
> - The MN-1 primary care-of address is 2001:DB8:100:100::1.
> 
> How should the HA do, if the HA receives the following echo request with
> the home address option.
> 
> 1) The "well known" addresses in the echo request.
> 
>     Echo request with the home address option
>       src: MN primary care-of address (2001:DB8:100:100::1)
>       dst: HA address
>       home address option, home address: MN home address (2001:DB8:1:1::1)
> 
>     It is echo reply with the type2 routing header in my understanding.
>       src: HA address
>       dst: MN primary care-of address (2001:DB8:100:100::1)
>       type2 routing header, home address: MN home address (2001:DB8:1:1::1)

Correct.

> 2) The unknown address in the source address field.
> 
>     Echo request with the home address option
>       src: unknown address (2001:DB8:100:100::2)
>       dst: HA address
>       home address option, home address: MN home address (2001:DB8:1:1::1)
> 
>     It is binding error in my understanding.
>       src: HA address
>       dst: 2001:DB8:100:100::2
>       BE header, status      : 1
>                  home address: 2001:DB8:1:1::1

No. The packet is silently dropped, since the MN is sending
a packet with a different CoA. It is not using a CoA that it
has registered with the home agent.

> 3) The unknown address in the home address field of the home address
>    option. It is in home prefix.
> 
>     Echo request with the home address option
>       src: MN primary Care-of Address (2001:DB8:100:100::1)
>       dst: HA Address
>       Home Address Option, home address: unknown address (2001:DB8:1:1::3)
> 
>     It is binding error in my understanding.
>       src: HA address
>       dst: 2001:DB8:100:100::1
>       BE header, status      : 1
>                  home address: 2001:DB8:1:1::3

Packet is dropped again. Sending a binding error with status
1 would make sense here, but if you want to interpret RFC
3775 accurately (since we are talking about a logo test), the
packet should be silently dropped and binding error message
should not be sent.

> 4) The unknown address in the home address field of the home address
>    option. It isn't in home prefix.
> 
>     Echo request with the home address option
>       src: MN primary Care-of Address (2001:DB8:100:100::1)
>       dst: HA Address
>       Home Address Option, home address: unknown address (2001:DB8:4:4::4)
> 
>     It is binding error in my understanding.
>       src: HA address
>       dst: 2001:DB8:100:100::1
>       BE header, status      : 1
>                  home address: 2001:DB8:4:4::4

Correct.

> 5) The unknown address in the source address field.
>    The unknown address in the home address field of the home address
>    option. It is in home prefix.
> 
>     Echo request with the home address option
>       src: unknown address (2001:DB8:500:500::5)
>       dst: HA Address
>       Home Address Option, home address: unknown address (2001:DB8:1:1::5)
> 
>     It is binding error in my understanding.
>       src: HA Address
>       dst: 2001:DB8:500:500::5
>       BE header, status      : 1
>                  home address: 2001:DB8:1:1::5

Packet is dropped again. Binding Error is not sent.

> 6) The unknown address in the source address field.
>    The unknown address in the home address field of the home address
>    option. It isn't in home prefix.
> 
>     Echo request with the home address option
>     src: unknown address (2001:DB8:600:600::6)
>     dst: HA Address
>     home address in Home Address Option: unknown address (2001:DB8:6:6::6)
> 
>     It is binding error in my understanding.
>       src: HA Address
>       dst: 2001:DB8:600:600::6
>       BE header, status      : 1
>                  home address: 2001:DB8:6:6::6

Correct.

Hope this helps.

Vijay

---

From: "K.Kawaguchi" <[email-masked]>
Date: Tue, 6 Feb 2007 15:38:57 +0900

Thank you for your answer.
But, I have not understood your answer yet.

Please let me detail it down in addition for me.
I enumerate two procedures in each situation though I think that the
processing procedure of this packet is unrelated.

> address - 2001:DB8:1:1::1

Yes, it is so. 

> has registered with the home agent.

2.1) If the home address is used as the key for searching the binding
     cache.
  2.1 1) HA finds the binding cache entry to which the home address is
         corresponding.
  2.1 2) However, the source address of the received packet is not
         corresponding to the care-of address of the binding cache
         entry.
  2.1 3) HA silently drops the received packet.

2.1) If the care-of address is used as the key for searching the
     binding cache.
  2.2 1) HA doesn't find the binding cache entry.
  2.2 2) HA silently drops the received packet.

> packet should be silently dropped and binding error message

I want to reflect it in the Logo test correctly interpreting RFC.
Also, I want to reflect to the Logo the discussion and consensus on
this ML if there is an inconvenient part on RFC.

3.1) If the home address is used as the key for searching the binding
     cache.
  3.1 1) HA doesn't find the binding cache entry.
  3.1 2) HA silently drops the received packet.

3.2) If the care-of address is used as the key for searching the
     binding cache.
  3.2 1) HA finds the binding cache entry to which the care-of address
         is corresponding.
  3.2 2) However, the home address of the home address destination
         option of the received packet is not corresponding to the home
         address of the binding cache entry.
  3.2 3) HA silently drops the received packet.

> >                  home address: 2001:DB8:4:4::4

4.1) If the home address is used as the key for searching the binding
     cache.
  4.1 1) HA doesn't find the binding cache entry.
  4.1 2) HA drops the received packet and sends the binding error.

         However, it silently drops in the case 3.1).

4.2) If the care-of address is used as the key for searching the
     binding cache.
  4.2 1) HA finds the binding cache entry to which the care-of address
         is corresponding.
  4.2 2) However, the home address of the home address destination
         option of the received packet is not corresponding to the home
         address of the binding cache entry.
  4.2 3) HA drops the received packet and sends the binding error.

         However, it silently drops in the case 3.2).

> Packet is dropped again. Binding Error is not sent.

5.1) If the home address is used as the key for searching the binding
     cache.
  5.1 1) HA doesn't find the binding cache entry.
  5.1 2) HA silently drops the received packet.

         It is same as case 3.1).

5.2) If the care-of address is used as the key for searching the
     binding cache.
  5.2 1) HA doesn't find the binding cache entry.
  5.2 2) HA silently drops the received packet.

         It is same as case 2.2).

> >                  home address: 2001:DB8:6:6::6

6.1) If the home address is used as the key for searching the binding
     cache.
  6.1 1) HA doesn't find the binding cache entry.
  6.1 2) HA drops the received packet and sends the binding error.

         However, it silently drops in the case 3.1).

6.2) If the care-of address is used as the key for searching the
     binding cache.
  6.2 1) HA doesn't find the binding cache entry.
  6.2 2) HA drops the received packet and sends the binding error.

         However, it silently drops in the case 3.2).

Best regards
---
Kiyoaki KAWAGUCHI

---

From: "K.Kawaguchi" <[email-masked]>
Date: Thu, 15 Feb 2007 11:45:53 +0900

Hi,

To confirm a general interpretation, I try another approach.
I show one flow figure. Where is the problem?

  ----
  HA finds and processes the Home Address Option in the received message.

  < The home address in the Home Address Option is a unicast routable address? >
    (Yes)                      (No)
     |                          |
     |                          V
     |                          go to sending BE process
     |
     v
  < The message is the Bindin Update message? >
    (No)                       (Yes)
     |                          |
     |                          v
     |                          go to Binding process
     v
  < The home address in the Home Address Option is fined in the Binding Cache entry? >
    (Yes)                      (No) -----------> send BE(status 1)
     |                          |
     |                          V
     |                          go to sending BE process
     V
  < The source address in the message is fined in the current Binding Cache entry? >
    (Yes)                      (No) -----------> send BE(status 1)
     |                          |
     |                          V
     |                          go to sending BE process
     v
     go to next header process
  ---

I reference follwing.

   RFC2460 section 4
   ---
   With one exception, extension headers are not examined or processed
   by any node along a packet's delivery path, until the packet reaches
   the node (or each of the set of nodes, in the case of multicast)
   identified in the Destination Address field of the IPv6 header.
   There, normal demultiplexing on the Next Header field of the IPv6
   header invokes the module to process the first extension header, or
   the upper-layer header if no extension header is present.  The
   contents and semantics of each extension header determine whether or
   not to proceed to the next header.  Therefore, extension headers must
   be processed strictly in the order they appear in the packet; a
   receiver must not, for example, scan through a packet looking for a
   particular kind of extension header and process that header prior to
   processing all preceding ones.

   The exception referred to in the preceding paragraph is the Hop-by-
   Hop Options header, which carries information that must be examined
   ---

2) RFC3775 Section 10.3.1
   ---
   o  A Home Address destination option MUST be present in the message.
      It MUST be validated as described in Section 9.3.1 with the
      following additional rule.  The Binding Cache entry existence test
      MUST NOT be done for IPsec packets when the Home Address option
      contains an address for which the receiving node could act as a
      home agent.
   ---

3) RFC3775 Section 9.3.1
   ---
   Packets containing a Home Address option MUST be dropped if the given
   home address is not a unicast routable address.

   Mobile nodes can include a Home Address destination option in a
   packet if they believe the correspondent node has a Binding Cache
   entry for the home address of a mobile node.  Packets containing a
   Home Address option MUST be dropped if there is no corresponding
   Binding Cache entry.  A corresponding Binding Cache entry MUST have
   the same home address as appears in the Home Address destination
   option, and the currently registered care-of address MUST be equal to
   the source address of the packet.  These tests MUST NOT be done for
   packets that contain a Home Address option and a Binding Update.

   If the packet is dropped due the above tests, the correspondent node
   MUST send the Binding Error message as described in Section 9.3.3.
   The Status field in this message should be set to 1 (unknown binding
   for Home Address destination option).
   ---

Best regards
---
Kiyoaki KAWAGUCHI