NAS的巨型帧(Jumbo Frame)设置 对其传输速度的影响的评测与分析
近日入手一个Buffalo LS-XL单盘位NAS, 对其速度作了一番测试, 发现如果以太网帧大小(Ethernet Frame size, 有的场合又称巨型帧, Jumbo Frame)设置得不好, 会对其速度造成巨大的影响, 可能会导致速度变得非常慢. 在本文中, 所讨论的传输速度仅指局域网的拷贝速度, 并且特指Windows共享方式的拷贝(CIFS或SMB/Samba), 而非BT下载等功能的速度. 单位全部用Byte/s(Bps, 字节每秒), 而不是bit/s(bps, 比特每秒).
我的测试环境是Dell 990台式机,内置硬盘有两块,都是7200转硬盘, 经测试,内部盘到内部盘的拷贝速度能达到100MBytes每秒;其网卡有两种, 一种是Inter EXPI9404PTL服务器级四口千兆网卡, 另外一种是板载的Intel 82578千兆网卡。Intel服务器网卡在设置巨型帧时,只有3个选项:禁用(默认以太网帧应该是1526字节吧),4088字节和9014字节。
NAS是巴法洛(也有译作巴比禄的)Buffalo LS-XL/E-CH单槽位硬盘盒, 装载的是西数WD30EZRS 3TB WD绿盘. 这个NAS在设置巨型帧时,有4个选项:1518字节,4102字节,7422字节,9694字节, 但不知这里指的是以太网帧还是IP帧的大小, 这二者之间往往差40~52个字节。我猜测其中1518,4102,9694应该与Intel网卡中的选项1500,4088,9014指的是一回事的,只不过不同厂家的计算方法或表达方式不同罢了, 例如它们指的分别是IP数据包的尺寸和以太网数据帧的尺寸。
网络交换机(交换式集线器)有两种, 一个是Dlink DGS-1224T千兆可管理型网络交换机, 一个是最早期的Dlink 1008千兆非网管型网络交换机, 一个是Dlink DGS-1224T千兆可管理型网络交换机, 有打开或关闭巨型帧(Jumbo Frame)的选项.
复制的文件都是720P的电影文件, 因此基本上是一个4GB的视频文件配1~3个几十KB的字幕文件的组合. 复制的方向是从计算机内置硬盘读数据, 向NAS写数据, 也就是测试NAS的写入性能. 复制的工具是FastCopy, 每次测试基本上只持续5分钟, 谈不上全盘全程测试. 不过后来我将这个NAS拷满3TB数据的时候观察到, 即便是NAS容量接近饱满的时候, 其速度也是与最初始时基本相同的, 毕竟再慢的硬盘, 其速度也比Buffalo LS-XL NAS的CPU吞吐量快很多. 至于说NAS的读取性能, 粗测了一下, 基本比写入性能高50%左右, 也就是说最好情况下每秒四十几兆字节的样子. 下面是测试的结果,按照管理型交换机开启Jumbo Frame支持,关闭Jumbo Frame支持,非网管交换机三种情况来测试各种组合, 有些组合没有测试,因为方向性的结果是明显的,下列表格中灰色部分是测试结果:
另外我又用群辉Synology DS112, DS213j和Akitio Cloud Hybrid (云金刚) 做了类似的测试,没有那么细致,得到的结果差不多,所有NAS的帧比计算机的帧大时,性能都会下降,只不过没有象Buffalo LS-XL那么离谱。
结论:
1, Buffalo LS-XL NAS在NAS和计算机的网络配置都是默认设置的情况下,写入速度为26MBps,我们称之为标准写入速度;
2, Buffalo LS-XL的最快写入速度是31MBps,这是在计算机Jumbo Frame = 9014字节,NAS帧7422字节,交换机支持巨型帧的情况下得到的,比起标准速度有20%的增幅;
3,NAS的帧一定要小于或等于计算机的帧,否则会造成性能的严重下降(至少Intel网卡是如此的), 在Buffalo LS-XL上, 最坏情况下, 能导致速度低于600K字节每秒,比标准速度降低了98%, 可以说极慢;
4,在群晖NAS(DS112和DS213j)上, Jumbo Frame不匹配的最坏情况下, 也能导致传输速度降低70%以上. 群晖NAS的传输速度详情,请在网络上搜索“DS213j”加“最快”加“优化”,找到本人的另外一篇测试报告进行参考;
5,非网管交换机也并非就不支持Jumbo Frame,至少我的Dlink 1008傻瓜交换机就可以支持4K的Jumbo Frame,而且确实得到了速度提升;但是100Mbps的网络交换机一般都不支持Jumbo Frame。
6,同样是Intel的千兆网卡,服务器级的网卡反而比板载的客户机级网卡要慢5%左右,不过稳定性确实好。我用客户机级网卡连续14个小时拷贝了1.4TB的数据后,居然是网卡死掉了,而NAS却无事;
7,低级的非网管型交换机不见得比高级的网管型交换机慢,在我的测试中甚至还稍快一些;
8,Intel网卡的Jumbo Frame选项,是在网卡的硬件设置,高级选项中找到的。如果你装的驱动程序版本不准确,就不会有这个选项,或者Jumbo Frame的可选值更少;
9,在另外一台DELL计算机中,板载的是Boradcom的千兆网卡,也许是我装的驱动不适当,在网卡硬件设置中没有找到Jumbo Frame的选项。不过在实际使用中感觉它是开启了Jumbo Frame支持的, 因为即便我将NAS的Jumbo Frame设定为9K,它们之间的传输速度也比较快;
10,Jumbo Frame和MTU貌似是一回事,实则不然. 本人在另外一个测试中, 对两者在网络连通性的影响做了一些比较, 有兴趣者可以在网上搜索关键字“Jumbo Frame”加“MTU”加“连通性”,找到那次测试的总结文章,进行参考。
总之, 出于兼容性考虑,最好还是将NAS的Jumbo Frame(巨型帧)关闭,因为你无法控制网络中所有的设备。即便你能修改所有Windows计算机的Jumbo Frame,你也无法修改手机,网络播放器等设备的Jumbo Frame,Linux或FreeBSD等操作系统中修改Jumbo Frame配置也不太容易。尽管这带来了20%的速度损失,不过总的来说还是可以接受的。
原文地址:百度搜索
NAS的巨型帧(Jumbo Frame)设置
对其传输速度的影响的评测与分析
近日入手一个Buffalo LS-XL单盘位NAS, 对其速度作了一番测试, 发现如果以太网帧大小(Ethernet Frame size, 有的场合又称巨型帧, Jumbo Frame)设置得不好, 会对其速度造成巨大的影响, 可能会导致速度变得非常慢. 在本文中, 所讨论的传输速度仅指局域网的拷贝速度, 并且特指Windows共享方式的拷贝(CIFS或SMB/Samba), 而非BT下载等功能的速度. 单位全部用Byte/s(Bps, 字节每秒), 而不是bit/s(bps, 比特每秒).
我的测试环境是Dell 990台式机,内置硬盘有两块,都是7200转硬盘, 经测试,内部盘到内部盘的拷贝速度能达到100MBytes每秒;其网卡有两种, 一种是Inter EXPI9404PTL服务器级四口千兆网卡, 另外一种是板载的Intel 82578千兆网卡。Intel服务器网卡在设置巨型帧时,只有3个选项:禁用(默认以太网帧应该是1526字节吧),4088字节和9014字节。
NAS是巴法洛(也有译作巴比禄的)Buffalo LS-XL/E-CH单槽位硬盘盒, 装载的是西数WD30EZRS 3TB WD绿盘. 这个NAS在设置巨型帧时,有4个选项:1518字节,4102字节,7422字节,9694字节, 但不知这里指的是以太网帧还是IP帧的大小, 这二者之间往往差40~52个字节。我猜测其中1518,4102,9694应该与Intel网卡中的选项1500,4088,9014指的是一回事的,只不过不同厂家的计算方法或表达方式不同罢了, 例如它们指的分别是IP数据包的尺寸和以太网数据帧的尺寸。
网络交换机(交换式集线器)有两种, 一个是Dlink DGS-1224T千兆可管理型网络交换机, 一个是最早期的Dlink 1008千兆非网管型网络交换机, 一个是Dlink DGS-1224T千兆可管理型网络交换机, 有打开或关闭巨型帧(Jumbo Frame)的选项.
复制的文件都是720P的电影文件, 因此基本上是一个4GB的视频文件配1~3个几十KB的字幕文件的组合. 复制的方向是从计算机内置硬盘读数据, 向NAS写数据, 也就是测试NAS的写入性能. 复制的工具是FastCopy, 每次测试基本上只持续5分钟, 谈不上全盘全程测试. 不过后来我将这个NAS拷满3TB数据的时候观察到, 即便是NAS容量接近饱满的时候, 其速度也是与最初始时基本相同的, 毕竟再慢的硬盘, 其速度也比Buffalo LS-XL NAS的CPU吞吐量快很多. 至于说NAS的读取性能, 粗测了一下, 基本比写入性能高50%左右, 也就是说最好情况下每秒四十几兆字节的样子. 下面是测试的结果,按照管理型交换机开启Jumbo Frame支持,关闭Jumbo Frame支持,非网管交换机三种情况来测试各种组合, 有些组合没有测试,因为方向性的结果是明显的,下列表格中灰色部分是测试结果:
另外我又用群辉Synology DS112, DS213j和Akitio Cloud Hybrid (云金刚) 做了类似的测试,没有那么细致,得到的结果差不多,所有NAS的帧比计算机的帧大时,性能都会下降,只不过没有象Buffalo LS-XL那么离谱。
结论:
1, Buffalo LS-XL NAS在NAS和计算机的网络配置都是默认设置的情况下,写入速度为26MBps,我们称之为标准写入速度;
2, Buffalo LS-XL的最快写入速度是31MBps,这是在计算机Jumbo Frame = 9014字节,NAS帧7422字节,交换机支持巨型帧的情况下得到的,比起标准速度有20%的增幅;
3,NAS的帧一定要小于或等于计算机的帧,否则会造成性能的严重下降(至少Intel网卡是如此的), 在Buffalo LS-XL上, 最坏情况下, 能导致速度低于600K字节每秒,比标准速度降低了98%, 可以说极慢;
4,在群晖NAS(DS112和DS213j)上, Jumbo Frame不匹配的最坏情况下, 也能导致传输速度降低70%以上. 群晖NAS的传输速度详情,请在网络上搜索“DS213j”加“最快”加“优化”,找到本人的另外一篇测试报告进行参考;
5,非网管交换机也并非就不支持Jumbo Frame,至少我的Dlink 1008傻瓜交换机就可以支持4K的Jumbo Frame,而且确实得到了速度提升;但是100Mbps的网络交换机一般都不支持Jumbo Frame。
6,同样是Intel的千兆网卡,服务器级的网卡反而比板载的客户机级网卡要慢5%左右,不过稳定性确实好。我用客户机级网卡连续14个小时拷贝了1.4TB的数据后,居然是网卡死掉了,而NAS却无事;
7,低级的非网管型交换机不见得比高级的网管型交换机慢,在我的测试中甚至还稍快一些;
8,Intel网卡的Jumbo Frame选项,是在网卡的硬件设置,高级选项中找到的。如果你装的驱动程序版本不准确,就不会有这个选项,或者Jumbo Frame的可选值更少;
9,在另外一台DELL计算机中,板载的是Boradcom的千兆网卡,也许是我装的驱动不适当,在网卡硬件设置中没有找到Jumbo Frame的选项。不过在实际使用中感觉它是开启了Jumbo Frame支持的, 因为即便我将NAS的Jumbo Frame设定为9K,它们之间的传输速度也比较快;
10,Jumbo Frame和MTU貌似是一回事,实则不然. 本人在另外一个测试中, 对两者在网络连通性的影响做了一些比较, 有兴趣者可以在网上搜索关键字“Jumbo Frame”加“MTU”加“连通性”,找到那次测试的总结文章,进行参考。
总之, 出于兼容性考虑,最好还是将NAS的Jumbo Frame(巨型帧)关闭,因为你无法控制网络中所有的设备。即便你能修改所有Windows计算机的Jumbo Frame,你也无法修改手机,网络播放器等设备的Jumbo Frame,Linux或FreeBSD等操作系统中修改Jumbo Frame配置也不太容易。尽管这带来了20%的速度损失,不过总的来说还是可以接受的。