TCP 拥塞控制拯救了互联网
这篇文章介绍了 TCP 拥塞控制如何拯救互联网。
在今年的 SIGCOMM 会议上,尽管关于 TCP 拥塞控制的第一篇论文已经发表了 35 年,但拥塞控制仍然在会议议程中占有一个小时的时间。
关于 TCP/IP 协议为何比同时代的协议更成功,有许多理论,但这些理论并不容易验证。互联网协议的成功很可能有很多因素。文章观点认为,拥塞控制是使互联网从中等规模发展到全球规模的关键因素之一。
在 David Clark 的论文“DARPA 互联网协议的设计哲学”中,一个明确的设计目标是:“互联网架构必须允许其资源进行分布式管理。”这个目标有许多不同的含义,但 Jacobson 和 Karels 首次在 TCP 中实现拥塞控制就是一个很好的例子,体现了他们对这个原则的重视。
文章之所以将互联网的成功归功于拥塞控制算法,其中一个原因是,互联网的失败之路在 1986 年就已清晰可见。Jacobson 描述了一些早期的拥塞崩溃事件,导致吞吐量下降了三倍。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
GitHub CEO:AI 无法取代程序员
GitHub 首席执行官 Thomas Dohmke 最近在公开场合分享了他对于人工智能和软件开发之间关系的看法。 Thomas Dohmke 认为,在 Copilot 及其相关 Copilot Chat 等辅助工具的推动下,人工智能和软件开发现在已密不可分。 与此同时,他也坚持自己的观点——滚雪球式的人工智能革命不会给软件开发行业敲响丧钟。 Dohmke 说道,行业对软件开发者的需求将继续超过供应。事实上,Doohmke 和许多其他技术领导者一样,长期以来一直坚持认为 Copilot 等 AI 工具只是用于提高开发者的工作效率,而不是取而代之。 至于未来,比如十年后——又会怎样呢? Doohmke 表示,十年内软件的数量只会呈指数增长,我们需要管理的代码行数越来越多,我们的想法也越来越多,坦白说,现在每家公司都是软件公司。 Doohmke 提到行业对于软件开发者仍有高需求的原因之一是大量“老”代码仍然以其原始形式存在。比如银行和金融机构仍在运行 60 年代的 COBOL 代码,而那些 60 年代的开发者现在都退休了。而且当时的代码没有采用基于单元测试和 CI/CD 进行编写,因此必须...
- 下一篇
一个 println 竟然比 volatile 还好使? | 京东云技术团队
前两天一个小伙伴突然找我求助,说准备换个坑,最近在系统复习多线程知识,但遇到了一个刷新认知的问题…… 小伙伴:Effective JAVA 里的并发章节里,有一段关于可见性的描述。下面这段代码会出现死循环,这个我能理解,JMM 内存模型嘛,JMM 不保证 stopRequested 的修改能被及时的观测到。 static boolean stopRequested = false; public static void main(String[] args) throws InterruptedException { Thread backgroundThread = new Thread(() -> { int i = 0; while (!stopRequested) { i++; } }) ; backgroundThread.start(); TimeUnit.MICROSECONDS.sleep(10); stopRequested = true ; } 但奇怪的是在我加了一行打印之后,就不会出现死循环了!难道我一行 println 能比 volatile 还好使啊?这...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19