Subject: Re: [mobile-ip] Draft 15

From: Ryuji Wakikawa <[email-masked]>
Date: Thu, 04 Oct 2001 13:17:35 +0900

Hi Erik

Sorry for replying late.

I have been implementing MIP6 on kame stack at KEIO university. 
I participated in connotation 2001 and our MIP6 has interoperability with some other MIP6. 

> Since there exists implementations of MIPv6 I wonder 1) how many of them
> have implementing piggybacking and 

	We support piggybacking for both directions (incoming,outgoing)

> 2) of those have any looked at
> the effect of turning piggy-backing on and off.

	We haven't tested piggybacking with other implementation, but
	among our HA,CN, MN, we normally enable piggybacking
	functionality and it works, even though our code is based on draft-13.

	I evaluated the cost of sending BUs by piggybacking at my master thesis. 
	Unfortunately, it was written in Japanese, sorry guys, 
	but let me try to explain briefly.

	This is the results of cost for piggyback processing in the kernel, 
	when MN sends BU with AH during flood ICMP6 Echo request/reply(data 16byte) to CN .
	These value was measured by pentium counter.

			no piggyback (only BU)	/ piggyback
	sending cost	0.20 msec		/ 	0.23 msec
	receiving cost	0.29 msec		/	0.34 msec

	I guess the overhead of piggyback is caused by IPsec processing, 
	because the size of the packet(BU+data) is larger than the single BU packet.

	Our MIP6 waits default 1 sec (configurable) for some piggybacked data before sending BU.

regards,
ryuji

> 
> Is there any data?
> 
> > The crucial thing is to prevent Binding Updates from being sent
> > unnecessarily.  Any implementation which sends Binding Updates at
> > every change in point of connection to the Internet (or, even worse,
> > on every movement detection) is potentially doing a lot of
> > unnecessary signalling.  In contrast, an implementation that sends
> > Binding Updates in the first data packet going out after detecting
> > a change in the mobile node's point of attachment, is going to have
> > a lot less overheat.
> 
> It clearly doesn't work to always delay the BU until data needs to be sent
> to the CN. The BU needs to be sent before the CN tries to send data
> to the MN - if the CN sends to the old CoA the packet might be dropped
> (depending whether the MN was successful in updating a previous default router
> and to what extent you want to have a residual dependency on the availability
> of the previous visited link).
> 
> Predicting when a CN is going to next try to send to the MN is hard and
> requires being able to predict the behavior of the transport protocol
> as well as the applications running.
> 
> I wonder what working strategies folks have tried in implementations.
> 
>    Erik
> 
>

---

From: Alexandru Petrescu <[email-masked]>
Date: 04 Oct 2001 10:53:38 +0200

Ryuji Wakikawa <[email-masked]> writes:
> I have been implementing MIP6 on kame stack at KEIO university.  I
> participated in connotation 2001 and our MIP6 has interoperability
> with some other MIP6.

I would like to update my list of publicly available Mobile IPv6
implementations and it seems that yours is new.  Is the code available
(the neo.sfc web page says source code soon)?  What is its relation
with Ericsson's Mobile IPv6 code in KAME?

Thank you,

Alex

---

From: Mattias Pettersson <[email-masked]>
Date: Thu, 04 Oct 2001 11:35:17 +0200

Hi all,

> with Ericsson's Mobile IPv6 code in KAME?

To answer the last question: there is no real relationship. Both use
KAME IPv6 as base. Ericsson's implementation was taken in as
experimental part of KAME's source code.

/Mattias

---

From: Ryuji Wakikawa <[email-masked]>
Date: Fri, 05 Oct 2001 00:56:58 +0900

Hi Alex.

> with Ericsson's Mobile IPv6 code in KAME?

Yes our code is available, but we did not prepare the web page yet...
Please visit my HP, i put the MIP6 patch on my HP temporary.
http://www.sfc.wide.ad.jp/~ryuji/research.html

Unfortunately, the patch is a little bit older (connectathon version, i
guess) and we don't have enough document, but we will deliver newest
code on December. please check neo.sfc. web at that time.

If you have question or interest, please contact with
[email-masked]

There is no relation with Ericssons MIP6, 
I implemented whole MIP6 by myself.

regards,
ryuji

---

From: Ryuji Wakikawa <[email-masked]>
Date: Fri, 05 Oct 2001 01:09:37 +0900

One more news about our MIP6.

We extended mip6 draft to support multiple network interfaces.
Our MIP6 can handle multiple network interfaces with single home address.

For instance, you can use a home address with wireless LAN and ethernet.
This idea is a kind of heterogeneous handover, if one network interface
(if1) goes does, MIP6 switch the all the flow which went through the
interface(if1) to another network interface (if2,if3, whatever).

If you are interested in this, please ask me more. I have evaluation of
the our original idea and have "english paper" for this :) 
But this paper is under submission to the conference, I can not post it
to MIP6 ML.

thanks
ryuji

---

From: Francis Dupont <[email-masked]>
Date: Fri, 05 Oct 2001 10:35:19 +0200

=> this is fine (multiple network interface support is an essential
function of mobility) but I don't understand why you believed the
Mobile IPv6 draft needed to be extended.
BTW I implemented this too before wireless LAN support, movement detection
is very easy when drivers are fixed in order to signal up/down events.
The only issue is to manage cases where there are no or two usable
(i.e. up) interfaces at the same time (both are a bit funny).

=> please !

Thanks

[email-masked]

---

From: "Eng Soo Guan" <[email-masked]>
Date: Sat, 6 Oct 2001 14:00:10 +0800

Dear Ryuji,

I am very interested in your work, especailly the part on multiple network
interface support. May I have a copy of your English report?

