文|沈建苗
链路聚合是指将两条或多条物理以太网链路聚合成一条逻辑链路。所以,如果聚合两个1Gb/s端口,就能获得2GB/s的总聚合带宽(图1)。聚合带宽和物理带宽并不完全相同,它是通过一种负载均衡方式来实现的。在用户需要高性能局域网性能的时候很有帮助,而局域网内如果有NAS则更是如此。比如说我们在原本千兆(1Gb/ s)网络下PC和NAS之间的数据传输速度只能达到100MB/s左右,在链路聚合的方式下多任务传输速度可以突破200MB/s,这其实是一个倍增。
链路聚合原本只是一种弹性网络,而不是改变了总的可用吞吐量。比如说如果你通过一条2Gb聚合链路将文件从一台PC传输到另一台PC,就会发现总的传输速率最高为1Gb/s。然而如果开始传输两个文件,会看到聚合带宽带来的好处。简而言之,链路聚合增加了带宽,但并不提升最高速度,但如果你在使用有多个以太网端口的NAS,NAS就能支持链路聚合,速度的提升是显而易见的。
目前家用的局域网环境不论是线缆还是网卡多数都停留在1Gb/s的水平,如果你想要真正的更高吞吐量改用更高的带宽比如10Gb/s网卡,但对于大多数家庭用户万兆网卡是不太可能的。就算我们使用普通单千兆网卡主板,通过安装外接网卡来增添一个网络端口就能实现效果。
首先你的PC要有两个以太网端口,想要连接的任何设备同样要有至少两个端口。除了双千兆(或一集成一独立)网卡的主板外,还需要一个支持链路聚合(LACP或802.1ad等)的路由器。遗憾的是很多家用路由器不支持链路聚合,选择时要注意路由器的具体参数,或者干脆选择一个支持链路聚合的交换机。
除了硬件方面的要求,还需要一款支持链路聚合的操作系统。我们目前广泛使用的Windows 7并没有内置的链路聚合功能,一般微软要求我们使用Windows Server,但其实Windows 8.1和Windows 10已经提供支持了。其实如果操作系统不支持,可以考虑使用厂商提供的具有链路聚合功能的驱动程序,比如英特尔PROSet工具。另外,操作系统Linux和OS X都有内置的链路聚合功能。
链路聚合网络配置
首先在测试中我们选用了一块双端口网卡,实际上如果用户的主板拥有双网卡可以省略这一步。由于部分品牌之间的独立网卡和普通主板中的单网卡可能会有一些网络之间的不兼容,如果想避免麻烦,可以直接选用这类双接口网卡。
之后就是设置交换机了,如果我们拥有一个支持链路聚合的路由器,直接去设置路由器即可。支持的标志是设备拥有管理功能,允许我们可以绑定单个端口。网件ProSafe XS708E随带的一个实用工具允许绑定特定端口,界面具体取决于使用什么样的路由器或者交换机。比如网件R8500以上级别的路由器自带链路聚合功能,界面采用WEB方式管理,链路汇聚的设置可以说是相当方便(图2、图3)。
链路聚合设置时分为静态和动态,分别是Static和LACP,简单解释,静态聚合就是由用户手工配置,不允许系统自动添加或删除汇聚成员中的端口。而动态聚合系统自动创建或删除,成员内端口的添加和删除是协议自动完成的。只要速率和双工属性相同、连接到同一个设备、有相同基本配置的端口,就能被动态汇聚在一起,之前我们说过尽量选用同一种网卡就是为了动态聚合的。
如果在Windows中设置,要注意家用版本只有从Windows 8.1开始到目前的Windows 10才支持网卡绑定功能,或者服务器版本Windows Server。以Windows 10专业版为例,在搜索中输入PowerShell,右键用管理员权限启动,打开一个DOS界面,使用“GetBetAdapter”命令找到我们的网卡(图4),用“New-NetLbfoTeam”命令创建网卡组。不使用交换机完整的命令行(图5)是“New-NetLbfoTeam (自填网卡组名称)-teamingMode Switc hIn dependent”,而使用有链路聚合功能交换机时后缀要改为“-teaming M o de S tatic”或者“-teamingMode LACP”。确定之后根据系统提示输入两个网口的名称,在网络界面就可以看到创建的网卡组了(图6)。
Windows Server的设置方法完全不同,以Windows Ser ver 2012 R2为例,打开服务器管理器单击上面的本地服务器,会看到一个名为“网卡绑定”NIC Teaming的选项(图7)。点击“禁用”选项你会看到绑定配置器,两个网卡接口都已显示在适配器和接口下面(图8)。现在选择这两个接口,右键选择绑定新接口,在弹出的窗口中你会看到一个字段,为新的逻辑接口命名,单击确定(图9)。为了获得最大的兼容性,选择绑定模式Teaming Mode下面的“与交换机无关”(Switch Independent)。一旦完成这步,在网络界面会看到刚命名的由两个物理接口组成的逻辑接口。如果一切正常,你的两路物理连接都会显示活动状态,你可以在下面看到传输细节。可以说Windows Server版本就是家用Windows中没有的图形窗口界面方式,比起家用版本的操作要直观得多(图10)。
在OS X中设置链路聚合要简单一点,不需要特殊工具或第三方驱动程序,功能被很好地内置到默认的网络偏好设置中。打开系统偏好设置进入网络选项,点击设置齿轮图标选择管理虚拟接口(Manage Virtual Interfaces)(图11),选择新建链路聚合(New Link Aggregate)(图12)。在弹出的物理接口列表中选择想要绑定的那些接口,勾选后命名并创建(图13)。
如果一切顺利,绑定的两个或多个物理接口会从网络接口列表中消失,取而代之的是刚创建的那个逻辑绑定接口,如果指示灯变绿色表明已成功(图14)。想看连接性能如何可以选择那个逻辑接口,单击高级就能看到其状态,还可以配置其他选项,比如IP地址和DNS等(图15)。
可以看出,只要前期工作做好,不论是在交换机路由器、Windows或者OS X中设置网卡链路聚合都不算难。文中还有几个细节没有提及,首先是线缆尽量选用CAT 6以上的六类线,这样才能充分发挥每一路1Gb/s的带宽。不过在网卡链路聚合系统当中,单个传输任务的速度是如论如何也无法超过1Gb/s带宽的,转换为兆就是125MB/s左右。真正发挥链路聚合功能的场合是多任务同时运行,这样两条1Gb/s带宽才会同时工作(图16)。