皂液器厂家
免费服务热线

Free service

hotline

010-00000000
皂液器厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

NAS性能调优实例Isilon重传解决经历

发布时间:2021-01-21 15:14:34 阅读: 来源:皂液器厂家

半夜里,手机突然响起。恍惚中按下接听键,传来的竟然是老板的声音……一番寒暄之后(半夜跑到阳台接电话是挺寒的):

老板:我司在为C电视台实施Isilon,被一个读性能的问题卡了好几天。希望能派一位网络方面的专家,尽快飞到北京,你……

阿满:我们team有那么多CCIE,能不能派他们去?我老婆正在生病,明天还约好了搬家公司。

老板:#¥%*@$^&……你不用担心,我可以安排几个人帮你搬家。

阿满:(赶在老板安排人帮我照顾老婆之前)好吧,我赶紧准备一下。

回到房间,才想起以前完全没接触过Isilon。Google了一下,才知道是EMC收购的NAS产品,性能卓越,怎么现场工程师们会被卡了好几天?看看表,已经夜里2点了,还是先睡吧。

5点起床,司机已经等在楼下了。飞驰到了办公室,现场工程师上传的网络包也已经准备完毕。粗略一看,有很多包发生了重传 (Retransmission),而且有大量乱序(Out-Of-Order)。我的第一反应就是,乱序导致了重传,从而影响了性能。由于时间有限,我随机挑了几个重传的包检查一下,发现重传的方向都是从Isilon到Windows,这倒是符合读慢写快的症状。下图是Wireshark的分析结果。

乱序的网络包为什么会导致重传呢?下面简单介绍一下:

在正常情况下,接收方收到包的Seq号总是顺序的,比如在每个包长度为1460的情况下,Seq号可能是这样的:0,1460,2920,4380…… (每个相差1460)。接收方知道下一个包的号码应该是什么,比如4380之后应该是4380+1460=5840。如果收到的不是5840,接收方就知道包序乱了,它会回复一个包给发送方,说“我要的是5840(即Ack 5840)”。如果接下来收到的还不是5480,那接收方每收到一个包,就会发一次“我要的是5840”给发送方,直到收到5840为止。

对于发送方来说,持续收到“我要的是5840”不但意味着5840可能跑到其它包后面了,还可能意味着5840已经丢失。RFC里这样定义: 如果发送方收到三次以上的“我要的是X”,即可认为包X丢失,立即启动快速重传。上图演示了这个过程。快速重传不但重新传输了(可能)丢失的包,还会减小 TCP发送窗口,对性能的影响仅次于超时重传。分析到这里,我仿佛看到一丝曙光。

乱序一般是由发送方或者网络设备导致的。由于手头只有在Windows客户机抓的包,所以我无法进一步确认。便匆匆赶去机场,飞往北京了。在飞机上拟了一个计划:

1. Isilon和其它服务器一样,估计有类似Large Segment Offload的机制,也许关闭后能减少乱序。

2. 把Isilon和Windows客户端连到同一台空闲的Switch,尽量排除网络设备导致的乱序。

3. 在Isilon上再抓个网络包确认。

卧虎藏龙手游

梦幻古龙官网下载

qq游戏手机版官方下载

猴子很忙破解版

相关阅读