一个 10M 宽带连接,两个人同时上传视频,如何在他们之间分配带宽,带宽分配是否会影响即时通讯?此类问题都是 TCP 拥堵算法需要考虑的。TCP 拥堵算法存在于所有联网设备上,它可能是世界上最广泛使用的计算机程序。TCP 拥堵算法由人类程序员手工编写,过去 25 年出现过许多拥堵算法方案,如 TCP Tahoe、Reno、NewReno、Vegas...Linux 系统默认使用的是 Cubic,Windows 默认使用 Compound。人类程序员在设计程序时依赖于以前的知识去推测网络将会如何工作。MIT 计算机科学和人工智能实验室的研究人员声称,机器学习算法设计的 TCP 拥堵算法能比人类更出色,他们开发的程序 Remy 可以让 TCP 速度提升一倍延迟减半。论文(PDF)将在香港举行的 ACM SIGCOMM 2013 年会上公开。