免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3645 | 回复: 3
打印 上一主题 下一主题

非常奇怪的上传附件失败问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-03-23 12:04 |只看该作者 |倒序浏览
单位的web服务器是windows2003server(sp2)+apache2.2.25+php5.3.17,在家里访问单位网站服务器上传附件总是失败(附件大小552K)。
但是在单位局域网内上传几十M的附件都没有问题。家里使用的是20M的光纤上网,使用TP-LINK WR2041N无线路由器共享上网。
为了找出问题原因,进行了以下测试:
1.用手机3G上网上传同一个附件完全正常。
2.手机用wifi在家里上网和电脑一样,上传不成功。
3.将同一个附件上传到其他网站能够正常。
4.去除WR2041N无线路由器,直接电脑连接宽带能够上传该附件文件。
5.按照tp-link的技术支持做各种尝试,都不能正常上传附件到单位web服务器,包括禁用无线路由器的无线功能,电脑用网线连接无线路由器,克隆MAC地址等。
6.经过各种情况抓包对比,可以确定是因为丢失服务器返回的SACK应答包导致上传不成功的(我是在单位内部抓包和家里抓包对比发现的,就是服务器会发SACK应答包,但是家里电脑收不到,如果家里电脑直接连宽带猫就可以收到)
7.基于第6点的分析,我在服务器修改注册表禁用tcp的SACK(选择性重传)功能,这样家里电脑连着无线路由器也能够正常上传附加了。

经过测试和分析,我彻底凌乱了,因为网上查资料,SACK可以提高网络利用率,不应该禁止的。我开始怀疑是无线路由器丢失了SACK应答包,但是我抓包分析它又不会丢失其他的服务器SACK应答包,这是什么原因呢?

有哪位高手能帮忙分析一下原因,或者给一些其他的测试方法,谢谢!

另外我想说明的是:
1.所有上传附件测试使用的是同一附件,服务器关于上传附件大小的配置是没有什么问题的,因为在单位局域网上传几十M的附件都没有问题。
2.还有就是在家里上传附件不成功时,不同浏览器表现并不一样,使用IE10是过一段时间会出现该页无法显示的页面,使用firefox浏览器就长期停在上传页面中不动(试过等了10多分钟都没反应)
2.家里能够正常打开单位web服务器的网页,能够正常浏览,只是上传附件有问题。

我改天准备找个无线路由器替换一下试试,看看是不是无线路由器的问题。

论坛徽章:
0
2 [报告]
发表于 2014-03-23 12:08 |只看该作者
补充一点,无线路由器上的mtu也做过设置,确定不是mtu的问题,而且我禁止单位web服务器的TCP SACK功能后,mtu恢复回原来的默认值也可以正常上传附件

论坛徽章:
5
IT运维版块每日发帖之星
日期:2015-08-06 06:20:00IT运维版块每日发帖之星
日期:2015-08-10 06:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00IT运维版块每日发帖之星
日期:2015-08-24 06:20:00IT运维版块每日发帖之星
日期:2015-11-12 06:20:00
3 [报告]
发表于 2014-03-24 09:48 |只看该作者
SACK使用的是TCP OPTION字段,从你描述的现象来看,貌似这个路由对这一类的字段处理有问题。

你可以试试有故障的时候再这个小路由的外网侧和内网侧同时抓包,比对一下看看报文是否缺失后修改。

论坛徽章:
0
4 [报告]
发表于 2014-03-25 14:09 |只看该作者
回复 3# ssffzz1


    谢谢!我确实这样做了,通过抓包确实发现是丢失了服务器的sack应答包造成的。
而且我刚才换了一个路由器测试就没有这个问题,所以可以确定是tp-link WR2041N路由器处理sack应答包存在bug
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP