在delphi中测量服务器/客户端套接字上的数据流量?

时间:2011-09-07 08:18:50

标签: delphi sockets pascal

我正在制作一个在服务器程序和客户端之间发送数据的程序。它们都使用Delphi中的服务器和客户端套接字组件!我已经在互联网上看了一下,无法找到如何衡量通过套接字传输了多少数据的方法! 任何帮助,特别是一些代码(pascal / Delphi),将非常感谢!

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

如果您使用win / * nix API套接字(不是特殊库),则必须计算recvsend函数的返回值。

total_data = 0;
...
...
get_data = recv(...)
total_data = total_data + get_data
...
send_data = send(...)
total_data = total_data + send_data

答案 2 :(得分:1)

Magenta Systems有一组免费的组件,可以使用原始套接字或WinPcap来监控网络流量。

更新

从您的评论到RBA的回复:Magenta组件可让您识别和区分不同的IP地址和服务(端口)。

答案 3 :(得分:0)

我将所有TCP流量的统计信息保存到该字节。每次我发送数据时我都会更新统计数据,每次收到数据时我都会更新统计数据。这精确到一个字节,只需要几行代码。它不依赖于任何特定的TCP组件。为什么这么难这么做呢?