If I do one direction (i.e. A->B), there is very low loss. All packets received if they are close to each other.
I already increase the buffer size on both rec and tx pipeline. The total number of bytes sent is less than the buffer, so it is loss due to buffer over flow.
I only experience loss when there is two direction communication.
you can test the loss rate easily.
on machine A, run the command
ping -A machine_b_ip_address
This test will tell you the number of icmp packets lost.
My guess is that the loss rate will be much lower than your udp test.
Repeat the test, with a size of just "50" or 20.
What is the loss rate now?
My guess is that you are over filling the recieve buffer of the udp socket on the destination machine and packets are being lost.
On Sun, 22 Feb 2009, Candy Yiu wrote:
I am experiencing something interesting. I can't explain why and hope
someone can tell me what's going on.
I set up two machines: A and B. Machine A send 100 UDP packet to machine B.
Machine B will send a packet
back to A when it receives a packet from A. Both tx and rx are in different
thread in machine A. Machine B receives
all the packets from A. But machine B only receive half (50 packets).
I was wondering if madwifi drops packets if the tx and rx pipeline is too
close to each other.
The more interesting things I test is, a roundtrip from A to B back to A
takes 5ms. I sleep 6ms on every packet machine
A sends to B. It increases the packet received by B, about 70%. But I need
to sleep 1s to receive all packet in machine A.
thanks, any help or thought will be appreciate.
student, Computer Science
Portland State University
Derek Smithies Ph.D.
IndraNet Technologies Ltd.
ph +64 3 365 6485