设为首页 收藏本站
查看: 1063|回复: 0

[经验分享] HP NIC Teaming技术探讨

[复制链接]

尚未签到

发表于 2015-10-6 11:27:48 | 显示全部楼层 |阅读模式
NIC Teaming技术将2个或更多个网卡(HP NIC Teaming最多可达8个)捆绑在一起使用,以达到增加总的带宽(Load Balance,负载均衡)或者线路容错(Fault Tolerance)的目的。由2个或多个网卡组成一个逻辑网络端口Teamport,IP地址和网络设置绑定在这个逻辑的Teamport上,这样,无论哪一个物理网卡或者其相连的链路单独出现故障,Teamport还是能正常工作,服务器对外的网络连接不会中断。

为了方便说明,除非特别说明,本文以下部分的例子中将2个或多个网卡一律写成2个网卡,示意图也只画2个网卡。

HP服务器的NIC Teaming分三大类共7个选项,这三大类是指NFT、TLB和SLB。(7个选项后文会说明)

【NFT】
NFT 就是Network Fault Tolerant的缩写,这种模式下一个网卡处于活动(Active)状态,而另外一个网卡处于待机(standby)状态,平时只有一个网卡在用。NFT模式下,组成Teamport的2个1Gb的网卡分别连到2个不同的交换机,Teamport总带宽只有1Gb,这种模式具有容错能力,但是不具有增加带宽和负载均衡的能力。  

DSC0000.gif   

【TLB】
TLB就是Transmit Load Balance,从字面上理解,就是传出(Tx)的负载均衡,也就是说,从服务器向外部发送的数据包,根据一定的规则,分别从Teamport中的2个网卡传出去,但是这种方式,不能保证接受(Rx)的数据包也同样能够负载均衡。简单的说,TLB可以做到网络容错,Teamport的Tx是2Gb带宽,Rx还是只有1Gb(除非有另外的方法来做负载均衡)  
DSC0001.gif    

【SLB】
SLB是Switch-assist Load Balance,顾名思义,交换机协助的负载均衡,就是需要在交换机上进行相应的配置以后才能实现。SLB Team中的2个网卡必须连接到同一个交换机,这2个网卡到同一交换机的2个端口之间的链路就合并组成一个通道,这个通道Cisco交换机术语叫Etherchannel,其他厂商的交换机则常称这个为Port Trunk。这种组成联合通道的方式也称之为静态的链路聚合(SLA, Static Link Aggregation)。SLB方式的Teamport是双向2Gb,Tx和Rx的数据流都可以做到负载均衡,但是它只能保证网卡的容错,做不到交换机的容错。  
DSC0002.gif   


注意(1):应用SLB时还要特别注意SLB的负载均衡实现方式和对端交换机的限制。一般而言,很多厂商的交换机,都要求同一个聚合链路中的每个端口都必须是一致的,例如千兆端口不能和百兆端口聚合,百兆全双工的端口不能和百兆半双工的端口聚合。
注意(2): 不同厂商的负载均衡的算法有所不同,比如某些型号的Cisco交换机的Etherchannel是Layer 2的,有3种Load Balancing方式:基于源MAC,基于目的MAC和XOR方式;而其他的一些型号或者有些其他厂商的还可以根据源IP,IP Hash或者TCP Session的方式。如要继续深入研究并理解这些算法的优劣,请参考相关交换机厂商的文档。
(关于不同型号思科交换机的Etherchannel的异同和负载均衡的算法,请参考:
http://www.cisco.com/en/US/tech/tk389/tk213/technologies_tech_note09186a0080094714.shtml

【NFT/TLB/SLB比较】
这三种方式的比较如下:
NFTTLBSLB
网卡容错支持支持支持
交换机容错支持支持不支持
Tx负载均衡不支持支持支持
Rx负载均衡不支持不支持支持



【HP的NIC Teaming】
HP Proliant系列服务器的NIC Teaming是通过其PSP(Proliant Support Pack)中的NCU (Network Configuration Utility)来实现的。双击右下Systray中的HP网络工具的小图标,就能打开NCU配置界面。

从下面的截图我们可以看见,HP Network Team #1是一个Teamport,它由2个HP NC7782千兆端口组成。Teamport左边的绿色图标说明它目前工作正常。端口1是实线,说明其处于Active状态,端口2有一部分虚灰的颜色,表明这个链路是Standby的。

点击Teamport,然后点Property按钮,就可以打开Teamport的属性配置界面,在这里,我们可以选择HP NIC Teaming的类型。  

DSC0003.gif

从图中我们可以看到,HP的Team类型有7个选择,分别是



  • Automatic (Recommended)
  • 802.3ad Dynamic with Fault Tolerance
  • Switch-assisted Load Balancing with Fault Tolerance (SLB)
  • Transmit Load Balancing with Fault Tolerance (TLB)
  • Transmit Load Balancing with Fault Tolerance and Preference Order
  • Network Fault Tolerance Only (NFT)
  • Network Fault Tolerance with Preference Order


我们发现上面这些选择中毫无例外的都注明了Fault Tolerance,这恰恰说明了NIC Teaming的最重要的目的:容错

这其中的SLB, TLB, NFT前文已经介绍过了。这里再解释下其他几个。

【NFT with PO和TLB with PO】
Preference Order就是指一种优先顺序,这种顺序往往是根据链路类型、速率等方式决定的。

NFT with Preference Order就是带有优先顺序的NFT。举例说明,比如一台NFT的Teamport是由一个千兆的Port A和一个百兆的Port B组成的,则Port A由于传输速率快,优于Port B,所以Port A会成为Active,而Port B则为Standby。TLB with Preference Order同理,通常用于将不同速率端口绑定在一起的情况下。

【802.3ad Dynamic】
和SLB类似,802.3ad Dynamic 方式也是到同一台交换机的链路聚合,只不过不是静态配置的,而是动态构成(也就是自动协商)的。它是通过一种智能的链路协商协议LACP (Link Aggregation Control Protocol)来实现的。LACP原本用于交换机和交换机之间的链路聚合,启用了LACP协议的2台交换机会相互发送LACP的协商报文,当发现2者之间有多条可用的链路的时候,自动将这些链路组合成一条带宽更大的逻辑链路,从而利用负载均衡来实现加宽交换机间链路带宽的目的。HP的NIC Teaming也支持动态链路聚合,可以实现在HP服务器和支持802.3ad 动态LACP的交换机之间自动创建聚合链路。


【Automatic】
Automatic (Recommended) 其实不是一种单独的模式,当选择Automatic的时候,会判断Team中的这些port是不是连接到同一个支持802.3ad Dynamic LACP协议的交换机,如果是,则选择802.3ad Dynamic方式;如果不是,则使用TLB方式。

如想继续深入HP的NIC Teaming技术,比如研究Load Balancing算法、检测链路失败的方法和链路恢复等,请阅读
HP NIC Teaming White Paper (英文) 。

【参考文档】
(1)
HP NIC Teaming White Paper (英文)
http://h20000.www2.hp.com/bc/docs/support/SupportManual/c01415139/c01415139.pdf

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-123302-1-1.html 上篇帖子: 高性能 Windows Socket 组件 HP-Socket 下篇帖子: 在HP-UX上部署oracle客户端
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表