JPWO2006072996A1 - ノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラム - Google Patents

ノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラム Download PDF

Info

Publication number
JPWO2006072996A1
JPWO2006072996A1 JP2006550573A JP2006550573A JPWO2006072996A1 JP WO2006072996 A1 JPWO2006072996 A1 JP WO2006072996A1 JP 2006550573 A JP2006550573 A JP 2006550573A JP 2006550573 A JP2006550573 A JP 2006550573A JP WO2006072996 A1 JPWO2006072996 A1 JP WO2006072996A1
Authority
JP
Japan
Prior art keywords
node
failure
master node
priority
control 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
JP2006550573A
Other languages
English (en)
Other versions
JP4621212B2 (ja
Inventor
栃尾 祐治
祐治 栃尾
明生 遠藤
明生 遠藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2006072996A1 publication Critical patent/JPWO2006072996A1/ja
Application granted granted Critical
Publication of JP4621212B2 publication Critical patent/JP4621212B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/423Loop networks with centralised control, e.g. polling

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

擬似マスターノードである各ノード(201〜206)が、リング型ネットワークに接続されたノードの一方のポート(211〜216)側でおこなわれるユーザデータの中継をブロックし、ノードをマスターノードに設定する優先順位に係る情報を含んだヘルスパケット(H1〜H6)を送信し、そのヘルスパケット(H1〜H6)を受信した場合、または、他のノード(201〜206)の優先順位に係る情報を含んだヘルスパケット(H1〜H6)を受信した場合に、その優先順位に係る情報に基づいてノード(201〜206)をマスターノードに設定するか否かを判定する。

Description

本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムに関し、特に、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムに関する。
近年、イーサネット(登録商標)技術をリング型ネットワークに適用することによりデータの伝送を効率的におこなうことができるようになってきている。このリング型ネットワークにおいては、パケットの送信経路がループ状になるため、リング型ネットワークに属するノードのうち、あらかじめマスターノードとして定められたノードがリングの一方のポートにおけるユーザデータの中継を論理的にブロックすることにより、パケットがネットワークを回り続けるループ現象の発生を防止する。ここで、ノードとは、ネットワークに接続されるコンピュータやハブ、ルータなどのネットワーク機器である。
また、リング型ネットワークのある箇所に障害が発生した場合には、マスターノードが、ブロックしていたポートを開放することによりパケットの通信再開をすばやくおこなうEthernet Automatic Protection Switching(EAPS)(Ethernetは登録商標)の技術が開示されている(非特許文献1を参照。)。
図15は、この従来のEAPSの技術を説明する図である。図15の例では、6つのノード101〜106によりリング型ネットワークが構成され、マスターノード101(図中、マスターノードは記号「M」で表されている。)が1つ設定されている。そして、このマスターノード101はノード102側のポート111を論理的にブロックしている。
たとえば、このリング型ネットワークのリンクに障害12が発生したものとする(状態1)。その場合、マスターノード101はブロックしていたポート111を開放し、各ノード101〜106間で通信がおこなえるようにする(状態2)。
そして、障害12が復旧した場合には、障害12が発生したリンクに接続されているノード104およびノード105は、それぞれ障害12側のポート114,115を論理的にブロックすることにより、ループ現象が発生するのを防止する(状態3)。
その後、ノード104およびノード105は、マスターノード101に対して障害12が復旧したことを通知するパケットを送信し、ブロックしていたポート114,115を開放する。また、ノード104またはノード105により送信されたパケットを受信したマスターノード101は、再度ポート111を論理的にブロックし、ループ現象が発生するのを防止する(状態4)。
ところが、このEAPSの技術では、障害が発生した際、および、その障害が復旧した際に、2回の通信断が発生する問題があった。すなわち、障害が発生した際と、その障害が復旧した際とで、ブロックされたポートが異なるため、各ノード101〜106は経路情報を2回学習する必要があった。
そのため、経路情報の学習回数を1回に減らすデータ中継方法が開示されている(特許文献1を参照。)。図16は、この従来のデータ中継方法を説明する図である。図16の例では、6つのノード131〜136によりリング型ネットワークが構成され、マスターノード131が1つ設定されている。そして、このマスターノード131は、ノード132側のポート141を論理的にブロックしている。
たとえば、このリング型ネットワークのリンクに障害15が発生したものとする(状態5)。その場合、マスターノード131はブロックしていたポート141を開放し、各ノード131〜136間で通信がおこなえるようにする。また、障害15が発生したリンクに接続されているノード134およびノード135は、それぞれ障害15側のポート144,145を論理的にブロックする(状態6)。
そして、障害15が復旧した場合には、ノード134およびノード135は、制御信号をやり取りしていずれか一方のノード134のみをマスターノードとして設定する。もう一方のノード135は、通常のノードに設定され、そのノード135がブロックしていたポート145は開放される(状態7)。この場合、データの中継がブロックされたリンクは障害15の復旧前後で変わらないので、経路情報の学習回数が1回で済むことになる。
また、このデータ中継方法は、ノードに発生した障害に対しても対応することができる。図17は、ノード障害発生時の従来のデータ中継方法を説明する図である。図17では、ノード134に障害16が発生し、ノード133,135がノード134側のポート143,145をブロックしている場合を示している(状態8)。
この場合、障害16が復旧されると、ノード133とノード135とは、ノード134を介して制御信号をやり取りする(状態9)。そして、いずれか一方のノード133のみをマスターノードとして設定し、他方のノード135は、通常のノードに設定され、ポート145が開放される(状態10)。
特願2004−076593号公報 S. Shah and M. Yip, "RFC 3619 - Extreme Network's Ethernet Automatic Protection Switching (EAPS) Version 1", [online], [平成16年11月29日検索],インターネット<URL:http://www.faqs.org/rfcs/rfc3619.html>
しかしながら、上述した従来技術では、リング型ネットワークに属するすべてのノードの立ち上げ時や、発生した障害の復旧時に、マスターノードを効率的に決定するリング型ネットワークを低コストで実現することが難しいという問題があった。
すなわち、図15および図16で説明した従来技術では、リング型ネットワークに属するすべてのノードの立ち上げ時に、あらかじめマスターノードを設定しておく必要があるが、その設定がなされないままノードの立ち上げが実行されると、ループ現象が発生してしまう。
また、図17で説明したデータ中継方法では、ノード134に障害が発生した場合に、復旧したノード134が両隣のノード133,135の交渉を仲介する必要があるため、処理が複雑になるという問題があった。そのため、マスターノードをいかに適切かつ効率的に設定することができるかが重要な問題となってきている。
本発明は、上述した従来技術による問題点を解消するためになされたものであり、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定装置であって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記判定手段によりノードをマスターノードに設定しないと判定された場合に、前記優先順位に係る情報を含んだ制御データの送信を中止することを特徴とする。
また、本発明は、上記発明において、リング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードである場合に、当該ノードが送信した制御データが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンクまたは当該リンクに接続されたノードに障害が発生した場合に、前記判定手段は、当該ノードがマスターノードである状態を維持するよう判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードでない場合に、障害を検出した場合に障害を検出したことをマスターノードに通知する障害検出制御データをさらに送信することを特徴とする。
また、本発明は、上記発明において、前記判定手段は、マスターノードから障害検出制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段により送信された障害検出制御データをマスターノードが受信した際に当該マスターノードにより送信される制御データを受信するごとに、データの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、障害を検出した場合にユーザデータの送信経路に係る情報の再学習を要求する経路情報学習制御データをさらに送信することを特徴とする。
また、本発明は、上記発明において、前記判定手段は、マスターノードから経路情報学習制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段により送信された経路情報学習制御データを受信するごとに、ユーザデータの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノードにより構成されるネットワークシステムであって、前記ノードは、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記ノードはリング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、少なくともデータを中継する機能を有するデータ中継ノードが前記リング型ネットワークを構成するノードとして自ノードに接続されている場合に、当該データ中継ノードまたは当該データ中継ノードと自ノードとを接続しているリンクに発生した障害を検出し、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定方法であって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信工程と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定工程と、を含んだことを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定プログラムであって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手順と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手順と、をコンピュータに実行させることを特徴とする。
本発明によれば、リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信し、送信した優先順位に係る情報を含んだ制御データを受信した場合、または、リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、その優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードをマスターノードに設定しないと判定された場合に、優先順位に係る情報を含んだ制御データの送信を中止することとしたので、不必要な制御データの送信を抑制することができるという効果を奏する。
また、本発明によれば、リング型ネットワークに発生した障害を検出し、障害を検出した場合に、優先順位に係る情報を含んだ制御データを送信することとしたので、障害が発生した場合に、マスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードがマスターノードである場合に、当該ノードが送信した制御データが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することとしたので、効率的に障害の検出をおこなうことができ、障害発生時にマスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンクまたは当該リンクに接続されたノードに障害が発生した場合に、当該ノードがマスターノードである状態を維持するよう判定することとしたので、マスターノードの状態を維持するよう適切かつ効率的に判定をおこなうことができるという効果を奏する。
また、本発明によれば、ノードがマスターノードでない場合に、障害を検出した場合に障害を検出したことをマスターノードに通知する障害検出制御データをさらに送信することとしたので、マスターノードに障害の発生を通知することができ、マスターノードに障害の発生に対して適切な処理を実行させることができるという効果を奏する。
また、本発明によれば、マスターノードから障害検出制御データの受信に応じて送信された制御データを受信した後、優先順位に係る情報を含んだ制御データを受信した場合、または、優先順位に係る情報を含んだ制御データを他のノードから受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードが障害検出制御データを受信する以前に送信した制御データによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができるという効果を奏する。
また、本発明によれば、障害検出制御データをマスターノードが受信した際に当該マスターノードにより送信される制御データを受信するごとに、データの送信経路に係る情報の再学習を開始することとしたので、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができるという効果を奏する。
また、本発明によれば、障害を検出した場合にユーザデータの送信経路に係る情報の再学習を要求する経路情報学習制御データをさらに送信することとしたので、他のノードにユーザデータの送信経路に係る情報の再学習を要求することができ、他のノードに障害の発生に対して適切な処理を実行させることができるという効果を奏する。
また、本発明によれば、マスターノードから経路情報学習制御データの受信に応じて送信された制御データを受信した後、優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、その優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードが経路情報学習制御データを受信する以前に送信した制御データによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができるという効果を奏する。
また、本発明によれば、経路情報学習制御データを受信するごとに、ユーザデータの送信経路に係る情報の再学習を開始することとしたので、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができるという効果を奏する。
また、本発明によれば、少なくともデータを中継する機能を有するデータ中継ノードがリング型ネットワークを構成するノードとして自ノードに接続されている場合に、当該データ中継ノードまたは当該データ中継ノードと自ノードとを接続しているリンクに発生した障害を検出し、障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することとしたので、自ノードをマスターノードに設定するか否かを判定する機能をもたないデータ中継ノードがリング型ネットワークに含まれている場合でも、マスターノードを適切かつ効率的に設定することができるという効果を奏する。
図1は、リング型ネットワークの立ち上げ時のノード設定処理の概念を説明する図である。 図2は、リンク障害発生時のノード設定処理の概念を説明する図である。 図3は、ノード障害発生時のノード設定処理の概念を説明する図である。 図4は、ヘルスパケット未検出時のノード設定処理の概念を説明する図である。 図5は、本実施例に係るデータ伝送装置30の機能構成を示す図である。 図6は、擬似マスターノードのヘルスパケットの送受信許可処理を説明する図である。 図7は、マスターノードの強制設定処理について説明する図である。 図8は、データ伝送装置30以外のノードを含む場合のノード設定処理を説明する図である。 図9は、ノードの状態遷移を説明する図である。 図10は、擬似マスターノード遷移処理の処理手順を示すフローチャートである。 図11−1は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(1)である。 図11−2は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(2)である。 図12は、マスターノードをトランジットノードに遷移させる遷移処理の処理手順を示すフローチャートである。 図13は、擬似マスターノードがトラップパケットおよびフラッシュパケットを送信する場合のヘルスパケットの送受信許可処理を説明する図である。 図5に示したデータ伝送装置30となるコンピュータのハードウェア構成を示す図である。 図15は、従来のEAPSの技術を説明する図である。 図16は、従来のデータ中継方法を説明する図である。 図17は、ノード障害発生時の従来のデータ中継方法を説明する図である。
符号の説明
101〜106,131〜136,201〜206 ノード
12,15,16,22 障害
111,114,115,141,143,145,211〜216 ポート
23 データ中継ノード
30 データ伝送装置
31a,31b ポート
32 パケット送受信部
33 記憶部
33a 自ノード情報
33b 他ノード情報
33c 経路情報
34 マスターノード処理実行部
35 トランジットノード処理実行部
36 経路情報学習処理部
37 イベント検出部
38 擬似マスターノード処理実行部
38a ポートブロック処理部
38b ヘルスパケット送信処理部
38c ノード設定部
39 制御部
40 ディセーブル状態
41 擬似マスターノード
42 マスターノード
43 トランジットノード
以下に、本発明に係るノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
まず、本発明に係るノード設定処理の概念について説明する。図1は、リング型ネットワークの立ち上げ時のノード設定処理の概念を説明する図である。図1の例では、6つのノード201〜206によりリング型ネットワークが構成される場合が示されている。そして、各ノード201〜206は、隣り合う2つのノード201〜206に接続される2つのポートを有している。
このノード設定処理においては、リング型ネットワークの立ち上げ時に、各ノード201〜206が、擬似マスターノードと呼ばれる状態に遷移する(図中、擬似マスターノードは記号「擬M」で表されている。)。
この擬似マスターノードは、ユーザデータのパケット中継を一方のポート211〜216においてブロックするとともに、もう一方のポートからヘルスパケットH1〜H6を送信する(状態11)。なお、ブロックするポート211〜216は、あらかじめ設定しておいてもよいし、ランダムに決定することとしてもよい。
ここで、ヘルスパケットH1〜H6とは、ノード201〜206が、リング型ネットワークに障害があるか否かを確認するために送信する制御パケットである。リング型ネットワークに障害がない場合には、ノード201〜206は、ヘルスパケットH1〜H6を送信したポートの反対側のポートにおいて、送信したヘルスパケットH1〜H6を受信することになる。
各ノード201〜206は、ヘルスパケットH1〜H6を送信する際に、ノード201〜206をマスターノードに設定する場合のノード201〜206の優先順位の情報をヘルスパケットH1〜H6に含めて送信する。この優先順位は、あらかじめ各ノード201〜206に割り当てておいてもよいし、ノード201〜206に割り当てられているMACアドレスを優先順位を表すものとして利用することとしてもよい。
そして、各ノード201〜206は、他のノード201〜206により送信されたヘルスパケットH1〜H6を受信すると、ヘルスパケットH1〜H6に含まれる優先順位の情報を取得し、取得した優先順位の情報と自ノード201〜206の優先順位の情報とを比較する。
他のノード201,204により送信されたヘルスパケットH1,H4に含まれる優先順位の方が高い場合には、ヘルスパケットH1,H4を受信したノード206,203は、ブロックしていたポート216,213を開放し、ユーザデータのパケット中継を可能とするトランジットノード(図中、トランジットノードは記号「T」で表されている。)に自ノードの状態を遷移させる(状態12)。
ここで、優先順位は、同一の優先順位のものがないように設定されるので、ヘルスパケットH1〜H6が各ノード201〜206により伝送されるにつれ、1つのノード201以外はすべてトランジットノードに遷移し、各ノード202〜205によりブロックされていたポート212〜216が開放される(状態13)。そして、ノード202〜206がトランジットノードに遷移した場合には、ヘルスパケットの送信を停止する。
このようにして、擬似マスターノードとして最終的に残ったノード201は、自ノードが送信したヘルスパケットH1を受信するようになる。そして、各ノード201〜206は、自ノードが送信したヘルスパケットH1〜H6を受信した場合に、自ノードの状態をマスターノード(図中、マスターノードは記号「M」で表されている。)に遷移する処理をおこなう(状態14)。
図2は、リンク障害発生時のノード設定処理の概念を説明する図である。図2の例では、ノード201がマスターノードとして設定され、ポート211を介したユーザデータのパケット中継をブロックしている場合を示している。また、ノード203とノード204とを接続しているリンクに障害22が発生したものとする(状態15)。
この場合、障害22が発生したリンクに接続されているノード203,204は、障害22の発生を検出し、自ノード203,204を擬似マスターノードとして設定するとともに、障害22が発生したリンク側のポート213,214をブロックする。
さらに、ノード203,204は、ポート213,214の反対側のポートから障害22が発生したことをマスターノードであるノード201に通知するトラップパケットT3,T4を送信する(状態16)。
マスターノードであるノード201は、このトラップパケットT3,T4の少なくとも一方を受信すると、自ノード201の状態をトランジットノードに遷移させ、ブロックしていたポート211を開放する。
一方、各ノード203,204は、トラップパケットT3,T4の送信後、ヘルスパケットH3,H4の送信をおこない、もう一方のノード203,204から送信されたヘルスパケットH3,H4を受信するのを待ち受ける(状態17)。
そして、もう一方のノード203,204により送信されたヘルスパケットH3,H4を受信した場合には、各ノード203,204は、図1で説明したノード設定処理と同様にして、ヘルスパケットH3,H4に含まれる優先順位の情報に基づき、自ノード203,204をマスターノードとするのか、トランジットノードとするのかを判定する処理をおこなう。
図2の例では、ノード203がマスターノードとなり、ノード204がトランジットノードとなる場合が示されている(状態18)。これは、ノード203の優先順位がノード204の優先順位よりも高く設定されていることを示している。
障害22が復旧した場合には、ノード203がそのまま継続してマスターノードとして機能する。したがって、障害22の復旧後にあらためてマスターノードを設定する処理は不要である。
また、このノード設定処理は、リンク障害の発生に対処できるだけでなく、ノード障害の発生にも対処することができる。図3は、ノード障害発生時のノード設定処理の概念を説明する図である。
図3の例では、ノード201がマスターノードとして設定され、ユーザデータのパケット中継をポート211がブロックしている場合を示している。また、この例ではノード204に障害が発生したものとする(状態19)。
この場合、障害が発生したノード204の両脇のノード203,205が障害の発生を検出して、障害が発生したノード204側のポート213,215をブロックする。そして、ノード203,205は、障害が発生したことをマスターノード201に通知するトラップパケットT3,T5を送信する(状態20)。
その後、トラップパケットT3,T5の少なくとも一方を受信したマスターノード201は、自ノードをトランジットノードに遷移させ、ブロックしていたポート211を開放する。一方、ノード203,205は、トラップパケットT3,T5の送信後、ヘルスパケットH3,H5の送信をおこない、もう一方のノード203,205から送信されたヘルスパケットH3,H5を受信するのを待ち受ける(状態21)。
そして、もう一方のノード203,205により送信されたヘルスパケットH3,H5を受信した場合には、各ノード203,205は、図1で説明したノード設定処理と同様にして、ヘルスパケットH3,H5に含まれる優先順位の情報に基づき、自ノード203,205をマスターノードとするのか、トランジットノードとするのかを判定する処理をおこなう。
図3の例では、ノード203がマスターノードとなり、ノード205がトランジットノードとなる場合が示されている(状態22)。これは、ノード203の優先順位がノード205の優先順位よりも高く設定されていることを示している。
ノード204の障害が復旧した場合には、ノード204は一旦擬似マスターノードとなる。そして、一方のポート214をブロックし、ヘルスパケットH4を送信する(状態23)。
また、マスターノードであるノード203は、定期的にヘルスパケットを送信しているため、ノード204は、そのヘルスパケットを受信すると、優先順位の比較によりトランジットノードに遷移する(状態24)。
また、マスターノードは、自ノードが送信したヘルスパケットが一定時間が経過しても戻ってこない場合に、自ノードを擬似マスターノードに遷移させる。図4は、ヘルスパケット未検出時のノード設定処理の概念を説明する図である。
図4の例では、ノード201がマスターノードとして設定され、ユーザデータのパケット中継をポート211においてブロックするとともに、ヘルスパケットH1を送信した場合を示している(状態25)。
そして、たとえば、ノード204にヘルスパケットだけが伝送できない障害が発生したような場合には、ノード201は、自ノード201が送信したヘルスパケットH1が一定時間が経過しても戻ってこないことにより、自ノードを擬似マスターノードに遷移させる(状態26)。
ここで、ノード204に発生した、状態25に示した障害が復旧され、自ノード201が送信したヘルスパケットH1を受信できるようになった場合には、ノード201は再びマスターノードに遷移する(状態25)。
ノード204に発生した障害が復旧できず、ヘルスパケットを含めたすべての信号が伝送できない場合には、障害が発生したノード204の両隣のノード203,205が、信号を検出しないことにより障害の発生を検出し、自ノード203,205を擬似マスターノードに遷移させることになる。そして、ノード203,205は、障害が発生したノード204側のポート213,215をブロックするとともに、ヘルスパケットH3,H5を送信する(状態27)。
続いて、ノード201は、このヘルスパケットH3,H5を受信すると、自ノード201の状態をトランジットノードに遷移させ、ブロックしていたポート211を開放する(状態28)。これ以降は、図3の状態22、状態23および状態24に示したものと同様の処理がおこなわれ、マスターノードが設定される。
このように、本発明に係るノード設定処理では、ユーザデータの中継ポートをブロックするとともに、ノードをマスターノードに設定する優先順位の情報を含んだヘルスパケットを送信し、そのヘルスパケットを受信した場合、または、他のノードから優先順位の情報を含んだヘルスパケットを受信した場合に、優先順位の情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができる。
つぎに、本実施例に係るデータ伝送装置の機能構成について説明する。図5は、本実施例に係るデータ伝送装置30の機能構成を示す図である。図5に示すように、このデータ伝送装置30は、ポート31a,31b、パケット送受信部32、記憶部33、マスターノード処理実行部34、トランジットノード処理実行部35、経路情報学習処理部36、イベント検出部37、擬似マスターノード処理実行部38および制御部39を有する。
ポート31a,31bは、ユーザデータまたは制御データのパケットを中継するポートである。パケット送受信部32は、ポート31a,31bを介してデータパケットやトラップパケットまたはヘルスパケットなどの各種パケットを送受信する処理をおこなう。
記憶部33は、メモリなどの記憶デバイスである。この記憶部33は、自ノード情報33a、他ノード情報33bおよび経路情報33cを記憶している。自ノード情報33aは、自ノードの優先順位の情報やMACアドレスなどの自ノードに係る情報を記憶したものである。他ノード情報33bは、自ノード以外のノードの優先順位の情報やMACアドレスなどの情報を記憶したものである。
経路情報33cは、パケットの転送先に係る情報を記憶したものである。具体的には、経路情報33cは、パケットの転送先のMACアドレスと、当該MACアドレスが割り当てられたノードが接続されているポートの情報とを対応付けて記憶している。
マスターノード処理実行部34は、自ノードがマスターノードとして設定された場合に、マスターノードがおこなうべき各種処理を実行する。具体的には、マスターノード処理実行部34は、ネットワークにループ現象が発生するのを防止するため、一方のポートにおけるユーザデータのパケット中継をブロックし、また、ヘルスパケットを定期的に送信する処理などをおこなう。
また、マスターノード処理実行部34は、パケットを受信した場合に、その宛先MACアドレスを調べ、経路情報33cを参照して適切なポートからパケットを送信する処理をおこなう。
トランジットノード処理実行部35は、自ノードがトランジットノードとして設定された場合に、トランジットノードがおこなうべき各種処理を実行する。具体的には、トランジットノード処理実行部35は、パケットを受信した場合に、そのMAC宛先アドレスを調べ、経路情報33cを参照して適切なポートからパケットを送信する処理をおこなう。
経路情報学習処理部36は、他のノードから経路情報33cの再学習を要求するフラッシュパケットを受信した場合に、経路情報33cの再学習を実行する。
イベント検出部37は、自ノードの立ち上げや、リンクまたはノードに発生した障害などを検出する処理をおこなう。具体的には、イベント検出部37は、電源投入がなされた場合、あるいは、再起動が実行された場合にそれを検知して、自ノードの立ち上げを検出する。
また、イベント検出部37は、パケットの信号レベルの状態や、他のノードからの応答の有無などの情報に基づいて、自ノードに接続されているリンク、または、そのリンクに接続されている他のノードの障害の検出をおこなう。
障害を検出した場合には、イベント検出部37は、トラップパケットを他のノードに送信する。特に、ノードがマスターノードである場合には、イベント検出部37は、フラッシュパケットを他のノードに送信する処理をおこなう。
さらに、イベント検出部37は、自ノードがマスターノードである場合に、自ノードが送信したヘルスパケットが所定の時間内に自ノードに戻ってくるか否かを調べることにより、ネットワークに発生した障害を検出する。
擬似マスターノード処理実行部38は、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、自ノードを擬似マスターノードとして設定し、擬似マスターノードがおこなうべき各種処理を実行する。この擬似マスターノード処理実行部38は、ポートブロック処理部38a、ヘルスパケット送信処理部38bおよびノード設定部38cを有する。
ポートブロック処理部38aは、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、2つのポートのうち一方のポートでユーザデータのパケット中継をブロックする処理をおこなう。
ここで、自ノードに接続されているリンク、または、そのリンクに接続されている他のノードに発生した障害を検出した場合は、ポートブロック処理部38aは、障害側のポートをブロックする。
ヘルスパケット送信処理部38bは、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、優先順位の情報を含んだヘルスパケットを他のノードに送信する処理をおこなう。
ノード設定部38cは、パケット送受信部32がヘルスパケットを受信した場合に、ヘルスパケットに含まれる優先順位の情報を自ノード情報33aとして記憶している自ノードの優先順位の情報と比較して、自ノードの優先順位が高いか否かを判定する処理をおこなう。
そして、自ノードの優先順位が低い場合には、ノード設定部38cは、自ノードをトランジットノードとして設定する。自ノードの優先順位が高い場合には、ノード設定部38cは、つぎのヘルスパケットの受信を待ち受け、自ノードの優先順位が高いか否かを再度判定する。
自ノードの優先順位よりも高い優先順位の情報を含んだヘルスパケットを受信することなく、自ノードが送信したヘルスパケットを受信した場合には、ノード設定部38cは、自ノードをマスターノードとして設定する。
ところで、図2で説明したように、障害22が発生した場合には、障害22が発生したリンクに接続されているノード203,204が擬似マスターノードに遷移するが、マスターノードであるノード201がトラップパケットT3,T4を受信する以前にヘルスパケットを送信していると、ノード203,204はそれを受信して即座にトランジットノードに遷移してしまうという問題が発生する。
そのため、ノード203,204のパケット送受信部32は、トラップパケットT3,T4をマスターノードであるノード201が受信して、各ノードに記憶された経路情報をクリアするフラッシュパケットをノード201が送信するのを待ち受け、そのフラッシュパケットを受信した後にはじめてヘルスパケットの送受信をおこなう。
図6は、擬似マスターノードのヘルスパケットの送受信許可処理を説明する図である。なお、図6は、図2に示したリンク障害発生時の場合に対応している。図6に示すように、ノード203,204は、障害を検出すると、トラップパケットをマスターノードであるノード201に送信する。
マスターノードであるノード201は、定期的にヘルスパケットを送信しているが、擬似マスターノードであるノード203,204は、トラップパケットに対する応答であるフラッシュパケットを受信するまでは、受信したヘルスパケットを破棄する。
トラップパケットを受信した後にノード203,204が実行する処理は、図2で説明した状態17および状態18の処理と同様である。これにより、ノード203,204が、ヘルスパケットを送信する前にマスターノードにより送信されたヘルスパケットを受信して、即座にトランジットノードに遷移してしまうという問題を解決することができる。
また、各ノードの経路情報学習処理部36は、フラッシュパケットを受信するごとに経路情報33cの再学習をおこなうこととする。これにより、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができる。
図5の説明に戻ると、制御部39は、データ伝送装置30を全体制御する制御部であり、各機能部間のデータの授受などを司る。
なお、本発明に係るノード設定処理は、あるノードをマスターノードとして強制的に設定したい場合にも対処することができる。図7は、マスターノードの強制設定処理について説明する図である。図7の例では、6つのノード201〜206によりリング型ネットワークが構成される場合が示されている。
このマスターノードの設定処理においては、リング型ネットワークの立ち上げ時に、ノード204がマスターノードとして機能するよう、ノード204の優先順位が最も高く設定されている。その他の各ノード201〜203,205,206は、リング型ネットワークの立ち上げ時に、擬似マスターノードと呼ばれる状態に遷移する。
そして、各ノード201〜206は、一方のポート211〜216を用いておこなわれるユーザデータのパケット中継をブロックするとともに、もう一方のポートからヘルスパケットH1〜H6を送信する(状態29)。
そして、各ノード201〜206が他のノード201〜206により送信されたヘルスパケットH1〜H6を受信すると、ヘルスパケットH1〜H6に含まれる優先順位の情報を取得し、取得した優先順位と自ノード201〜206に記憶していた自ノード201〜206の優先順位とを比較する。
この場合、マスターノードであるノード204の優先順位が最も高いため、各ノード201〜203,205,206はトランジットノードに遷移し(状態30,状態31)、最終的にはマスターノードであるノード204が、自ノードが送信したヘルスパケットH4を受信する(状態32)。
このように、あらかじめマスターノードが固定的に設定される場合にも、本発明に係るノード設定処理は対応することができる。
さらに、図1から図4では、すべてのノードが本発明のノード設定処理をおこなうデータ伝送装置30からなるノードであることとしたが、1つのノードが本発明のノード設定処理をおこなうものでなく、単にパケットを中継するデータ中継ノードであっても、本発明に係るノード設定処理は対応することができる。
図8は、データ伝送装置30以外のノードを含む場合のノード設定処理を説明する図である。図8の例では、ノード203がマスターノードとして設定され、ポート213におけるユーザデータのパケット中継をブロックしている場合を示している。また、データ中継ノード23とノード201とを接続しているリンクに障害22が発生したものとする(状態33)。
ここで、ノード201〜205は、図5に示したデータ伝送装置30により実現されるノードであり、データ中継ノード23は、ノード201〜205により構成されるリング型ネットワークと、もう1つのリング型ネットワークとの両方に属し、パケットを中継する機能を有するノードである。
この場合、ノード201は、障害22の発生を検出し、自ノード201を擬似マスターノードに遷移させる。すなわち、ノード201は、障害22が発生した方のポート211をブロックするとともに、トラップパケットT1を送信する(状態34)。
そして、マスターノードであるノード203は、トラップパケットT1を受信すると、トランジットノードに遷移し、ブロックしていたポート213を開放する。一方、擬似マスターノードであるノード201は、ヘルスパケットH1を定期的に送信し、障害22が復旧されるまで擬似マスターノードとして機能する(状態35)。
そして、障害22が復旧された場合には、ノード201は、自ノードが送信したヘルスパケットH1を受信するので、マスターノードに遷移する(状態36)。このように、データ伝送装置30以外のノードを含む場合においても、本発明のノード設定処理はそれに対応することができる。
つぎに、本実施例に係るノード設定処理の処理手順について図9から図12を用いて説明する。図9は、ノードの状態遷移を説明する図であり、図10は、擬似マスターノード遷移処理の処理手順を示すフローチャートである。図10で説明する擬似マスターノード遷移処理は、図9に示した遷移4、遷移5または遷移6の状態遷移に対応するものである。
図9において、ディセーブル状態40とは、ノードがリンクダウンした状態のことである。具体的には、データ伝送装置30の電源が切られたり、データ伝送装置30の再起動が実行されたりした場合、あるいは、ノードが擬似マスターノード41やマスターノード42、あるいは、トランジットノード43として稼動していたが、そのノードが2つの障害を検出した場合(遷移1、遷移2、遷移3)などに、ノードはディセーブル状態に遷移する。
図10に示すように、まず、データ伝送装置30のノード設定部38cは、自ノードの稼動状態を検出する(ステップS101)。そして、ノード設定部38cは、自ノードがディセーブル状態40から立ち上げられたものであるか否かを調べる(ステップS102)。
自ノードがディセーブル状態40から立ち上げられたものである場合には(ステップS102,Yes)、ノード設定部38cは、少なくとも1つのポートがリンクアップしているか否かを調べる(ステップS105)。そして、1つのポートもリンクアップしていない場合には(ステップS105,No)、ステップS101に移行して、それ以後の処理を継続する。
少なくとも1つのポートがリンクアップしている場合には(ステップS105,Yes)、ノード設定部38cは、自ノードの両側のポートをイネーブルにし(ステップS106)、自ノードを擬似マスターノードに設定して(ステップS107)、この擬似マスターノード遷移処理を終了する。このステップS102からステップS107の処理は、図9の遷移4に対応するものである。
ステップS102において、自ノードがディセーブル状態40から立ち上げられたものでない場合には(ステップS102,No)、ノード設定部38cは、自ノードのどちらか一方のポート側に、イベント検出部37により障害が検出されたか否かを調べる(ステップS103)。
障害が検出された場合には(ステップS103,Yes)、ステップS107に移行して、ノード設定部38cは、自ノードを擬似マスターノードに設定し、この擬似マスターノード遷移処理を終了する。ステップS103およびステップS107の処理は、図9の遷移5または遷移6に対応するものである。
障害が検出されなかった場合には(ステップS103,No)、ノード設定部38cは、自ノードがマスターノードであって、送信したヘルスパケットが所定の時間未受信であるか否かを調べる(ステップS104)。
そして、ヘルスパケットが未受信である場合には(ステップS104,Yes)、ステップS107に移行して、ノード設定部38cは、自ノードを擬似マスターノードに設定し、この擬似マスターノード遷移処理を終了する。ヘルスパケットを受信している場合には(ステップS104,No)、ステップS101に移行して、それ以後の処理を継続する。ステップS103、ステップS104およびステップS107の処理は、図9の遷移5に対応するものである。
つぎに、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順について説明する。図11−1および図11−2は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(1)および(2)である。この遷移処理は、図9に示した遷移7および遷移8に対応するものである。
図11−1に示すように、まず、データ伝送装置30のノード設定部38cは、自ノードの両側のポートがリンクアップしており、かつ、自ノードが送信したヘルスパケットを受信したか否かを調べる(ステップS201)。
自ノードの両側のポートがリンクアップしており、自ノードが送信したヘルスパケットを受信した場合には(ステップS201,Yes)、ノード設定部38cは、自ノードをマスターノードに設定し(ステップS204)、この遷移処理を終了する。この処理は、図1で説明したマスターノードの設定処理に対応する。
自ノードの両側のポートがリンクアップしていないか、または、自ノードが送信したヘルスパケットを受信していない場合には(ステップS201,No)、ノード設定部38cは、自ノードの両側のポートがリンクアップしており、かつ、自ノードが強制的にマスターノードとなるよう設定されているか否かを調べる(ステップS202)。
そして、自ノードの両側のポートがリンクアップしており、かつ、自ノードが強制的にマスターノードとなるよう設定されている場合には(ステップS202,Yes)、ステップS204に移行して、ノード設定部38cは、自ノードをマスターノードに設定し、この遷移処理を終了する。この処理は、図7で説明したマスターノードの設定処理に対応する。
自ノードの両側のポートがリンクアップしていないか、あるいは、自ノードが強制的にマスターノードとなるよう設定されていない場合には(ステップS202,No)、ノード設定部38cは、一方のポート側がリンクダウンし、かつ、フラッシュパケットを受信し、かつ、自ノードに割り当てられた優先順位よりも低優先順位のヘルスパケットを受信したか否かを調べる(ステップS203)。
一方のポート側がリンクダウンし、かつ、フラッシュパケットを受信し、かつ、低優先順位のヘルスパケットを受信した場合には(ステップS203,Yes)、ステップS204に移行して、ノード設定部38cは、自ノードをマスターノードに設定し、この遷移処理を終了する。この処理は、図2または図3で説明したマスターノードの設定処理に対応する。また、ステップS201からステップS204の処理は、図9の遷移7に対応するものである。
一方のポート側がリンクダウンしていないか、フラッシュパケットを受信していないか、または、低優先順位のヘルスパケットを受信していない場合には(ステップS203,No)、図11−2に示されるように、ノード設定部38cは、両側のポートがリンクアップしており、かつ、マスターノードからヘルスパケットを受信したか否かを調べる(ステップS204)。
そして、両側のポートがリンクアップしており、かつ、マスターノードからヘルスパケットを受信した場合には(ステップS204,Yes)、ノード設定部38cは、自ノードをトランジットノードに設定し(ステップS208)、この遷移処理を終了する。この処理は、図7で説明したトランジットノードの設定処理に対応する。
両側のポートがリンクアップしていないか、あるいは、マスターノードからヘルスパケットを受信していない場合には(ステップS204,No)、ノード設定部38cは、両側のポートがリンクアップしており、かつ、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS205)。
両側のポートがリンクアップしており、かつ、高優先順位のヘルスパケットを受信した場合には(ステップS205,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図1で説明したトランジットノードの設定処理に対応する。
両側のポートがリンクアップしていないか、または、高優先順位のヘルスパケットを受信していない場合には(ステップS205,No)、ノード設定部38cは、一方のポートがリンクダウンし、かつ、フラッシュパケットを受信し、かつ、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS206)。
そして、一方のポートがリンクダウンし、かつ、フラッシュパケットを受信し、かつ、高優先順位のヘルスパケットを受信した場合には(ステップS206,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図2および図3で説明したトランジットノードの設定処理に対応する。
一方のポートがリンクダウンしていないか、フラッシュパケットを受信していないか、または、高優先順位のヘルスパケットを受信していない場合には(ステップS206,No)、ノード設定部38cは、自ノードがマスターノードとして送信したヘルスパケットの受信タイムアウトが発生し、かつ、別のノードのヘルスパケットを受信したか否かを調べる(ステップS207)。
そして、ヘルスパケットの受信タイムアウトが発生し、かつ、別のノードのヘルスパケットを受信した場合には(ステップS207,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図4で説明したトランジットノードの設定処理に対応する。
ヘルスパケットの受信タイムアウトが発生していないか、または、別のノードのヘルスパケットを受信しない場合には(ステップS207,No)、ステップS201に移行して、それ以降の処理を再度実行する。上記ステップS204からステップS208の処理は、図9に示した遷移8に対応するものである。
つぎに、マスターノードをトランジットノードに遷移させる遷移処理の処理手順について説明する。図12は、マスターノードをトランジットノードに遷移させる遷移処理の処理手順を示すフローチャートである。なお、図12に示す処理は、図9に示した遷移9に対応する。
図12に示すように、まず、データ伝送装置30のノード設定部38cは、マスターノード42である自ノードが、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS301)。
そして、高優先順位のヘルスパケットを受信した場合には(ステップS301,Yes)、ノード設定部38cは、自ノードをトランジットノードに遷移させ(ステップS303)、この遷移処理を終了する。
高優先順位のヘルスパケットを受信していない場合には(ステップS301,No)、ノード設定部38cは、自ノードがトラップパケットを受信したか否かを調べる(ステップS302)。
そして、トラップパケットを受信した場合には(ステップS302,Yes)、ステップS303に移行して、ノード設定部38cは、自ノードをトランジットノードに遷移させ、この遷移処理を終了する。トラップパケットを受信していない場合には(ステップS302,No)、そのままこの遷移処理を終了する。
なお、図6では、マスターノードであるノード201がフラッシュパケットを送信する場合を示したが、擬似マスターノードであるノード203,204がトラップパケットを送信するのに加えて、さらにフラッシュパケットを送信することとしてもよい。
図13は、擬似マスターノードがトラップパケットおよびフラッシュパケットを送信する場合のヘルスパケットの送受信許可処理を説明する図である。図13の場合には、マスターノードであるノード201は、トラップパケットおよびフラッシュパケットを受信したことをノード203,204に通知するACK(Acknowledgement)パケットを送信する。
擬似マスターノードであるノード203,204は、このACKパケットを受信するまでは、受信したヘルスパケットを破棄する。そして、ノード203,204は、ACKパケットを受信してはじめてヘルスパケットの送受信を許可する。
この場合、各ノードの経路情報学習処理部36は、フラッシュパケットを受信するごとに経路情報33cを再学習をおこなうこととする。これにより、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができる。
上述してきたように、本実施例では、データ伝送装置30のポートブロック処理部38aが、リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、ヘルスパケット送信処理部38bが、ノードをマスターノードに設定する優先順位に係る情報を含んだヘルスパケットを送信し、ノード設定部38cが、そのヘルスパケットを受信した場合、または、他のノードの優先順位に係る情報を含んだヘルスパケットを受信した場合に、その優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノード設定部38cによりノードをマスターノードに設定しないと判定された場合に、ヘルスパケット送信処理部38bが、優先順位に係る情報を含んだヘルスパケットの送信を中止することとしたので、不必要なヘルスパケットの送信を抑制することができる。
また、本実施例では、イベント検出部37が、リング型ネットワークに発生した障害を検出し、ヘルスパケット送信処理部38bが、障害が検出された場合に、優先順位に係る情報を含んだヘルスパケットを送信することとしたので、障害が発生した場合に、マスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノードがマスターノードである場合に、イベント検出部37が、当該ノードが送信したヘルスパケットが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することとしたので、効率的に障害の検出をおこなうことができ、障害発生時にマスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンク、または、当該リンクに接続されたノードに障害が発生した場合に、ノード設定部38cが、当該ノードがマスターノードである状態を維持するよう判定することとしたので、マスターノードの状態を維持するよう適切かつ効率的に判定をおこなうことができる。
また、本実施例では、イベント検出部37が、自ノードがトランジットノードである場合に、障害を検出した場合に障害を検出したことをマスターノードに通知するトラップパケットを送信することとしたので、マスターノードに障害の発生を通知することができ、マスターノードに障害の発生に対して適切な処理を実行させることができる。
また、本実施例では、ノード設定部38cが、マスターノードからトラップパケットの受信に応じて送信されたフラッシュパケットを受信した後、優先順位に係る情報を含んだヘルスパケットを受信した場合、または、優先順位に係る情報を含んだヘルスパケットを他のノードから受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードがトラップパケットを受信する以前に送信したヘルスパケットによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができる。
また、本実施例では、経路情報学習処理部36が、トラップパケットをマスターノードが受信した際に当該マスターノードにより送信されるフラッシュパケットを受信するごとに、経路情報33cの再学習を開始することとしたので、障害の発生が検出されるたびに経路情報33cの再学習をおこなうよう、再学習の回数を適切に管理することができる。
また、本実施例では、イベント検出部37が、障害を検出した場合にフラッシュパケットを送信することとしたので、他のノードに経路情報33cの再学習を要求することができ、他のノードに障害の発生に対して適切な処理を実行させることができる。
また、本実施例では、ノード設定部38cが、マスターノードからフラッシュパケットの受信に応じて送信されたACKパケットを受信した後、優先順位に係る情報を含んだヘルスパケットを受信した場合、または、他のノードの優先順位に係る情報を含んだヘルスパケットを受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードがフラッシュパケットを受信する以前に送信したヘルスパケットによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができる。
また、本実施例では、フラッシュパケットを受信するごとに、経路情報学習処理部36が、経路情報33cの再学習を開始することとしたので、障害の発生が検出されるたびに経路情報33cの再学習をおこなうよう、再学習の回数を適切に管理することができる。
また、本実施例では、少なくともデータを中継する機能を有するデータ中継ノード23がリング型ネットワークを構成するノードとして自ノードに接続されている場合に、イベント検出部37が、データ中継ノード23またはデータ中継ノード23と自ノードとを接続しているリンクに発生した障害を検出し、ヘルスパケット送信処理部38bが、障害が検出された場合に、優先順位に係る情報を含んだヘルスパケットを送信することとしたので、自ノードをマスターノードに設定するか否かを判定する機能をもたないデータ中継ノード23がリング型ネットワークに含まれている場合でも、マスターノードを適切かつ効率的に設定することができる。
なお、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図14を用いて、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。図14は、図5に示したデータ伝送装置30となるコンピュータのハードウェア構成を示す図である。
このコンピュータは、ユーザからの入力を受け付ける入力ボタン100、各種情報を出力するLED(Light Emitting Diode)101、メインメモリ102、フラッシュメモリ103、CPU(Central Processing Unit)104および読出し専用メモリ105をバス106で接続して構成される。
そして、読出し専用メモリ105には、データ伝送装置30の機能と同様の機能を発揮するプログラム、つまり、ノード設定プログラム105aが記憶されている。なお、ノード設定プログラム105aは、適宜分散して記憶することとしてもよい。
そして、CPU104が、ノード設定プログラム105aを読出し専用メモリ105から読み出して実行することにより、ノード設定プロセス104aとして機能するようになる。
このノード設定プロセス104aは、図5に示したパケット送受信部32、マスターノード処理実行部34、トランジットノード処理実行部35、経路情報学習処理部36、イベント検出部37、擬似マスターノード処理実行部38および制御部39の各機能部に対応する。
また、フラッシュメモリ103には、自ノード情報103a、他ノード情報103bおよび経路情報103cが記憶される。なお、自ノード情報103a、他ノード情報103bおよび経路情報103cは、図5に示した自ノード情報33a、他ノード情報33bおよび経路情報33cに対応する。
そして、CPU104は、自ノード情報103a、他ノード情報103bおよび経路情報103cをフラッシュメモリ103に記憶するとともに、自ノード情報103a、他ノード情報103bおよび経路情報103cをフラッシュメモリ103から読み出してメインメモリ102に格納し、メインメモリ102に格納された自ノード情報102a、他ノード情報102bおよび経路情報102cに基づいて各種データ処理を実行する。
ところで、ノード設定プログラム105aは、必ずしも最初から読出し専用メモリ105に記憶させておく必要はない。たとえば、フレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータに接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶しておき、コンピュータがこれらから各プログラムを読み出して実行するようにしてもよい。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示したデータ伝送装置30の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、データ伝送装置30の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、データ伝送装置30にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
以上のように、本発明に係るノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムは、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することが必要なリング型ネットワークシステムに有用である。
本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムに関し、特に、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムに関する。
近年、イーサネット(登録商標)技術をリング型ネットワークに適用することによりデータの伝送を効率的におこなうことができるようになってきている。このリング型ネットワークにおいては、パケットの送信経路がループ状になるため、リング型ネットワークに属するノードのうち、あらかじめマスターノードとして定められたノードがリングの一方のポートにおけるユーザデータの中継を論理的にブロックすることにより、パケットがネットワークを回り続けるループ現象の発生を防止する。ここで、ノードとは、ネットワークに接続されるコンピュータやハブ、ルータなどのネットワーク機器である。
また、リング型ネットワークのある箇所に障害が発生した場合には、マスターノードが、ブロックしていたポートを開放することによりパケットの通信再開をすばやくおこなうEthernet Automatic Protection Switching(EAPS)(Ethernetは登録商標)の技術が開示されている(非特許文献1を参照。)。
図15は、この従来のEAPSの技術を説明する図である。図15の例では、6つのノード101〜106によりリング型ネットワークが構成され、マスターノード101(図中、マスターノードは記号「M」で表されている。)が1つ設定されている。そして、このマスターノード101はノード102側のポート111を論理的にブロックしている。
たとえば、このリング型ネットワークのリンクに障害12が発生したものとする(状態1)。その場合、マスターノード101はブロックしていたポート111を開放し、各ノード101〜106間で通信がおこなえるようにする(状態2)。
そして、障害12が復旧した場合には、障害12が発生したリンクに接続されているノード104およびノード105は、それぞれ障害12側のポート114,115を論理的にブロックすることにより、ループ現象が発生するのを防止する(状態3)。
その後、ノード104およびノード105は、マスターノード101に対して障害12が復旧したことを通知するパケットを送信し、ブロックしていたポート114,115を開放する。また、ノード104またはノード105により送信されたパケットを受信したマスターノード101は、再度ポート111を論理的にブロックし、ループ現象が発生するのを防止する(状態4)。
ところが、このEAPSの技術では、障害が発生した際、および、その障害が復旧した際に、2回の通信断が発生する問題があった。すなわち、障害が発生した際と、その障害が復旧した際とで、ブロックされたポートが異なるため、各ノード101〜106は経路情報を2回学習する必要があった。
そのため、経路情報の学習回数を1回に減らすデータ中継方法が開示されている(特許文献1を参照。)。図16は、この従来のデータ中継方法を説明する図である。図16の例では、6つのノード131〜136によりリング型ネットワークが構成され、マスターノード131が1つ設定されている。そして、このマスターノード131は、ノード132側のポート141を論理的にブロックしている。
たとえば、このリング型ネットワークのリンクに障害15が発生したものとする(状態5)。その場合、マスターノード131はブロックしていたポート141を開放し、各ノード131〜136間で通信がおこなえるようにする。また、障害15が発生したリンクに接続されているノード134およびノード135は、それぞれ障害15側のポート144,145を論理的にブロックする(状態6)。
そして、障害15が復旧した場合には、ノード134およびノード135は、制御信号をやり取りしていずれか一方のノード134のみをマスターノードとして設定する。もう一方のノード135は、通常のノードに設定され、そのノード135がブロックしていたポート145は開放される(状態7)。この場合、データの中継がブロックされたリンクは障害15の復旧前後で変わらないので、経路情報の学習回数が1回で済むことになる。
また、このデータ中継方法は、ノードに発生した障害に対しても対応することができる。図17は、ノード障害発生時の従来のデータ中継方法を説明する図である。図17では、ノード134に障害16が発生し、ノード133,135がノード134側のポート143,145をブロックしている場合を示している(状態8)。
この場合、障害16が復旧されると、ノード133とノード135とは、ノード134を介して制御信号をやり取りする(状態9)。そして、いずれか一方のノード133のみをマスターノードとして設定し、他方のノード135は、通常のノードに設定され、ポート145が開放される(状態10)。
特願2004−076593号公報 S. Shah and M. Yip, "RFC 3619 - Extreme Network's Ethernet Automatic Protection Switching (EAPS) Version 1", [online], [平成16年11月29日検索],インターネット<URL:http://www.faqs.org/rfcs/rfc3619.html>
しかしながら、上述した従来技術では、リング型ネットワークに属するすべてのノードの立ち上げ時や、発生した障害の復旧時に、マスターノードを効率的に決定するリング型ネットワークを低コストで実現することが難しいという問題があった。
すなわち、図15および図16で説明した従来技術では、リング型ネットワークに属するすべてのノードの立ち上げ時に、あらかじめマスターノードを設定しておく必要があるが、その設定がなされないままノードの立ち上げが実行されると、ループ現象が発生してしまう。
また、図17で説明したデータ中継方法では、ノード134に障害が発生した場合に、復旧したノード134が両隣のノード133,135の交渉を仲介する必要があるため、処理が複雑になるという問題があった。そのため、マスターノードをいかに適切かつ効率的に設定することができるかが重要な問題となってきている。
本発明は、上述した従来技術による問題点を解消するためになされたものであり、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定装置であって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記判定手段によりノードをマスターノードに設定しないと判定された場合に、前記優先順位に係る情報を含んだ制御データの送信を中止することを特徴とする。
また、本発明は、上記発明において、リング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードである場合に、当該ノードが送信した制御データが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンクまたは当該リンクに接続されたノードに障害が発生した場合に、前記判定手段は、当該ノードがマスターノードである状態を維持するよう判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、ノードがマスターノードでない場合に、障害を検出した場合に障害を検出したことをマスターノードに通知する障害検出制御データをさらに送信することを特徴とする。
また、本発明は、上記発明において、前記判定手段は、マスターノードから障害検出制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段により送信された障害検出制御データをマスターノードが受信した際に当該マスターノードにより送信される制御データを受信するごとに、データの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、障害を検出した場合にユーザデータの送信経路に係る情報の再学習を要求する経路情報学習制御データをさらに送信することを特徴とする。
また、本発明は、上記発明において、前記判定手段は、マスターノードから経路情報学習制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段により送信された経路情報学習制御データを受信するごとに、ユーザデータの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノードにより構成されるネットワークシステムであって、前記ノードは、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、を備えたことを特徴とする。
また、本発明は、上記発明において、前記ノードはリング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、上記発明において、前記障害検出手段は、少なくともデータを中継する機能を有するデータ中継ノードが前記リング型ネットワークを構成するノードとして自ノードに接続されている場合に、当該データ中継ノードまたは当該データ中継ノードと自ノードとを接続しているリンクに発生した障害を検出し、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定方法であって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信工程と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定工程と、を含んだことを特徴とする。
また、本発明は、リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定プログラムであって、前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手順と、前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手順と、をコンピュータに実行させることを特徴とする。
本発明によれば、リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信し、送信した優先順位に係る情報を含んだ制御データを受信した場合、または、リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、その優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードをマスターノードに設定しないと判定された場合に、優先順位に係る情報を含んだ制御データの送信を中止することとしたので、不必要な制御データの送信を抑制することができるという効果を奏する。
また、本発明によれば、リング型ネットワークに発生した障害を検出し、障害を検出した場合に、優先順位に係る情報を含んだ制御データを送信することとしたので、障害が発生した場合に、マスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードがマスターノードである場合に、当該ノードが送信した制御データが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することとしたので、効率的に障害の検出をおこなうことができ、障害発生時にマスターノードを適切かつ効率的に設定することができるという効果を奏する。
また、本発明によれば、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンクまたは当該リンクに接続されたノードに障害が発生した場合に、当該ノードがマスターノードである状態を維持するよう判定することとしたので、マスターノードの状態を維持するよう適切かつ効率的に判定をおこなうことができるという効果を奏する。
また、本発明によれば、ノードがマスターノードでない場合に、障害を検出した場合に障害を検出したことをマスターノードに通知する障害検出制御データをさらに送信することとしたので、マスターノードに障害の発生を通知することができ、マスターノードに障害の発生に対して適切な処理を実行させることができるという効果を奏する。
また、本発明によれば、マスターノードから障害検出制御データの受信に応じて送信された制御データを受信した後、優先順位に係る情報を含んだ制御データを受信した場合、または、優先順位に係る情報を含んだ制御データを他のノードから受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードが障害検出制御データを受信する以前に送信した制御データによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができるという効果を奏する。
また、本発明によれば、障害検出制御データをマスターノードが受信した際に当該マスターノードにより送信される制御データを受信するごとに、データの送信経路に係る情報の再学習を開始することとしたので、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができるという効果を奏する。
また、本発明によれば、障害を検出した場合にユーザデータの送信経路に係る情報の再学習を要求する経路情報学習制御データをさらに送信することとしたので、他のノードにユーザデータの送信経路に係る情報の再学習を要求することができ、他のノードに障害の発生に対して適切な処理を実行させることができるという効果を奏する。
また、本発明によれば、マスターノードから経路情報学習制御データの受信に応じて送信された制御データを受信した後、優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、その優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードが経路情報学習制御データを受信する以前に送信した制御データによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができるという効果を奏する。
また、本発明によれば、経路情報学習制御データを受信するごとに、ユーザデータの送信経路に係る情報の再学習を開始することとしたので、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができるという効果を奏する。
また、本発明によれば、少なくともデータを中継する機能を有するデータ中継ノードがリング型ネットワークを構成するノードとして自ノードに接続されている場合に、当該データ中継ノードまたは当該データ中継ノードと自ノードとを接続しているリンクに発生した障害を検出し、障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することとしたので、自ノードをマスターノードに設定するか否かを判定する機能をもたないデータ中継ノードがリング型ネットワークに含まれている場合でも、マスターノードを適切かつ効率的に設定することができるという効果を奏する。
以下に、本発明に係るノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
まず、本発明に係るノード設定処理の概念について説明する。図1は、リング型ネットワークの立ち上げ時のノード設定処理の概念を説明する図である。図1の例では、6つのノード201〜206によりリング型ネットワークが構成される場合が示されている。そして、各ノード201〜206は、隣り合う2つのノード201〜206に接続される2つのポートを有している。
このノード設定処理においては、リング型ネットワークの立ち上げ時に、各ノード201〜206が、擬似マスターノードと呼ばれる状態に遷移する(図中、擬似マスターノードは記号「擬M」で表されている。)。
この擬似マスターノードは、ユーザデータのパケット中継を一方のポート211〜216においてブロックするとともに、もう一方のポートからヘルスパケットH1〜H6を送信する(状態11)。なお、ブロックするポート211〜216は、あらかじめ設定しておいてもよいし、ランダムに決定することとしてもよい。
ここで、ヘルスパケットH1〜H6とは、ノード201〜206が、リング型ネットワークに障害があるか否かを確認するために送信する制御パケットである。リング型ネットワークに障害がない場合には、ノード201〜206は、ヘルスパケットH1〜H6を送信したポートの反対側のポートにおいて、送信したヘルスパケットH1〜H6を受信することになる。
各ノード201〜206は、ヘルスパケットH1〜H6を送信する際に、ノード201〜206をマスターノードに設定する場合のノード201〜206の優先順位の情報をヘルスパケットH1〜H6に含めて送信する。この優先順位は、あらかじめ各ノード201〜206に割り当てておいてもよいし、ノード201〜206に割り当てられているMACアドレスを優先順位を表すものとして利用することとしてもよい。
そして、各ノード201〜206は、他のノード201〜206により送信されたヘルスパケットH1〜H6を受信すると、ヘルスパケットH1〜H6に含まれる優先順位の情報を取得し、取得した優先順位の情報と自ノード201〜206の優先順位の情報とを比較する。
他のノード201,204により送信されたヘルスパケットH1,H4に含まれる優先順位の方が高い場合には、ヘルスパケットH1,H4を受信したノード206,203は、ブロックしていたポート216,213を開放し、ユーザデータのパケット中継を可能とするトランジットノード(図中、トランジットノードは記号「T」で表されている。)に自ノードの状態を遷移させる(状態12)。
ここで、優先順位は、同一の優先順位のものがないように設定されるので、ヘルスパケットH1〜H6が各ノード201〜206により伝送されるにつれ、1つのノード201以外はすべてトランジットノードに遷移し、各ノード202〜205によりブロックされていたポート212〜216が開放される(状態13)。そして、ノード202〜206がトランジットノードに遷移した場合には、ヘルスパケットの送信を停止する。
このようにして、擬似マスターノードとして最終的に残ったノード201は、自ノードが送信したヘルスパケットH1を受信するようになる。そして、各ノード201〜206は、自ノードが送信したヘルスパケットH1〜H6を受信した場合に、自ノードの状態をマスターノード(図中、マスターノードは記号「M」で表されている。)に遷移する処理をおこなう(状態14)。
図2は、リンク障害発生時のノード設定処理の概念を説明する図である。図2の例では、ノード201がマスターノードとして設定され、ポート211を介したユーザデータのパケット中継をブロックしている場合を示している。また、ノード203とノード204とを接続しているリンクに障害22が発生したものとする(状態15)。
この場合、障害22が発生したリンクに接続されているノード203,204は、障害22の発生を検出し、自ノード203,204を擬似マスターノードとして設定するとともに、障害22が発生したリンク側のポート213,214をブロックする。
さらに、ノード203,204は、ポート213,214の反対側のポートから障害22が発生したことをマスターノードであるノード201に通知するトラップパケットT3,T4を送信する(状態16)。
マスターノードであるノード201は、このトラップパケットT3,T4の少なくとも一方を受信すると、自ノード201の状態をトランジットノードに遷移させ、ブロックしていたポート211を開放する。
一方、各ノード203,204は、トラップパケットT3,T4の送信後、ヘルスパケットH3,H4の送信をおこない、もう一方のノード203,204から送信されたヘルスパケットH3,H4を受信するのを待ち受ける(状態17)。
そして、もう一方のノード203,204により送信されたヘルスパケットH3,H4を受信した場合には、各ノード203,204は、図1で説明したノード設定処理と同様にして、ヘルスパケットH3,H4に含まれる優先順位の情報に基づき、自ノード203,204をマスターノードとするのか、トランジットノードとするのかを判定する処理をおこなう。
図2の例では、ノード203がマスターノードとなり、ノード204がトランジットノードとなる場合が示されている(状態18)。これは、ノード203の優先順位がノード204の優先順位よりも高く設定されていることを示している。
障害22が復旧した場合には、ノード203がそのまま継続してマスターノードとして機能する。したがって、障害22の復旧後にあらためてマスターノードを設定する処理は不要である。
また、このノード設定処理は、リンク障害の発生に対処できるだけでなく、ノード障害の発生にも対処することができる。図3は、ノード障害発生時のノード設定処理の概念を説明する図である。
図3の例では、ノード201がマスターノードとして設定され、ユーザデータのパケット中継をポート211がブロックしている場合を示している。また、この例ではノード204に障害が発生したものとする(状態19)。
この場合、障害が発生したノード204の両脇のノード203,205が障害の発生を検出して、障害が発生したノード204側のポート213,215をブロックする。そして、ノード203,205は、障害が発生したことをマスターノード201に通知するトラップパケットT3,T5を送信する(状態20)。
その後、トラップパケットT3,T5の少なくとも一方を受信したマスターノード201は、自ノードをトランジットノードに遷移させ、ブロックしていたポート211を開放する。一方、ノード203,205は、トラップパケットT3,T5の送信後、ヘルスパケットH3,H5の送信をおこない、もう一方のノード203,205から送信されたヘルスパケットH3,H5を受信するのを待ち受ける(状態21)。
そして、もう一方のノード203,205により送信されたヘルスパケットH3,H5を受信した場合には、各ノード203,205は、図1で説明したノード設定処理と同様にして、ヘルスパケットH3,H5に含まれる優先順位の情報に基づき、自ノード203,205をマスターノードとするのか、トランジットノードとするのかを判定する処理をおこなう。
図3の例では、ノード203がマスターノードとなり、ノード205がトランジットノードとなる場合が示されている(状態22)。これは、ノード203の優先順位がノード205の優先順位よりも高く設定されていることを示している。
ノード204の障害が復旧した場合には、ノード204は一旦擬似マスターノードとなる。そして、一方のポート214をブロックし、ヘルスパケットH4を送信する(状態23)。
また、マスターノードであるノード203は、定期的にヘルスパケットを送信しているため、ノード204は、そのヘルスパケットを受信すると、優先順位の比較によりトランジットノードに遷移する(状態24)。
また、マスターノードは、自ノードが送信したヘルスパケットが一定時間が経過しても戻ってこない場合に、自ノードを擬似マスターノードに遷移させる。図4は、ヘルスパケット未検出時のノード設定処理の概念を説明する図である。
図4の例では、ノード201がマスターノードとして設定され、ユーザデータのパケット中継をポート211においてブロックするとともに、ヘルスパケットH1を送信した場合を示している(状態25)。
そして、たとえば、ノード204にヘルスパケットだけが伝送できない障害が発生したような場合には、ノード201は、自ノード201が送信したヘルスパケットH1が一定時間が経過しても戻ってこないことにより、自ノードを擬似マスターノードに遷移させる(状態26)。
ここで、ノード204に発生した、状態25に示した障害が復旧され、自ノード201が送信したヘルスパケットH1を受信できるようになった場合には、ノード201は再びマスターノードに遷移する(状態25)。
ノード204に発生した障害が復旧できず、ヘルスパケットを含めたすべての信号が伝送できない場合には、障害が発生したノード204の両隣のノード203,205が、信号を検出しないことにより障害の発生を検出し、自ノード203,205を擬似マスターノードに遷移させることになる。そして、ノード203,205は、障害が発生したノード204側のポート213,215をブロックするとともに、ヘルスパケットH3,H5を送信する(状態27)。
続いて、ノード201は、このヘルスパケットH3,H5を受信すると、自ノード201の状態をトランジットノードに遷移させ、ブロックしていたポート211を開放する(状態28)。これ以降は、図3の状態22、状態23および状態24に示したものと同様の処理がおこなわれ、マスターノードが設定される。
このように、本発明に係るノード設定処理では、ユーザデータの中継ポートをブロックするとともに、ノードをマスターノードに設定する優先順位の情報を含んだヘルスパケットを送信し、そのヘルスパケットを受信した場合、または、他のノードから優先順位の情報を含んだヘルスパケットを受信した場合に、優先順位の情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができる。
つぎに、本実施例に係るデータ伝送装置の機能構成について説明する。図5は、本実施例に係るデータ伝送装置30の機能構成を示す図である。図5に示すように、このデータ伝送装置30は、ポート31a,31b、パケット送受信部32、記憶部33、マスターノード処理実行部34、トランジットノード処理実行部35、経路情報学習処理部36、イベント検出部37、擬似マスターノード処理実行部38および制御部39を有する。
ポート31a,31bは、ユーザデータまたは制御データのパケットを中継するポートである。パケット送受信部32は、ポート31a,31bを介してデータパケットやトラップパケットまたはヘルスパケットなどの各種パケットを送受信する処理をおこなう。
記憶部33は、メモリなどの記憶デバイスである。この記憶部33は、自ノード情報33a、他ノード情報33bおよび経路情報33cを記憶している。自ノード情報33aは、自ノードの優先順位の情報やMACアドレスなどの自ノードに係る情報を記憶したものである。他ノード情報33bは、自ノード以外のノードの優先順位の情報やMACアドレスなどの情報を記憶したものである。
経路情報33cは、パケットの転送先に係る情報を記憶したものである。具体的には、経路情報33cは、パケットの転送先のMACアドレスと、当該MACアドレスが割り当てられたノードが接続されているポートの情報とを対応付けて記憶している。
マスターノード処理実行部34は、自ノードがマスターノードとして設定された場合に、マスターノードがおこなうべき各種処理を実行する。具体的には、マスターノード処理実行部34は、ネットワークにループ現象が発生するのを防止するため、一方のポートにおけるユーザデータのパケット中継をブロックし、また、ヘルスパケットを定期的に送信する処理などをおこなう。
また、マスターノード処理実行部34は、パケットを受信した場合に、その宛先MACアドレスを調べ、経路情報33cを参照して適切なポートからパケットを送信する処理をおこなう。
トランジットノード処理実行部35は、自ノードがトランジットノードとして設定された場合に、トランジットノードがおこなうべき各種処理を実行する。具体的には、トランジットノード処理実行部35は、パケットを受信した場合に、そのMAC宛先アドレスを調べ、経路情報33cを参照して適切なポートからパケットを送信する処理をおこなう。
経路情報学習処理部36は、他のノードから経路情報33cの再学習を要求するフラッシュパケットを受信した場合に、経路情報33cの再学習を実行する。
イベント検出部37は、自ノードの立ち上げや、リンクまたはノードに発生した障害などを検出する処理をおこなう。具体的には、イベント検出部37は、電源投入がなされた場合、あるいは、再起動が実行された場合にそれを検知して、自ノードの立ち上げを検出する。
また、イベント検出部37は、パケットの信号レベルの状態や、他のノードからの応答の有無などの情報に基づいて、自ノードに接続されているリンク、または、そのリンクに接続されている他のノードの障害の検出をおこなう。
障害を検出した場合には、イベント検出部37は、トラップパケットを他のノードに送信する。特に、ノードがマスターノードである場合には、イベント検出部37は、フラッシュパケットを他のノードに送信する処理をおこなう。
さらに、イベント検出部37は、自ノードがマスターノードである場合に、自ノードが送信したヘルスパケットが所定の時間内に自ノードに戻ってくるか否かを調べることにより、ネットワークに発生した障害を検出する。
擬似マスターノード処理実行部38は、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、自ノードを擬似マスターノードとして設定し、擬似マスターノードがおこなうべき各種処理を実行する。この擬似マスターノード処理実行部38は、ポートブロック処理部38a、ヘルスパケット送信処理部38bおよびノード設定部38cを有する。
ポートブロック処理部38aは、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、2つのポートのうち一方のポートでユーザデータのパケット中継をブロックする処理をおこなう。
ここで、自ノードに接続されているリンク、または、そのリンクに接続されている他のノードに発生した障害を検出した場合は、ポートブロック処理部38aは、障害側のポートをブロックする。
ヘルスパケット送信処理部38bは、イベント検出部37により自ノードの立ち上げや障害の発生が検出された場合に、優先順位の情報を含んだヘルスパケットを他のノードに送信する処理をおこなう。
ノード設定部38cは、パケット送受信部32がヘルスパケットを受信した場合に、ヘルスパケットに含まれる優先順位の情報を自ノード情報33aとして記憶している自ノードの優先順位の情報と比較して、自ノードの優先順位が高いか否かを判定する処理をおこなう。
そして、自ノードの優先順位が低い場合には、ノード設定部38cは、自ノードをトランジットノードとして設定する。自ノードの優先順位が高い場合には、ノード設定部38cは、つぎのヘルスパケットの受信を待ち受け、自ノードの優先順位が高いか否かを再度判定する。
自ノードの優先順位よりも高い優先順位の情報を含んだヘルスパケットを受信することなく、自ノードが送信したヘルスパケットを受信した場合には、ノード設定部38cは、自ノードをマスターノードとして設定する。
ところで、図2で説明したように、障害22が発生した場合には、障害22が発生したリンクに接続されているノード203,204が擬似マスターノードに遷移するが、マスターノードであるノード201がトラップパケットT3,T4を受信する以前にヘルスパケットを送信していると、ノード203,204はそれを受信して即座にトランジットノードに遷移してしまうという問題が発生する。
そのため、ノード203,204のパケット送受信部32は、トラップパケットT3,T4をマスターノードであるノード201が受信して、各ノードに記憶された経路情報をクリアするフラッシュパケットをノード201が送信するのを待ち受け、そのフラッシュパケットを受信した後にはじめてヘルスパケットの送受信をおこなう。
図6は、擬似マスターノードのヘルスパケットの送受信許可処理を説明する図である。なお、図6は、図2に示したリンク障害発生時の場合に対応している。図6に示すように、ノード203,204は、障害を検出すると、トラップパケットをマスターノードであるノード201に送信する。
マスターノードであるノード201は、定期的にヘルスパケットを送信しているが、擬似マスターノードであるノード203,204は、トラップパケットに対する応答であるフラッシュパケットを受信するまでは、受信したヘルスパケットを破棄する。
トラップパケットを受信した後にノード203,204が実行する処理は、図2で説明した状態17および状態18の処理と同様である。これにより、ノード203,204が、ヘルスパケットを送信する前にマスターノードにより送信されたヘルスパケットを受信して、即座にトランジットノードに遷移してしまうという問題を解決することができる。
また、各ノードの経路情報学習処理部36は、フラッシュパケットを受信するごとに経路情報33cの再学習をおこなうこととする。これにより、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができる。
図5の説明に戻ると、制御部39は、データ伝送装置30を全体制御する制御部であり、各機能部間のデータの授受などを司る。
なお、本発明に係るノード設定処理は、あるノードをマスターノードとして強制的に設定したい場合にも対処することができる。図7は、マスターノードの強制設定処理について説明する図である。図7の例では、6つのノード201〜206によりリング型ネットワークが構成される場合が示されている。
このマスターノードの設定処理においては、リング型ネットワークの立ち上げ時に、ノード204がマスターノードとして機能するよう、ノード204の優先順位が最も高く設定されている。その他の各ノード201〜203,205,206は、リング型ネットワークの立ち上げ時に、擬似マスターノードと呼ばれる状態に遷移する。
そして、各ノード201〜206は、一方のポート211〜216を用いておこなわれるユーザデータのパケット中継をブロックするとともに、もう一方のポートからヘルスパケットH1〜H6を送信する(状態29)。
そして、各ノード201〜206が他のノード201〜206により送信されたヘルスパケットH1〜H6を受信すると、ヘルスパケットH1〜H6に含まれる優先順位の情報を取得し、取得した優先順位と自ノード201〜206に記憶していた自ノード201〜206の優先順位とを比較する。
この場合、マスターノードであるノード204の優先順位が最も高いため、各ノード201〜203,205,206はトランジットノードに遷移し(状態30,状態31)、最終的にはマスターノードであるノード204が、自ノードが送信したヘルスパケットH4を受信する(状態32)。
このように、あらかじめマスターノードが固定的に設定される場合にも、本発明に係るノード設定処理は対応することができる。
さらに、図1から図4では、すべてのノードが本発明のノード設定処理をおこなうデータ伝送装置30からなるノードであることとしたが、1つのノードが本発明のノード設定処理をおこなうものでなく、単にパケットを中継するデータ中継ノードであっても、本発明に係るノード設定処理は対応することができる。
図8は、データ伝送装置30以外のノードを含む場合のノード設定処理を説明する図である。図8の例では、ノード203がマスターノードとして設定され、ポート213におけるユーザデータのパケット中継をブロックしている場合を示している。また、データ中継ノード23とノード201とを接続しているリンクに障害22が発生したものとする(状態33)。
ここで、ノード201〜205は、図5に示したデータ伝送装置30により実現されるノードであり、データ中継ノード23は、ノード201〜205により構成されるリング型ネットワークと、もう1つのリング型ネットワークとの両方に属し、パケットを中継する機能を有するノードである。
この場合、ノード201は、障害22の発生を検出し、自ノード201を擬似マスターノードに遷移させる。すなわち、ノード201は、障害22が発生した方のポート211をブロックするとともに、トラップパケットT1を送信する(状態34)。
そして、マスターノードであるノード203は、トラップパケットT1を受信すると、トランジットノードに遷移し、ブロックしていたポート213を開放する。一方、擬似マスターノードであるノード201は、ヘルスパケットH1を定期的に送信し、障害22が復旧されるまで擬似マスターノードとして機能する(状態35)。
そして、障害22が復旧された場合には、ノード201は、自ノードが送信したヘルスパケットH1を受信するので、マスターノードに遷移する(状態36)。このように、データ伝送装置30以外のノードを含む場合においても、本発明のノード設定処理はそれに対応することができる。
つぎに、本実施例に係るノード設定処理の処理手順について図9から図12を用いて説明する。図9は、ノードの状態遷移を説明する図であり、図10は、擬似マスターノード遷移処理の処理手順を示すフローチャートである。図10で説明する擬似マスターノード遷移処理は、図9に示した遷移4、遷移5または遷移6の状態遷移に対応するものである。
図9において、ディセーブル状態40とは、ノードがリンクダウンした状態のことである。具体的には、データ伝送装置30の電源が切られたり、データ伝送装置30の再起動が実行されたりした場合、あるいは、ノードが擬似マスターノード41やマスターノード42、あるいは、トランジットノード43として稼動していたが、そのノードが2つの障害を検出した場合(遷移1、遷移2、遷移3)などに、ノードはディセーブル状態に遷移する。
図10に示すように、まず、データ伝送装置30のノード設定部38cは、自ノードの稼動状態を検出する(ステップS101)。そして、ノード設定部38cは、自ノードがディセーブル状態40から立ち上げられたものであるか否かを調べる(ステップS102)。
自ノードがディセーブル状態40から立ち上げられたものである場合には(ステップS102,Yes)、ノード設定部38cは、少なくとも1つのポートがリンクアップしているか否かを調べる(ステップS105)。そして、1つのポートもリンクアップしていない場合には(ステップS105,No)、ステップS101に移行して、それ以後の処理を継続する。
少なくとも1つのポートがリンクアップしている場合には(ステップS105,Yes)、ノード設定部38cは、自ノードの両側のポートをイネーブルにし(ステップS106)、自ノードを擬似マスターノードに設定して(ステップS107)、この擬似マスターノード遷移処理を終了する。このステップS102からステップS107の処理は、図9の遷移4に対応するものである。
ステップS102において、自ノードがディセーブル状態40から立ち上げられたものでない場合には(ステップS102,No)、ノード設定部38cは、自ノードのどちらか一方のポート側に、イベント検出部37により障害が検出されたか否かを調べる(ステップS103)。
障害が検出された場合には(ステップS103,Yes)、ステップS107に移行して、ノード設定部38cは、自ノードを擬似マスターノードに設定し、この擬似マスターノード遷移処理を終了する。ステップS103およびステップS107の処理は、図9の遷移5または遷移6に対応するものである。
障害が検出されなかった場合には(ステップS103,No)、ノード設定部38cは、自ノードがマスターノードであって、送信したヘルスパケットが所定の時間未受信であるか否かを調べる(ステップS104)。
そして、ヘルスパケットが未受信である場合には(ステップS104,Yes)、ステップS107に移行して、ノード設定部38cは、自ノードを擬似マスターノードに設定し、この擬似マスターノード遷移処理を終了する。ヘルスパケットを受信している場合には(ステップS104,No)、ステップS101に移行して、それ以後の処理を継続する。ステップS103、ステップS104およびステップS107の処理は、図9の遷移5に対応するものである。
つぎに、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順について説明する。図11−1および図11−2は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(1)および(2)である。この遷移処理は、図9に示した遷移7および遷移8に対応するものである。
図11−1に示すように、まず、データ伝送装置30のノード設定部38cは、自ノードの両側のポートがリンクアップしており、かつ、自ノードが送信したヘルスパケットを受信したか否かを調べる(ステップS201)。
自ノードの両側のポートがリンクアップしており、自ノードが送信したヘルスパケットを受信した場合には(ステップS201,Yes)、ノード設定部38cは、自ノードをマスターノードに設定し(ステップS204)、この遷移処理を終了する。この処理は、図1で説明したマスターノードの設定処理に対応する。
自ノードの両側のポートがリンクアップしていないか、または、自ノードが送信したヘルスパケットを受信していない場合には(ステップS201,No)、ノード設定部38cは、自ノードの両側のポートがリンクアップしており、かつ、自ノードが強制的にマスターノードとなるよう設定されているか否かを調べる(ステップS202)。
そして、自ノードの両側のポートがリンクアップしており、かつ、自ノードが強制的にマスターノードとなるよう設定されている場合には(ステップS202,Yes)、ステップS204に移行して、ノード設定部38cは、自ノードをマスターノードに設定し、この遷移処理を終了する。この処理は、図7で説明したマスターノードの設定処理に対応する。
自ノードの両側のポートがリンクアップしていないか、あるいは、自ノードが強制的にマスターノードとなるよう設定されていない場合には(ステップS202,No)、ノード設定部38cは、一方のポート側がリンクダウンし、かつ、フラッシュパケットを受信し、かつ、自ノードに割り当てられた優先順位よりも低優先順位のヘルスパケットを受信したか否かを調べる(ステップS203)。
一方のポート側がリンクダウンし、かつ、フラッシュパケットを受信し、かつ、低優先順位のヘルスパケットを受信した場合には(ステップS203,Yes)、ステップS204に移行して、ノード設定部38cは、自ノードをマスターノードに設定し、この遷移処理を終了する。この処理は、図2または図3で説明したマスターノードの設定処理に対応する。また、ステップS201からステップS204の処理は、図9の遷移7に対応するものである。
一方のポート側がリンクダウンしていないか、フラッシュパケットを受信していないか、または、低優先順位のヘルスパケットを受信していない場合には(ステップS203,No)、図11−2に示されるように、ノード設定部38cは、両側のポートがリンクアップしており、かつ、マスターノードからヘルスパケットを受信したか否かを調べる(ステップS204)。
そして、両側のポートがリンクアップしており、かつ、マスターノードからヘルスパケットを受信した場合には(ステップS204,Yes)、ノード設定部38cは、自ノードをトランジットノードに設定し(ステップS208)、この遷移処理を終了する。この処理は、図7で説明したトランジットノードの設定処理に対応する。
両側のポートがリンクアップしていないか、あるいは、マスターノードからヘルスパケットを受信していない場合には(ステップS204,No)、ノード設定部38cは、両側のポートがリンクアップしており、かつ、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS205)。
両側のポートがリンクアップしており、かつ、高優先順位のヘルスパケットを受信した場合には(ステップS205,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図1で説明したトランジットノードの設定処理に対応する。
両側のポートがリンクアップしていないか、または、高優先順位のヘルスパケットを受信していない場合には(ステップS205,No)、ノード設定部38cは、一方のポートがリンクダウンし、かつ、フラッシュパケットを受信し、かつ、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS206)。
そして、一方のポートがリンクダウンし、かつ、フラッシュパケットを受信し、かつ、高優先順位のヘルスパケットを受信した場合には(ステップS206,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図2および図3で説明したトランジットノードの設定処理に対応する。
一方のポートがリンクダウンしていないか、フラッシュパケットを受信していないか、または、高優先順位のヘルスパケットを受信していない場合には(ステップS206,No)、ノード設定部38cは、自ノードがマスターノードとして送信したヘルスパケットの受信タイムアウトが発生し、かつ、別のノードのヘルスパケットを受信したか否かを調べる(ステップS207)。
そして、ヘルスパケットの受信タイムアウトが発生し、かつ、別のノードのヘルスパケットを受信した場合には(ステップS207,Yes)、ステップS208に移行して、ノード設定部38cは、自ノードをトランジットノードに設定し、この遷移処理を終了する。この処理は、図4で説明したトランジットノードの設定処理に対応する。
ヘルスパケットの受信タイムアウトが発生していないか、または、別のノードのヘルスパケットを受信しない場合には(ステップS207,No)、ステップS201に移行して、それ以降の処理を再度実行する。上記ステップS204からステップS208の処理は、図9に示した遷移8に対応するものである。
つぎに、マスターノードをトランジットノードに遷移させる遷移処理の処理手順について説明する。図12は、マスターノードをトランジットノードに遷移させる遷移処理の処理手順を示すフローチャートである。なお、図12に示す処理は、図9に示した遷移9に対応する。
図12に示すように、まず、データ伝送装置30のノード設定部38cは、マスターノード42である自ノードが、自ノードに割り当てられた優先順位よりも高優先順位のヘルスパケットを受信したか否かを調べる(ステップS301)。
そして、高優先順位のヘルスパケットを受信した場合には(ステップS301,Yes)、ノード設定部38cは、自ノードをトランジットノードに遷移させ(ステップS303)、この遷移処理を終了する。
高優先順位のヘルスパケットを受信していない場合には(ステップS301,No)、ノード設定部38cは、自ノードがトラップパケットを受信したか否かを調べる(ステップS302)。
そして、トラップパケットを受信した場合には(ステップS302,Yes)、ステップS303に移行して、ノード設定部38cは、自ノードをトランジットノードに遷移させ、この遷移処理を終了する。トラップパケットを受信していない場合には(ステップS302,No)、そのままこの遷移処理を終了する。
なお、図6では、マスターノードであるノード201がフラッシュパケットを送信する場合を示したが、擬似マスターノードであるノード203,204がトラップパケットを送信するのに加えて、さらにフラッシュパケットを送信することとしてもよい。
図13は、擬似マスターノードがトラップパケットおよびフラッシュパケットを送信する場合のヘルスパケットの送受信許可処理を説明する図である。図13の場合には、マスターノードであるノード201は、トラップパケットおよびフラッシュパケットを受信したことをノード203,204に通知するACK(Acknowledgement)パケットを送信する。
擬似マスターノードであるノード203,204は、このACKパケットを受信するまでは、受信したヘルスパケットを破棄する。そして、ノード203,204は、ACKパケットを受信してはじめてヘルスパケットの送受信を許可する。
この場合、各ノードの経路情報学習処理部36は、フラッシュパケットを受信するごとに経路情報33cを再学習をおこなうこととする。これにより、障害の発生が検出されるたびに送信経路の再学習をおこなうよう、再学習の回数を適切に管理することができる。
上述してきたように、本実施例では、データ伝送装置30のポートブロック処理部38aが、リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、ヘルスパケット送信処理部38bが、ノードをマスターノードに設定する優先順位に係る情報を含んだヘルスパケットを送信し、ノード設定部38cが、そのヘルスパケットを受信した場合、または、他のノードの優先順位に係る情報を含んだヘルスパケットを受信した場合に、その優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノード設定部38cによりノードをマスターノードに設定しないと判定された場合に、ヘルスパケット送信処理部38bが、優先順位に係る情報を含んだヘルスパケットの送信を中止することとしたので、不必要なヘルスパケットの送信を抑制することができる。
また、本実施例では、イベント検出部37が、リング型ネットワークに発生した障害を検出し、ヘルスパケット送信処理部38bが、障害が検出された場合に、優先順位に係る情報を含んだヘルスパケットを送信することとしたので、障害が発生した場合に、マスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノードがマスターノードである場合に、イベント検出部37が、当該ノードが送信したヘルスパケットが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することとしたので、効率的に障害の検出をおこなうことができ、障害発生時にマスターノードを適切かつ効率的に設定することができる。
また、本実施例では、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンク、または、当該リンクに接続されたノードに障害が発生した場合に、ノード設定部38cが、当該ノードがマスターノードである状態を維持するよう判定することとしたので、マスターノードの状態を維持するよう適切かつ効率的に判定をおこなうことができる。
また、本実施例では、イベント検出部37が、自ノードがトランジットノードである場合に、障害を検出した場合に障害を検出したことをマスターノードに通知するトラップパケットを送信することとしたので、マスターノードに障害の発生を通知することができ、マスターノードに障害の発生に対して適切な処理を実行させることができる。
また、本実施例では、ノード設定部38cが、マスターノードからトラップパケットの受信に応じて送信されたフラッシュパケットを受信した後、優先順位に係る情報を含んだヘルスパケットを受信した場合、または、優先順位に係る情報を含んだヘルスパケットを他のノードから受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードがトラップパケットを受信する以前に送信したヘルスパケットによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができる。
また、本実施例では、経路情報学習処理部36が、トラップパケットをマスターノードが受信した際に当該マスターノードにより送信されるフラッシュパケットを受信するごとに、経路情報33cの再学習を開始することとしたので、障害の発生が検出されるたびに経路情報33cの再学習をおこなうよう、再学習の回数を適切に管理することができる。
また、本実施例では、イベント検出部37が、障害を検出した場合にフラッシュパケットを送信することとしたので、他のノードに経路情報33cの再学習を要求することができ、他のノードに障害の発生に対して適切な処理を実行させることができる。
また、本実施例では、ノード設定部38cが、マスターノードからフラッシュパケットの受信に応じて送信されたACKパケットを受信した後、優先順位に係る情報を含んだヘルスパケットを受信した場合、または、他のノードの優先順位に係る情報を含んだヘルスパケットを受信した場合に、優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することとしたので、マスターノードがフラッシュパケットを受信する以前に送信したヘルスパケットによりノードをマスターノードに設定するか否かの判定がおこなわれることを防ぐことができる。
また、本実施例では、フラッシュパケットを受信するごとに、経路情報学習処理部36が、経路情報33cの再学習を開始することとしたので、障害の発生が検出されるたびに経路情報33cの再学習をおこなうよう、再学習の回数を適切に管理することができる。
また、本実施例では、少なくともデータを中継する機能を有するデータ中継ノード23がリング型ネットワークを構成するノードとして自ノードに接続されている場合に、イベント検出部37が、データ中継ノード23またはデータ中継ノード23と自ノードとを接続しているリンクに発生した障害を検出し、ヘルスパケット送信処理部38bが、障害が検出された場合に、優先順位に係る情報を含んだヘルスパケットを送信することとしたので、自ノードをマスターノードに設定するか否かを判定する機能をもたないデータ中継ノード23がリング型ネットワークに含まれている場合でも、マスターノードを適切かつ効率的に設定することができる。
なお、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図14を用いて、上記各種処理を実現するプログラムを実行するコンピュータの一例について説明する。図14は、図5に示したデータ伝送装置30となるコンピュータのハードウェア構成を示す図である。
このコンピュータは、ユーザからの入力を受け付ける入力ボタン100、各種情報を出力するLED(Light Emitting Diode)101、メインメモリ102、フラッシュメモリ103、CPU(Central Processing Unit)104および読出し専用メモリ105をバス106で接続して構成される。
そして、読出し専用メモリ105には、データ伝送装置30の機能と同様の機能を発揮するプログラム、つまり、ノード設定プログラム105aが記憶されている。なお、ノード設定プログラム105aは、適宜分散して記憶することとしてもよい。
そして、CPU104が、ノード設定プログラム105aを読出し専用メモリ105から読み出して実行することにより、ノード設定プロセス104aとして機能するようになる。
このノード設定プロセス104aは、図5に示したパケット送受信部32、マスターノード処理実行部34、トランジットノード処理実行部35、経路情報学習処理部36、イベント検出部37、擬似マスターノード処理実行部38および制御部39の各機能部に対応する。
また、フラッシュメモリ103には、自ノード情報103a、他ノード情報103bおよび経路情報103cが記憶される。なお、自ノード情報103a、他ノード情報103bおよび経路情報103cは、図5に示した自ノード情報33a、他ノード情報33bおよび経路情報33cに対応する。
そして、CPU104は、自ノード情報103a、他ノード情報103bおよび経路情報103cをフラッシュメモリ103に記憶するとともに、自ノード情報103a、他ノード情報103bおよび経路情報103cをフラッシュメモリ103から読み出してメインメモリ102に格納し、メインメモリ102に格納された自ノード情報102a、他ノード情報102bおよび経路情報102cに基づいて各種データ処理を実行する。
ところで、ノード設定プログラム105aは、必ずしも最初から読出し専用メモリ105に記憶させておく必要はない。たとえば、フレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」、または、コンピュータの内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」、さらには、公衆回線、インターネット、LAN、WANなどを介してコンピュータに接続される「他のコンピュータ(またはサーバ)」などに各プログラムを記憶しておき、コンピュータがこれらから各プログラムを読み出して実行するようにしてもよい。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。
この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示したデータ伝送装置30の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、データ伝送装置30の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
さらに、データ伝送装置30にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
以上のように、本発明に係るノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラムは、リング型ネットワークにおいてマスターノードを適切かつ効率的に設定することが必要なリング型ネットワークシステムに有用である。
図1は、リング型ネットワークの立ち上げ時のノード設定処理の概念を説明する図である。 図2は、リンク障害発生時のノード設定処理の概念を説明する図である。 図3は、ノード障害発生時のノード設定処理の概念を説明する図である。 図4は、ヘルスパケット未検出時のノード設定処理の概念を説明する図である。 図5は、本実施例に係るデータ伝送装置30の機能構成を示す図である。 図6は、擬似マスターノードのヘルスパケットの送受信許可処理を説明する図である。 図7は、マスターノードの強制設定処理について説明する図である。 図8は、データ伝送装置30以外のノードを含む場合のノード設定処理を説明する図である。 図9は、ノードの状態遷移を説明する図である。 図10は、擬似マスターノード遷移処理の処理手順を示すフローチャートである。 図11−1は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(1)である。 図11−2は、擬似マスターノードからマスターノードあるいはトランジットノードに遷移する遷移処理の処理手順を示すフローチャート(2)である。 図12は、マスターノードをトランジットノードに遷移させる遷移処理の処理手順を示すフローチャートである。 図13は、擬似マスターノードがトラップパケットおよびフラッシュパケットを送信する場合のヘルスパケットの送受信許可処理を説明する図である。 図5に示したデータ伝送装置30となるコンピュータのハードウェア構成を示す図である。 図15は、従来のEAPSの技術を説明する図である。 図16は、従来のデータ中継方法を説明する図である。 図17は、ノード障害発生時の従来のデータ中継方法を説明する図である。
符号の説明
101〜106,131〜136,201〜206 ノード
12,15,16,22 障害
111,114,115,141,143,145,211〜216 ポート
23 データ中継ノード
30 データ伝送装置
31a,31b ポート
32 パケット送受信部
33 記憶部
33a 自ノード情報
33b 他ノード情報
33c 経路情報
34 マスターノード処理実行部
35 トランジットノード処理実行部
36 経路情報学習処理部
37 イベント検出部
38 擬似マスターノード処理実行部
38a ポートブロック処理部
38b ヘルスパケット送信処理部
38c ノード設定部
39 制御部
40 ディセーブル状態
41 擬似マスターノード
42 マスターノード
43 トランジットノード

Claims (16)

  1. リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定装置であって、
    前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、
    前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、
    を備えたことを特徴とするノード設定装置。
  2. 前記判定手段によりノードをマスターノードに設定しないと判定された場合に、前記優先順位に係る情報を含んだ制御データの送信を中止することを特徴とする請求項1に記載のノード設定装置。
  3. リング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする請求項1または2に記載のノード設定装置。
  4. 前記障害検出手段は、ノードがマスターノードである場合に、当該ノードが送信した制御データが当該ノードに到達するか否かを調べることによりリング型ネットワークに発生した障害を検出することを特徴とする請求項3に記載のノード設定装置。
  5. 前記障害検出手段は、ノードがマスターノードであり、当該ノードがユーザデータの中継をブロックしているポート側に接続されたリンクまたは当該リンクに接続されたノードに障害が発生した場合に、前記判定手段は、当該ノードがマスターノードである状態を維持するよう判定することを特徴とする請求項3に記載のノード設定装置。
  6. 前記障害検出手段は、ノードがマスターノードでない場合に、障害を検出した場合に障害を検出したことをマスターノードに通知する障害検出制御データをさらに送信することを特徴とする請求項3に記載のノード設定装置。
  7. 前記判定手段は、マスターノードから障害検出制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする請求項6に記載のノード設定装置。
  8. 前記障害検出手段により送信された障害検出制御データをマスターノードが受信した際に当該マスターノードにより送信される制御データを受信するごとに、データの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする請求項7に記載のノード設定装置。
  9. 前記障害検出手段は、障害を検出した場合にユーザデータの送信経路に係る情報の再学習を要求する経路情報学習制御データをさらに送信することを特徴とする請求項3に記載のノード設定装置。
  10. 前記判定手段は、マスターノードから経路情報学習制御データの受信に応じて送信された制御データを受信した後、前記優先順位に係る情報を含んだ制御データを受信した場合、または、他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいてノードをマスターノードに設定するか否かを判定することを特徴とする請求項9に記載のノード設定装置。
  11. 前記障害検出手段により送信された経路情報学習制御データを受信するごとに、ユーザデータの送信経路に係る情報の再学習を開始する経路情報学習手段をさらに備えたことを特徴とする請求項9に記載のノード設定装置。
  12. リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノードにより構成されるネットワークシステムであって、
    前記ノードは、
    前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手段と、
    前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手段と、
    を備えたことを特徴とするネットワークシステム。
  13. 前記ノードはリング型ネットワークに発生した障害を検出する障害検出手段をさらに備え、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする請求項12に記載のネットワークシステム。
  14. 前記障害検出手段は、少なくともデータを中継する機能を有するデータ中継ノードが前記リング型ネットワークを構成するノードとして自ノードに接続されている場合に、当該データ中継ノードまたは当該データ中継ノードと自ノードとを接続しているリンクに発生した障害を検出し、前記データ送信手段は、前記障害検出手段により障害が検出された場合に、優先順位に係る情報を含んだ制御データを送信することを特徴とする請求項13に記載のネットワークシステム。
  15. リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定方法であって、
    前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信工程と、
    前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定工程と、
    を含んだことを特徴とするノード設定方法。
  16. リング型ネットワークにおいてユーザデータの中継をブロックすることによりループ経路の発生を防止するマスターノードにノードを設定するか否かを判定するノード設定プログラムであって、
    前記リング型ネットワークに接続されたノードの一方のポート側でおこなわれるユーザデータの中継をブロックし、また、当該ノードをマスターノードに設定する優先順位に係る情報を含んだ制御データを送信するデータ送信手順と、
    前記優先順位に係る情報を含んだ制御データを受信した場合、または、前記リング型ネットワークに接続された他のノードの優先順位に係る情報を含んだ制御データを受信した場合に、該優先順位に係る情報に基づいて当該ノードをマスターノードに設定するか否かを判定する判定手順と、
    をコンピュータに実行させることを特徴とするノード設定プログラム。
JP2006550573A 2005-01-07 2005-01-07 データ伝送装置 Expired - Fee Related JP4621212B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2005/000143 WO2006072996A1 (ja) 2005-01-07 2005-01-07 ノード設定装置、ネットワークシステム、ノード設定方法およびノード設定プログラム

Publications (2)

Publication Number Publication Date
JPWO2006072996A1 true JPWO2006072996A1 (ja) 2008-06-12
JP4621212B2 JP4621212B2 (ja) 2011-01-26

Family

ID=36647484

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006550573A Expired - Fee Related JP4621212B2 (ja) 2005-01-07 2005-01-07 データ伝送装置

Country Status (3)

Country Link
US (1) US7907516B2 (ja)
JP (1) JP4621212B2 (ja)
WO (1) WO2006072996A1 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083551B2 (en) * 2006-03-17 2015-07-14 Tellabs Operations, Inc. Method and apparatus for media distribution using VPLS in a ring topology
CN101232428B (zh) 2007-01-23 2012-05-23 华为技术有限公司 一种以太网环保护方法及装置
CN101232427A (zh) * 2007-01-23 2008-07-30 华为技术有限公司 一种以太网环保护方法及装置
CN100534048C (zh) * 2007-04-27 2009-08-26 中控科技集团有限公司 分布式以太网系统及基于该系统的故障检测方法
KR20090050920A (ko) 2007-11-16 2009-05-20 한국전자통신연구원 이더넷 링 네트워크의 비환원 모드에서의 장애 복구 방법
US8115414B2 (en) * 2008-03-12 2012-02-14 Freescale Semiconductor, Inc. LED driver with segmented dynamic headroom control
US7825610B2 (en) * 2008-03-12 2010-11-02 Freescale Semiconductor, Inc. LED driver with dynamic power management
US8106604B2 (en) * 2008-03-12 2012-01-31 Freescale Semiconductor, Inc. LED driver with dynamic power management
US8035314B2 (en) * 2008-06-23 2011-10-11 Freescale Semiconductor, Inc. Method and device for LED channel managment in LED driver
US8279144B2 (en) * 2008-07-31 2012-10-02 Freescale Semiconductor, Inc. LED driver with frame-based dynamic power management
US8373643B2 (en) * 2008-10-03 2013-02-12 Freescale Semiconductor, Inc. Frequency synthesis and synchronization for LED drivers
US8675649B2 (en) 2008-11-18 2014-03-18 Yamaha Corporation Audio network system and method of detecting topology in audio signal transmitting system
JP5298796B2 (ja) * 2008-11-18 2013-09-25 ヤマハ株式会社 オーディオネットワークシステム及び方法
US8004207B2 (en) * 2008-12-03 2011-08-23 Freescale Semiconductor, Inc. LED driver with precharge and track/hold
US8035315B2 (en) * 2008-12-22 2011-10-11 Freescale Semiconductor, Inc. LED driver with feedback calibration
US8049439B2 (en) * 2009-01-30 2011-11-01 Freescale Semiconductor, Inc. LED driver with dynamic headroom control
JP5354392B2 (ja) * 2009-02-02 2013-11-27 日本電気株式会社 通信ネットワーク管理システム、方法、プログラム、及び管理計算機
US8493003B2 (en) * 2009-02-09 2013-07-23 Freescale Semiconductor, Inc. Serial cascade of minimium tail voltages of subsets of LED strings for dynamic power control in LED displays
US8179051B2 (en) * 2009-02-09 2012-05-15 Freescale Semiconductor, Inc. Serial configuration for dynamic power control in LED displays
US8040079B2 (en) * 2009-04-15 2011-10-18 Freescale Semiconductor, Inc. Peak detection with digital conversion
US8305007B2 (en) * 2009-07-17 2012-11-06 Freescale Semiconductor, Inc. Analog-to-digital converter with non-uniform accuracy
US7843242B1 (en) 2009-08-07 2010-11-30 Freescale Semiconductor, Inc. Phase-shifted pulse width modulation signal generation
US8228098B2 (en) * 2009-08-07 2012-07-24 Freescale Semiconductor, Inc. Pulse width modulation frequency conversion
US8237700B2 (en) * 2009-11-25 2012-08-07 Freescale Semiconductor, Inc. Synchronized phase-shifted pulse width modulation signal generation
US9490792B2 (en) * 2010-02-10 2016-11-08 Freescale Semiconductor, Inc. Pulse width modulation with effective high duty resolution
US8169245B2 (en) * 2010-02-10 2012-05-01 Freescale Semiconductor, Inc. Duty transition control in pulse width modulation signaling
CN102014001B (zh) * 2010-12-08 2012-10-17 迈普通信技术股份有限公司 一种实现快速以太环网的方法及交换设备
US8599915B2 (en) 2011-02-11 2013-12-03 Freescale Semiconductor, Inc. Phase-shifted pulse width modulation signal generation device and method therefor
TWI455525B (zh) * 2011-08-09 2014-10-01 Nat Univ Tsing Hua 環狀網路之復原方法
CN103297257B (zh) * 2012-02-27 2016-10-19 北京东土科技股份有限公司 一种冗余网络的实现方法
US9411786B2 (en) * 2013-07-08 2016-08-09 Adobe Systems Incorporated Method and apparatus for determining the relevancy of hyperlinks
JP6554405B2 (ja) * 2015-11-26 2019-07-31 株式会社日立製作所 リングネットワークシステム、及び、ネットワークノード
CN109462518B (zh) * 2018-10-24 2020-10-02 新华三技术有限公司 一种环路检测的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08181708A (ja) * 1994-12-21 1996-07-12 Nec Corp リングネットワークシステムのオーダーワイヤ通信制御方法
JP2003218894A (ja) * 2002-01-22 2003-07-31 Mitsubishi Electric Corp ネットワークシステムおよびネットワーク構成方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2650961B2 (ja) * 1988-04-28 1997-09-10 株式会社日立製作所 分散制御ネットワークの制御方法
JP2797765B2 (ja) * 1991-08-20 1998-09-17 日本電気株式会社 オーダワイヤ信号伝送装置
JPH05167599A (ja) * 1991-12-17 1993-07-02 Nec Corp 同期網リングlanシステムにおけるオーダワイヤ制御方式
JPH0630009A (ja) 1992-07-06 1994-02-04 Toshiba Corp リング型lanにおけるマスタのバックアップ方式
US7181547B1 (en) * 2001-06-28 2007-02-20 Fortinet, Inc. Identifying nodes in a ring network
US6766482B1 (en) * 2001-10-31 2004-07-20 Extreme Networks Ethernet automatic protection switching
US6717922B2 (en) * 2002-03-04 2004-04-06 Foundry Networks, Inc. Network configuration protocol and method for rapid traffic recovery and loop avoidance in ring topologies
JP3957180B2 (ja) 2002-08-09 2007-08-15 本田技研工業株式会社 デシメーションフィルタを用いた内燃機関の空燃比制御装置
JP2005269059A (ja) * 2004-03-17 2005-09-29 Fujitsu Ltd データ中継装置、データ中継方法およびデータ中継プログラム
JP4687176B2 (ja) * 2005-03-22 2011-05-25 富士通株式会社 パケット中継装置
JP4627205B2 (ja) * 2005-03-28 2011-02-09 富士通株式会社 リングネットワークシステムおよび障害復旧方法
JP4739141B2 (ja) * 2006-02-24 2011-08-03 アラクサラネットワークス株式会社 リングネットワーク及びマスタノード
US7876688B2 (en) * 2007-03-30 2011-01-25 Nokia Corporation Traffic protection in a communication network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08181708A (ja) * 1994-12-21 1996-07-12 Nec Corp リングネットワークシステムのオーダーワイヤ通信制御方法
JP2003218894A (ja) * 2002-01-22 2003-07-31 Mitsubishi Electric Corp ネットワークシステムおよびネットワーク構成方法

Also Published As

Publication number Publication date
US20070253330A1 (en) 2007-11-01
WO2006072996A1 (ja) 2006-07-13
US7907516B2 (en) 2011-03-15
JP4621212B2 (ja) 2011-01-26

Similar Documents

Publication Publication Date Title
JP4621212B2 (ja) データ伝送装置
JP5508289B2 (ja) 多重リンク障害からのネットワーク回復システム及び方法
US7903546B2 (en) Detecting unavailable network connections
US7969915B2 (en) Technical enhancements to STP (IEEE 802.1D) implementation
KR100656488B1 (ko) 라우팅 시스템 및 그 라우팅 시스템의 포워딩 정보관리방법
JP2005269059A (ja) データ中継装置、データ中継方法およびデータ中継プログラム
WO2010064532A1 (ja) 通信ネットワーク管理システム、方法、プログラム、及び管理計算機
US20060203735A1 (en) Bridge apparatus and control packet processing apparatus in a spanning tree protocol network
JP2006049963A (ja) ネットワークシステム、ノード及びノード制御プログラム、ネットワーク制御方法
JP2007060184A (ja) ネットワーク中継装置及びその制御方法
WO2010064531A1 (ja) 通信ネットワーク管理システム、方法、プログラム、及び管理計算機
JP2009194752A (ja) フレーム伝送装置およびループ判定方法
JP2007129606A (ja) 伝送路システム、および同システムにおけるフレーム伝送装置、ならびに伝送路切り替え方法、プログラム
JP5429697B2 (ja) 通信ネットワーク管理システム、方法、及び管理計算機
JP4532253B2 (ja) フレーム転送装置及びフレームのループ抑止方法
KR101075462B1 (ko) 서브넷에서 마스터 노드를 선출하는 방법
Canini et al. Renaissance: A self-stabilizing distributed SDN control plane using in-band communications
JP5711420B2 (ja) イーサネットノードの検出フレームタイムアウト時間の設定方法及びシステム
JP5100626B2 (ja) レイヤ2スイッチ
JP6042549B2 (ja) コンピュータネットワークを稼働する方法
JP4447385B2 (ja) Rprノード装置およびrprネットワークのフォワーディングパス制御方法
JP5494646B2 (ja) 通信ネットワーク管理システム、方法、及び管理計算機
JP4585560B2 (ja) ネットワーク障害検知方法、データ通信ネットワークシステムおよびノード装置
JP6503480B1 (ja) 通信システム、通信装置、通信方法及びコンピュータプログラム
JP4653800B2 (ja) 伝送路システム、フレーム伝送装置、伝送路システムにおける伝送路切り替え方法およびプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100323

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100517

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: 20101026

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: 20101029

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

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees