(57)【要約】  本願の開示する中継装置（１０）は、親ノード判定部（１１５）と、パケット送信部（１２０ｉ）と、パケット受信部（１２０ｈ）と、デコード部（１１７）と、パケット制御部（１２０ｊ）とを有する。パケット送信部は、親ノード判定部によって自装置が親ノードであると判定された場合に、親ノードレジスタ（１１３）に記憶されている設定値を自装置と接続されている全ての他装置に送信する。パケット受信部は、親ノード判定部によって自装置が親ノードでないと判定された場合に、設定値を受信する。デコード部は、パケット受信部によって受信された設定値を動作設定レジスタ（１１２）に設定する。パケット制御部は、パケット受信部によって受信された設定値が自装置から他装置に送信されたか否かを判定し、受信された設定値が他装置に送信されていないと判定した場合に、パケット送信部が自装置と接続されている他装置に受信された設定値を送信する。
2012117560.tif 000002
【特許請求の範囲】
【請求項１】
自装置が設定値を他装置に送信する親ノードであるか否かを判定する第一判定部と、
前記第一判定部によって自装置が親ノードであると判定された場合に、記憶部に記憶されている前記設定値を自装置と接続されている全ての他装置に送信する第一送信部と、
前記第一判定部によって自装置が親ノードでないと判定された場合に、前記設定値を受信する受信部と、
前記受信部によって受信された前記設定値を記憶部に設定する設定部と、
前記受信部によって受信された前記設定値が自装置から他装置に送信されたか否かを判定する第二判定部と、
前記第二判定部によって前記受信された設定値が他装置に送信されていないと判定された場合に、自装置と接続されている他装置に前記受信された設定値を送信する第二送信部と
を有することを特徴とする中継装置。
【請求項２】
前記記憶部に記憶されている前記設定値が他装置に送信されたか否かを判定する第三判定部を更に有し、
前記第一送信部は、前記第三判定部によって前記設定値が他装置に送信されていないと判定された場合に、自装置と接続されている他装置に前記設定値を送信することを特徴とする請求項１に記載の中継装置。
【請求項３】
前記第二送信部は、自装置と接続されている他装置のなかで、前記設定値の送信元である他装置を除く全ての他装置に前記設定値を送信することを特徴とする請求項１または２に記載の中継装置。
【請求項４】
他装置からの設定値を受信する受信部と、
前記受信部によって受信された前記設定値を記憶部に設定する設定部と、
前記受信部によって受信された前記設定値が自装置から他装置に送信されたか否かを判定する判定部と、
前記判定部によって前記設定値が他装置に送信されていないと判定された場合に、自装置と接続されている他装置に前記設定値を送信する送信部と
を有することを特徴とする中継装置。
【請求項５】
記憶部に記憶されている設定値を抽出する抽出部と、
前記抽出部によって抽出された前記設定値を自装置と接続されている全ての他装置に送信する送信部と
を有することを特徴とする中継装置。
【請求項６】
中継装置が
自装置が設定値を他装置に送信する親ノードであるか否かを判定し、
自装置が親ノードであると判定された場合に、記憶部に記憶されている前記設定値を自装置と接続されている全ての他装置に送信し、
自装置が親ノードでないと判定された場合に、前記設定値を受信し、
前記受信された前記設定値を記憶部に設定し、
前記受信された前記設定値が自装置から他装置に送信されたか否かを判定し、
前記設定値が他装置に送信されていないと判定された場合に、自装置と接続されている他装置に前記設定値を送信する処理と
を実行することを特徴とする設定値設定方法。
【請求項７】
中継装置が
他装置からの設定値を受信し、
前記設定値を記憶部に設定し、
前記設定値を自装置から他装置に送信したか否かを判定し、
前記設定値を他装置に送信していないと判定された場合に、自装置と接続されている他装置に前記設定値を送信する処理と
を実行することを特徴とする設定値設定方法。
【請求項８】
中継装置が、
記憶部に記憶されている設定値を抽出し、
前記抽出された設定値を自装置と接続されている全ての他装置に送信する処理と
を実行することを特徴とする設定値設定方法。
【請求項９】
中継装置が内蔵するコンピュータに
自装置が設定値を他装置に送信する親ノードであるか否かを判定させ、
自装置が親ノードであると判定した場合に、記憶部に記憶されている前記設定値を自装置と接続されている全ての他装置に送信させ、
自装置が親ノードでないと判定した場合に、前記設定値を受信させ、
前記受信された設定値を記憶部に設定させ、
前記受信された設定値が自装置から他装置に送信されたか否かを判定させ、
前記受信された設定値が他装置に送信されていないと判定した場合に、自装置と接続されている他装置に前記受信された設定値を送信させる
処理を実行させることを特徴とする設定値設定プログラム。
【請求項１０】
設定値を他装置に送信する中継装置である親ノードと、前記設定値を受信する中継装置である複数の子ノードとを有する中継システムであって、
前記親ノードは、
記憶部に記憶されている前記設定値を自装置と接続されている全ての他装置に送信する第一送信部を有し
前記子ノードは、
前記設定値を受信する受信部と、
前記受信部によって受信された前記設定値を記憶部に設定する設定部と、
前記受信部によって受信された前記設定値が自装置に接続された他装置に自装置から送信されたか否かを判定する第二判定部と、
前記第二判定部によって前記設定値が他装置に送信されていないと判定された場合に、自装置と接続されている他装置に前記設定値を送信する第二送信部と
を有することを特徴とする中継システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継装置、設定値設定方法、設定値設定プログラム及び中継システムに関する。
【背景技術】
【０００２】
従来、複数の中継装置の各ポートを接続した中継システムにおいて、中継装置は、データの内部に含まれる送信先アドレスを抽出し、ルーティングテーブルを参照して、抽出した送信先アドレスにデータを送信する。【０００３】
ルーティングテーブルは、管理者によってあらかじめ設定されるか、ルーティングプロトコルによって中継装置同士が経路情報を交換することで設定される。ところが、中継装置の電源投入直後には、ルーティングテーブルが設定されていないので、中継装置は、受信したデータを送信することができない。このようなことから、電源投入直後に、デフォルトルートを自動生成する中継装置に関する技術も知られている。【０００４】
また、中継装置は、デフォルトルートを自動生成する以外に、送信バッファサイズ、エラー訂正処理の処理手順及びシステム構成などの中継装置が動作するための設定値が設定される。このような設定値は、ＳＭＢｕｓ（System  Management  Bus）によって接続された管理端末を介して、管理者から設定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−３５９６３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の技術では、複数の中継装置に効率的に設定値を設定することができないという課題があった。【０００７】
例えば、管理者は、複数の中継装置それぞれに設定値を設定することになる。このため、中継装置の数が増加するに従い、管理者が設定値を設定する中継装置の数も増加する。すなわち、個々の中継装置それぞれに設定値を効率的に設定することは困難である。【０００８】
また、中継装置は、自装置と接続された中継装置に対して設定値を含むデータを送信して、設定値を設定することも考えられる。この場合、電源投入直後の中継装置にはルーティングテーブルが設定されていないので、中継装置は、デフォルトルートを生成してからデータを送信することになる。すなわち、中継装置は、電源投入直後に、設定値を効率的に設定することができない。【０００９】
また、中継装置は、ルーティングテーブルを参照せずに、設定値を含むデータをブロードキャストで送信することも考えられる。しかし、このような場合には、中継装置の接続がループ状になっている箇所では、ブロードキャストで送信されたデータが繰り返し送受信されるループが生じてしまう。したがって、中継装置は、個々の中継装置に対して、データをブロードキャストで送信した場合、効率的に設定値を設定することができない。【００１０】
１つの側面では、複数の中継装置に効率的に設定値を設定することができる中継装置、設定値設定方法、設定値設定プログラム及び中継システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
第１の案では中継装置は、自装置が設定値を他装置に送信する親ノードであるか否かを判定し、自装置が親ノードであると判定した場合に、記憶部に記憶されている設定値を自装置と接続されている全ての他装置に送信する。また、中継装置は、自装置が親ノードでないと判定した場合に、設定値を受信し、受信した設定値を記憶部に設定する。そして、中継装置は、受信した設定値が自装置から他装置に送信されたか否かを判定し、受信した設定値が他装置に送信されていないと判定した場合に、自装置と接続されている他装置に受信した設定値を送信する。【００１２】
第２の案では中継装置は、設定値を受信し、受信した設定値を記憶部に設定する。また、中継装置は、受信した設定値が送信されたか否かを判定し、設定値が送信されていないと判定した場合に、自装置と接続されている全ての他装置に対して当該設定値を送信する。【００１３】
第３の案では中継装置は、記憶部に記憶されている設定値を抽出し、抽出した設定値を自装置と接続されている全ての他装置に対して送信する。
【発明の効果】
【００１４】
複数の中継装置に効率的に設定値を設定することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、実施例１に係る中継システムの構成例を示す図である。
【図２】図２は、中継装置の処理動作を説明する図である。
【図３】図３は、実施例１に係る中継装置の構成を示すブロック図である。
【図４】図４は、パケット生成部が生成する初期化パケットを説明する図である。
【図５】図５は、パケット制御部による、各レジスタの内容に基づくパケット送信許可の判定結果を説明する図である。
【図６】図６は、実施例１に係る中継装置による処理の処理手順を示すフローチャートである。
【図７】図７は、設定値設定プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１６】
以下に、本願の開示する中継装置、設定値設定方法、設定値設定プログラム及び中継システムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例１】
【００１７】
［実施例１に係る中継システムの構成］
まず、図１を用いて、実施例１に係る中継システムについて説明する。なお、以下では、実施例１に係る中継システムの構成、実施例１に係る中継システムの処理動作の説明、実施例１に係る中継装置の構成、実施例１に係る中継装置による処理の処理手順、実施例１による効果を順に説明する。【００１８】
図１は、実施例１に係る中継システムの構成例を示す図である。図１に示すように、実施例１に係る中継システム１は、中継装置１０、１１、１２、２０、２１、２２、３０、３１及び３２を有する。中継装置１０は、中継装置１１、２０と通信可能に接続されている。中継装置１１は、中継装置１０、１２、２１と通信可能に接続されている。中継装置１２は、中継装置１１、２２と通信可能に接続されている。中継装置２０は、中継装置１０、２１、３０と通信可能に接続されている。中継装置２１は、中継装置１１、２０、２２、３１と通信可能に接続されている。中継装置２２は、中継装置１２、２１、３２と通信可能に接続されている。中継装置３０は、中継装置２０、３１と通信可能に接続されている。中継装置３１は、中継装置２１、３０、３２と通信可能に接続されている。中継装置３２は、中継装置２２、３１と通信可能に接続されている。【００１９】
図１に示した中継装置のうちいずれか１つは、電源投入直後に、初期化パケットを生成する親ノードに設定される。ここでは、中継装置１０を親ノード、中継装置１１、１２、２０、２１、２２、３０、３１及び３２を子ノードとして説明する。また、中継装置１１、１２、２０、２１、２２、３０、３１及び３２の動作は同様であるため、ここでは、中継装置１１の動作についてのみ説明する。【００２０】
親ノードである中継装置１０は、自装置が設定値を他装置に送信する親ノードであるか否かを判定し、自装置が親ノードであると判定した場合に、記憶部に記憶されている設定値を自装置と接続されている全ての他装置に送信する。【００２１】
子ノードである中継装置１１は、自装置が設定値を他装置に送信する親ノードであるか否かを判定し、自装置が親ノードでないと判定した場合に、設定値を受信し、受信した設定値を記憶部に設定する。そして、中継装置１１は、受信した設定値が自装置から他装置に送信されたか否かを判定し、受信した設定値が他装置に送信されていないと判定した場合に、自装置と接続されている他装置に受信した設定値を送信する。【００２２】
［実施例１に係る中継システムの処理動作の説明］
次に、図２を用いて、図１に示した中継装置各々に、初期設定を行う場合の中継装置の処理動作を説明する。図２は、中継装置の処理動作を説明する図である。ここでは、一例として、図１に示した、中継装置１０、１１、２０、２１間の初期設定処理について説明する。なお、以下では、中継装置１０を親ノード、中継装置１１、２０及び２１を子ノードとして説明する。【００２３】
親ノードである中継装置１０は、管理者によって自装置の動作を規定する設定値が設定された後、設定値が格納されたパケットである初期化パケットを生成し、生成した初期化パケットを中継装置１１と中継装置２０に送信し処理を終了する（Ｓ１、Ｓ２）。そして、中継装置１１は、中継装置１０から受信した初期化パケットから初期値を抽出し、抽出した初期値を自装置に設定する。そして、中継装置１１は、初期化パケットを送信したか否かを判定し、送信していないと判定した場合に、中継装置２１に初期化パケットを転送し（Ｓ３）、処理を終了する。【００２４】
同様に、中継装置２０は、中継装置１０から受信した初期化パケットから初期値を抽出し、抽出した初期値を自装置に設定する。そして、中継装置２０は、初期化パケットを送信したか否かを判定し、送信していないと判定した場合に、中継装置２１に初期化パケットを転送し（Ｓ４）、処理を終了する。【００２５】
また、中継装置２１は、中継装置１１から受信した初期化パケットから初期値を抽出し、抽出した初期値を自装置に設定する。そして、中継装置２１は、初期化パケットを送信したか否かを判定し、送信していないと判定した場合に、中継装置２０に初期化パケットを転送し（Ｓ５）、処理を終了する。【００２６】
ここで、中継装置２０は、中継装置２１から初期化パケットを受信した場合、既に初期化パケットを送信しているので、受信した初期化パケットを他の中継装置には転送しない。同様に、中継装置２１は、中継装置２０から初期化パケットを受信した場合、既に初期化パケットを送信しているので、受信した初期化パケットを他の中継装置には転送しない。【００２７】
このようにして、中継システム１において、親ノードである中継装置１０が初期化パケットを送信する。そして、初期化パケットを受信した中継装置１１、２０及び２１は、受信した初期化パケットから初期値を抽出し、抽出した初期値を自装置に設定する。また、中継装置１１、２０及び２１は、初期化パケットを受信した場合、初期化パケットを送信したか否かを判定し、初期化パケットを送信していないと判定した場合に、初期化パケットを他の中継装置に転送する。一方、中継装置１１、２０及び２１は、初期化パケットを送信していると判定した場合に、初期化パケットを他の中継装置には転送しない。【００２８】
［実施例１に係る中継装置の構成］
次に、図３を用いて、実施例１に係る中継装置の構成を説明する。図３は、実施例１に係る中継装置の構成を示すブロック図である。また、中継装置１０、１１、１２、２０、２１、２２、３０、３１及び３２の構成は同様であるので、ここでは、中継装置１０を例にして説明する。【００２９】
実施例１に係る中継装置１０は、初期化パケット保持レジスタ１１１と、動作設定レジスタ１１２と、親ノードレジスタ１１３と、ルーティングテーブル１１４と、親ノード判定部１１５と、パケット生成部１１６と、デコード部１１７とを有する。また、実施例１に係る中継装置１０は、ポート１２０と、ポート１３０と、ポート１４０と、ポート１５０とを有する。なお、ここでは、中継装置１０が有するポートの数を４つとして説明するが、中継装置１０が有するポートの数は、これに限定されるものではなく、任意に設定可能である。【００３０】
初期化パケット保持レジスタ１１１は、中継装置１０が子ノードである場合、パケット受信部１２０ｈから受信した初期化パケットを保持する。また、初期化パケット保持レジスタ１１１は、中継装置１０が親ノードである場合、パケット生成部１１６から受信した初期化パケットを保持する。【００３１】
動作設定レジスタ１１２は、中継装置１０の動作を規定する各種の設定値を記憶するレジスタである。例えば、動作設定レジスタ１１２は、送信バッファサイズ、エラー訂正処理の処理手順及びシステム構成などの中継装置が動作するための設定値を記憶する。【００３２】
また、動作設定レジスタ１１２は、中継装置１０が親ノードに設定される場合、ＳＭＢｕｓ（System  Management  Bus）によって接続された図示しない管理端末を介して、管理者から初期値の設定を受付ける。動作設定レジスタ１１２は、中継装置１０が子ノードに設定される場合、デコード部１１７によって初期化パケットから抽出された初期値の設定を受付ける。【００３３】
親ノードレジスタ１１３は、自装置が親ノードであるか否かを判定する識別子を記憶するレジスタである。例えば、親ノードレジスタ１１３は、自装置が親ノードである場合に、「１」を格納され、自装置が親ノードではない場合、すなわち子ノードである場合に、「０」を格納される。【００３４】
また、親ノードレジスタ１１３は、中継装置１０が親ノードに設定される場合、ＳＭＢｕｓ（System  Management  Bus）によって接続された図示しない管理端末を介して、管理者から自装置が親ノードであることを示す「１」を格納される。【００３５】
ルーティングテーブル１１４は、送信先アドレスと送信ポートとを対応付けた情報である。例えば、ルーティングテーブル１１４は、半導体メモリ素子、又はハードディスクなどの記憶装置に記憶される。ルーティングテーブル１１４は、受信ポート１２０ｆを介してパケット受信部１２０ｈが受信したパケットを他の通信装置へ転送する場合、パケット制御部１２０ｊにより参照される。【００３６】
親ノード判定部１１５は、中継装置１０の電源投入を契機として、親ノードレジスタ１１３に格納されたた識別子を判定し、中継装置１０が親ノードであるか否かを判定する。例えば、親ノード判定部１１５は、親ノードレジスタ１１３に「１」が格納されていた場合、中継装置１０が親ノードであると判定する。また、親ノード判定部１１５は、親ノードレジスタ１１３に「０」が格納されていた場合、中継装置１０が子ノードであると判定する。【００３７】
また、親ノード判定部１１５は、中継装置１０が親ノードであると判定した場合、パケット生成部１１６、デコード部１１７、後述するパケット制御部１２０ｊに中継装置１０が親ノードであることを通知する。同様に、親ノード判定部１１５は、中継装置１０が子ノードであると判定した場合、パケット生成部１１６、デコード部１１７、後述するパケット制御部１２０ｊに中継装置１０が子ノードであることを通知する。なお、親ノード判定部１１５は、第一判定部の一例である。【００３８】
パケット生成部１１６は、親ノード判定部１１５から中継装置１０が親ノードであることを通知された場合、初期化パケットを生成する。例えば、パケット生成部１１６は、動作設定レジスタ１１２に設定された設定値を抽出し、抽出した設定値から初期化パケットを生成する。そして、パケット生成部１１６は、生成した初期化パケットを初期化パケット保持レジスタ１１１に出力する。【００３９】
図４を用いて、パケット生成部１１６が生成する初期化パケットを説明する。図４は、パケット生成部が生成する初期化パケットを説明する図である。図４に示す初期化パケットは、先頭から８ｂｉｔの「Ｏｐｅｃｏｄｅ」、２ｂｉｔの任意の値、６ｂｉｔの「宛先情報」、２ｂｉｔの任意の値、１２ｂｉｔの「初期設定値」、２ｂｉｔの任意の値を含む。【００４０】
ここで、パケットに含まれる「Ｏｐｅｃｏｄｅ」には、初期化パケットであることを示す「ＩＮＩＴ」が格納される。また、「宛先情報」には、今後の動作で直接参照されないため、任意の値であってもよい。また、「初期設定値」には、中継装置１０の動作を規定する各種の設定値が格納される。例えば、「初期設定値」には、動作設定レジスタ１１２に格納される値が格納される。なお、図４に示した初期化パケットは、一例に過ぎず、これに限定されるものではない。例えば、「初期設定値」には、管理者によって設定された任意の値が格納される。なお、パケット生成部１１６は、抽出部の一例であり、初期設定値は設定値の一例である。【００４１】
図３に戻り、デコード部１１７は、親ノード判定部１１５から中継装置１０が子ノードであることを通知された場合、初期化パケット保持レジスタ１１１に保持された初期化パケットから初期値を抽出し、抽出した初期値を動作設定レジスタ１１２に設定する。【００４２】
例えば、デコード部１１７は、親ノード判定部１１５から中継装置１０が子ノードであることを通知された場合、定期的に初期化パケット保持レジスタ１１１を監視し、初期化パケットが保持されているか否かを判定する。そして、デコード部１１７は、初期化パケット保持レジスタ１１１に初期化パケットが保持されていると判定した場合、初期化パケットから初期値を抽出し、抽出した初期値を動作設定レジスタ１１２に設定する。デコード部１１７は、動作設定レジスタ１１２に抽出した初期値を設定した場合、初期化パケット保持レジスタ１１１の監視を終了する。一方、デコード部１１７は、初期化パケット保持レジスタ１１１に初期化パケットが保持されていないと判定した場合、継続して初期化パケット保持レジスタ１１１を監視する。なお、デコード部１１７は、設定部の一例である。【００４３】
パケット生成部１１６、デコード部１１７は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。または、パケット生成部１１６、デコード部１１７は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。【００４４】
ポート１２０は、リモートプレゼンスレジスタ１２０ａと、リンクアップ完了レジスタ１２０ｂと、パケット送信レジスタ１２０ｃと、パケット受信レジスタ１２０ｄと、送信ポート１２０ｅと、受信ポート１２０ｆとを有する。また、ポート１２０は、ポート初期化制御部１２０ｇと、パケット受信部１２０ｈと、パケット送信部１２０ｉと、パケット制御部１２０ｊとを有する。なお、ポート１２０、１３０、１４０、１５０の構成は同様であるので、ここでは、ポート１２０の構成についてのみ説明し、ポート１３０、１４０、１５０の説明は省略する。【００４５】
リモートプレゼンスレジスタ１２０ａは、対向ポートが検出できるか否かを判定する識別子を記憶するレジスタである。例えば、リモートプレゼンスレジスタ１２０ａは、対向ポートが検出できる場合に、「１」を格納され、対向ポートが検出できない場合に、「０」を格納される。【００４６】
リンクアップ完了レジスタ１２０ｂは、対向ポートとのリンクアップが完了したか否かを示す識別子を記憶するレジスタである。例えば、リンクアップ完了レジスタ１２０ｂは、対向ポートとのリンクアップが完了した場合に、「１」を格納され、対向ポートとのリンクアップが完了していない場合に、「０」を格納される。【００４７】
パケット送信レジスタ１２０ｃは、中継装置１０がポート１２０から初期化パケットを送信したか否かを示す識別子を記憶するレジスタである。例えば、パケット送信レジスタ１２０ｃは、ポート１２０から初期化パケットを送信した場合に、「１」を格納され、ポート１２０から初期化パケットを送信していない場合に、「０」を格納される。【００４８】
パケット受信レジスタ１２０ｄは、中継装置１０がポート１２０から初期化パケットを受信したか否かを示す識別子を記憶するレジスタである。例えば、パケット受信レジスタ１２０ｄは、ポート１２０から初期化パケットを受信した場合に、「１」を格納され、ポート１２０から初期化パケットを受信していない場合に、「０」を格納される。【００４９】
送信ポート１２０ｅは、図示しない、対向する通信装置の受信ポートと伝送路を介して接続され、対向する通信装置へパケットを送信するポートである。また、受信ポート１２０ｆは、図示しない、対向する通信装置の送信ポートと伝送路を介して接続され、対向する通信装置からパケットを受信するポートである。対向する通信装置の受信ポート又は送信ポートを「対向ポート」と呼ぶ。【００５０】
ポート初期化制御部１２０ｇは、対向ポートが検出できるか否かを判定し、対向ポートを検出できた場合に、リモートプレゼンスレジスタ１２０ａに「１」を書き込む。また、ポート初期化制御部１２０ｇは、対向ポートとのリンクアップが完了したか否かを判定し、対向ポートとのリンクアップが完了した場合に、リンクアップ完了レジスタ１２０ｂに「１」を書き込む。【００５１】
パケット受信部１２０ｈは、受信ポート１２０ｆを介して受信したパケットが初期化パケットである場合、初期化パケットを初期化パケット保持レジスタ１１１へ格納する。ここで、パケット受信部１２０ｈは、受信ポート１２０ｆを介して受信したパケットの「Ｏｐｅｃｏｄｅ」を読み出し、「ＩＮＩＴ」が格納されていた場合、受信ポート１２０ｆを介して受信したパケットが初期化パケットであると判定する。【００５２】
また、パケット受信部１２０ｈは、受信ポート１２０ｆを介して受信したパケットが初期化パケットである場合、受信したパケットが初期化パケットであることをパケット制御部１２０ｊに通知する。また、パケット受信部１２０ｈは、受信ポート１２０ｆを介して受信したパケットが初期化パケットである場合、パケット受信レジスタ１２０ｄに「１」を書き込む。なお、パケット受信部１２０ｈは、受信部の一例である。【００５３】
パケット送信部１２０ｉは、初期化パケット保持レジスタ１１１に保持される初期化パケットを複製し、複製した初期化パケットを初期化パケット保持レジスタ１１１から取り出す。そして、パケット送信部１２０ｉは、複製した初期化パケットを初期化パケット保持レジスタ１１１から取り出したことをパケット制御部１２０ｊに通知する。【００５４】
また、パケット送信部１２０ｉは、パケット制御部１２０ｊから初期化パケットの送信を許可された場合、複製した初期化パケットを送信ポート１２０ｅへ出力する。また、パケット送信部１２０ｉは、初期化パケットを送信ポート１２０ｅに出力した場合、パケット送信レジスタ１２０ｃに「１」を書き込む。なお、パケット送信部１２０ｉは、取り出したパケットの「Ｏｐｅｃｏｄｅ」を読み出し、「ＩＮＩＴ」が格納されていた場合、取り出したパケットが初期化パケットであると判定する。なお、パケット送信部１２０ｉは、第一送信部と第二送信部の一例である。【００５５】
パケット制御部１２０ｊは、パケット送信レジスタ１２０ｃ及びパケット受信レジスタ１２０ｄに格納された値から、初期化パケットを送信してもよいか否かを判定する。なお、パケット制御部１２０ｊは、第二判定部と第三判定部の一例である。図５を用いて、パケット制御部１２０ｊによる、リモートプレゼンスレジスタ１２０ａ、リンクアップ完了レジスタ１２０ｂ、パケット送信レジスタ１２０ｃ、パケット受信レジスタ１２０ｄの各レジスタの内容に基づくパケット送信許可について説明する。【００５６】
図５は、パケット制御部１２０ｊによる、各レジスタの内容に基づくパケット送信許可の判定結果を説明する図である。以下では、中継装置１０が親ノードである場合、中継装置１０が子ノードである場合について、パケット制御部１２０ｊによるパケット送信許可の判定結果を説明する。ここでは、中継装置１０が、初期化パケットを受信したポート以外のリンクアップが完了している全てのポートに、初期化パケットの送信を許可する場合のパケット制御部１２０ｊの動作について説明する。【００５７】
（中継装置１０が親ノードである場合）
親ノード判定部１１５から中継装置１０が親ノードであることを通知された場合の、パケット制御部１２０ｊによるパケット送信許可の判定処理動作を説明する。パケット制御部１２０ｊは、リモートプレゼンスレジスタが「０」の場合、初期化パケットの送信を許可しない（図５のケース１）。また、パケット制御部１２０ｊは、リモートプレゼンスレジスタが「１」であっても、リンクアップ完了レジスタが「０」の場合、初期化パケットの送信を許可しない（図５のケース２）。なお、ここで説明したケース１及びケース２は、中継装置が子ノードである場合においても共通に実行される処理である。【００５８】
パケット制御部１２０ｊは、リモートプレゼンスレジスタが「１」、リンクアップ完了レジスタが「１」、パケット送信レジスタが「０」、パケット受信レジスタが「０」の場合、初期化パケットの送信を許可する（図５のケース３）。その後、パケット送信部１２０ｉによって初期化パケットが送信され、パケット送信レジスタに「１」に書き込まれた場合、パケット制御部１２０ｊは、初期化パケットの送信を許可しない状態に遷移する（図５のケース４）。【００５９】
（中継装置１０が子ノードである場合）
続いて、親ノード判定部１１５から中継装置１０が子ノードであることを通知された場合の、パケット制御部１２０ｊによるパケット送信許可の判定処理動作を説明する。ここでは、パケット制御部１２０ｊを含むポート１２０とは異なるポート１３０〜１５０のいずれかが初期化パケットを受信した場合、パケット制御部１２０ｊを含むポート１２０が初期化パケットを受信した場合について順に説明する。なお、中継装置１０は、自装置が子ノードである場合にも、中継装置１０が親ノードである場合と同様に、最初にケース１からケース２の状態に遷移するが、ここでは、ケース１及びケース２の状態ついては、説明を省略する。【００６０】
まず、パケット制御部１２０ｊを含むポート１２０とは異なるポート１３０〜１５０のいずれかが初期化パケットを受信した場合について説明する。パケット制御部１２０ｊは、リモートプレゼンスレジスタが「１」、リンクアップ完了レジスタが「１」、パケット送信レジスタが「０」、パケット受信レジスタが「０」の場合、初期化パケットの送信を許可する（図５のケース３）。その後、パケット送信部１２０ｉによって初期化パケットが送信され、パケット送信レジスタに「１」に書き込まれた場合、パケット制御部１２０ｊは、初期化パケットの送信を許可しない状態に遷移する（図５のケース４）。【００６１】
次に、パケット制御部１２０ｊを含むポート１２０が初期化パケットを受信した場合について説明する。実施例１に係る中継装置１０は、初期化パケットを受信したポート１２０以外のポート１３０〜１５０に初期化パケットを送信する。例えば、パケット制御部１２０ｊは、リモートプレゼンスレジスタが「１」、リンクアップ完了レジスタが「１」、パケット送信レジスタが「０」であっても、パケット受信レジスタが「１」の場合、初期化パケットの送信を許可しない（図５のケース５）。【００６２】
ポート初期化制御部１２０ｇ、パケット受信部１２０ｈ、パケット送信部１２０ｉ、パケット制御部１２０ｊは、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。または、ポート初期化制御部１２０ｇ、パケット受信部１２０ｈ、パケット送信部１２０ｉ、パケット制御部１２０ｊは、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。【００６３】
［実施例１に係る中継装置による処理の処理手順］
次に図６を用いて、実施例１に係る中継装置１０による処理の処理手順を説明する。図６は、実施例１に係る中継装置による処理の処理手順を示すフローチャートである。例えば、この処理は、中継装置１０に電源が投入されたことを契機に実行される。【００６４】
図６に示すように、中継装置１０は、電源が投入された直後、自装置が親ノードに設定されたか否かを判定する（ステップＳ１０１）。ここで、中継装置１０は、自装置が親ノードであると判定した場合（ステップＳ１０１、Ｙｅｓ）、初期化パケットを生成して、パケット送信可能な全てのポートに生成した初期化パケット送信し（ステップＳ１０２）、処理を終了する。【００６５】
一方、中継装置１０は、自装置が親ノードではないと判定した場合（ステップＳ１０１、Ｎｏ）、親ノードから初期化パケットを受信したか否かを判定する（ステップＳ１０３）。ここで、中継装置１０は、親ノードから初期化パケットを受信していないと判定した場合（ステップＳ１０３、Ｎｏ）、初期化パケットを受信するまで処理を待機する。一方、中継装置１０は、親ノードから初期化パケットを受信したと判定した場合（ステップＳ１０３、Ｙｅｓ）、受信した初期化パケットから初期値を抽出し、抽出した初期値を動作設定レジスタ１１２に格納する。【００６６】
続いて、中継装置１０は、他ポートへ初期化パケットを送信済みであるか否かを判定する（ステップＳ１０５）。そして、中継装置１０は、他ポートへ初期化パケットを送信済みでないと判定した場合（ステップＳ１０５、Ｎｏ）、受信ポート以外の送信可能なポートへ初期化パケットを送信して（ステップＳ１０６）、処理を終了する。一方、中継装置１０は、他ポートへ初期化パケットを送信済みであると判定した場合には（ステップＳ１０５、Ｙｅｓ）、処理を終了する。すなわち、中継装置１０は、初期化パケットを受信しても、受信した初期化パケットを他装置に送信しない。【００６７】
［実施例１の効果］
上述してきたように、本実施例１では、中継装置１０は、自装置が親ノードである場合、初期化パケットを生成し、生成した初期化パケットを自装置と接続された全ての他装置に送信する。また、中継装置１０は、自装置が子ノードである場合、他装置から受信した初期化パケットから初期値を抽出し、抽出した初期値を自装置に設定する。このようにして、中継装置１０は、ルーティングテーブルが設定されていない、電源投入直後の中継システム１内の全ての中継装置に、パケットを送信して初期値を設定することができる。【００６８】
また、本実施例に係る中継装置１０は、自装置が既にパケットを送信したか否かを判定し、送信したと判定した場合には、受信したパケットを他装置に送信しない。したがって、中継装置は、初期設定終了後に受信した初期化パケットを他装置へ送信を繰り返す、パケットのループを発生させない。【００６９】
また、本実施例に係る中継装置１０は、初期化パケットを受信したポート以外の全てのポートと接続された他装置に対して初期化パケットを送信する。このため、中継装置１０は、リンクアップされた全ての中継装置にパケットを送信する場合よりも、パケットの送信数を軽減できる。【００７０】
ところで、図３に示した中継装置１０の構成は一例であり、中継装置１０は、必ずしも図３に示した各処理部を全て有していなくても良い。例えば、中継装置１０は、親ノード判定部１１５とパケット生成部１１６とデコード部１１７とパケット受信部１２０ｈとパケット送信部１２０ｉとパケット制御部１２０ｊとを有していれば良い。
【実施例２】
【００７１】
ところで、本願の開示する中継装置は、上述した実施例以外にも、種々の異なる形態にて実施されてよい。そこで、実施例２では、本願の開示する中継装置の他の実施例について説明する。【００７２】
（システム構成等）
本実施例において説明した各処理のうち自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。【００７３】
この他、上記文章中や図面中で示した処理手順、制御手順、具体的名称については、特記する場合を除いて任意に変更することができる。例えば、中継装置１０は、自装置が子ノードである場合、初期化パケットを他装置に送信した後に、初期化パケット保持レジスタ１１１に保持される初期化パケットから初期値を抽出し、抽出した初期値を動作設定レジスタ１１２に設定してもよい。【００７４】
また、本願が適用可能な中継装置は、ルータやＬ２スイッチに適用することが可能である。また、中継装置は、設定値を格納したパケットを送受信するものとして説明したが、パケットに限定されず、フレーム、データグラム、セグメント、メッセージなどに設定値を格納し送受信してもよい。【００７５】
また、実施例１に係る中継装置１０は、初期化パケットを受信したポート以外のポートに初期化パケットを送信するものとして説明したがこれに限定されるものではない。例えば、中継装置１０は、初期化パケットを受信したポートにも初期化パケットを送信するように構成されてもよい。この場合、パケット制御部１２０ｊは、ポート１２０を介して初期化パケットを受信したパケット受信部１２０ｈによって、パケット受信レジスタに「１」が書き込まれた場合にも、初期化パケットの送信を許可する。そして、パケット送信部１２０ｉによって初期化パケットが送信され、パケット送信レジスタに「１」に書き込まれた場合、パケット制御部１２０ｊは、初期化パケットの送信を許可しない状態に遷移する。【００７６】
また、親ノード判定部１１５は、電源投入を契機として、処理を実行するものとして説明したが、これに限定されるものではない。例えば、親ノード判定部１１５は、中継システムの運用中に、管理者から設定値の再設定を受付けた場合、設定値の再設定を契機として、自装置が親ノードであるか否かを判定する処理を実行するようにしてもよい。【００７７】
また、中継システムにおいて、システムの運用を開始した後に、親ノードに設定した中継装置を子ノードに変更し、子ノードに設定した中継装置のうちいずれか１つを親ノードに変更してもよい。例えば、管理者は、ＳＭＢｕｓによって接続された管理端末を介して、親ノードレジスタ１１３に格納される識別子「１」を「０」に書き換えることで、親ノードに設定した中継装置を子ノードに変更する。また、管理者は、ＳＭＢｕｓによって接続された管理端末を介して、親ノードレジスタ１１３に格納される識別子「０」を「１」に書き換えることで、子ノードに設定した中継装置のうちいずれか１つを親ノードに変更する。【００７８】
また、中継装置１０は、親ノードに固定して運用される場合、必ずしも図３に示した各処理部を全て有していなくても良く、親ノードの処理を実行する機能のみを有していれば良い。例えば、親ノードに固定して運用される中継装置１０は、親ノード判定部１１５とデコード部１１７とパケット受信部１２０ｈとを含まなくても良い。また、中継装置１０は、子ノードに固定して運用される場合、必ずしも図３に示した各処理部を全て有していなくても良く、子ノードの処理を実行する機能のみを有していれば良い。例えば、子ノードに固定して運用される中継装置１０は、親ノード判定部１１５とパケット生成部１１６とを含まなくても良い。【００７９】
また、図示した各構成部は、機能概念的なものであり、必ずしも物理的に図示のごとく構成されていることを要しない。例えば、中継装置１０において、パケット生成部１１６とデコード部１１７とは統合されてもよい。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。【００８０】
（プログラム）
ところで、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。【００８１】
図７は、設定値設定プログラムを実行するコンピュータを示す図である。図７に示すように、コンピュータ３００は、ＨＤＤ（ハードディスクドライブ）３１０とＲＡＭ３２０とＲＯＭ（Read  Only  Memory）３３０とＣＰＵ３４０と他の装置とデータを送受信するネットワークインターフェース３５０とバス３６０とを有する。そして、各装置３１０〜３５０それぞれは、バス３６０に接続される。【００８２】
ここで、図７に示す、ＲＯＭ３３０には、設定値設定プログラム３３１が予め記憶されている。設定値設定プログラム３３１は、図３に示した、親ノード判定部１１５とパケット生成部１１６とデコード部１１７とパケット受信部１２０ｈとパケット送信部１２０ｉとパケット制御部１２０ｊと同様の機能を発揮する。【００８３】
そして、ＣＰＵ３４０は、設定値設定プログラム３３１をＲＯＭ３３０から読み出して、設定値設定プロセス３４１として実行する。すなわち、設定値設定プロセス３４１は、図３に示した、親ノード判定部１１５とパケット生成部１１６とデコード部１１７とパケット受信部１２０ｈとパケット送信部１２０ｉとパケット制御部１２０ｊと同様の動作を実行する。【００８４】
ところで、上記した設定値設定プログラム３３１は、必ずしもＲＯＭ３３０に記憶させておく必要はない。例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータ３００の内外に備えられるＨＤＤなどの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）などを介してコンピュータ３００に接続される「他のコンピュータ」に記憶させておいてもよい。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。【００８５】
すなわち、このプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記憶されるものである。そして、コンピュータ３００は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータ３００によって実行されることに限定されるものではない。例えば、他のコンピュータまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【符号の説明】
【００８６】
１  中継システム
１０、１１、１２、２０、２１、２２、３０、３１、３２  中継装置
１１１  初期化パケット保持レジスタ
１１２  動作設定レジスタ
１１３  親ノードレジスタ
１１４  ルーティングテーブル
１１５  親ノード判定部
１１６  パケット生成部
１１７  デコード部
１２０、１３０、１４０、１５０  ポート
１２０ａ  リモートプレゼンスレジスタ
１２０ｂ  リンクアップ完了レジスタ
１２０ｃ  パケット送信レジスタ
１２０ｄ  パケット受信レジスタ
１２０ｅ  送信ポート
１２０ｆ  受信ポート
１２０ｇ  ポート初期化制御部
１２０ｈ  パケット受信部
１２０ｉ  パケット送信部
１２０ｊ  パケット制御部
【図１】
2012117560.tif 000003
【図２】
2012117560.tif 000004
【図３】
2012117560.tif 000005
【図４】
2012117560.tif 000006
【図５】
2012117560.tif 000007
【図６】
2012117560.tif 000008
【図７】
2012117560.tif 000009
【国際調査報告】
2012117560.tif 000010
2012117560.tif 000011