计算机用户及管理员是个缺乏耐心的群体。我们不想有任何的等待。如果需要花几秒钟加载网页、下载文件或传送消息,我们就会焦虑不安。而流失的几秒钟加起来积少成多,会变成流失数分钟、数小时乃至数天,而在如今的商业环境下,没人浪费得起这样的时间。
这篇文章我们不仅探讨了网络性能的真正含义、实际性能与感知性能之间的差异,导致网络性能低下的一些可能原因,还有改动Windows软件设置的几个提示,帮助提升网络性能,而且我们还将更深入一点地探讨配置变更,可以用来改善性能的第三方工具,以及Windows操作系统中自带的一些技术(包括最新版本中你可能没有意识到的一些新技术),这些技术旨在帮助你优化网络性能。
网络性能功能的演进
自计算机网络和通信的早期阶段以来,我们已取得了长足进展。第一批调制解调器的速率只有每秒75比特至300比特;十年前,1.5mbps T-1线路似乎快若闪电了。而如今,我们的互联网连接速率可以高达每秒吉比特(对不擅长数学的人来说,这个速率相当于每秒1073741824比特)。
第一代的以太网问世于上世纪80年代,其数据速率为10mbps――这比运行速率为4mbps的首批令牌环网络有了很大的改进。作为另一种早期的本地网络技术,ARCNET的速度还要慢,只有2.5mbps。与之形成对照的是如今的100gbps以太网,1gbps俨然就是企业部署环境下的标准,10gbps也并不罕见。
然而,网络性能绝不仅仅取决于连接的原始带宽。在电子通信领域,性能方面的度量通常包括下列方面:
•带宽:连接能够达到的大每秒比特速率,这是我们通常赋予连接速度的标签。
•吞吐量:传送数据的实际速率,这个度量指标可能、而且常常远低于带宽指标。
•时延:发送数据与目的地用户收到数据之间的延迟,这是由距离/传输时间引起的(因而,由于从地球传输到轨道再传回地球,卫星通信总是存在时延偏高的问题)。时延还会因沿路的中间站处理信号所需的时间而变长。
性能还受到传输错误率的影响。当比特抵达目的地但出现损坏后,就得重新发送,这降低了整体性能。众多干扰会引起错误,比如电磁干扰、附近线缆引起的串音、信号失真、随机噪声和同步问题等。
实际性能与感知性能
上述几个性能因素与信号本身、信号传输所通过的线缆(或电波)以及直接参与信号传输和接收(如果是中间节点,则重新传输或中继信号)的硬件有关。有许多办法可以通过改动硬件来提升性能,比如为服务器添加更多的网卡,从而分摊网络流量负载,将任何集线器换成交换机,或者将简单的交换机换成更智能化的交换机,升级线缆,以及更有效地保护线缆以屏蔽干扰等等。
操作系统和应用软件与此毫无关系。然而,网络的感知性能(perceived performance)可能会受到数据比特在离开发送端计算机之前及/或抵达目的地计算机之后所出现情况的重大影响。因而,软件在提升感知网络性能方面可以发挥重大的作用。
准确查明问题
网络性能似乎偏低时,第一步就是查明问题出在哪里。问题果真出在低速网络,还是出在某一个计算机系统?如果许多计算机上普遍存在问题,可以接下来查明性能降低出现在本地网络里面,还是这是互联网连接存在的问题?换句话说,是内部计算机的通信速度较慢,还是仅仅是基于互联网的传输速率较慢?如果互联网是罪魁祸首,之后你得查明问题出在内部部署型设备上、互联网提供商,还是出在你所连接的特定网站或服务上?
很显然,问题的根源将决定对此采取一些措施是不是在你的范围之内;如果是,又该如何处理。你可以使用一些诊断工具来查明一些问题,比如广域网连接上的时延或内部服务器存在的问题。商用或免费网络分析工具可以帮助你准确诊断速度偏慢的根源。
在一些情况下,贵企业的使用负载可能对你拥有的带宽数量来说不堪重负。这意味着,你需要考虑升级内部网络基础设施,或者向ISP购买带宽更高的服务套餐(或者甚至双管齐下)。不过在许多情况下,你有足够的内外带宽,增添更多的带宽只会浪费钱财,解决不了实际问题。
基于软件的性能提升
你在Windows系统上为了提升感知网络性能而能做的许多改动适用于所有版本的Windows操作系统和平台;另一些改动则依赖较新操作系统内置的技术。我们先介绍比较笼统的性能提升方法。
移除不需要的网络协议
Windows计算机支持许多不同的网络协议;其中许多协议某个时候在某个地方被启用了,尽管你从不使用它们,或者只是偶尔用一下,之后不再使用。可是那些不需要的协议在占用系统资源,生成毫无用处的网络流量,因而降低了你确实使用的协议的性能。
移除不需要的多余协议可以尽量减少需要议定的网络绑定数量,减少网络流量,并腾出系统资源。最棒的是,做起来很简单。
只要通过Change adapter settings(变更适配器设置)选项(网络和共享中心 | 任务),就可以访问你所安装的每只网卡的适配器设置。鼠标右击你想改动的连接,选择Properties(属性),向下滚动,即可看到哪些网络协议已被启用,不要勾选你不需要的协议旁边的方框,点击Uninstall(卸载),即可完全卸载协议。
请注意:相比随机安装众多之前流行,但不再经常使用的协议(比如PX/SPX、NetBEUI和AppleTalk)的较旧操作系统,这在较新操作系统上不太可能是个问题。别禁用下列协议(除非你知道自己在干什么,明白它会关闭网络的功能):
•Internet Protocol (TCP/IP)
•面向微软网络的客户机
•面向微软网络的文件和打印机共享
改动网络适配器驱动程序软件
如果优化网卡的驱动程序,可以提升网络适配器的感知性能。确保驱动程序软件是最新版本,为此只要访问厂商的官方网站,获取最新版本。还可以改动驱动程序的设置,增加可用于入站和出站数据包缓冲的内存数量,另外还可以改动缓冲区数目的设置。更大的缓冲区空间有助于尽量减少网络流量的突增引起拥塞而导致的性能降低。
下面是具体办法:在网络和共享中心中的Change adapter settings(变更适配器设置)选项中,鼠标右击你想改动的连接,选择Properties(属性),然后选择Network(网络)选项卡,最后选择Configure(配置)。现在,点击Advanced(高级)选项卡。这会显示可以改动的属性。有助于提升性能的一些属性包括如下:
•如果性能比节电还要重要,你可以关闭“关闭网卡以便节电”的电源管理功能。虽然关闭网卡确实可以节电,但是再次启动需要时间,而这会降低性能。这在服务器上来得尤为明显。
•你应该确保网络速度、双工和流量控制等选项都已设置好,以便与系统连接的交换机相一致。默认的设置可能是“自动”,这似乎是最合理的选择,但是这可能会导致进行自动同步时性能下降。
•如果你的服务器有大量内存,可以将Max Coalesce Buffers(大合并缓冲区)、Max Transmit/Send Descriptors and Buffers(大传输/发送描述符和缓冲区)以及Max Receive Buffers(大接收缓冲区)等设置的值设得尽可能大些,以提升感知网络性能。
•启用网络卸载功能(假设你的网卡支持该功能),减轻处理器的负载,这有望提升总体系统性能和感知网络性能。
•禁用Wake On LAN(以太网唤醒)功能。