i have a server, which broadcast data to a client. in the client,
there're two processes waiting on the same port, with SO_REUSEADDR set,
receiving the data comes from server. everytime one client send a
request to the server, it broadcasts at the most 128KB data. after the
client has received all the data, it sends the next request.
the two machine are equiped with gigabit ethernet, 1GB memory and
1.6GHz P4. the client's receiving buffer is set to 20MB by
setsockopt(), i think it 's large enough.
what happens strangely is (somtines) when one process successfully
receives the packet, but the anoter not. and the value of InErrors in
/proc/net/snmp increasing greatly everytime the processes are run.
i have google the related question, some one said that, packet will
loss intra-stack. is there some method to handle this.
thanks in advance.
|