您现在的位置: IT专家网 > WinSystem子站 > 技巧
Vista多媒体播放和网络吞吐率
作者: Liu_hui , 出处:Windows Vista博客, 责任编辑: 韩博颖,
2008-06-02 16:14
前段时间网上新出现了一条新闻,在Windows Vista中播放多媒体文件会导致网络性能降低。结果证明这个问题确实存在,对这个问题进行了比较合理的解释。
因为标准以太网Frame大小是1500字节左右,每秒将数据包数量限制为10000等于将网络吞吐率限制在最大15MB/s。百兆网络最多可以实现的吞吐量是12MB/s,因此如果你的系统在百兆网络中,你可能看不到任何影响。然而,如果你有千兆网络,而且发送端和你的Vista接收端都有千兆网络适配器,那么你的网络吞吐率会被降低到正常情况的15%。
然而NDIS调节功能的代码中很不幸有一个Bug,如果你有多个网卡,这会导致调节幅度被增大。例如,如果你的系统中同时安装了有线和无线网络适配器,NDIS每秒钟会处理最多8000个数据包;如果安装了三块网络适配器,每秒钟可以处理的数据包数量会降低到6000个。每秒6000个数据包等于9MB/s,这个结果甚至在百兆网络中的影响都是很明显的。
在一台安装了三个网络适配器的笔记本电脑上,我从其他系统中复制一个大文件,同时用WMP播放歌曲,借此让调节功能生效。下面的任务管理器截图显示了复制的吞吐量占用原本有大概20%,但是在开始播放歌曲的时候在千兆网络上降低到只有6%:

你可以在性能监视器中,在Network类别下添加“packets received per second”计数器来监控由NDIS收到的数据包数量。下图中,你可以看到收到的数据包数量的变化趋势和我上面提到的结果是完全一样的。NDIS处理的数据包数量并不满足理论上的最大6000个的结论,很可能是因为和远程系统握手的缘故。

