Subject: [nemo] Fragmentation at mobile router

From: Takaaki Moriya <[email-masked]>
Date: Fri, 31 Mar 2006 11:10:34 +0900

Hi all,

I have a question about fragmentation at mobile router.
When mobile router receives a long packet from a node in the mobile
network, should mobile router fragment this packet?

Of course, normally it is end node to manage fragmentation after
receiving ICMP. However, if so, when the mobile network moves, MTU size
toward tunneling path may be changed and then end nodes in the mobile
network receive ICMP packet too big.
(e.g. when mobile router moves under another mobile router, MTU size is
changed.)
It means that movement forses end node to retransmit the packet. It goes
against the rule of hiding movement from end node. 

The problem in mobile router is the same in home agent.

Thanks in advance.

---
Best Regards
Takaaki Moriya
<[email-masked]>

---

From: Brian Haley <[email-masked]>
Date: Thu, 30 Mar 2006 23:23:23 -0500

Hi Takaaki,

> network, should mobile router fragment this packet?

The mobile router isn't technically going to fragment the original 
packet in this case.  The MR will encapsulate it to traverse the MR-HA 
tunnel which will cause the outer IPv6 packet to be fragmented.  The HA 
will receive these fragments, reassemble them, and forward the original 
packet.

I guess it's implementation-dependent if the MR notifies the node if it 
should reduce the mtu in routes it advertises (or maybe the on-link 
mtu).  It is probably beneficial to do so since it will be less work on 
both the MR and HA if they don't have to fragment/reassemble.

> against the rule of hiding movement from end node.

The node shouldn't be able to determine movement because it gets an ICMP 
packet too big or the on-link mtu changes.

> The problem in mobile router is the same in home agent.

In the non-NEMO-aware HA code I've done, I did have it send ICMPs to CNs 
that didn't do route optimization - it was a lot less work in the 
forwarding path, as well as much less work for a MN that might be 
bandwidth, memory and cpu-limited.

-Brian