热备冗余计算机通过冗余网络与其它设备进行通信的方法

文档序号:7715913阅读:243来源:国知局
专利名称:热备冗余计算机通过冗余网络与其它设备进行通信的方法
技术领域
本发明涉及网络与设备进行通信的方法,尤其涉及一种热备冗余计算机通过冗 余网络与其它设备进行通信的方法。
背景技术
在高可靠性的分布式计算机系统中,往往有两台或两台以上冗余的计算机来执 行相同的工作,当一台计算机故障时,就用另一台计算机替代。冗余计算机群通常 有两种工作方式冷备和热备。在冷备工作方式中,任何时候只有其中一台计算机 在工作,称为主机;其它计算机则关机或休眠,称为备机;当主机出现故障时,则 启动或唤醒一台可用的备机替代它工作,这时,这台备机改称为主机,而原来的主 机则改称为备机。在热备工作方式中,任何时候至少有两台计算机在并行工作,但 只有其中一台计算机输出结果,这台有输出的计算机称为主机;其它计算机称为备
机;当主机出现故障时,则另一台正在运行的备机替代它输出,这时,这台备机改 称为主机,而原来的主机由于切断了输出而改称为备机。相对于冷备工作方式,热 备工作方式的主/备机切换时间更少,因而具有更高的可靠性。
在高可靠性的分布式计算机系统中,每台计算机往往分别用两个或两个以上冗 余的IP网络来传输相同的数据,当一个网络故障时,就用另一个网络替代。冗余 网络通常也有两种工作方式冷备和热备,在冷备工作方式中,通常只通过其中一 个网络发送数据,称为主网;其它网络不发送数据,称为备网;当主网出现故障时, 则通过一个可用的备网发送数据,这时,这台发送数据的备网改称为主网,而原来 的主网则改称为备网。在热备工作方式中,发送方的每包数据,将发送到所有冗余 网络中,这样接收方将接收到多个(分别来自不同网络的)相同的数据包,接收方 往往只处理最先到达的数据包,而抛弃其它数据包。相对于冷备工作方式,热备工 作方式的故障时间更少,因而具有更高的可靠性。
从以上所述看来,分别针对冗余计算机群和针对冗余网络的单一技术都已经成熟。但是,如何把互为热备份的多台冗余计算机群作为一个整体通过冗余网络与外 部设备(这个外部设备可能是单一计算机,也可能是由多台计算机组成的另一套冗 余计算机群)进行通信,目前的方法有两种
一种方法是增加一台通信前置机,该通信前置机替代冗余计算机群与外部设备 通过冗余网络进行通信。具体实现方式是通信前置机与主机、备机、外部设备之 间都分别通过冗余网络进行通信。通信前置机能决定或识别哪台计算机是主机,它 把主机发来的数据转发给外部设备,并把外部设备发来的数据转发给主机和备机, 从而对外部设备屏蔽了当前哪台计算机是主机。外部设备不与冗余计算机群直接通 信,只与固定的通信前置机进行通信,因此不需要考虑主/备机切换,简化了处理。 但是这种方法中,通信前置机作为单一非冗余计算机群, 一旦出现故障,将会导致 系统不可用,因此,系统的可靠性将降低。
另一种方法是所有热备份的冗余计算机群都直接与外部设备通过冗余网络进 行通信。具体实现方式是冗余计算机群中,只有主机通过冗余网络发送数据给外 部设备,备机不向外部设备发送数据;当外部设备要发送数据给冗余计算机群时, 则把数据既发送给冗余计算机群的主机,也发给冗余计算机群的备机。在这种方法 中, 一方面外部设备的发送通道数增加了,另一方面,主备机难以实现对外部设备 的透明性,因此,系统的可用性将降低。
以上方法都没有达到"以透明的方式对计算机和网络实现双重的完全冗余"问 题。在使用冗余网络的分布式计算机系统中,往往要求由两个及以上的计算机所组 成的冗余计算机群子系统仍然被当成单一计算机与其它计算机或子系统进行通信。

