1.3 理论基础

拥塞的核心是队列,而队列背后又有大量的理论,这些理论横跨多个领域,例如超市收银台和道路拥堵问题。关于分组交换网络中队列的标准参考书籍由 ARPANET 的早期先驱之一,Leonard Kleinrock所著。

更多阅读:L. Kleinrock. Queueing Systems, Volume 2.

随着分组交换网络在1980年代变得更加普及,人们对网路流量的行为表现出了极大的兴趣,并逐渐认识到网络流量的复杂性可能超出了最初的想象。泊松模型(Poisson model)曾经是最受欢迎的数据流量模型之一。该模型可以较好的描述电话网络中来电到达,以及超市中顾客的到达。但是,随着研究的加深,泊松模型对互联网和分组交换网络的描述越来越糟糕。因此一些开创性的论文提出了更为复杂的模型,以下是其中的两篇。

这些论文以及其他论文共同认为,网络流量远比早期模型所假设的,更具有“突发性”——数据包会扎堆到达。此外,这种突发性表现出自相似性(self-similarity),这是是fractal的一个属性,它意味着当你放大观察时,可以在更高的分辨率上看到类似的复杂性。对于互联网流量而言,这意味着在任何时间尺度上,从微秒到小时,你都会看到类似的流量模型。

这些研究产生了许多实际后果,例如它使得人们认识到数据包队列可能需要非常长,因此路由器和交换机应该有相当大的数据包缓冲区。(正确地调整这些缓冲区的大小又是另外的研究课题)链路利用率不能始终可靠地保持接近100%,因为你必须为不可预测的突发流量留出空间。

在考虑避免拥塞时,特别重要的两个话题是公平性 稳定性。当网络出现拥塞时,某些用户或数据流必须减少发送量。显然,值得询问的问题包括:哪些数据流应该减少发送?所有数据流是否应该平等地分担拥塞带来的后果?如果某些数据流比其他数据流更加关注拥塞,会发生什么情况?这些问题是公平性问题的核心。Jain的公平性指数是一个用来测量网络究竟有多公平的一个广泛被接受的方法。我们将在第三章详细探讨这部分。

稳定性是任何控制系统的关键属性,拥塞控制也不例外。当检测到拥塞时,某些措施会被采取,以减少总体流量,从而缓解拥塞。当拥塞缓解时,似乎合理的做法是再次增加流量,但随着流量的不断增加又会导致新的拥塞。可以想象,这种拥塞与非拥塞状态之间的振荡可能会永远持续下去,如果网络一直在未被充分利用和拥塞崩溃之间来回切换,将会非常有害。我们真正希望找到的是一种平衡状态,网络忙碌但不至于发生拥塞崩溃。找到这些稳定控制循环一直是拥塞控制系统设计者几十年来面临的关键挑战之一。在早期的Jacobson和Karels的工作中,稳定性的追求占据了重要位置,在后续的方法中,稳定性仍然是必须满足的要求。

在实现和部署了最初版本的 TCP 拥塞控制算法之后,研究人员开始构建 TCP 行为的数学模型,从而能够建立起丢包率、往返时间(RTT)和吞吐量之间的关系。这一基础在Mathis及其同事的论文中被奠定,但随着拥塞控制算法的发展,还有一系列持续进行的研究工作。TCP在稳定的RTT和丢包率下会收敛到某一确定吞吐量的想法,也为TCP-friendly rate control(TFRC)奠定了基础。基于它们仍然可以与那些使用TCP的应用程序以公平的方式共享可用网络容量的想法,TFRC 将 TCP 的拥塞控制扩展到不使用TCP的应用程序中。我们将在第7章再次回到这个话题。

更多阅读:M. Mathis, J. Semke, J. Mahdavi, and T. Ott. The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm. SIGCOMM CCR, 27(3), July 1997.

最终,大多数关于拥塞控制的理论工作将拥塞控制定义为“一个分布式算法,用于在竞争者之间共享网络资源,其目标是选择发送速率,以在容量约束条件下最大化总体发送效率。” 将拥塞控制机制表述为一种优化目标函数的算法,可以追溯到1997年Frank Kelly的一篇论文,后来由Sanjeewa Athuraliya和Steven Low进一步扩展,以同时考虑流量来源(TCP)和路由器队列技术(AQM)。

更多阅读:F. Kelly. Charging and Rate Control for Elastic Traffic. European Transactions on Telecommunications, 8:33–37, 1997.

S. Athuraliya and S. Low, An Empirical Validation of a Duality Model of TCP and Active Queue Management Algorithms. Proceedings of the Winter Simulation Conference, 2001.

本书并没有介绍这些论文中的数学公式(以及随后的大量工作),但我们认为,将以上理论工作和本书中介绍的各种实际的机制之间建立联系是有帮助的。拥塞控制是网络领域中,理论和实际有效的连接在一起,以探索各种可能的解决方案并开发出能有效解决问题的方法,的一个子领域。

Last updated