概要
联网服务质量(QoS)是指在整个网络连接上应用的各种通信或程序类型优先技术,这些技术不只是依赖于“最大努力“连接。Microsoft Windows 2000和Windows XP中都内置了QoS机制。本文介绍Windows XP所提供的QoS增强功能。本文还提供最先在Windows 2000中引入的QoS功能的参考。
Internet连接共享(ICS)的QoS
当一个网络通过慢速链接或连接(如拨号线路)连接到另一个网络时,通过慢速链接的通信延迟可能会增加。发生这种延迟的原因是,通信终端站所识别的速度与慢速链接的速度不匹配,从而导致网络路径的瓶颈。这只适用于面向连接的通信(使用TCP)。
在一个相对较快的网络(如100 Mb/s以太网)上,如果接收客户机在运行Windows XP的ICS服务的计算机后面运行,并且与此接收客户机通信的服务器位于快速网络上的远程访问后面,则存在不匹配现象。在这种情况下,接收客户机的接收窗口被设置为较大的值,此值基于接收客户机连接到的链接的速度。发送方以低速率开始发送,但是,如果数据包没有丢失,那么速度会不断增加,最后将发送几乎全窗口尺寸的数据包。
这会影响通过同一网络的其他TCP连接的性能,使它们的数据包在可能排很长的队列中等候通过慢速网络传输出去。如果发生数据包丢失,那么必须重新传输数据(多达全窗口尺寸),从而使链接更加堵塞。
相应的解决方案是使在网络边缘运行ICS的计算机自动将接收窗口设置为适合慢速链接的较小尺寸,覆盖接收客户机的规范。这种设置不会对通信产生不利影响,这是因为,如果接收客户机直接与慢速链路相连,窗口尺寸会相应地设置。运行在ICS计算机上的QoS数据包调度程序组件进行此窗口调整。
调制解调器和远程访问的QoS
截止到2002年1月,很多用户仍然通过慢速链接与Internet相连,例如连接速度为每秒56千字节。尽管链接速度受到限制,但很多用户仍要同时运行多个访问网络的程序。这可能包括浏览、下载、电子邮件、聊天,甚至音频或视频流。这些程序大部分使用TCP作为基本传输协议,每个程序使用自己的连接。
第一个使用链接的程序最初有独占使用权,以使它的连接达到稳定状态,从而在传输中实现数据的全TCP窗口。当下一个程序开始传输数据时,它使用的连接受慢启动算法的制约,此算法限制可以传输的未确认数据的数量。由于已建立的程序正在传输一定数量的数据,因此第二个程序达到稳定状态所需的时间要长得多,并且同样大小的数据传输速度慢得多。
Windows XP在慢速链接上运行时,实现了一个称为“不足额循环(DRR)“的合理方案。Windows 2000也使用了此方案,但在Windows XP中,当检测到慢速链接时,默认情况下打开此方案。此方案分配若干数据流,并为这些流分配新的应用程序数据流。以循环方式自动服务这些流,产生更好的网络通信响应和性能,而不需要用户做任何手动配置。
对运行Windows XP的终端计算机中的QoS的澄清
与Windows 2000一样,在Windows XP中,程序也可以通过QoS应用程序编程接口(API)来利用QoS。所有程序可以共享百分之百的网络带宽,特别要求带宽优先权的程序除外。其他程序也可以使用这种“保留“的带宽,正在发送数据的请求程序除外。默认情况下,程序保留的带宽累计可达终端计算机每个接口的基本链接速度的百分之二十。如果保留带宽的程序发送的数据量没有完全用完带宽,保留带宽的未用部分可用于同一主机上的其他数据流。
有关QoS数据包调度程序的更多信息,请参考Windows XP帮助。Windows 2000技术库提供了有关Windows 2000 QoS的其他信息。
纠正Windows XP QoS支持方面的一些错误说法
许多发表的技术文章和新闻组文章多次提到Windows XP通常为QoS保留百分之二十的可用带宽。通过上面的文章我们可以得出“QoS保留百分之二十的可用带宽”这些说法是错误的。