发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷,提供一种热备冗余计算 机通过冗余网络与其它设备进行通信的方法。
本发明的目的可以通过以下技术方案来实现
一种热备冗余计算机通过冗余网络与其它设备进行通信的方法,其特征在于, 该方法包括以下步骤
(l)冗余计算机群针对冗余网络中的每个网络分别配置一个固定的公开IP地
址;
P)当冗余计算机群要发送数据给其它设备时,则把固定的公开IP 址作为发送地址;
(3)当其它设备要发送数据给冗余计算机群时,则把固定的公开IP地址作为接 收地址。
所述的步骤(1)具体步骤如下
(l-l)冗余网络中的每个网络分别对应一个固定的公开IP地址; (l-2)冗余计算机群中每台计算机都通过网卡连接到冗余网络中的每个网络上,
每个网卡分别对应一个默认的内部IP地址;
(l-3)对于冗余网络中的每个网络,在冗余计算机群中只能有一台计算机连接到
该网络的网卡配置为公开IP地址,其它计算机连接到该网络的网卡则配置为默认
的内部IP地址;
(l-4)冗余计算机群中每台计算机的每个网卡在初始时一般都配置为各自默认 的内部IP地址;
(l-5)当检测某个公开IP地址不能有效通信时,则从冗余计算机群中选择一台 计算机,把它连接到该网络上的网卡地址由默认的内部IP地址修改为该公开IP地 址,而原来配置该公开IP地址的那个网卡则恢复为默认的内部IP地址。
所述的步骤(2)具体步骤如下
(2-l)当冗余计算机群中某台计算机要通过冗余网络中某个网络发送数据给其 它设备时,如果该台计算机连接到该网络的网卡配置的是该网络的公开IP地址, 则以该公开IP地址作为源地址,直接发送给其它设备;否则将该数据通过网络或 其它方式传递到冗余计算机群中在该网络上的网卡配置为公开IP地址的那台计算 机,由那台计算机转发给其它设备;
(2-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时,拥 有公开IP地址的计算机对接收到冗余计算机群中的其它计算机发过来的数据进行 判断,如果数据为需要发给冗余计算机群之外的其它设备,则把该数据以该网络的 公开IP地址作为源地址,转发给其它设备。
所述的步骤(3)的具体步骤如下
(3-l)当冗余计算机群之外的其它设备要通过冗余网络的某个网络给该冗余计 算机群发送数据时,则只把该冗余计算机群在该网络上的公开IP地址作为目的地 址发送数据,而不会将数据发送给冗余计算机群的默认的内部IP地址;
(3-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时,如果通过该公开IP地址接收到冗余计算机群之外其它设备发来的数据, 一方面把该 数据提交给本机内部进行处理,另一方面通过网络或其它方式将该数据传递给冗余 计算机群中其它计算机进行处理;
(3-3)当冗余计算机群中在某网络上的网卡配置为默认的内部IP地址时,如果 接收到在该网络上配置为公开IP地址的那台计算机所转发的计算机群之外其它设 备的数据,则把该数据提交给本机内部进行处理。
所述的步骤(2-1)中的冗余计算机群中要发送数据给冗余计算机群之外其它 设备的拥有公开IP地址的计算机都通过冗余网路将数据发送给其它设备,若该台 计算机连接到某网络的网卡配置的是默认的内部IP地址时,如果是将该数据通过 网络而不是通过其它方式传递给冗余计算机群中在该网络上的网卡配置为公开IP 地址的那台计算机,则该台计算机仍然是以冗余网络将数据发送出去。
所述的步骤(3-2)中的拥有公开IP地址的计算机通过冗余途径接收来自其它 设备的数据,所述的步骤(3-3)中的计算机连接到某网络的网卡配置的是默认的 内部IP地址,如果来自于其他设备的该数据是通过网络而不是通过其它方式从冗 余计算机群中在该网络上的网卡配置为公开IP地址的那台计算机转发而来,则该
台计算机仍然是从冗余网络接收来自于冗余计算机群之外其它设备的数据。 与现有技术相比,本发明具有以下优点
1、 实现了冗余计算机群中每台计算机在通信网络上的冗余,实现了冗余计算 机群之外其它设备都发给冗余计算机群的公开IP地址,从而实现了计算机冗余的 透明性;
2、 从而在不增加额外硬件成本的条件下,实现了计算机冗余、网络冗余并兼 顾计算机冗余的透明性,提高分布式计算机系统的可靠性和可用性。


图1是本发明冗余计算机群在初始时各网卡配置为默认的内部IP地址的示意图。
图2是本发明冗余计算机群在某些计算机的网卡由默认的内部IP地址修改为 公开IP地址的示意图。
图3是本发明冗余计算机群向冗余计算机群之外其它设备发送数据的示意图。 图4是本发明冗余计算机群之外其它设备向冗余计算机群发送数据的示意图。
具体实施例方式
以下结合具体实施例对本发明做进一步说明。 实施例
下面,以由两台计算机组成的热备冗余计算机群通过由两个网络组成的冗余网 络与冗余计算机群之外其它设备进行通信为例,介绍本发明的
具体实施例方式
如图l、图2、图3、图4所示,假设冗余网络由两个网络组成X网和Y网, 冗余计算机群C1由两台计算机组成C11和C12,冗余计算机群之外其它设备称 为C2, C2可能是一台计算机,也可能是由多台计算机组成的冗余计算机群。
步骤1、冗余计算机群针对冗余网络中的每个网络分别配置一个固定的公开IP 地址
(1-1)对于冗余计算机群来说,冗余网络中的每个网络分别对应一个固定的
公开IP地址。例如图2、图3、图4中所示,Rl、 B1是冗余计算机群分别在X网、 Y网上对应的公开IP地址。
(1-2)冗余计算机群中每台计算机都通过网卡连接到冗余网络中的每个网络 上,每台计算机连接到冗余网络上的每个网卡分别对应一个默认的内部IP地址。 例如图1所表示,冗余计算机群中计算机Cll有两块网卡分别连接到X网、Y网 上,对应的默认内部IP地址分别为Rll、 Bll,计算机C12也有两块网卡分别连 接到X网、Y网上,对应的默认的内部IP地址分别是R12、 B12。
(1-3)对于冗余网络中的每个网络,在冗余计算机群中只能有一台计算机连 接到该网络的网卡配置为公开IP地址,其它计算机连接到该网络的网卡则配置为 默认的内部IP地址。例如图2、图3、图4中,冗余计算机群中当计算机C11在X 网上的网卡被配置为X网上的公开IP地址Rl时,则计算机C12在X网上的网卡 被配置为该网卡默认的内部IP地址R12;当计算机C12在Y网上的网卡被配置为 Y网上的公开IP地址Bl时,则计算机Cll在Y网上的网卡被配置为该网卡默认 的内部IP地址Bll。
(1-4)冗余计算机群中每台计算机的每个网卡在初始时一般都配置为各自默 认的内部IP地址。例如图1中,在初始时,冗余计算机群中四块网卡分别配置为 各自默认的内部IP地址Rll、 Bll、 R12、 B12。
(1-5)当检测某个公开IP地址不能有效通信时,则从冗余计算机群中选择一台计算机,把它连接到该网络上的网卡地址由默认的内部IP地址修改为该公开IP 地址;而原来配置该公开IP地址的那个网卡则恢复为默认的内部IP地址。例如图 l中,X网上的公开IP地址R1没有被设置,因此不能有效通信,因此选择计算机 C11在X网上的网卡,将它的IP地址由内部IP地址Rll修改为公开IP地址Rl; Y网上的公开IP地址Bl没有被设置,因此不能有效通信,由于X网公开IP地址 Rl已经配置在计算机C11上,因此按照均衡的原则,选择另一台计算机C12而不 是同一台计算机Cll在Y网上的网卡,将它的IP地址由内部IP地址Bll修改为 公开IP地址Bl。
步骤2、当冗余计算机群要发送数据给其它设备时,则把固定的公开IP地址 作为发送地址
(2-1)当冗余计算机群中某台计算机要通过冗余网络中某个网络发送数据给 其它设备时,如果该台计算机连接到该网络的网卡配置的是该网络的公开IP地址, 则以该公开IP地址作为源地址,直接发送给其它设备;否则将该数据通过网络或 其它方式传递到冗余计算机群中在该网络上的网卡配置为公开IP地址的那台计算 机,由那台计算机转发给其它设备。例如图3所示,计算机Cll在X网上通过公 开IP地址Rl直接向冗余计算机群之外其它设备C2发送数据;而在Y网上,则把 数据先通过Y网上的默认的内部IP地址Bll发送到冗余计算机群中其它计算机 C12上,再由计算机C12通过Y网上的公开IP地址Bl转发到冗余计算机群之外 其它设备C2。
(2-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时, 如果通过网络或其它方式接收到冗余计算机群中其它计算机要通过该网络发给其 他设备的数据,则把该数据,以该网络的公开IP地址作为源地址,转发给其它设 备。例如图3所示,计算机C12从Y网上接收到冗余计算机群中其它计算机Cll 发来的数据,则把该数据,以Y网上的公开IP地址作为源地址,转发给冗余计算 机群之外其它设备C2。
步骤3、当其它设备要发送数据给冗余计算机群时,则把固定的公开IP地址 作为接收地址-
(3-1)当冗余计算机群之外的其它设备要通过冗余网络的某个网络给该冗余 计算机群发送数据时,则只把该冗余计算机群在该网络上的公开IP地址作为目的 地址发送数据(给该冗余计算机群),而不会将数据发送给冗余计算机群的默认的内部IP地址。例如图4中,冗余计算机群之外其它设备C2向冗余计算机群的公 开IP地址R1、 Bl发送数据,而不会将数据发给冗余计算机群默认的内部IP地址 Rll、 Bll、 R12、 B12。
(3-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时, 如果通过该公开IP地址接收到冗余计算机群之外其它设备发来的数据, 一方面把 该数据提交给本机内部进行处理,另一方面通过网络或其它方式将该数据传递给冗 余计算机群中其它计算机进行处理。例如图4中,冗余计算机群中计算机Cll在X
网的公开IP地址R1收到数据后, 一方面将该数据提交给本机Cll内部去处理, 另一方面将该数据转发给冗余计算机群中其它计算机C12;冗余计算机群的计算机 C12在Y网的公开IP地址Bl收到数据后, 一方面将该数据提交给本机C12内部 去处理,另一方面将该数据转发给冗余计算机群中其它计算机Cll。
(3-3)当冗余计算机群中在某网络上的网卡配置为默认的内部IP地址时,如 果接收到在该网络上配置为公开IP地址的那台计算机所转发的冗余计算机群之外 其它设备的数据,则把该数据提交给本机内部进行处理。例如图4中,冗余计算机 群中计算机C12在X网上收到计算机Cll所转发的来自冗余计算机群之外其它设 备C2的数据后,将该数据提交给本机C12内部去处理;冗余计算机群中计算机Cll 在Y网上收到计算机C12所转发的来自冗余计算机群之外其它设备C2的数据后, 将该数据提交给本机Cll内部去处理。
权利要求
1.一种热备冗余计算机通过冗余网络与其它设备进行通信的方法,其特征在于,该方法包括以下步骤(1)冗余计算机群针对冗余网络中的每个网络分别配置一个固定的公开IP地址;(2)当冗余计算机群要发送数据给其它设备时,则把固定的公开IP地址作为发送地址;(3)当其它设备要发送数据给冗余计算机群时,则把固定的公开IP地址作为接收地址。
2. 根据权利要求1所述的一种热备冗余计算机通过冗余网络与其它设备进行 通信的方法,其特征在于,所述的步骤(1)具体步骤如下(l-l)冗余网络中的每个网络分别对应一个固定的公开IP地址; (l-2)冗余计算机群中每台计算机都通过网卡连接到冗余网络中的每个网络上,每个网卡分别对应一个默认的内部IP地址;(l-3)对于冗余网络中的每个网络,在冗余计算机群中只能有一台计算机连接到该网络的网卡配置为公开IP地址,其它计算机连接到该网络的网卡则配置为默认的内部IP地址;(l-4)冗余计算机群中每台计算机的每个网卡在初始时一般都配置为各自默认 的内部IP地址;(l-5)当检测某个公开IP地址不能有效通信时,则从冗余计算机群中选择一台 计算机,把它连接到该网络上的网卡地址由默认的内部IP地址修改为该公开IP地 址,而原来配置该公开IP地址的那个网卡则恢复为默认的内部IP地址。
3. 根据权利要求1所述的一种热备冗余计算机通过冗余网络与其它设备进行 通信的方法,其特征在于,所述的步骤(2)具体步骤如下(2-l)当冗余计算机群中某台计算机要通过冗余网络中某个网络发送数据给其 它设备时,如果该台计算机连接到该网络的网卡配置的是该网络的公开IP地址, 则以该公开IP地址作为源地址,直接发送给其它设备;否则将该数据通过网络或 其它方式传递到冗余计算机群中在该网络上的网卡配置为公开IP地址的那台计算 机,由那台计算机转发给其它设备;(2-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时,拥 有公开IP地址的计算机对接收到冗余计算机群中的其它计算机发过来的数据进行 判断,如果数据为需要发给冗余计算机群之外的其它设备,则把该数据以该网络的 公开IP地址作为源地址,转发给其它设备。
4. 根据权利要求1所述的一种热备冗余计算机通过冗余网络与其它设备进行 通信的方法,其特征在于,所述的步骤(3)的具体步骤如下(3-l)当冗余计算机群之外的其它设备要通过冗余网络的某个网络给该冗余计 算机群发送数据时,则只把该冗余计算机群在该网络上的公开IP地址作为目的地 址发送数据,而不会将数据发送给冗余计算机群的默认的内部IP地址;(3-2)当冗余计算机群中在某网络上的网卡配置为该网络的公开IP地址时,如 果通过该公开IP地址接收到冗余计算机群之外其它设备发来的数据, 一方面把该 数据提交给本机内部进行处理,另一方面通过网络或其它方式将该数据传递给冗余 计算机群中其它计算机进行处理;(3-3)当冗余计算机群中在某网络上的网卡配置为默认的内部IP地址时,如果 接收到在该网络上配置为公开IP地址的那台计算机所转发的计算机群之外其它设 备的数据,则把该数据提交给本机内部进行处理。
5. 根据权利要求3所述的热备冗余计算机通过冗余网络与其它设备进行通信 的方法,其特征在于,所述的步骤(2-1)中的冗余计算机群中要发送数据给冗余 计算机群之外其它设备的拥有公开IP地址的计算机都通过冗余网路将数据发送给 其它设备,若该台计算机连接到某网络的网卡配置的是默认的内部IP地址时,如 果是将该数据通过网络而不是通过其它方式传递给冗余计算机群中在该网络上的 网卡配置为公开IP地址的那台计算机,则该台计算机仍然是以冗余网络将数据发 送出去。
6. 根据权利要求4所述的热备冗余计算机通过冗余网络与其它设备进行通信 的方法,其特征在于,所述的步骤(3-2)中的拥有公开IP地址的计算机通过冗余 途径接收来自其它设备的数据,所述的步骤(3-3)中的计算机连接到某网络的网 卡配置的是默认的内部IP地址,如果来自于其他设备的该数据是通过网络而不是 通过其它方式从冗余计算机群中在该网络上的网卡配置为公开IP地址的那台计算 机转发而来,则该台计算机仍然是从冗余网络接收来自于冗余计算机群之外其它设 备的数据。
全文摘要
本发明涉及一种热备冗余计算机通过冗余网络与其它设备进行通信的方法,该方法包括以下步骤(1)冗余计算机群针对冗余网络中的每个网络分别配置一个固定的公开IP地址;(2)当冗余计算机群要发送数据给其它设备时,则把固定的公开IP地址作为发送地址;(3)当其它设备要发送数据给冗余计算机群时,则把固定的公开IP地址作为接收地址。与现有技术相比,本发明具有以下优点在不增加额外硬件成本的条件下,实现了计算机冗余、网络冗余并兼顾计算机冗余的透明性,提高分布式计算机系统的可靠性和可用性。
文档编号H04L1/22GK101662351SQ20091019496
公开日2010年3月3日 申请日期2009年9月1日 优先权日2009年9月1日
发明者凌祝军, 廖湘华 申请人:卡斯柯信号有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1