# limiting outbound packet size

Alex Stewart (riche@crl.com)
Fri, 17 Jan 1997 07:26:34 PST

- Messages sorted by:[ date ][ thread ][ subject ][ author ]

    Sigh.. I guess I should have checked my MOO-Cows mail a little earlier this
    week..

    > In short, there's probably no MOOserver-level fix.

    This was the conclusion I had come to as well (I am the wone Dave was quoting
    about the reason for DU's problems.  I have since come to the conclusion that
    this is only part of the reason for our problems, but even solving just this
    part would help a lot).

    > However, you can probably reconfigure your ethernet interface with a
    > smaller MTU to avoid the problem; there is probably an mtu option on the
    > ifconfig command (I can't find a machine with matching OS version so I
    > can't confirm this.) that could be used to keep your ethernet interface
    > from sending large packets.  Doing so would hurt local-network performance
    > but might solve your other problems.

    No, this won't help at all.. in fact it would just make things worse (Dave, if
    you're listening, DON'T have SRI do this).  The problem here is that Dave
    didn't adequately describe what's really going on which is causing the problem.

    The problem is not due to the MOO's machine sending out ethernet packets which
    are too large, the problem is what happens when it sends out _IP_ packets which
    are too large (larger than the MTU of the network (1500)).  When an IP packet
    which is larger than the MTU is sent, the IP layer breaks this packet down into
    "fragments", causing one IP packet to be sent as multiple ethernet (or
    whatever) frames.  The multiple network frames are then reassembled at the
    other end of things into the original IP packet.

    However, the problem we're experiencing appears to be at least partially due to
    a router at our ISP (well, several routers, it appears) which are overburdened
    and are having problems passing certain types of traffic without losing bits of
    it.  These routers seem to be able to pass single-packet network frames ok, but
    when they encounter an IP packet which has been fragmented into multiple
    frames, it won't get through (or won't get through complete), and the
    connection just stops while TCP keeps retrying (and keeps failing) to send it
    through.

    This is why I was attempting to reduce the size of the IP packets which DU was
    sending to under 1500 (to keep the IP packet size under the MTU of the network,
    and thus avoid fragmentation).  For obvious reasons, therefore, reducing the
    MTU of the local ethernet adapter would only make the situation worse, as it
    would cause even more packets to be fragmented and thus die.

    BTW, it is also quite clear to me that the problems DU is experiencing are not
    due to local OS bugs, but due to network congestion or router misconfiguration
    at the ISP, and therefore applying various SunOS patches to the machine are
    unlikely to change much (though, admittedly, they are a good thing to do in
    general)

    -R
    -------------------------------------------------------------------------------
         Alex Stewart - riche@crl.com - Richelieu @ Diversity University MOO
                             http://www.crl.com/~riche
               "For the world is hollow, and I have touched the sky."