views:

17

answers:

1

I am trying to find out the total time it takes from the point where my C# application calls Socket.Send till the time the packet actually leaves the box. What is the best way/technique/methodology/tool to measure it?

I'd like to know and explain and measure all that happens between Socket.Send or BeginSend from my C# application till the packet actually leaves the box.

A: 

The only way I can think of is to have your app output the timestamp when it calls Send(), and then monitor the NIC itself and output the timestamp when the NIC receives the data. Use winpcap, or a separate packet sniffer, such as Wireshark, to monitor the NIC.

Remy Lebeau - TeamB
and what happens in between?
bsobaid
A lot, too much to describe here. Basically, the data has to pass from the application through several layers of drivers and frameworks before it reaches the network layer. I suggest you read MSDN's WinSock Architecture documentation for more details.
Remy Lebeau - TeamB