Re: fragments sent in reverse order

From: Stephen Satchell (satch@concentric.net)
Date: Fri Jan 14 2000 - 23:22:48 EST


At 04:09 AM 1/14/00 , you wrote:
>nevertheless, it doesn't look like linux always sends fragments in reverse
>order, but i'm still trying to familiarize myself with the code. i know
>that fragmented udp is always sent in reverse order, and i suspected that
>all fragments were sent in revers order but i couldn't verify that.

When I was writing "Linux IP Stacks Commentary" for CoriolisOpen books, I
discovered that in 2.0.34 the kernel TCP/IP code was inconsistent about
whether to write fragments in reverse order or forward order.

In the "every other fortnight" department, if you run out of memory during
a fragmentation procedure, the fragmentation process...stops. You end up
with orphan fragments out on the net. Once 2.4 is out, I'm going to
propose some patches to take care of this condition (assuming that someone
else hasn't beat me to it). The proposed change would be to save the
fragments until the skbuffs have been built, THEN insert the fragments onto
the device output queue. That way, if you run out of memory you don't send
anything at all, and you have less dead traffic.

In the same vein, I would also propose that some SMTP and/or /proc counters
be implemented to count the total number of memory-out conditions
encountered by the networking software; right now it happens silently so
there is no way for the sysadmin to be aware there are any problems. (I
prefer that to generating a syslog message because the admin can write his
own userland stuff to track any memory problems.)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:26 EST