免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3328 | 回复: 0
打印 上一主题 下一主题

双网卡冗余技术应用 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-02-11 00:22 |只看该作者 |倒序浏览
实验条件:两块网卡,可不限型号,一台交换机,gentoo环境,可以是其他linux,注意区分不同之处.\r\n我的设备:两个8139,TP-LINK交换机,总值不过是百块,大家不要见笑,其实在gentoo的网络配置文件里提到过这种技术,刚好有台交换机,并参考网上一篇文章,试试如何.\r\n将多块网卡虚拟成为一块网卡,使其具有相同的IP地址,来实现提升主机的网络吞吐量或者是提高可用性,这种技术被称作bonding。这项技术其实在 sun和cisco中已经存在,分别称为Trunking和etherchannel技术,在Linux中,这种技术称为bonding。\r\n\r\n通过软硬件设置将两块或者多块网卡绑定在同一个IP地址上,接上集线器,使用起来就好象在使用一块网卡。\r\n\r\n多网卡绑定的优点不少,首先,可以增大带宽,假如一个网卡的带宽是100M,理论上两块网卡就是200M,三块就是300M,当然实际上的效果是不会是这样简单的增加的,不过经实际测试使用多个网卡对于增加带宽,保持带宽的稳定性肯定是有裨益的。\r\n\r\n形成网卡冗余阵列、分担负载,双网卡被绑定成“一块网卡”之后,同步一起工作,对服务器的访问流量被均衡分担到两块网卡上,这样每块网卡的负载压力就小多了,抗并发访问的能力提高,保证了服务器访问的稳定和畅快,当其中一块发生故障的时候,另一块立刻接管全部负载,过程是无缝的,服务不会中断,直到维修人员到来。\r\n\r\n1)连接设备:\r\nadsl接入到交换机,交换机接两块网卡,也就是说adsl通过交换机连接两个网卡,进入.\r\n2) 编译带有bonding driver的内核\r\n在内核选项: \r\nDevice Drivers->\r\nNetwork device support->\r\n<M>Bonding driver support\r\n编译成模块。\r\n3) 获取并安装用户管理工具\r\n安装ifenslave程序,gentoo是支持emerge的,其他版本的linux要自己找了,找不到的说说,有附带源代码\r\n#emerge ifenslave\r\n设置,执行命令:\r\n#modprobe bonding\r\n加载模块\r\n#ifconfig bond0 192.168.0.1 netmask 255.255.0.0\r\n设置设备bond0的IP\r\n#ifenslave bond0 eth0 eth1\r\n绑定两个网卡\r\n用命令ifconfig看出bond0设备的情况:\r\n # ifconfig\r\nbond0     Link encap:Ethernet  HWaddr 00:0A:EB:FA:08:A9\r\n          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.0.0\r\n          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1\r\n          RX packets:179812 errors:0 dropped:0 overruns:0 frame:0\r\n          TX packets:147859 errors:0 dropped:0 overruns:0 carrier:0\r\n          collisions:0 txqueuelen:0\r\n          RX bytes:204694202 (195.2 Mb)  TX bytes:67080581 (63.9 Mb)\r\n\r\neth0      Link encap:Ethernet  HWaddr 00:0A:EB:FA:08:A9\r\n          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1\r\n          RX packets:89088 errors:0 dropped:0 overruns:0 frame:0\r\n          TX packets:73543 errors:0 dropped:0 overruns:0 carrier:0\r\n          collisions:0 txqueuelen:1000\r\n          RX bytes:101695763 (96.9 Mb)  TX bytes:33487215 (31.9 Mb)\r\n          Interrupt:16 Base address:0x2f00\r\n\r\neth1      Link encap:Ethernet  HWaddr 00:0A:EB:FA:08:A9\r\n          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1\r\n          RX packets:90724 errors:0 dropped:0 overruns:0 frame:0\r\n          TX packets:74318 errors:0 dropped:0 overruns:0 carrier:0\r\n          collisions:0 txqueuelen:1000\r\n          RX bytes:102998439 (98.2 Mb)  TX bytes:33593500 (32.0 Mb)\r\n          Interrupt:17 Base address:0x4e00\r\n\r\nlo        Link encap:Local Loopback\r\n          inet addr:127.0.0.1  Mask:255.0.0.0\r\n          UP LOOPBACK RUNNING  MTU:16436  Metric:1\r\n          RX packets:269 errors:0 dropped:0 overruns:0 frame:0\r\n          TX packets:269 errors:0 dropped:0 overruns:0 carrier:0\r\n          collisions:0 txqueuelen:0\r\n          RX bytes:21908 (21.3 Kb)  TX bytes:21908 (21.3 Kb)\r\n\r\nppp0      Link encapoint-to-Point Protocol\r\n          inet addr:221.4.185.60  P-t-P:221.4.184.1  Mask:255.255.255.255\r\n          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1\r\n          RX packets:178863 errors:0 dropped:0 overruns:0 frame:0\r\n          TX packets:146823 errors:0 dropped:0 overruns:0 carrier:0\r\n          collisions:0 txqueuelen:3\r\n          RX bytes:200336566 (191.0 Mb)  TX bytes:63717954 (60.7 Mb)\r\n\r\n需要重新设置adsl,因为原adsl是使用eth0,现在eht0和eth1都绑在bond0身上,没有网卡了,所以,把这项改为:\r\n(default eth1): bond0\r\n启动adsl,看到网卡和交换机的灯同时闪烁,说明已经工作了.\r\n\r\n工作情况,如下:\r\n# dmesg |grep eth\r\neth0: RealTek RTL8139 at 0xd0802f00, 00:0a:eb:fa:08:a9, IRQ 16\r\neth0:  Identified 8139 chip type \'RTL-8100B/8139D\'\r\neth1: RealTek RTL8139 at 0xd0804e00, 00:14:78:2c:d8:98, IRQ 17\r\neth1:  Identified 8139 chip type \'RTL-8100B/8139D\'\r\neth0: link down\r\neth0: link down\r\neth1: link up, 100Mbps, full-duplex, lpa 0x45E1\r\neth1: link down\r\neth1: link up, 100Mbps, full-duplex, lpa 0x45E1\r\neth1: link down\r\neth0: link up, 100Mbps, full-duplex, lpa 0x45E1\r\neth1: link up, 100Mbps, full-duplex, lpa 0x45E1\r\neth0: link up, 100Mbps, full-duplex, lpa 0x45E1\r\nbonding: bond0: enslaving eth0 as an active interface with an up link.\r\neth1: link up, 100Mbps, full-duplex, lpa 0x45E1\r\nbonding: bond0: enslaving eth1 as an active interface with an up link.\r\n\r\n用bt下载一些文件,速度看不出加快,峰值是比原来高一些,那路高手有时间做做测试,搞些新玩法,贴贴出来,\r\n下面是参考文章:http://www.hackhome.com/2005/6-17/1904107338.shtml\r\n
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP