没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|行业资讯|编辑:龚雪|2014-09-28 15:13:54.000|阅读 136 次
概述:贪婪TCP协议
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
已不记得多少次玩游戏时,被隔壁loser下片卡掉线。
已不记得多少次浏览网页时,被隔壁sb下片卡得动弹不了。
为什么带宽总是被P2P下载抢光呢?
是因为P2P太流氓了吗?
有句老话说得好,人背不能归社会。与其抱怨P2P协议太流氓,不如说tcp协议太憨厚老实了。tcp协议的拥塞控制算法,会根据丢包、重传、延时等现象,判断当前网络状态。当网络状况不好时,tcp协议会自动降低传输速率,以降低网络压力,避免网络因过重的压力而崩溃。当P2P拼命抢带宽时,tcp协议却不停的降低自己的速度,结果就是带宽被P2P吃完而tcp的速度接近于0。
tcp拥塞控制,是针对PCà服务器的整条线路进行流量控制。保护的是“整条互联网线路”。这是一个舍己为人的“君子”协议。在带宽大而且p2p不是很泛滥的国家(除中国外的全世界),tcp能让大家都过上网络通畅的好日子。但是在中国,“流氓”软件越来越多。各种P2P下载工具、视屏插件疯狂抢带宽。使得TCP拥塞控制变得越来越不合时宜。
我们需要对TCP协议的拥塞控制做一次革命!!!
我们真的需要拥塞控制吗?
需要的,但不是针对“整条互联网线路”,而是仅仅针对我们的出口带宽做拥塞控制。假如我的出口带宽只有10MB,那么我们的拥塞控制就应该针对10MB来做,正好占满这10MB带宽。至于电信小区出口带宽不够了,电信移动间连接节点带宽不够了,这些位置的拥塞都和我们没关系。P2P只管自己死活,我们的tcp也必须以同样的策略对抗才能保证用户正常上网。这就是我们的贪婪TCP协议:仅针对自身的网络出口带宽进行拥塞控制。
说来容易实现难
tcp协议中的拥塞控制是由发送方控制的,也就是说,当我们用PC浏览网页时,PC只能控制自己上传数据的速率,无法控制服务器发送数据的速率。所以贪婪tcp协议主要是做在服务器端的。通过在服务器端采用贪婪tcp协议来提高用户访问网站/玩游戏的流畅度。很多大公司都会采用“把拥塞控制初始窗口改大几十倍”的办法来达到提高拥塞窗口的效果。不过我们作为一家自己写内核的公司,顺手做一个贪婪tcp协议能达到更好的效果。
在实现贪婪tcp协议时主要涉及到几个技术点:
1、出口带宽的监控和各个连接间的速率分配
我们是通过流量控制模块来实现的(因为之前已经有流控了,这样做成本最小),将各个tcp连接的数据包接入流控管理队列,流控管理队列根据当前出口带宽情况控制选择合适的数据包通过网卡发送出去;然后再将积压未发送的数据长度反馈给各个tcp连接,减小tcp发送速率。一个更高性能的实现方案是:各个tcp连接将自己的发送状态反馈到一个per-cpu流量管理中心,per-cpu流量管理中心为tcp连接分配当前时间周期能发送的数据量;各个per-cpu的流量管理中心则隔几十毫秒同步一次数据。
2、流量控制窗口
tcp协议中,接收方可以通过流量控制窗口来限制发送方的发送速率。一般来说,当接收方的接收缓冲区不够时,就会通过tcp流量控制窗口来限制发送方的发送速率。正常情况下,这种限制是很少发生的。但是为了保险起见,我们需要对tcp流量控制窗口进行支持。
3、别真的发的太快了
因为我们只考虑了服务器端出口带宽,没有考虑客户端的出口带宽。如果真的拼命发到1GB/s的数据,有可能把PC用户的出口带宽冲垮。因为我们只是用贪婪tcp协议来支持游戏、网页浏览这种耗流量较小的服务器,很少会碰到一次发送数据超过1MB的情况,所以基本不会碰到“发的太快”的情况。
如果要支持大文件传输,则必须对客户端出口带宽进行预测。我们可以假定客户端的网络带宽在若干小时内一般是固定的。然后计算当我们提高/降低速率时丢包率的变化。例如当我们以10KB/s传输数据时,丢包率就已经达到了20%;100KB/s时丢包率仅仅升高为23%,就可以认为丢包主要不是由我们引起的,可以进一步提高发送速率,提高我们抢带宽的能力。
原文:http://blog.chinaunix.net/uid-29873073-id-4498350.html
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com
文章转载自:慧都控件网企业级软件测试方案Parasoft C/C++test凭借其智能技术、模块化用例框架以及多维度覆盖率热力图等先进功能,实现了测试用例的“自动生长”,解决了用例维护难题,并精准定位未覆盖区域,为Stellantis的软件测试工作带来了革命性的变革。
QA是保障软件质量的关键防线,效率至关重要。Parasoft CTP的这一新功能,通过提升自动化测试和剩余手动测试的代码覆盖率,可以与开发节奏保持同步,并获得更快的反馈,这使企业能够充满自信地修复所有漏洞,从而稳步推进项目发展。
Datamine成立于1981年,是矿业技术服务领域的领先企业,专注于为矿山设计、地质勘探和生产管理提供专业的软件解决方案。业务遍及20多个国家,拥有25个办事处。其核心产品 MineScape 具备处理海量矿山数据的能力,支持实时三维渲染与交互,助力客户提升设计与规划效率。
那么,BarTender 支持哪些数据库类型?又是如何助力企业实现数据驱动的智能打印?今天,我们来全面拆解!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@evget.com
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
慧都科技 版权所有 Copyright 2003-
2025 渝ICP备12000582号-13 渝公网安备
50010702500608号