MIPL Mobile IPv6 TODO list for 0.9

Known bugs and limitations of MIPL Mobile IPv6 implementation for
Linux:

General:

- Dynamic key establishment between MN and CN is missing. 

- Piggybacking of signaling options should be done only if packets
  have room for it.  We should wait a certain amount of time for a
  packet with enough space before sending an empty packet.  Currently
  a space of around 100 bytes is reserved in tcp_ipv6.c in all tcp
  packets for options.  A better idea is to reserve space only for
  home address option and piggyback BU and BA if there is enough
  space.

MN:

- Lifetime of BU for HA is fixed, but it should be: 
  min(lifetime_of_coa, lifetime_of_home_address)

- MN sends a neighbour solicitation to its HA when it returns home for
  sending a BU using its home address as the source address.  Instead
  it should use unspecified address as the source. 

- Changing of the mdetect mechanism does not work, only 'moderated'
  eager cell switching implemented.  

- Configuration of router solicitation interval does not affect the
  module. 

- Reverse tunneling is not implemented.  See Tunnel. (work in progress)

- MN should send mobile prefix soliciatations and handle mobile prefix 
  advertisements from HA for updating the status of home address (sections 
10.16, 10.17)

- When MN is started in a foreign network, it should send a BU to HA with 
  DAD bit set (and not do DAD in the foreign entwork for it home address)
 
- MN should get a notification of changes in interface status. 
  (work in progress)

- MN should be able to choose between different interfaces based on a
  policy (work in progress)

HA: 

- HA support for "other valid addresses for the mobile node on the
  home link" (see draft section 5.1 paragraph Prefix Length)

- Sending of mobile prefix advertisements is missing (draft sections 5.9, 
  9.6-9.8)

- Proxy DAD for MN's home address is missing (draft section 9.1)

Tunnel:

- Rewrite tunnel to use devices in a similar way as sit and ipip
  tunneling. Use Andi Kleen's fourtun.c for this with sit.c.  
  (Work in progress)

- Remove the possibility of loops. 

If you find more bugs or have ideas or patches please send them to the
MIPL mailing list: mipl@chasey.mipl.mediapoli.com.

Henrik Petander,
lpetande@tml.hut.fi





