由于路由拥塞和数据包丢失,我的延迟和StDev越来越多,但是正向和反向路径通过不同的网络(例如,一个是init7.net,另一个是he.net),因此,很难理解哪个网络或主机负责拥塞,数据包丢失,抖动和增加的延迟。

在向前和向后mtr无法查明确切的罪魁祸首和NOC之后,有没有办法缩小责任范围? @联系人没有响应,或者声称在相关路径上没有遭受任何损失? (我正在使用OpenBSD。)

我什至尝试直接对可能遇到拥塞的两个网络的某些客户进行mtr的操作,但实际上并没有发现任何问题方式,尤其是因为例如he.net具有许多POP,并且通常在给定的入口和出口POP之间采用不同的路由,因此当我尝试直接在出口POP上mtr他们的主机(例如tserv)时,可能会丢失其网络中的数据包,采用了不同的he.net路径来达到相同的POP,并且没有发生数据包丢失,这证明没有任何意义(除了可能的建议,即它们确实确实会使某些路由过载,同时确保其他人则保持拥挤,而忽略了非客户的NOC @请求。)

评论

有什么答案对您有帮助吗?如果是这样,您应该接受答案,这样问题就不会永远弹出来寻找答案。或者,您可以发布并接受自己的答案。

#1 楼

一种实现方法是ICMP时间戳,它距UTC午夜12毫秒。它具有额外的好处,即您不必一定要控制两端,只要远端没有防火墙,它很有可能会工作。

但是,拥有可靠的单向测量,您需要在两端可靠地同时进行测量。由于ICMP时间戳仅具有1ms的精度(这对于许多应用程序来说还远远不够,但足以满足此要求),因此即使在不合作的主机上也可以找到ICMP时间戳来提供有用的数据也相当容易。您可以控制两端,请确保将NTP仅同步到1台服务器和同一台服务器。绝对时钟不是很重要,重要的是您要体验尽可能接近的时间。

如果ICMP时间戳不够,编写10行ruby / perl / python或

我真的不能建议软件单向执行ICMP时间戳测量,hping2支持发送ICMP时间戳,但是由于某些原因不会输出单向值。我为hping2编写了补丁,以显示单向延迟。

评论


哇,您的提示--icmp-ts额外的运算法则真是太棒了!懒得获取源代码并重新编译二进制文件,我为自己获得了hping修补程序的shell版本(stackoverflow.com/q/20172028/1122270),它显示了从init7到hetzner的路径上相当稳定的时间,并且来自hetzner的he.net路径在整个地图上都有变化!我终于有了明确的证明,init7在说实话!尽管我为此反对使用同一台ntp服务器:仅确保ntpd处于活动状态(我根本不需要更改任何设置,但值看起来很合理)。

–cnst
13年11月24日在8:50



如果您关心准确的挂墙时间,则需要至少3台NTP服务器(为了能够检测错误的行情收录器,您可能会选择2台NTP服务器)。但是这里我们不在乎挂钟时间,我们在乎精确地在同一时钟滴答滴答,而不管墙壁如何。因此,对于单向测量,最佳结果来自准确的时钟,与墙壁时间无关。很高兴听到您获得结果!

–ytti
13年11月24日在9:04