(58)【調査した分野】(Int.Cl.,DB名)
コンピュータ装置が送信するフレームを中継してネットワークに接続された他のネットワーク中継装置に送信し、前記他のネットワーク中継装置から前記ネットワークを介して受信したフレームを前記コンピュータ装置に中継するネットワーク中継装置であって、
前記ネットワークから到着したフレームの到着順を管理すると共に、前記他のネットワーク中継装置によって前記フレームが送信された順序を示す通信番号を、前記他のネットワーク中継装置毎に管理する受信管理テーブルと、
前記ネットワークから1対多の通信方式でフレームが到着すると、前記フレームから取得した通信番号を前記他のネットワーク中継装置毎に前記受信管理テーブルに書込み、前記ネットワークから1対1の通信方式でフレームが到着すると、前記フレームから取得した通信番号、及び前記コンピュータ装置を特定する識別符号を前記他のネットワーク中継装置毎に前記受信管理テーブルに書込んで、前記フレームの着順を前記通信方式毎に管理するフレーム伝送制御部と、を備えた
ネットワーク中継装置。
前記フレーム伝送制御部は、多重化された前記ネットワークの一方のネットワークから先着した前記フレームの到着時刻から所定時間内で到着した次の通信番号のフレームの受信処理を行い、前記所定時間を超えて先着した前記フレームの次の通信番号のフレームが到着した場合には、前記受信管理テーブルの初期化処理を行う
請求項3記載のネットワーク中継装置。
前記重複フレーム廃棄処理部は、前記フレーム伝送制御部が多重化された前記ネットワークの一方のネットワークから先着した初期化フレームによって前記受信管理テーブルの初期化処理を行った後に、所定期間内で他のネットワークから初期化フレームが後着した場合に、先着した初期化フレームと後着した初期化フレームの間で受信した前記フレームと同じ通信番号が付された、他のネットワークから到着した前記フレームの廃棄処理を行う
請求項3記載のネットワーク中継装置。
フレームの送信元となる第1のネットワーク中継装置は、コンピュータ装置が送信するフレームを中継してネットワークに接続された他のネットワーク中継装置に送信し、前記フレームの宛先となる第2のネットワーク中継装置は、前記第1のネットワーク中継装置から前記ネットワークを介して受信したフレームを前記コンピュータ装置に中継するネットワークシステムであって、
前記第1のネットワーク中継装置は、
前記フレームの送信順を示す通信番号を前記フレームに付して送信する第1のフレーム伝送制御部を有し、
前記第2のネットワーク中継装置は、
前記ネットワークから到着したフレームの到着順を管理すると共に、他のネットワーク中継装置によって前記フレームが送信された順序を示す通信番号を、送信元のネットワーク中継装置毎に管理する受信管理テーブルと、
前記ネットワークから1対多の通信方式でフレームが到着すると、前記フレームから取得した通信番号を、送信元のネットワーク中継装置毎に前記受信管理テーブルに書込み、前記ネットワークから1対1の通信方式でフレームが到着すると、前記フレームから取得した通信番号、及び前記コンピュータ装置を特定する識別符号を、送信元のネットワーク中継装置毎に前記受信管理テーブルに書込んで、前記フレームの着順を前記通信方式毎に管理するフレーム伝送制御部と、を備えた
ネットワークシステム。
【発明を実施するための形態】
【0017】
以下、本発明の一実施の形態例(以下、「本実施の形態例」という)について、
図1〜
図9を参照して説明する。本実施の形態例では、2重化したネットワークを用いて行うフレームの伝送処理の信頼性を高めた2重化ネットワークシステム6に適用した例について説明する。この2重化ネットワークシステム6では、コンピュータがプログラムを実行することにより、後述する内部ブロックが連携して行うネットワーク管理方法を実現する。
【0018】
図1は、2重化ネットワークシステム6の構成例を示すネットワーク接続図である。
2重化ネットワークシステム6は、2重化された1系ネットワーク5aと2系ネットワーク5b(以下、「2重化ネットワーク5」と総称する)とを備える。2重化ネットワーク5は、例えば、光ファイバによって配設された広帯域の幹線伝送路であり、高速でフレームを転送することが可能である。また、この2重化ネットワークシステム6は、現用系として用いられるネットワーク中継装置2を備える。2重化ネットワーク中継装置2には、それぞれ1系コンピュータ1a、2系コンピュータ1b(以下、「2重化コンピュータ1」と総称する)が接続される。
【0019】
フレームの送信元となるネットワーク中継装置2は、2重化コンピュータ1が送信するフレームを中継してネットワークに接続された他のネットワーク中継装置2に送信する。一方、フレームの宛先となるネットワーク中継装置2は、送信元のネットワーク中継装置2から2重化ネットワーク5を介して受信したフレームを2重化コンピュータ1に中継することができる。
【0020】
図1に示す2重化ネットワーク5には、それぞれネットワーク接続装置3a,3b(以下、「2重化ネットワーク接続装置3」と総称する)を介して3台のネットワーク中継装置2が設置される。これら3台のネットワーク中継装置2は、例えば、それぞれ駅毎に1台ずつ設置されており、駅間でのフレーム通信は2重化ネットワーク5を介して行われる。ここで、第1の駅に設置されたネットワーク接続装置3aは、1系ネットワーク5aに接続され、ネットワーク接続装置3bは、2系ネットワーク5bに接続される。また、第1の駅に設置されたネットワーク中継装置2には、それぞれ現用系の計算機(コンピュータ)として用いる1系コンピュータ1aと、待機系の計算機として用いる2系コンピュータ1bが接続される。
【0021】
2重化コンピュータ1は、いわゆるホットスタンバイの2重化方式が採られている。すなわち、1系コンピュータ1aは、予め定められたアプリケーションを実行する現用系コンピュータとして動作する。また、2系コンピュータ1bは、そのアプリケーションの実行を待機している待機系コンピュータとして動作する。
【0022】
ホットスタンバイの2重化コンピュータ1では、現用系コンピュータの正常機能が喪失した場合や、現用系コンピュータと2重化ネットワーク接続装置3との間の通信に障害が発生した場合等に以下の動作を行う。すなわち、現用系コンピュータは、待機系コンピュータとなり、それまでの待機系コンピュータが現用系コンピュータとなって、所定のアプリケーションを継続して実行する。
【0023】
なお、他の第2の駅、第nの駅についても、1系コンピュータ1a、2系コンピュータ1b(以下、「2重化コンピュータ1」と総称する)、ネットワーク中継装置2、2重化ネットワーク接続装置3がそれぞれ設置されるため、重複する説明を省略する。また、ネットワーク中継装置2及び2重化ネットワーク接続装置3を接続する支線伝送路、並びにネットワーク中継装置2と2重化コンピュータ1を接続する支線伝送路を「支線」とも略称する。支線は、システムの構成に応じて増減することが可能である。そして、支線内で接続された各装置を「ネットワークノード」と呼ぶ。そして、例えば、誤ってケーブル等を接続した際に、2重化コンピュータ1やネットワーク中継装置2が受信したフレームは廃棄する仕様としてある。
【0024】
次に、ネットワーク中継装置2の詳細な構成例について説明する。
図2は、ネットワーク中継装置2の内部構成の例を示すブロック図である。
【0025】
2重化ネットワーク5は、それぞれ、リング状のネットワークとして構成され、1系ネットワーク5aと2系ネットワーク5bは、互いに独立に同時に動作する。従って、第1の駅に設置された2重化コンピュータ1(現用系)から送出されたフレームは、ネットワーク中継装置2の働きによって、2つの同一のフレームに分離される。分離されたフレームはそれぞれ別個に、2重化ネットワーク5を経由して、例えば、第nの駅に設置された宛先となる2重化コンピュータ1(現用系)へ送信される。ただし、実際に第nの駅に設置された2重化コンピュータ1が受信するのは、先に到着したフレームだけであり、後に到着したフレームは宛先のネットワーク中継装置2によって廃棄される。
【0026】
ここで、ネットワーク中継装置2は、2つのネットワークスイッチ20と、2つの2分岐接続装置10と、を備える。
ネットワークスイッチ20は、例えば、一般のスイッチングハブなどを用いて構成することができる。その基本機能は、2重化ネットワーク5で通信されるフレームからネットワーク中継装置2に接続されている2重化コンピュータ1宛のフレームを取り出し、その取り出したフレームを2重化コンピュータ1へ送信することにある。
【0027】
なお、ネットワークスイッチ20は、他の駅に設置された1系ネットワーク5aから送信された監視フレームに応答して、所定の応答フレームを返送する機能など、一般のスイッチングハブが有していない伝送経路を診断する機能なども有している。
【0028】
また、2分岐接続装置10は、1つの伝送路を2つの伝送路に分岐すると共に、2つの伝送路を1つの伝送路に合流させる機能を有する。すなわち、2分岐接続装置10は、2重化コンピュータ1に接続された伝送路を、1系ネットワーク5aに到る伝送路と2系ネットワーク5bに到る伝送路とに分岐する。また、1系ネットワーク5aからの伝送路と2系ネットワーク5bからの伝送路とを、2重化コンピュータ1に接続された伝送路に合流させる。
【0029】
図3は、ネットワーク中継装置2において、現用系コンピュータと2重化ネットワーク5との間に構成されるフレームの伝送経路の例を示した図である。
図3Aは、1系コンピュータ1aが現用系である場合における動作中の伝送路を示し、
図3Bは、2系コンピュータ1bが現用系である場合における動作中の伝送路を示す。なお、
図3において、太い実線は、動作中の伝送経路を表し、破線は、待機中の伝送経路を表す。
【0030】
図3Aに示すように、1系コンピュータ1aが現用系であるときには、1系コンピュータ1aは、動作中の伝送路により、2分岐接続装置10a、ネットワークスイッチ20a及びネットワーク接続装置3aを介して1系ネットワーク5aに接続される。さらに、1系コンピュータ1aは、2分岐接続装置10a、ネットワークスイッチ20b及びネットワーク接続装置3bを介して2系ネットワーク5bに接続される。
【0031】
また、
図3Bに示すように、2系コンピュータ1bが現用系であるときには、2系コンピュータ1bは、動作中の伝送路により、2分岐接続装置10b、ネットワークスイッチ20a及びネットワーク接続装置3aを介して1系ネットワーク5aに接続される。さらに、2系コンピュータ1bは、2分岐接続装置10b、ネットワークスイッチ20b及びネットワーク接続装置3bを介して2系ネットワーク5bに接続される。
【0032】
以上のように、ネットワークスイッチ20及び2分岐接続装置10の基本機能は、いずれも、2重化コンピュータ1と2重化ネットワーク接続装置3との間の伝送路を切替えることにある。
【0033】
続いて、
図4を参照して、ネットワーク中継装置2のさらに詳細な構成及び機能について説明する。
図4は、ネットワーク中継装置2に含まれるネットワークスイッチ20及び2分岐接続装置10の詳細な構成例を示すブロック図である。
【0034】
上述したように、2分岐接続装置10においては、2重化コンピュータ1に接続された伝送路11は、1系ネットワーク5aに到る伝送路12と2系ネットワーク5bに到る伝送路13とに分岐される。
【0035】
一般に、伝送路は、送信伝送路と受信伝送路がペアになって構成されているが、2分岐接続装置10におけるフレームの送受信処理は、送信伝送路と受信伝送路とでは、一部異なっているので、以下に補足する。
【0036】
2分岐接続装置10において、2重化コンピュータ1からフレームが送信される側の送信伝送路については、伝送路11を、電気的に単純に、伝送路12と伝送路13とに分岐するものであればよい。そうすれば、現用系コンピュータから出力されたフレームは、2分岐接続装置10によって同じフレームが1系ネットワーク5a側の伝送路12にも、2系ネットワーク5b側の伝送路13にも送出されることになる。なお、待機系コンピュータである2系コンピュータ1bからは、1系ネットワーク5a又は2系ネットワーク5bに到るフレームは送出されない。
【0037】
それに対し、2重化コンピュータ1がフレームを受信する側の伝送路については、伝送路11〜13は、ハードウェアの構成として切り離される。これは、伝送路12からのフレームと伝送路13からのフレームとの衝突を回避することを目的としたものである。そこで、2分岐接続装置10には、フレームの衝突を調整するための伝送制御を行う受信フレーム伝送制御部14が設置されている。
【0038】
すなわち、受信フレーム伝送制御部14には、例えば、受信フレームを一時的に記憶するバッファメモリ15が設置される。そして、1系ネットワーク5aからの受信フレーム及び2系ネットワーク5bからの受信フレームは、一旦バッファメモリ15に記憶された後、順次、2重化コンピュータ1に接続された伝送路11に送出される。
【0039】
次に、ネットワークスイッチ20の詳細な構成及び機能について説明する。
ネットワークスイッチ20は、フレーム伝送制御部21、経路切替部22、監視フレーム伝送制御部23、現用系接続スイッチ制御部24、重複フレーム廃棄処理部25、受信管理テーブル26、送信管理テーブル27、バッファメモリ28を備える。
【0040】
フレーム伝送制御部21は、いわゆる一般のスイッチングハブそのものに対応する構成及び機能を有し、1系ネットワーク5a又は2系ネットワーク5bの幹線伝送路の一部を構成する。
【0041】
すなわち、フレーム伝送制御部21には、図示しない複数の通信ポートが設置されている。各通信ポートは、入力伝送路及び出力伝送路の接続端子を有している。フレーム伝送制御部21は、ある通信ポートの入力伝送路から入力したフレームに含まれる宛先アドレス(MACアドレス等)に応じて、適宜、そのフレームを出力する通信ポートを決定する。そして、フレーム伝送制御部21は、入力したフレームを、決定した通信ポートに接続された出力伝送路へ送出する。このとき、フレーム伝送制御部21は、フレームの送信順を示す通信番号をフレームに付して送信する。
【0042】
一方、フレーム伝送制御部21は、2重化ネットワーク5から1対多の通信方式(例えば、ブロードキャスト)でフレームが到着すると、フレームから取得した通信番号を送信元のネットワーク中継装置2毎に受信管理テーブル26に書込む。そして、2重化ネットワーク5から1対1の通信方式(例えば、ユニキャスト)でフレームが到着すると、フレームから取得した通信番号、及びコンピュータを特定する識別符号を送信元のネットワーク中継装置2毎に受信管理テーブル26に書込んで、フレームの着順を通信方式毎に管理する。
【0043】
経路切替部22は、フレーム伝送制御部21に接続されている伝送路21aに接続すべき伝送路を、1系コンピュータ1aに到る伝送路22a及び2系コンピュータ1bに到る伝送路22bから一方を選択し、その接続関係を切替える機能をもつ。伝送路22aには、スイッチSWaが設置され、伝送路22bには、スイッチSWbが設置され、そのうち一方がオンし、他方がオフする。なお、
図4では、スイッチSWaがオン、スイッチSWbがオフしている。
【0044】
スイッチSWa,SWbのオン又はオフの制御は、現用系接続スイッチ制御部24から供給される現用系指示信号によって行われる。ここで、現用系指示信号は、1系コンピュータ1a又は2系コンピュータ1bのいずれかを現用系として指示する信号である。スイッチSWa,SWbは、現用系となっている1系コンピュータ1a又は2系コンピュータ1b側に接続される伝送路22a,22b上のものがオンし、他方がオフする。
【0045】
従って、ネットワークスイッチ20a,20bは、現用系となっている1系コンピュータ1a又は2系コンピュータ1bに到る伝送路を接続する。そして、待機系となっている2系コンピュータ1b又は1系コンピュータ1aに到る伝送路を切断、つまり、閉塞する。
【0046】
なお、これらのスイッチSWa,SWbは、ハードウェア的に伝送路を切断するものに限定されるものではない。例えば、ネットワークスイッチ20にマイクロプロセッサが設置される場合には、マイクロプロセッサのプログラム制御で2重化コンピュータ1との間でフレームの送受信をするか、又は、送受信を停止するかによって、スイッチSWa,SWbのオン又はオフを実現してもよい。
【0047】
監視フレーム伝送制御部23は、2重化コンピュータ1から自装置(ネットワークスイッチ20)宛に送信された監視フレームを受信すると、そのとき自装置が正常に動作している場合には、自装置が正常であることを示す情報を含んだ応答フレームを、送信元の2重化コンピュータ1のそれぞれに返送する。
【0048】
ここで、2重化コンピュータ1から送信される監視フレームには、自身の動作状態を示す情報、すなわち、自身が現用系であるか又は待機系であるかを示す情報が含まれている。現用系接続スイッチ制御部24は、監視フレーム伝送制御部23によって受信された監視フレームからその現用系であるか又は待機系であるかを示す情報を取り出し、その情報に基づき、経路切替部22に対し、現用系指示信号を出力する。現用系指示信号は、例えば、1ビットのフラグ信号であり、“0”の場合、1系コンピュータ1aが現用系、“1”の場合、2系コンピュータ1bが待機系と定める。
【0049】
上述したように2重化ネットワーク5は互いに独立してフレームを伝送する。ここで、現用系の1系コンピュータ1aから送信されたフレームは、1系ネットワーク5a及び2系ネットワーク5bの両方を経由して、宛先となる現用系の1系コンピュータ1aへ届けられる。その場合、宛先の現用系の1系コンピュータ1aは、同じフレームが2重に到着しており、一方のフレームを廃棄する必要がある。
【0050】
重複フレームの廃棄処理は、現用系の1系コンピュータ1a自身が行うことができる。そこで、ネットワーク中継装置2が備えるネットワークスイッチ20a,20bのそれぞれに重複フレーム廃棄処理部25を設け、重複フレーム廃棄処理部25で重複フレームの一方のフレームを廃棄する。重複フレーム廃棄処理部25は、送信元のネットワーク中継装置2が2重化ネットワーク5で同じフレームを送信する場合に、フレーム伝送制御部21から渡されたフレームの内、ネットワークから先着したフレームは受信処理を行ってフレーム伝送制御部21に返す。そして、先着したフレームと同じ通信番号が付されてネットワークから後着したフレームは廃棄処理を行う処理を行う。
【0051】
具体的には、ネットワークスイッチ20aの重複フレーム廃棄処理部25は、フレーム伝送制御部21が受信したフレームから現用系の1系コンピュータ1a宛のフレームを取り出す。そして、同じネットワーク中継装置2内にある他方のネットワークスイッチ20bの重複フレーム廃棄処理部25で同様にして取り出されたフレームと比較する。この比較に際して、後述するようにフレームに付された通信番号が参照される。
【0052】
例えば、受信したフレームと同じフレームが他方のネットワークスイッチ20bの重複フレーム廃棄処理部25で既に取り出されていた場合、すなわち、先着のフレームがあった場合には、その取り出した後着のフレームを廃棄する。これにより、現用系の1系コンピュータ1aは、重複したフレームを受信しなくて済む。
【0053】
上記の処理は、1系コンピュータ1aが待機系であり、2系コンピュータ1bが現用系である場合にも同様に行われる。このときには、上記の処理で現用系及び待機系として説明した処理ブロックを逆に入れ替えればよい。
【0054】
なお、フレームに付される通信番号は、ネットワーク中継装置2にフレームが到着した順で受信管理テーブル26を用いて管理される。この受信管理テーブル26は、2重化ネットワーク5から到着したフレームの到着順を管理すると共に、送信元のネットワーク中継装置2によってフレームが送信された順序を示す通信番号を、送信元のネットワーク中継装置2毎に管理する。そして、受信管理テーブル26は、ネットワークスイッチ20a,20bのそれぞれに設けてあり、2重化ネットワーク5に接続される各駅のネットワーク中継装置2毎に複数ある。
【0055】
フレーム伝送制御部21は、ネットワークスイッチ20aが現用系に設定されると、現用系の受信管理テーブル26に書き込んだ内容を適宜待機系の受信管理テーブル26に同期させる。これにより、ネットワークスイッチ20aが待機系に変更され、ネットワークスイッチ20bが現用系に変更された場合であっても、ネットワークスイッチ20bは、自身が持つ受信管理テーブル26によってフレームの受信状況の管理を引き継ぐことができる。
【0056】
また、2重化コンピュータ1が送信するフレームに付される通信番号は、ネットワーク中継装置2が送信する順に送信管理テーブル27を用いて管理される。送信管理テーブル27は、ネットワークスイッチ20a,20bのそれぞれに設けてあり、2重化ネットワーク5に接続される各駅のネットワーク中継装置2毎に複数ある。
【0057】
フレーム伝送制御部21は、ネットワークスイッチ20aが現用系に設定されると、現用系の送信管理テーブル27に書き込んだ内容を適宜待機系の送信管理テーブル27に同期させる。これにより、ネットワークスイッチ20aが待機系に変更され、ネットワークスイッチ20bが現用系に変更された場合であっても、ネットワークスイッチ20bは、自身が持つ送信管理テーブル27によってフレームの受信状況の管理を引き継ぐことができる。
【0058】
次に、送信元と宛先のネットワーク中継装置2が行うフレームの処理について更に詳細な説明を行う。
図5は、2重化ネットワークシステム6を流れるフレームを管理する例を示す説明図である。ここでは、説明を簡単にするために、フレームの送受信を行うコンピュータはいずれも1系のものとし、第1の駅から第nの駅にフレームを送信するものとする。図中でフレームの流れは太矢印で表している。
図5では、受信管理テーブル26及び送信管理テーブル27の各種のフィールドの内、MACアドレスフィールドと通信番号フィールドだけを取り出して説明する。
【0059】
2重化ネットワークシステム6内の各装置には、それぞれ個別に識別符号が付されている。この識別符号としては、例えば、MACアドレス、IPアドレスがある。このため送信元と宛先のコンピュータは一意に識別され得る。
【0060】
まず、送信元の1系コンピュータ1aがフレームを送信すると、送信元のネットワーク中継装置2が備える送信管理テーブル27には、宛先の1系コンピュータ1aのMACアドレスが書き込まれる。宛先の1系コンピュータ1aの識別符号として用いられるMACアドレスは、送信元のネットワーク中継装置2が予め、識別符号取得プロトコルの一例としてのARP(Address Resolution Protocol)等を用いて取得済みである。
【0061】
そして、宛先の1系コンピュータ1aのMACアドレスに対する通信番号は、送信元のネットワーク中継装置2が送信するフレームの数が“1”増える毎に、“1”ずつ増やして送信管理テーブル27に書き込んでいく。ここで、送信元のネットワーク中継装置2は、既に4つのフレームを中継しており、通信番号フィールドには、次に中継するフレームに付される予定の通信番号“5”が書き込まれているとする。
【0062】
このため、送信元のネットワーク中継装置2が通信番号“5”のフレームを中継すると、通信番号フィールドの値が“5”から“6”に増える。このようにして送信元のネットワーク中継装置2は、宛先の1系コンピュータ1aから中継したフレームの通信番号を管理する。
【0063】
送信元のネットワーク中継装置2は、上述したように分岐したフレームを2重化ネットワーク接続装置3に送信する。このため、1系ネットワーク5aと2系ネットワーク5bには、同じフレームが流れる。その後、1系ネットワーク5aと2系ネットワーク5bを流れたフレームは、それぞれ宛先の2重化ネットワーク接続装置3が受信し、宛先のネットワーク中継装置2に送信する。
【0064】
宛先のネットワーク中継装置2は、宛先の2重化ネットワーク接続装置3のうち、最先に到着したフレームを受信し、その次に到着したフレームを廃棄する。ここで、宛先のネットワーク中継装置2がフレームの受信時に用いる受信管理テーブル26は、送信元の1系コンピュータ1aから受信するフレームを管理するために用いられる。この受信管理テーブル26には、宛先の1系コンピュータ1aのMACアドレスが書き込まれており、受信したフレームの通信番号も書き込まれている。
【0065】
例えば、宛先の1系コンピュータ1aが既に5フレームを受信している場合、宛先の受信管理テーブル26には、通信番号が“
6”と書き込まれている。その後、通信番号が“6”のフレームを受信すると、宛先の受信管理テーブル26の通信番号が“
6”から“
7”に増える。そして、宛先のネットワーク中継装置2は、通信番号が重複していないフレームについては、宛先の1系コンピュータ1aに中継する。
【0066】
次に、フレームの構成例を説明する。
図6は、ネットワーク中継装置2が中継するフレームフォーマットの例を示す説明図である。
【0067】
このフレームフォーマットは、ネットワーク中継装置2の間で送受信するフレームに適用される。フレームフォーマットには、MACアドレスフィールド、IPアドレスフィールド、ユーザ情報フィールド、及び通信番号フィールドが含まれる。なお、これらのフィールド以外の情報も含まれる場合があるが、ここでは説明を省略する。
【0068】
フレームに含まれる各フィールドの詳細な内容については、上述した
図10に示した従来の受信管理テーブルと同様であるが、本実施の形態例に係る受信管理テーブル26では、通信方式に合わせて送受信の通信番号フィールドを追加した点が異なる。なお、送受信の通信番号フィールドの数は、2重化ネットワークシステム6で用いる通信方式の数に応じて増減することが可能であり、「トレーラ」とも呼ばれる。
【0069】
ブロードキャストを用いてフレームを送受信する場合には、例えば、ICMP(Internet Control Message Protocol)、UDP(User Datagram Protocol)が用いられる。また、ユニキャストを用いてフレームを送受信する場合には、例えば、ICMP,UDP,TCP(Transmission Control Protocol)が用いられる。
【0070】
ネットワーク中継装置2は、支線内の2重化コンピュータ1からフレームを受信すると、送受信の通信番号フィールドを加え、2重化ネットワーク接続装置3を介して2重化ネットワーク5にフレームを中継する。このようにフレームに送受信の通信番号フィールドを加える処理を「カプセル化処理」と呼ぶ。逆に、ネットワーク中継装置2は、2重化ネットワーク5から2重化ネットワーク接続装置3を介して受信したフレームから送受信の通信番号フィールドの内容を読み取った後、送受信の通信番号フィールドをフレームから除いて、支線内の2重化コンピュータ1にフレームを中継する。このようにフレームから送受信の通信番号フィールドを除く処理を「デカプセル化処理」と呼ぶ。
【0071】
ここで、送受信の通信番号フィールドは、フレームの最後尾に追加することが望ましい。例えば、フレームの送信中にネットワーク障害が発生した場合には、2重化ネットワーク5の途中にアナライザを入れてフレームの内容を確認する運用が行われている。このアナライザは、一般的にMACアドレスフィールド、IPアドレスフィールド、ユーザ情報フィールドの並び順でフレームから取り出した内容を確認し、プロトコルの解析を行う。このため、アナライザによる解析が行いやすいように送受信の通信番号フィールドの配置する箇所を検討する必要がある。本実施の形態例に係るフレームでは、ユーザ情報フィールドの後ろに送受信の通信番号フィールドを設けることによって、従来から行っているアナライザでの解析やジャーナル機能の実行に影響しないようにしている。
【0072】
図7は、受信管理テーブル26の構成例を示す。
図7Aは、第1の駅から受信するフレームを管理するための第1の受信管理テーブル26aの構成例を示し、
図7Bは、第2の駅から受信するフレームを管理するための第2の受信管理テーブル26bの構成例を示す。
【0073】
ネットワーク中継装置2は、2重化ネットワーク5に接続されたネットワーク中継装置2毎に受信管理テーブル26を持ち、受信したフレームの通信番号を駅毎に管理する。ここでは、受信管理テーブル26の例として、第1の駅に対して設けられる第1の受信管理テーブル26a、第2の駅に対して設けられる第2の受信管理テーブル26bを例に挙げている。この受信管理テーブル26には、着順フィールド、MACアドレスフィールド、IPアドレスフィールド、ユーザ情報フィールド、通信番号フィールドが含まれる。
【0074】
着順フィールドには、送信元のネットワーク中継装置2から受信したフレームの着順が書き込まれる。
MACアドレスフィールドには、ユニキャスト通信が行われる際に、宛先の2重化コンピュータ1に割り振られたMACアドレスが書き込まれる。
IPアドレスフィールドには、ネットワーク中継装置2に割り振られたIPアドレスが書き込まれる。
ユーザ情報フィールドには、フレームがユニキャスト通信又はブロードキャスト通信のうち、いずれの通信方式で送信されたかが書き込まれる。
第1の通信番号フィールドには、ブロードキャストで到着したフレームの通信番号が書き込まれる。
第2の通信番号フィールドには、ユニキャストで到着したフレームの通信番号が書き込まれる。
【0075】
図7Aに示す第1の駅に対して設けられた第1の受信管理テーブル26aでは、ブロードキャストで受信したフレームの通信番号は“1”、“2”、“3”の順に管理され、送信元のネットワーク中継装置2のIPアドレス“x.x.x.1”が書き込まれる。また、ユニキャストで受信した通信番号は、“1”と管理され、送信元のネットワーク中継装置2のIPアドレス“x.x.x.1”と、宛先の1系コンピュータ1aのMACアドレス“00-11-22-33-44-55”が書き込まれる。
【0076】
一方、
図7Bに示す第2の駅に対して設けられた受信管理テーブル26では、ブロードキャストで受信したフレームの通信番号は“1”、“2”の順に管理され、送信元のネットワーク中継装置2のIPアドレス“x.x.x.2”が書き込まれる。また、ユニキャストで受信した通信番号は、“1”、“2”と管理され、送信元のネットワーク中継装置2のIPアドレス“x.x.x.2”と、宛先の1系コンピュータ1aのMACアドレス“00-11-22-33-44-66”が書き込まれる。このように通信方式に合わせて通信番号を駅(ネットワーク中継装置2)毎に個別に管理している。このため、宛先のネットワーク中継装置2に対してブロードキャスト又はユニキャストでフレームを送信したネットワーク中継装置2がどれであるか容易に判別し、着順も管理できる。これにより、フレームの抜けや重複受信を確実に防ぐことができる。
【0077】
次に、フレームの受信状態を確認するための判断処理について説明する。
図8は、フレームの受信状態を示す概念図である。
宛先のネットワーク中継装置2は、
図6に説明したようにフレームに付された通信番号をフレーム毎に管理している。ここで、通信番号は、所定の範囲の値をサイクリックに使用する。ただし、オール0となる値は、受信管理テーブル26に書き込まれた通信番号の初期化に用いるため、フレームには付されない。
【0078】
ネットワーク中継装置2が備えるフレーム伝送制御部21は、2重化ネットワーク5から受信した2つのフレームの先着受信及び後着廃棄を行うために、以下の計算を行う。なお、上述したように宛先のネットワーク中継装置2が管理する通信番号は、次にフレームを受信する際にフレームに付されているであると予想される通信番号が付されている。
【0079】
(1)(宛先のネットワーク中継装置2が管理する通信番号)−(フレームに付された通信番号)=0
この条件は、図中の値27aに該当する。このとき、フレームは正常に先着受信されているため、ネットワーク中継装置2は、支線の2重化コンピュータ1にフレームを中継する。
【0080】
(2)(宛先のネットワーク中継装置2が管理する通信番号)−(フレームに付された通信番号)<所定値
この条件は、0より大きく所定値までの範囲27bに該当する。この所定値は、通信番号の最大値より小さいものとする。このとき、先着したフレームの通信番号は、後着したフレームの通信番号よりも大きいため、ネットワーク中継装置2は、本来後から受信すべきフレームが先着したことが分かる。このような状態を「フレーム抜け」と呼ぶ。このため、ネットワーク中継装置2は、上記の(1)の条件に該当するまでバッファメモリ28に受信したフレームを保持する。
【0081】
(3)(宛先のネットワーク中継装置2が管理する通信番号)−(フレームに付された通信番号)≧所定値
この条件は、所定値から最大値までの範囲27cに該当する。このとき、ネットワーク中継装置2は、1系ネットワーク5a又は2系ネットワーク5bのいずれかで受信してバッファメモリ28に保持しておいたフレームに対して、他の系のネットワークからフレームを受信するまで待機する。このため、受信したフレームは、支線の2重化コンピュータ1に中継しない。
【0082】
なお、送信元のネットワーク中継装置2が初めてフレームを送信する場合には、フレームの通信番号にオール0を付して、宛先のネットワーク中継装置2が管理する通信番号の初期化を行う。また、送信元と宛先のネットワーク中継装置2の間で所定期間を超えて通信が行われなくなった場合にも、受信管理テーブル26で管理していた通信番号の初期化を行う。
【0083】
次に、フレームをバッファリングする処理について説明する。
上述したように宛先のネットワーク中継装置2は、既に受け取ったフレームの通信番号に対して、新たに受け取ったフレームの通信番号が連番でない場合には、通信番号が連番となるフレームを受け取るまで、フレームを保持し続ける。このような動作を「バッファリング」と呼ぶ。
【0084】
ネットワーク中継装置2は、バッファリングを行って以下の動作を制御する。
(1)フレーム抜けが発生した場合に、該当するフレームと共に、後続のフレームも保持する。
(2)他の系から抜けていた通信番号のフレームを受信すると、このフレームを支線内の2重化コンピュータ1に中継する。さらに、バッファリングしていたフレームも中継する。
(3)他の系から受信したフレームの通信番号が既にバッファリングしているフレームの通信番号と同一であると、2重化ネットワーク5では共にフレームが抜けたと判断する。そして、バッファリングしているフレームの通信番号以降のフレームを支線内の2重化コンピュータ1に中継する。
(4)他の系からフレームを受信しなかった場合には、バッファリングしていたフレームを支線内の2重化コンピュータ1に中継する。このとき、バッファリング待ちタイマの監視を行う。ここで、送信元と宛先のネットワーク中継装置2の間で起こりえる最大の遅延時間をバッファリング待ちタイマとして管理している。このバッファリング待ちタイマとしては、例えば、7ミリ秒の値が用いられるが、2重化ネットワーク5の特性に応じて任意の値を設定してよい。
(5)バッファリング数が制限値を超えた場合には、バッファリングしていたフレームを支線内の2重化コンピュータ1に中継する。
【0085】
次に、通信番号を初期化するかどうかを判断する処理について
図9と
図10を参照して説明する。
図9は、通信番号の初期化フレームのギャップタイムと廃棄処理を行う処理の例を示す説明図である。
図9Aは、2重化ネットワーク5を用いて同一フレームを受信する際の問題点を示し、
図9Bは、この問題点を解消する方法について示している。
【0086】
始めに、
図9Aを参照しながら2重化ネットワーク5からフレームを受信する際の問題点について説明する。
宛先のネットワーク中継装置2は、1系ネットワーク5aから通信番号が“101”、“102”の順にフレームを受信した後、初期化フレームを受信したことにより、通信番号を初期化している。この初期化フレームは、送信元のネットワーク中継装置2の起動に伴って送信元のネットワーク中継装置2から送信されるものである。そして、1系ネットワーク5aから通信番号が“1”、“2”の順にフレームを受信している。
【0087】
しかし、このネットワーク中継装置2は、1系ネットワーク5aから通信番号が“1”、“2”のフレームを受信する間に、2系ネットワーク5bから通信番号が“101”のフレームを受信している。さらに、1系ネットワーク5aから通信番号が“2”のフレームを受信した後、2系ネットワーク5bから通信番号が“102”のフレームを受信している。ここで、2系ネットワーク5bから受信した通信番号が“101”、“102”のフレームは、既に1系ネットワーク5aから受信したフレームであるため、このまま支線内の2重化コンピュータ1に中継すると、2重化コンピュータ1は同じフレームを重複して受信してしまう。
【0088】
また、ネットワーク中継装置2は、2系ネットワーク5bから通信番号が“102”のフレームを受信した後、2系ネットワーク5bから初期化フレームを受信しており、通信番号の初期化を行っている。このため、通信番号は再び初期化され、2系ネットワーク5bから受信した通信番号が“1”、“2”のフレームを2重化コンピュータ1に中継してしまう。このとき、2重化コンピュータ1は、通信番号が“1”、“2”のフレームを重複受信することにより、2重化コンピュータ1の処理に影響が出る可能性がある。
【0089】
このため、
図9Bに示すように、2重化ネットワーク5からフレームを受信する処理を変更した。つまり、フレーム伝送制御部21は、2重化ネットワーク5の一方のネットワークから先着したフレームの到着時刻から所定時間内で到着した次の通信番号のフレームの受信処理を行う。一方、所定時間を超えて先着したフレームの次の通信番号のフレームが到着した場合には、受信管理テーブル26の初期化処理を行うようにしている。
【0090】
また、重複フレーム廃棄処理部25は、フレーム伝送制御部21が2重化ネットワーク5の1系ネットワーク5aから先着した初期化フレームによって受信管理テーブル26の初期化処理を行った後に、所定期間内で2系ネットワーク5bから初期化フレームが後着した場合に、先着した初期化フレームと後着した初期化フレームの間で受信したフレームと同じ通信番号が付された、2系ネットワーク5bから到着したフレームの廃棄処理を行う。
【0091】
具体的には、まず、宛先のネットワーク中継装置2は、1系ネットワーク5aから通信番号が“101”のフレームを受信した直後に、2系ネットワーク5bから通信番号が“102”のフレームを受信したとする。ここで、1系ネットワーク5aから次のフレームを受信するまでの経過時間が、例えば130ミリ秒以上であるとする。このとき、宛先のネットワーク中継装置2は、1系ネットワーク5aから受信した初期化フレームに基づいて通信番号の初期化を行う。そして、この初期化を行ってから128ミリ秒以内に1系ネットワーク5aから受信した通信番号が“1”、“2”のフレームを正常なフレームとして2重化コンピュータ1に中継する。
【0092】
一方、2系ネットワーク5bから受信するフレームが、最後に受信したフレームから130ミリ秒以上を経過すると、2系ネットワーク5bから受信した初期化フレームは廃棄する。このように後着した初期化フレームを廃棄すれば、先着した初期化フレームに初期化されたにもかかわらず、すぐ後に再び初期化されることを防ぐことができる。
【0093】
また、既に1系ネットワーク5aから受信したフレームと同じ通信番号である2系ネットワーク5bから受信した“1”、“2”のフレームについても廃棄する。これにより、通信番号の初期化を行った後に、既に2重化コンピュータ1に中継したフレームを重複して中継することがなくなる。
【0094】
以上説明した一実施の形態例に係る2重化ネットワークシステム6によれば、宛先のネットワーク中継装置2が2重化ネットワーク5から受信するフレームの通信番号を通信方式毎に管理する。このため、送信元のネットワーク中継装置2は、ブロードキャストで送信したフレームの送信通信番号を管理する。一方、宛先のネットワーク中継装置2は、ユニキャストで受信したフレームの受信通信番号と、2重化コンピュータ1のMACアドレスを管理してフレームを中継する2重化コンピュータ1を特定している。このため、ユニキャストとブロードキャストが混在したフレームが到着しても、宛先のネットワーク中継装置2は、正しくフレームが受信したことを識別することができる。
【0095】
また、ネットワーク中継装置2は、2重化ネットワーク5に2重化ネットワーク接続装置3を介して接続される全てのネットワーク中継装置2毎に受信管理テーブル26を作成しておく。このため、2重化ネットワーク5から受信したフレームの送信元であるネットワーク中継装置2について個別にフレームの通信番号を管理することができる。
【0096】
また、ネットワーク中継装置2は、所定時間を超えて先着したフレームの次の通信番号のフレームが到着した場合には、受信管理テーブル26の初期化処理を行うことにより、フレームの抜けが発生したままバッファリングし続けないようにする。このため、バッファメモリ28の容量を抑えることができる。
【0097】
また、ネットワーク中継装置2は、送信するフレームの先頭から宛先のコンピュータに付されるMACアドレス、IPアドレス、ユーザ情報、通信番号の順にフィールドを配置する。これにより、2重化ネットワーク5の通信状況を、アナライザを用いて解析する際に、アナライザの解析範囲を一般的なフィールドの並びに従わせることができる。
【0098】
なお、上述した一実施の形態例に係る2重化ネットワークシステム6では、2重化ネットワーク5に適用した例を説明したが、1本のネットワークだけで構成してあってもよい。また、2重化コンピュータ1,2重化ネットワーク接続装置3も現用系と待機系で構成したが、現用系だけの構成としてもよい。
【0099】
また、上述した2重化ネットワークシステム6は、駅間のフレーム通信だけでなく、遠隔地のサーバがクライアントに対してフレームを送信したり、処理速度の異なるコンピュータが共に処理を行ったりする場合にも有効である。
【0100】
また、1対多の通信方式の例としてブロードキャストに適用した例を説明したが、マルチキャスト、エニーキャストに適用していてもよい。また、2重化ネットワーク5のネットワーク・トポロジーは、リング型で構成したが、メッシュ型、2重化されたバス型ネットワーク、2重化されたスター型等の各種の接続形態を採用することもできる。
【0101】
また、カプセル化処理及びデカプセル化処理は、2重化ネットワークシステム6だけでなく、VLAN(Virtual Local Area Network)等の各種のネットワークシステムに適用することも可能である。
【0102】
また、上述した実施の形態例における一連の処理は、ハードウェアにより実行することができるが、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが専用のハードウェアに組み込まれているコンピュータ、又は各種の機能を実行するためのプログラムをインストールしたコンピュータにより、実行可能である。例えば汎用のパーソナルコンピュータ等に所望のソフトウェアを構成するプログラムをインストールして実行すればよい。
【0103】
また、上述した実施の形態例の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給してもよい。また、そのシステムあるいは装置のコンピュータ(又はCPU等の制御装置)が記録媒体に格納されたプログラムコードを読み出し実行することによっても、本実施の形態例と同様の機能が実現されることは言うまでもない。
【0104】
この場合のプログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0105】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態例の機能が実現される。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行う。その処理によって上述した実施の形態例の機能が実現される場合も含まれる。
【0106】
また、本発明は上述した実施の形態例に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。