(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について図面を参照しながら説明する。
図1は、第1実施形態のネットワークシステム10を示す図である。
【0011】
ネットワークシステム10は、スイッチングハブを2段に接続した2段構成のネットワークシステムである。スイッチングハブは、複数の下位スイッチと、下位スイッチと接続される複数の上位スイッチとからなる。
図1に示す第1実施形態のネットワークシステム10では、3台の上位スイッチ32a,32b,32cと2台の下位スイッチ34a,34bとから構成されている。なお、
図1に示す第1実施形態のネットワークシステム10は一例として示したものであり、上位スイッチと下位スイッチの台数はこれに限定されない。
【0012】
上位スイッチ32a,32b,32c及び下位スイッチ34a,34bは、例えばOSI(Open Systems Interconnection)参照モデルにて、レイヤ2のデータ転送機能を備えたスイッチングハブであり、必要に応じてレイヤ3等のデータ転送機能を備える。第1実施形態において、上位スイッチ32a,32b,32c及び下位スイッチ34a,34bは、ボックス型のスイッチングハブである。
【0013】
下位スイッチ34a,34bは、上位スイッチ32a,32b,32c及び外部の通信機器28と接続されている。通信機器28は、具体的に、サーバ、スイッチングハブ、ルータ等である。
下位スイッチ34a,34bは、複数のポートを有する。下位スイッチ34a,34bが有する複数のポートのうち、ポート58a,58bは上位スイッチ32aと接続され、ポート58c,58dは上位スイッチ32bと接続され、ポート58e,58fは上位スイッチ32cと接続され、ポート60a,60bは通信機器28と接続されている。
【0014】
下位スイッチにおいて、上位スイッチと接続されているポートに対してLAGが設定される。具体的に、下位スイッチ34a,34bが有する複数のポートのうち上位スイッチと接続されている複数のポート58a,58b,58c,58d,58e,58fに対してLAG72a,72bが設定されている。リンクアグリゲーションは、複数の回線を論理的に一つの回線のように扱う技術である。LAGが設定された複数のポートは、論理的に一つのポートのように動作する。
【0015】
上位スイッチ32a,32b,32cは、複数のポートを有する。上位スイッチ32a,32b,32cが有する複数のポートのうち、ポート38a,38bは下位スイッチ34aと接続され、ポート38c,38dは下位スイッチ34bと接続されている。
上位スイッチにおいて、同一の下位スイッチと接続されているポートに対してLAGが設定される。具体的に、上位スイッチ32aの場合、下位スイッチ34aと接続されているポート38a,38bに対してLAG52aが設定され、下位スイッチ34bと接続されているポート38c,38dに対してLAG52bが設定されている。
【0016】
本発明の実施形態のネットワークシステムは、下位スイッチが有する複数のポートのうち上位スイッチと接続されているポートに対してLAGを自動的に設定する動作を行うことを特徴とする。
以下、上位スイッチ及び下位スイッチの構成について、説明する。なお、以下の説明では、「上位スイッチ32a,32b,32c」を「上位スイッチ32」ともいい、「下位スイッチ34a,34b」を「下位スイッチ34」ともいう。
【0017】
〔上位スイッチ〕
図2は、
図1に示す上位スイッチ32aの機能的な構成を概略的に示すブロック図である。なお、
図1に示す上位スイッチ32b,32cの機能的な構成は、上位スイッチ32aと同一であり、上位スイッチ32b,32cについての説明は省略する。
上位スイッチ32aは、複数のポート38a,38b,38c,38d、フレーム転送部40、及び、メモリ部42を有している。
【0018】
〔メモリ部〕
メモリ部42は、例えば、揮発性の書き換え可能なRAM(ランダムアクセスメモリ)によって構成される。メモリ部42は、FDB(フォワーディングデータベース)42a及びLAGテーブル42bを記憶している。
【0019】
〔ポート〕
ポート38a,38b,38c,38dは、下位スイッチ34と接続されており、全二重通信に対応している。
具体的に、
図2に示す上位スイッチ32aにおいて、ポート38a,38bは、伝送媒体としてのネットワークケーブル44a,44bを介して、下位スイッチ34aと接続されている。また、ポート38c,38dは、ネットワークケーブル44c,44dを介して、下位スイッチ34bと接続されている。
【0020】
なお、以下の説明では、「ポート38a,38b,38c,38d」を「ポート38」ともいい、「ネットワークケーブル44a,44b,44c,44d」を「ネットワークケーブル44」ともいう。
ポート38の数は、図示した数に限定されない。また、ネットワークケーブル44は、フレームを双方向へ同時に転送可能な全二重通信に対応しており、ポート38の各々は、フレームの送信及び受信を同時に行うことができる。
【0021】
〔フレーム転送部〕
フレーム転送部40は、例えば、FPGA(Field Programmable Gate Array)やASIC(特定用途向け集積回路)等の集積回路により実現される。
フレーム転送部40は、FDB42a及びLAGテーブル42bを参照しながら、フレームを転送する。即ち、フレーム転送部40は、ポート38によって受信されたフレームを、フレーム中の宛先アドレスに基づいて、フレームを送信するべきポート38へ転送する。
また、フレーム転送部40は、フレーム中の送信元アドレス情報に基づいてFDB42aを作成及び更新する。FDB42aには、ポート38で受信したフレーム中の送信元アドレス情報と、受信したポート38の番号とが相互に対応付けられて登録される。
【0022】
第1実施形態において、上位スイッチ32aは、LAGテーブル42bを作成及び更新するために、LAG設定部46、及び、識別情報特定部48を更に有し、メモリ部42に、識別情報テーブル42cを更に有している。
また、下位スイッチ34は、好ましい態様として、LAGテーブル42bの設定に用いられる識別情報通知フレーム(IDフレーム)50を上位スイッチ32に向けて送信する。
【0023】
〔識別情報通知フレーム(第2通知フレーム)〕
識別情報通知フレーム50は、下位スイッチ34が、下位スイッチ34の識別情報を下位スイッチ34に接続されている上位スイッチ32に通知するために、送信するフレームである。
図3は、下位スイッチ34により送信される識別情報通知フレーム50のフォーマットを概略的に示している。識別情報通知フレーム50は複数の領域を含んでおり、具体的に、DA(宛先アドレス)領域50a、SA(送信元アドレス)領域50b、TYPE領域50c、ペイロード領域50d、及び、FCS領域50eを含んでいる。
【0024】
DA領域50aには、上位スイッチ32を転送範囲とするマルチキャストアドレスが格納される。SA領域50bには送信元の下位スイッチ34に割り当てられたMAC(メディアアクセスコントロール)アドレスが格納される。TYPE領域50cには、当該フレームが識別情報通知フレーム50であることを示す識別子が格納される。FCS領域50eにはチェックサム符号が格納される。
【0025】
また、ペイロード領域50dにはデータが格納され、第1実施形態では、識別情報通知フレーム50の送信元である下位スイッチ34の各々に割り当てられた下位スイッチ識別情報(識別情報)50fが格納される。下位スイッチ識別情報50fは、例えば、下位スイッチ34に割り当てられたMACアドレスや、IP(インターネットプロトコル)アドレス等、下位スイッチ34を識別するための情報である。
【0026】
〔識別情報特定部]
識別情報通知フレーム50は、ポート38によって受信されると、フレーム転送部40を経て、識別情報特定部48に転送される。識別情報特定部48は、識別情報通知フレーム50に含まれる下位スイッチ識別情報50fを読み込み、読み込んだ下位スイッチ識別情報50fに基づいて識別情報テーブル42cを作成及び更新する。
【0027】
〔識別情報テーブル〕
図4は、識別情報テーブル42cの内容を示す表である。識別情報テーブル42cには、識別情報通知フレーム50を受信したポート38の番号と下位スイッチ識別情報50fとが相互に対応付けられて登録されている。なお、
図4では、ポート38の番号として、ポート38の符号が用いられている。また、下位スイッチ識別情報50fとして、下位スイッチ34の符号が用いられている。
【0028】
〔LAG設定部〕
LAG設定部46は、識別情報テーブル42cに登録された情報に基づいて、LAGテーブル42bを作成及び更新する。LAG設定部46は、同一の下位スイッチ34に接続されているポート38に対してLAGが設定されるように、LAGテーブル42bを作成及び更新する。
【0029】
〔LAGテーブル〕
図5は、LAGテーブル42bの内容の内容を示す表である。LAGテーブル42bでは、ポート38の番号とLAGの識別情報(LAG ID)とが相互に対応付けられて登録されている。具体的には、ポート38a,38bに対して、LAG52aが設定されている。ポート38c,38dに対して、LAG52bが設定されている。
【0030】
同様に、上位スイッチ32b,32cでも、LAGが設定される。上位スイッチ32b,32cで設定されるLAGには、符号52c,52d,52e,52fを付す。
以下では、「LAG52a,52b,52c,52d,52e,52f」を「LAG52」ともいう。なお、
図5では、LAG52の識別情報として符号を示した。
【0031】
LAG52aによれば、下位スイッチ34aに接続されたポート38a,38bが論理的に1つのポートとして束ねられる。また、LAG52bによれば、下位スイッチ34bに接続されたポート38c,38dが論理的に1つのポートとして束ねられる。
【0032】
フレーム転送部40は、ユーザフレームを下位スイッチ34aへ向けて送信する場合、LAGテーブル42bを参照して、LAG52aに所属するポート38a,38bのいずれか一つから送信させる。同様に、フレーム転送部40は、ユーザフレームを下位スイッチ34bへ向けて送信する場合、LAG52bに所属するポート38c,38dのいずれか一つから送信させる。
なお、LAG52は、1つ以上のポート38を含んでいればよい。
【0033】
第1実施形態において、上位スイッチ32aは、接続情報通知フレーム生成部56を更に有する。接続情報通知フレーム生成部56は、識別情報テーブル42cに登録された下位スイッチ識別情報50fに基づいて、接続情報通知フレーム(CIフレーム)54を生成する。
【0034】
〔接続情報通知フレーム(第1通知フレーム)〕
接続情報通知フレーム54は、上位スイッチ32が、上位スイッチ32に接続されている下位スイッチ34の接続台数情報を上位スイッチ32に接続されている下位スイッチ34に通知するために、送信するフレームである。
図6は、接続情報通知フレーム54のフォーマットを示している。接続情報通知フレーム54には、DA領域54a、SA領域54b、TYPE領域54c、ペイロード領域54d、及び、FCS領域54eが含まれている。
【0035】
DA領域54aには、例えば、下位スイッチ34を転送範囲とするマルチキャストアドレスが格納され、SA領域54bには、送信元の上位スイッチ32に割り当てられたMACアドレスが格納される。
TYPE領域54cには、当該フレームが接続情報通知フレーム54であることを示す識別子が格納される。FCS領域54eにはチェックサム符号が格納される。
【0036】
ペイロード領域54dには、少なくとも接続台数情報54fが格納されている。更に、第1実施形態では、好ましい態様として、ペイロード領域54dに、上位スイッチ識別情報54g、及びリスト情報としての接続下位スイッチリスト情報54hが含まれている。
上位スイッチ識別情報54gは、接続情報通知フレーム54の送信元である上位スイッチ32の識別情報であり、例えば、MACアドレスや、IPアドレス等である。
また、ペイロード領域54dに含まれる接続下位スイッチリスト情報54hは、識別情報テーブル42cに登録された下位スイッチ識別情報50fのリストである。したがって、接続下位スイッチリスト情報54hには、1つ以上の下位スイッチ34の下位スイッチ識別情報50fが含まれる。
【0037】
接続台数情報54fは、ネットワークケーブル44を介して上位スイッチ32に接続されている下位スイッチ34の接続台数を示す情報である。接続台数は、識別情報テーブル42cに登録された下位スイッチ識別情報50fに基づいて、接続情報通知フレーム生成部56により判定される。具体的に、接続情報通知フレーム生成部56は、互いに異なる下位スイッチ識別情報50fの数を接続台数と判定する。
なお、接続情報通知フレーム生成部56は、識別情報テーブル42cに下位スイッチ識別情報50fが登録される前の初期段階では、接続情報通知フレーム54の接続台数情報54fに0を設定する。
【0038】
接続情報通知フレーム生成部56により接続情報通知フレーム54が生成されると、フレーム転送部40は、生成された接続情報通知フレーム54を、接続されている全ての下位スイッチ34に向けて、ポート38から一斉に送信する。したがって、接続情報通知フレーム54は、上位スイッチ32のポート38から、下位スイッチ34a,34bへ向けて送信される。
【0039】
〔下位スイッチ〕
図7は、下位スイッチ34aの機能的な構成を概略的に示すブロック図である。なお、下位スイッチ34bの構成については、下位スイッチ34aの構成と同一であり、説明を省略する。
【0040】
下位スイッチ34aは、複数のポート58a,58b,58c,58d,58e,58f,60a,60b、フレーム転送部62、及びメモリ部64を有する。
メモリ部64は、例えば、RAMによって構成され、FDB64a、及び、LAGテーブル64bを記憶している。
【0041】
〔ポート〕
ポート58a,58b,58c,58d,58e,58fは、上位スイッチ32と接続されている。下位スイッチ34において、ポート58a,58bは、ネットワークケーブル44a,44bを介して上位スイッチ32aと接続されている。ポート58c,58dは、ネットワークケーブル44e,44fを介して上位スイッチ32bと接続されている。そして、ポート58e,58fは、ネットワークケーブル44i,44jを介して上位スイッチ32cと接続されている。ポート60a,60bは、通信機器28と接続されている。
【0042】
なお以下の説明では、「ポート58a,58b,58c,58d,58e,58f」を「ポート58」ともいい、「ポート60a,60b」を「ポート60」ともいう。ポート58及びポート60の数は、図示した数に限定されない。また、ポート58の各々は全二重通信に対応する。
【0043】
フレーム転送部62は、例えば、FPGAやASIC等の集積回路により実現される。フレーム転送部62は、FDB64a及びLAGテーブル64bを参照しながら、ポート58又はポート60によって受信されたフレームを、フレーム中の宛先アドレスに基づいて、フレームを送信すべきポート58又はポート60へ転送する。
【0044】
また、フレーム転送部62は、フレーム中の送信元アドレス情報に基づいてFDB64aを作成及び更新する。FDB64aには、ポート58又はポート60で受信したフレーム中の送信元アドレス情報と、受信したポート58又はポート60の番号とが相互に対応付けられて登録される。
【0045】
第1実施形態において、好ましい態様として、下位スイッチ34aは、識別情報通知フレーム生成部66を更に有する。識別情報通知フレーム生成部66は、識別情報通知フレーム(IDフレーム)50を生成する。前述したように、識別情報通知フレーム50は、送信元の下位スイッチ34の下位スイッチ識別情報50fをペイロード領域50dに含む。
【0046】
識別情報通知フレーム生成部66により識別情報通知フレーム50が生成されると、フレーム転送部62は、下位スイッチ34aに接続されている全ての上位スイッチ32に向けて、ポート58の各々から識別情報通知フレーム50を一斉に送信する。ポート58の各々から送信された識別情報通知フレーム50は、ネットワークケーブル44を通じて上位スイッチ32によって受信される。
【0047】
また、第1実施形態において、下位スイッチ34aは、LAGテーブル64bを作成及び更新するために、LAG設定部68、及び、接続情報特定部70を更に有し、メモリ部64は、接続情報テーブル64cを更に有している。
【0048】
〔接続情報特定部〕
上位スイッチ32が送信した接続情報通知フレーム(CIフレーム)54は、ポート58によって受信されると、フレーム転送部62によって、接続情報特定部70に転送される。
接続情報特定部70は、受け取った接続情報通知フレーム54に含まれる接続台数情報54fを読み込み、読み込んだ接続台数情報54fに基づいて、接続情報テーブル64cを作成及び更新する。
【0049】
〔接続情報テーブル〕
図8は、接続情報テーブル64cの内容を示す表である。接続情報テーブル64cには、接続情報通知フレーム54を受信したポート58と接続台数情報54fとが相互に対応付けられて登録されている。
【0050】
〔LAG設定部〕
LAG設定部68は、接続情報テーブル64cに登録された情報に基づいて、LAGテーブル64bを作成及び更新する。
具体的に、LAG設定部68は、まず、接続情報テーブル64cに登録された接続台数情報54fの中から最大値を見つけ出す。そして、LAG設定部68は、接続情報テーブル64cにおいて最大値と関連付けられているポート58に対してLAGを設定するように、LAGテーブル64bを作成及び更新する。
【0051】
第1実施形態では、
図8に示す接続情報テーブル64cにおいて、接続台数情報54fの最大値は「2」であり、この最大値と関連付けて、ポート58a,58b,58c,58d,58e,58fが登録されている。LAG設定部68は、これらポート58a,58b,58c,58d,58e,58fに対してLAGを設定するように、LAGテーブル64bを作成及び更新する。
【0052】
〔LAGテーブル〕
図9は、LAGテーブル64bの内容を示す表である。LAGテーブル64bでは、ポート58の番号とLAGの識別情報(LAG ID)とが相互に対応付けられて登録されている。
具体的に、LAGテーブル64bでは、ポート58a,58b,58c,58d,58e,58fに対して、LAG72aが設定されている。なお、
図9では、LAGの識別情報として符号を示した。
同様に、下位スイッチ34bでも、LAGが設定される。下位スイッチ34bで設定されるLAGには、符号72bを付す。
以下の説明では、「LAG72a,72b」を「LAG72」ともいう。
【0053】
フレーム転送部62は、ユーザフレームを上位スイッチ32へ向けて送信する場合、LAG72に属するポート58のうちいずれか一つから送信する。
なお、LAG72に属さないポート58は、LAG72に属するポート58とともに、識別情報通知フレーム50の送信及び接続情報通知フレーム54の受信には用いられる。
【0054】
以下、第1実施形態のネットワークシステム10の動作を説明する。
【0055】
[動作例1]
図10は、第1実施形態のネットワークシステムの動作例1を説明するための図である。
ネットワークシステム10は、2台の下位スイッチ34と、3台の上位スイッチ32とからなり、各下位スイッチ32の各々が、全ての上位スイッチ32に接続されている。
例えば、ネットワークの管理者が、
図10に示すネットワークシステム10を構築したのちに、上位スイッチ32及び下位スイッチ34を起動させると、ネットワークシステム10は以下の動作を開始する。
【0056】
図10に示すように、下位スイッチ34aは、下位スイッチ34aの下位スイッチ識別情報50fを含む識別情報通知フレーム50を生成する。同様に、下位スイッチ34bは、下位スイッチ34bの下位スイッチ識別情報50fを含む識別情報通知フレーム50を生成する。
【0057】
そして、下位スイッチ34a,34bは、生成した識別情報通知フレーム50を、全てのポート58a,58b,58c,58d,58e,58fから、下位スイッチ34a,34bに接続されている上位スイッチ32a,32b,32cに送信する。送信された識別情報通知フレーム50は、上位スイッチ32のポート38によって受信される、なお、識別情報通知フレーム50は、定期又は不定期にて繰り返し送信される。
【0058】
上位スイッチ32は、識別情報通知フレーム50を受信すると、識別情報特定部48により、識別情報通知フレーム50中の下位スイッチ識別情報50fに基づいて識別情報テーブル42cを作成する。上位スイッチ32は、識別情報テーブル42cに、
図4に示すように、ポート38a,38bと下位スイッチ34aの下位スイッチ識別情報50fとを対応づけて、及び、ポート38c,38dと下位スイッチ34bの下位スイッチ識別情報50fとを対応付けて登録する。
【0059】
次に、上位スイッチ32のLAG設定部46は、作成された識別情報テーブル42cに基づいてLAGテーブル42bを作成する。具体的に、上位スイッチ32のLAG設定部46は、同一の下位スイッチ34に接続されているポート38に対してLAGを設定するように、LAGテーブル42bを作成する。これによりLAG52が設定される。
【0060】
この結果、
図5に示すように、上位スイッチ32aのLAGテーブル42bには、ポート38a,38bに対してLAG52aが設定され、ポート38c,38dに対してLAG52bが設定される。上位スイッチ32bのLAGテーブル42bには、
図11に示すように、ポート38a,38bに対してLAG52cが設定され、ポート38c,38dに対してLAG52dが設定される。上位スイッチ32cのLAGテーブル42bには、
図12に示すように、ポート38a,38bに対してLAG52eが設定され、ポート38c,38dに対してLAG52fが設定される。
【0061】
上位スイッチ32は、識別情報テーブル42cに登録された下位スイッチ識別情報50fに基づいて、接続情報通知フレーム54を生成する。
図13に示すように、上位スイッチ32は、生成した接続情報通知フレーム54を、ポート38を通じて、下位スイッチ34に向けて送信する。
【0062】
具体的に、上位スイッチ32の識別情報テーブル42cには、
図4に示すように、下位スイッチ34a,34bの下位スイッチ識別情報50fが登録されている。したがって、上位スイッチ32は、接続台数情報54fに「2」が格納された接続情報通知フレーム54を生成・送信する。
なお、接続情報通知フレーム54は、定期又は不定期にて繰り返し送信される。
【0063】
下位スイッチ34は、接続情報通知フレーム54を受信すると、接続情報特定部70により、接続情報通知フレーム54に含まれる接続台数情報54fと、接続情報通知フレーム54を受信したポート58の番号とを対応付けた接続情報テーブル64cを作成する。
本動作例では、下位スイッチ34の各々の接続情報テーブル64cには、
図8に示す接続情報テーブル64cのように、ポート58a,58b,58c,58d,58e,58fの各々に対応して、接続台数情報54fとして「2」が登録される。
【0064】
次に、下位スイッチ34のLAG設定部68は、接続情報テーブル64cに登録された接続台数情報54fの中から最大値を見つけ出す。本動作例では、最大値は「2」である。
それから、下位スイッチ34のLAG設定部68は、最大値と対応付けられたポート58に対してLAGを設定するように、LAGテーブル64bを作成及び更新する。
本動作例では、下位スイッチ34aのポート58a,58b,58c,58d,58e,58fに対してLAG72aが設定され、同様に、下位スイッチ34bのポート58a,58b,58c,58d,58e,58fに対してLAG72bが設定される。
【0065】
以上の動作例のとおり、
図10の示すようにネットワークシステム10を構築すると、下位スイッチ34a,34bには、上位スイッチ32a,32b,32cと接続されるポート58a,58b,58c,58d,58e,58fに対してLAG72a,72bが設定される。これにより、以後、下位スイッチ34a,34bは、上位スイッチ32a,32b,32cを介して、ユーザフレームの送受信を行うことができる。
【0066】
〔動作例2〕
図14は、第1実施形態のネットワークシステムの動作例2を説明するための図である。
図14に示すネットワークシステム10は、
図1に示すネットワークシステム10に下位スイッチ34cが増設されたものである。下位スイッチ34cのポート58e,58fは、上位スイッチ32cのポート38e,38fに接続されている。
【0067】
下位スイッチ34a,34bは、上位スイッチ32a,32b,32cへ向けて識別情報通知フレーム50を送信する。また、新たに増設された下位スイッチ34cは、上位スイッチ32cへ向けて識別情報通知フレーム50を送信する。
【0068】
上位スイッチ32a,32b,32cは、受信した識別情報通知フレーム50に基づいて識別情報テーブル42cの内容を更新する。ただし、上位スイッチ32a,32bでは、識別情報テーブル42cの内容に変更はなく、更新後の識別情報テーブル42cの内容は、
図4に示す識別情報テーブル42cの内容と同一である。上位スイッチ32cでは、
図15に示す識別情報テーブル42cのように、増設された下位スイッチ34cの下位スイッチ識別情報50fとポート38e,38fとが対応付けられて識別情報テーブル42cに追加登録される。
【0069】
次に上位スイッチ32a,32b,32cは、LAGテーブル42bの内容を更新する。上位スイッチ32a,32bでは、識別情報テーブル42cの内容に変更はないため、更新後のLAGテーブル42bの内容は、
図5に示すLAGテーブル42bの内容と同一である。上位スイッチ32cのLAGテーブル42bでは、ポート38e,38fが追加登録され、ポート38e,38fに対してLAG52gが設定される。
【0070】
上位スイッチ32a,32b,32cは、更新後の識別情報テーブル42cの内容を参照して、接続情報通知フレーム54を生成する。ここで、上位スイッチ32a,32bにおける下位スイッチ34の接続台数は2台であり、上位スイッチ32cにおける下位スイッチ34の接続台数は3台である。上位スイッチ32a,32bは、接続台数情報54fとして「2」を含む接続情報通知フレーム54を生成する。また、上位スイッチ32cは、接続台数情報54fとして「3」を含む接続情報通知フレーム54を生成する。
【0071】
上位スイッチ32a,32bは、生成した接続情報通知フレーム54を下位スイッチ34a,34bへ向けて送信する。上位スイッチ32cは、生成した接続情報通知フレーム54を下位スイッチ34a,34b,34cへ向けて送信する。
【0072】
下位スイッチ34は、受信した接続情報通知フレーム54に基づいて、接続情報テーブル64c及びLAGテーブル64bを順次更新し、LAG72の再設定を行う。
【0073】
図16は、下位スイッチ34a,34bにおいて更新された接続情報テーブル64cの内容を示している。更新後の下位スイッチ34a,34bの接続情報テーブル64cには、ポート58a,58b,58c,58dに対応して、接続台数情報54fとして「2」が登録され、ポート58e,58fに対応して、接続台数情報54fとして「3」が登録される。
【0074】
図17は、新たに増設された下位スイッチ34cにおいて作成された接続情報テーブル64cの内容を示している。下位スイッチ34cの接続情報テーブル64cには、ポート58e,58fに対応して、接続台数情報54fとして「3」が登録される。
【0075】
次に、下位スイッチ34a,34bのLAG設定部68は、
図16の接続情報テーブル64cを参照して、最大値として「3」を見つけ出し、「3」と関連付けられているポート58e,58fに対して、
図18,
図19に示すLAGテーブル64bのように、LAG72a,72bを設定する。同様に、下位スイッチ34cのLAG設定部68は、
図17の接続情報テーブル64cを参照して、最大値として「3」を見つけ出し、「3」と関連付けられているポート58e,58fに対して、
図20に示すLAGテーブル64bのように、LAG72cを設定する。
【0076】
以上の動作例のとおり、
図14に示すように下位スイッチ34cを増設すると、下位スイッチ34a,34bのLAG72a,72bから、上位スイッチ32a,32bが除外される。一方、下位スイッチ34cには、上位スイッチ32cと接続されるポート58e,58fに対してLAG72cが設定される。これにより、以後、下位スイッチ34a,34b,34cは、上位スイッチ32cを介して、ユーザフレームの送受信を行うことができる。下位スイッチ34cと接続されていない上位スイッチ32a,32bには、ユーザフレームは転送されない。
【0077】
〔動作例3〕
図21は、第1実施形態のネットワークシステムの動作例3を説明するための図である。
図21に示すネットワークシステム10は、
図1に示すネットワークシステム10に対し、下位スイッチ34cを増設した後に、更に上位スイッチ32dを増設したものである。ここでは、下位スイッチ34cを上位スイッチ32a,32b,32cに接続した後に、上位スイッチ32dを下位スイッチ34cに接続して増設した場合を説明する。
下位スイッチ34cは、ポート58a,58bが上位スイッチ32aのポート38e,38fと接続され、ポート58c,58dが上位スイッチ32bのポート38e,38fと接続され、ポート58e,58fが上位スイッチ32cのポート38e,38fと接続されている。上位スイッチ32dは、ポート38eが下位スイッチ34cのポート58gと接続されている。
【0078】
下位スイッチ34a,34bは、上位スイッチ32a,32b,32cへ向けて識別情報通知フレーム50を送信する。また、下位スイッチ34cは、上位スイッチ32a,32b,32c,32dへ向けて識別情報通知フレーム50を送信する。
【0079】
上位スイッチ32a,32b,32cは、下位スイッチ34a,34b,34cから識別情報通知フレーム50を受信すると、下位スイッチ34cの下位スイッチ識別情報50fとポート38e,38fとを対応付けて識別情報テーブル42cに追加登録する。また、新たに増設された上位スイッチ32dは、下位スイッチ34cの下位スイッチ識別情報50fとポート38eとを対応付けて識別情報テーブル42cに新規登録する。
【0080】
次に、上位スイッチ32aは、LAGテーブル42bにおいて、LAG52a,52bに加えて、更に、ポート38e,38fに対してLAG52hを設定する。同様に、上位スイッチ32bは、LAGテーブル42bにおいて、LAG52c,52dに加えて、更に、ポート38e,38fに対してLAG52iを設定する。上位スイッチ32cは、LAGテーブル42bにおいて、ポート38a,38bに対してLAG52e設定し、ポート38c,38dに対してLAG52fを設定する。また、上位スイッチ32cは、ポート38e,38fに対してLAG52gを設定する。新たに増設された上位スイッチ32dは、LAGテーブル42bにおいて、下位スイッチ34cの下位スイッチ識別情報50fを受信したポート38eに対して、LAG52jの設定を行う。
【0081】
次に、上位スイッチ32a,32b,32cは、識別情報テーブル42cに登録された内容に基づいて、接続台数情報54fとして「3」を格納した接続情報通知フレーム54を下位スイッチ34a,34b,34cへ送信する。また、上位スイッチ32dは、接続台数情報54fとして「1」を格納した接続情報通知フレーム54を下位スイッチ34cへ送信する。
【0082】
下位スイッチ34a,34bでは、下位スイッチ34a,34bに接続された全ての上位スイッチ32a,32b,32cから、接続台数情報54fとして「3」を受信している。したがって、下位スイッチ34aは、LAGテーブル64bにおいて、ポート58a,58b,58c,58d,58e,58fに対してLAG72aを設定する。また、下位スイッチ34bは、LAGテーブル64bにおいて、ポート58a,58b,58c,58d,58e,58fに対してLAG72bを設定する。
【0083】
下位スイッチ34cでは、上位スイッチ32a,32b,32cから接続台数情報54fとして「3」を受信し、上位スイッチ32dから接続台数情報54fとして「1」を受信している。下位スイッチ34cは、LAGテーブル64bにおいて、接続台数情報54fとして「3」を受信したポート58a,58b,58c,58d,58e,58fに対し、LAG72cを設定する。なお、下位スイッチ34cは、接続台数情報54fとして「1」を受信したポート58gに対しては、LAG72cの設定を行わない。
【0084】
以上の動作例のとおり、
図21の示すように下位スイッチ34cと上位スイッチ32dを増設すると、下位スイッチ34a,34b,34cには、LAG72a,72b,72cが、上位スイッチ32a,32b,32cに接続されるポートを含み、上位スイッチ32dに接続されるポートは除外されて、設定される。これにより、以後、下位スイッチ34a,34b,34cは、上位スイッチ32a,32b,32cを介して、ユーザフレームの送受信を行うことができる。下位スイッチ34a,34bと接続されていない上位スイッチ32dには、ユーザフレームは転送されない。
【0085】
上述した第1実施形態のネットワークシステム10によれば、下位スイッチ34が有する複数のポートのうち上位スイッチ32と接続されているポートに対して、LAGを自動的に設定することができる。
【0086】
また、上述した第1実施形態のネットワークシステム10によれば、上位スイッチ32は、接続台数情報54fを含む接続情報通知フレーム54を下位スイッチ34へ送信し、下位スイッチ34は、接続情報通知フレーム54が含む接続台数情報54fのうち最大値の接続台数情報54fを含む接続情報通知フレーム54を受信したポートに対してLAGを設定するように動作する。これにより、下位スイッチ34は、全ての下位スイッチ34と接続された上位スイッチ32に接続されたポートに対して、LAGを自動的に設定することができる。
【0087】
また、上述した第1実施形態のネットワークシステム10によれば、下位スイッチ34は、下位スイッチ識別情報50fを含む識別情報通知フレーム50を上位スイッチ32に送信し、上位スイッチ32は、識別情報通知フレーム50が含む下位スイッチ識別情報50fの数に基づいて、上位スイッチ32に接続されている下位スイッチ34の接続台数を判定するように動作する。これにより、上位スイッチ32は、上位スイッチ32に接続されている下位スイッチ34の接続台数を自動的に判定することができる。
【0088】
また、上位スイッチは、同一の下位スイッチ識別情報50fを含む識別情報通知フレーム50を受信したポートに対してLAGを設定するように動作する。これにより、上位スイッチ32が有する複数のポートのうち同一の下位スイッチ34と接続されているポートに対して、自動的にLAGを設定することができる。
【0089】
上述した第1実施形態のネットワークシステム10によれば、上位スイッチ32は、定期又は不定期に接続情報通知フレーム54を繰り返し送信している。このため、ネットワークシステム10内で、上位スイッチ32や下位スイッチ34の台数が変更された場合や、断線等の障害が発生した場合であっても、下位スイッチ34は、LAG72を自動的に再設定することができる。
【0090】
上述した第1実施形態のネットワークシステム10によれば、下位スイッチ34は、定期又は不定期に識別情報通知フレーム50を繰り返し送信している。このため、ネットワークシステム10内で、上位スイッチ32や下位スイッチ34の台数が変更された場合や、断線等の障害が発生した場合であっても、上位スイッチ32は、自動的に、下位スイッチの接続台数を判定できるとともに、LAG52を再設定することができる。
【0091】
〔第2実施形態〕
以下、本発明の第2実施形態について説明する。
例えばネットワークシステムを構築する際の管理者による配線の接続誤りや、ネットワークケーブルの障害のために、一部の上位スイッチが一部の下位スイッチと接続されていない接続状態になることが想定される。このような接続状態では、一部の下位スイッチと接続されていない上位スイッチはユーザフレームの転送に用いられないため、ネットワークシステム10が有する全ての上位スイッチの帯域が有効に活用されない。
【0092】
以下、一部の上位スイッチが一部の下位スイッチと接続されていない接続状態を「不完全な接続状態」と定義し、全ての上位スイッチの各々が全ての下位スイッチと接続されている状態を「完全な接続状態」と定義する。
また、配線の接続誤りやネットワークケーブルの障害のために、ネットワークシステム内に、全ての下位スイッチと接続している上位スイッチが1台もない接続状態となることも想定される。このような接続状態では、全ての上位スイッチにおいて、ユーザフレームを転送できない区間がある一部の下位スイッチの間に発生する。
【0093】
以下、全ての下位スイッチと接続している上位スイッチが1台もない接続状態を「通信不可能な状態」とし、全ての下位スイッチと接続している上位スイッチが1台以上ある接続状態を「通信可能な状態」とする。
第2実施形態のネットワークシステムは、完全な接続状態又は不完全な接続状態であること、及び、通信可能な状態又は通信不可能な状態であることを判定する機能を有することを特徴とする。
【0094】
〔下位スイッチ〕
図22は、第2実施形態における下位スイッチ34aの機能的な構成を概略的に示すブロック図である。なお、第1実施形態の下位スイッチ34に含まれる構成要素と同一の構成要素については、同一の名称又は符号を付して、説明を簡略化若しくは省略する。
【0095】
下位スイッチ34aの接続情報特定部80は、接続情報通知フレーム54に基づいて、接続下位スイッチリスト情報54h及び上位スイッチ識別情報54gを接続情報テーブル82cに登録する。
〔接続情報テーブル〕
図23は、第2実施形態に係る下位スイッチ34aで作成及び更新される、接続情報テーブル82cの内容を示している。接続情報テーブル82cには、接続情報通知フレーム54を受信したポート58の番号と、接続情報通知フレーム54に含まれていた接続下位スイッチリスト情報54h及び上位スイッチ識別情報54gとが、対応付けられて登録されている。
【0096】
〔比較判定部〕
下位スイッチ34aは、比較判定部74を更に有する。比較判定部74は、上位スイッチ32によって通知された接続下位スイッチリスト情報54h同士を比較する。なお、この比較では、接続情報テーブル82cにおいて、異なる上位スイッチ32と対応して登録されている接続下位スイッチリスト情報54h同士が比較される。
【0097】
比較判定部74は、接続情報テーブル82cに登録された接続下位スイッチリスト情報54h同士を比較した結果、全ての接続下位スイッチリスト情報54hが相互に一致している場合、ネットワークシステム10は完全な接続状態であると判定する。
一方、比較判定部74は、登録されている接続下位スイッチリスト情報54h間に不一致がある場合、ネットワークシステム10は不完全な接続状態であると判定する。
【0098】
また、比較判定部74は、接続情報テーブル82c中の接続下位スイッチリスト情報54hに含まれる下位スイッチ識別情報50fを全て抽出する。次に、比較判定部74は、接続情報テーブル82cに登録された接続下位スイッチリスト情報54hのうち少なくとも1つが、抽出した全ての下位スイッチ識別情報50fを含んでいるか否かを判定する。
【0099】
抽出した全ての下位スイッチ識別情報50fを含む接続下位スイッチリスト情報54hが接続情報テーブル82cに一つでも登録されている場合、比較判定部74は、ネットワークシステム10は通信可能な状態であると判定する。
一方、比較判定部74は、抽出された全ての下位スイッチ識別情報50fを含む接続下位スイッチリスト情報54hが接続情報テーブル82cに一つも登録されていない場合、ネットワークシステム10は通信不可能な状態であると判定する。
【0100】
そして、第2実施形態では、好ましい態様として、比較判定部74は、判定結果を監視端末76へ通知する。判定結果を監視端末76へ通知する手法としては、例えば、SNMP(シンプルネットワークマネージメントプロトコル)のTrap機能を用いることができる。通知された判定結果は、監視端末76のモニタに出力され、管理者は、モニタに出力された判定結果に基づいて配線の追加等の必要な処置を講ずることができる。
なお、比較判定部74は、判定を行うことが出来ない場合には、その旨を監視端末76に通知してもよく、あるいは、通知を行わなくてもよい。
【0101】
〔動作例1:完全な接続状態である場合〕
図24は、完全な接続状態である場合における、ネットワークシステム10の判定動作を説明するための図である。
【0102】
図24に示すネットワークシステム10は、3台の上位スイッチ32と3台の下位スイッチ34とからなり、3台の上位スイッチ32の各々が3台の下位スイッチ34と接続されている。
【0103】
図24の下位スイッチ34において登録される接続情報テーブル82cでは、
図23に示すように、ポート58a,58bに対応して接続下位スイッチリスト情報54hとしての「34a,34b,34c」及び上位スイッチ識別情報54gとしての「32a」が登録されている。また、ポート58c,58dに対応して接続下位スイッチリスト情報54hとしての「34a,34b,34c」及び上位スイッチ識別情報54gとしての「32b」が登録されている。また、ポート58e,58fに対応して下位スイッチリスト情報54hとしての「34a,34b,34c」及び上位スイッチ識別情報54gとしての「32c」が登録されている。
【0104】
接続情報テーブル82cにおいて、上位スイッチ識別情報54gとしての「32a」、「32b」、及び、「32c」の各々と関連付けて登録されている接続下位スイッチリスト情報54hは、全て「34a,34b,34c」であり、相互に一致する。
したがって、下位スイッチ34aの比較判定部74は、完全な接続状態であると判定し、判定結果を監視端末76へ通知する。
【0105】
また、下位スイッチ34b,34cの接続情報テーブル82cに登録された下位スイッチリスト情報54hも、全て「34a,34b,34c」であり、相互に一致する。したがって、下位スイッチ34b,34cの比較判定部74は、完全な接続状態であるという判定結果を監視端末76へ通知する。
なお、完全な接続状態である場合、通信可能な状態であるため、通信状態の判定は行わなくてもよい。
【0106】
〔動作例2:不完全な接続状態であり、通信不可能な状態である場合〕
図25は、不完全な接続状態であり、通信不可能な状態である場合における、ネットワークシステム10の判定動作を説明するための図である。
【0107】
図25に示すネットワークシステム10は、3台の上位スイッチ32と3台の下位スイッチ34とからなり、上位スイッチ32aは、下位スイッチ34a,34bと接続されており、上位スイッチ32bは、下位スイッチ34a,34cと接続されている。また、上位スイッチ32cは、下位スイッチ34b,34cと接続されている。
【0108】
図26,
図27及び
図28は、下位スイッチ34a,34b,34cに登録される接続情報テーブル82cの内容を各々示している。
図26に示す下位スイッチ34aの接続情報テーブル82cにおいて、上位スイッチ識別情報54gとしての「32a」と関連付けて登録された接続下位スイッチ識別情報54hである「34a,34b」と、上位スイッチ識別情報54gとしての「32b」と関連付けて登録された接続下位スイッチ識別情報54hである「34a,34c」とは相互に一致していないため、下位スイッチ34aの比較判定部74は、不完全な接続状態であると判定する。
【0109】
次に、下位スイッチ34aの比較判定部74は、まず、
図26に示す接続情報テーブル82cに登録された接続下位スイッチリスト情報54hから、「34a」、「34b」及び「34c」を抽出する。比較判定部74は、接続情報テーブル82cに、「34a」、「34b」及び「34c」を全て含む接続下位スイッチリスト情報54hが登録されているか否かを判定する。本動作例では、判定の結果は否であり、下位スイッチ34aの比較判定部74は、通信不可能な状態であると判定する。
【0110】
同様に、下位スイッチ34b,34cの比較判定部74も、不完全な接続状態であり、通信不可能な状態であると各々判定する。
そして、各下位スイッチ34の比較判定部74は、判定した結果を監視端末76へ通知する。
【0111】
ここで判定結果を検証する。
図25を参照すれば明らかなように、下位スイッチ34aから下位スイッチ34bにユーザフレームを送信する場合、ユーザフレームが上位スイッチ32bで中継されると、上位スイッチ32bは下位スイッチ34bに接続されていないので、ユーザフレームが届かない。したがって、通信不可能な状態という判定結果は正しいことがわかる。
【0112】
〔動作例3:不完全な接続状態であり、通信可能な状態である場合〕
図14を参照して、不完全な接続状態であり、通信可能な状態である場合における、ネットワークシステム10の判定動作を説明する。
【0113】
下位スイッチ34a,34bでは、
図29に示す接続情報テーブル82cが作成される。接続情報テーブル82cにおいて、上位スイッチ識別情報54gとしての「32a」又は「32b」と関連付けて登録された接続下位スイッチリスト情報54hとしての「34a,34b」と、上位スイッチ識別情報54gとしての「32c」と関連付けて登録された接続下位スイッチリスト情報54hとしての「34a,34b,34c」とは相互に一致していない。このため、下位スイッチ34a,34bの比較判定部74は、不完全な接続状態であると判定する。
【0114】
次に、下位スイッチ34a,34bの比較判定部74は、
図29の接続情報テーブル82cに登録された接続下位スイッチリスト情報54hの中から、「34a」、「34b」及び「34c」を抽出する。接続情報テーブル82cでは、上位スイッチ32cから送られて来た接続下位スイッチリスト情報54hが、「34a」、「34b」及び「34c」の全ての下位スイッチ識別情報50fを含んでいる。したがって、下位スイッチ34の比較判定部74は、通信可能な状態であると判定する。
【0115】
そして、下位スイッチ34a,34bの比較判定部74は、判定した結果を監視端末76へ通知する。
なお、下位スイッチ34cの比較判定部74は、接続情報テーブル82c(図示せず)に登録されている上位スイッチ識別情報54gが「32c」の1つだけであるので、判定の動作は行わない。
【0116】
ここで、判定結果について検証すると、上位スイッチ32cは、全ての下位スイッチ34に接続されている。したがって、全ての下位スイッチ34は上位スイッチ32cを介して通信可能であり、判定結果が正しいことがわかる。
【0117】
上述した第2実施形態のネットワークシステム10によれば、ネットワークシステム10が完全な接続状態又は不完全な接続状態であるかを判定できる。この判定結果を利用することにより、ネットワークの管理者は不完全な接続状態を知ることができる。管理者は、判定結果に基づいて配線の追加等を行い、ネットワークシステム10を完全な接続状態とすることにより、全ての上位スイッチの帯域を有効に活用することができる。
【0118】
また、上述した第2実施形態のネットワークシステム10によれば、ネットワークシステム10が通信可能な状態又は通信不可能な状態であるかを判定できる。この判定結果を利用することにより、ネットワークの管理者は通信不可能な状態を知ることができる。管理者は、判定結果に基づいて配線の追加等を行い、ネットワークシステム10を通信可能な状態へと移行させることができる。
【0119】
本発明は、上述した第1及び第2実施形態に限定されることなく、第1及び第2実施形態の各々に変形を加えた形態も含む。
上述した第1実施形態及び第2実施形態では、接続台数情報54f、上位スイッチ識別情報54g、及び接続下位スイッチリスト情報54hが接続情報通知フレーム54に含まれているが、接続情報通知フレーム54のフォーマットは、
図6に示すものに限定されることはない。
【0120】
例えば、接続下位スイッチリスト情報54hが接続情報通知フレーム54に含まれていれば、接続下位スイッチリスト情報54hを接続台数情報として用いることができる。すなわち、下位スイッチ34では、受信した接続下位スイッチリスト情報54hに基づいて下位スイッチ34の接続台数を算出すれば、算出した接続台数に従いポート58に対してLAG72の設定を行うことができる。すなわち、接続下位スイッチリスト情報54hを下位スイッチ34に通知することは、上位スイッチ32から接続台数情報を通知することに等しい。
また、下位スイッチ34が、接続情報通知フレーム54中の送信元アドレスに基づいて上位スイッチ32を識別可能であれば、接続情報通知フレーム54のペイロード54dに上位スイッチ識別情報54gが含まれていなくても良い。
【0121】
上述した第1実施形態及び第2実施形態における上位スイッチ32の識別情報特定部48では、下位スイッチ34から受信した識別情報通知フレーム50に基づいて、識別情報テーブル42cを作成している。しかし、ポート38とポート58との間におけるリンクの設定時に、管理者が設定情報として下位スイッチ34の下位スイッチ識別情報50fを手動で入力した場合、上位スイッチ32の識別情報特定部48は、設定情報に含まれる下位スイッチ識別情報50fに基づいて識別情報テーブル42cを作成してもよい。
【0122】
つまり、下位スイッチ34から識別情報通知フレーム50を受信していなくても、下位スイッチ34に接続台数を通知することができるように、上位スイッチ32を構成してもよい。
また、上位スイッチ32は、下位スイッチ34から下位スイッチ識別情報50fが通知されていなくても、管理者により入力された下位スイッチ識別情報50fに基づいてLAG52の設定を行ってもよい。