集群服务器间的信息交换
2008-11-28 11:00:07 来源:WEB开发网2. 经过实验表明,主机切换为备机后,曾经加载的虚拟IP地址不卸载,不会造成网络冲突。经分析,其原因为: 当路由器收到ARP数据包后,将MAC地址和IP地址的配对更新,当路由器接收到情报数据后,会根据ARP表来寻找虚拟IP地址所在计算机的MAC地址,因此路由器接收到航管情报后自动将报文发送给主计算机,然后由主机的三通进程将情报通过局域网内的组播方式发送给主备计算机的信息接收进程。
3.建立三通进程,负责接收情报,并将接收的情报分发给两台计算机。需要将三通进程作为系统守侯进程,这样它随着操作系统的启动而自动执行,增强其可靠性。下面对三通进程的实现进行简单介绍。
在Unix操作系统下,首先需要随着操作系统的启动而自动启用三通进程,在/etc/rc2.d目录下建立脚本文件,如下:
#!/bin/sh
findproc() { # 查询进程ID
pid=`/usr/bin/ps -e |
/usr/bin/grep " " |
/usr/bin/grep -v "$$" |
/usr/bin/grep -v grep |
/usr/bin/awk '{ print }'`
}
case in
start)
/usr/Tprocess& #启动三通进程
;;
stop) #关闭三通进程
findproc Tprocess;
if [ "$pid" < > "" ]; then
/bin/kill -15 $pid
Fi
;;
*)
esac
三通进程的实现步骤为: 首先是要脱离开原有进程组,单独建立进程组并成为进程组的首进程,建立守护进程; 其次是接收到报文后增加报文头格式,后续紧跟网络发送方IP地址,然后紧跟为原始数据。其数据格式如表所示:
最后是将组合后的数据报文在局域网内发送给双服务器的接收进程。下面介绍三个步骤的实现方法。
更多精彩
赞助商链接