在这一节里,我们简单了解多播流量和拥塞控制的基本机制。多播流量控制可以看作是旨在将数据源数据传输速率与接收端可以利用的容量及通往接收端的路由上可用带宽相互匹配起来的一系列机制。多播流量控制最初的目的是防止发送端数据传输速率太快导致接收端过载。另一方面,多播拥塞控制用于根据网络条件和数据流公平享用可用资源的原则来调整数据转发速率。这解决了一个更全局性的问题,因为多播拥塞控制处理的不仅仅是多播会话期内成员间的公平性,还有不同多播会话间的公平性,以及某条链路上任意信息流之间的公平性。流量控制和拥塞控制之间关系紧密,所以常常同时进行。
大多数现有的多播应用程序都工作在UDP以上,它们只保证尽力而为的传输。与TCP不同的是,UDP不提供任何基于反馈的拥塞控制。在网络资源有限的拥塞链路上,基于UDP的数据流会占用基于TCP的数据流的资源,从而迫使基于TCP的发送端将发送速率减小到极低,有人将这种情况形象地称为“TCP数据流被饿死”。拥塞控制的目的之一就是实现会话间的公平性,让多播数据流表现得像TCP业务或者类似TCP的业务。在网络中避免拥塞的一种显而易见的方法就是超量提供网络资源或者实施一种严格的资源预留制度,在实施资源预留制度的网络中,例如移动网络,不需要拥塞控制机制。然而在全球互联网中,合适的多播拥塞控制机制是必要的。还有一个问题就是,流量和拥塞控制必须解决潜在广泛分布的多播接收端和它们的中间网段的异构性。我们通常希望发送端能根据到达每个接收端的路径上的可用带宽来调整发送速率。将发送速率限制在最差情况用户的链路容量会影响其他的会话用户。这个问题也被称为接收端之间的公平性。(www.xing528.com)
流量和拥塞控制方案可以分为单一速率和多速率两种。在单一速率方案中,多播会话数据将以相同速率发往所有接收端。尽管这种方案能够保证会话间的公平性,当存在异构接收端时,单一速率方案不能保证接收端之间的公平性。因此,相比较之下,多速率方案更优,尤其是面临庞大接收群的情况下。多速率方案在多种速率下传输多播会话数据。多速率传输可以通过多种方式实现。方法之一就是将原始数据编码成多种数据流,然后同时发送或者复制这些数据流。每个接收端可以选择一个速率与自己的可用容量匹配的数据流。这种方法会带来额外的开销,因为并行数据流添加了冗余信息。多速率传输的一种更有效的方案是分层多播,将业务数据分为若干层,每一层数据被传输到不同的IP多播组,每一层的编码速率可以相同也可以不同。还有一种累积分层方案,所有接收端必须订制基本层业务,基本层包含正确接收数据流所需要的基本特征。充分考虑可用带宽后,接收端可以订制多个层的业务,从而获得更高的数据接收速率。根据数据类型的不同,这样可能带来更高的视频流质量或者更快的文件下载速率。非累积性方案不要求分层,接收端可以订制任意一个可用层。多速率拥塞控制还可以通过在中间网络节点对多个数据流进行转码操作来实现,也可以通过在多播传输路径的路由器上过滤数据流来实现。(Li and Zhang,2002)上有关于IP多播的流量和拥塞控制的详细讨论。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。