Warmest regards.

SG
Eng Soo Guan
R&D Engineer (Software Lab)
Centre for Wireless Communications, NUS
http://www.cwc.nus.edu.sg
Tel (65) 8709330
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

---

From: Alexandru Petrescu <[email-masked]>
Date: 05 Oct 2001 22:27:41 +0200

> Mobile IPv6 draft needed to be extended.

Ryuji probably means several interfaces each having its own home
address?  Something related to multihoming, load-balancing,
optimizations?

>    But this paper is under submission to the conference, I can not post it

Yes, I would like to have a look at it.  If your paper is approved for
publication, you probably can send me title/author/conference so that
I include it in my bibliography on IP mobility.

Thank you,

Alex

---

From: Ryuji Wakikawa <[email-masked]>
Date: Mon, 08 Oct 2001 02:21:40 +0900

Hi Alex,

> address?  Something related to multihoming, load-balancing,

Yes, we assume the above stuff(multihoming, QoS, policy-routing) for
MIP6 operation. For the demand, we need to extend some of MIP6 operation. 

Since our MIPv6 is developing for automobile, so we need to provide the
global-connectivity, high Bandwidth, continuous communication by
supporting multiple network interface.Our MIP6 can handle even if two of
network interfaces are available (multihoming) 
Only one network interface is not enough for the situation of automobile,
because it moves so fast and move far and wide. 

After posting some mail to this ML, I asked my friends to setup HP for
our research. So it will come up soon. You will be able to find the link
from my HP.

> I include it in my bibliography on IP mobility.

Several people contacted for the paper before, so I will notify all when
my paper is approved, please wait until someday...
anyway, thanks for contacting me.

regards,
ryuji

---

From: Ryuji Wakikawa <[email-masked]>
Date: Mon, 08 Oct 2001 02:21:41 +0900

Hi Francis

> is very easy when drivers are fixed in order to signal up/down events.

OK, It is easy to support only one or two interface for move detection,
I can put some code in device driver as trigger for movement detection.
We used to use L2 information for movement detection in MIPv4, but we
found that modifying every network driver is harder, i mean I can not
modify all the interface supported on BSD. 

We can use link status like up/down for ethernet and most of interfaces.
Wireless LAN has signal strength, but I thought signal strength is not
totally equal to link up/down information of ethernet. 
I think it is not easy to define how to handle L2 information. 
This is my question what's the link status for dial-up interface  (by modem )?

I proposed a system to handle layer 2 information for mobile computing.
The system named MIBsocket, this system is implemented as
message-passing socket between layers including userland, so you can
pass layer 2 information to IP layer through MIBsocket.
All information is defined by MIB based description. This system was implemented
on BSD-based system (only IPv4).

> (i.e. up) interfaces at the same time (both are a bit funny).

This funny situation is one of my research topic..If you can use many
interfaces simultaneously, you can get some advantages for the coverage
of network connectivity, load-balancing, bandwidth, QoS, whatelse.  

regards,
ryuji

---

From: Mattias Pettersson <[email-masked]>
Date: Mon, 08 Oct 2001 21:56:04 +0200

> address?  Something related to multihoming, load-balancing,

I had a look at your code Ryuji, and I thought that home addresses are
assigned to a special virtual interface called mobileipxx. Care-of
addresses can be assigned to multiple physical interfaces, and they can
have different characteristics. Each home address can use any CoA it
prefers at any time. However, there is not much use really to have
multiple home addresses, unless the home network is being renumbered.

/Mattias

---

From: Ryuji Wakikawa <[email-masked]>
Date: Fri, 12 Oct 2001 07:57:40 +0900 (JST)

Hi Mattias.

I guess the detail of implementation may not be an appropriate issue
in this ML, but I want to make our implementation points clear. 
sorry about that.

> assigned to a special virtual interface called mobileipxx. Care-of

Yes, I prepared the virtual network interface to support multiple network 
interfaces/CoAs with single home address.

> multiple home addresses, unless the home network is being renumbered.

Maybe, but supporting multiple home addresses is not the exact our
main purpose for using the virtual network interface. 
I summarize the idea below.

If the home address is assigned to the real network interfaces, MIP6 can
not handle multiple IFs/CoAs simultaneously. 
I believe that using virtual network interface is the ideal design 
for this purpose on the UNIX.

Our implementation.

	mobileip (virutal)	
	 Homeaddr
	   |
   +--------------+
   |		  |
   ep		  wlp	(physical)
   CoA1		  CoA2	

   MIP6 can use both network interfaces simultaneously, 
   whenever they are available.

Your implementation.

   +-------------+
   |		 |   
   ep		wlp    (physical)
   CoA1		CoA2
   Homeaddr

   Where can you put the home address
   when multiple IFs are available at the same time?

regards,
ryuji

---

From: Mattias Pettersson <[email-masked]>
Date: Mon, 15 Oct 2001 09:38:09 +0200

> not handle multiple IFs/CoAs simultaneously.

That is not necessarily true. As BSD implements loose routing (between
interfaces) the home address can be assigned to any interface. The
problem is that the home address is derived from a real interface
identifier and that removal of the physical interface card is
disasterous.

> for this purpose on the UNIX.

I agree.

>          Homeaddr

We had this behaviour in our first release. In the second, we used a
virtual interface, just like you (we used lo0). Actually, the first
release allowed you to specify any interface you'd like to assign the
home address to, so lo0 was possible to select too.

However, we choose to clean this up for the second release in order to
support renumbering and tunneling of RA from the home agent.

As I said above, BSD will accept incoming packets no matter what
interface the destination address is assigned to.

/Mattias