[lkml]   [1996]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectTCP buffer problem with 2.1.11


    Just spent ages trying to sort out a problem with some sockets code
    under NT, and just discovered the bug may have been with Linux all
    along.... (which I wasn't expecting at all).

    Situation is as follows:

    Server process on Linux box, client process on NT box.

    NT box sends data packets (approx. 50 bytes each) at about 10 per second
    by TCP - If it can't send it (due to network buffers being full), it
    puts it into a user-space queue, which it tries to write out later on.
    At the same time, the NT box is waiting for replies from the server
    (also around 50 bytes each), and displays the data.

    The Linux box waits for a packet, deals with the data (simulating lots
    of processing by doing a sleep(5)), and then sends its reply. It
    does no other network operations once it has read the data until it
    writes the reply.

    This works smoothly to start off with, until the recv buffer on the
    Linux box becomes full, at which point all write operations get queued
    within the kernel until the write buffer is full, at which point the
    buffer is emptied.

    This keeps on occuring.

    Anyone got any ideas?

    BTW, I'm using IPv4, and IPv6 is NOT enabled. Also, the same server
    process running on a SPARC/Solaris 2 box works fine.

    Thanks in advance,

    Adrian St. John.

    Adrian St. John
    Real Objects Ltd, Leamington Spa, England
    Phone: +44 (0)1926 833488

     \ /
      Last update: 2005-03-22 13:38    [W:0.019 / U:5.764 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site