Linux 双网卡绑定测试
先介绍一下情况,服务器A和服务器B都是CentOS 4.6的系统,现在要做HA
Cluster,为了避免裂脑的发生,要提高心跳链路的可靠性,下图是现时的连接情况,服务器A的eth2、eth3分别和服务器B的eth2、eth3
相连(没有顺序关系),所有网卡都是千兆网卡,拓扑图如下所示:
在介绍一起硬件情况,服务器A是一台HP DL380
G5,两年多的服务器了,4核心8G内存,5块72GB的2.5寸硬盘做RAID5。服务期B是DELL
2950,几个月前刚购入的新机器,8核16G内存,3块3.5寸300G SAS硬盘做RAID5。
业务交换机为DELL的千兆交换机,没做任何配置,仅当接入交换机使用。
图中的蓝线用的是几年前的超五类非屏蔽双绞线。
图中的红线用的是新购的六类非屏蔽双绞线。
测试方法很简单,将一个3.4G的ISO从服务器A scp到服务器B中,对比传输的时间。
数据走业务链路,没有使用bonding技术。
############## No Binding ##############
[root@rac-node01 tmp]# time scp rhel-5.1-server-x86_64-dvd.iso 10.168.0.202:/tmp
root@10.168.0.202's password:
rhel-5.1-server-x86_64-dvd.iso 100% 3353MB 44.1MB/s 01:16
real 1m20.105s
user 0m34.752s
sys 0m11.002s
############## 速度还是挺快的
数据走心跳链路,使用了bonding技术,mode设置为6,即不需要交换机参与的负载均衡。
令人奇怪的是该种模式下会丢一些数据包,也许是这种比较奇怪的拓扑结果造成的。
############## model=6 ##############
[root@rac-node01 tmp]# time scp rhel-5.1-server-x86_64-dvd.iso 192.168.0.202:/tmp
root@192.168.0.202's password:
rhel-5.1-server-x86_64-dvd.iso 100% 3353MB 21.4MB/s 02:37
real 2m47.812s
user 0m34.965s
sys 0m19.421s
[root@rac-node01 tmp]# netstat -i #@ Receive
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
bond1 1500 0 5123831 2045 0 0 5138747 0 0 0 BMmRU
eth0 1500 0 2847 0 0 0 703 0 0 0 BMRU
eth2 1500 0 2562665 11 0 0 2569378 0 0 0 BMsRU
eth3 1500 0
相关文档:
一个正则表达式的教程可以参看(里面有个测试正则表达式的工具)
http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm#ad
正则表达是用来匹配字符串的好东东。
如果用户熟悉Lin ......
linux 的库操作命令 ar和nm
当我们的程序中有经常使用的模块,而且这种模块在其他程序中也会用到,这时按照软件重用的思想,我们应该将它们生成库,使得以后编程可以减少开发代码量。这里介绍两个命令ar和nm,用来对库操作。
1.ar基本用法
2.nm基本用法命令
当我们的程序中有经常 ......
库有动态与静态两种,动态通常用.so为后缀,静态用.a为后缀。例如:libhello.so libhello.a
1,生成库
第一步要把源代码编绎成目标代码。以下面的代码为例,生成上面用到的hello库:
/* hello.c * ......