我试图在Linux上实现一个跟踪开放TCP连接的软件,并根据TCP往返时间估算对它们进行分类。 我正在寻找程序nettop在MacOS X上显示的类似信息。
$ nettop -m tcp
它显示了拥有它们的进程打开的连接列表。 它包括当前往返时间最小值,每个连接的均值和方差估计值。
聆听程序自己的连接,可以像http://linuxgazette.net/136/pfeiffer.html中那样做,但是我正在寻找类似nettop的东西,它显示了机器上所有连接的信息。 在OS X上,不需要root访问权限,但是如果答案没有问题的话,那就好了。
我更喜欢Python兼容的版本,但如果不可用,我可以和C一起生活。如果有一个像Linux的nettop这样的现有命令行工具,那也是很有趣的。
使用Python,我如何访问Windowsnetworking上的共享文件夹?
在networking上同时运行一个python脚本。 这个可以吗?
查找是否传递了一个通过tcp的消息
有关:
维基百科:卡恩的algorithm
/etc/resolv.conf中指定的超时值是什么?
给定TCP / IP校验和的HTTP 1.1 Content-MD5冗余?
MAC地址到C#中相同LAN上的IP地址
检测接口是否处于与C的混杂模式
使用Python从连接的Windowsnetworking共享获取IP地址
如果你想用你自己的代码来做这件事情,你可以看看libpcap或tcpdump的输出,并且把数据包的时间戳与相应的序列号和确认号进行比较,然后在最后几秒内对这些数据进行平均。
12:19:39.331248 IP 10.0.60.243.ssh> 192.168.50.22.21950:P 11952 :12180(228)
12:19:39.331388 IP 10.0.60.243.ssh> 192.168.50.22.21950:P 12328 :12476(148)
12:19:39.380981 IP 192.168.50.22.21950> 10.0.60.243.ssh:。 ack 11952赢65535
12:19:39.381039 IP 10.0.60.243.ssh> 192.168.50.22.21950:P 12624 :12772(148)
12:19:39.381054 IP 192.168.50.22.21950> 10.0.60.243.ssh:。 ack 12328赢65159
12:19:39.381058 IP 192.168.50.22.21950> 10.0.60.243.ssh:。 ack 12624 win 64863
这将平均达到约50ms rtt
这些信息中的一部分在命令中可用:
ss -i -t
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。