From: Harry Kalogirou <harkal@gmx.net>
To: jb1@btstream.com
Cc: Linux-8086 <linux-8086@vger.kernel.org>
Subject: Re: webserver stalls [was Re: bug in (linux) slattach]
Date: 22 Oct 2002 16:56:42 +0300 [thread overview]
Message-ID: <1035285405.1634.123.camel@cool> (raw)
In-Reply-To: <Pine.LNX.4.33.0210220137370.6509-100000@olympus.btstream.com>
[-- Attachment #1: Type: text/plain, Size: 3597 bytes --]
> On 21 Oct 2002, Harry Kalogirou wrote:
>
> > Mmm.. weird.. I probably got you tired with all this but can you try and
> > see if the failures are realy random? A good aid at this the -p
> > parameter of ping.
>
> 100 pings (200 packets) each of patterns 00, 55, aa, and ff had zero to
> five errors, too few to account for the 100 percent failure rate of
> certain webpage files. 55 had the most errors and was the only one with an
> error in the pattern data. Most of the other errors were something about
> the time-of-day going back; 00 had one extremely long response time
> (1074131 mS).
>
>
> I think I can now prove that there's at least one IP Header sum-with-carry
> that results in a reproducible checksum error. I discovered that if the
> ELKS IP address were 192.168.1.135, all my test files could be read; large
> files required a few tries, but I was even able to read one 4369 (0x1111)
> bytes long! The unique property of the packets that never got ACK'ed is
> that their checksum-field contains 0xF6FF instead of the correct value
> 0xF5FF (the complement of 0x0A00).
>
> Each of the webpage files that stall produces a defective packet with this
> IP Header (the first twenty bytes of the packet):
> 4500 003f 0000 0000 4006 f6ff c0a8 0164 c0a8 0205
> The corresponding packet in the 99-byte file is one byte shorter (003e
> instead of 003f), consequently having a different IP Header Checksum
> (f600 instead of the erroneous f6ff):
> 4500 003e 0000 0000 4006 f600 c0a8 0164 c0a8 0205
>
> Ping uses Protocol 01 instead of Protocol 06, so by changing the ELKS IP
> address from 192.168.1.100 to 192.168.1.105 I was able to produce the
> identical erroneous IP Header Checksum with the command:
> ping -s 35 192.168.1.105
> resulting in the IP header:
> 4500 003e 0000 0000 4001 f6ff c0a8 0169 c0a8 0205
>
> To demonstrate that the problem is not the total packet size I added 1 to
> the packetsize and subtracted 1 from the ELKS IP address:
> ping -s 36 192.168.1.104
> resulting in the IP Header:
> 4500 0040 0000 0000 4001 f6ff c0a8 0168 c0a8 0205
>
> Just for symmetry, I produced the same checksum as that for the 99-byte
> webpage file, but the same length as the 100- and 266 byte webpage files
> with:
> ping -s 35 192.168.1.104
> resulting in the IP Header:
> 4500 003f 0000 0000 4001 f600 c0a8 0168 c0a8 0205
>
> In all cases, the pings with the defective checksum had 100% loss, while
> those with the good checksum succeeded. I didn't try manipulating the
> source IP address (c0a8 0205 = 192.168.2.5). If you can manipulate the
> packetsize and ELKS IP address so that the sum-with-carry of this header
> sans checksum-field is 0x09C1 you should be able to reproduce my results;
> otherwise it's probably a quirk in Red Hat 7.0 Linux (or you're using a
> different version of some critical ELKS file).
>
I'll check and get back to you...
> Note: I think bad packets comsume memory. After several unsuccessful
> transfers I started seeing "Cannot fork" on the ELKS box when I issued
> commands ... eventually I'd have to reboot it. It might be a good idea to
> purge them after a minute or two.
These are the web servers that wait for the data to be transmited, when
they exit memory will be freed.
> Does anything other than the system time depend upon the CMOS clock? It
> obviously hasn't been read on any of the four machines on which I tried
> ELKS (yes, they all *have* standard, working CMOS clocks).
>
I don't think so.
Harry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 232 bytes --]
next prev parent reply other threads:[~2002-10-22 13:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1035036158.454.17.camel@cool>
2002-10-20 9:34 ` webserver stalls [was Re: bug in (linux) slattach] jb1
2002-10-20 17:06 ` Harry Kalogirou
2002-10-21 9:44 ` jb1
2002-10-21 9:55 ` Harry Kalogirou
2002-10-22 10:16 ` jb1
2002-10-22 13:56 ` Harry Kalogirou [this message]
2002-10-22 13:57 ` [SOLVED] " Harry Kalogirou
2002-10-22 16:02 ` Harry Kalogirou
2002-10-23 9:37 ` jb1
2002-10-23 11:42 ` Harry Kalogirou
2002-10-24 8:55 ` jb1
2002-10-29 10:25 ` jb1
2002-10-29 12:37 ` Harry Kalogirou
2002-10-19 10:07 jb1
2002-10-19 17:55 ` Gabucino
[not found] <1034621946.3293.92.camel@cool>
2002-10-17 10:04 ` jb1
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1035285405.1634.123.camel@cool \
--to=harkal@gmx.net \
--cc=jb1@btstream.com \
--cc=linux-8086@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.