(57)【特許請求の範囲】
【請求項１】
複数の物理リンクによって仮想的な論理リンクとなるトランクを構成し、当該トランクを利用してパケット転送を実行するパケット転送装置であって、
パケットを取得した場合に、取得したパケットの種別が経路検索を行う検索パケットであるか否かを判定するパケット種別判定手段と、
前記パケット種別判定手段の判定結果に基づいて、前記トランクを構成する複数の物理リンクに前記検索パケットを出力する出力制御手段と、
前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットごとに当該検索パケットに応答する応答パケットを生成し、前記検索パケットの送信元に前記応答パケットを出力する応答手段と、
を備えたことを特徴とするパケット転送装置。
【請求項２】
前記応答手段は、前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットのうち単一の検索パケットを当該検索パケットの宛先に転送することを特徴とする請求項１に記載のパケット転送装置。
【請求項３】
前記応答手段は、前記応答パケットに前記トランクおよび物理リンクを識別する情報を含ませて前記検索パケットの送信元に前記応答パケットを出力することを特徴とする請求項１または２に記載のパケット転送装置。
【請求項４】
前記トランクはＭＡＣアドレスによって識別されるポートを介して自パケット転送装置と接続され、前記検索パケットおよび前記応答パケットの送信元のアドレスおよび宛先のアドレスは前記ポートのＭＡＣアドレスが用いられることを特徴とする請求項１、２または３に記載のパケット転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の物理リンクによって仮想的な論理リンクとなるトランクを構成し、当該トランクを利用してパケット転送を実行するパケット転送装置に関し、特に、リンクトレースのパケットを用いて、トランクを構成する全ての物理リンクで正常にパケットが転送されるか否かを判定可能なパケット転送装置に関するものである。
【背景技術】
【０００２】
ネットワークを介して通信相手の端末装置へデータを送信する場合、送信データはパケットに分割され、通信装置によって中継されて、通信相手に届けられる。パケットを中継する通信装置としては、レイヤ２スイッチ等がある。
【０００３】
通信装置間の通信路の品質を向上させる方法として、リンク集約（リンクアグリゲーション）の技術が知られている。リンク集約とは、同一の通信装置との間にケーブル等の物理リンクを複数設置し、これらの物理リンクを束ねて１つの仮想的な論理リンクを構成する技術である（例えば、特許文献１参照）。
【０００４】
リンク集約を行うことで、高価なケーブルや通信インタフェースを用意することなく、高速な通信路を実現できる。また、複数の物理リンクを同時に使用するため、一部の物理リンクが故障した場合でも、通信路が完全に切断されることを防止でき、可用性が向上する。
【０００５】
リンク集約を用いてパケットを転送する時には、１つのパケットはどれか１つの物理リンクのみを使用して転送される。また、複数のレイヤ２スイッチ等の通信装置から構成されるネットワークにおいて、それらの通信装置がどのような経路で接続されているかを調べるための試験機能として、リンクトレースの技術が知られている。
【０００６】
レイヤ２スイッチは、スパニングツリープロトコルによって冗長の経路を持ったネットワークを構成することが可能である。リンクトレースの機能は、このような構成のネットワークにおいて、経路が切り替わったときに、新たな経路情報を簡易に収集する手段としても使用されている。
【０００７】
【特許文献１】特開２００６−２０３７３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上述した従来の技術では、リンク集約機能を使用して通信装置同士が接続されている場合には、リンクトレースのパケットは１つの物理リンクのみを使用して転送されるため、リンク集約を構成する全ての物理リンクでパケットが正常に転送されているか否かを判定することができないという問題があった。
【０００９】
したがって、リンクトレースのパケットを用いて、リンク集約を構成する全ての物理リンク（トランクに含まれる各物理リンク）で正常にパケットが転送されるか否かを判定できることが求められている。
【００１０】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、リンクトレースのパケットを用いて、リンク集約を構成する全ての物理リンクで正常にパケット転送されるか否かを判定可能なパケット転送装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、本発明は、複数の物理リンクによって仮想的な論理リンクとなるトランクを構成し、当該トランクを利用してパケット転送を実行するパケット転送装置であって、パケットを取得した場合に、取得したパケットの種別が経路検索を行う検索パケットであるか否かを判定するパケット種別判定手段と、前記パケット種別判定手段の判定結果に基づいて、前記トランクを構成する複数の物理リンクに前記検索パケットを出力する出力制御手段と、を備えたことを特徴とする。
【００１２】
また、本発明は、上記発明において、前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットごとに当該検索パケットに応答する応答パケットを生成し、前記検索パケットの送信元に前記応答パケットを出力する応答手段を更に備えたことを特徴とする。
【００１３】
また、本発明は、上記発明において、前記応答手段は、前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットのうち単一の検索パケットを当該検索パケットの宛先に転送することを特徴とする。
【００１４】
また、本発明は、上記発明において、前記応答手段は、前記応答パケットに前記トランクおよび物理リンクを識別する情報を含ませて前記検索パケットの送信元に前記応答パケットを出力することを特徴とする。
【００１５】
また、本発明は、上記発明において、前記トランクはＭＡＣアドレスによって識別されるポートを介して自パケット転送装置と接続され、前記検索パケットおよび前記応答パケットの送信元のアドレスおよび宛先のアドレスは前記ポートのＭＡＣアドレスが用いられることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、パケットを取得した場合に、取得したパケットの種別が経路検索を行う検索パケットであるか否かを判定し、判定した判定結果に基づいて、トランクを構成する複数の物理リンクに前記検索パケットを出力するので、各物理リンクから検索パケットの応答を取得することができ、かかる応答結果から各物理リンクの状態を把握できる。
【００１７】
また、本発明によれば、トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットごとに検索パケットに応答する応答パケットを生成し、検索パケットの送信元に応答パケットを出力するので、検索パケットを出力したパケット転送装置が、リンク集約を構成する全ての物理リンクで正常にパケットが転送されるか否かを判定できる。
【００１８】
また、本発明によれば、トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットのうち単一の検索パケットを当該検索パケットの宛先に転送するので、ネットワークのトラフィック量を低減させることができる。
【００１９】
また、本発明によれば、応答パケットにトランクおよび物理リンクを識別する情報を含ませて検索パケットの送信元に応答パケットを出力するので、正常な物理リンクを正確に判定することができる。
【００２０】
また、本発明によれば、検索パケットおよび応答パケットの送信元のアドレスおよび宛先のアドレスにポートのＭＡＣアドレスを用いるので、正常な物理リンクを正確に判定することができる。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照して、この発明に係るパケット転送装置の好適な実施の形態を詳細に説明する。
【実施例１】
【００２２】
まず、本実施例を説明する前に、従来の技術について説明し、その問題点を示す。図３２は、従来のスイッチで構成されるネットワークシステムの構成を示す図である。同図に示すように、このネットワークシステムは、データ転送を行うスイッチ１０ａ〜１０ｅ、ユーザ端末装置２１〜２６、スイッチ１０ａの保守管理を行う保守端末装置１０を備えて構成される。
【００２３】
図３２に示す各スイッチ１０ａ〜１０ｅはユーザ端末装置や他のスイッチと接続するためのポートを備え、各ポートが１つの物理リンクに対応する。ポートは、ＰＮ（Ｎは自然数）などの番号により識別する。
【００２４】
スイッチ１０ａは、ポートＰ１〜８を有し、ポートＰ１はユーザ端末装置２１に接続され、ポートＰ２はユーザ端末装置２２に接続され、ポートＰ７，Ｐ８は、スイッチ１０ｂのポートＰ４，Ｐ６に接続されている。また、スイッチ１０ａは、保守端末装置１０と接続されている。
【００２５】
スイッチ１０ｂは、ポートＰ１〜１２を有し、ポートＰ１はユーザ端末装置２３に接続され、ポートＰ４，Ｐ６は、スイッチ１０ａのポートＰ７，Ｐ８に接続され、ポートＰ１０〜１２は、スイッチ１０ｃのポートＰ７，Ｐ９，Ｐ１１に接続されている。
【００２６】
スイッチ１０ｃは、ポートＰ１〜１２を有し、ポートＰ２，Ｐ４はスイッチ１０ｄのＰ５，Ｐ６に接続され、ポートＰ７，Ｐ９，Ｐ１１はスイッチ１０ｂのポートＰ１０〜１２に接続され、ポートＰ１２はスイッチ１０ｅのポートＰ５に接続されている。
【００２７】
スイッチ１０ｄは、ポートＰ１〜６を有し、ポートＰ１はユーザ端末装置２４に接続され、ポートＰ２はユーザ端末装置２５に接続され、ポートＰ５，Ｐ６は、スイッチ１０ｃのポートＰ２，Ｐ４に接続されている。
【００２８】
スイッチ１０ｅは、ポートＰ１〜５を有し、ポートＰ２はユーザ端末装置２６に接続され、ポートＰ５はスイッチ１０ｃのポートＰ１２に接続されている。
【００２９】
また、図３２に示す各スイッチ１０ａ〜１０ｅは、固有のＭＡＣアドレスを持っているものとする。具体的には、スイッチ１０ａのＭＡＣアドレスは０Ａ、スイッチ１０ｂのＭＡＣアドレスは０Ｂ、スイッチ１０ｃのＭＡＣアドレスは０Ｃ、スイッチ１０ｄのＭＡＣアドレスは０Ｄ、スイッチ１０ｅのＭＡＣアドレスは０Ｅとする。各ＭＡＣアドレスは、全て１６進数で示されている。ＭＡＣアドレスは、実際は６バイトであるが、前のゼロを省略している。
【００３０】
スイッチ１０ａ〜１０ｅと同様にして、ユーザ端末２１〜２６も固有のＭＡＣアドレスを保持しているものとする。具体的には、ユーザ端末装置２１のＭＡＣアドレスを２１とし、ユーザ端末装置２６のＭＡＣアドレスを２６とする。ユーザ端末装置２２〜２５のＭＡＣアドレスは省略する。
【００３１】
図３２では、スイッチ同士の接続のために、リンク集約が用いられている箇所がある。そして、ここでは、リンク集約により構成された論理的なリンクを識別するために、トランク番号を利用する。スイッチ１０ａとスイッチ１０ｂとの間を接続する論理的なリンクのトランク番号をトランク４０、スイッチ１０ｂとスイッチ１０ｃとの間を接続する論理的なリンクのトランク番号をトランク５０、スイッチ１０ｃとスイッチ１０ｄとの間を接続する論理的なリンクのトランク番号をトランク６０と定義する。
【００３２】
なお、図３２に示す例では、１つの論理的なリンクに接続されている両方のスイッチとも同じトランク番号を用いているが、１つのスイッチ内で論理的なリンクが識別できればよく、必ずしも両スイッチで同じ番号でなくともよい。但し、以降の説明では、２つのスイッチを接続するリンク集約は同じトランク番号を使用しているものとする。
【００３３】
次に、図３２に示したスイッチ１０ａの構成について説明する。なお、スイッチ１０ｂ〜１０ｅは、スイッチ１０ａと比較してポート数が異なるものの同様の構成で実現可能であるため、説明を省略する。図３３は、図３２に示したスイッチ１０ａの構成を示す機能ブロック図である。同図に示すように、このスイッチ１０ａは、バス１１と、通信ポート群１２と、設定制御部１３と、テーブル格納メモリ１４と、学習テーブル１５と、パケットＳＷ機構１６と、ポート監視部１７とを備えて構成される。
【００３４】
バス１１は、設定制御部１３、テーブル格納メモリ１４、パケットＳＷ機構１６、ポート監視部１７を接続するバスである。また、通信ポート群１２は、上記したポートＰ１〜８からなるポート群である。
【００３５】
設定制御部１３は、スイッチ１０ａ全体を制御する制御手段であり、ＣＰＵ（Central  Processing  Unit）１３ａと、メモリ１３ｂと、通信Ｉ／Ｆ１３ｃとを備える。ＣＰＵ１３ａは、プログラムによる各種の処理を実行する手段であり、メモリ１３ｂはＣＰＵ１３ａに実行させるプログラムとプログラムが使用するデータをと記憶する記憶手段である。
【００３６】
通信Ｉ／Ｆ１３ｃは、管理者が使用する保守端末装置１０から送信されるコマンドを受信し、ＣＰＵ１３ａに通知すると共に、コマンドに対する実行結果を保守端末装置１０に応答する手段である。
【００３７】
テーブル格納メモリ１４は、ポート管理テーブルおよびリンク集約管理テーブルを記憶する記憶手段である。まず、ポート管理テーブルについて説明する。ポート管理テーブルは、リンク集約をなすポートの情報等を管理するテーブルである。図３４は、従来のポート管理テーブルのデータ構造の一例を示す図である。
【００３８】
図３４に示すように、このポート管理テーブルは、ポート番号と、リンク集約対象フラグと、トランク番号と、フラディング対象フラグとを有する。このうち、リンク集約対象フラグは、ポートがリンク集約を構成しているか否かを示すフラグである。リンク集約対象フラグが「０」の場合には、リンク集約を構成していないことを示し、リンク集約対象フラグが「１」の場合には、リンク集約を構成していることを示す。
【００３９】
図３４に示す例では、ポート番号７，８がリンク集約を構成し、トランク番号が「４０」となっている。なお、フラディング対象フラグは、フラディングを行うか否かを示すフラグである。フラディングとは、パケットを受信したポート以外の装置内の全ポートへパケットを出力することである。フラディング対象フラグが「１」のポートはフラディングを実行するポートであり、フラディング対象フラグが「０」のポートはフラディングを実行しないポートとなる。
【００４０】
続いて、テーブル格納メモリ１４が記憶するリンク集約管理テーブルについて説明する。リンク集約管理テーブルは、リンク集約を構成するトランクを管理するためのテーブルである。図３５は、従来のリンク集約管理テーブルのデータ構造の一例を示す図である。同図に示すように、このリンク集約管理テーブルは、トランク番号と、トランク内ポート数と、１番目ポート番号〜ｎ番目ポート番号とを有する。
【００４１】
このうち、トランク内ポート数は、トランクを構成するポートの数を示す。例えば、トランク番号「４０」のトランクには、ポートが２つ含まれ、１番目のポートの番号はポート番号「７」であり、２番目のポート番号はポート番号「８」となる。
【００４２】
図３３の説明に戻ると、学習テーブル１５は、過去に受信したパケットの送信元アドレスと、そのパケットが到来したポートまたはトランクの識別情報とを対応付けて記憶するテーブルである。図３６は、従来の学習テーブル１５のデータ構造の一例を示す図である。
【００４３】
図３６に示すように、この学習テーブル１５は、ＭＡＣアドレスと、ポート／トランク番号と、ポート／トランク識別フラグとを有する。ポート／トランク識別フラグは、ポート／トランク番号がポート番号かトランク番号かを示す情報である。ポート／トランク識別フラグが「０」のときは、対応する行のポート／トランク番号はポート番号を示す。ポート／トランク識別フラグが「１」のときは、対応する行のポート／トランク番号はトランク番号を示す。
【００４４】
例えば、図３２に示したユーザ端末装置２１が、スイッチ１０ａに、送信元ＭＡＣアドレスとして２１をもつパケットを送信すると、スイッチ１０ａの学習テーブル１５には、図３６に示すように、ＭＡＣアドレスが２１、ポート／トランク番号が１、ポート／トランク識別フラグに０が記憶される。
【００４５】
図３３の説明に戻ると、パケットＳＷ機構１６は、通信ポート群１２やバス１１からパケットを受け取ると、パケットの種別や学習テーブル１５の参照結果に応じてパケットの転送先を決定し、通信ポート群１２やバス１１にパケットを送信する手段である。
【００４６】
パケットＳＷ機構１６は、決定した転送先がトランクである場合には、テーブル格納メモリ１４に記憶されたポート管理テーブルおよびリンク集約管理テーブルを参照して、転送に使用する具体的な通信ポートを決定する。その後、パケットＳＷ機構１６は、パケットを通信ポート群１２に出力する。
【００４７】
ポート監視部１７は、通信ポート群１２を監視し、通信ポートＰ１〜８や通信ポートＰ１〜８に接続された物理リンクの故障・復旧などを検出する手段である。ポート監視部１７は、物理リンクの故障・復旧などを検出した場合には、検出結果を設定制御部１３に出力する。
【００４８】
ポート監視部１７は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３に出力し、設定制御部１３からの指示を受けてポート管理テーブルを更新する。例えば、故障が発生したポートと同一のトランク内の正常なポートのフラディング対象フラグを１に書き換える。
【００４９】
また、ポート監視部１７は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３に出力し、設定制御部１３からの指示を受けて、リンク集約管理テーブルを更新する。
【００５０】
すなわち、ポート監視部１７は、トランク内の正常のポートの数を減算し、トランクを構成する各ポート番号から故障したポートを取り除き、左詰めに設定し直す。また、故障したポートが復旧した場合には、トランク内の正常なポートの数を加算し、トランクを構成するポート情報に、復旧したポートを加えて左詰めに設定し直す。
【００５１】
続いて、スイッチ１０ａ〜１０ｅ間で転送されるパケットのデータ構造について説明する。図３７は、パケットのデータ構造の一例を示す図である。同図に示すように、このパケットは、宛先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、ＶＬＡＮタグと、ペイロードと、ＦＣＳ（Frame  Check  Sequence）とを備える。
【００５２】
このうち、宛先ＭＡＣアドレスは、送信先の装置が有する通信インタフェースを一意に識別するアドレスである。送信元ＭＡＣアドレスは、送信元の装置が有する通信インタフェースを一意に識別するアドレスである。ＶＬＡＮタグは、１つのネットワークを複数の論理的なネットワークに分割して運用する場合に、個々の論理的なネットワークに割り当てられる一意な値である。
【００５３】
ペイロードは、送受信するデータ本体であり、例えば、ＩＰパケットを所定のデータ長に分割したものである。ＦＣＳは、受信したパケットの誤りを検出するために用いられる値である。図３７に示したパケットが、ポートＰ１〜Ｐ８を介して、各スイッチの間やスイッチとユーザ端末装置との間で送受信される。なお、パケットのデータ構造は、ネットワークの運用形態等に応じて、種々の変形例が考えられる。例えば、ＶＬＡＮタグが省略される場合があれば、図３７に示した以外のヘッダ情報が付加される場合もある。
【００５４】
続いて、図３７に示したパケットに付加されるパケットヘッダについて説明する。図３８は、パケットヘッダのデータ構造の一例を示す図である。同図に示すように、パケットヘッダは、パケット入力元と受信ポート番号とを備える。通信ポート群からパケットを取得した場合には、パケット入力元に「０」が登録される。設定制御部１３からパケットを取得した場合には、パケット入力元に「１」が登録される。受信ポート番号には、パケットを受信したポートの番号が登録される。パケットＳＷ機構１６は、かかるパケットヘッダを参照して、パケットの入力元を判定する。
【００５５】
続いて、図３７に示したパケットのペイロードに含まれるEtherType値およびOpeCodeについて説明する。図３９は、パケットのペイロードに含まれるEtherType値およびOpeCodeを説明するための図である。パケットＳＷ機構１６は、かかるEtherType値およびOpeCodeを参照することによって、パケットの種別を判定することができる。
【００５６】
具体的には、EtherType値が「0x9B10」で、OpeCodeが「５」の場合には、パケットの種別は、リンクトレース要求パケットとなり、EtherType値が「0x9B10」で、OpeCodeが「４」の場合には、パケットの種別は、リンクトレース応答パケットとなる。EtherType値が「0x9B10」以外、または、EtherType値が「0x9B10」で、OpeCodeが「４，５」以外の場合は、通常パケットとなる。
【００５７】
ここで、リンクトレース要求パケット（ＬＴＭ）は、スイッチがパケットの経路情報を収集する場合に出力するパケットであり、リンクトレース応答パケット（ＬＴＲ）は、ＬＴＭに応答するためのパケットである。
【００５８】
図４０は、リンクトレース要求パケットのデータ構造の一例を示す図であり、図４１は、リンクトレース応答パケットのデータ構造の一例を示す図である。図４０に示すように、リンクトレース要求パケットは、宛先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、EtherType値と、OpeCodeと、ＴＴＬ（Time  To  Live）と、Original  MACアドレスと、Target  MACアドレスと、ＦＣＳとを備える。また、図４１に示すように、リンクトレース応答パケットは、宛先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、EtherType値と、OpeCodeと、ＴＴＬ（Time  To  Live）と、ＦＣＳとを備える。
【００５９】
このうち、EtherType値は、パケットの種別を示し、リンクトレースのパケットを識別するために使用する。リンクトレースの場合には、EtherType値は１６進数の「0x9B10」を使用する。それ以外は、通常のパケットとみなす。OpeCodeは、リンクトレース要求パケットの場合には「５」が登録される。
【００６０】
ＴＴＬは、試験した装置と応答した装置の間の距離を示すために使用する値である。Original  MACアドレスは、自装置のＭＡＣアドレス、またはパケットの送信元ポートのアドレスが登録される。Original  MACアドレスは、ＬＴＭのみで使用し、ＬＴＲでは使用しない。Target  MACアドレスは、コマンドでターゲットＭＡＣアドレスとして設定された値が登録される。Target  MACアドレスは、ＬＴＭのみで使用し、ＬＴＲでは使用しない。
【００６１】
続いて、従来のパケットＳＷ機構１６の処理手順について説明する。なお、ここでは説明を省略するが、スイッチ１０ｂ〜１０ｅに搭載されるパケットＳＷ機構もパケットＳＷ機構１６と同様の処理手順となる。図４２は、従来のパケットＳＷ機構１６の処理手順を示すフローチャートである。同図に示すように、スイッチ１０ａは、パケットＳＷ機構１６が、パケットを取得し（ステップＳ１０１）、パケットヘッダ（図３８参照）を参照してパケットの入力元が通常ポート群か否かを判定する（ステップＳ１０２）。
【００６２】
パケットの入力元が通常ポート群ではない場合には（ステップＳ１０３，Ｎｏ）、Target  MACアドレスを学習済みか否かを判定し（ステップＳ１０４）、学習済みでない場合には（ステップＳ１０５，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し（受信ポートは除く）、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ１０６）。一方、Target  MACアドレスを学習済みである場合には（ステップＳ１０５，Ｙｅｓ）、ステップＳ１１０に移行する。ステップＳ１１０の説明は後述する。
【００６３】
ところで、パケットの入力元が通常ポート群である場合には（ステップＳ１０３，Ｙｅｓ）、パケットの送信元ＭＡＣアドレスと受信位置（ポート番号）を学習テーブル１５に学習すると共に、トランクで受信した場合にはトランク番号を学習する（ステップＳ１０７）。
【００６４】
そして、パケットＳＷ機構１６は、パケットのEtherType値およびOpeCode（図３９参照）を参照してパケットの種別を判定し（ステップＳ１０８）、通常のパケットである場合には（ステップＳ１０９，Ｙｅｓ）、通常パケット出力処理を実行する（ステップＳ１１０）。一方、通常のパケットではない場合（ＬＴＭあるいはＬＴＲの場合）には（ステップＳ１０９，Ｎｏ）、リンクトレース処理を実行する（ステップＳ１１１）。
【００６５】
次に、図４２のステップＳ１１０に示した通常パケット出力処理について説明する。図４３は、通常パケット出力処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６は、パケットの宛先ＭＡＣアドレスをユニキャストで学習済みか否かを学習テーブルを１５に基づいて判定し（ステップＳ２０１）、学習済みでない場合には（ステップＳ２０２，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し（受信ポートは除く）、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ２０３）。
【００６６】
一方、パケットの宛先ＭＡＣアドレスをユニキャストで学習済みの場合には（ステップＳ２０２，Ｙｅｓ）、学習しているポート情報はトランク番号か否かを判定し（ステップＳ２０４）、トランク番号である場合には（ステップＳ２０５，Ｙｅｓ）、トランクを構成する出力ポートを１つ選択し（ステップＳ２０６）、指定されたポートにパケットを出力する（ステップＳ２０７）。一方、学習しているポート情報がトランク番号でない場合には（ステップＳ２０５，Ｎｏ）、学習しているポートを出力ポートに指定し（ステップＳ２０８）、ステップＳ２０７に移行する。
【００６７】
次に、図４２のステップＳ１１１に示したリンクトレース処理について説明する。図４４、図４５は、リンクトレース処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６は、パケットの種別はＬＴＭか否かを判定し（ステップＳ３０１）、パケットの種別がＬＴＲである場合には（ステップＳ３０２，Ｎｏ）、宛先ＭＡＣアドレスは自装置のＭＡＣアドレスと一致するか否かを判定する（ステップＳ３０３）。
【００６８】
自装置のＭＡＣアドレスと一致しない場合には（ステップＳ３０４，Ｎｏ）、通常パケット出力処理を実行する（ステップＳ３０５）。一方、自装置のＭＡＣアドレスと一致する場合には（ステップＳ３０４，Ｙｅｓ）、ＬＴＲを設定制御部１３に出力する（ステップＳ３０６）。
【００６９】
ところで、パケットの種別がＬＴＭである場合には（ステップＳ３０２，Ｙｅｓ）、Target  MACアドレスは自装置のＭＡＣアドレスと一致するか否かを判定し（ステップＳ３０７）、一致する場合には（ステップＳ３０８，Ｙｅｓ）、応答パケット生成処理１を実行し（ステップＳ３０９）、パケットを受信したポートに応答パケットを出力する（ステップＳ３１０）。
【００７０】
Target  MACアドレスは自装置のＭＡＣアドレスと一致しない場合には（ステップＳ３０８，Ｎｏ）、Target  MACアドレスを学習しているか否かを判定し（ステップＳ３１１）、学習していない場合には（ステップＳ３１２，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し（受信ポートは除く）、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ３１３）。
【００７１】
一方、Target  MACアドレスを学習している場合には（ステップＳ３１２，Ｙｅｓ）、応答パケット生成処理２を実行し（ステップＳ３１４）、パケットを受信したポートに応答パケットを出力し（ステップＳ３１５）、転送パケット生成処理を実行する（ステップＳ３１６）。
【００７２】
そして、パケットＳＷ機構１６は、学習しているポート情報はトランク番号か否かを判定し（ステップＳ３１７）、トランク番号である場合には（ステップＳ３１８，Ｙｅｓ）、トランクを構成する出力ポートを１つ選択し（ステップＳ３１９）、指定されたポートにパケットを出力する（ステップＳ３２０）。一方、学習しているポート情報がトランク番号でない場合には（ステップＳ３１８，Ｎｏ）、学習しているポートを出力ポートに指定し（ステップＳ３２１）、ステップＳ３２０に移行する。
【００７３】
ここで、図４４、図４５に示した応答パケット生成処理１、応答パケット生成処理２、通常パケット出力処理、転送パケット生成処理について説明する。なお、通常パケット出力処理は、図４３に示した通常パケット出力処理と同様であるため説明を省略する。
【００７４】
まず、図４４のステップＳ３０９に示した応答パケット生成処理１について説明する。図４６は、応答パケット生成処理１の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６は、宛先ＭＡＣアドレスにＬＴＭのOriginal  MACアドレスを設定し（ステップＳ４０１）、送信元ＭＡＣアドレスにＬＴＭのTarget  MACアドレスを設定する（ステップＳ４０２）。
【００７５】
そして、パケットＳＷ機構１６は、EtherType値に予め定められた値である「0x9B10」を設定し（ステップＳ４０３）、OpeCodeに「４」を設定し（ステップＳ４０４）、ＴＴＬに受信したＴＬＭのＴＴＬを１減算して設定する（ステップＳ４０５）。
【００７６】
次に、図４５のステップＳ３１４に示した応答パケット生成処理２について説明する。図４７は、応答パケット生成処理２の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６は、宛先ＭＡＣアドレスにＬＴＭのOriginal  MACアドレスを設定し（ステップＳ５０１）、送信元ＭＡＣアドレスにＬＴＲを応答するスイッチのＭＡＣアドレスを設定する（ステップＳ５０２）。
【００７７】
そして、パケットＳＷ機構１６は、EtherType値に予め定められた値である「0x9B10」を設定し（ステップＳ５０３）、OpeCodeに「４」を設定し（ステップＳ５０４）、ＴＴＬに受信したＬＴＭのＴＴＬを１減算して設定する（ステップＳ５０５）。
【００７８】
次に、図４５のステップＳ３１６に示した転送パケット生成処理について説明する。図４８は、転送パケット生成処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６は、宛先ＭＡＣアドレスに、受信したＬＴＭと同じ値を設定し（ステップＳ６０１）、送信元ＭＡＣアドレスにＬＴＭを転送するスイッチのＭＡＣアドレスを設定する（ステップＳ６０２）。
【００７９】
そして、パケットＳＷ機構１６は、EtherType値に予め決められた値である「0x9B10」を設定し（ステップＳ６０３）、OpeCodeに「５」を設定し（ステップＳ６０４）、ＴＴＬに受信したＬＴＭのＴＴＬを１減算して設定する（ステップＳ６０５）。その後、パケットＳＷ機構１６は、Original  MACアドレスに、受信したＬＴＭと同じ値を設定し（ステップＳ６０６）、Target  MACアドレスに受信したＬＴＭと同じ値を設定する（ステップＳ６０７）。
【００８０】
このように、従来のネットワークシステムでは、各スイッチ１０ａ〜１０ｅが図４２〜図４８に示した処理をそれぞれ実行することで、経路検索を実行することができる。例えば、スイッチ１０ａからスイッチ１０ｅまでの経路を検索した場合（ＬＴＭの宛先ＭＡＣアドレスをスイッチ１０ｅのＭＡＣアドレスに設定し、ＬＴＭの送信元ＭＡＣアドレスをスイッチ１０ａのＭＡＣアドレスに設定して送信した場合）には、スイッチ１０ａは、各スイッチ１０ｂ〜１０ｅからＬＴＲを取得し、設定制御部１３が、取得した各ＬＴＲのＴＴＬと送信元ＭＡＣアドレスとを基にして、ＴＴＬの順番を大きい順に並べてリンクトレース結果データを生成する。
【００８１】
図４９は、従来のリンクトレース結果データの一例を示す図である。図４９に示すようなリンクトレース結果データをモニタ（図示略）等に出力することによって、管理者は、送信元から宛先までの経路を知ることができる。
【００８２】
しかしながら、図４９に示すように、管理者は、各スイッチ１０ａ〜１０ｅの経路を知ることができても、どの区間がリンク集約によって接続されているのかを知ることができない。また、各スイッチ１０ａ〜１０ｅ間をＬＴＭが転送される場合に、リンク集約に含まれる複数の物理リンクのうち、１つの物理リンクのみに転送されるので、リンク集約を構成する物理リンクが正常にパケットを転送しているか否かを知ることができないという問題があった。
【００８３】
次に、本実施例１にかかるネットワークシステムの構成について説明する。図１は、本実施例１にかかるネットワークシステムの構成を示す図である。同図に示すように、このネットワークシステムは、データ転送を行うスイッチ１００〜５００、ユーザ端末装置２１〜２６、スイッチ１００の保守管理を行う保守端末装置１０を備えて構成される。
【００８４】
図１に示す各スイッチ１００〜５００は、ユーザ端末装置や他のスイッチと接続するためのポートを備え、各ポートが１つの物理リンクに対応する。ポートは、ＰＮ（Ｎは自然数）などの番号により識別する。
【００８５】
スイッチ１００は、ポートＰ１〜８を有し、ポートＰ１はユーザ端末装置２１に接続され、ポートＰ２はユーザ端末装置２２に接続され、ポートＰ７，Ｐ８は、スイッチ２００のポートＰ４，Ｐ６に接続されている。また、スイッチ１００は、保守端末装置１０と接続されている。
【００８６】
スイッチ２００は、ポートＰ１〜１２を有し、ポートＰ１はユーザ端末装置２３に接続され、ポートＰ４，Ｐ６は、スイッチ１００のポートＰ７，Ｐ８に接続され、ポートＰ１０〜１２は、スイッチ３００のポートＰ７，Ｐ９，Ｐ１１に接続されている。
【００８７】
スイッチ３００は、ポートＰ１〜１２を有し、ポートＰ２，Ｐ４はスイッチ４００のＰ５，Ｐ６に接続され、ポートＰ７，Ｐ９，Ｐ１１はスイッチ２００のポートＰ１０〜１２に接続され、ポートＰ１２はスイッチ５００のポートＰ５に接続されている。
【００８８】
スイッチ４００は、ポートＰ１〜６を有し、ポートＰ１はユーザ端末装置２４に接続され、ポートＰ２はユーザ端末装置２５に接続され、ポートＰ５，Ｐ６は、スイッチ３００のポートＰ２，Ｐ４に接続されている。
【００８９】
スイッチ５００は、ポートＰ１〜５を有し、ポートＰ２はユーザ端末装置２６に接続され、ポートＰ５はスイッチ３００のポートＰ１２に接続されている。
【００９０】
また、図１に示す各スイッチ１００〜５００は、それぞれ固有のＭＡＣアドレスを持っているものとする。具体的には、スイッチ１００のＭＡＣアドレスは０Ａ、スイッチ２００のＭＡＣアドレスは０Ｂ、スイッチ３００のＭＡＣアドレスは０Ｃ、スイッチ４００のＭＡＣアドレスは０Ｄ、スイッチ５００のＭＡＣアドレスは０Ｅとする。各ＭＡＣアドレスは、全て１６進数で示されている。ＭＡＣアドレスは、実際は６バイトであるが、前のゼロを省略している。
【００９１】
スイッチ１００〜５００と同様にして、ユーザ端末２１〜２６も固有のＭＡＣアドレスを保持しているものとする。具体的には、ユーザ端末装置２１のＭＡＣアドレスを２１とし、ユーザ端末装置２６のＭＡＣアドレスを２６とする。ユーザ端末装置２２〜２５のＭＡＣアドレスは省略する。
【００９２】
また、図１では、スイッチ同士の接続のために、リンク集約が用いられている箇所がある。そして、ここでは、リンク集約により構成された論理的なリンクを識別するために、トランク番号を利用する。スイッチ１００とスイッチ２００とを間を接続する論理的なリンクのトランク番号をトランク４０、スイッチ２００とスイッチ３００との間を接続する論理的なリンクのトランク番号をトランク５０、スイッチ３００とスイッチ４００との間を接続する論理的なリンクのトランク番号をトランク６０と定義する。
【００９３】
ここで、図１を用いて、本実施例１の特徴を説明する。本実施例１にかかる各スイッチ１００〜５００は、経路検索を実行する状況下において、トランクを構成する複数の物理リンク全てに対してＬＴＭ（リンクトレース要求パケット）を出力し、ＬＴＲ（リンクトレース応答パケット）を各物理リンクから取得する。
【００９４】
例えば、スイッチ１００が、トランク４０にＬＴＭを出力する場合には、トランク４０に含まれる全ての物理リンクＰ７，Ｐ８からＬＴＭを出力する。このように、トランクに含まれる全てのポートに対してＬＴＭを出力し、かかるＬＴＭに対応するＬＴＲをそれぞれの物理リンク（スイッチ２００の各ポートＰ４，Ｐ６）から取得することで、トランクを構成する物理リンクが正常か否かを容易に判定することができる。仮に、スイッチ１００のポートＰ７からのＬＴＲを受信できなかった場合には、スイッチ１００のポートＰ７とスイッチ２００のポートＰ４を接続する物理リンクに異常が発生していることとなる。
【００９５】
このように、本実施例１にかかるネットワークシステムは、トランクを構成する全てのポートに対してＬＴＭを出力し、出力したＬＴＭの応答となるＬＴＲを各物理リンクから取得することによって、トランクを構成する各物理リンクの状態を管理者は容易に知ることができ、各トランクを効率よく管理することができる。
【００９６】
次に、図１に示したスイッチ１００の構成について説明する。なお、スイッチ２００〜５００は、スイッチ１００と比較してポート数が異なるものの同様の構成で実現可能であるため、説明を省略する。図２は、本実施例１にかかるスイッチ１００の構成を示す機能ブロック図である。同図に示すように、このスイッチ１００は、バス１１０と、通信ポート群１２０と、設定制御部１３０と、テーブル格納メモリ１４０と、学習テーブル１５０と、パケットＳＷ機構１６０と、ポート監視部１７０とを備えて構成される。
【００９７】
バス１１０は、設定制御部１３０、テーブル格納メモリ１４０、パケットＳＷ機構１６０、ポート監視部１７０を接続する手段（バス）である。また、通信ポート群１２０は、上記したポートＰ１〜８からなるポート群であり、かかるポートＰ１〜８を介して他のスイッチやユーザ端末装置にパケットを転送する。
【００９８】
設定制御部１３０は、スイッチ１００全体を制御する制御手段であり、ＣＰＵ１３０ａと、メモリ１３０ｂと、通信Ｉ／Ｆ１３０ｃとを備える。ＣＰＵ１３０ａは、プログラムによる各種の処理を実行する手段であり、特に、本発明に密接に関連する処理としては、リンクトレース結果データを生成する。
【００９９】
ＣＰＵ１３０ａは、パケットＳＷ機構１６０からＬＴＲを取得した場合に、取得したＬＴＲのＭＡＣアドレス（送信元ＭＡＣアドレス）と、同一ＭＡＣアドレス（送信元ＭＡＣアドレス）のＬＴＲを取得した回数を対応付けてメモリ１３０ｂに記憶し、メモリ１３０ｂに記憶した内容を基にしてリンクトレース結果データを生成する。
【０１００】
図３は、本実施例１にかかるリンクトレース結果データの一例を示す図である。同図に示すように、リンクトレース結果データは、ＴＴＬの大きい順に各ＭＡＣアドレスが並べられ（経路順に並べられ）、各ＭＡＣアドレスと対応付けて、ＬＴＲを取得した回数（ここでは、接続リンク数）が登録されている。ここでは、ＣＰＵ１３０ａは、ＭＡＣアドレス「０Ｂ」のスイッチ２００からＬＴＭを２回取得し、ＭＡＣアドレス「０Ｃ」のスイッチ３００からＬＴＲを３回取得し、ＭＡＣアドレス「０Ｅ」のスイッチ５００からＬＴＲを１回取得している。
【０１０１】
すなわち、図３を参照することによって、スイッチ１００とスイッチ２００を接続するトランクのうち、２本が正常に動作しており、スイッチ２００とスイッチ３００とを接続するトランクのうち、３本が正常に動作していることがわかる。予め、各スイッチ１００〜５００を接続するトランクの物理リンクの数を管理しておけば、ＣＰＵ１３０ａが生成したリンクトレース結果データと比較することによって、故障した物理リンクを有するトランクを容易に検出することもできる。
【０１０２】
例えば、スイッチ１００とスイッチ２００とを接続するトランクの物理リンクが「３」本であるにも関わらず、ＭＡＣアドレス「０Ｂ」に対応する接続リンク数が「２」本ならば、スイッチ１００とスイッチ２００とを接続するトランクの物理リンクの内、どれか１本が故障していることとなる。
【０１０３】
図２の説明に戻ると、メモリ１３０ｂは、ＣＰＵ１３０ａに実行されるプログラムとプログラムが使用するデータとを記憶する。特に、本実施例１にかかるメモリ１３０ｂは、図３に示したリンクトレース結果データ等を記憶する。通信Ｉ／Ｆ１３０ｃは、管理者が使用する保守端末装置１０から送信されるコマンドを受信し、ＣＰＵ１３０ａに通知すると共に、コマンドに対する実行結果（例えば、リンクトレース結果データ）を保守端末装置１０に応答する手段である。
【０１０４】
テーブル格納メモリ１４０は、ポート管理テーブルおよびリンク集約管理テーブルを記憶する記憶手段である。ここで、ポート管理テーブルは、リンク集約をなすポートの情報等を管理するテーブルである。本実施例１にかかるポート管理テーブルのデータ構造は、図３４において説明したポート管理テーブルと同様であるため説明を省略する。
【０１０５】
リンク集約管理テーブルは、リンク集約を構成するトランクを管理するためのテーブルである。図４は、リンク集約管理テーブルのデータ構造の一例を示す図である。同図に示すように、このリンク集約管理テーブルは、トランク番号と、トランク内ポート数と、１番目ポート番号〜ｎ番目ポート番号と、ＬＴＭ転送済みフラグとを有する。
【０１０６】
このうち、トランク番号、トランク内ポート数、１番目ポート番号〜ｎ番目ポート番号は、図３５に示した従来のリンク集約管理テーブルと同様である。ＬＴＭ転送済みフラグは、同一トランク番号のトランクで複数のＬＴＭを受信した場合に、同一のＬＴＭを重複して宛先に転送することを防止するために利用される。
【０１０７】
トランクを構成する複数のポートのうち、初めにＬＴＭを受信した場合（対応するＬＴＭフラグが「０」の場合）には、ＬＴＭを宛先に転送した後に、対応するトランク番号のＬＴＭ転送済みフラグを「１」に設定する。その後に、同一のトランクからＬＴＭを受信した場合に、対応するＬＴＭ転送済みフラグが「１」となっていれば、ＬＴＭの転送を中止する。なお、ＬＴＭ転送済みフラグは、「１」に設定されてから一定時間経過後に「０」に設定し直される。
【０１０８】
図２の説明に戻ると、学習テーブル１５０は、過去に受信したパケットの送信元アドレスと、そのパケットが到来したポートまたはトランクの識別情報とを対応付けて記憶するテーブルである。なお、本実施例１にかかる学習テーブル１５０のデータ構造は、図３６において説明した学習テーブル１５と同様であるため説明を省略する。
【０１０９】
パケットＳＷ機構１６０は、通信ポート群１２０やバス１１０からパケットを受け取ると、パケットの種別や学習テーブル１５０の参照結果に応じてパケットの転送先を決定し、通信ポート群１２０やバス１１０にパケットを送信する手段である。
【０１１０】
特に、本実施例１にかかるパケットＳＷ機構１６０は、ＬＴＭを宛先に転送する場合に、転送するポートがトランクを構成している場合に、トランクを構成する全てのポートにＬＴＭを出力する。また、パケットＳＷ機構１６０は、図４に示したリンク集約管理テールを管理し、条件に応じてＬＴＭ転送済みフラグを更新する。
【０１１１】
すなわち、パケットＳＷ機構１６０は、トランクの各ポートにＬＴＭを出力した場合には、対応するトランク番号のＬＴＭ転送済みフラグを「１」に設定する。また、パケットＳＷ機構１６０は、ＬＴＭ転送済みフラグを「１」に設定してから所定時間経過後にＬＴＭ転送済みフラグを「０」に戻す。
【０１１２】
ポート監視部１７０は、通信ポート群１２０を監視し、通信ポートＰ１〜８や通信ポートＰ１〜８に接続された物理リンクの故障・復旧などを検出する手段である。ポート監視部１７０は、物理リンクの故障・復旧などを検出した場合には、検出結果を設定制御部１３０に出力する。
【０１１３】
ポート監視部１７０は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３０に出力し、設定制御部１３０からの指示を受けてポート管理テーブルを更新する。例えば、故障が発生したポートと同一のトランク内の正常なポートのフラディング対象フラグを１に書き換える。
【０１１４】
また、ポート監視部１７０は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３０に出力し、設定制御部１３０からの指示を受けて、リンク集約管理テーブルを更新する。すなわち、ポート監視部１７０は、トランク内の正常のポートの数を減算し、トランクを構成する各ポート番号から故障したポートを取り除き、左詰めに設定し直す。また、故障したポートが復旧した場合には、トランク内の正常なポートの数を加算し、トランクを構成するポート情報に、復旧したポートを加えて左詰めに設定し直す。
【０１１５】
なお、本実施例１の各スイッチ１００〜５００間で送受信されるパケットのデータ構造は、図３７〜図４１と同様であるため説明を省略する。
【０１１６】
続いて、本実施例１にかかるパケットＳＷ機構１６０の処理手順について説明する。なお、ここでは説明を省略するが、スイッチ１００〜５００に搭載されるパケットＳＷ機構もパケットＳＷ機構１６０と同様の処理手順となる。図５は、本実施例１にかかるパケットＳＷ機構１６０の処理手順を示すフローチャートである。
【０１１７】
図５に示すように、スイッチ１００は、パケットＳＷ機構１６０が、パケットを取得し（ステップＳ７０１）、パケットの入力元は通常ポート群か否かを判定し（ステップＳ７０２）、入力元が通常ポート群でない場合には（ステップＳ７０３，Ｎｏ）、Target  MACアドレスを学習済みか否かを判定する（ステップＳ７０４）。
【０１１８】
Target  MACアドレスを学習済みでない場合には（ステップＳ７０５，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ７０６）。一方、Target  MACアドレスを学習済みの場合には（ステップＳ７０５，Ｙｅｓ）、パケット出力処理を実行する（ステップＳ７０７）。
【０１１９】
ところで、パケットの入力元が通常ポート群である場合には（ステップＳ７０３，Ｙｅｓ）、パケットの送信元ＭＡＣアドレスと受信位置を学習テーブル１５０に学習すると共に、トランクで受信した場合はトランク番号を学習する（ステップＳ７０８）。
【０１２０】
そして、パケットＳＷ機構１６０は、パケットのEtherType値およびOpeCode（図３９参照）を参照してパケットの種別は通常のパケットか否かを判定し（ステップＳ７０９）、通常のパケットである場合には（ステップＳ７１０，Ｙｅｓ）、通常パケット出力処理を実行し（ステップＳ７１１）、通常のパケットでない場合には（ステップＳ７１０，Ｎｏ）、リンクトレース処理を実行する（ステップＳ７１２）。
【０１２１】
次に、図５のステップＳ７０７に示したパケット出力処理について説明する。図６は、本実施例１にかかるパケット出力処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６０は、学習しているポート情報はトランク番号か否かを判定し（ステップＳ８０１）、トランク番号である場合には（ステップＳ８０２，Ｙｅｓ）、トランクを構成するポートを調べ（ステップＳ８０３）、トランクを構成する全てのポートにパケットを出力する（ステップＳ８０４）。
【０１２２】
一方、パケットＳＷ機構１６０は、学習しているポート情報はトランク番号でない場合には（ステップＳ８０２，Ｎｏ）、学習しているポートを出力ポートに指定し（ステップＳ８０５）、指定されたポートにパケットを出力する（ステップＳ８０６）。
【０１２３】
次に、図５のステップＳ７１２に示したリンクトレース処理について説明する。図７、図８は、本実施例１にかかるリンクトレース処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６０は、パケットの種別はＬＴＭか否かを判定し（ステップＳ９０１）、パケットの種別がＬＴＲである場合には（ステップＳ９０２，Ｎｏ）、宛先ＭＡＣアドレスは自装置のＭＡＣアドレスと一致するか否かを判定する（ステップＳ９０３）。
【０１２４】
宛先ＭＡＣアドレスが自装置のＭＡＣアドレスと一致しない場合には（ステップＳ９０４，Ｎｏ）、通常パケット出力処理を実行する（ステップＳ９０５）。一方、宛先ＭＡＣアドレスが自装置のＭＡＣアドレスと一致する場合には（ステップＳ９０４，Ｙｅｓ）、設定制御部１３０にＬＴＲを出力する（ステップＳ９０６）。
【０１２５】
ところで、パケットの種別がＬＴＭである場合には（ステップＳ９０２，Ｙｅｓ）、Target  MACアドレスは自装置のＭＡＣアドレスと一致するか否かを判定し（ステップＳ９０７）、一致する場合には（ステップＳ９０８，Ｙｅｓ）、応答パケット生成処理１を実行し（ステップＳ９０９）、パケットを受信したポートに応答パケットを出力する（ステップＳ９１０）。
【０１２６】
一方、Target  MACアドレスは自装置のＭＡＣアドレスと一致しない場合には（ステップＳ９０８，Ｎｏ）、Target  MACアドレスを学習しているか否かを判定し（ステップＳ９１１）、学習していない場合には（ステップＳ９１２，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し（受信ポートは除く）、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ９１３）。
【０１２７】
一方、Target  MACアドレスを学習済みの場合には（ステップＳ９１２，Ｙｅｓ）、応答パケット生成処理２を実行し（ステップＳ９１４）、パケットを受信したポートに応答パケットを出力し（ステップＳ９１５）、要求パケットを受信した位置はトランクか否かを判定する（ステップＳ９１６）。
【０１２８】
トランクでない場合には（ステップＳ９１７，Ｎｏ）、ステップＳ９２１に移行する（ステップＳ９２１は後述する）。一方、受信した位置がトランクである場合には（ステップＳ９１７，Ｙｅｓ）、受信トランクに対応するＬＴＭ転送済みフラグが「０」か否かを判定する（ステップＳ９１８）。
【０１２９】
フラグが「１」の場合には（ステップＳ９１９，Ｎｏ）、そのままリンクトレース処理を終了する。一方、フラグが「０」の場合には（ステップＳ９１９，Ｙｅｓ）、ＬＴＭ転送済みフラグを「１」に設定し（ステップＳ９２０）、転送パケット生成処理を実行し（ステップＳ９２１）、パケット出力処理を実行する（ステップＳ９２２）。
【０１３０】
なお、図５のステップＳ７１１および図７のステップＳ９０５に示した通常パケット処理は、図４３において説明した通常パケット出力処理と同様であるため説明を省略する。また、図７に示した応答パケット生成処理１および図８に示した応答パケット生成処理２は、図４６に示した応答パケット生成処理１、図４７に示した応答パケット生成処理２にそれぞれ等しいので説明を省略する。
【０１３１】
上述してきたように、本実施例１にかかるネットワークシステムは、各スイッチ１００〜５００が、ＬＴＭを受信し、転送先のリンクがリンク集約を構成している場合には、リンク集約を構成する全ての物理リンクにＬＴＭを転送し、各物理リンクから応答されるＬＴＲを取得してリンクトレース結果データ（図３参照）を生成するので、管理者がリンクトレース結果データを参照することによって正常にパケット転送を実行可能な物理リンクがいくつあるかを正確に知ることができる。
【実施例２】
【０１３２】
次に、本実施例２にかかるネットワークシステムの構成について説明する。図９は、本実施例２にかかるネットワークシステムの構成を示す図である。同図に示すように、このネットワークシステムは、データ転送を行うスイッチ１０１〜５０１、ユーザ端末装置２１〜２６、スイッチ１０１の保守管理を行う保守端末装置１０を備えて構成される。
【０１３３】
図９に示す各スイッチ１０１〜５０１は、ユーザ端末装置や他のスイッチと接続するためのポートを備え、各ポートが１つの物理リンクに対応する。ポートは、ＰＮ（Ｎは自然数）などの番号により識別する。
【０１３４】
スイッチ１０１は、ポートＰ１〜８を有し、ポートＰ１はユーザ端末装置２１に接続され、ポートＰ２はユーザ端末装置２２に接続され、ポートＰ７，Ｐ８は、スイッチ２０１のポートＰ４，Ｐ６に接続されている。また、スイッチ１０１は、保守端末装置１０と接続されている。
【０１３５】
スイッチ２０１は、ポートＰ１〜１２を有し、ポートＰ１はユーザ端末装置２３に接続され、ポートＰ４，Ｐ６は、スイッチ１０１のポートＰ７，Ｐ８に接続され、ポートＰ１０〜１２は、スイッチ３０１のポートＰ７，Ｐ９，Ｐ１１に接続されている。
【０１３６】
スイッチ３０１は、ポートＰ１〜１２を有し、ポートＰ２，Ｐ４はスイッチ４０１のＰ５，Ｐ６に接続され、ポートＰ７，Ｐ９，Ｐ１１はスイッチ２０１のポートＰ１０〜１２に接続され、ポートＰ１２はスイッチ５０１のポートＰ５に接続されている。
【０１３７】
スイッチ４０１は、ポートＰ１〜６を有し、ポートＰ１はユーザ端末装置２４に接続され、ポートＰ２はユーザ端末装置２５に接続され、ポートＰ５，Ｐ６は、スイッチ３０１のポートＰ２，Ｐ４に接続されている。
【０１３８】
スイッチ５０１は、ポートＰ１〜５を有し、ポートＰ２はユーザ端末装置２６に接続され、ポートＰ５はスイッチ３０１のポートＰ１２に接続されている。
【０１３９】
また、図９に示す各スイッチ１０１〜５０１は、それぞれ固有のＭＡＣアドレスを持っているものとする。具体的には、スイッチ１０１のＭＡＣアドレスは０Ａ、スイッチ２０１のＭＡＣアドレスは０Ｂ、スイッチ３０１のＭＡＣアドレスは０Ｃ、スイッチ４０１のＭＡＣアドレスは０Ｄ、スイッチ５０１のＭＡＣアドレスは０Ｅとする。各ＭＡＣアドレスは、全て１６進数で示されている。ＭＡＣアドレスは、実際は６バイトであるが、前のゼロを省略している。
【０１４０】
スイッチ１０１〜５０１と同様にして、ユーザ端末２１〜２６も固有のＭＡＣアドレスを保持しているものとする。具体的には、ユーザ端末装置２１のＭＡＣアドレスを２１とし、ユーザ端末２６のＭＡＣアドレスを２６とする。ユーザ端末装置２２〜２５のＭＡＣアドレスは省略する。
【０１４１】
また、図９では、スイッチ同士の接続のために、リンク集約が用いられている箇所がある。そして、ここでは、リンク集約により構成された論理的なリンクを識別するために、トランク番号を利用する。スイッチ１０１とスイッチ２０１とを間を接続する論理的なリンクのトランク番号をトランク４０、スイッチ２０１とスイッチ３０１との間を接続する論理的なリンクのトランク番号をトランク５０、スイッチ３０１とスイッチ４０１との間を接続する論理的なリンクのトランク番号をトランク６０と定義する。
【０１４２】
ここで、図９を用いて、本実施例２の特徴を説明する。本実施例２にかかる各スイッチ１０１〜５０１は、実施例１の各スイッチ１００〜５００と同様にして、経路検索を実行する状況下において、トランクを構成する複数の物理リンク全てに対してＬＴＭ（リンクトレース要求パケット）を出力し、ＬＴＲ（リンクトレース応答パケット）を各物理リンクから取得する。本実施例２にかかる各スイッチ１０１〜５０１では更に、ＬＴＭの応答としてＬＴＲを返信する場合に、ＬＴＲにトランク番号とポート番号を含ませる。
【０１４３】
例えば、スイッチ１０１がトランク４０の各物理リンクにＬＴＭを出力し、スイッチ２０１が各ＬＴＲを生成する場合には、スイッチ２０１は、トランク番号４０と各ポート番号Ｐ４，Ｐ６を各ＬＴＲに含ませる。すなわち、スイッチ２０１がＰ４から出力するＬＴＲにはトランク番号４０とポート番号Ｐ４を含ませ、スイッチ２０１がＰ６から出力するＬＴＲにはトランク番号４０とポート番号Ｐ６を含ませる。
【０１４４】
このように、本実施例２では、ＬＴＲにトランク番号とポート番号を含ませることによって、リンクトレースを実行したスイッチは、トランクを構成する複数の物理リンクのうち、正常な物理リンクと故障した物理リンクとを区別することができる。
【０１４５】
次に、図９に示したスイッチ１０１の構成について説明する。なお、スイッチ２０１〜５０１は、スイッチ１０１と比較してポート数が異なるものの同様の構成で実現可能であるため、説明を省略する。図１０は、本実施例２にかかるスイッチ１０１の構成を示す機能ブロック図である。同図に示すように、このスイッチ１０１は、バス１１１と、通信ポート群１２１と、設定制御部１３１と、テーブル格納メモリ１４１と、学習テーブル１５１と、パケットＳＷ機構１６１と、ポート監視部１７１とを備えて構成される。
【０１４６】
バス１１１は、設定制御部１３１、テーブル格納メモリ１４１、パケットＳＷ機構１６１、ポート監視部１７１を接続する手段（バス）である。また、通信ポート群１２１は、上記したポートＰ１〜８からなるポート群であり、かかるポートＰ１〜８を介して他のスイッチやユーザ端末装置にパケットを転送する。
【０１４７】
設定制御部１３１は、スイッチ１０１全体を制御する制御手段であり、ＣＰＵ１３１ａと、メモリ１３１ｂと、通信Ｉ／Ｆ１３１ｃとを備える。このうち、ＣＰＵ１３１ａは、プログラムによる各種の処理を実行する手段であり、特に、本発明に密接に関連する処理としては、リンクトレース結果データを生成する。
【０１４８】
ＣＰＵ１３１ａは、パケットＳＷ機構１６１からＬＴＲを取得した場合に、取得したＬＴＲのＭＡＣアドレス（送信元ＭＡＣアドレス）と、トランク番号と、ポート番号とを対応付けて受信ＬＴＲテーブルとしてメモリ１３１ｂに記憶し、メモリ１３１ｂに記憶した内容を基にしてリンクトレース結果データを生成する。
【０１４９】
図１１は、本実施例２にかかる受信ＬＴＲテーブルのデータ構造の一例を示す図である。同図に示すように、この受信ＬＴＲテーブルは、ＴＴＬと、送信元ＭＡＣアドレスと、トランク番号と、ポート番号とを有する。同一トランク番号の数が接続リンク数となる。たとえば、受信ＬＴＲテーブルにトランク番号４０のデータが２つ存在すれば、トランク番号４０に対応する接続リンク数は２となる。
【０１５０】
図１２は、本実施例２にかかるリンクトレース結果データの一例を示す図である。同図に示すように、リンクトレース結果データは、ＴＴＬの大きい順に各ＭＡＣアドレスが並べられ（経路順に並べられ）、各ＭＡＣアドレスと対応付けて、接続リンク数と、トランク番号と、ポート番号が登録されている。
【０１５１】
すなわち、図１２を参照することによって、スイッチ１０１とスイッチ１０２とを接続するトランク４０のうち、スイッチ２０１のポートＰ４，Ｐ６に接続された物理リンクが正常に動作しており、スイッチ２０１とスイッチ３０１とを接続するトランク５０のうち、スイッチ３０１のポートＰ７，Ｐ９，Ｐ１１に接続された物理リンクが正常に動作していることがわかる。予め、各スイッチ１０１〜５０１を接続するトランクの番号、トランクを構成するポート番号を管理しておけば、ＣＰＵ１３１ａが生成したリンクトレース結果データと比較することによって、故障した物理リンクを有するとトランクを容易に検出することもできる。
【０１５２】
図１０の説明に戻ると、メモリ１３１ｂは、ＣＰＵ１３１ａに実行されるプログラムとプログラムが使用するデータとを記憶する。特に、本実施例２にかかるメモリ１３１ｂは、図１１に示した受信ＬＴＲテーブル、図１２に示したリンクトレース結果データ等を記憶する。
【０１５３】
通信Ｉ／Ｆ１３１ｃは、管理者が使用する保守端末装置１０から送信されるコマンドを受信し、ＣＰＵ１３１ａに通知すると共に、コマンドに対する実行結果（例えば、リンクトレース結果データ）を保守端末装置１０に応答する手段である。
【０１５４】
テーブル格納メモリ１４１は、ポート管理テーブルおよびリンク集約管理テーブルを記憶する記憶手段である。ここで、ポート管理テーブルは、リンク集約をなすポートの情報等を管理するテーブルである。本実施例２にかかるポート管理テーブルのデータ構造は、図３４において説明したポート管理テーブルと同様であるため説明を省略する。また、本実施例２にかかるリンク集約管理テーブルのデータ構造も、図４において説明したリンク集約管理テーブルと同様であるため説明を省略する。
【０１５５】
学習テーブル１５１は、過去に受信したパケットの送信元アドレスと、そのパケットが到来したポートまたはトランクの識別情報とを対応付けて記憶するテーブルである。なお、本実施例２にかかる学習テーブル１５１のデータ構造は、図３６において説明した学習テーブル１５と同様であるため説明を省略する。
【０１５６】
パケットＳＷ機構１６１は、通信ポート群１２１やバス１１１からパケットを受け取ると、パケットの種別や学習テーブル１５１の参照結果に応じてパケットの転送先を決定し、通信ポート群１２１やバス１１１にパケットを送信する手段である。
【０１５７】
また、パケットＳＷ機構１６１は、ＬＴＭを宛先に転送する場合に、転送するポートがトランクを構成している場合に、トランクを構成する全てのポートにＬＴＭを出力する。また、パケットＳＷ機構１６１は、トランクを構成するポートからＬＴＭを取得し、ＬＴＲを送信元に応答する場合には、テーブル格納メモリ１４１に記憶された各テーブルを参照して、ＬＴＲのトランク番号とポート番号に、ＬＴＭを取得したポートに対応するトランク番号とポート番号を登録する。
【０１５８】
ポート監視部１７１は、通信ポート群１２１を監視し、通信ポートＰ１〜８や通信ポートＰ１〜８に接続された物理リンクの故障・復旧などを検出する手段である。ポート監視部１７１は、物理リンクの故障・復旧などを検出した場合には、検出結果を設定制御部１３１に出力する。
【０１５９】
ポート監視部１７１は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３１に出力し、設定制御部１３１からの指示を受けてポート管理テーブルを更新する。例えば、故障が発生したポートと同一のトランク内の正常なポートのフラディング対象フラグを１に書き換える。
【０１６０】
また、ポート監視部１７１は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３１に出力し、設定制御部１３１からの指示を受けて、リンク集約管理テーブルを更新する。すなわち、ポート監視部１７１は、トランク内の正常のポートの数を減算し、トランクを構成する各ポート番号から故障したポートを取り除き、左詰めに設定し直す。また、故障したポートが復旧した場合には、トランク内の正常なポートの数を加算し、トランクを構成するポート情報に、復旧したポートを加えて左詰めに設定し直す。
【０１６１】
続いて、本実施例２にかかるＬＴＲのデータ構造について説明する。図１３は、本実施例２にかかるＬＴＲのデータ構造の一例を示す図である。同図に示すように、このＬＴＲ（リンクトレース応答パケット）は、宛先ＭＡＣアドレスと、送信元ＭＡＣアドレスと、EtherType値と、OpeCodeと、ＴＴＬと、トランク番号と、ポート番号と、ＦＣＳとを備える。
【０１６２】
トランク番号には、トランクからＬＴＭを取得してＬＴＲにて応答する場合に、ＬＴＭを取得したトランク番号を登録する。また、ポート番号には、トランクからＬＴＭを取得してＬＴＲにて応答する場合に、ＬＴＭを取得したポート番号を登録する。
【０１６３】
なお、本実施例２にかかるＬＴＭのデータ構造および通常のパケットのデータ構造は、図３７〜図４１と同様であるため説明を省略する。
【０１６４】
次に、本実施例２にかかるパケットＳＷ機構１６１の処理手順について説明する。なお、パケットＳＷ機構１６１の処理手順は、図５〜図８（図８のステップＳ９１４の応答パケット生成処理２を除く）と同様であるため、ここでは、本実施例２にかかる応答パケット生成処理２について説明する。
【０１６５】
図１４は、本実施例２にかかる応答パケット生成処理２の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６１は、宛先ＭＡＣアドレスに、ＬＴＭのOriginal  MACアドレスを設定し（ステップＳ１００１）、送信元ＭＡＣアドレスにＬＴＲを応答するスイッチのＭＡＣアドレスを設定する（ステップＳ１００２）。
【０１６６】
そして、EtherType値に予め定められた値である「0x9B10」を設定し（ステップＳ１００３）、OpeCodeに「４」を設定し（ステップＳ１００４）、ＴＴＬに受信したＬＴＭのＴＴＬを１減算して設定する（ステップＳ１００５）。
【０１６７】
その後、パケットＳＷ機構１６１は、トランク番号にＬＴＲを送信するトランク番号を設定し（ステップＳ１００６）、ポート番号にＬＴＲを送信するトランク内のポート番号を設定する（ステップＳ１００７）。
【０１６８】
上述してきたように、本実施例２にかかるネットワークシステムは、各スイッチ１０１〜５０１が、ＬＴＭを受信し、転送先のリンクがリンク集約を構成している場合には、リンク集約を構成する全ての物理リンクにＬＴＭを転送する。そして、ＬＴＭを受信したスイッチは、ＬＴＭを受信した各物理リンクにＬＴＲを出力する場合に、ＬＴＭにトランク番号およびポート番号を含ませるので、ＬＴＭ送信元のスイッチは、各スイッチ１０１〜５０１が使用しているトランク番号、正常なリンク数、正常なポートのポート番号を含んだリンクトレース結果データを生成することができる。
【０１６９】
なお、本実施例２にかかる設定制御部１３１は、リンクトレース結果データを図１２に示すように生成していたが、これに限定されるものではなく、正常なポート番号とＬＴＭの応答が戻ってこない無反応ポートとを区別して表示してもよい。
【０１７０】
図１５は、その他のリンクトレース結果データの一例を示す図である。同図に示すように、このリンクトレース結果データは、ＴＴＬの大きい順に各ＭＡＣアドレスが並べられ（経路順に並べられ）、各ＭＡＣアドレスと対応付けて、トランク番号、構成リンク数、正常ポート番号、無応答ポート番号が登録されている。
【０１７１】
また、図１５に示すリンクトレース結果データを生成する場合には、メモリ１３１ｂにトランク構成データベースを保持させる。図１６は、トランク構成データベースのデータ構造の一例を示す図である。同図に示すように、このトランク構成データベースは、各スイッチのＭＡＣアドレスを示すスイッチＭＡＣアドレスと、トランク番号と、トランクに含まれるポート数を示すトランク内構成ポート数と、１番目ポート番号〜ｎ番目ポート番号とを有する。
【０１７２】
ＣＰＵ１３１ａは、メモリ１３１ｂに記憶された受信ＬＴＲテーブル（図１１参照）と、トランク構成データベースとを比較することによって、図１５に示したリンクトレース結果データを生成することができる。トランク構成データベースのトランクのポートのうち、図１１の受信ＬＴＲテーブルに含まれていないポートは、無反応ポートとなる。
【０１７３】
図１５に示すように、送信元のスイッチ（図１５ではスイッチ１０１）から宛先のスイッチ（図１５ではスイッチ５０１）へ至る通信経路上に存在するスイッチと、そのスイッチが使用しているトランク番号、トランクを構成するリンク数、トランクを構成するポート番号、ＬＴＲの受信結果による正常なポート番号、応答が返らないポート番号を並べて表示することにより、管理者はどのポートが正常であり、どのポートが正常でないかを容易に知ることができる。
【実施例３】
【０１７４】
次に、本実施例３にかかるネットワークシステムの構成について説明する。図１７は、本実施例３にかかるネットワークシステムの構成を示す図である。同図に示すように、このネットワークシステムは、データ転送を行うスイッチ１０２〜５０２、ユーザ端末装置２１〜２６、スイッチ１０２の保守管理を行う保守端末装置１０を備えて構成される。
【０１７５】
図１７に示す各スイッチ１０２〜５０２は、ユーザ端末装置や他のスイッチと接続するためのポートを備え、各ポートが１つの物理リンクに対応する。ポートは、ＰＮ（Ｎは自然数）などの番号により識別する。
【０１７６】
スイッチ１０２は、ポートＰ１〜８を有し、ポートＰ１はユーザ端末装置２１に接続され、ポートＰ２はユーザ端末装置２２に接続され、ポートＰ７，Ｐ８は、スイッチ２０２のポートＰ４，Ｐ６に接続されている。また、スイッチ１０２は、保守端末装置１０と接続されている。
【０１７７】
スイッチ２０２は、ポートＰ１〜１２を有し、ポートＰ１はユーザ端末装置２３に接続され、ポートＰ４，Ｐ６は、スイッチ１０２のポートＰ７，Ｐ８に接続され、ポートＰ１０〜１２は、スイッチ３０２のポートＰ７，Ｐ９，Ｐ１１に接続されている。
【０１７８】
スイッチ３０２は、ポートＰ１〜１２を有し、ポートＰ２，Ｐ４はスイッチ４０２のＰ５，Ｐ６に接続され、ポートＰ７，Ｐ９，Ｐ１１はスイッチ２０２のポートＰ１０〜１２に接続され、ポートＰ１２はスイッチ５０２のポートＰ５に接続されている。
【０１７９】
スイッチ４０２は、ポートＰ１〜６を有し、ポートＰ１はユーザ端末装置２４に接続され、ポートＰ２はユーザ端末装置２５に接続され、ポートＰ５，Ｐ６は、スイッチ３０２のポートＰ２，Ｐ４に接続されている。
【０１８０】
スイッチ５０２は、ポートＰ１〜５を有し、ポートＰ２はユーザ端末装置２６に接続され、ポートＰ５はスイッチ３０２のポートＰ１２に接続されている。
【０１８１】
また、図１７に示す各スイッチ１０２〜５０２および各ポートは、それぞれ固有のＭＡＣアドレスを持っているものとする。スイッチ１０２〜５０２と同様にして、ユーザ端末２１〜２６も固有のＭＡＣアドレスを保持しているものとする。
【０１８２】
ここで、本実施例３の特徴について説明する。上述した実施例１，２では、ＬＴＭ、ＬＴＲのＭＡＣアドレスとして、スイッチごとに１つのＭＡＣアドレスを使用している。これに対して、本実施例３では、ＬＴＭ、ＬＴＲのＭＡＣアドレスとして、スイッチ内のポート単位のアドレスを使用する。
【０１８３】
このように、ポート単位のＭＡＣアドレスを使用することよって、ＬＴＲのデータ構造（図４１参照）を変更することなく、ＭＡＣアドレスによって、通信経路上に存在するスイッチのポート位置を特定することができる。
【０１８４】
次に、図１７に示したスイッチ１０２の構成について説明する。なお、スイッチ２０２〜５０２は、スイッチ１０２と比較してポート数が異なるものの同様の構成で実現可能であるため、説明を省略する。図１８は、本実施例３にかかるスイッチ１０２の構成を示す機能ブロック図である。同図に示すように、このスイッチ１０２は、バス１１２と、通信ポート群１２２と、設定制御部１３２と、テーブル格納メモリ１４２と、学習テーブル１５２と、パケットＳＷ機構１６２と、ポート監視部１７２とを備えて構成される。
【０１８５】
バス１１２は、設定制御部１３２、テーブル格納メモリ１４２、パケットＳＷ機構１６２、ポート監視部１７２を接続する手段（バス）である。また、通信ポート群１２２は、上記したポートＰ１〜８からなるポート群であり、かかるポートＰ１〜８を介して他のスイッチやユーザ端末装置にパケットを転送する。
【０１８６】
設定制御部１３２は、スイッチ１０２全体を制御する制御手段であり、ＣＰＵ１３２ａと、メモリ１３２ｂと、通信Ｉ／Ｆ１３２ｃとを備える。このうち、ＣＰＵ１３２ａは、プログラムによる各種の処理を実行する手段であり、特に、本発明に密接に関連する処理としては、リンクトレース結果データを生成する。
【０１８７】
具体的に、ＣＰＵ１３２ａは、パケットＳＷ機構１６２からＬＴＲを取得した場合に、取得したＬＴＲのポートＭＡＣアドレスと、メモリ１３２ｂに記憶されたポートＭＡＣアドレス管理テーブルとを比較してリンクトレース結果データを生成する。
【０１８８】
図１９は、ポートＭＡＣアドレス管理テーブルのデータ構造の一例を示す図である。同図に示すように、このポートＭＡＣアドレス管理テーブルは、ポートＭＡＣアドレスと、トランク番号と、ポート番号と、スイッチＭＡＣアドレスとを対応付けて記憶している。例えば、ＣＰＵ１３２ａがＬＴＲを取得して、ポートＭＡＣアドレス「00-00-00-01-0B」を含んでいる場合には、取得したＬＴＲは、スイッチＭＡＣアドレス「00-00-00-00-0B」のスイッチ２０２の、トランク番号「４０」、ポート番号「４」のポートから応答されたＬＴＲとなる。
【０１８９】
図２０は、本実施例３にかかるリンクトレース結果データの一例を示す図である。同図に示すように、このリンクトレース結果データは、ＴＴＬの大きい順に各ポートＭＡＣアドレスが並べられ、各ポートＭＡＣアドレスと対応付けて、スイッチＭＡＣアドレス、トランク番号が登録されている。
【０１９０】
図１８の説明に戻ると、メモリ１３２ｂは、ＣＰＵ１３２ａに実行されるプログラムとプログラムが使用するデータとを記憶する。特に、本実施例３にかかるメモリ１３２ｂは、図１９に示したポートＭＡＣアドレス管理テーブル、図２０に示したリンクトレース結果データ等を記憶する。
【０１９１】
通信Ｉ／Ｆ１３２ｃは、管理者が使用する保守端末装置１０から送信されるコマンドを受信し、ＣＰＵ１３２ａに通知すると共に、コマンドに対する実行結果（例えば、リンクトレース結果データ）を保守端末装置１０に応答する手段である。
【０１９２】
テーブル格納メモリ１４２は、ポート管理テーブルおよびリンク集約管理テーブルを記憶する記憶手段である。ここで、ポート管理テーブルは、リンク集約をなすポートの情報等を管理するテーブルである。本実施例３にかかるポート管理テーブルのデータ構造は、図３４において説明したポート管理テーブルと同様であるため説明を省略する。また、本実施例３にかかるリンク集約管理テーブルのデータ構造も、図４において説明したリンク集約管理テーブルと同様であるため説明を省略する。
【０１９３】
学習テーブル１５２は、過去に受信したパケットの送信元アドレスと、そのパケットが到来したポートまたはトランクの識別情報とを対応付けて記憶するテーブルである。なお、本実施例３にかかる学習テーブル１５２のデータ構造は、図３６において説明した学習テーブル１５と同様であるため説明を省略する。
【０１９４】
パケットＳＷ機構１６２は、通信ポート群１２２やバス１１２からパケットを受け取ると、パケットの種別や学習テーブル１５２の参照結果に応じてパケットの転送先を決定し、通信ポート群１２２やバス１１２にパケットを送信する手段である。また、パケットＳＷ機構１６２は、ＬＴＭ、ＬＴＲを宛先に転送する場合に、ＬＴＭ、ＬＴＲのＭＡＣアドレスとして、スイッチ内のポート単位のＭＡＣアドレス（あるいはトランクのＭＡＣアドレス）を使用する。
【０１９５】
ポート監視部１７２は、通信ポート群１２２を監視し、通信ポートＰ１〜８や通信ポートＰ１〜８に接続された物理リンクの故障・復旧などを検出する手段である。ポート監視部１７２は、物理リンクの故障・復旧などを検出した場合には、検出結果を設定制御部１３２に出力する。
【０１９６】
ポート監視部１７２は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３２に出力し、設定制御部１３２からの指示を受けてポート管理テーブルを更新する。例えば、故障が発生したポートと同一のトランク内の正常なポートのフラディング対象フラグを１に書き換える。
【０１９７】
また、ポート監視部１７２は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３２に出力し、設定制御部１３２からの指示を受けて、リンク集約管理テーブルを更新する。すなわち、ポート監視部１７２は、トランク内の正常のポートの数を減算し、トランクを構成する各ポート番号から故障したポートを取り除き、左詰めに設定し直す。また、故障したポートが復旧した場合には、トランク内の正常なポートの数を加算し、トランクを構成するポート情報に、復旧したポートを加えて左詰めに設定し直す。
【０１９８】
次に、本実施例３にかかるパケットＳＷ１６２の処理手順について説明する。なお、本実施例３にかかるパケットＳＷ機構１６２の処理手順は、図５（図５のステップＳ７１２のリンクトレース処理を除く）と同様であるため、ここでは、本実施例３にかかるリンクトレース処理について説明する。
【０１９９】
図２１、図２２は、本実施例３にかかるリンクトレース処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６２は、パケットの種別はＬＴＭか否かを判定し（ステップＳ１１０１）、パケットの種別がＬＴＲである場合には（ステップＳ１１０２，Ｎｏ）、宛先ＭＡＣアドレスは自装置のどれかのポートまたはトランクのＭＡＣアドレスと一致するか否かを判定する（ステップＳ１１０３）。
【０２００】
自装置のどれかのポートまたはトランクのＭＡＣアドレスと一致しない場合には（ステップＳ１１０４，Ｎｏ）、通常パケット出力処理を実行する（ステップ１１０５）。一方、自装置のどれかのポートまたはトランクのＭＡＣアドレスと一致する場合には（ステップＳ１１０４，Ｙｅｓ）、設定制御部１３２にＬＴＲを出力する（ステップＳ１１０６）。
【０２０１】
ところで、パケットの種別がＬＴＭである場合には（ステップＳ１１０２，Ｙｅｓ）、Target  MACアドレスは自装置のどれかのポートまたはトランクのＭＡＣアドレスと一致するか否かを判定し（ステップＳ１１０７）、一致する場合には（ステップＳ１１０８，Ｙｅｓ）、応答パケット生成処理１を実行し（ステップＳ１１０９）、パケットを受信したポートに応答パケットを出力する（ステップＳ１１１０）。
【０２０２】
一方、Target  MACアドレスが自装置のどれかのポートまたはトランクのＭＡＣアドレスと一致しない場合には（ステップＳ１１０８，Ｎｏ）、Target  MACアドレスを学習しているか否かを判定し（ステップＳ１１１１）、学習していない場合には（ステップＳ１１１２，Ｎｏ）、装置内の各ポートＰ１〜８へパケットを出力し（受信ポートは除く）、出力先のポートがトランクを構成している場合には、トランクを構成するポートから出力ポートを１つ選択してパケットを出力する（ステップＳ１１１３）。
【０２０３】
一方、Target  MACアドレスを学習済みの場合には（ステップＳ１１１２，Ｙｅｓ）、応答パケット生成処理２を実行し（ステップＳ１１１４）、パケットを受信したポートに応答パケットを出力し（ステップＳ１１１５）、要求パケットを受信した位置はトランクか否かを判定する（ステップＳ１１１６）。
【０２０４】
トランクでない場合には（ステップＳ１１１７，Ｎｏ）、ステップＳ１１２１に移行する（ステップＳ１１２１は後述する）。一方、受信した位置がトランクである場合には（ステップＳ１１１７，Ｙｅｓ）、受信トランクに対応するＬＴＭ転送済みフラグが「０」か否かを判定する（ステップＳ１１１８）。
【０２０５】
フラグが「１」の場合には（ステップＳ１１１９，Ｎｏ）、そのままリンクトレース処理を終了する。一方、フラグが「０」の場合には（ステップＳ１１１９，Ｙｅｓ）、ＬＴＭ転送済みフラグを「１」に設定し（ステップＳ１１２０）、転送パケット生成処理を実行し（ステップＳ１１２１）、パケット出力処理を実行する（ステップＳ１１２２）。
【０２０６】
ここで、図２１のステップＳ１１０９に示した応答パケット生成処理１は、図４６に示した応答パケット生成処理１と同様であるため説明を省略する。また、図２１のステップＳ１１０５に示した通常パケット出力処理は、図４３において説明した通常パケット出力処理と同様であるため説明を省略する。また、図２２のステップＳ１１２２に示したパケット出力処理は、図６に示したパケット出力処理と同様であるため説明を省略する。
【０２０７】
次に、図２２のステップＳ１１１４に示した応答パケット処理２について説明する。図２３は、本実施例３にかかる応答パケット生成処理２の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６２は、宛先ＭＡＣアドレスにＬＴＭのOriginal  MACアドレスを設定し（ステップＳ１２０１）、送信元ＭＡＣアドレスにＬＴＲを応答するスイッチのポートのＭＡＣアドレスを設定する（ステップＳ１２０２）。
【０２０８】
そして、パケットＳＷ機構１６２は、EtherType値に予め定められた値である「0x9B10」を設定し（ステップＳ１２０３）、OpeCodeに「４」を設定し（ステップＳ１２０４）、ＴＴＬに受信したＬＴＭのＴＴＬを１減算して設定する（ステップＳ１２０５）。
【０２０９】
次に、図２２のステップＳ１１２１に示した転送パケット生成処理について説明する。図２４は、本実施例３にかかる転送パケット生成処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６２は、宛先ＭＡＣアドレスに、受信したＬＴＭと同じ値を設定し（ステップＳ１３０１）、送信元ＭＡＣアドレスに、ＬＴＭ受信ポートのＭＡＣアドレスを設定する（ステップＳ１３０２）。
【０２１０】
そして、パケットＳＷ機構１６２は、EtherType値に予め決められた値である「0x9B10」を設定し（ステップＳ１３０３）、OpeCodeに「５」を設定し（ステップＳ１３０４）、ＴＴＬに受信したＬＴＭのＴＴＬを１減算して設定する（ステップＳ１３０５）。
【０２１１】
また、パケットＳＷ機構１６２は、Original  MACアドレスに、受信したＬＴＭと同じ値を設定し（ステップＳ１３０６）、Target  MACアドレスに、受信したＬＴＭと同じ値を設定する（ステップＳ１３０７）。
【０２１２】
上述してきたように、本実施例３にかかるネットワークシステムは、各スイッチ１０２〜５０２が、リンクトレース処理を実行する場合に、ＬＴＭ、ＬＴＲのＭＡＣアドレスとして、スイッチ内のポート単位のアドレスを使用するので、ＬＴＲのデータ構造（図４１参照）を変更することなく、ＭＡＣアドレス（ポートのＭＡＣアドレス）によって、通信経路上に存在するスイッチのポート位置を特定することができる。
【実施例４】
【０２１３】
次に、本実施例４にかかるネットワークシステムの構成について説明する。図２５は、本実施例４にかかるネットワークシステムの構成を示す図である。同図に示すように、このネットワークシステムは、データ転送を行うパケット転送装置１０３〜３０３、ユーザ端末装置１〜４、パケット転送装置１０３の保守管理を行う保守端末装置５を備えて構成される。
【０２１４】
パケット転送装置１０３〜３０３は、上記した実施例１〜３のレイヤ２スイッチとは異なり、学習機能をもたないパケット転送装置である。パケット転送装置１０３〜３０３は、受信したポートの位置によって、送信すべきポートが決まるようなポイントツーポイントのパケット転送機能を有する。
【０２１５】
また、パケット転送装置１０３は、通常の物理リンクのほかに、トランク７０によってパケット転送装置２０３と接続され、パケット転送装置２０３は、通常の物理リンクのほかに、トランク８０によってパケット転送装置３０３と接続されている。
【０２１６】
ここで、本実施例４の特徴について説明する。本実施例４にかかる各パケット転送装置は、経路検索を実行する状況下において、トランクを構成する複数の物理リンク全てに対してＬＴＭを出力し、ＬＴＲを各物理リンクから取得し、取得した各ＬＴＲを基にして、トランクを構成する複数の物理リンクのうち、正常な物理リンクの数を検出する。
【０２１７】
このように、本実施例４にかかるネットワークシステムでは、トランクを構成する全てのポートに対してＬＴＭを出力し、出力したＬＴＭの応答となるＬＴＲを各物理リンクから取得することによって、トランクを構成する各物理リンクの状態を管理者は容易に知ることができ、各トランクを効率よく管理することができる。
【０２１８】
次に、図２５に示したパケット転送装置１０３の構成について説明する。なお、パケット転送装置２０３，３０３の構成は、パケット転送装置１０３と同様であるため説明を省略する。図２６は、本実施例４にかかるパケット転送装置１０３の構成を示す機能ブロック図である。
【０２１９】
同図に示すように、このパケット転送装置１０３は、バス１１３と、通信ポート群１２３と、設定制御部１３３と、テーブル格納メモリ１４３と、パケットＳＷ機構１６３と、ポート監視部１７３とを備えて構成される。
【０２２０】
バス１１３は、設定制御部１３３、テーブル格納メモリ１４３、パケットＳＷ機構１６３、ポート監視部１７３を接続する手段（バス）である。また、通信ポート群１２３は、上記したポートＰ１〜８からなるポート群であり、かかるポートＰ１〜８を介して他のスイッチやユーザ端末装置にパケットを転送する。
【０２２１】
設定制御部１３３は、パケット転送装置１０３全体を制御する制御手段であり、ＣＰＵ１３３ａと、メモリ１３３ｂと、通信Ｉ／Ｆ１３３ｃとを備える。ＣＰＵ１３３ａは、プログラムによる各種の処理を実行する手段であり、特に、本発明に密接に関連する処理としては、リンクトレース結果データを生成する。
【０２２２】
ＣＰＵ１３３ａは、パケットＳＷ機構１６３からＬＴＲを取得した場合に、取得したＬＴＲのＭＡＣアドレス（送信元ＭＡＣアドレス）と、同一ＭＡＣアドレス（送信元ＭＡＣアドレス）のＬＴＲを取得した回数を対応付けてメモリ１３３ｂに記憶し、メモリ１３３ｂに記憶した内容を基にしてリンクトレース結果データを生成する。例えば、リンクトレース結果データは、図３に示したリンクトレース結果データと同様となる。
【０２２３】
メモリ１３３ｂは、ＣＰＵ１３３ａに実行されるプログラムとプログラムが使用するデータとを記憶する。特に、本実施例４にかかるメモリ１３３ｂは、図３に示したリンクトレース結果データ等を記憶する。通信Ｉ／Ｆ１３３ｃは、管理者が使用する保守端末装置５から送信されるコマンドを受信し、ＣＰＵ１３３ａに通知すると共に、コマンドに対する実行結果（例えば、リンクトレース結果データ）を保守端末装置５に応答する手段である。
【０２２４】
テーブル格納メモリ１４３は、ポート管理テーブルおよびリンク集約管理テーブルを記憶する記憶手段である。ここで、ポート管理テーブルは、リンク集約をなすポートの情報等を管理するテーブルである。本実施例４にかかるポート管理テーブルのデータ構造は、図３４において説明したポート管理テーブルと同様であるため説明を省略する。また、リンク集約管理テーブルは、リンク集約を構成するトランクを管理するためのテーブルである。本実施例４にかかるリンク集約管理テーブルは、図４に示したリンク集約管理テーブルと同様であるため説明を省略する。
【０２２５】
パケットＳＷ機構１６３は、通信ポート群１２３やバス１１３からパケットを受け取ると、予め決められたポートにパケットを送信する手段である。特に、本実施例４にかかるパケットＳＷ機構１６３は、ＬＴＭを宛先に転送する場合に、転送するポートがトランクを構成していれば、トランクを構成する全てのポートにＬＴＭを出力する。また、パケットＳＷ機構１６３は、図４に示したリンク集約管理テーブルを管理し、条件に応じてＬＴＭ転送済みフラグを更新する。
【０２２６】
ポート監視部１７３は、通信ポート群１２３を監視し、通信ポートＰ１〜８や通信ポートＰ１〜８に接続された物理リンクの故障・復旧などを検出する手段である。ポート監視部１７３は、物理リンクの故障・復旧などを検出した場合には、検出結果を設定制御部１３３に出力する。
【０２２７】
ポート監視部１７３は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３３に出力し、設定制御部１３３からの指示を受けてポート管理テーブルを更新する。例えば、故障が発生したポートと同一のトランク内の正常なポートのフラディング対象フラグを１に書き換える。
【０２２８】
また、ポート監視部１７３は、リンク集約のポートで故障が発生した場合には、故障の発生したポートの情報を設定制御部１３３に出力し、設定制御部１３３からの指示を受けて、リンク集約管理テーブルを更新する。すなわち、ポート監視部１７３は、トランク内の正常のポートの数を減算し、トランクを構成する各ポート番号から故障したポートを取り除き、左詰めに設定し直す。また、故障したポートが復旧した場合には、トランク内の正常なポートの数を加算し、トランクを構成するポート情報に、復旧したポートを加えて左詰めに設定し直す。
【０２２９】
続いて、本実施例１にかかるパケットＳＷ機構１６３の処理手順について説明する。なお、ここでは説明を省略するが、パケット転送装置２０３，３０３に搭載されるパケット機構もパケットＳＷ機構１６３と同様の処理手順となる。図２７は、本実施例４にかかるパケットＳＷ機構１６３の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６３は、パケットを取得し（ステップＳ１４０１）、パケットの入力元は通常ポート群か否かを判定する（ステップＳ１４０２）。
【０２３０】
パケットの入力元が通常ポート群でない場合には（ステップＳ１４０３，Ｎｏ）、パケット出力処理を実行する（ステップＳ１４０４）。一方、パケットの入力元が通常ポート群である場合には（ステップＳ１４０３，Ｙｅｓ）、パケットの種別は通常パケットか否かを判定し（ステップＳ１４０５）、通常のパケットである場合には（ステップＳ１４０６，Ｙｅｓ）、通常パケット出力処理を実行する（ステップＳ１４０７）。一方、通常のパケットではない場合には（ステップＳ１４０６，Ｎｏ）、リンクトレース処理を実行する（ステップＳ１４０８）。
【０２３１】
次に、図２７のステップＳ１４０４に示したパケット出力処理について説明する。図２８は、本実施例４にかかるパケット出力処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６３は、出力ポートはトランクか否かを判定し（ステップＳ１５０１）、トランクでない場合には（ステップＳ１５０２，Ｎｏ）、予め設定されたポートを出力ポートに指定し（ステップＳ１５０３）、指定されたポートにパケットを出力する（ステップＳ１５０４）。
【０２３２】
一方、出力ポートがトランクである場合には（ステップＳ１５０２，Ｙｅｓ）、トランクを構成するポートを調べ（ステップＳ１５０５）、トランクを構成する全てのポートにパケットを出力する（ステップＳ１５０６）。
【０２３３】
次に、図２７のステップＳ１４０７に示した通常パケット出力処理について説明する。図２９は、本実施例４にかかる通常パケット出力処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６３は、出力ポートはトランクか否かを判定する（ステップＳ１６０１）。
【０２３４】
そして、出力ポートがトランクである場合には（ステップＳ１６０２，Ｙｅｓ）、トランクを構成する出力ポートを１つ選択し（ステップＳ１６０３）、指定されたポートにパケットを出力する（ステップＳ１６０４）。一方、出力ポートがトランクでない場合には（ステップＳ１６０２，Ｎｏ）、予め設定されたポートを出力ポートに指定し（ステップＳ１６０５）、ステップＳ１６０４に移行する。
【０２３５】
次に、図２７のステップＳ１４０８に示したリンクトレース処理について説明する。図３０、図３１は、本実施例４にかかるリンクトレース処理の処理手順を示すフローチャートである。同図に示すように、パケットＳＷ機構１６３は、パケットの種別は、ＬＴＭか否かを判定し（ステップＳ１７０１）、パケットの種別がＬＴＲである場合には（ステップＳ１７０２，Ｎｏ）、宛先ＭＡＣアドレスは自装置のＭＡＣアドレスと一致するか否かを判定し（ステップＳ１７０３）、一致しない場合には（ステップＳ１７０４，Ｎｏ）、通常パケット出力処理を実行する（ステップＳ１７０５）。一方、宛先ＭＡＣアドレスは自装置のＭＡＣアドレスと一致する場合には（ステップＳ１７０４，Ｙｅｓ）、設定制御部１３３にＬＴＲを出力する（ステップＳ１７０６）。
【０２３６】
ところで、パケットの種別がＬＴＭである場合には（ステップＳ１７０２，Ｙｅｓ）、Target  MACアドレスは自装置のＭＡＣアドレスと一致するか否かを判定し（ステップＳ１７０７）、一致する場合には（ステップＳ１７０８，Ｙｅｓ）、応答パケット生成処理１を実行し（ステップＳ１７０９）、パケットを受信したポートに応答パケットを出力する（ステップＳ１７１０）。
【０２３７】
一方、Target  MACアドレスは自装置のＭＡＣアドレスと一致しない場合には（ステップＳ１７０８，Ｎｏ）、応答パケット生成処理２を実行し（ステップＳ１７１１）、パケットを受信したポートに応答パケットを出力し（ステップＳ１７１２）、要求パケットを受信した位置はトランクか否かを判定する（ステップＳ１７１３）。
【０２３８】
要求パケットを受信した位置がトランクでない場合には（ステップＳ１７１４，Ｎｏ）、ステップＳ１７１８に移行する。一方、要求パケットを受信した位置がトランクの場合には（ステップＳ１７１４，Ｙｅｓ）、受信トランクに対応するＬＴＭ転送済みフラグが０か否かを判定する（ステップＳ１７１５）。
【０２３９】
受信トランクに対応するＬＴＭ転送済みフラグが１の場合には（ステップＳ１７１６，Ｎｏ）、そのままリンクトレース処理を終了する。一方、受信トランクに対応するＬＴＭ転送済みフラグが０の場合には（ステップＳ１７１６，Ｙｅｓ）、転送済みフラグを設定し（ステップＳ１７１７）、転送パケット生成処理を実行し（ステップＳ１７１８）、パケット出力処理を実行する（ステップＳ１７１９）。
【０２４０】
図３０のステップＳ１７０５に示した通常パケット出力処理は、図２９に示した通常パケット出力処理と同様であるため説明を省略する。図３０のステップＳ１７０９に示した応答パケット生成処理１は、図４６に示した応答パケット生成処理１と同様であるため説明を省略する。
【０２４１】
また、図３１のステップＳ１７１１に示した応答パケット生成処理２は、図４７に示した応答パケット生成処理２と同様であるため説明を省略する。図３１のステップＳ１７１８に示した転送パケット生成処理は、図４８に示した転送パケット生成処理と同様であるため説明を省略する。図３１のステップＳ１７１９に示したパケット出力処理は、図２８に示したパケット出力処理と同様であるため説明を省略する。
【０２４２】
上述してきたように、本実施例４にかかるネットワークシステムは、各パケット転送装置１０３〜５０３が、ＬＴＭを受信し、転送先のリンクがリンク集約を構成している場合には、リンク集約を構成する全ての物理リンクにＬＴＭを転送し、各物理リンクから応答されるＬＴＲを取得してリンクトレース結果データを生成するので、管理者がリンクトレース結果データを参照することによって正常にパケット転送を実行可能な物理リンクがいくつあるかを正確に知ることができる。
【０２４３】
ところで、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部あるいは一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０２４４】
また、各実施例に示したスイッチ、パケット転送装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部がＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【０２４５】
（付記１）複数の物理リンクによって仮想的な論理リンクとなるトランクを構成し、当該トランクを利用してパケット転送を実行するパケット転送装置であって、
パケットを取得した場合に、取得したパケットの種別が経路検索を行う検索パケットであるか否かを判定するパケット種別判定手段と、
前記パケット種別判定手段の判定結果に基づいて、前記トランクを構成する複数の物理リンクに前記検索パケットを出力する出力制御手段と、
を備えたことを特徴とするパケット転送装置。
【０２４６】
（付記２）前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットごとに当該検索パケットに応答する応答パケットを生成し、前記検索パケットの送信元に前記応答パケットを出力する応答手段を更に備えたことを特徴とする付記１に記載のパケット転送装置。
【０２４７】
（付記３）前記応答手段は、前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットのうち単一の検索パケットを当該検索パケットの宛先に転送することを特徴とする付記２に記載のパケット転送装置。
【０２４８】
（付記４）前記応答手段は、前記応答パケットに前記トランクおよび物理リンクを識別する情報を含ませて前記検索パケットの送信元に前記応答パケットを出力することを特徴とする付記２または３に記載のパケット転送装置。
【０２４９】
（付記５）前記トランクはＭＡＣアドレスによって識別されるポートを介して自パケット転送装置と接続され、前記検索パケットおよび前記応答パケットの送信元のアドレスおよび宛先のアドレスとして前記ポートのＭＡＣアドレスが用いられることを特徴とする付記１〜４のいずれか一つに記載のパケット転送装置。
【０２５０】
（付記６）前記トランクに含まれる物理リンクの情報を記憶する物理リンク情報記憶手段と、前記物理リンクの情報と前記応答パケットの返信結果とを比較して前記トランクに含まれる物理リンクの状態を判定する物理リンク判定手段とを更に備えたことを特徴とする付記２〜５のいずれか一つに記載のパケット転送装置。
【０２５１】
（付記７）複数の物理リンクによって仮想的な論理リンクとなるトランクを構成し、当該トランクを利用してパケット転送を実行するパケット転送装置のパケット転送方法であって、
パケットを取得した場合に、取得したパケットの種別が経路検索を行う検索パケットであるか否かを判定するパケット種別判定工程と、
前記パケット種別判定工程の判定結果に基づいて、前記トランクを構成する複数の物理リンクに前記検索パケットを出力する出力制御工程と、
を含んだことを特徴とするパケット転送方法。
【０２５２】
（付記８）前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットごとに当該検索パケットに応答する応答パケットを生成し、前記検索パケットの送信元に前記応答パケットを出力する応答工程を更に含んだことを特徴とする付記７に記載のパケット転送方法。
【０２５３】
（付記９）前記応答工程は、前記トランクから複数の検索パケットを取得した場合に、取得した複数の検索パケットのうち単一の検索パケットを当該検索パケットの宛先に転送することを特徴とする付記８に記載のパケット転送方法。
【０２５４】
（付記１０）前記応答工程は、前記応答パケットに前記トランクおよび物理リンクを識別する情報を含ませて前記検索パケットの送信元に前記応答パケットを出力することを特徴とする付記８または９に記載のパケット転送方法。
【０２５５】
（付記１１）前記トランクはＭＡＣアドレスによって識別されるポートを介して前記パケット転送装置と接続され、前記検索パケットおよび前記応答パケットの送信元のアドレスおよび宛先のアドレスとして前記ポートのＭＡＣアドレスが用いられることを特徴とする付記７〜１０のいずれか一つに記載のパケット転送方法。
【０２５６】
（付記１２）前記トランクに含まれる物理リンクの情報を記憶装置に記憶する物理リンク情報記憶工程と、前記物理リンクの情報と前記応答パケットの返信結果とを比較して前記トランクに含まれる物理リンクの状態を判定する物理リンク判定工程とを更に含んだことを特徴とする付記８〜１１のいずれか一つに記載のパケット転送方法。
【産業上の利用可能性】
【０２５７】
以上のように、本発明にかかるパケット転送装置は、複数の物理リンクを束ねたトランクを用いてパケット伝送が行われるネットワークシステム等に有用であり、特に、トランクを構成する各物理リンクの状態を管理する場合に適している。
【図面の簡単な説明】
【０２５８】
【図１】本実施例１にかかるネットワークシステムの構成を示す図である。
【図２】本実施例１にかかるスイッチの構成を示す機能ブロック図である。
【図３】本実施例１にかかるリンクトレース結果データの一例を示す図である。
【図４】リンク集約管理テーブルのデータ構造の一例を示す図である。
【図５】本実施例１にかかるパケットＳＷ機構の処理手順を示すフローチャートである。
【図６】本実施例１にかかるパケット出力処理の処理手順を示すフローチャートである。
【図７】本実施例１にかかるリンクトレース処理の処理手順を示すフローチャート（１）である。
【図８】本実施例１にかかるリンクトレース処理の処理手順を示すフローチャート（２）である。
【図９】本実施例２にかかるネットワークシステムの構成を示す図である。
【図１０】本実施例２にかかるスイッチの構成を示す機能ブロック図である。
【図１１】本実施例２にかかる受信ＬＴＲテーブルのデータ構造の一例を示す図である。
【図１２】本実施例２にかかるリンクトレース結果データの一例を示す図である。
【図１３】本実施例２にかかるＬＴＲのデータ構造の一例を示す図である。
【図１４】本実施例２にかかる応答パケット生成処理２の処理手順を示すフローチャートである。
【図１５】その他のリンクトレース結果データの一例を示す図である。
【図１６】トランク構成データベースのデータ構造の一例を示す図である。
【図１７】本実施例３にかかるネットワークシステムの構成を示す図である。
【図１８】本実施例３にかかるスイッチの構成を示す機能ブロック図である。
【図１９】ポートＭＡＣアドレス管理テーブルのデータ構造の一例を示す図である。
【図２０】本実施例３にかかるリンクトレース結果データの一例を示す図である。
【図２１】本実施例３にかかるリンクトレース処理の処理手順を示すフローチャート（１）である。
【図２２】本実施例３にかかるリンクトレース処理の処理手順を示すフローチャート（２）である。
【図２３】本実施例３にかかる応答パケット生成処理２の処理手順を示すフローチャートである。
【図２４】本実施例３にかかる転送パケット生成処理の処理手順を示すフローチャートである。
【図２５】本実施例４にかかるネットワークシステムの構成を示す図である。
【図２６】本実施例４にかかるパケット転送装置の構成を示す機能ブロック図である。
【図２７】本実施例４にかかるパケットＳＷ機構の処理手順を示すフローチャートである。
【図２８】本実施例４にかかるパケット出力処理の処理手順を示すフローチャートである。
【図２９】本実施例４にかかる通常パケット出力処理の処理手順を示すフローチャートである。
【図３０】本実施例４にかかるリンクトレース処理の処理手順を示すフローチャート（１）である。
【図３１】本実施例４にかかるリンクトレース処理の処理手順を示すフローチャート（２）である。
【図３２】従来のスイッチで構成されるネットワークシステムの構成を示す図である。
【図３３】図３２に示したスイッチの構成を示す機能ブロック図である。
【図３４】従来のポート管理テーブルのデータ構造の一例を示す図である。
【図３５】従来のリンク集約管理テーブルのデータ構造の一例を示す図である。
【図３６】従来の学習テーブルのデータ構造の一例を示す図である。
【図３７】パケットのデータ構造の一例を示す図である。
【図３８】パケットヘッダのデータ構造の一例を示す図である。
【図３９】パケットのペイロードに含まれるEtherType値およびOpeCodeを説明するための図である。
【図４０】リンクトレース要求パケットのデータ構造の一例を示す図である。
【図４１】リンクトレース応答パケットのデータ構造の一例を示す図である。
【図４２】従来のパケットＳＷ機構の処理手順を示すフローチャートである。
【図４３】通常パケット出力処理の処理手順を示すフローチャートである。
【図４４】リンクトレース処理の処理手順を示すフローチャート（１）である。
【図４５】リンクトレース処理の処理手順を示すフローチャート（２）である。
【図４６】応答パケット生成処理１の処理手順を示すフローチャートである。
【図４７】応答パケット生成処理２の処理手順を示すフローチャートである。
【図４８】転送パケット生成処理の処理手順を示すフローチャートである。
【図４９】従来のリンクトレース結果データの一例を示す図である。
【符号の説明】
【０２５９】
１，２，３，４，２１，２２，２３，２４，２５，２６    ユーザ端末装置
５，１０    保守端末装置
１０ａ，１０ｂ，１０ｃ，１０ｄ，１０ｅ、１００，１０１，１０２，２００，２０１，２０２，３００，３０１，３０２，４００，４０１，４０２，５００，５０１，５０２    スイッチ
４０，５０，６０，７０，８０    トランク
１１，１１０，１１１，１１２，１１３    バス
１２，１２０，１２１，１２２，１２３    通信ポート群
１３，１３０，１３１，１３２，１３３    設定制御部
１３ａ，１３０ａ，１３１ａ，１３２ａ，１３３ａ  ＣＰＵ
１３ｂ，１３０ｂ，１３１ｂ，１３２ｂ，１３３ｂ  メモリ
１３ｃ，１３０ｃ，１３１ｃ，１３２ｃ，１３３ｃ  通信Ｉ／Ｆ
１４，１４０，１４１，１４２，１４３    テーブル格納メモリ
１５，１５０，１５１，１５２    学習テーブル
１６，１６０，１６１，１６２，１６３    パケットＳＷ機構
１７，１７０，１７１，１７２，１７３    ポート監視部
１０３，２０３，３０３    パケット転送装置
【図１】
0004900088.tif 000002
【図２】
0004900088.tif 000003
【図３】
0004900088.tif 000004
【図４】
0004900088.tif 000005
【図５】
0004900088.tif 000006
【図６】
0004900088.tif 000007
【図７】
0004900088.tif 000008
【図８】
0004900088.tif 000009
【図９】
0004900088.tif 000010
【図１０】
0004900088.tif 000011
【図１１】
0004900088.tif 000012
【図１２】
0004900088.tif 000013
【図１３】
0004900088.tif 000014
【図１４】
0004900088.tif 000015
【図１５】
0004900088.tif 000016
【図１６】
0004900088.tif 000017
【図１７】
0004900088.tif 000018
【図１８】
0004900088.tif 000019
【図１９】
0004900088.tif 000020
【図２０】
0004900088.tif 000021
【図２１】
0004900088.tif 000022
【図２２】
0004900088.tif 000023
【図２３】
0004900088.tif 000024
【図２４】
0004900088.tif 000025
【図２５】
0004900088.tif 000026
【図２６】
0004900088.tif 000027
【図２７】
0004900088.tif 000028
【図２８】
0004900088.tif 000029
【図２９】
0004900088.tif 000030
【図３０】
0004900088.tif 000031
【図３１】
0004900088.tif 000032
【図３２】
0004900088.tif 000033
【図３３】
0004900088.tif 000034
【図３４】
0004900088.tif 000035
【図３５】
0004900088.tif 000036
【図３６】
0004900088.tif 000037
【図３７】
0004900088.tif 000038
【図３８】
0004900088.tif 000039
【図３９】
0004900088.tif 000040
【図４０】
0004900088.tif 000041
【図４１】
0004900088.tif 000042
【図４２】
0004900088.tif 000043
【図４３】
0004900088.tif 000044
【図４４】
0004900088.tif 000045
【図４５】
0004900088.tif 000046
【図４６】
0004900088.tif 000047
【図４７】
0004900088.tif 000048
【図４８】
0004900088.tif 000049
【図４９】
0004900088.tif 000050