Title: Message
Daniel,
 
I have a little experience with WinPcap.   My opinion on your questions follows:
 
1) I use 2 threads.   I believe you could use 1 thread.   
 
2) PacketSendPackets is much faster than PacketSendPacket.    However, I am having some reliability problems when I use PacketSendPackets.   I have not determined the cause of the problem yet.
 
3) I do not know how they actually work.   If they have enough buffer space available, they should just queue the data to be sent and immediately return.   I have seen very high performance so I believe they must work correctly.
 
4) I have never had this problem.   My receive buffer is always big enough to receive an entire packet.   The receive thread blocks until it receives an entire packet.
 
5) I have never had this problem.
 
6) I believe the driver does transfer several or many packets at once.    You just access them one at a time.   You can't do anything to make it much faster. 
 
 
Bob
 
 
Robert Thornthwaite
Input/Output, Inc.
-----Original Message-----
From: Daniel Frimerman [mailto:[EMAIL PROTECTED]
Sent: Monday, June 30, 2003 8:37 AM
To: [EMAIL PROTECTED]
Subject: [WinPcap-users] Sending/Receiving same time + PacketSendPackets over PacketSendPacket

Hello,
 
I am new to WinPcap. I've converted the Packet.dll header to Delphi, and before I write a wrapper I would like to clear a few things.
 
1) In order to send and receive packets at the same time, should I use 2 threads? I know full duplex lines can send and receive at the same time.
2) Does it make sense using PacketSendPackets over PacketSendPacket if my application has a queue of many packets?
3) Does PacketSendPackets and/or PacketSendPacket block when sending or they queue the data and return immediately? - if yes, then I suppose I can use 1 thread for sending and receiving since it would be done quite fast.
 
4) Could it happen that I receive half a packet if the supplied buffer is not big enough?
5) What happens if all adapter names don't fit in the buffer supplied to PacketGetAdapterNames? Could it be that partial name is received? Are there errors indicating about this?
 
6) Can I receive all the queued packets at once?
 
I want to be efficient as possible, so if you have any hints for speed I'd appreciate it
 
 
Thanks,
 
Daniel

Reply via email to