以下、本発明の実施の形態について、実施例を用い図面を参照しながら詳細に説明する。なお、実質同一部位には同じ参照番号を振り、説明は繰り返さない。
まず、図1を参照してネットワーク装置100のハードウェア構成を説明する。図1において、ネットワーク装置100は、制御部101と、回線部102と、ボタン検出部103と、ランプ制御部104と、ボタン105と、ランプ106と、リセットボタン107っと、リセットボタン検出部108と、スイッチング部109とで構成される。
制御部101は、マスタ確認用フレーム、スタック構成確認用フレームの送受信処理およびスタック構成判定処理を行なう。回線部102は、図示しない複数のポートで構成されている。全てのポートは、回線ポートまたはスタックポートに設定できる。ボタン検出部103は、ユーザのボタン105押下を一定時間カウントし、予め定めた閾値に到達した場合、制御部101へ通知を行なう。ランプ制御部104は、制御部101の制御からの点灯命令、点滅命令、消灯命令に従いランプ106の点灯、点滅、消灯を行なう。
リセットボタン検出部108は、ユーザのリセットボタン107押下を一定時間カウントし、予め定めた閾値に到達した場合、制御部101へ通知を行なう。スイッチング部109は、回線部102から受信したフレーム/パケットについて、制御部101の制御に基づいて、回線部102へ転送する。スイッチング部109は、受信したマスタ確認用フレームを制御部101に送信する。スイッチング部109は、受信したスタック構成確認用フレームを制御部101に送信する。
図2を参照して、スタック構成までの状態遷移を説明する。図2において、ネットワーク装置100は、電源オン後、待機状態201に移行する。待機状態201にてボタン押下があった場合、ネットワーク装置100は、スタックポート自動設定状態203に移行する。待機状態201にて一定時間の間にボタン押下がなかった場合(タイムアウト)、ネットワーク装置100は、装置100を単体で使用するスタンドアローン状態208に移行する。スタンドアローン状態208にてフレーム受信があると、ネットワーク装置100は、スタックポート自動設定状態203に移行する。スタンドアローン状態208にてリセットボタン押下が行なわれると、ネットワーク装置100は、待機状態201に移行する。スタックポート自動設定状態203でスタックポート設定完了となると、ネットワーク装置100は、スタック自動構成状態205に移行する。スタックポート自動設定状態203でリセットとなると、ネットワーク装置100は、待機状態201に移行する。
スタック自動構成状態205は、一般的に実現されている技術である。スタック自動構成状態205でボタン押下があった場合、ネットワーク装置100は、スタックポート自動設定状態203に移行する。スタック自動構成205でリセットが行なわれると、ネットワーク装置100は、待機状態201に移行する。
スタックポート自動設定状態203について説明する。初めに、図3および図4を参照して、使用するフレームについて説明する。使用するフレームは、マスタ確認用フレーム300とスタック構成確認用フレーム400がある。マスタ確認用フレーム300、スタック構成確認用フレーム400ともにフレームの種類は問わないが、ここでは一般的なイーサネット(登録商標)フレームの使用とする。
図3において、マスタ確認用フレーム300は、ヘッダ部301と、データ部302と、FCS303とで構成されている。FCS303は、Frame Check Sequenceである。FCS303は、フレーム内のデータの正常性を判定する既存技術である。データ部302は、識別子304と、装置通過数305と、N個のシリアル306が格納される。識別子304、装置通過数305、シリアル306は、固定バイト長である。
識別子304は、マスタ確認用フレーム300とスタック構成確認用フレーム400の識別を行なうためのものである。装置通過数305は、スタック構成可能なネットワーク装置100の最大数(図3ではNと表記)から転送されたネットワーク装置100の数を引いた値を示すものである。装置通過数305の初期値は、スタック構成可能なネットワーク装置100の最大数である。シリアル306−0は、1番目に通過したネットワーク装置100のシリアルである。シリアル306ー(N−1)は、N番目に通過したネットワーク装置100のシリアル番号である。シリアル306は、スタック構成可能なネットワーク装置100の最大数分格納可能な構成とする。このネットワーク装置100の最大数は設計者が決定する。
図4において、スタック構成確認用フレーム400は、ヘッダ部401と、データ部402と、FCS403とで構成されている。データ部402は、識別子404、装置通過数405、シリアル406、ポート番号407が格納される。識別子404、装置通過数405、シリアル406、シリアル408、ポート番号407、ポート番号409は、固定バイト長である。識別子404、装置通過数405、シリアル406、シリアル408は、マスタ確認用フレーム300と同様の形式である。ポート番号407−0は、1番目に通過したネットワーク装置100のポート番号である。ポート番号407ー(N−1)は、N番目に通過したネットワーク装置100のポート番号である。ポート番号407は、スタック構成可能なネットワーク装置100の最大数分格納可能な構成とする。
図5ないし図9を参照して、マスタ確認用フレーム300、スタック構成確認用フレーム400の送受信処理を説明する。
図5を参照して、マスタ確認用フレーム送信処理、スタック確認用フレーム処理を説明する。ネットワーク装置100のボタン検出部103は、ボタン106の押下の有無の確認を行なう(S500)。ボタン105の押下の有った場合(YES)、ボタン検出部103は、制御部101へ通知を行なう。制御部101は、ランプ制御部104に点灯命令を行なう。ランプ制御部104は、ランプ107の点灯を行なう。制御部101は、マスタ確認用フレーム送信処理(1)を実行する(S501)。マスタ確認用フレーム送信処理(1)は、マスタ確認用フレーム300に識別子304と装置通過数305の初期値を格納し、全てのリンクアップポートに送信を行なう。リンクアップポートは、他のネットワーク装置100または、その他の装置、端末と接続され、リンクが確立されているポートである。リンクアップポートは、スタック構成時のネットワーク装置100の接続形態は、リングであるため複数存在する。
マスタ確認用フレーム送信処理(1)にてマスタ確認用フレーム300を送信したネットワーク装置100の制御部101は、一定時間、スタック構成確認用フレーム400の受信が無かった場合、自ネットワーク装置100をマスタとする。制御部101は、スタック構成確認用フレーム400に識別子404と装置通過数405の初期値を格納し、全てのリンクアップポートに送信を行なって(S502)、終了する。一定時間はスタック構成される装置間で全てのマスタ確認用フレーム300の送受信が完了する時間をもとに設計者が決定する。また、一定時間内に受信したマスタ確認用フレーム300の廃棄を行なう。
マスタ確認用フレーム送信処理(1)にてマスタ確認用フレーム300を送信したネットワーク装置100を除いたネットワーク装置100は、マスタ確認用フレーム300受信後、図6に従い処理を行なう。ネットワーク装置100は、自ネットワーク装置100がマスタであるかの判定を行なう(S600)。自ネットワーク装置100がマスタである場合、ネットワーク装置100は、スタック構成確認用フレーム送信処理(2)を実行して(S601)、終了する。自ネットワーク装置100がマスタでない場合、ネットワーク装置100は、マスタ確認用フレーム受信処理して(S700)、終了する。
スタック構成確認用フレーム送信処理(2)について、マスタ100Mは、スタック構成確認用フレーム400に識別子404と装置通過数405の初期値を格納し、全てのリンクアップポートに送信を行なう。
図7を参照して、マスタ確認用フレーム受信処理(S700)を説明する。ネットワーク装置100は、装置通過数305が「0」か、判定する(S701)。マスタ確認用フレーム300の装置通過数305が0の場合、ネットワーク装置100は、フレームを廃棄して(S704)、リターンする。0以外の場合(S701:NO)、ネットワーク装置100は、自装置情報が有りか判定する(S702)。YESのとき、ネットワーク装置100は、ステップ704に遷移する。ステップ702でNOのとき、マスタ確認用フレーム送信処理(2)を実行し(S703)、リターンする。
マスタ確認用フレーム送信処理(2)は、マスタ確認用フレーム300に識別子304と装置通過数305から1を引いた値を格納し、さらに受信時にマスタ確認用フレーム300に格納されていたシリアルを格納したまま自ネットワーク装置100のシリアルを追加格納し、マスタ確認用フレーム300を受信したポートを除く全てのリンクアップポートから送信を行なう。リンクアップポートが存在しない場合、マスタ確認用フレーム300を廃棄する。
スタック構成確認用フレーム400を受信したネットワーク装置100は、図8に従い処理を行なう。図8において、ネットワーク装置100は、自ネットワーク装置100がマスタであるかの判定を行なう(S800)。自ネットワーク装置100がマスタである場合、ネットワーク装置100は、スタック判定処理を実行し(S950)、終了する。
自ネットワーク装置100がマスタでない場合、ネットワーク装置100は、スタック構成確認用フレーム受信処理を実行して(S900)、終了する。
図9を参照して、スタック構成確認用フレーム受信処理(S900)を説明する。図9において、ネットワーク装置100は、スタック構成確認用フレーム400の装置通過数405を判定する(S901)。装置通過数が0の場合、ネットワーク装置100は、フレームを廃棄し(S904)、リターンする。ステップ901で0以外の場合、ネットワーク装置100は、スタック構成確認用フレーム400から通過した全てのネットワーク装置100のシリアルを判定し、自ネットワーク装置100のシリアルが格納されているか判定する(S902)。自ネットワーク装置100のシリアルが格納されている場合、ネットワーク装置100は、フレームを廃棄して(S904)、リターンする。ステップ902で自ネットワーク装置100のシリアルが格納されていない場合、ネットワーク装置100は、スタック構成確認用フレーム送信処理(3)を実行して(S903)、リターンする。
スタック構成確認用フレーム送信処理(3)について、ネットワーク装置100は、スタック構成確認用フレーム400に識別子404と装置通過数405から1を引いた値を格納し、さらに受信時にスタック構成確認用フレーム400に格納されていたシリアルとポート番号を格納したまま、自ネットワーク装置100のシリアルと、受信ポート番号とポート番号を追加格納する。ネットワーク装置100は、スタック構成確認用フレーム400を受信したポートを除く全てのリンクアップポートに送信を行なう。リンクアップポートが存在しない場合、ネットワーク装置100は、スタック構成確認用フレーム400を廃棄する。
マスタ装置100Mは、一定時間中にスタック構成確認用フレーム400が受信できなかった場合、ネットワークの接続形態に問題があると判定し、ユーザに通知を行なう。このため、制御部101は、ランプ制御部104にランプ点滅命令を行なう。ランプ制御部104は、ランプ106を点滅させる。
図10を参照して、スタック構成判定処理(S950)について、説明する。この処理は、マスタ装置100Mのみが行なう。図10において、マスタ装置100Mは、一定時間内に受信した全てのスタック構成確認用フレーム400を保持し、保持されたスタック構成確認用フレーム400内の装置通過数405を判定し、実通過数が最小値のスタック構成確認用フレーム400を抽出する(S951)。一定時間は、スタック構成される装置間で全てのスタック構成確認用フレーム300の送受信が完了する時間をもとに設計者が決定する。マスタ装置100Mは、通過したネットワーク装置100の組み合わせを判定する(S952)。ここで判定された組み合わせとは、リングの時計回り、反時計回りの組み合わせである。マスタ装置100Mは、組み合わせを1つのグループとする。マスタ装置100Mは、ステップ952で複数のグループがあったとき(NO)、異常と判定して、アラームを挙げ(S954)、リターンする。ステップ952でグループが1つのみのとき、マスタ装置100Mは、スタックポートを設定して(S953)、リターンする。ステップ954のアラームは、ユーザに通知を行なうため、制御部101は点滅命令を行ないランプ制御部104がランプ106を点滅させる。
ステップ953のスタックポート設定は、ステップ951の装置通過数判定処理にて抽出されなかったスタック構成確認用フレーム400の全てのシリアルとポート番号を参照して、装置通過数判定処理にて抽出されなかったスタック構成確認用フレーム400を受信したポートを回線ポートに設定する。次に、ステップ952のグループ判定処理にて正常に判定されたスタック構成確認用フレーム400の全てのシリアルとポート番号を参照して、スタック構成確認用フレーム400を受信したポートをスタックポートに設定する。以上により、スタックポート設定の自動化ができる。
図11を参照して、スタック新設時に接続形態が正常である場合について説明する。図11は、ネットワーク装置100−0、ネットワーク装置100−1、ネットワーク装置100−2の3台で構成されている。ここで、ハードウェア構成は、図1のネットワーク装置100と同じである。
ここでは、ネットワーク装置100−0のシリアルを000、ネットワーク装置100−1のシリアルを001、ネットワーク装置100−2のシリアルを002とする。また、最大装置通過数(N)を10とする。
ネットワーク装置100−0とネットワーク装置100−1は、ケーブル20−1、ネットワーク装置100−0とネットワーク装置100−2は、ケーブル20−3、ネットワーク装置100−1とネットワーク装置100−2は、ケーブル20−2でそれぞれ接続されている。
各接続はネットワーク装置100−0のポート30−0(番号0)とネットワーク装置100−1のポート30−2(番号2)、ネットワーク装置100−0のポート30−1(番号1)とネットワーク装置100−2のポート30−5(番号5)、ネットワーク装置100−1のポート30−3(番号3)とネットワーク装置100−2のポート30−4(番号4)が接続されている。接続は、ネットワーク装置100におけるどのポートを使用しても良い。
初めにマスタとして使用予定のネットワーク装置100をユーザが決定する。ここでは、ネットワーク装置100−0をマスタとする。次に、ネットワーク装置100−0のボタン106をユーザは押下する。ネットワーク装置100−0は、マスタ確認用フレーム300をポート30−0、ポート30−1から送信する。
ネットワーク装置100−1は、ポート30−2にてマスタ確認用フレーム300を受信する。ネットワーク装置100−2は、ポート30−5にてマスタ確認用フレーム300を受信する。
ネットワーク装置100−1は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−3から送信する。ネットワーク装置100−2は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−4から送信する。
ネットワーク装置100−1は、ポート30−3にてマスタ確認用フレーム300を受信する。ネットワーク装置100−1は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−2から送信する。ネットワーク装置100−2は、ポート30−4にてマスタ確認用フレーム300を受信する。ネットワーク装置100−2は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−5から送信する。
ネットワーク装置100−0は、ポート30−0、ポート30−1にてマスタ確認用フレーム300を受信する。ネットワーク装置100−0は、一定時間、スタック構成確認用フレーム400の受信がないことから、自ネットワーク装置100をマスタと判断する。ネットワーク装置100−0は、スタック構成確認用フレーム400をポート30−0、ポート30−1から送信する。ネットワーク装置100−0は、一定時間内に受信したマスタ確認用フレーム300の廃棄を行なう。
マスタ確認用フレーム300と同じ経路で、ネットワーク装置100−0は、ポート30−0、ポート30−1にて図12のスタック構成確認用フレーム400A、スタック構成確認用フレーム400Bを受信する。図12において、スタック構成確認用フレーム400Aとスタック構成確認用フレーム400Bは、共にヘッダ部401、識別子404、装置通過数405、シリアル406−0、ポート番号407−0、シリアル406−1、ポート番号407−1、FEC403から構成されている。シリアル406−0とシリアル406−1とから、スタック構成確認用フレーム400Aは、図11のネットワークを反時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とから、スタック構成確認用フレーム400Bは、図11のネットワークを時計回りに伝送されたフレームである。図12において、装置通過数405の値「8」(2台通過)は、初期値N=10から、ネットワーク装置100−1とネットワーク装置100−2とで、「1」ずつ、減算された値である。
ネットワーク装置100−0は、実通過数を判定し、最小値2(10−8)であるスタック構成確認用フレーム400A、スタック構成確認用フレーム400Bを抽出する。スタック構成確認用フレーム400A内のシリアル001、シリアル002、スタック構成確認用フレーム400B内のシリアル002、シリアル001よりグループ判定を行なう。グループ判定を行なった結果、シリアルが001と002のグループを判定する。
ネットワーク装置100−0は、スタック構成確認用フレーム400Aからシリアル001のポート番号2、シリアル002のポート番号4およびスタック構成確認用フレーム400Bからシリアル002のポート番号5、シリアル001のポート番号3をスタックポートに設定する。
図13を参照して、スタック新設時に接続形態が異常である場合について説明を行なう。図13のネットワークは、ネットワーク装置100−0、ネットワーク装置100−1、ネットワーク装置100−2、ネットワーク装置100−3、ネットワーク装置100−4の5台で構成されている。
ここでは、ネットワーク装置100−0のシリアルを000、ネットワーク装置100−1のシリアルを001、ネットワーク装置100−2のシリアルを002、ネットワーク装置100−3のシリアルを003、ネットワーク装置100−4のシリアルを004とする。また、最大装置通過数(N)を10とする。
ネットワーク装置100−0とネットワーク装置100−1は、ケーブル20−1、ネットワーク装置100−1とネットワーク装置100−2は、ケーブル20−2、ネットワーク装置100−2とネットワーク装置100−3は、ケーブル20−3、ネットワーク装置100−0とネットワーク装置100−3は、ケーブル20−4、ネットワーク装置100−2とネットワーク装置100−4は、ケーブル20−5、ネットワーク装置100−0とネットワーク装置100−4は、ケーブル20−6でそれぞれ接続されている。
各接続は、ネットワーク装置100−0のポート30−0(番号0)とネットワーク装置100−1のポート30−3(番号3)、ネットワーク装置100−0のポート30−1(番号1)とネットワーク装置100−3のポート30−9(番号9)、ネットワーク装置100−0のポート30−2(番号2)とネットワーク装置100−4のポート30−11(番号11)、ネットワーク装置100−1のポート30−4(番号4)とネットワーク装置100−2のポート30−5(番号5)、ネットワーク装置100−2のポート30−6(番号6)とネットワーク装置100−3のポート30−8(番号8)、ネットワーク装置100−2のポート30−7(番号7)とネットワーク装置100−4のポート30−10(番号10)が接続されている。接続は、ネットワーク装置100におけるどのポートを使用しても良い。
初めにマスタとして使用予定のネットワーク装置100をユーザが決定する。ここでは、ネットワーク装置100−0をマスタとする。次に、ネットワーク装置100−0のボタン106をユーザは押下する。ネットワーク装置100−0は、マスタ確認用フレーム300をポート30−0、ポート30−1、ポート30−2から送信する。
ネットワーク装置100−1は、ポート30−3にてマスタ確認用フレーム300を受信する。ネットワーク装置100−3は、ポート30−9にてマスタ確認用フレーム300を受信する。ネットワーク装置100−4は、ポート30−11にてマスタ確認用フレーム300を受信する。
ネットワーク装置100−1は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−4から送信する。ネットワーク装置100−3は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−8から送信する。ネットワーク装置100−4は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−10から送信する。
ネットワーク装置100−2は、ポート30−5にてマスタ確認用フレーム300を受信する。ネットワーク装置100−2は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−6、ポート30−7から送信する。ネットワーク装置100−2は、ポート30−6にてマスタ確認用フレーム300を受信する。ネットワーク装置100−2は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−5、ポート30−7から送信する。ネットワーク装置100−2は、ポート30−7にてマスタ確認用フレーム300を受信する。ネットワーク装置100−2は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−5、ポート30−6から送信する。
ネットワーク装置100−1は、ポート30−4にてマスタ確認用フレーム300を受信する。ネットワーク装置100−1は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−3から送信する。ネットワーク装置100−3は、ポート30−8にてマスタ確認用フレーム300を受信する。ネットワーク装置100−3は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−9から送信する。ネットワーク装置100−4は、ポート30−10にてマスタ確認用フレーム300を受信する。ネットワーク装置100−4は、自ネットワーク装置100がマスタでないため、マスタ確認用フレーム300をポート30−11から送信する。
ネットワーク装置100−0は、ポート30−0、ポート30−1、ポート30−2にてマスタ確認用フレーム300を受信する。ネットワーク装置100−0は、一定時間、スタック構成確認用フレーム400の受信がないことから、自ネットワーク装置100をマスタと判断する。ネットワーク装置100−0は、スタック構成確認用フレーム400をポート30−0、ポート30−1、ポート30−2に送信する。ネットワーク装置100−0は、一定時間中に受信したマスタ確認用フレーム300の廃棄を行なう。
マスタ確認用フレーム300と同じ経路で、ネットワーク装置100−0は、ポート30−0、ポート30−1、ポート30−2にて図14のスタック構成確認用フレーム400C、スタック構成確認用フレーム400D、スタック構成確認用フレーム400E、スタック構成確認用フレーム400F、スタック構成確認用フレーム400G、スタック構成確認用フレーム400Hを受信する。
スタック構成確認用フレーム400Cないしスタック構成確認用フレーム400Hは、いずれもヘッダ部401、識別子404、装置通過数405、シリアル406−0、ポート番号407−0、シリアル406−1、ポート番号407−1、シリアル406−2、ポート番号407−2、FEC403から構成されている。
シリアル406−0とシリアル406−1とから、スタック構成確認用フレーム400Cは、図13のネットワーク左半分を反時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とシリアル406−2とから、スタック構成確認用フレーム400Dは、図13のネットワークの左半分を時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とシリアル406−2とから、スタック構成確認用フレーム400Eは、図13のネットワーク右半分を反時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とシリアル406−2とから、スタック構成確認用フレーム400Fは、図13のネットワークの右半分を時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とシリアル406−2とから、スタック構成確認用フレーム400Gは、図13のネットワークの外周を反時計回りに伝送されたフレームである。シリアル406−0とシリアル406−1とシリアル406−2とから、スタック構成確認用フレーム400Hは、図13のネットワークの外周を時計回りに伝送されたフレームである。
図14において、装置通過数405の値「7」は、初期値N=10から、3台のネットワーク装置100−i(i=1〜4)で、「1」ずつ、減算された値である。ネットワーク装置100−0は、実通過数を判定し、最小値3(装置通過数7)であるスタック構成確認用フレーム400C〜スタック構成確認用フレーム400Hを抽出する。
ネットワーク装置100−0は、スタック構成確認用フレーム400Cないしスタック構成確認用フレーム400H内の3つのシリアル406よりグループ判定を行なう。グループ判定を行なった結果、シリアルが001、002、003のグループと、002、003、004のグループと、001、002、004のグループを判定する。次に、判定されたグループが3グループあることから接続形態に問題があると判定し、ランプ107を点滅させ、ユーザに通知を行なう。
以上、初めてスタックの構成を行なうことを前提に説明してきたが、スタックの構成を変えるときも同様にスタックポートの自動設定が可能である。具体的には、ネットワーク装置を増設するとき、ボタン106が押下されるネットワーク装置100は、増設されるネットワーク装置100である。また、ネットワーク装置を減設するとき、両側のネットワーク装置間をケーブルで繋ぐことになるので、ボタン106が押下されるネットワーク装置100は、ケーブルを繋ぎ変えたネットワーク装置100である。しかし、増設も減設も、スタックを構成するネットワーク装置であればどのネットワーク装置のボタンを押してもよい。
本実施例に拠れば、スタックに使用するポートを自動認識でき、コンソール端末の接続が不要で、手順を簡略化できる。