有没有朋友遇到过和外部合作方交互的系统,有一小段时间出现了问题,后来又恢复了。询问问题原因,合作方回复是网络抖动。
明白人心里都清楚这年头真正的网络抖动并不多见,未必是合作方没有查到根本原因,很多时候他们只是不愿意承认自身有问题。
真正的网络抖动什么时候会出现呢?
网络拥塞:当网络中的数据流量超过其处理能力时,数据包会在路由器或交换机中排队等待处理,导致到达时间的延迟。
带宽波动:网络带宽的不稳定也可能导致数据包到达时间的变化。
物理链路问题:物理链路的质量问题,如信号衰减、干扰等,也可能影响数据包的传输时间。
解释一下,网络拥塞是什么时候会出现呢。你在家里看视频的时候,用的是一台买了没多久性能不错的电脑,看视频用的大品牌视频网站的VIP会员,视频是不是一般都很流畅呢?如果视频这种大数据都不拥塞,平时的文本请求就更没问题了。也有可能在上传下载大文件时出现问题,那是程序设计不合理,也不是网络问题。
大公司的私有部署服务那都是专享网络,云服务带宽一般也是够用,那咱们看物理链路的问题说白了就是光纤被挖断了。那可不是一时半会儿能恢复的。
所以网络抖动成了大家心照不宣的默契:我们出问题了,不方便明说,你也不要问,问了也不告诉你。因为一方面我们要维持口碑不能让外面知道我们系统设计维护的不好,另一方面问题实在太低级了,说出来让人家笑话。
比如说:
运维添加防火墙策略错误的屏蔽了一个端口。表现为nslookup可以正常解析,但是请求却突然报错了。收到反馈后意识到自己可能操作错误,赶紧改回来。表现为请求又正常了。
再比如很多开放平台的接口都需要将访问地址加到白名单里才可以访问。有人在修改白名单时,因为白名单有IP个数限制。为了把自己的加进去,找了一个看起来没用的,删了人家找过来才发现有用于是改回来。这种的地址解析都不会异常。
通过这两个例子大家大概能理解网络抖动的本质了:网是断了一下,不过是我们自己搞的。