You were absolutely correct. pcap_setmintocopy(1) did the trick. Mille grazie!
-------------- Original message from "Gianluca Varenni" <[EMAIL PROTECTED]>: --------------
Hi.
 
I think this is due to the receive process: Winpcap buffers packets in the kernel buffer, and then wakes up the application when either a timeout elapses (the one you set with pcap_open), or a minimum amount of data is present in the buffer (by default it's 16kB, you can change it with pcap_setmintocopy()), whatever comes first.
 
You can change such behavior by setting mintocopy to 0, but this can affect performance badly (since the application is waken up whenever a packet arrives, and this could led to a higher number of system calls, i.e. switches from kernel mode to user mode).
 
Hope it helps
 
Have a nice day
GV
----- Original Message -----
Sent: Wednesday, June 16, 2004 11:56 PM
Subject: [WinPcap-users] Transmit Delay

Have two NIC machine, with Win32 GUI reading packets from each NIC using pcap_next_ex, then relaying those packets on the other NIC using pcap_sendpacket.

 

Can ping across this Winpcap facilitated connection, but see relatively long ping delays, anywhere between 500ms to 2000ms.

 

Cannot be certain whether delay is in receive or transmit. When sending a relayed packet, there is the abovementioned 500ms to 2000ms before the "echo" packet is received on the same NIC.

 

What might be causing this delay?

Reply via email to