`
- 浏览:
20135 次
- 性别:
- 来自:
厦门
-
如果您和其他人通过同一个
路由
器连接着电信ADSL Modem上网,其中一人使用迅雷等软件
下载
的时候,您是否会觉得网络异常的“卡”,甚至连网页都打不开呢?
这样的案例实在是太多了,但是大家终未究其原因,一般情况下,大家应该会认为这个在
下载
的人占尽了带宽,穷尽了网络资源,从而会要求他限速,比如,将当前的195KB/s的自然速度手动限制为60 KB/s。但是,您可否注意到这样的两个问题:
> 为什么使用IE
下载
的时候,有时速度也是190 KB/s左右,却一点也不会造成网络过度“繁忙”?
> 如果有人使用迅雷等下载软件进行下载,进行限速之后,仍然还是比较“卡”?
其实,如果您的电信带宽充足,这种由于一人或多人下载造成的“网络繁忙”均为假象,笔者将在此文中详细地为大家阐述为何会出现此假象以及如何解决这一问题。
下面,我将结合一个案例进行一个Case Study。
此例中,共有6人通过同一台路由器共享中国电信4M带宽的ADSL连接。此刻,只有三台计算机处于活动状态,其中IP地址为192.168.1.101的用户正在使用迅雷进行下载,路由端的统计如下图所示:
如上图蓝色框选部分所示,该用户的当前流量为287003字节/秒,也就是280 KB/s左右,这是这台正在下载的计算机的总网络流量。我们对图中红色框选部分所示的数据进行求和,统计出当前所有计算机使用的电信宽带流量为2.3M左右,远小于带宽4M。
打开这位用户的迅雷,可以发现这位用户当前的下载即时速度为213.33KB/s,打开迅雷的速度限制配置,可以发现全局最大连接数为256,有的用户甚至没有启用这个选项,让迅雷自动增大全局连接数。如下图所示:
现在,我们将全局最大连接数启用,并且将其设为10,如下图所示:
我们可以发现,设置完毕后,网络通畅了许多,用浏览器打开网页也不怎么“卡”了,而且,等一段时间之后,你可以看见上图中的即时速度几乎与之前没有太大变化,偶尔即时速度还可以达到248.06KB/s。
那么这究竟是为什么呢?我们要讲述以下四个概念了:
全局最大连接数:迅雷里面的“全局最大连接数”是指迅雷软件可以使用的最多连接数。此连接数为全开连接数,它必须小于半开连接数,否则为无效设置。
全 开 连 接 数:已经建立并在使用中的连接数。
半 开 连 接 数:又名“并发连接数”。就是XP SP2及之后的
Windows
系
统中限制为“10”的一个参数,它存在于TCPIP.SYS文件中。这就是那个备受各种修改软件以及国内下载软件关注的参数。所谓半开TCP连接,简单地
说就是发送了TCP连接请求,但还没有得到对方应答的状态,也就是连接尚未完全建立起来,双方还无法进行通信交互的状态。在迅雷中,修改它的位置如下图所
示:
路由器“连接数”:主要是指并发连接数,它是路由器能够同时处理的点对点连接的数目。
在“您的当前连接数为”一栏中显示的即为系统当前的半开连接数。如果不是10,则说明您的系统被修改过了。国内的下载软件总是说推荐设置为“256”或更高,这点我们在下文中讨论。
好了,明白了以上三个概念之后,我们得讲一讲下载速度、“卡”与“不卡”等现象同全开、半开连接数等参数之间的关系了。首当其冲的,我们需要了解连接数的具体意义。
要了解连接数,首先需要明白一个概念,那就是“会话”。这个“会话”可不是我们平时的谈话,但是可以用平时的谈话来理解,两个人在谈话时,你一句,我一句,一问一答,我们把它称为一次对话,或者叫会话。同样,在我们用电脑工作时,每一次完整的数据
交换
过
程,我们都可以把它叫做一个“会话”。说到这里,可能有人会说:这个是在电脑上的操作,跟路由器有什么关系呢?事实并不是这样的,我们使用路由器的目的是
共享上网,电脑说出去的话都需要路由器来转发出去,对方电脑的回话也需要路由器转发回来,那么,如果是多台电脑的话,路由器如何知道哪句话是谁说的呢?举
个例子:张三、李四、王五说话,您都知道哪句话是张三说的,哪句话是李四说的;那是因为您记住了他们说的话。路由器如果要分辨的话,同样也要记住。在路由
器内部维护着一张连接数表,是用来存放连接数信息,动态占用一些内存、CPU。这张表的大小是固定的,如果某个时候,这张表被填满了;那么,再有数据要出
去的话,路由器没有办法转发。可以这么说:“路由器的连接数是有上限的,如果其中的一部分电脑就用完了连接数,那么,其余的电脑就没法上网”。这就是为什
么有的时候下载速度并不高,但是其他人觉得很卡。因为,正在下载的计算机的全局最大连接数过大,也就是全开连接数(正被占用的建立了连接的连接数)过大,
耗尽路由器资源,他人得不到足够的路由器连接数资源,就像有车却没有路,开不动。
那么,可能有人会说,“如果将全局最大连接数设置过小,比如10,肯定会降低我的下载速度”。
其实不然,可以说,这个说法是错误的。下载速度与连接数之间并没有直接的普通数学关系,而是一种概率统计的关系。速度大,连接数不一定多;反过来,连接数
多,速度也不一定大。只能这么说,连接数多的话,速度变大的可能性比较高,或者说,连接数大的话,达到当前可能的最大下载速度所用的时间会稍稍短一些。举
个例子,公路是八车道的,车流量未知。如果就两辆车,他们可以使用两个车道就OK了,但是你却开启了全部8个车道,并将其标记为只允许那两辆车使用,因此
别人的车不能够上路,虽然明明有6个空闲的车道,这是关于连接数占用的比喻。对于速度,我们打类似的比方,比如你要将一桶水装满,装满就意味着达到了可以
达到的最大速度,那么你一个人装,迟早会装满,但是多个人装的话就会快一点达到装满的状态并保持,但是,如果你叫了一个人来,他什么也不做,那么他这个人
对于你更快装满这通水没有帮助,而且他被你叫来了,别人也叫不了他帮忙了。
在迅雷软件中,明显规定,全局最大连接数必须小于半开连接数。如果您的系统未被修改半开连接数,那么您本应将全局最大连接数设为10或更少。
对于微软对半开连接数的限制,我们必须要认识到以下知识。半开连接数并不是越大速度越快,就像上面说过的一样。限制半开连接数,也就是说限制的是在同一时
间发起请求连接的TCP 数量,TCP并发连接数,并不会影响系统的TCP连接总数。
P2P软件下载文件时对源的请求链接就是半开链接,一个半开链接,要么对方返回响应建立正常的TCP连接,要么超时断掉被释放,不会长时间存在的。
国内用户所使用的某些下载软件往往将自身的半开连接数设定的非常大(如256或更高),远远超过了系统限制的10个,当这10个半开连接都被程序占用的时
候,就会出现影响正常网络使用,比如WEB浏览器开启网页缓慢。降低TCP半开连接数并不会影响下载软件的最大下载速度,更高的半开连接数所能获得的只是
提升下载达到最高速度的时间。
半开连接数没有必要设置得太大。因为每一个半开连接都会为系统(包括路由器、
防火墙
、
操作系统等)引入额外的开销,过多的半开连接数只会导致系统资源紧张、不稳定甚至崩溃,却不能带来传输速率在实质上的提高。更加危险的是,在P2P网络
中,一个黑客可以通过散布虚假资源信息,引导大量客户端在短时间内试图与某个被攻击者建立连接,如果半开连接数设置过大,将导致系统崩溃(路由器梗死、
防火墙
瘫痪或者操作系统崩溃等)。还有其它很多DDoS攻击手段,限制TCP半开连接数,可以有效地防止DDoS攻击。
半开连接数量限制对上传、下载速率几乎没有影响。半开连接数限制充其量仅会在连接时引入一点时延(从几毫秒到几百毫秒)而已。而数据交互是在已经建立的TCP连接上传输的(与全局最大连接数有关),传输速率与半开连接数量无关。更何况P2P
协议
本身还有排队、请求数据等,这些机制引入的时延都远远大于半开连接限制所带来的时延(例如,你连接了数百个对端,但是传输数据的却只有其中的几十个而已,其中大部分都处于等待或闲置状态)。因此,半开连接数限制对上传、下载速率几乎没有影响。
讲了这么多,可能您头都快晕了。我们简要总结一下:
> 下载软件的下载速度与连接数没有直接关系,源少而连接数多的话,速度还是低得很,可是路由器上的其他用户却会因为路由器的连接数被耗尽而“卡”、得要死,网页都打不开,直到您下载完。建议您将全局最大连接数改小;
> 为了获得更高的全局最大连接数,下载软件才提示您修改系统的TCP/IP半开连接数(并发连接数),因为全局最大连接数(全开连接数)必须要小于半开连接数。将半开连接数设置得过大有害而无益;
> 修改软件设置的话要注意弄清其含义,并不是什么参数都改得越大越好。
> 如果您的网络繁忙,也就是觉得很卡,要么是下载速度太高了,耗尽了带宽资源,要么就是您的全局最大连接数过大,耗尽了路由器等硬件的连接资源。
最后,如果您要查看当前的连接,可以使用“netstat”命令,其中状态为ESTABLISHED状态的都是已经建立的连接,也就是全开连接;状态为“Time_Wait”的连接都是半开连接。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
简单的Samba安装过程,很简单哦
自己经常用迅雷挂机下东西,下久了电脑会卡,因此蛋疼自己写了一个完整的设定电脑重启的脚本。使用的时候需要将readTimeAndCall.vbs的快捷方式放入启动文件夹,这样可以自动多次重启。 具体的规则:运行...
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
《基于YOLOv8的智慧社区独居老人生命体征监测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
Android Studio Meerkat 2024.3.1 Patch 1(android-studio-2024.3.1.14-mac.dmg)适用于macOS Intel系统,文件使用360压缩软件分割成两个压缩包,必须一起下载使用: part1: https://download.csdn.net/download/weixin_43800734/90557060 part2: https://download.csdn.net/download/weixin_43800734/90557056
侧轴承杯加工工艺编制及夹具设计.zip
NASA数据集锂电池容量特征提取(Matlab完整源码和数据) 作者介绍:机器学习之心,博客专家认证,机器学习领域创作者,2023博客之星TOP50,主做机器学习和深度学习时序、回归、分类、聚类和降维等程序设计和案例分析,文章底部有博主联系方式。从事Matlab、Python算法仿真工作8年,更多仿真源码、数据集定制私信。
板料折弯机液压系统设计.zip
C6150车床的设计.zip
机器学习之KNN实现手写数字
python爬虫;智能切换策略,反爬检测机制
mpls-vpn-optionA-all
56tgyhujikolp[
GB 6442-86企业职工伤亡事故调查分析规则.pdf
汽车液压式主动悬架系统的设计().zip
2000-2024年各省专利侵权案件结案数数据 1、时间:2000-2024年 2、来源:国家知识产权J 3、指标:专利侵权案件结案数 4、范围:31省 5、用途:可用于衡量知识产权保护水平
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
内容概要:本文档详细复现了金融数学课程作业,涵盖欧式看涨期权定价和投资组合优化两大部分。对于欧式看涨期权定价,分别采用Black-Scholes模型和蒙特卡洛方法进行了计算,并对彩虹期权进行了基于最大值的看涨期权定价。投资组合优化部分则探讨了最小方差组合、给定收益的最小方差组合、最大效用组合以及给定风险的最大收益组合四种情形,还对比了拉格朗日乘数法和二次规划求解器两种方法。文中不仅提供了详细的MATLAB代码,还有详尽的中文解释,确保每一步骤清晰明了。 适合人群:金融工程专业学生、量化分析师、金融数学爱好者。 使用场景及目标:①帮助学生理解和掌握金融衍生品定价的基本原理和方法;②为从事量化分析的专业人士提供实用工具和技术支持;③作为教学材料辅助高校教师讲授相关内容。 其他说明:文档还包括了完整的论文结构建议,从封面页到结论,再到附录,涵盖了所有必要元素,确保提交的作业符合学术规范。此外,还特别强调了数据预处理步骤,确保代码可以顺利运行。
脉冲电解射流加工喷射装置设计(1)
ThinkPad S1 (2nd Generation) 和ThinkPad Yoga 260 用户指南V3.0,包含如何拆机更换硬件