On Mon, Nov 15, 1999 at 09:08:59AM -0500, Aleksandar Bakic wrote:
> > Lots of variables here.  What version of RTLinux, which NIC, are
> > you using UDP or TCP?  Have you done network traces to see if you
> > are having to resend packets?
> 
> RTLinux iz Zentropix 1.0, the sender NIC is Epic100 and the receiver
> NIC is 3com 59x (not sure which "x"). I am using stream sockets over
> TCP. How can I see if I am (i.e., RTL) having to resend packets?


I use tcpdump, and watch for duplicate lines, which means that the
sender never recieved an acknowledgement for the chunk of data that
was sent.  You can get a feel for how this works by starting an ftp
transfer between two computers while running tcpdump, and pulling
the plug.  (The network plug, not the power...)  You should see
the same packet being sent several times, at exponentially increasing
intervals.

Even though it leads you down the dark path of "reinventing TCP",
I would suggest switching to a UDP connection.  One of the things
UDP offers over TCP is that you can effectivly hog the network --
TCP tries to be nice.  TCP has a feature called "slow start", which
makes it ramp up the bandwidth it tries to use.  This can cause
problems if you expect to be able to use a lot of bandwidth quickly.

Actually, the particular NIC in the 3c59x series makes a difference.
The output of 'dmesg' will tell you which it is.  A "Vortex" card
only has a 5 kB buffer, which can make it start dropping packets at
an interrupt latency of 500 us.  The "Boomerang" and "Cyclone" cards
only handle 32 incoming packets at a time, which is probably not
a problem.  (Easy to check -- change RX_RING_SIZE in the source.)



dave...

--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/

Reply via email to