(57)【特許請求の範囲】
【請求項１】
フレームを送受信するスイッチング装置であって、
アドレス情報とインタフェース情報とを対応付けたエントリ及び前記エントリ毎に転送するフレームのトラフィック量を示す帯域情報を保持する中継情報記憶部と、
受信したフレームの送信元アドレスおよび受信インタフェース情報を前記中継情報記憶部の前記アドレス情報およびインタフェース情報として記憶させ、受信したフレームの宛先アドレスに基づいて前記中継情報記憶部の前記アドレス情報を検索し、対応するインタフェース情報を取得することにより受信したフレームを出力すべき送信先インタフェースを決定する中継情報操作部と、
前記帯域情報に基づいて前記中継情報記憶部が保持するエントリを削除する中継情報削除部と、を有することを特徴とするスイッチング装置。
【請求項２】
請求項１記載のスイッチング装置であって、
前記中継情報削除部は、前記帯域情報が低くトラフィック量の少ないエントリを優先して削除対象とすることを特徴とするスイッチング装置。
【請求項３】
請求項１または２いずれかに記載のスイッチング装置であって、
前記中継情報記憶部は、さらに、前記エントリ毎の優先度を示す優先度情報を保持し、前記中継情報削除部は、前記中継情報記憶部がエントリ毎に保持する帯域情報の高低および優先度情報の高低に基づいて削除対象とするエントリを決定する、ことを特徴とするスイッチング装置。
【請求項４】
請求項３記載のスイッチング装置であって、
前記中継情報削除部は、前記帯域情報が低くトラフィック量が少なくかつ前記優先度情報が低いエントリを優先して削除対象とすることを特徴とするスイッチング装置。
【請求項５】
請求項１乃至請求項４のいずれかに記載のスイッチング装置であって、
前記中継情報削除部は、前記中継情報記憶部が保持するエントリ数が所定の閾値を越えた場合に、前記エントリの削除を行うことを特徴とするスイッチング装置。
【請求項６】
請求項１乃至請求項５のいずれかに記載のスイッチング装置であって、さらに、管理装置からのコマンドを受信し、前記中継情報記憶部が保持するエントリを前記管理装置に出力するコマンド処理部を備えることを特徴とするスイッチング装置。
【請求項７】
請求項１ないし６いずれかに記載のスイッチング装置であって、
前記アドレス情報はＭＡＣアドレス、前記送信元アドレスは送信元ＭＡＣアドレス、前記宛先アドレスは宛先ＭＡＣアドレスであって、
前記中継情報記憶部は、前記ＭＡＣアドレスと前記インタフェース情報とを対応付けたＦＤＢ（Ｆｏｒｗａｒｄｉｎｇ  ＤａｔａＢａｓｅ）を保持し、
前記中継情報操作部は、受信したフレームに基づいて送信元ＭＡＣアドレスと受信インタフェースを学習して前記ＦＤＢを更新し、受信したフレームの宛先ＭＡＣアドレスに基づいて前記ＦＤＢを検索して受信したフレームを出力すべき送信先インタフェースを決定する、ことを特徴とするスイッチング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はフレーム中継装置およびエージング方法に関し、特にレイヤー２ネットワークにおいてフレーム中継を行う際に用いる中継情報テーブルのエージング方法および装置に関する。
【背景技術】
【０００２】
ネットワークを構成するイーサネット（登録商標）スイッチング装置は、レイヤー２ネットワーク間で授受されるフレームのスイッチングを行う際に、過去に接続をした端末のＭＡＣアドレス、インタフェース、ＶＬＡＮ番号などを中継情報テーブルに登録しておく。スイッチング装置はフレームの中継をする際に中継情報テーブルを参照することにより、新たに受信したフレームの送信先インタフェースを判断することができる。中継情報テーブルは、ＭＡＣアドレス学習テーブルや、ＦＤＢ（Ｆｏｒｗａｒｄｉｎｇ  ＤａｔａＢａｓｅ）とも呼ばれる。本発明においては中継情報テーブルの一例としてＦＤＢを用いて説明する。
【０００３】
ＦＤＢは、端末のＭＡＣアドレス、インタフェース、ＶＬＡＮ番号などを１つのエントリとして登録しておき、受信したフレームの中継先インタフェースを判断するために用いる。しかしながら、ＦＤＢに登録できるエントリ数は有限であり、ＦＤＢの収容数を超えた状態で新規に受信したフレームは、受信したフレームと同一ＶＬＡＮに所属する受信インタフェース以外の全インタフェースから送信することになる。これをフラッディングという。また、送信元ＭＡＣアドレス、受信インタフェース、ＶＬＡＮ番号が同一のフレームは、同一のＦＤＢエントリに該当する。この同一のフレームの流れをフローという。
【０００４】
ＦＤＢ収容数の過達によるフラッディングの発生を低減するため、ＦＤＢのエントリ毎にタイマーの管理を行い、周期的にタイマーを減算してタイマーが０以下となったエントリを、一定時間フレーム中継がないエントリと判断して削除する方法がある。これをタイマーによるエージングという。
【０００５】
タイマーによるエージングを行うことで、ＦＤＢに空きエントリを確保することが可能となる。ＦＤＢに空きエントリができると、新規に受信したフレームをＦＤＢに登録することができるため、フラッディングの発生を抑えることができる。
【０００６】
一般的な従来技術について図１−図５を用いて一例を説明する。
図１は従来のスイッチング装置のＭＡＣアドレス学習に係わる機能ブロック図である。スイッチング装置９１０１は、Ｉ／Ｆ９１１１−９１１５、スイッチング制御部９１２１、ＦＤＢ操作部９１３１、ＦＤＢ９１３２、エージング操作部９１３３を有する。Ｉ／Ｆ９１１１−９１１５は、端末９１０２−９１０６と接続するためのインタフェースである。スイッチング制御部９１２１は端末９１０２−９１０６間の接続をするための切り替え制御を行う。
【０００７】
ＦＤＢ操作部９１３１では、受信したフレームの送信元ＭＡＣアドレスを用いてＦＤＢ９１３２を検索し、ＦＤＢに当該送信元ＭＡＣアドレスが登録されておらず新規に受信したフレームである場合は新規にエントリを登録する。また宛先ＭＡＣアドレスを用いてＦＤＢ９１３２を検索することにより、受信したフレームの送信先インタフェースを決定する。
【０００８】
図２はＦＤＢ９１３２の一例を示す図である。ＦＤＢ９１３２は、受信したフレームの送信元ＭＡＣアドレスを登録するＭＡＣアドレス９１３２１、受信したフレームが所属するインタフェースを登録するＩ／Ｆ９１３２２、受信したフレームの所属するＶＬＡＮ番号を登録するＶＬＡＮ番号９１３２３から成る中継情報と、エージングを実施するためのタイマーを登録するタイマー９１３２４から成るエージング情報をエントリ毎に管理する。ＦＤＢ９１３２は、新規フレームを受信する毎に、新規エントリを登録し、ＦＤＢエントリ数の上限までエントリを登録した状態が図２となる。
【０００９】
エージング操作部９１３３は、一定周期毎に、ＦＤＢエントリ毎のエージング実施有無を判断し、削除対象となったＦＤＢエントリを削除する。
【００１０】
図１のスイッチング装置９１０１がフレームを受信した際の動作を説明する。スイッチング装置９１０１が、ＦＤＢ９１３２に新規エントリを登録できない状態（図２）で、図３に示す宛先ＭＡＣアドレスＹ（２０１１）、送信元ＭＡＣアドレスＡ（２０１２）、ＶＬＡＮ番号１０（２０１３）のフレーム２０１を端末１０２から受信したとする。端末１０２から受信したフレーム２０１はインタフェース９１１１よりスイッチング制御部９１２１へ渡され、スイッチング制御部９１２１は、ＦＤＢ操作部９１３１に送信先インタフェースを問い合わせる。
【００１１】
図４はＦＤＢ操作部９１３１が受信したフレームの送信先インタフェースを決定するためのフローチャートである。ＦＤＢ操作部９１３１はフレーム２０１を受信後（Ｓ１０１）、送信元ＭＡＣアドレス２０１２をＦＤＢ９１３２のＭＡＣアドレス９１３２１より検索する（Ｓ１０２）。送信元ＭＡＣアドレスＡはＦＤＢ９１３２に登録済みであるため、ＭＡＣアドレスＡに該当する登録済エントリのタイマー９１３２４を初期化する（Ｓ１０３）。次に送信先インタフェースを決定するために、宛先ＭＡＣアドレス２０１１をＦＤＢ９１３２のＭＡＣアドレス９１３２１より検索する（Ｓ１０６）。宛先ＭＡＣアドレスＹは未登録であるため、同一ＶＬＡＮ内に所属する受信インタフェース以外の全インタフェースより送信する（Ｓ１０７）。スイッチング装置９１０１のＶＬＡＮ１０に属するインタフェースが９１１１、９１１３、９１１４、９１１５であった場合、受信インタフェース９１１１以外の９１１３、９１１４、９１１５からフラッディングすることになる。
【００１２】
フレーム２０１を各端末に送信後、端末９１０６がフレーム２０１の応答である宛先ＭＡＣアドレスＡ（２０２１）、送信元ＭＡＣアドレスＹ（２０２２）、ＶＬＡＮ番号１０（２０２３）のフレーム２０２を送信したとする。端末９１０６から受信したフレーム２０２はインタフェース９１１５よりスイッチング制御部９１２１へ渡され、スイッチング制御部９１２１は、ＦＤＢ操作部９１３１に送信先インタフェースを問い合わせる。ＦＤＢ操作部９１３１は図４のフローチャートに基づき送信先インタフェースを決定する。ＦＤＢ操作部９１３１はフレーム２０２を受信後（Ｓ１０１）、送信元ＭＡＣアドレス２０２２をＦＤＢ９１３２のＭＡＣアドレス９１３２１より検索する（Ｓ１０２）。送信元ＭＡＣアドレスＹは未登録であるため、ＦＤＢ登録可能であるか判断する（Ｓ１０４）が、図２のＦＤＢ９１３２には空きエントリがないため登録することができない。次に送信先インタフェースを決定するため、宛先ＭＡＣアドレス２０２１をＦＤＢ９１３２のＭＡＣアドレス９１３２１より検索する（Ｓ１０６）。宛先ＭＡＣアドレスＡは登録済みであるため、ＭＡＣアドレスＡに該当する登録済エントリのインタフェース９１３２２を参照する。宛先ＭＡＣアドレスＡのインタフェースはＩ／Ｆ ａと登録されているためＩ／Ｆ ａ（９１１１）より送信する（Ｓ１０８）。
【００１３】
以上のようにＦＤＢ収容数過達により登録ができない場合、宛先ＭＡＣアドレスＹのフレームは常にフラッディングをすることになる。そこで、ＦＤＢ収容数過達によるフラッディングの発生を低減するためタイマーによるエージングを実施する。
【００１４】
図５は一般的なタイマーによるエージングの一例を示すフローチャートである。前回のエージング処理からＴ時間経過（Ｓ２０１）後、エージング操作部９１３３はＦＤＢ９１３２内の全エントリのタイマー９１３２４を経過したＴ時間分減算し（Ｓ２０２）、ＦＤＢ９１３２の全エントリのタイマー９１３２４を確認する（Ｓ２０３）。タイマー９１３２４が０以下の場合、一定時間フレーム中継がないエントリと判断してＦＤＢ９１３２より削除する（Ｓ２０４）。タイマーによるエージングにより、ＦＤＢに空きエントリを確保することが可能なる。ＦＤＢに空きエントリができると、新規に受信したフレームをＦＤＢに登録することができるため、フラッディングの発生を抑えることができる。
【００１５】
また、中継情報テーブルの登録数を制限する技術として、特許文献１がある。特許文献１は、ユーザグループ毎に中継情報テーブルの登録可能エントリ数に制限を設け、特定ユーザグループで新規ＭＡＣアドレス登録ができなくなったとしても、他のユーザグループでは登録可能であるためフラッディングの発生確率を低減することが可能であることを開示している。
【００１６】
また、中継情報テーブルのエントリ毎に異なるタイマーの設定や、エージング対象／対象外を登録する技術として、特許文献２がある。特許文献２は、中継情報テーブルのエントリ毎にエージング時間や更新時間を登録、またエージング対象／対象外のビットを登録することで中継情報テーブルのエントリ毎のエージング処理を自由に可変とすることができ、フラッディングの発生確率を低減することが可能であることを開示している。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００４−１９４１４５号公報
【特許文献２】特開２００５−１０９５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
上記従来技術では、ＦＤＢ内に登録している全エントリに該当するフレームを、定期的にタイマーよりも短い間隔で受信し続けると、タイマーによるエージングではＦＤＢの空きエントリを確保することができないという問題がある。ＦＤＢに登録できない状態では、フラッディングが発生し続け、フラッディングされたフローがネットワーク上に流れ続けることになる。ＦＤＢに登録できない状況で受信したフローのトラフィック量が大きい場合、フラッディングするフローのトラフィック量も大きくなり、必要以上に多量のフローがネットワーク上に流れることになる。このような多量のフローのフラッディングは、回線帯域の圧迫や優先フレームの処理遅延などを引き起こす要因となり、また、ネットワークを構成する装置あるいはネットワークシステム全体に負荷を与える要因となる。
【課題を解決するための手段】
【００１９】
本発明は上述の課題を解決するため、アドレス情報とインタフェース情報とを対応づけた中継情報を保持するスイッチング装置において、さらに中継情報のエントリ毎に帯域情報を保持させたスイッチング装置または方法を提供する。
また、上記のスイッチング装置であって、前記帯域情報の高低に基づいて中継情報のエントリの中から削除対象とするエントリを決定して削除する中継情報削除部を備えるスイッチング装置または装置を提供する。
また、上記のスイッチング装置であって、さらに中継情報のエントリ毎に優先度情報を保持させたスイッチング装置または方法を提供する。
また、前記上記のスイッチング装置であって、前記帯域情報の高低および前記優先度情報の高低に基づいて中継情報のエントリの中から削除対象とするエントリを決定して削除する中継情報削除部を備えるスイッチング装置または装置を提供する。
【発明の効果】
【００２０】
本発明によれば、トラフィック量の大きいフローや、優先度の高いフローに該当するエントリはエージングによる削除対象となりにくくなり、フラッディングによる回線帯域の圧迫や優先フレームの処理遅延などを低減し、ネットワークを構成する装置あるいはネットワークシステム全体の負荷を低減することができる。
【図面の簡単な説明】
【００２１】
【図１】従来のスイッチング装置１０１の機能ブロック図である。
【図２】従来のＦＤＢを説明する図である。
【図３】スイッチング装置が受信するフレームの例を示す図である。
【図４】ＦＤＢ操作部がフレームを受信した際の動作を説明するフローチャートである。
【図５】エージング操作部が実施するエージングの動作を説明するフローチャートである。
【図６】第一の実施形態におけるスイッチング装置の機能ブロック図である。
【図７（ａ）】閾値情報テーブルを設定するためのコンフィギュレーション例を示す図である。
【図７（ｂ）】閾値情報テーブルの例を示す図である。
【図８】帯域演算部の処理を示すフローチャートである。
【図９】エージング操作部の帯域によるエージングの処理を示すフローチャートである。
【図１０】第一の実施形態におけるＦＤＢを説明する図である。
【図１１】第一の実施形態におけるＦＤＢの削除対象を説明する図である。
【図１２】第一の実施形態におけるＦＤＢのエージングを実施した結果を説明する図である。
【図１３】第一の実施形態におけるＦＤＢの登録済エントリ毎の状況を確認するためのコマンドおよび表示例である。
【図１４】第二の実施形態におけるスイッチング装置の機能ブロック図である。
【図１５（ａ）】優先度を設定するためのコンフィギュレーション例を示す図である。
【図１５（ｂ）】優先度情報テーブルの例を示す図である。
【図１６】エージング操作部の帯域および優先度によるエージングの処理を示すフローチャートである。
【図１７】第二の実施形態におけるＦＤＢを説明する図である。
【図１８】第二の実施形態におけるＦＤＢの削除対象を説明する図である。
【図１９】第二の実施形態におけるＦＤＢのエージングを実施した結果を説明する図である。
【図２０】第二の実施形態におけるＦＤＢの登録済エントリ毎の状況を確認するためのコマンドおよび表示例である。
【発明を実施するための形態】
【実施例１】
【００２２】
以下、本発明の第一の実施形態を図６−図１３を用いて説明する。
図６は本発明の第一の実施形態によるスイッチング装置のＭＡＣアドレス学習に係わる機能ブロック図である。スイッチング装置１０１は、Ｉ／Ｆ１１１−１１５、スイッチング制御部１２１を有し、さらにレイヤー２ネットワーク間で授受されるフレームの中継先を判断するためのＦＤＢ制御部としてＦＤＢ操作部１３１、ＦＤＢ１３２、エージング操作部１３３、帯域演算部１３４を備え、コンフィギュレーション情報として閾値情報テーブル１４１を有する。Ｉ／Ｆ１１１−１１５は、端末１０２−１０６と接続するためのインタフェースである。スイッチング制御部１２１は端末１０２−１０６間の接続をするための切り替え制御を行う。  ＦＤＢ操作部１３１では、受信したフレームの送信元ＭＡＣアドレスを用いてＦＤＢ１３２を検索し、ＦＤＢに当該送信元ＭＡＣアドレスが登録されておらず新規に受信したフレームである場合は新規にエントリを登録する。また、宛先ＭＡＣアドレスを用いてＦＤＢ１３２を検索することにより、受信したフレームの送信先インタフェースを決定する。
【００２３】
図１０はＦＤＢ１３２の一例を示す図である。ＦＤＢ１３２は、受信したフレームの送信元ＭＡＣアドレスを登録するＭＡＣアドレス１３２１、受信したフレームが所属するインタフェースを登録するＩ／Ｆ１３２２、受信したフレームの所属するＶＬＡＮ番号を登録するＶＬＡＮ番号１３２３から成る中継情報と、エージングを実施するためのタイマーを登録するタイマー１３２４、および帯域１３２５を加えたエージング情報をエントリ毎に管理する。帯域１３２５は帯域演算部１３４により算出した値を管理する。図１０の各エントリのうち、各項目に記載があるエントリは登録済エントリを示し、各項目が空欄であるエントリは空きエントリを示す。
【００２４】
エージング操作部１３３は、一定周期毎に、ＦＤＢエントリ毎に登録しているタイマー１３２４、帯域１３２５を基にしてエージングの実施有無を判断し、削除対象となったＦＤＢエントリを削除する。
【００２５】
帯域演算部１３４は、ＦＤＢ操作部１３１や、エージング操作部１３３とは非同期で動作する。また、一定周期毎に登録しているＦＤＢ１３２のエントリ毎の帯域を監視、算出し、帯域１３２５を更新する。
【００２６】
閾値情報テーブル１４１は、ＦＤＢ１３２のエントリ数上限値以下の閾値を保持する。この閾値以上のエントリ登録があった場合、帯域によるエージングを実施する。閾値は、たとえば図７（ａ）のようにコンフィギュレーションによる決定、または装置で固定とする。図７（ａ）はエージングを実施するＦＤＢエントリ数を１０００と設定した例である。このとき、閾値情報テーブル１４１は図７（ｂ）のように閾値として１０００を保持する。
【００２７】
各部位の動作についてフローチャートを用いて説明をする。
ＦＤＢ操作部１３１は、フレームを受信した際、従来と同様に図４のフローチャートに基づき動作する。
図８は帯域演算部１３４の処理を示すフローチャートである。帯域演算部１３４は、Ｉ時間が経過する毎に、図８のフローチャートに基づき動作する。Ｉ時間が経過（Ｓ３０１）した際に、ＦＤＢ１３２内の全エントリに登録している帯域１３２５を更新（Ｓ３０２）して処理を終了する（Ｓ３０３）。Ｉ時間はコンフィギュレーションによる決定、または装置で固定とする。なお、帯域演算部１３４による帯域監視の方法としては、ＦＤＢ１３２のエントリ毎に送信するフレームのフレーム長をＩ時間分積算して算出するなど様々な手法が考えられるが、ＦＤＢ１３２のエントリ毎に帯域を監視できるものであればその手法は問わない。
【００２８】
エージング操作部１３３がＴ時間経過した際に実施するタイマーによるエージングは図５のように従来と同様に動作する。エージング操作部１３３は、タイマーによるエージングとは別に帯域によるエージングを実施する。
【００２９】
図９はエージング操作部１３３の帯域によるエージングの処理を示すフローチャートである。エージング操作部１３３の帯域によるエージングは所定の時間間隔で実施すればよいが、本実施形態においてはＴ時間経過毎に行われるタイマーによるエージング後に実施するものとして説明する。
【００３０】
Ｔ時間経過時、図５のタイマーによるエージングを実施した後（Ｓ４０１）、ＦＤＢ１３２に登録しているエントリ数を確認する（Ｓ４０２）。確認結果が、閾値情報テーブル１４１の閾値以上であれば、ＦＤＢ１３２内の全エントリのうち最も帯域１３２５が小さいエントリを検索（Ｓ４０３）し、該当エントリを削除（Ｓ４０４）する。該当エントリを削除後、再度ＦＤＢ１３２に登録しているエントリ数を確認する（Ｓ４０２）。エントリ数が閾値情報テーブル１４１の閾値未満になるまでエントリの削除処理を繰り返し、閾値情報テーブル１４１の閾値未満になった時点で帯域によるエージング処理を終了する（Ｓ４０５）。
【００３１】
スイッチング装置１０１がフレームを受信した際の動作を説明する。
ＦＤＢ１３２が図１０のようにＦＤＢエントリに空きがある状態で、スイッチング装置１０１が図３の宛先ＭＡＣアドレスＡ、送信元ＭＡＣアドレスＹのフレーム２０２を受信する。ＦＤＢ操作部１３１は、図４のフローチャートに基づき、フレーム２０２の送信元ＭＡＣアドレスＹをＦＤＢ１３２に登録する。登録後のＦＤＢ１３２を図１１に示す。Ｔ時間が経過すると、図５のタイマーによるエージングを実施するが、全エントリに該当するフレームを、定期的に受信している状態であると、エントリが削除されない。タイマーによるエージングの後、図９の帯域によるエージングを実施する。図１１のＦＤＢ１３２は閾値情報テーブル１４１の閾値以上にエントリの登録があるため(Ｓ４０２)、ＦＤＢ１３２内の全エントリのうち最も帯域１３２５が小さいエントリを検索（Ｓ４０３）し、最も帯域が小さいエントリ１３２５１を削除する（Ｓ４０４）。削除後のＦＤＢ１３２を図１２に示す。削除した結果、図１２のＦＤＢ１３２は閾値情報テーブルの閾値未満となるため（Ｓ４０２）、帯域によるエージングを終了（Ｓ４０５）する。
【００３２】
以上により、閾値を越えてＦＤＢのエントリの登録があった場合、ＦＤＢエントリ毎に登録している帯域を基に、最もトラフィック量が小さいフローに該当するＦＤＢエントリを優先的に削除するため、トラフィック量が大きいフローに該当するエントリが削除されにくくなり、結果としてフラッディングによる回線帯域の圧迫を低減することができる。
【００３３】
なお、本実施形態においては、所定時間経過毎にＦＤＢのエントリが閾値を越えているかを監視し、越えていた場合に最もトラフィック量が小さいフローに対応するＦＤＢエントリを削除するようにしたが、必ずしも閾値を設けて定期的に帯域によるエージングを実行しなくてもよい。例えば、フレームを受信したＦＤＢ操作部１３１がＦＤＢ１３２に新たなエントリを登録しようとした際、空きがなく登録できない場合に、エージング操作部１３３に通知し、エージング操作部１３３が通知されたタイミングでＦＤＢ１３２内で最も帯域が小さいエントリを削除するようにしてもよい。
【００３４】
また、必ずしも最も帯域の小さいＦＤＢエントリを削除する必要はなく、所定の閾値以下の帯域のＦＤＢエントリを任意に削除してもよいし、削除対象外のＦＤＢエントリを設け、最も帯域の小さいＦＤＢエントリが削除対象外のエントリであった場合は、次に帯域の小さいＦＤＢエントリを削除するなどしてもよい。
【００３５】
また、定期的に帯域によるエージングを実行するにあたり、帯域１３２５に対する閾値を設けても良い。例えば、ＦＤＢ１３２のエントリ数に対する閾値（閾値情報テーブル１４１の閾値）にかかわらず、定期的にＦＤＢ１３２を監視し、帯域１３２５に対する閾値以下のエントリは一律削除するなどの手法も採用可能である。
【００３６】
つまり、本実施形態においてはＦＤＢのエントリ毎に管理している帯域の高低に基づいて削除対象とするエントリを決定することが重要であり、その具体的な手法は上述の通り様々な手法を採用することができる。
【００３７】
図１３はＦＤＢ１３２の登録済エントリ毎の状況を確認するためのコマンドおよび表示例である。行ｃ１はコマンドシンタックス例を示す。行ｃ２はＦＤＢエントリ数上限値を示す（本例では１０２４）。行ｃ３はＦＤＢの登録済エントリ数を示す（本例では５）。行ｃ４はＦＤＢの空きエントリ数を示す（本例では１０１９）。行ｃ５はＦＤＢエントリの閾値を示す（本例では１０００）。行ｃ６はＦＤＢの各項目を示す。ＭＡＣ  ａｄｄｒｅｓｓ、Ｉ／Ｆ、ＶＬＡＮ、Ｔｉｍｅｒ、Ｒａｔｅの各項目は、ＦＤＢ１３２の各項目であるＭＡＣアドレス１３２１、Ｉ／Ｆ１３２２、ＶＬＡＮ番号１３２３、タイマー１３２４、帯域１３２５に対応する。行ｃ７−行ｃ１１はＦＤＢエントリ毎の各項目の値である。行ｃ１のコマンドを入力・実行することにより、行ｃ２−行ｃ１１の内容が表示される。
【００３８】
例えばスイッチング装置１０１の任意のインタフェースに管理端末を接続し、管理端末から入力されたコマンド（行ｃ１）をエージング操作部１３３が受け付け、コマンド実行結果（行ｃ２−行ｃ１１）を出力し、管理端末に表示すればよい。もしくは、スイッチング装置１０１内にコマンド処理部を設け、管理端末から入力されたコマンドの受け付け、実行、出力を行ってもよい。
【００３９】
このように、コマンドによりＦＤＢ１３２の内容を表示・出力することができるため、例えばスイッチング装置１０１の管理者が定期的にＦＤＢ１３２の内容を確認し、帯域１３２５の小さいエントリを任意に削除するといった運用を行うことも可能である。
【実施例２】
【００４０】
実施例２は、前述実施例１の帯域に加え、優先度を考慮したエージングを実施する。優先度とは、ＦＤＢエントリ毎に優劣を付け、優先度が高いＦＤＢエントリは削除対象となりにくくする。そのため、ＦＤＢのエージング情報とエージング操作部のエージング処理に、優先度に基づく制御を加え、また、コンフィギュレーション情報に優先度情報テーブルを加える。
【００４１】
以下、本発明の第二の実施形態を図１４−図２０を用いて、前述実施例１との差分を説明する。
図１４は本発明の第二の実施形態によるスイッチング装置のＭＡＣアドレス学習に係わる機能ブロック図である。実施例の図６で説明したスイッチング装置１０１に対して、コンフィギュレーション情報として優先度情報テーブル１４２を新たに保持している。
【００４２】
図１７は第二の実施形態におけるＦＤＢ１３２の例を示す図である。ＦＤＢ１３２はＭＡＣアドレス１３２１、Ｉ／Ｆ１３２２、ＶＬＡＮ番号１３２３からなる中継情報と、タイマー１３２４、帯域１３２５、および優先度１３２６を加えたエージング情報をエントリ毎に管理する。実施例１の図１０で説明したＦＤＢ１３２に比べ、優先度１３２６が追加になっている点が異なる。優先度１３２６は優先度情報テーブル１４２より割り当てた値を管理する。図１７の各エントリのうち、各項目に記載があるエントリは登録済エントリを示し、各項目が空欄であるエントリは空きエントリを示す。
【００４３】
第二の実施形態におけるエージング操作部１３３は一定周期毎に、ＦＤＢエントリ毎に登録しているタイマー１３２４、帯域１３２５、優先度１３２６を基にしたエージングの実施有無を判断、削除対象となったＦＤＢエントリを削除する。
【００４４】
図１５（ｂ）は優先度情報テーブル１４２の例を示す図である。優先度情報テーブル１４２は、ＦＤＢエントリ毎の優先度を決定するために保持されており、ＶＬＡＮ番号１４２１と優先度１４２２から構成されている。図１５（ｂ）は、ＶＬＡＮ番号１４２１により１−８の８段階の優先度を付与した例であり、１−８のうち８が最も高優先であり、優先度８が付与されたＦＤＢエントリは最も削除されにくいエントリとなる。
【００４５】
図１５（ａ）はコンフィギュレーションにより優先度を設定するためのコマンド例である。行ｃ１はＶＬＡＮ１０を示す。行ｃ２はＶＬＡＮ１０の優先度を８とすることを示す。ＶＬＡＮ１０の優先度は最も高いため、削除対象となりにくくなる。行ｃ３はＶＬＡＮ５０を示す。行ｃ４はＶＬＡＮ５０の優先度を１とすることを示す。ＶＬＡＮ５０の優先度は最も低いため、削除対象となりやすくなる。優先度は図１５（ａ）のようにコンフィギュレーションにより決定してもよいし、装置で固定としておいてもよい。
【００４６】
なお、優先度の割り当ては、ＶＬＡＮ毎ではなく、インタフェースやＭＡＣアドレス毎に行うことも可能である。また、指定できる優先度の設定段階は何段階でもよい。また、数値による優先度の高低は降順でも昇順でもよい。ＦＤＢ１３２の優先度１３２６は、ＦＤＢ操作部１３１がＦＤＢ１３２にエントリを新規登録する際に優先度情報テーブル１４２を参照して登録する、またはエージング実施時に優先度情報テーブル１４２を参照して登録する。
【００４７】
各部位の動作についてフローチャートを用いて説明をする。
ＦＤＢ操作部１３１は、フレームを受信した際、従来と同様に図４のフローチャートに基づき動作する。
ＦＤＢ操作部１３１は、フレームを受信した際、実施例１と同様に図４のフローチャートに基づき動作する。
また、帯域演算部１３４も、実施例１と同様に図８のフローチャートに基づき動作する。
【００４８】
エージング操作部１３３がＴ時間経過した際に実施するタイマーによるエージングは図５のように従来どおり動作する。エージング操作部１３３は、タイマーによるエージングとは別に帯域および優先度によるエージングを実施する。
【００４９】
図１６はエージング操作部１３３の帯域および優先度によるエージングの処理を示すフローチャートである。エージング操作部１３３の帯域および優先度によるエージングは所定の時間間隔で実施すればよいが、本実施形態においてはＴ時間経過毎に行われるタイマーによるエージング後に実施するものとして説明する。
【００５０】
Ｔ時間経過時、図５のタイマーによるエージングを実施した後（Ｓ５０１）、ＦＤＢ１３２に登録しているエントリ数を確認する（Ｓ５０２）。確認結果が、閾値情報テーブル１４１の閾値以上であれば、ＦＤＢ１３２内の全エントリ内で最も優先度１３２６が低いエントリのうち、最も帯域１３２５が小さいエントリを検索（Ｓ５０３）し、該当エントリを削除（Ｓ５０４）する。該当エントリを削除後、再度ＦＤＢ１３２に登録しているエントリ数を確認する（Ｓ５０２）。エントリ数が閾値情報テーブル１４１の閾値未満になるまでエントリの削除処理を繰り返し、閾値情報テーブル１４１の閾値未満になった時点で帯域および優先度によるエージング処理を終了する（Ｓ５０５）。
【００５１】
スイッチング装置１０１がフレームを受信した際の動作を説明する。
ＦＤＢ１３２が図１７のようにＦＤＢエントリに空きがある状態で、スイッチング装置１０１が図３の宛先ＭＡＣアドレスＡ、送信元ＭＡＣアドレスＹのフレーム２０２を受信する。ＦＤＢ操作部１３１は、図４のフローチャートに基づき、フレーム２０２の送信元ＭＡＣアドレスＹをＦＤＢ１３２に登録する。登録後のＦＤＢ１３２を図１８に示す。Ｔ時間が経過すると、図５のタイマーによるエージングを実施するが、全エントリに該当するフレームを、定期的に受信している状態であると、エントリが削除されない。タイマーによるエージングの後、図１６の帯域および優先度によるエージングを実施する。図１８のＦＤＢ１３２は閾値情報テーブル１４１の閾値以上に登録があるため(Ｓ５０２)、ＦＤＢ１３２内の全エントリ内で最も優先度１３２６が低いエントリのうち、最も帯域１３２５が小さいエントリを検索（Ｓ５０３）する。図１５の優先度が割り当てられていると、優先度８よりも優先度１を優先的に削除するため、最も優先度が低いエントリのうち、最も帯域が小さいエントリ１３２６１を削除する（Ｓ４０４）。削除後のＦＤＢ１３２を図１９に示す。削除した結果、図１９のＦＤＢ１３２は閾値情報テーブル１４１の閾値未満となるため（Ｓ５０２）、帯域および優先度によるエージングを終了（Ｓ５０５）する。
【００５２】
以上により、閾値を越えたエントリの登録があった場合、ＦＤＢに登録している帯域に加え優先度を基に、最も優先度が低いエントリのうち、最もトラフィック量が小さいフローに該当するエントリを削除する。この帯域および優先度によるエージングにより、トラフィック量が大きく、優先度の高いフローのエントリは削除されにくくなる。結果的にフローのトラフィック量とは別にエントリ毎の重要度を基にすることで、重要なフローのエントリが削除対象となりにくくなり、重要なフローがフラッディングされにくくなる上、フラッディングによる回線帯域の圧迫を低減することができる。
【００５３】
なお、Ｓ５０３の検索は、上述のように優先度１３２６を検索した後、帯域１３２５を検索するという順序で実施する他に、帯域１３２５を検索後、優先度１３２６を検索するという順序で実施してもよい。また、検索する順序の選択はコンフィギュレーションによる決定、または装置で固定とする。
また、上述した手法以外にも帯域１３２５と優先度１３２６を掛け合わせた値が低いエントリを削除対象としてもよいし、さらに掛け合わせるにあたり帯域１３２５と優先度１３２６それぞれに重み付けを設けてもよい。
【００５４】
実施例１と同様、帯域および優先度によるエージングの実現にあたり様々な手法が採用可能であるが、本実施形態においてはＦＤＢのエントリ毎に管理している帯域の高低および優先度の高低に基づいて削除対象とするエントリを決定することが重要であり、その具体的な手法としては様々な手法を採用することができる。
【００５５】
このように、コマンドによりＦＤＢ１３２の内容を表示・出力することができるため、例えばスイッチング装置１０１の管理者が定期的にＦＤＢ１３２の内容を確認し、帯域１３２５の小さいエントリを任意に削除するといった運用を行うことも可能である。
【００５６】
図２０は本実施形態におけるＦＤＢ１３２の登録済エントリ毎の状況を確認するためのコマンドおよび表示例である。行ｃ１はコマンドシンタックス例を示す。行ｃ２はＦＤＢエントリ数上限値を示す。行ｃ３はＦＤＢの登録済エントリ数を示す。行ｃ４はＦＤＢの空きエントリ数を示す。行ｃ５はＦＤＢエントリの閾値を示す。行ｃ６はＦＤＢの各項目を示しており、ＰｒｉｏｒｉｔｙはＦＤＢ１３２の優先度１３２６に対応する。行ｃ７−行ｃ１１はＦＤＢエントリ毎の各項目の値である。行ｃ１のコマンドを入力・実行することにより、行ｃ２〜行ｃ１１の内容が表示される。
【００５７】
例えばスイッチング装置１０１の任意のインタフェースに管理端末を接続し、管理端末から入力されたコマンド（行ｃ１）をエージング操作部１３３が受け付け、コマンド実行結果（行ｃ２−行ｃ１１）を出力し、管理端末に表示すればよい。もしくは、スイッチング装置１０１内にコマンド処理部を設け、管理端末から入力されたコマンドの受け付け、実行、出力を行ってもよい。
【００５８】
このように、コマンドによりＦＤＢ１３２の内容を表示・出力することができるため、例えばスイッチング装置１０１の管理者が定期的にＦＤＢ１３２の内容を確認し、帯域１３２５および優先度１３２６の値に基づいて任意の判断でエントリを削除するといった運用を行うことも可能である。
【符号の説明】
【００５９】
１０１：スイッチング装置
１０２−１０６：端末
１１１−１１５：インタフェース
１２１：スイッチング制御部
１３１：ＦＤＢ操作部
１３２：ＦＤＢ
１３２１：ＭＡＣアドレス
１３２２：Ｉ／Ｆ
１３２３：ＶＬＡＮ番号
１３２４：タイマー
１３２５：帯域
１３２６：優先度
１３３：エージング操作部
１３４：帯域演算部
１４１：閾値情報テーブル
１４２：優先度情報テーブル
【図１】
0005433627.tif 000002
【図２】
0005433627.tif 000003
【図３】
0005433627.tif 000004
【図４】
0005433627.tif 000005
【図５】
0005433627.tif 000006
【図６】
0005433627.tif 000007
【図７（ａ）】
0005433627.tif 000008
【図７（ｂ）】
0005433627.tif 000009
【図８】
0005433627.tif 000010
【図９】
0005433627.tif 000011
【図１０】
0005433627.tif 000012
【図１１】
0005433627.tif 000013
【図１２】
0005433627.tif 000014
【図１３】
0005433627.tif 000015
【図１４】
0005433627.tif 000016
【図１５（ａ）】
0005433627.tif 000017
【図１５（ｂ）】
0005433627.tif 000018
【図１６】
0005433627.tif 000019
【図１７】
0005433627.tif 000020
【図１８】
0005433627.tif 000021
【図１９】
0005433627.tif 000022
【図２０】
0005433627.tif 000023