Subject: (IPng 6607) Re: fragmentation reassembly

From: Richard Draves <[email-masked]>
Date: Fri, 9 Oct 1998 14:48:18 -0700

> > Is it "correct" to use implementation A or B? Or must a correct
> > implementation use C?
> 
> Certainly, neither A nor B is correct.

Then I'll bet there are a lot of incorrect implementations out there :-).
The kind of implementation you outline is complicated - would it be possible
to allow a simpler implementation (per-interface reassembly is the
conservative alternative) and allow a more complicated implementation like
you outline for ambitious implementations?

Thanks,
Rich
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [email-masked]
--------------------------------------------------------------------

---

From: Steve Deering <[email-masked]>
Date: Fri, 9 Oct 1998 15:44:07 -0700

> you outline for ambitious implementations?

Thinking about it a bit more, yes, per-interface reassembly would be mostly
OK, because:

	- for a fragmented packet sent to a unicast address, all fragments
	  are destined to the same interface (because a unicast address
	  identifies a single interface, not one of a set of interfaces
	  in the same scope instance).  For a router that is a destination
	  of a fragment, it would be necessary to associate the fragment
	  with the interface it was destined to, regardless of which
	  interface it actually arrived on (the notion of "internal
	  forwarding" is one way to deal with this, as Tim suggested).

	- for a fragmented packet sent to a multicast address, all
	  fragments are destined to all in-scope interfaces that are
	  listening to that multicast address.   So, if a node listens
	  to the same multicast address on multiple interfaces, it ought
	  to receive multiple copies of each fragment, one on each
	  interface, and therefore it need not reply on being able to
	  put together fragments that arrive on different interfaces.

The only gotcha I can think of at the moment is if an anycast address has
been assigned to multiple interfaces on the same node, in which case
different fragments of the same original packet may arrive on different
interfaces of that node, e.g., if routing changes occur during transmission
of the fragments.  As long as that's just a transient situation (i.e., not
the result of intentional load-spreading or something), then reassembly
failures that might occur in a "per-interface-reassembly" implementation
would be just another type of loss that would be repairable by higher-layer
retransmission.

Steve

---

From: Steve Deering <[email-masked]>
Date: Fri, 9 Oct 1998 15:49:15 -0700

At 3:44 PM -0700 10/9/98, Steve Deering wrote:
> 	           ..., and therefore it need not reply on being able to

Change "reply on" to "rely on".

Steve