越南服上线以后,出现了各种国服上没有见到过的问题,我们就被一个问题持续的困扰着:老大的老大是个工作狂,经常会在出其不意的时候电话老大,我这里登录上不去了,你们看下什么问题。结果他上去一看完全正常,直接反馈回去。如此持续了几次之后,老大的老大怒了,你是不是骗我呀,明明上不去你告诉我能上去。终于有一天在工作时间重现了这个问题,同样的网络,不同的电脑和网线。然后开始排查问题,使用了修电脑人常用的排除法,结果发现问题就出在电脑上。电脑能有什么区别呢,都是苹果本上装盗版xp。
解决问题的过程比较痛苦,试了各种方法,最后在抓包的时候发现出问题的电脑和没出问题的电脑上面接收的最大数据包长度不同,没出问题的电脑接收的最大数据包比较小。然后有针对性的查找资料通过修改服务器的配置解决了问题。
如果大家有兴趣学习详细的原理和配置方法可以自行查找资料。简单讲一下原理:tcp在进行通信的时候,如果遇到大的数据包,会有一个拆分机制,将数据包拆分为若干个小数据包,然后在接收端将数据组装还原。mtu就是对拆分标准进行配置的,网络中的各个路由结点也有相应的配置。发数据的时候会按照当前链路中所有结点中最小的mtu值为标准进行拆包,但是在拆包完成后发送数据的时候,并不能保证传输过程中使用旧的线路。如下图:

浙公网安备 33010602011771号