当我从系统b ping系统a时; 我得到了1.494ms的平均值。 当我从系统a ping系统b; 我得到一个.896ms的平均值。
我每10秒钟执行一次testing,持续1.5小时。 我在两台机器上运行这个。 然后,我在不同的时间和不同的时间长度,在6天内重复testing几次。 在所有情况下,从b-> a的ping从a-> b执行20%到50%
然后我尝试从a-> b和b-> a进行文件传输。 他们变化不到5%。
这些是相同的Linux RedHat服务器。 相同的硬件,相同的软件。
我完全理解,如果我是一个没有强迫和肛门保持能力的正常调整好的人,我会耸耸肩膀,在注意到第一个差异之后继续前进。 但是我完全被这个疯狂了。
究竟是什么原因造成了这种情况,我将如何检查是否是这种情况?
谢谢
从A-> B和B-> A做traceroute是值得的。 除非另有所知,否则完全可能的是,前进方向的交通采取与反方向不同的path。
考虑到ICMP测量往返时间,你会期望这是允许的,但是我已经看到在给定方向的stream量偏向特定链路的networking中类似的非对称ping时间。
我猜测a和b在不同的数据中心? 可能与不同的上游运营商?
Ping是通过ICMP实现的 ,这对于TCP来说是一种完全独立的stream量types,并且由于这样的运营商是免费的(并且通常是这样),所以pingstream量是非优先的。 您可能会在testing中看到这种效果。
您可以使用mtr或tcpping等工具来确认这一点,这些工具使用替代方法来模拟ping。
编辑:你检查了a和b之间a每个接口的双工设置? 如果某些设备的自动检测失败,并且默认为半双工,这可能会解释您所看到的结果(尽pipe面对双工错误匹配的可能性较小)