JP2005136690A - 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム - Google Patents

高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム Download PDF

Info

Publication number
JP2005136690A
JP2005136690A JP2003370436A JP2003370436A JP2005136690A JP 2005136690 A JP2005136690 A JP 2005136690A JP 2003370436 A JP2003370436 A JP 2003370436A JP 2003370436 A JP2003370436 A JP 2003370436A JP 2005136690 A JP2005136690 A JP 2005136690A
Authority
JP
Japan
Prior art keywords
network
address
connection
processing unit
communication data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003370436A
Other languages
English (en)
Other versions
JP4133738B2 (ja
Inventor
Takashi Ikebe
隆 池邉
Hideki Shina
秀貴 四七
Daisuke Sato
大輔 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003370436A priority Critical patent/JP4133738B2/ja
Publication of JP2005136690A publication Critical patent/JP2005136690A/ja
Application granted granted Critical
Publication of JP4133738B2 publication Critical patent/JP4133738B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】 稼動系と待機系とからなる冗長構成を採用するとともに仮想ネットワークアドレスを用いるシステムにおいて、サービスの提供の中断時間を短縮することができるようにネットワークアドレスを引継ぐ。
【解決手段】 稼動系のサーバ1及び待機系のサーバ2に対してそれぞれ固有のMACアドレス及びIPアドレスを付与するとともに、両者に共通に仮想MACアドレス及び仮想IPアドレスを設定する。サーバ1、2間に、コネクション202を設定する。待機系のサーバ2は、仮想MACアドレスによる通信データが送信されてきた場合に、コネクション202を介してその通信データを稼動系のサーバ1に転送し、コネクション202の切断によって稼動系のサーバ1に障害を検知し、障害を検知した場合には、仮想MACアドレスによる通信データに対する処理を自装置内で行う。
【選択図】 図1

Description

本発明は、それぞれネットワークインターフェースを持つ複数の装置間でのネットワークアドレスの引継ぎ方法と、そのような引継ぎ方法を実行するネットワーク装置とに関する。
信頼性を要求されるネットワークシステムでは、同じ構成のシステムを2系統用意して、一方を稼動系として動作させ、他方は待機系として待機させておき、稼動系において障害が発生した場合には、即座に待機系に切り替えることが行われている。ここで、稼動系のシステム及び待機系のシステムが同一のネットワークに接続するとともにネットワークアドレスで識別されるものである場合、一般には同一ネットワーク内では同一のネットワークアドレスを異なる装置に割当てることはできないので、稼動系−待機系を構成する2系統のシステムにはそれぞれ異なるネットワークアドレスを割当てる必要がある。しかしながら、異なるネットワークアドレスを割当てた場合、稼動系システムから待機系システムへの切り替えに際し、それまで稼動系システムに対してアクセスしていたネットワーク機器(クライアントなど)は、待機系システムにアクセスするために、それまでの稼動系システムのネットワークアドレスとは異なる待機系システムのネットワークアドレスを使用しなければならない。多数のネットワーク機器が接続するネットワークシステムにおいて、各ネットワーク機器が通信先のネットワークアドレスを即座に変更できるようにすることは困難である。
そこで、複数の装置間でのネットワークアドレス引継ぎの技術が、例えば、VRRP(Virtual Router Redundancy Protocol:仮想ルータ冗長プロトコル)として、RFC(request for Comments)2338(非特許文献1)に提案されている。VRRPでは、稼動系−待機系を構成する複数台のルータもしくはサーバにおいて、稼動系が定期的に生存信号を発し、稼動系からの生存信号が到来しないことによって待機系は稼動系の障害を検知し、そのような障害が検知された場合には、優先度の高いルータもしくはサーバを稼動系とする。その際、稼動系と待機系との間でネットワークアドレスを引き継ぐようにして、それまで稼動系システムにアクセスしていたネットワーク機器は、通信先のネットワークアドレスを変更することなく、待機系システムにアクセスできるようにしている。VRRPにおけるネットワークアドレスの引継ぎ方法は、待機系が、待機系と稼動系との間で共通の仮想ネットワークアドレスをあらかじめ指定しておき、稼動系が正常に動作している場合には、稼動系のみがその仮想ネットワークアドレスをネットワーク上で用い、稼動系に障害が生じて待機系が稼動系に切り替わる際に、待機系だったシステムが仮想ネットワークアドレスを有効にすることで、ネットワークアドレスを引き継ぐ、というものである。このような引継ぎ方法を採用することにより、同一ネットワーク上に同一のネットワークアドレスが重複することを避けつつ、稼動系から待機系へのアクセスの切り替えがスムースに行われるようにしている。
S. Knight et al.,"Virtual Router Redundancy Protocol", RFC2338, April 1999, pp. 1-8. ([online]、インターネット、<URL: ftp://ftp.rfc-editor.org/in-notes/rfc2338.txt>)
上述したように従来のVRRPでは、稼動系から送出される定期的な生存信号を検出し、この検出結果に基づいて待機系が稼動系から仮想ネットワークアドレスを引き継いでいるが、この手法では、生存信号の検出にかかる周期的な待ち時間や、生存信号の検出後のネットワークアドレス引継ぎのための処理時間が、仮想ネットワークアドレスを用いたネットワークアクセスにおける中断時間となり、その間はサービスを提供することができないという問題点がある。
そこで本発明の目的は、仮想ネットワークアドレスを用いるサービスの提供の中断時間を短縮することが可能なネットワークアドレス引継ぎ方法を提供することにある。
本発明の別の目的は、仮想ネットワークアドレスを用いるサービスの提供の中断時間を短縮することが可能なネットワークアドレス引継ぎ方法に対応したネットワーク装置を提供することにある。
本発明のネットワークアドレス引継ぎ方法は、同一のネットワークに接続されそれぞれネットワークインターフェースを有しネットワークインターフェースにはそれぞれ固有のネットワークアドレスが付与されている第1及び第2のネットワーク装置の間でネットワークアドレスを引き継ぐネットワークアドレス引継ぎ方法であって、第1及び第2のネットワーク装置の一方を稼動系、他方を待機系として冗長構成を構築する段階と、第1及び第2のネットワーク装置のネットワークインターフェースに対し、同一の仮想ネットワークアドレスを付与する段階と、第1のネットワーク装置と第2のネットワーク装置との間で通信データ転送のためのコネクションを確立する段階と、待機系であるネットワーク装置が、ネットワークから仮想ネットワークアドレスを用いて通信データが送信されてきた場合に、コネクションを介して通信データを稼動系であるネットワーク装置に転送する段階と、コネクションが切断されたことによって、待機系であるネットワーク装置が稼動系であるネットワーク装置の障害を検知する段階と、障害を検知した場合に、待機系であるネットワーク装置が、通信データの転送を取りやめて、自装置内で通信データに基づく処理を実行する段階と、を有する。
本発明のネットワーク装置は、ネットワークに接続するネットワーク装置であって、ネットワークに対して接続して固有のネットワークアドレスが設定されるとともに、ネットワーク内の他のネットワーク装置と共通の仮想ネットワークアドレスが設定される物理インターフェースと、固有のネットワークアドレスを用いた通信データに対する処理を実行する第1の処理部と、仮想ネットワークアドレスを用いた通信データに対する処理を実行する第2の処理部と、他のネットワーク装置との間にコネクションを確立するコネクション処理部と、を有し、ネットワーク装置は他のネットワーク装置とともに稼動系及び待機系からなる冗長構成を形成し、ネットワーク装置が待機系である場合に、第2の処理部は、仮想ネットワークアドレスを用いた通信データをコネクション処理部に渡し、コネクション処理部は渡された通信データをコネクションを介して他のネットワーク装置に転送し、コネクションの切断が検出されると、第2の処理部は仮想ネットワークアドレスを用いた通信データをコネクション処理部に渡すことなく自ら処理する。
本発明では、同一ネットワーク上に存在するネットワークインターフェースを有する複数のネットワーク装置に同一の仮想ネットワークアドレスを持たせ、稼動系・待機系の冗長構成の場合において、待機系で受け付けた仮想ネットワークアドレスに対しての通信データを速やかに稼動系に転送し、稼動系がその転送された通信データを処理する。このことにより、ネットワークに接続した複数の装置に実質的に同一ネットワークアドレスが付与されている場合であっても、通信データを処理する装置を1つに集中することで、データの整合性が取れなくなる矛盾を解決する。
また、通信データを稼動系へ転送するために、稼動系と待機系との間でコネクションを設定し、そのコネクションの切断を契機に稼動系の障害を判断するため、周期的な生存信号の待ち時間及びネットワークアドレス引継ぎ処理に関する時間を削減し、仮想ネットワークアドレスによるサービス提供の中断時間を短縮することが可能である。
本発明により、従来、障害発生時等に、ネットワークアドレスを引き継ぐためにかかっていた、処理時間を短縮することが可能になる。
次に、本発明の好ましい実施の形態について、図面を参照して説明する。図1は本発明の実施の一形態のネットワークアドレス引継ぎ方法が適用されるネットワークの構成の一例を示している。
典型的にはイーサネットで構築されたLAN(ローカルエリアネットワーク)201に対して、2台のサーバ1、2が接続している。これら2台のサーバ1、2は、一方が稼動系、他方が待機系として動作するものであり、正常動作時には、サーバ1が稼動系、サーバ2が待機系であるとする。サーバ1及びサーバ2は、LAN201内において、同一IP(Internet protocol)サブネット内のネットワークに接続しており、サーバ1のネットワークインターフェースは、IPアドレスとしてAを持ち、MAC(media access control)アドレスとしてaを持っている。またサーバ2のネットワークインターフェースは、IPアドレスとしてBを持ち、MACアドレスとしてbを持っている。ここではA≠Bであり、a≠bである。さらにサーバ1とサーバ2のネットワークインターフェースには、冗長構成用として、共通に、仮想IPアドレスCと仮想MACアドレスcとが設定されている。サーバ1とサーバ2との間には、LAN201を介して、コネクション202が確立しており、サーバ1、2は、コネクション202を介して論理的に接続している。
LAN201には、さらに、クライアント101〜104が接続しており、クライアント101〜104は、その必要とするサービスの提供を受けるために、サーバ1、2のうち現に稼動系となっているサーバに接続する。
ここに示したネットワークシステムでは、サーバ1とサーバ2の双方が仮想IPアドレスC及び仮想MACアドレスcを同時にアクティブに設定しても、待機系のサーバは、仮想IPアドレスC及び仮想MACアドレスcをあて先として用いる通信データを受け取った場合には、その通信データを、イーサネットフレーム上のデータ部分のみからなるデータとしてコネクション202を介して稼動系のサーバに転送する。その結果、仮想IPアドレスC及び仮想MACアドレスcに対しての通信は、すべて稼動系のサーバ1へと転送され、処理されることとなる。したがって、同一アドレスをあて先として指定する通信データが異なるサーバに分散して送られることによって生じる、通信データの矛盾や不一致が生じない。同一ネットワーク上に同一のIPアドレス及び同一のMACアドレスが設定されたサーバが存在しても、データの整合性が保証される。
図2は、このようなサーバ1、2の具体的な構成を示している。サーバ1、2は、LAN201との接続点となる物理インターフェース301、401を備えている。物理インターフェース301、401には、その製造時に、それぞれ固有のMACアドレスa、bが設定されている。さらにサーバ1、2は、それぞれ、物理インターフェース301、401に付与されたMACアドレス(MACアドレスa、b)及びイーサネットの処理を行うイーサネット処理部302、402と、付与されているMACアドレスに関連付けられたIPアドレスの処理を行うIP処理部304、404と、IP処理部304、404で処理される実IPアドレスによるIPパケットに関する上位のプロトコル処理を行うTCP(transmission control protocl)/UDP(user datagram protocol)処理部305、405と、仮想MACアドレス及びイーサネットの処理を行う仮イーサネット処理部303、403と、仮想MACアドレスに関連付けられる仮想IPアドレスの処理を行う仮IP処理部306、406と、仮IP処理部306、406で処理される仮想IPアドレスによるIPパケットに関する上位のプロトコル処理を行う仮TCP/UDP処理部307、407と、それらのサーバが提供するサービスを実行するためのサービスプログラム309、409と、を備えている。さらにサーバ1、2は、コネクション202に関する処理を実行するために、それぞれ、コネクション処理部308、408を備えている。サーバ1のサービスプログラム309は、TCP/UDP処理部305及び仮TCP/UDP処理部307に任意にバインドすることができ、同様に、サーバ2のサービスプログラム409は、TCP/UDP処理部405及び仮TCP/UDP処理部407に任意にバインドすることができる。
次に、本実施形態の動作を説明する。ここでは、当初はサーバ1が稼動系サーバであり、サーバ2が待機系サーバであるとする。
稼動系であるサーバ1に対して、その実MACアドレス(MACアドレスa)でアクセスがあった場合には、物理インターフェース301で受け付けられてイーサネット処理部302においてMACアドレス処理とイーサネット処理とがなされ、実MACアドレスに対応付けられた実IPアドレス(IPアドレスA)による処理がIP処理部304でなされ、さらに上位のプロトコル処理がTCP/UDP処理部305で行われることになる。また、稼動系であるサーバ1は、仮想MACアドレス及び仮想IPアドレスによるアクセスを受け付けた場合には、仮イーサネット処理部303において仮想MACアドレスの処理とイーサネット処理とがなされ、仮想MACアドレスに対応付けられた仮想IPアドレスによる処理が仮IP処理部306でなされ、さらに上位のプロトコル処理が仮TCP/UDP処理部307で行われることになる。同様に、待機系であるサーバ2に対して、その実アドレス(MACアドレスb)でアクセスがあった場合には、物理インターフェース401で受け付けられてイーサネット処理部402においてMACアドレス処理とイーサネット処理とがなされ、実MACアドレスに対応付けられた実IPアドレス(IPアドレスB)による処理がIP処理部404でなされ、さらに上位のプロトコル処理がTCP/UDP処理部405で行われることになる。
待機系であるサーバ2に対して仮想MACアドレス及び仮想IPアドレスに基づいてアクセスがなされた場合には、仮イーサネット処理部403において仮想MACアドレスが処理されるともに、それらの通信データは、コネクション処理部408において、イーサネット部分のデータが処理され、イーサネットフレームにおけるデータ部分のみからなるデータとされる。そして、そのように処理されたデータは、コネクション202を介して、稼動系であるサーバ1のコネクション処理部308に転送される。そのようにデータが転送されると、稼動系であるサーバ1において、コネクション処理部308は、受信したデータ(イーサネットフレーム上のデータ)を仮イーサネット処理部303を経由してIP処理部306へ渡す。これにより、仮想IPアドレス及び仮想MACアドレスに対する通信データは、同一アドレスを持つ複数のホスト(ここでは稼動系のサーバ1及び待機系のサーバ2)に分散することなく、すべて稼動系のサーバ1の通信処理部に転送され、処理されることになる。したがって、同一の仮想IPアドレスや同一の仮想MACアドレスが異なる複数のサーバに割当てられていても、矛盾のない処理が可能となる。
なお、このシステムでは、稼動系であるサーバ1において、そのサービスプログラム309が仮想アドレスを用いて通信データを送信する際には、サービスプログラム単位で送信するデータを、稼動系であるサーバ1の物理インターフェース301から送信してもよい。あるいは、コネクション処理部308、コネクション202、及び待機系であるサーバ2のコネクション処理部408を経由して、待機系のサーバ2の物理インターフェース401から送信してもよい。さらには、ランダムにあるいは規則的に稼動系のサーバ1の物理インターフェース301と待機系のサーバ2の物理インターフェース401のいずれかを選択してその物理インターフェースから送信するようにしてもよい。本実施形態のシステムでは、稼動系のサーバ1のサービスプログラム309がどの物理インターフェースをどのように用いて通信データを送信するかは、任意に設定可能である。
次に、稼動系であるサーバ1に障害が発生した場合の処理について説明する。
稼動系であるサーバ1で障害が発生し、そのサーバ1がサービス提供が不可能な状態になれば、サーバ1は、仮想IPアドレス及び仮想MACアドレスの使用を停止する。また、サーバ1に関連したネットワーク関連のハードウェアの障害の場合には、サーバ1の物理インターフェース301そのものが使用不可となる。このような場合、稼動系のサーバ1と待機系のサーバ2の間に生成されているコネクション202は、稼動系のサーバ1によって自発的に切断されるか、その障害自体によって切断される。
正常に動作している待機系のサーバ2は、コネクション202の切断をうけて稼動系のサーバ1での障害発生を検知する。サーバ1での障害発生を検知されると、そのことがコネクション処理部408から仮イーサネット処理部403に通知され、仮イーサネット処理部403は、仮想IPアドレス(IPアドレスC)及び仮想MACアドレス(MACアドレスc)を受け取った際の処理を切り替え、特に、データの送り先をコネクション処理部408から仮IP処理部406に切り替える。その結果、待機系のサーバ2では、それ以降、仮想IPアドレス(IPアドレスC)及び仮想MACアドレス(MACアドレスc)に対する通信データを受け取った場合、仮想MACアドレスに関する処理が仮イーサネット処理部403で行われるともに、その仮想MACアドレスに対応付けられた仮想IPアドレスの処理が仮IP処理部406で行われるようになる。そして仮想IPアドレスに対する上位のプロトコル処理が、仮TCP/UDP処理部407で行われ、そこにバインドされているサービスプログラム409に対してデータが受け渡される。結局、それまで待機系であったサーバ2が、稼動系のサーバとして動作することになる。
このとき、稼動系であったサーバ1においてはサービスプログラム309のみに障害が発生し、その他の処理部304〜308や物理インターフェース301には障害が発生せず、サービスプログラム309の再起動のみでその障害が復旧可能な場合には、再度、待機系であったサーバ2(現在稼動系として動作しているサーバ)との間にコネクション202を生成し、仮想IPアドレス及び仮想MACアドレスを稼動系であったサーバ1上で有効にする。その結果、稼動系であったサーバ1は復旧し、今度は、待機系のサーバとして動作を開始する。
一方、稼動系であったサーバ1における障害が、回復するために保守者による復旧作業を必要とするものであった場合には、その後、保守者によってサーバ1の復旧作業が行われる。その結果、障害を起こしたサーバ1が復旧すれば、サーバ1は、待機系として動作を開始する。また、待機系であったサーバ2は稼動系として動作を行い続ける。さらに、管理者は、待機系と稼動系とのサーバの切り替えを手動操作によって行うことができる。現在、稼動系であるサーバに障害が生じた場合には、稼動系と待機系の切り替えが同様に行われる。
以上、本発明の好ましい実施形態について、本発明に基づくネットワーク装置がサーバである場合について説明したが、本発明はこれに限定されるものではない。図3は、本発明に基づくネットワーク装置がルータである場合の、本発明のネットワークアドレス引継ぎ方法が適用されるネットワークの構成の一例を示している。
イーサネットで構築されたLAN201に対して、2台のルータ3、4が接続している。これら2台のサーバ3、4は、一方が稼動系、他方が待機系として動作するものであり、ここでは説明のため、正常動作時には、サーバ3が稼動系、サーバ4が待機系であるとする。さらにこれのルータ3、4は、LAN201とは別のLAN203に対しても接続しており、LAN201とLAN203との間でのルーティングを実行する。LAN201側において、ルータ3、4は、同一IPサブネット内のネットワークに接続しており、ルータ3のネットワークインターフェースは、IPアドレスとしてAを持ち、MACアドレスとしてaを持っている。ルータ4のネットワークインターフェースは、IPアドレスBとMACアドレスbを持っている。ここではA≠Bであり、a≠bである。さらにルータ3及びルータ4のネットワークインターフェースには、冗長構成用として、共通に、仮想IPアドレスCと仮想MACアドレスcとが設定されている。ルータ3とルータ4との間には、LAN201を介して、コネクション202が確立しており、ルータ3、4は、コネクション202を介して論理的に接続している。LAN203側においても、ルータ3、4にはそれぞれ固有のIPアドレス及びMACアドレスが設定されるとともに、ルータ3、4に共通に、仮想IPアドレスと仮想MACアドレスが設定されている。LAN201には、さらに、クライアント101〜104が接続しており、クライアント101〜104は、ルータ3、4のうち現に稼動系となっているルータに接続する。
ルータ3、4から構成されるこの稼動系−冗長系システムでは、稼動系と冗長系との間の切り替えとそれにともなうネットワークアドレス引継ぎの処理は、LAN201側から見た場合の処理もLAN203側から見た場合の処理も同様であるので、以下では、LAN201側から見た処理について説明する。
上述したサーバ1、2の場合と同様に、ルータ3とルータ4が仮想IPアドレスC及び仮想MACアドレスcを同時にアクティブに設定しても、待機系のルータ4に対する仮想IPアドレスC及び仮想MACアドレスcをあて先として用いる通信データは、コネクション202を通じて、イーサネットフレーム上のデータ部分のみからなるデータとして、稼動系のルータ3へと転送される。その結果、仮想IPアドレスC及び仮想MACアドレスcに対しての通信は、すべて稼動系のルータ3へと転送され、処理されることとなる。したがって、同一のアドレスをあて先として指定する通信データが分散することによる、通信データの矛盾・不一致が生じない。同一ネットワーク上に同一のIPアドレス及びMACアドレスが設定されたノードが存在してもデータの整合性が保証される。
このようなルータ3、4は、LAN203に対するネットワークインターフェースが設けられていることを除けば、図2に示したサーバ1、2と同じ構成を有している。ネットワークアドレス引継ぎの処理自体はLAN201側でもLAN203側でも同じであるので、以下では、LAN201側でのネットワークアドレス引継ぎの処理について、図2を参照して説明する。ただし、図2におけるサーバ1及びサーバ2は、それぞれ、ルータ3及びルータ4に読み替えるものとする。
ルータ3は、サーバ1と同様に、物理インターフェース301、イーサネット処理部302、仮イーサネット処理部303、IP処理部304、TCP/UDP処理部305、仮IP処理部306、仮TCP/UDP処理部307、コネクション処理部308及びサービスプログラム309を備えており、ルータ4は、サーバ2と同様に、物理インターフェース401、イーサネット処理部402、仮イーサネット処理部403、IP処理部404、TCP/UDP処理部405、仮IP処理部406、仮TCP/UDP処理部407、コネクション処理部408及びサービスプログラム409を備えている。サービスプログラム309、409としては、例えば、ルーティングエンジンやフィルタリングの機能を提供するものが挙げられる。ルータ3のサービスプログラム309は、TCP/UDP処理部305及び仮TCP/UDP処理部307に任意にバインドすることができ、ルータ4のサービスプログラム409は、TCP/UDP処理部405及び仮TCP/UDP処理部407に任意にバインドすることができる。
次に、図3に示した稼動系のルータ3及び待機系のルータ4からなるシステムの動作について説明する。
稼動系のルータ3に対してその実MACアドレス(MACアドレスa)及び実IPアドレス(IPアドレスA)によってアクセスがなされた場合、あるいは待機系のルータ4に対してその実MACアドレス(MACアドレスb)及び実IPアドレス(IPアドレスB)によってアクセスがなされた場合には、上述と同様に、物理インターフェース301、401で受け付けられてイーサネット処理部302、402においてMACアドレス処理とイーサネット処理とがなされ、実IPアドレスによる処理がIP処理部304、404でなされ、さらに上位のプロトコル処理がTCP/UDP処理部305、405で行われる。また、稼動系であるルータ3は、仮想MACアドレス及び仮想IPアドレスによるアクセスを受け付けた場合には、仮イーサネット処理部303において仮想MACアドレスの処理とイーサネット処理とがなされ、仮想MACアドレスに対応付けられた仮想IPアドレスによる処理が仮IP処理部306でなされ、さらに上位のプロトコル処理が仮TCP/UDP処理部307で行われることになる。
待機系であるルータ4に対して、仮想MACアドレス及び仮想IPアドレスをあて先とする通信データが送られて送ると、上述した場合と同様に、コネクション処理部408においてイーサネット部分のデータが処理され、イーサネットフレームにおけるデータ部分のみからなるデータのみとされ、この処理されたデータは、コネクション202を経由して稼動系のルータ3のコネクション処理部308へ転送される。稼動系のルータ3においては、コネクション処理部308は、コネクション202を介して受信したデータをイーサネット処理部303を経由してIP処理部306へ渡す。これにより、仮想IPアドレス及び仮想MACアドレスに対する通信データは、同一アドレスを持つ複数のホストに分散することなく、すべて稼動系のルータ3の通信処理部に転送され、処理されることになる。したがって、矛盾のない処理が可能となる。
稼動系のルータ3においてルーティングエンジンやフィルタリングなどのサービスプログラム309が仮想アドレスを用いて通信データを送信する際には、サービスプログラム単位で送信するデータを、稼動系のルータ3の物理インターフェース301から送信するか、コネクション202を介して待機系のルータ4の物理インターフェース401から送信するか、または、ランダムにあるいは予めで定められた規則にしたがっていずれかの物理インターフェース301、401を使用して送信するかを任意に設定可能である。
稼動系のルータ3で障害が発生した場合の処理を説明する。ルータ3において障害が発生し、ルータ3がサービス提供が不可能な状態になれば、ルータ3は、仮想IPアドレス及び仮想MACアドレスの使用を停止する。またネットワーク関連のハードウェアの障害の場合には、ルータ3の物理インターフェース301そのものが使用不可となる。このような場合、稼動系のルータ3と待機系のルータ4の間で生成されているコネクション202が、稼動系のルータ3によって自発的に、あるいはその障害そのものに起因して、切断される。
待機系のルータ4では、コネクション202の切断を受けて、稼動系のサーバ3での障害発生を検知し、それ以降は、仮想IPアドレス及び仮想MACアドレスをあて先とする通信データは、仮IP処理部406へ受け渡される。その後、ルータ4は、プロトコル処理を仮TCP/UDP処理部407において行い、そこにバインドされているサービスプログラム409へデータを受け渡す。
このとき、稼動系であったルータ3での障害はサービスプログラム309のみに発生し、そのルータ3の各処理部304〜308及び物理インターフェース301には障害は発生しておらず、そのサービスプログラムの再起動のみで障害が復旧可能な場合には、ルータ3と待機系であったルータ4との間に、再度、コネクション202を生成し、仮想IPアドレス及び仮想MACアドレスをルータ3上で有効にし、そのルータ3が待機系としての動作を開始するようにする。
一方、稼動系であったルータ3における障害が保守者による復旧作業を必要とするものであった場合には、保守者によって復旧が行われ、そのルータ3が復旧すれば、ルータ3は待機系のルータとしての動作を開始する。待機系であったルータ4は、稼動系のルータとしての動作を続行する。管理者によって待機系と稼動系とのルータの切り替えが行われるか、現在、稼動系であるルータに障害が生じた場合には、稼動系と待機系の切り替えが同様に行われる。
以上、本発明の実施形態について、本発明に基づくネットワーク装置がサーバあるいはルータである場合について説明したが、本発明は、ネットワークインターフェースを有するあらゆるネットワーク装置に対して適用することができる。
また、上述したサーバあるいはルータのような本発明に基づくネットワーク装置は、専用のハードウェア装置によって構成することもできるし、あるいは、このようなネットワーク装置を実現するためのコンピュータプログラムを汎用のコンピュータシステムに読み込ませ、そのプログラムを実行させることによっても実現できる。プログラムは、磁気テープやCD−ROMなどの記録媒体によってコンピュータに読み込まれ、あるいは、ネットワークを介してコンピュータに読み込まれる。
ネットワーク装置を構成するためのコンピュータは、具体的には、CPU(中央処理装置)と、プログラムやデータを格納するためのハードディスク装置と、主メモリと、キーボードやマウスあるいは入力用スイッチなどの入力装置と、CRTあるいは発光ダイオードを有する表示パネルなどの表示装置と、磁気テープやCD−ROM等の記録媒体を読み取る読み取り装置と、ネットワークとの接続部を構成する通信インターフェースと、から構成されている。通信インターフェースは、物理インターフェース301、401に対応するものである。ハードディスク装置、主メモリ、入力装置、表示装置、読み取り装置及び通信インターフェースは、いずれもCPUに接続している。このコンピュータシステムでは、上述したネットワーク装置を構成するためのプログラムを格納した記録媒体から読み出してハードディスク装置に格納し、あるいはネットワークを介してハードディスク装置に格納し、ハードディスク装置に格納されたプログラムをCPUが実行することにより、上述したネットワーク装置として機能する。
本発明の実施の一形態のネットワークアドレス引継ぎ方法が適用されるネットワークの構成の一例を示す図である。 本発明に基づくネットワーク装置の構成の一例を示すブロック図である。 本発明の実施の一形態のネットワークアドレス引継ぎ方法が適用されるネットワークの構成の別の例を示す図である。
符号の説明
1、2 サーバ
3、4 ルータ
101〜104 クライアント
201、203 LAN(ローカルエリアネットワーク)
202 コネクション
301、401 物理インターフェース
302、402 イーサネット処理部
303、403 仮イーサネット処理部
304、404 IP処理部
305、405 TCP/UDP処理部
306、406 仮IP処理部
307、407 仮TCP/UDP処理部
308、408 コネクション処理部
309、409 サービスプログラム

Claims (7)

  1. 同一のネットワークに接続されそれぞれネットワークインターフェースを有し前記ネットワークインターフェースにはそれぞれ固有のネットワークアドレスが付与されている第1及び第2のネットワーク装置の間でネットワークアドレスを引き継ぐネットワークアドレス引継ぎ方法であって、
    前記第1及び第2のネットワーク装置の一方を稼動系、他方を待機系として冗長構成を構築する段階と、
    前記第1及び第2のネットワーク装置の前記ネットワークインターフェースに対し、同一の仮想ネットワークアドレスを付与する段階と、
    前記第1のネットワーク装置と前記第2のネットワーク装置との間で通信データ転送のためのコネクションを確立する段階と、
    前記待機系であるネットワーク装置が、前記ネットワークから前記仮想ネットワークアドレスを用いて通信データが送信されてきた場合に、前記コネクションを介して前記通信データを前記稼動系であるネットワーク装置に転送する段階と、
    前記コネクションが切断されたことによって、前記待機系であるネットワーク装置が前記稼動系であるネットワーク装置の障害を検知する段階と、
    前記障害を検知した場合に、前記待機系であるネットワーク装置が、前記通信データの転送を取りやめて、自装置内で前記通信データに基づく処理を実行する段階と、
    を有する、ネットワークアドレス引継ぎ方法。
  2. 前記稼動系であるネットワーク装置は、自装置内での障害の発生を検出した場合に、前記コネクションを自発的に切断する、請求項1に記載のネットワークアドレス引継ぎ方法。
  3. 前記ネットワークはイーサネットによるネットワークであり、前記コネクションを介してイーサネットフレームのデータ部分が転送される、請求項1または2に記載のネットワークアドレス引継ぎ方法。
  4. ネットワークに接続するネットワーク装置であって、
    前記ネットワークに対して接続して固有のネットワークアドレスが設定されるとともに、前記ネットワーク内の他のネットワーク装置と共通の仮想ネットワークアドレスが設定される物理インターフェースと、
    前記固有のネットワークアドレスを用いた通信データに対する処理を実行する第1の処理部と、
    前記仮想ネットワークアドレスを用いた通信データに対する処理を実行する第2の処理部と、
    前記他のネットワーク装置との間にコネクションを確立するコネクション処理部と、
    を有し、
    前記ネットワーク装置は前記他のネットワーク装置とともに稼動系及び待機系からなる冗長構成を形成し、
    前記ネットワーク装置が待機系である場合に、前記第2の処理部は、前記仮想ネットワークアドレスを用いた通信データを前記コネクション処理部に渡し、前記コネクション処理部は渡された前記通信データを前記コネクションを介して前記他のネットワーク装置に転送し、前記コネクションの切断が検出されると、前記第2の処理部は前記仮想ネットワークアドレスを用いた通信データを前記コネクション処理部に渡すことなく自ら処理する、ネットワーク装置。
  5. 前記第2の処理部は、前記コネクションを介して前記コネクション処理部が前記通信データを受け取った場合に、前記受け取った通信データに対する処理を実行する、請求項4に記載のネットワーク装置。
  6. 前記ネットワークはイーサネットによるネットワークであり、前記コネクションを介してイーサネットフレームのデータ部分を転送する、請求項1または2に記載のネットワーク装置。
  7. 固有のネットワークアドレスが設定されたネットワークインターフェースを有し、ネットワークに接続されたコンピュータに、
    前記ネットワーク内の他のコンピュータとの間にコネクションを確立する手順と、
    前記コンピュータが稼動系及び待機系からなる冗長構成における待機系として動作している場合に、前記仮想ネットワークアドレスを用いて送信されてきた通信データを前記コネクションを介して前記稼動系であるネットワーク装置に転送する手順と、
    前記コンピュータが前記待機系として動作している場合に、前記コネクションが切断されたことによって、前記稼動系である前記他のコンピュータの障害を検知する段階と、
    前記コンピュータが前記待機系として動作している場合に、前記障害を検知したとき、前記通信データに基づく処理を実行する手順と、
    を実行させるプログラム。
JP2003370436A 2003-10-30 2003-10-30 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム Expired - Fee Related JP4133738B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003370436A JP4133738B2 (ja) 2003-10-30 2003-10-30 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003370436A JP4133738B2 (ja) 2003-10-30 2003-10-30 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2005136690A true JP2005136690A (ja) 2005-05-26
JP4133738B2 JP4133738B2 (ja) 2008-08-13

Family

ID=34647450

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003370436A Expired - Fee Related JP4133738B2 (ja) 2003-10-30 2003-10-30 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4133738B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007208502A (ja) * 2006-01-31 2007-08-16 Nec Infrontia Corp 通信システム、バックアップルータ、その冗長化処理プログラムおよびその冗長化処理方法
US8331220B2 (en) 2007-03-28 2012-12-11 Fujitsu Limited Edge node redundant system
JP2013077983A (ja) * 2011-09-30 2013-04-25 Fujitsu Telecom Networks Ltd サーバ冗長化システム、仮想ルータおよびサーバ
KR20160028250A (ko) * 2014-09-03 2016-03-11 주식회사 케이티 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및 그 방법
JP2016225948A (ja) * 2015-06-03 2016-12-28 富士通株式会社 通信装置、通信システム、及び通信方法
WO2018066061A1 (ja) * 2016-10-04 2018-04-12 三菱電機株式会社 ネットワークシステム、通信制御装置およびアドレス設定方法
US11032098B2 (en) 2018-10-31 2021-06-08 Siemens Aktiengesellschaft Controller cluster and method for operating the controller cluster
JP7495639B2 (ja) 2020-08-28 2024-06-05 日本電信電話株式会社 更新装置、更新方法、および、プログラム

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007208502A (ja) * 2006-01-31 2007-08-16 Nec Infrontia Corp 通信システム、バックアップルータ、その冗長化処理プログラムおよびその冗長化処理方法
US8331220B2 (en) 2007-03-28 2012-12-11 Fujitsu Limited Edge node redundant system
JP2013077983A (ja) * 2011-09-30 2013-04-25 Fujitsu Telecom Networks Ltd サーバ冗長化システム、仮想ルータおよびサーバ
KR20160028250A (ko) * 2014-09-03 2016-03-11 주식회사 케이티 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및 그 방법
KR102251407B1 (ko) * 2014-09-03 2021-05-12 주식회사 케이티 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및 그 방법
JP2016225948A (ja) * 2015-06-03 2016-12-28 富士通株式会社 通信装置、通信システム、及び通信方法
WO2018066061A1 (ja) * 2016-10-04 2018-04-12 三菱電機株式会社 ネットワークシステム、通信制御装置およびアドレス設定方法
JP6345359B1 (ja) * 2016-10-04 2018-06-20 三菱電機株式会社 ネットワークシステム、通信制御装置およびアドレス設定方法
US10652203B2 (en) 2016-10-04 2020-05-12 Mitsubishi Electric Corporation Network system, communication control device and address setting method
US11032098B2 (en) 2018-10-31 2021-06-08 Siemens Aktiengesellschaft Controller cluster and method for operating the controller cluster
JP7495639B2 (ja) 2020-08-28 2024-06-05 日本電信電話株式会社 更新装置、更新方法、および、プログラム

Also Published As

Publication number Publication date
JP4133738B2 (ja) 2008-08-13

Similar Documents

Publication Publication Date Title
US10218782B2 (en) Routing of communications to one or more processors performing one or more services according to a load balancing function
US9379968B2 (en) Redundancy support for network address translation (NAT)
US7894335B2 (en) Redundant routing capabilities for a network node cluster
EP3047631B1 (en) Redundancy network protocol system
US7450498B2 (en) Fault tolerant network architecture
US7898941B2 (en) Method and system for assigning a plurality of MACs to a plurality of processors
US20060256801A1 (en) Gateway system
JP4133738B2 (ja) 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム
JPH09259096A (ja) ネットワーク高信頼化方式及びシステム
JP2007208502A (ja) 通信システム、バックアップルータ、その冗長化処理プログラムおよびその冗長化処理方法
JP4378205B2 (ja) ブレード型ネットワーク中継装置
JPH11313101A (ja) 二重化lanシステムのコネクション再接続の高速化方法及び方式
US11876709B2 (en) Monitoring device, redundancy switching method, redundancy switching program, and network system
JP2009278436A (ja) 通信システム及び冗長構成管理方法
JP2006129348A (ja) 親ノード決定システム及び方法、ノード装置、ならびに、コンピュータプログラム
Chowdhury et al. Dynamic Routing System (DRS): Fault tolerance in network routing
JP2019161257A (ja) パケット転送装置、パケット転送システム、パケット転送プログラムおよびパケット転送方法
KR20050092482A (ko) 통신 시스템에서 프로토콜 전환 방법

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050621

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080425

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080514

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080602

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110606

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120606

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130606

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees