网卡绑定和负载均衡
多网卡绑定构建负载均衡服务器
1 引 言
随 着 信 息 技 术 的 快 速 发 展 , 来 越 多 的 电脑 用 户 不 再 满 足 于 越
当 前 的 网络 速 度 。特 别 是 一 些 涉 及 局 域 网应 用 的 用 户 , 中 小 型 如
打 开 服务 器 机 箱 , 两 块 网 卡安 装 在 主板 P 插 槽 上 。如 果 把 CI
维普资讯
网 络 技 术
责 编 姚 翌 任 辑:
多 网卡绑定构 建 负载 均衡 服务器
张 延 红 王 康 平 程 国斌
( 1平顶 山工 学院 河 南平顶 山 4 7 0 ) 6 0 1
( 平顶 山学 院 河 南平顶 山 4 70 ) 2 60 1
E me 和 AS Te / o d o 4 0 0 1 0 Itga d Co tolr  ̄e t US k Br ̄ c m 4 x 1/ 0 ne re nr l 。 t e
性” 的“ 备管理器 ”如果两块 网卡有硬件 冲突 , 会在 “ 中 设 , 就 网络 适配器” 的位 置 出现 一 个 醒 目的惊 叹号 。 击 带 有 惊 叹 号 的 网 卡 , 双 切 换 到 “ 源 ” 项 卡 , 里 可 以看 到 究 竟 是 哪 些 参 数 产 生 的硬 件 资 选 这 冲突, 以及 是 跟 哪 些 设 备 发 生 的冲 突 。 在 , 要 做 的 是 将 “ 现 您 先 使 用 自动 设 置 ” 选 框 里 的小 勾 消 去 , 后 再 双 击 有 红 色 标 志 的 参 复 然 数 , 对 它 的 数 值 进 行 强 制 指 定 , 到 “ 突 设 备 列 表 ” 口中 出 并 直 冲 窗 现“ 有 冲突” 提示为止 。 没 的
【 摘 要 】文 章 论 述 了利 用 NI x rs E trre网卡 绑 定 功 能进 行 双 网卡 绑 定 构 建 负栽 均衡 服 务 器 的 具 体 方 法 和 步 C E pes ne i ps
双网卡绑定实现就是使用两块网卡虚拟成为一块网卡
双网卡绑定实现就是使用两块网卡虚拟成为一块网卡,这个聚合起来的设备看起来是一个单独的以太网接口设备,通俗点讲就是两块网卡具有相同的IP地址而并行链接聚合成一个逻辑链路工作。
根据交换机可支持的功能不通,最常见的是设定为主备方式的双网卡绑定。
一、操作步骤这里以绑定两个网卡为示例描述。
配置文件都在/etc/sysconfig/network-scripts/目录下。
1、编辑新的ifcfg-bond0文件增加如下内容:引用# cat /etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0IPADDR=192.168.1.155NETMASK=255.255.255.0ONBOOT=yesBOOTPROTO=noneUSERCTL=no这是最后bond0设备的实际IP设置。
2、分别编辑ifcfg-eth0和ifcfg-eth1文件引用# cat /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0USERCTL=noONBOOT=yesMASTER=bond0SLAVE=yesBOOTPROTO=none# cat /etc/sysconfig/network-scripts/ifcfg-eth1DEVICE=eth1USERCTL=noONBOOT=yesMASTER=bond0SLAVE=yesBOOTPROTO=none3、修改/etc/modules.conf文件# vi /etc/modules.conf添加如下内容:引用alias bond0 bondingoptions bond0 miimon=100 mode=1说明:引用miimon是用来进行链路监测的。
比如:miimon=100,那么系统每100ms监测一次链路连接状态,如果有一条线路不通就转入另一条线路;mode的值表示工作模式,他共有0,1,2,3四种模式,常用的为0,1两种。
centos系统多网卡的负载均衡设置
Centos多网卡负载均衡配置方法:1、查看bonding模块是否加载lsmod | grep bondingbonding 136705 0如果没有加载,手动先加载modprobe bonding2、三种绑定模式:① mode=0:平衡负载模式,有自动备援,但需要交换机支持及设定,两个交换机端口需要做聚合,该模式下bond所绑定的网卡的IP都被修改成相同的mac地址,交换机做了聚合后,聚合下的几个端口也被捆绑成一个mac地址。
②mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。
③mode=6:平衡负载模式,有自动备援,不用交换机支持,绑定的是不同的MAC地址。
所以一定要根据自己的网络环境和实际的硬件设备,来选择其中一种绑定的模式,选择错误就会不生效哦!3、绑定完成后,就要进行以下网卡配置:1)新建或者修改虚拟网卡:vi /etc/sysconfig/network-scxxxxripts/ifcfg-bond0DEVICE=bond0IPADDR=192.168.0.193NETMASK=255.255.255.0BOOTPROTO=staticONBOOT=yesGATEWAY=192.168.0.12)修改需要加入负载均衡的网卡vi /etc/sysconfig/network-scxxxxripts/ifcfg-eth1DEVICE=eth0BOOTPROTO=noneONBOOT=yesMASTER=bond0SLAVE=yesvi /etc/sysconfig/network-scxxxxripts/ifcfg-eth2DEVICE=eth1BOOTPROTO=noneONBOOT=yesMASTER=bond0SLAVE=yes4、新增或修改虚拟网卡类型配置(一定要结合实际环境选择mode的模式)vi /etc/modprobe.confalias bond0 bondingoptions bonding miimon=100 mode=65、以上配置修改完成后执行reboot重启即可。
Ubuntu12.04下实现双网卡一IP负载均衡
Ubuntu12.04下实现双⽹卡⼀IP负载均衡Ubuntu 12.04下实现双⽹卡负载均衡什么是bondingLinux bonding 驱动提供了⼀个把多个⽹络接⼝设备捆绑为单个的⽹络接⼝设置来使⽤,⽤于⽹络负载均衡及⽹络冗余。
bonding的⼯作模式bonding⼀共有7种⼯作模式0:(balance-rr) Round-robin policy: (平衡轮询策略):传输数据包顺序是依次传输,直到最后⼀个传输完毕,此模式提供负载平衡和容错能⼒。
1:(active-backup) Active-backup policy:(活动备份策略):只有⼀个设备处于活动状态。
⼀个宕掉另⼀个马上由备份转换为主设备。
mac地址是外部可见得。
此模式提供了容错能⼒。
2:(balance-xor) XOR policy:(平衡策略):传输根据[(源MAC地址xor⽬标MAC地址)mod 设备数量]的布尔值选择传输设备。
此模式提供负载平衡和容错能⼒。
3:(broadcast) Broadcast policy:(⼴播策略):将所有数据包传输给所有设备。
此模式提供了容错能⼒。
4:(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 动态链接聚合:创建共享相同的速度和双⼯设置的聚合组。
此模式提供了容错能⼒。
每个设备需要基于驱动的重新获取速度和全双⼯⽀持;如果使⽤交换机,交换机也需启⽤802.3ad 模式。
5:(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡):通道绑定不需要专⽤的交换机⽀持。
发出的流量根据当前负载分给每⼀个设备。
由当前设备处理接收,如果接受的设备传不通就⽤另⼀个设备接管当前设备正在处理的mac地址。
6:(balance-alb) Adaptive load balancing: (适配器负载均衡):包括mode5,由 ARP 协商完成接收的负载。
在linu下双网卡负载均衡(lacp)
(一)linux 配置#cat/boot/config-kernel-version |grep -ibondingCONFIG_BONDING=m返回CONFIG_BONDING表示支持,否则需要编译内核使它支持bonding 也可以用:查看一下内核是否已经支持bonding :modinfo bonding第一步:创建一个ifcfg-bondX# touch/etc/sysconfig/network-scripts/ifcfg-bond0 新建一个bond0配置文件# cat/etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0BOOTPROTO=staticIPADDR=1.1.1.2NETMASK=255.255.255.0BROADCAST=1.1.1.255NETWORK=1.1.1.0GATEWAY=1.1.1.1ONBOOT=yesTYPE=Ethernet 编辑ifcfg-bond0 如上第二步:修改/etc/sysconfig/network-scripts/ifcfg-ethX 这个实验中把网卡 1 和 2 绑定,修改/etc/sysconfig/network-scripts/ifcfg-ethX 相应网卡配置如下:# cat/etc/sysconfig/network-scripts/ifcfg-eth1TYPE=EthernetDEVICE=eth1HWADDR=00:d0:f8:40:f1:a0 网卡1macBOOTPROTO=noneONBOOT=yesUSERCTL=no MASTER=bond0SLAVE=yes# cat /etc/sysconfig/network-scripts/ifcfg-eth2 TYPE=Ethernet DEVICE=eth2 HWADDR=00:d0:f8:00:0c:0c 网卡2mac BOOTPROTO=none ONBOOT=yesUSERCTL=no MASTER=bond0SLAVE=yes-r lacp 只要再加上下面两条配置 绑定 mode=4 是 lacp第三步: 配置/etc/modprobe.conf ,添加 alias bondO bonding# cat /etc/modprobe.conf alias ethO e1OO alias snd-card-O snd-intel8xOoptions snd-card-O index=O options snd-intel8xO index=O remove snd-intel8xO { /usr/sbin/alsactl store O >/dev/null 2>&1 || : ; }; /sbin/modprobe --ignore-remove snd-intel8xOalias eth1 8139too options 3c5O1 irq=3 alias eth2 tulip 上面是三网卡本身的配置如果要绑定和做 alias bondO bondingoptions bondO miimon=1OO mode=4第四步:配置 /etc/rc.d/rc.local ,添加需要绑定的网卡# cat /etc/rc.d/rc.localtouch /var/lock/subsys/local 配置本身就有这条命令ifenslave bondO eth1 eth2 这条命令是添加需要绑定的网卡 1 和 2到这里就完成 bonding 的配置了可以查看一下 第五步:重启网络服务和重启 pc#service network restart重启网络服务# shutdown -r now重启 pc重启后可以查看 bonding 情况:网卡 1 和 2 都绑定上了,模式为 8O2.3ad# cat /proc/net/bonding/bondOEthernet Channel Bonding Driver: v3.O.3 (March 23, 2OO6) Bonding Mode: IEEE 8O2.3ad Dynamic link aggregation Transmit Hash Policy: layer2 (O) MII Status: upMII Polling Interval (ms): 1OO Up Delay (ms): O Down Delay (ms): O8O2.3ad info LACP rate: slowActive Aggregator Info:Aggregator ID: 1 Number of ports: 2 Actor Key: 9 Partner Key: 1Partner Mac Address: 00:d0:f8:22:33:ba Slave Interface: eth1 MII Status: up Link Failure Count: 0Permanent HW addr: 00:d0:f8:40:f1:a0 Aggregator ID: 1 Slave Interface: eth2 MII Status: upLink Failure Count: 0Permanent HW addr: 00:d0:f8:00:0c:0cAggregator ID: 1接口配置信息:新增了bond0的配置信息,接口bondO和ethl , eth2,绑定后三个接口使用的mac 都是同一个:00:D0:F8:40:F1:A0# ifconfigbondO Link encap:Ethernet HWaddr OO:DO:F8:4O:F1:AOinet addr:1.1.1.2 Bcast:1.1.1.255 Mask:255.255.255.Oinet6 addr: fe8O::2dO:f8ff:fe4O:f1aO/64 Scope:LinkUP BROADCAST RUNNING MASTER MULTICASTMTU:15OO Metric:1RX packets:128 errors:O dropped:O overruns:O frame:OTX packets:259 errors:O dropped:O overruns:O carrier:Ocollisions:O txqueuelen:ORX bytes:15466 (15.1 KiB) TX bytes:39679 (38.7 KiB)ethO Link encap:Ethernet HWaddr OO:11:11:EB:71:E2inet addr:192.168.18O.8 Bcast:192.168.18O.15 Mask:255.255.255.24Oinet6 addr: fe8O::211:11ff:feeb:71e2/64 Scope:LinkUP BROADCAST RUNNING MULTICASTMTU:15OO Metric:1RX packets:311 errors:O dropped:O overruns:O frame:OTX packets:228 errors:O dropped:O overruns:O carrier:Ocollisions:O txqueuelen:1OOORX bytes:3O565 (29.8 KiB) TX bytes:35958 (35.1 KiB)eth1 Link encap:Ethernet HWaddr OO:DO:F8:4O:F1:AOinet6 addr: fe8O::2dO:f8ff:fe4O:f1aO/64 Scope:LinkUP BROADCAST RUNNING SLAVE MULTICASMTTU: 1 5OO Metric:1RX packets:54 errors:O dropped:O overruns:O frame:OTX packets:97 errors:O dropped:O overruns:O carrier:Ocollisions:O txqueuelen:1OOORX bytes:6696 (6.5 KiB) TX bytes:13821 (13.4 KiB)Interrupt:2O9 Base address:Ox2eOOeth2 Link encap:Ethernet HWaddr OO:DO:F8:4O:F1:AO inet6 addr: fe8O::2dO:f8ff:fe4O:f1aO/64 Scope:LinkUP BROADCAST RUNNING SLAVE MULTICASMTTU: 1 5OO Metric:1RX packets:74 errors:O dropped:O overruns:O frame:OTX packets:162 errors:O dropped:O overruns:O carrier:Ocollisions:O txqueuelen:1OOOlacp system-priority 100 interface GigabitEthernet 0/23 no switchport lacp port-priority 100 port-group 1 mode active interface GigabitEthernet 0/24 no switchport lacp port-priority 100 port-group 1 mode active interface AggregatePort 1 全局配置lacp 优先级接口的lacp 优先级接口下开启lacp 主动模式RX bytes:8770 (8.5 KiB) TX bytes:25858 (25.2 KiB) Interrupt:201 Base address:0x2f00 lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACKRUNNING MTU:16436 Metric:1RX packets:6283 errors:0 dropped:0 overruns:0 frame:0TX packets:6283 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0RX bytes:9783674 (9.3 MiB) TX bytes:9783674 (9.3 MiB)二)锐捷交换机配置:no switchportno ip proxy-arpip address 1.1.1.1 255.255.255.0和linux 成功建立lacp 后状态信息如下:Show lacp summarySystem Id:100, 00d0.f822.33baFlags: S - Device is requesting Slow LACPDUs F - Device is requesting Fast LACPDUs.A - Device is in active mode. P - Device is in passive mode.Aggregate port 1:Local information:Port Flags StateLACP portPriorityOperKeyPortNumberPortStateGi0/23 SA bndl 100 0x1 0x17 0x3d Gi0/24 SA bndl 100 0x1 0x18 0x3d Partner information:PortLACP port OperKeyPortNumberPortState Flags Priority Dev IDGi0/23 SA 255 00d0.f840.f1a0 0x9 0x2 0x3d Gi0/24 SA 255 00d0.f840.f1a0 0x9 0x1 0x3d State 表示状态信息:bndl 表示lacp 建立成功,sup 表示不成功。
Win2000 Server下双网卡绑定技术实现负载均衡和失败接管
衡和失败接管
鱼兆虎 !! 杨戈 " "& (武警上海总队医院 计算机中心 # 上海 !" && ") $!* 武警上海总队医院 信息科 上海 !" && ") % 摘要 "随着医院信息化的快速发展 & 医院管理越来越依靠计算机网络 &保持服务器的高稳定可用性是医院 +, 环境的重要因素 ’ 其中 最重要的一点是服务器网络连接的高可用性 ’ 网卡 "-+. (绑定技术有助于保证高可用性特性并提供其它优势以提高网络性能 ’ 它不仅可 以扩大服务器的网络带宽 & 而且可以有效均衡负载和提高容错能力 & 避免服务器出现传输瓶颈或者因某块网卡故障而停止服务 ’ 本文介 绍的 /0 1!" "" 234534 下双千兆网卡绑定技术就是使用两块网卡虚拟成为一块网卡 & 这个聚合起来的设备看起来是一个单独的以太网接口 设备 &通俗点讲就是两块网卡具有相同的 +6 地址而并行链接聚合成一个逻辑链路工作 ’ 关键词 "双网卡绑定 $负载均衡 $/ 01! """ 2345 34 中图分类号 " #$%&% 文献标识码 "’ 文章编号 "!((&)%(**+"((,-(")!(*!%)(" 78 9:;<=:> &?7@-A A 3 ! B&( C3D ;4EF31E <G . <FD >E34?H:;1IJ;0 .<4D2 J<2D0 E;K?.:01323 63<D K3L 2 @4F3M 6<K0N32 O<4N32?H :;1I:;0 !"& &") ?. :01;P !*+1G<4F;E0<1 H3NE0 <1? H :;1IJ;0 .<4D2 J<2D 0E;K?. :01323 63<DK3L 2 @4F3M 6<K0 N32 O<4N32?H :;1I :;0 !" &&" )?. :0 1;Q ’?H :<05:JR0E: E:3 4;D0 M M 353K<D F31E <G :<2D0 E;KL 2 01G<4F;E0<1?E:3 F;1;I3F31E <G :<2D0 E;K M 3D 31M 2 <1 E:3 13E <1 ; F>N: :0I:34 3SE31E( ,< :<2D0 E;KL +, 31504<1F31E? 0EL 2 ;1 0FD<4E;1E G;NE E< T33D E:3 2E;U0 K0EV <G 234534 ;1M E:3 >2;U 0K0EV <G 2345 34L 2 13E N<113NE0<1 02 E:3 F<2E 0F ! D<4E;1E*,:3 E3N:1<K <IV <G U<1M 01I B-+.Q N;1 :3KD E< 312>43 E:3 >2;U 0K0EV ;1M <GG34 <E:34 ;M 5;1E;I32 E< 0 FD4<53 E:3 N;D;U0K0 EV <G E:3 13E*+E N;1 1<E <1K V /0 M31 E:3 U ;1M/ 0M E:?U>E ;K2< 31:;1N3 W<;M X ;K ;1N0 1I ;1M O;>KE ,<K34;1E @D D4<;N:?;5 <0M U<EEK313NT D4<UK3F <G E:3 2345 34 ;1M 234501I 2E<D D;I3 U3N;>23 <G 2<F3 -+. E4<>UK3* ,:3 W<;M X;K;1N01I ;1M O;>KE ,<K 34;1E @D D4<;N: UV C <>U K3 Y0K<F3I; -+. G<4 R0 1M </ 2! "" "2345 34 01 ! E4<M>N3M 0 1 E:02 D ;D 34 02 E< N<FD <23 E/ < -+. 01E< <13*E:02 N<FD<23M 3Z >0D F31E K <<T2 K 0T3 ; 23D;4;E3 [E:3413E 13E/<4T? 01 ;1<E:34 / <4M ?E:02 E</ -+. :;53 2;F3 +6 ;MM 4322 ;1M N<113NE E< /<4T ;2 ; W<I0 N;K W01T * K;@ G/<1HJ X<1M 01I <G C <>U K3 -+.PW<;M X;K;1N01IPR01M</2!" ""234534 !"# $%& ’ 技术的最早应用是在集群上 ! 为了提高集群节点间的 数据传输而设计的 " 所谓双网卡 ! 就是通过软件将双网 卡绑定为 一个 () 地址 ! 多高档服务器网 卡 #例如 %&*+,- ./ 01 系列 $2 345 服 务器网 卡等 % 都具有多 网卡绑定 功能 ! 可以通过 软硬件设置 将两 块或者多块网卡绑定在同一个 6) 地址上 ! 使用起来就好象在使用 一块网卡 !多网 卡绑定的 优点不少 ! 首先 !可 以增大带 宽 !假 如一 个网 卡的带宽是 788 9 ! 理 论上两 块网卡就 是 :8 89 ! 三块 就是 28 89 ! 当然实际 上的效果是不会是 这样简单的增加的 ! 不过 经实 际测试使用多个网卡对于增加带宽 !保持带宽的稳定性 肯定是有 裨益的 &其次 ! 可以 形成网卡 冗余阵列 $ 分担 负载 ! 双网卡被 绑定 成 ’ 一块网卡 ( 之后 !同 步一起工 作 ! 对服务器的 访问流量被 均衡 分担到 两块网卡 上 !这 样每块网 卡的负载压 力就小多 了 !抗 并发 访问的 能力提高 ! 保证 了服务器 访问的稳定 和畅快 ! 当其中 一块 发生故障的时候 ! 另一块立刻接管全部负载 ! 过程是无缝的 ! 服务 不会中断 ) ;:< 硬件安装 * 为了节约 开支 !我 们本想用一块 6& *?, 的千兆 光 纤网卡来绑定 ! 可是这块网卡和 G Y 原 服务器的网卡 +G B TDU QQ 8 V%’CW%* O?@A?@ NXCB *?@ % 不兼容 ! 装上后用 GY 的 TI JKSLM T63 JI N5O 程序进行双网卡的绑定时服务器死机 ) 后只好重新购买相 同型号的网卡 !打 开机箱 ! 插入网 卡 ! 系统很快 会认出网卡 !装 好 驱动后 !在 ,网络和拔号连接 (中就多了一个本地连接 ) 至此 ! 硬件 部分安装完毕 ) 就这么简单 ) ;P< , 虚拟 网卡 ( 设 定 用惠 普自 带的 GY TI JKSLM T63 JI N5O 程序进行双网卡的绑定 & 选中两块 千兆网卡 ! 按 JIN5 按 钮即完成绑定 ) 用鼠标在桌面 ,网上邻居 (上点击右键选 ,属性 ( 弹 出 ,网络和拨号连接 ( 窗口 !如下图 * ./01 203045647 041 8 093: #/3;<04: ’==</05> ?@ A /9?3; BCD E/< F 641/G H"(((H ;<I;<
网卡绑定全攻略
本文主要讲三种网卡绑定:Linux(Suse Linux为例),windows 2003的intel网卡和Broadcom网卡绑定。
首先简单说说什么是网卡绑定,也称作网卡捆绑。
就是将两个或者更多的物理网卡绑定成一个虚拟网卡,以提供负载均衡或者冗余,增加带宽的作用。
当一个网卡坏掉时,不会影响业务。
一.Linux下的网卡捆绑将/etc/sysconfig/network下的ifcfg-eth*文件删除,最好是重命名。
mv ifcfg-eth-00:18:82:c5:bb:20 ifcfg-eth-00:18:82:c5:bb:20.bak然后vi创建ifcfg-bond1文件,如下面这么写BOOTPROTO='static'IPADDR='192.168.1.29' #虚拟网卡IPNETMASK='255.255.255.128' #掩码STARTMODE='onboot'BONDING_MASTER='yes'BONDING_MODULE_OPTS='mode=1 miimon=200'BONDING_SLAVE0='eth3' #物理网卡eth3BONDING_SLAVE1='eth4' #物理网卡eth4保存,退出:wq然后重启网卡:rcnetwork restart二.windows服务器的intel网卡绑定下载Intel Proset程序.或者到Intel官方网站下载对应的驱动:/scripts-df-external/detail_desc.aspx?agr=&ProductID=999&DwnldID=4275&strOss=& OSFullName=&lang=eng运行后, 如图:点击install.点击"Done".点击Finish.就会看到右下角有一个这样的图标:中间如网卡状的即是。
Suse11双网卡绑定(SOP)
SUSE 11双网卡绑定测试SOPSUSE 11配置Bonding,这里使用两张网卡eth2 eth3进行,配置的方法跟Renhat区别很大。
1:首先安装网卡驱动,安装完后重启系统2:配置虚拟网络接口bond0:#cd /etc/sysconfig/network/#vi ifcfg-bond0 查看虚拟网口:bond0然后输入如下内容并保存退出:①:mode=0表示负载均衡方式,两块网卡都工作。
Mode=1表示冗余方式,网卡只有一个工作,一个出问题后才启用另外的网卡。
②:miimon是链路检测的时间间隔,miimon=100意识是每100毫秒检测网卡和交换机之间是否连通,如不通则使用另外的链路。
2:配置eth2和eth3#viIfcfg-eth2DEVICE='eth2'USERCTL=NOONBOOT=yesMASTER=bond0SLAVE=yesBOOTPROTO='static'STARTMODE='onboot保存该文件并退出。
'创建ifcfg-eth3配置文件:#viifcfg-eth3DEVICE='eth3'USERCTL=NOONBOOT=yesMASTER=bond0SLAVE=yesBOOTPROTO='static'STARTMODE='onboot'保存并退出该文件3:重启网络服务,使配置生效:输入命令:rcnetwork restart绑定成功后,eth2和eth3显示的ID会跟bond0一样4:验证配置:#cat /proc/net/bonding/bond0负载均衡模式成功,用另外一台电脑ping双网卡绑定主机时,不管拔掉哪跟网线,另外一网口还会继续工作。
网络性能测试软件为iperf,测试接收率和发送率,低于1G的算不正常.期望值:1. 网络性能测试过程中没有中断及报错并能保证测试完成2. 查看system log: vim /var/log/message 里面没有报错并能查看关于网卡的信息,例如“Network Adapter Link Down”表明网卡绑定测试时主网卡断开,次网卡变为主网卡的信息。
网络负载平衡
网络平衡及多网卡绑定的效果及方法/network/%CD%F8%C2%E7%C6%BD%BA%E2%BC%B0%B6%E0%C D%F8%BF%A8%B0%F3%B6%A8%B5%C4%D0%A7%B9%FB%BC%B0%B7%BD%B7%A8. htm现在有很多的无盘论坛上在谈网络平衡及多网卡绑定问题,一则是因为无盘的瓶颈在网络上,二则采用千兆网卡及千兆交换机代价太高(要用到64位的PCI插槽,所以主板也很贵)。
网上流传很多种说法,现根据实践及理论得出结论,以正视听:一、网络负载平衡功能只有在WINDOWS2000高级服务器中才有这种功能,如果你想在WINDOWS2000服务器版本中启用这个功能,要从我站下载一个驱动程序才能启用,下载地址请到追月无盘网站下载,在热门下载中提供下载。
二、网络负载平衡设置方法:第1步SERVER只装一个网卡A,(IP为192.168.0.1)测一下你的工作站能进WIN98,后做第2步第2步SAERVER加一块B网卡,B网卡为自动,然后在A网卡的IP连接属性中启用网络载量平衡,并在属性中设置群集参数和主机参数的IP为固定的IP号,并启用其中的多播,完整Intelnet名为服务器名,在端口规则中把多主机改成单主机。
做好后重起SERVER,没错会出现重名,你把B网卡的DLC、NETBEUI两个协议取掉,然后在B网卡的连接属性中启用网络载量平衡(注意:只要启用就行了,网络载量平衡属性里的东东不要改),再把B网卡的IP设为192.168.0.2 ,最后重起SERVER,我想这样就行了,两网卡都在亮着,没去掉NETBEUI会出重名错,没去掉DLC,有时工作站到发帧那不动了。
三、多网卡绑定(请到追月无盘网站看多网卡绑定相关文章。
四、网络负载平衡及多网卡绑定效果对比,多网卡绑定比网络负载平衡要好得多,理由如下:intel网卡绑定是intel公司自带的绑定软件,绑定之后有四种功能可选:1、容错(adapter fault tolence)。
通过windows2012 NIC Teaming实现网卡负载均衡
什么是NIC组合简单来讲,NIC组合就是把同一台服务器上的多个物理网卡通过软件绑定成一个虚拟的网卡,也就是说,对于外部网络而言,这台服务器只有一个可见的网卡。
对于任何应用程序,以及本服务器所在的网络,这台服务器只有一个网络链接或者说只有一个可以访问的IP地址。
之所以要利用NIC组合技术,除了利用多网卡同时工作来提高网络速度以外,还有可以通过NIC组合实现不同网卡之间的负载均衡(Load balancing)和网卡冗余(Fault tolerance)。
微软NIC组合,也称为负载平衡/故障转移(LBFO),允许多个网络适配器组合成一个,这样做的目的可以带来带宽聚合、解决网络连接失败过程中的故障转移;它应用于Windows Server 2012的所有版本中,包括核心版和图形界面完全版;NIC组合在Windows 8 中是不可用的,但是 NIC组合的用户界面和 NIC组合的 Windows PowerShell Cmdlet命令行都可以运行 Windows 8,以便于 Windows 8 PC 可以用于管理一个或多个Windows Server 2012主机上的NIC组合。
下面就NIC组合的相关配置及参数做一个简单介绍:默认情况下,NIC组合是禁用的,如下:这个时候,我们来查看一下网络情况:三块网卡NIC组合前两个要参与组合的网卡的IP和MAC地址:组-任务-新建组组名称:键入:NEW NIC 因为第一块网卡用于远程桌面,如果新建组会改变IP,所以我不让它参与组合,只让第二块和第三块网组成一个新的组合。
其它属性——成组模式:1、静态成组(IEEE 802.3ad draft v1):此模式配置交换机和主机之间需要哪种链接组合形式,由于这是一个静态配置的解决方案有任何附加协议,所以就不会因为交换机或主机因为电缆的插入错误或其它错误而导致组合的形成。
此种模式中,网卡可以工作于不同的速度,就是说可以用不通速度的网卡建立组合, 但同样要求交换机完全支持IEEE 802.3ad 标准,一般情况下,服务器级别的交换机通常支持此模式。
Linux NIC bonding 模式解释
免费内容:Linux系统提供了网卡绑定(NIC Bonding)功能,关于网卡绑定的设置中中有很6种mode,以下针对OpenFiler Administrative Guide中的资料,进行说明。
1. Balance-rr(Round-robin policy):此模式下,数据包传输将按顺序发送到Bonding中的各个网卡上。
此模式提供负载均衡和容错。
2. Active Backup:此模式下Bonding中只有一块网卡处于激活状态,其余网卡只有在处于工作状态的网卡出错时才会激活。
为了不扰乱交换机,Bonding的MAC地址只有一个是外部可见的。
3. Balance XOR:基于transmit-hash-policy的传输,默认是简单策略。
还有xmit_hash_policy可选。
PS: Hash policy: 散列策略4. Broadcast:广播模式,此模式下对Bonding中所有网卡都进行数据包广播,提供容错能力。
5. 802.3ad(IEEE 802.3ad Dynamic link aggregation): 802.3ad 动态链接汇聚模式,创建链接组后从网卡将有同样的速度和双工设置。
根据802.3ad协议专有的Balance-tlb模式(提供负载均衡),Bonding中的所有网卡将在链路中全部激活,同时信道绑定并不需要专用的交换设备支持。
传出通信流量将根据此时的负载分散于此链接中的各个网卡上,传入通信流量则由当前网卡接收。
若接收的网卡出错,则将另外的网卡取代之,并使用该出错网卡的MAC地址。
6. Balance-alb(Adaptive load balancing): Balance-alb模式提供自适应负载均衡,此模式在IPV4通信下包括balance-tlb模式外加接收负载均衡并且不需要任何专用交换设备的支持。
RLB(Receive Load Balancing)是通过ARP协商完成的。
深度分析Linux网卡绑定的七种模式
深度分析Linux下双网卡绑定七种模式现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多。
而一般企业都会使用linux操作系统下自带的网卡绑定模式,当然现在网卡产商也会出一些针对windows操作系统网卡管理软件来做网卡绑定(windows操作系统没有网卡绑定功能需要第三方支持)。
进入正题,linux有七种网卡绑定模式:Mode=0:round robinMode=1:active-backupMode=2:load balancing (xor)Mode=3:fault-tolerance (broadcast)Mode=4:lacpMode=5:transmit load balancingMode=6:adaptive load balancing第一种:bond0:round robin标准:round-robin policy: Transmit packets in sequential order from the first available slave through the last. This mode provides load balancing and fault tolerance.特点:(1)所有链路处于负载均衡状态,轮询方式往每条链路发送报文,基于per packet方式发送。
服务上ping 一个相同地址:1.1.1.1 双网卡的两个网卡都有流量发出。
负载到两条链路上,说明是基于per packet方式,进行轮询发送。
(2)这模式的特点增加了带宽,同时支持容错能力,当有链路出问题,会把流量切换到正常的链路上。
实际绑定结果:cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)Bonding Mode: load balancing (round-robin)-----RR的模式MII Status: upMII Polling Interval (ms): 100Up Delay (ms): 0Down Delay (ms): 0Slave Interface: eth0MII Status: upLink Failure Count: 0Permanent HW addr: 74:ea:3a:6a:54:e3Slave Interface: eth1MII Status: upLink Failure Count: 0应用拓扑:交换机端需要配置聚合口,cisco叫port channel。
网卡绑定(多网卡绑定成一个虚拟网卡负载均衡)
网卡绑定,就将两个或者更多的物理网卡绑定成一个虚拟网卡,以提供负载均衡或者冗余,能够起到增加带宽的作用;当网卡绑定之后,如果有一个网卡坏掉,网络会继续保持,不会中断,从而不会影响业务。
Windows下网卡绑定Windows 下进行网卡绑定,需要根据网卡的类型下载网卡驱动,通过网卡驱动进行网卡绑定。
设备:HS22,BCE刀箱系统:windows 2008 Enterprise R2 x64网卡类型:首先下载网卡驱动,在驱动的MgmtApps文件夹下,寻找符合系统要求的setup.exe文件,双击击安装。
在接受许可条例之后,进入自定义安装界面,如下:我们这里只安装BASP,直接下一步。
安装结束后,会提醒你从控制面板中找到,这里,我们只要打开开始菜单就可以看见新安装的BACS软件了。
(注意,如果是intel的网卡,系统会默认图标显示在控制面板中。
)软件界面如下:界面左侧的Device Management,显示的是主机当前的网卡,Team Management是用来对网卡绑定进行操作和管理的。
右边是动态展示栏,可以展示每块网卡的信息(Information),可以通过自动ping网卡IP,诊断网卡当前状态(Diagnostics),还可以统计网卡活动状态(Statistics)。
网卡绑定,在实际操作中,是采用虚拟网卡组的概念,将现有网卡,绑定成一个虚拟网卡组。
因此在BACS中,我们打开Team Management来进行网卡绑定。
打开Team Management,左侧看到的是可以进行绑定的网卡状态。
我们打开上层菜单栏中的“Teams”,选择“Create a team”,就进入了网卡绑定的引导界面。
选择“Next”。
首先输入一个网卡绑定组的名字:选择“Next”进入类型界面。
Broadcom网卡绑定有三种类型,--Smart Load Balancing(TM)and Failover(SLB):智能负载均衡和故障转移。
七种网卡绑定模式详解
七种网卡绑定模式详解概览:目前网卡绑定mode共有七种(0~6)bond0、bond1、bond2、bond3、bond4、bond5、bond6常用的有三种:mode=0:平衡负载模式,有自动备援,但需要“Switch”支援及设定。
mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。
mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。
说明:需要说明的是如果想做成mode 0的负载均衡,仅仅设置这里optionsbond0miimon=100 mode=0是不够的,与网卡相连的交换机必须做特殊配置(这两个端口应该采取聚合方式),因为做bonding的这两块网卡是使用同一个MAC地址.从原理分析一下(bond运行在mode0下):mode 0下bond所绑定的网卡的IP都被修改成相同的mac地址,如果这些网卡都被接在同一个交换机,那么交换机的arp表里这个mac地址对应的端口就有多个,那么交换机接受到发往这个mac地址的包应该往哪个端口转发呢?正常情况下mac地址是全球唯一的,一个mac地址对应多个端口肯定使交换机迷惑了。
所以 mode0下的bond如果连接到交换机,交换机这几个端口应该采取聚合方式(cisco称为 ethernetchannel,foundry称为portgroup),因为交换机做了聚合后,聚合下的几个端口也被捆绑成一个mac地址.我们的解决办法是,两个网卡接入不同的交换机即可。
mode6模式下无需配置交换机,因为做bonding的这两块网卡是使用不同的MAC地址。
七种bond模式说明:第一种模式:mod=0 ,即:(balance-rr)Round-robin policy(平衡抡循环策略)特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降第二种模式:mod=1,即: (active-backup)Active-backup policy(主-备份策略)特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。
网管入门8139网卡实现双网卡负载均衡
网管入门:8139网卡实现双网卡负载均衡虽然现在市面上有天生能够绑定的网卡,但作为廉价网卡突出代表而拥有大量用户端的8139网卡却不支持这项功能,不过不要着急,只要安装一个小软件——“NICExpress”,就可以用普通的8139之类的网卡体验一把双网卡绑定的愉悦了。
朋友或许会问了,为什么要用双网卡呢?用双网卡有什么好处?所谓双网卡,就是通过软件将双网卡绑定为一个IP地址,这个技术对于许多朋友来说并不陌生,许多高档服务器网卡(例如intel8255x系列、3COM服务器网卡等)都具有多网卡绑定功能,可以通过软硬件设置将两块或者多块网卡绑定在同一个IP地址上,使用起来就好象在使用一块网卡。
多网卡绑定的优点不少,首先,可以增大带宽,假如一个网卡的带宽是100M,理论上两块网卡就是200M,三块就是300M,当然实际上的效果是不会是这样简单的增加的,不过经实际测试使用多个网卡对于增加带宽,保持带宽的稳定性肯定是有裨益的,如果交换机等相关条件不错的话,这个效果还是很能令人满意;其次,可以形成网卡冗余阵列、分担负载,双网卡被绑定成“一块网卡”之后,同步一起工作,对服务器的访问流量被均衡分担到两块网卡上,这样每块网卡的负载压力就小多了,抗并发访问的能力提高,保证了服务器访问的稳定和畅快,当其中一块发生故障的时候,另一块立刻接管全部负载,过程是无缝的,服务不会中断,直到维修人员到来。
OK,现在就手把手的教大家如何用50元来打造出双网卡的效果! 先下载软件(点击这里下载NIC Express Enterprise),这是4.0版本,只有2.15M,软件的兼容性已经做得很好,支持win98/Me/2000/XP/2003。
基本上支持目前市场上常见的各种网卡,百兆和千兆网卡都可以用来绑定,但是千万注意,最好用于绑定的网卡是完全相同的,至少也是基于同一芯片的,这样多块网卡才能合作得比较好。
切记不要把10M网卡和100M网卡绑定在一起,那样根本起不到提升作用。
服务器网卡绑定操作
服务器网卡绑定操作服务器网卡绑定操作是一种常见的网络优化技术,通过将多个网卡绑定成一个虚拟接口,提供更高的网络吞吐量和可靠性。
本文将介绍服务器网卡绑定操作的原理和常用的绑定方式,以及相关的配置和管理技巧。
一、绑定原理服务器网卡绑定操作的原理基于网络负载均衡和冗余备份的需求。
通过将多个物理网卡绑定成一个逻辑网卡,实现数据在多个网卡之间的均衡传输,提升服务器网络性能。
同时,当其中一个网卡故障时,其他网卡可以自动接管数据传输,保证网络的可靠性。
二、绑定方式1. 适配器绑定模式适配器绑定模式是最常用的绑定方式,将多个网卡绑定为一个逻辑网卡,实现负载均衡和冗余备份。
该模式分为两种类型:- 轮询模式:轮询模式会将传入的请求依次分发到每个网卡上,实现负载均衡。
但是由于网卡带宽和性能的不同,可能会导致某个网卡负载较高。
- 适配器故障转移模式:适配器故障转移模式在主用网卡发生故障时,会自动将数据流量切换到备用网卡,保证网络的可靠性。
2. 链路聚合模式链路聚合模式将多个网卡绑定为一个逻辑网卡,并通过链路聚合控制协议(LACP)实现对网络流量的负载均衡和冗余备份。
该模式依赖于网络交换机的支持,通过交换机上的聚合组实现网卡的绑定和控制。
三、配置和管理服务器网卡绑定操作的配置和管理通常需要在服务器的操作系统中进行,以下是一些常用的配置和管理技巧:1. 操作系统支持首先要确保服务器的操作系统支持网卡绑定操作。
大部分现代操作系统,如Linux、Windows Server等,都提供了丰富的网络绑定功能和管理工具。
2. 硬件检查在进行网卡绑定操作之前,要确保服务器的硬件和网络环境满足要求。
检查网卡的型号和规格,以及交换机的配置和支持情况。
3. 配置文件修改根据服务器操作系统的不同,可以通过修改相应的配置文件来实现网卡绑定。
比如在Linux系统中,可以编辑网络配置文件(如/etc/network/interfaces)来指定绑定方式和参数。
多网卡绑定技术在服务器系统中的应用
多网卡绑定技术在服务器系统中的应用摘要:随着社会信息化进程的不断推进,各行业的服务器访问量越来越大,客户端连接的速度越来越慢,一块普通的百兆网卡已经不能满足气象业务应用的需要。
由于服务器在气象业务中的特殊地位,加上服务器的高可用性和安全性,也受到用户前所未有的重视,它已经成为气象网络信息环境的重要指标,其中最重要的一点是服务器网络连接的高可用性。
为了实现气象数据传输更加顺畅和公众对气象信息的访问更加快捷,我们在服务器中采用多网卡绑定技术使网卡之间能自动切换工作、自动分担负载。
本文介绍了多网卡绑定的提出背景和绑定模式,详细介绍了linux环境下的多网卡bonding技术实现过程,服务器端的配置方法。
研究表明,多网卡链路绑定解决方案可以明显增加系统整体网络接口的吞吐率和提供网络子系统的可用性。
关键词:多网卡绑定;负载均衡;网络带宽;服务器系统中图分类号:tp311.52 文献标识码:a 文章编号:1007-9599 (2013) 02-0000-021 网卡绑定技术的引入随着信息技术与存储技术的发展,各种应用对服务器数据的海量存储和高速存取提出了更新的要求,使得传统的存储体系逐渐不能满足用户需求,网络存储技术由此应运而生。
目前附网存储设备由于具有较高的性价比在网络存储市场上获得了广泛的接受。
它基于以太网构建,具有数据共享方便,可扩展性好,管理和维护的开销小等优点。
但其主要缺点是增加了网络负载。
随着客户对气象数据依赖性的增加,nas设备的网络吞吐率逐渐显得力不从心,成为制约整个系统性能的瓶颈。
如果单靠升级网络硬件(如千兆网卡及千兆交换机)来提高网络性能会对nas设备的搞性价比带来负面影响。
因此,在利用现有网络硬件设备的环境下,通过软件方式提高网络吞吐率已经成为nas及其它服务器亟待解决的问题。
为了更有效地利用服务器上的多个网络接口,可用将多块网卡虚拟成为一块网卡,其中每个物理网卡都具有相同的ip地址。
网络中的链路聚合与负载均衡
网络中的链路聚合与负载均衡随着互联网的迅猛发展,网络通信负载越来越大,传统的网络架构已经不能满足现代应用的需求。
为了提高网络的带宽利用率和可靠性,网络中的链路聚合与负载均衡技术应运而生。
本文将以网络中的链路聚合与负载均衡为题,探讨其背后的原理、应用以及未来的发展前景。
一、链路聚合技术链路聚合技术,又称为端口聚合技术(Port Aggregation),是指将多个物理链路(如以太网链路)捆绑成一个逻辑链路的过程,通过增加带宽来提高网络的传输能力。
链路聚合的实现方式有许多种,常见的有静态链路聚合和动态链路聚合。
静态链路聚合是在网络设备配置时就预先设定好链路聚合的组成方式和参数,通常使用静态配置的方式进行链路的绑定。
这种方式的优点是简单易行,但灵活性较差,无法自动适应网络状况的变化。
动态链路聚合使用动态协议来实现链路的自动聚合和解聚,网络设备通过协议进行链路状态的交换,以确定最佳的链路组合方式。
相对于静态链路聚合,动态链路聚合具有更高的灵活性和自适应能力。
二、负载均衡技术负载均衡技术是指将网络流量在多个网络链路或服务器之间均匀分配,以提高整个网络的性能和可靠性。
负载均衡可以分为多种形式,包括基于链路层的负载均衡、基于网络层的负载均衡和基于应用层的负载均衡。
基于链路层的负载均衡是在数据链路层对数据进行划分和分发,用于将数据均匀地发送到多个链路上。
这种负载均衡方式通常需要交换机等链路层设备的支持,有效地利用了网络带宽。
基于网络层的负载均衡是在网络层对数据进行划分和分发,用于将数据均匀地发送到多个服务器上。
这种负载均衡方式通常需要路由器等网络层设备的支持,能够实现对整个网络流量的均衡分发。
基于应用层的负载均衡是在应用层对数据进行划分和分发,用于将请求均匀地发送到多个服务器上。
这种负载均衡方式通常需要负载均衡器等应用层设备的支持,能够实现对特定应用的负载均衡。
三、链路聚合与负载均衡的应用链路聚合与负载均衡技术在互联网中具有广泛的应用。
配置网络负载均衡优化网络性能
配置网络负载均衡优化网络性能随着网络应用的不断发展,网络流量的规模和复杂性也在不断增加。
为了满足用户的需求,提升网络的稳定性和可靠性,网络负载均衡成为了一个重要的技术手段。
配置网络负载均衡可以优化网络性能,提高用户体验。
本文将介绍网络负载均衡的原理和常用的配置方法,以及如何进行优化。
一、网络负载均衡的原理网络负载均衡是一种将网络流量分配到多个服务器上的方法,从而达到提高性能和可靠性的目的。
其原理基于以下几个方面:1. 分流:将用户的请求流量分散到多个服务器上,避免单一服务器过载,提高系统的吞吐量。
2. 调度算法:通过选择合适的调度算法,将请求流量合理地分配到各个服务器上,以达到负载均衡的效果。
3. 健康检查:定期检测服务器的状态,如果出现故障或超载情况,将其剔除或降低权重,保证用户的请求能够被正确地处理。
4. 高可用性:通过使用冗余服务器和备用链路,确保故障时能够及时切换到备用服务器,提高系统的可用性。
二、常用的网络负载均衡配置方法根据负载均衡的实现方式,常见的网络负载均衡配置方法包括硬件负载均衡和软件负载均衡。
1. 硬件负载均衡:硬件负载均衡器是一种专门用于负载均衡的设备,可以实现高性能的负载均衡功能。
其配置一般包括以下几个步骤:a. 配置VIP(虚拟IP地址):将多台服务器绑定到一个虚拟IP地址上,使得用户的请求可以通过这个VIP访问到后端的多台服务器。
b. 配置服务器池:将实际的服务器添加到服务器池中,配置健康检查和调度算法等参数。
c. 配置服务端口:指定负载均衡器监听的端口和协议类型。
d. 调优配置:根据实际需求,调整负载均衡器的性能参数,如连接数、超时时间等。
2. 软件负载均衡:软件负载均衡是通过在服务器上安装负载均衡软件来实现的,常见的软件负载均衡器有Nginx、HAProxy等。
其配置一般包括以下几个步骤:a. 安装负载均衡软件:根据实际需求选择适合的软件,并进行安装和配置。
b. 配置后端服务器:将实际的服务器添加到负载均衡软件中,并配置运行参数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#defineBOND_MODE_ALB 6 网卡虚拟化方式
bonding模块的所有工作模式可以分为两类:多主型工作模式和主备型工作模式,balance-rr 和broadcast属于多主型工作模式而active-backup属于主备型工作模式。(balance-xor、自适应传输负载均衡模式(balance-tlb)和自适应负载均衡模式(balance-alb)也属于多主型工作模式,IEEE 802.3ad动态链路聚合模式(802.3ad)属于主备型工作模式
optionsbond0 mode=0 arp_interval=500arp_ip_target=172.16.64.86
4)启动bonding
需要添加路由来制定发送规则,这个可以自定义添加。配置完后重启设备即可。
ifenslave bond0eth0 eth1
route add -net0/0 gw 172.16.64.254
一、网卡的负载均衡模式(mode = BOND_MODE_ROUNDROBIN)
1)建立bond虚设备
建立一个ifcfg-bond0的设备,然后配置如下信息即可。
DEVICE=bond0
BOOTPROTO=static
IPADDR=172.16.64.208
NETMASK=255.255.224.0
slave = start_at = bond->curr_active_slave;
read_unlock(&bond->curr_slave_lock);
bond_for_each_slave_from(bond, slave, i,start_at) {
对于数据的发送,
static inline voidbond_set_mode_ops(struct net_device *bond_dev, int mode)
{
switch(mode) {
case BOND_MODE_ROUNDROBIN:
配置:
[root@t20b003 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
[root@t20b003 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth2
UP BROADCAST RUNNING SLAVEMULTICAST MTU:1500 Metric:1
RX packets:18208 errors:0 dropped:0overruns:0 frame:0
TX packets:5 errors:0 dropped:0overruns:0 carrier:0
bond0 Link encap:Ethernet HWaddr 00:14:10:70:00:25
inet addr:172.16.64.208 Bcast:172.16.95.255 Mask:255.255.224.0
inet6 addr: fe80::200:ff:fe00:0/64Scope:Link
alias netdev-bond0 bonding
#BONDING_OPTS="mode=6 miimon=100" 可以放ifcfg-bond0上面
[root@t20b003 ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)
static int bond_xmit_roundrobin(structsk_buff *skb, struct net_device *bond_dev)
{
read_lock(&bond->curr_slave_lock);
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:21128 errors:0 dropped:0overruns:0 frame:0
TX packets:3174 errors:0 dropped:0overruns:0 carrier:0
UP BROADCAST RUNNING MASTERMULTICAST MTU:1500 Metric:1
RX packets:39335 errors:0 dropped:0overruns:0 frame:0
TX packets:3178 errors:0 dropped:0overruns:0 carrier:0
Bonding Mode: adaptive load balancing
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
collisions:0 txqueuelen:1000
RX bytes:1371589 (1.3 MiB) TX bytes:378 (378.0 b)
eth1 Link encap:Ethernet HWaddr 00:14:10:70:00:25
Slave queue ID: 0
Slave Interface: eth3
Mห้องสมุดไป่ตู้I Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: f8:bc:12:44:0b:cb
BOOTPROTO=none
USERCTL=no
IPADDR=116.55.251.4
NETMASK=255.255.255.224
BONDING_OPTS="mode=6 miimon=100"
[root@t20b003 ~]# cat /etc/modprobe.d/bonding.conf
ONBOOT=yes
TYPE=Ethernet
2)配置接口文件
由于使用一个虚拟的ip地址,所以,其他接口设备都不配置ip信息。
3)配置bonding工作方式
打开/etc/modprobe.conf文件,将bonding的工作模式配置为如下模式。
alias bond0bonding
DEVICE=eth2
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
[root@t20b003 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth3
DEVICE=eth3
bond_dev->hard_start_xmit =bond_xmit_roundrobin;
break;
...
bond的发送函数被注册为bond_xmit_roundrobin。通过bond_xmit_roundrobin的实现可以发现
Slave queue ID: 0
Bonding的模式一共有7种:
#defineBOND_MODE_ROUNDROBIN 0 (balance-rr模式)网卡的负载均衡模式
#defineBOND_MODE_ACTIVEBACKUP 1 (active-backup模式)网卡的容错模式,主备模式,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。
Down Delay (ms): 0
Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 1
Permanent HW addr: f8:bc:12:44:0b:c9
collisions:0 txqueuelen:100
RX bytes:1649127 (1.5 MiB) TX bytes:269498 (263.1 KiB)
如上图所示,这种模式下bonding模块会将虚接口和所有的slave接口的MAC地址设置为一致。通过定时器,每个slave接口不断发送ARP包来不断更换交换机端口与MAC的对应关系。
#defineBOND_MODE_XOR 2 (balance-xor模式)需要交换机支持
#defineBOND_MODE_BROADCAST 3 (broadcast模式)
#defineBOND_MODE_8023AD 4 (IEEE 802.3ad动态链路聚合模式)需要交换机支持
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
[root@t20b003 ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
ONBOOT=yes
在BOND_MODE_ROUNDROBIN模式下,bonding对于发送和接收数据的处理逻辑是不一致的,对于数据的接收,bonding基本不做任何处理,纯粹依靠交换机端口与MAC的变化来实现交替接收数据。发送的话,交换机会根据数据的源MAC来学习端口和MAC之间的关系,所以bonding做到的就是选择不一样的网卡发送。