(57)【特許請求の範囲】
【請求項１】
複数のポートを有し、タグ情報を含むフレームを転送する通信装置であって、
前記タグ情報を含むフレームを出力する第１のポートと、フレームの宛先アドレスと、前記第１のポートに対して前記タグ情報と対応付けて指定された帯域幅との関係から、前記タグ情報を含むフレームが入力される第２のポートに対応付ける閾値情報を生成する制御部と、
前記第２のポートから入力されるフレームについて、前記タグ情報および前記宛先アドレスに応じた受信レートを測定し、前記受信レートおよび前記閾値情報から、前記第１のポートで優先的に廃棄されるフレームを選択する受信処理部と、
を有する通信装置。
【請求項２】
前記制御部は、フレームの前記宛先アドレスから当該フレームを出力するポートを判定するための転送テーブルが更新されたことを検出し、前記転送テーブルの更新に基づいて前記閾値情報を更新する、請求項１記載の通信装置。
【請求項３】
前記制御部は、各第１のポートから出力されるフレームに含まれる前記宛先アドレスと対応付けて、当該第１のポートに対して指定された前記帯域幅から閾値を算出し、
前記閾値情報は、前記タグ情報と前記宛先アドレスと前記閾値との対応関係を示す、
請求項１または２記載の通信装置。
【請求項４】
前記閾値情報は、前記タグ情報および前記宛先アドレスに応じたグループ毎に、前記第２のポートから入力されるフレームに適用される閾値を含み、
前記受信処理部は、前記グループ毎に前記受信レートを測定し、前記受信レートおよび前記閾値に基づいて、前記優先的に廃棄されるフレームを選択する、
請求項１乃至３の何れか一項に記載の通信装置。
【請求項５】
複数のポートを有する通信装置が実行する通信方法であって、
タグ情報を含むフレームを出力する第１のポートと、フレームの宛先アドレスと、前記第１のポートに対して前記タグ情報と対応付けて指定された帯域幅との関係から、前記タグ情報を含むフレームが入力される第２のポートに対応付ける閾値情報を生成し、
前記第２のポートから入力されるフレームについて、前記タグ情報および前記宛先アドレスに応じた受信レートを測定し、前記受信レートおよび前記閾値情報から、前記第１のポートで優先的に廃棄されるフレームを選択する、
通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信装置および通信方法に関する。
【背景技術】
【０００２】
現在、物理的なネットワーク上に複数の論理的なネットワークを形成するネットワークの仮想化技術が利用されている。ネットワークの仮想化技術の１つとして、タグ方式のＶＬＡＮ（Virtual Local Area Network）がある。タグ方式のＶＬＡＮでは、フレームに、ＶＬＡＮ識別子（ＶＬＡＮ−ＩＤ）を含むタグが挿入される。フレームを転送する通信装置（例えば、レイヤ２スイッチ）は、タグを参照して、異なるＶＬＡＮのフレームが混在しないようにフレームの転送先を制御する。タグ方式のＶＬＡＮは、例えば、データセンタのレイヤ２ネットワークにおいて、フレームをユーザ毎に分離するために用いられる。
【０００３】
なお、ＶＬＡＮの帯域制御に関し、保守端末がレイヤ２スイッチに各ＶＬＡＮグループの帯域を設定しておく方法が提案されている。また、レイヤ２スイッチにＶＬＡＮグループ間の帯域の比率を設定し、比率に応じた自動的な帯域制御を可能にする方法も提案されている。また、ＩＰ（Internet Protocol）パケットとレイヤ２パケットを１つのスイッチで転送できる通信装置であって、仮想チャネルを管理するテーブルをＡＲＰ（Address Resolution Protocol）を用いて収集した情報を用いて生成するものが提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２７４５２９号公報
【特許文献２】特開２００７−６８０５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、通信装置がタグ情報に応じて帯域制御を行う場合、出力ポート側において、タグ情報毎に滞留フレーム量を管理して特定のタグ情報を含むフレームを廃棄するなどの処理を行う方法も考えられる。しかし、出力ポート毎にフレームをタグ情報に応じて分類して処理するようにすることは、処理効率が低いという問題がある。
【０００６】
例えば、タグ方式のＶＬＡＮでは、ＶＬＡＮ−ＩＤが１２ビットで表現され、予約済みの２個を除く４０９４個のＶＬＡＮ−ＩＤがユーザによって使用され得る。出力ポート側でＶＬＡＮ毎の処理を行う場合、これらＶＬＡＮ−ＩＤに対応する複数のバッファや、複数のバッファに格納されたフレームの送信順序を制御するスケジューラなどを、ポート毎に設けることが考えられる。しかし、出力ポート毎にこのような回路を実装すると、出力ポート側の処理負荷の増大、回路規模の増大、消費電力の増加などの問題が生じる。
【０００７】
本発明はこのような点に鑑みてなされたものであり、タグ情報を含むフレームの帯域制御を効率的に行うことができる通信装置および通信方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
複数のポートを有し、タグ情報を含むフレームを転送する通信装置が提供される。通信装置は、制御部と受信処理部とを有する。制御部は、タグ情報を含むフレームを出力する第１のポートとフレームの宛先アドレスと第１のポートに対して指定された帯域幅との関係から、タグ情報を含むフレームが入力される第２のポートに対応付ける閾値情報を生成する。受信処理部は、第２のポートから入力されるフレームについて、タグ情報および宛先アドレスに応じた受信レートを測定し、受信レートおよび閾値情報から、第１のポートで優先的に廃棄されるフレームを選択する。
【０００９】
また、複数のポートを有する通信装置が実行する通信方法が提供される。タグ情報を含むフレームを出力する第１のポートとフレームの宛先アドレスと第１のポートに対して指定された帯域幅との関係から、タグ情報を含むフレームが入力される第２のポートに対応付ける閾値情報を生成する。第２のポートから入力されるフレームについて、タグ情報および宛先アドレスに応じた受信レートを測定し、受信レートおよび閾値情報から、第１のポートで優先的に廃棄されるフレームを選択する。
【発明の効果】
【００１０】
タグ情報を含むフレームの帯域制御を効率的に行うことができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の通信装置を示す図である。
【図２】第２の実施の形態の通信システムを示す図である。
【図３】フレームのフォーマット例を示す図である。
【図４】スイッチの構造例を示すブロック図である。
【図５】ＭＡＣアドレステーブルの例を示す図である。
【図６】帯域制御テーブルの例を示す図である。
【図７】測定処理部と制御部の第１の構造例を示すブロック図である。
【図８】受信記録テーブルの例を示す図である。
【図９】廃棄処理部と制御部の構造例を示すブロック図である。
【図１０】閾値設定の第１の例を示すフローチャートである。
【図１１】受信処理の例を示すフローチャートである。
【図１２】送信処理の例を示すフローチャートである。
【図１３】廃棄処理部の他の構造例を示すブロック図である。
【図１４】測定処理部と制御部の第２の構造例を示すブロック図である。
【図１５】閾値設定の第２の例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の通信装置を示す図である。第１の実施の形態の通信装置１０は、タグ情報を含むフレームを転送する。通信装置１０としては、例えば、ＶＬＡＮタグを含むＭＡＣ（Medium Access Control）フレームを転送するレイヤ２スイッチが挙げられる。通信装置１０は、ポート１１，１１ａ，１１ｂを含む複数のポート、内部スイッチ１２、制御部１３、受信処理部１４および送信処理部１５ａ，１５ｂを有する。
【００１３】
ポート１１には、宛先アドレス、送信元アドレスおよびタグ情報を含むフレームが入力される。ポート１１ａ，１１ｂからは、フレームが出力される。ただし、ポート１１は出力ポートを兼ねてもよく、ポート１１ａ，１１ｂは入力ポートを兼ねてもよい。タグ情報は、例えば、ＶＬＡＮ−ＩＤを含む。アドレスは、例えば、ＭＡＣアドレスである。
【００１４】
内部スイッチ１２は、通信装置１０が受信したフレームを出力するポートを、フレームに含まれるタグ情報と宛先アドレスに基づいて決定する。内部スイッチ１２は、出力ポートを決定するために用いる転送テーブルを保持していてもよい。また、内部スイッチ１２は、フレームの送信元アドレスを当該フレームが入力されたポートと対応付けて転送テーブルに記録することで、フレームの転送先を学習してもよい。
【００１５】
制御部１３は、タグ情報に応じた帯域制御を実現するため、閾値情報１４ａを生成して受信処理部１４に設定する。閾値情報１４ａは、例えば、タグ情報と１またはそれ以上の宛先アドレスを含むアドレスグループと閾値の対応関係を示す。制御部１３は、タグ情報を含むフレームを出力するポート１１ａ，１１ｂと、ポート１１ａ，１１ｂから出力されるフレームの宛先アドレスと、ポート１１ａ，１１ｂに対して指定された帯域幅との関係から、閾値情報１４ａを生成する。
【００１６】
例えば、制御部１３は、ポート１１ａ，１１ｂそれぞれについて、タグ情報に応じて指定された帯域幅を、当該タグ情報を含むフレームが入力される他のポート（ポート１１を含む）に配分することで、閾値を算出する。このとき、例えば、ポート１１ａ，１１ｂそれぞれから出力されるフレームに含まれ得る宛先アドレスのグループを、閾値と対応付ける。制御部１３は、閾値情報１４ａを生成するとき、ポート毎の宛先アドレスを特定するため、内部スイッチ１２が保持する転送テーブルを参照してもよい。
【００１７】
受信処理部１４は、ポート１１から入力されるフレームに対して、受信レートに応じて廃棄の優先付けを行い、内部スイッチ１２に出力する。例えば、受信処理部１４は、フレームに、“Ｒｅｄ”や“Ｇｒｅｅｎ”などのカラーを示すカラービットを付加する。このような受信処理部は、フレームが入力されるポート毎に設けられてもよい。例えば、受信処理部１４は、ポート１１に対応付けられて設けられたものである。
【００１８】
ここで、受信処理部１４は、タグ情報に応じた帯域制御のため、フレームに含まれるタグ情報および宛先アドレスに応じた受信レートを測定し、測定した受信レートと閾値情報１４ａとからフレームを優先付ける。例えば、受信処理部１４は、閾値情報１４ａで定義されたタグ情報とアドレスグループの組み合わせ毎に、受信レートを測定する。そして、受信レートが閾値を超えるとき、当該タグ情報とアドレスグループの組み合わせに該当するフレームを、優先的に廃棄するフレームと判定する。閾値情報１４ａに基づいてフレームを優先付けることは、タグ情報を含むフレームの出力先を入力ポート側で判断することで、出力ポート側でのタグ情報毎のフレーム滞留を予測すると言うこともできる。
【００１９】
例えば、ポート１１ａから、タグ情報＃１と宛先アドレスＡを含むフレームが出力される可能性があり、ポート１１ｂから、タグ情報＃１と宛先アドレスＢ，Ｃを含むフレームが出力される可能性があるとする。このとき、ポート１１ａのタグ情報＃１用の帯域幅をポート１１に配分することで、タグ情報＃１とアドレスグループ｛Ａ｝と閾値Ｔｈ１とが対応付けられて、受信処理部１４に設定される。また、ポート１１ｂのタグ情報＃１用の帯域幅をポート１１に配分することで、タグ情報＃１とアドレスグループ｛Ｂ，Ｃ｝と閾値Ｔｈ２とが対応付けられて、受信処理部１４に設定される。
【００２０】
送信処理部１５ａは、内部スイッチ１２からフレームを取得し、ポート１１ａから送信する。送信処理部１５ｂは、内部スイッチ１２からフレームを取得し、ポート１１ｂから送信する。送信処理部１５ａ，１５ｂは、帯域制御のため、フレーム滞留を検出すると、入力ポート側の優先付けの結果に基づいて一部のフレームを廃棄する。例えば、内部スイッチ１２から取得したフレームをキューに格納し、キュー長が閾値を超えると、フレーム滞留が解消するまで、“Ｒｅｄ”を示すカラービットが付加されたフレームを廃棄する。フレームの優先付けはタグ情報を考慮して行われているため、送信処理部１５ａ，１５ｂは、タグ情報毎にフレームを分類してフレーム滞留を判定しなくてもよい。
【００２１】
第１の実施の形態の通信装置１０によれば、制御部１３によって、タグ情報を含むフレームを出力するポート１１ａ，１１ｂとフレームの宛先アドレスとポート１１ａ，１１ｂに対して指定された帯域幅との関係から、タグ情報を含むフレームが入力されるポート１１に対応付ける閾値情報１４ａが生成される。受信処理部１４によって、ポート１１から入力されるフレームについて、タグ情報および宛先アドレスに応じた受信レートが測定され、受信レートおよび閾値情報１４ａから、ポート１１ａ，１１ｂで優先的に廃棄されるフレームが選択される。
【００２２】
これにより、入力ポート側で、タグ情報を含むフレームの出力先を考慮して出力ポート側でのタグ情報毎のフレーム滞留を予測し、フレームの優先廃棄を判断できる。そして、出力ポート側で、タグ情報毎にフレームを分類しなくても、入力ポート側での優先廃棄の判断に基づいて、フレームを廃棄することができる。例えば、通信装置１０が、ＶＬＡＮをサポートするレイヤ２スイッチである場合、出力ポートそれぞれに対して４０９４個のキューを設けなくても、ＶＬＡＮ毎の帯域制御が可能となる。このように、タグ情報毎の帯域制御を入力ポート側と出力ポート側で分担して、効率的に行うことが可能となる。よって、出力ポート側の処理負荷、回路規模、消費電力などを抑制できる。
【００２３】
［第２の実施の形態］
図２は、第２の実施の形態の通信システムを示す図である。第２の実施の形態の通信システムは、サーバ装置２１，２２，２３を含む複数のサーバ装置、ストレージ装置３１，３２，３３を含む複数のストレージ装置、ルータ４１、管理装置４２、クライアント装置４４およびスイッチ１００，１００ａ，１００ｂを含む。この通信システムは、例えば、データセンタのシステムとして実装することができる。
【００２４】
サーバ装置２１，２２，２３およびスイッチ１００は、サーバラック２０に格納されている。ストレージ装置３１，３２，３３およびスイッチ１００ａは、ストレージラック３０に格納されている。この通信システムは、複数のサーバラックを含んでもよく、複数のストレージラックを含んでもよい。ルータ４１は、内側（ラック側）と外側（ネットワーク４３）側を分離する。ルータ４１の内側には、レイヤ２ネットワークが形成される。
【００２５】
サーバ装置２１，２２，２３は、複数のユーザが利用できるコンピュータである。サーバ装置２１，２２，２３上では、ユーザ間で情報処理を分離するため、ユーザ毎に１またはそれ以上の仮想マシン（ＶＭ：Virtual Machine）が動作する。例えば、仮想マシン毎にオペレーティングシステム（ＯＳ：Operating System）が実行される。仮想マシンは、ユーザ間でレイヤ２通信を分離するため、ＶＬＡＮタグを含むフレームを送信する。例えば、ユーザ毎に１またはそれ以上のＶＬＡＮ−ＩＤが割り当てられる。
【００２６】
ストレージ装置３１，３２，３３は、サーバ装置２１，２２，２３上で動作する仮想マシンが利用するデータやプログラムを管理するコンピュータである。ストレージ装置３１，３２，３３は、データやプログラムを記憶するため、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Flash Solid State Drive）などの不揮発性の記憶装置を備えてもよい。
【００２７】
ルータ４１は、ＩＰレイヤ（レイヤ３）のパケット処理を行う通信装置である。ルータ４１は、レイヤ３スイッチやレイヤ３を超える通信処理を行う通信装置であってもよい。ルータ４１は、ネットワーク４３とスイッチ１００ｂの間でパケットを転送する。
【００２８】
管理装置４２は、管理者が使用する端末装置としてのコンピュータである。管理装置４２は、例えば、スイッチ１００，１００ａ，１００ｂの設定を変更するために用いる。
クライアント装置４４は、ユーザが使用する端末装置としてのコンピュータである。クライアント装置４４は、ネットワーク４３を介してルータ４１の内側のレイヤ２ネットワークにアクセスし、当該ユーザに割り当てられた仮想マシンに情報処理を実行させる。
【００２９】
スイッチ１００，１００ａ，１００ｂは、ＭＡＣレイヤ（レイヤ２）のフレーム処理を行う通信装置である。スイッチ１００，１００ａ，１００ｂは、レイヤ２スイッチであってもよい。スイッチ１００は、ラックレベルスイッチであり、サーバ装置２１，２２，２３と上位のスイッチ１００ｂの間でフレームを転送する。同様に、スイッチ１００ａは、ラックレベルスイッチであり、ストレージ装置３１，３２，３３と上位のスイッチ１００ｂの間でフレームを転送する。一方、スイッチ１００ｂは、集約レベルスイッチであり、ルータ４１と複数のラックの間でフレームを転送する。
【００３０】
スイッチ１００，１００ａ，１００ｂは、ＶＬＡＮをサポートする。ここで、サーバ装置２１，２２，２３で多数のユーザの仮想マシンが動作することで多数のＶＬＡＮ−ＩＤが使用される可能性があるため、スイッチ１００，１００ａ，１００ｂは、最大４０９４個のＶＬＡＮ−ＩＤを処理できるようにする。また、サーバ装置２１，２２，２３とストレージ装置３１，３２，３３との間は、フレームの伝送量が多いため、スイッチ１００，１００ａ，１００ｂは、高レートでフレームを処理できるようにする。なお、スイッチ１００，１００ａ，１００ｂは、第１の実施の形態の通信装置１０の一例である。
【００３１】
図３は、フレームのフォーマット例を示す図である。スイッチ１００，１００ａ，１００ｂは、図３に示すようなフレームを転送する。
このフレーム例は、７バイトのプリアンブル、１バイトのＳＦＤ（Start Frame Delimiter）、６バイトの宛先ＭＡＣアドレス、６バイトの送信元ＭＡＣアドレス、４バイトのＶＬＡＮタグ、２バイトのタイプまたは長さ、４６バイト以上１５００バイト以下の可変長のデータ、および、４バイトのＦＣＳ（Frame Check Sequence）を含む。
【００３２】
プリアンブルは、ビット列“１０１０１０１０”が７バイト分だけ続いたものである。ＳＦＤは、ビット列“１０１０１０１１”である。プリアンブルおよびＳＦＤを検出することで、フレームの先頭を判断することができる。
【００３３】
宛先ＭＡＣアドレスは、フレームの宛先を示すアドレスであり、送信元ＭＡＣアドレスは、フレームの送信元を示すアドレスである。ＭＡＣアドレスは、装置に割り当てられた物理的アドレスでもよいし、仮想マシンに割り当てられた仮想的アドレスでもよい。
【００３４】
ＶＬＡＮタグは、ＶＬＡＮを識別するための情報である。ＶＬＡＮタグは、１２ビットのＶＬＡＮ−ＩＤを含む。ユーザには、１２ビットで表現できる４０９６個のＶＬＡＮ−ＩＤのうち、予約された２個を除く４０９４個を割り当てることができる。ＶＬＡＮ−ＩＤを参照することで、フレームの伝送範囲が制限される。例えば、フレームをブロードキャストするとき、ＶＬＡＮ−ＩＤによって当該フレームを出力するポートを制限できる。
【００３５】
タイプまたは長さのフィールドは、値が１５００以下の場合はデータ長を意味し、値がそれを超える場合はタイプを意味する。長さは、当該フィールドに続くデータのデータ長を示す。タイプは、上位プロトコルの種類を示す。タイプの値の例として、０ｘ０８００（ＩＰ）、０ｘ０８０６（ＡＲＰ）、０ｘ８１００（８０２．１Ｑ）などがある。
【００３６】
データのフィールドには、上位プロトコルのパケットが格納される。パケット長が６４バイト未満の場合は、６４バイトになるようにパディング用のビットを詰める。
ＦＣＳは、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス、タイプまたは長さ、および、データから算出されるＣＲＣ（Cyclic Redundancy Check）３２の値である。受信側のスイッチでＣＲＣ３２の値を再計算しＣＲＣと照合することで、ビット誤りを検出できる。
【００３７】
図４は、スイッチの構造例を示すブロック図である。スイッチ１００は、ポート１１１，１１１ａ，１１１ｂ，１１１ｃを含む複数のポート、ポート１１２、ＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃを含む複数のＭＡＣデバイス、ＭＡＣスイッチ１３０および制御部１４０を有する。スイッチ１００ａ，１００ｂも、スイッチ１００と同様のブロック構造によって実現することができる。
【００３８】
ポート１１１，１１１ａ，１１１ｂ，１１１ｃは、物理レイヤ（レイヤ１）の通信処理を行い、フレームの信号の送信および受信を行う。ポート１１１，１１１ａ，１１１ｂ，１１１ｃには、ケーブルを介して、サーバ装置２１，２２，２３やスイッチ１００ｂが接続される。例えば、ポート１１１は、プリアンブルおよびＳＦＣを検出して受信信号から各フレームを切り出し、フレームをＭＡＣデバイス１２０に出力する。また、ポート１１１は、ＭＡＣデバイス１２０から取得したフレームを伝送信号に変換して送信する。
【００３９】
ポート１１２は、スイッチ１００の管理に用いるポートである。ポート１１２には、ケーブルや他の通信装置を介して、管理装置４２が接続される。例えば、ポート１１２は、管理装置４２から受信したコマンドを制御部１４０に出力する。
【００４０】
ＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃは、ＭＡＣレイヤのフレーム処理を行う。ＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃは、ポート１１１，１１ａ，１１１ｂ，１１１ｃとそれぞれ対応付けて設けられている。ＭＡＣデバイス１２０は、フレーム処理部１２１、測定処理部１２２、廃棄処理部１２３を有する。他のＭＡＣデバイスも、ＭＡＣデバイス１２０と同様のブロック構造によって実現できる。
【００４１】
フレーム処理部１２１は、ポート１１１で受信されたフレームの誤り検出を、当該フレームに含まれるＦＣＳを用いて行う。そして、誤りが検出されなかったフレームを、測定処理部１２２に出力する。また、フレーム処理部１２１は、廃棄処理部１２３から取得したフレームに、プリアンブル、ＳＦＤおよびＦＣＳを付加し、ポート１１１に出力する。
【００４２】
測定処理部１２２は、フレーム処理部１２１から取得したフレームの受信レートを測定し、受信レートに応じてフレームにマーキングを行う。受信レートは、ＶＬＡＮ−ＩＤおよび宛先ＭＡＣアドレスに応じたグループ単位で行う。マーキングでは、“Ｒｅｄ”または“Ｇｒｅｅｎ”を示すカラービットをフレームに付加する。マーキングの判断に用いる閾値情報は、制御部１４０から通知される。そして、測定処理部１２２は、マーキングを行ったフレームを、ＭＡＣスイッチ１３０に出力する。
【００４３】
廃棄処理部１２３は、ＭＡＣスイッチ１３０から取得したフレームをキューに一旦格納し、キューからフレーム処理部１２１にフレームを順次出力する。廃棄処理部１２３は、キューに滞留するフレームが多くなる（輻輳が生じる）と、フレームに付加されたカラービットを参照して、ＭＡＣスイッチ１３０から到着するフレームの一部を廃棄する。
【００４４】
ＭＡＣスイッチ１３０は、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに基づいて、到着したフレームの出力先のポートを判定し、フレームをＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃに振り分ける。ＭＡＣスイッチ１３０は、ＭＡＣアドレステーブルを記憶するテーブル記憶部１３１を有する。ＭＡＣスイッチ１３０は、ＭＡＣアドレステーブルから、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに対応するポートを検索して、出力先を判定する。宛先ＭＡＣアドレスがＭＡＣアドレステーブルに登録されていない場合は、当該ＶＬＡＮ−ＩＤに対応する全てのポートを出力先とする（フラッディング）。
【００４５】
また、ＭＡＣスイッチ１３０は、ＭＡＣアドレスの学習を行う。ＭＡＣスイッチ１３０は、フレームが到着したポートと当該フレームの送信元ＭＡＣアドレスとを対応付けて、ＭＡＣアドレステーブルに登録する。これにより、当該ポートに当該ＭＡＣアドレスをもつ装置が接続されていることが認識される。一方で、ＭＡＣスイッチ１３０は、ＭＡＣアドレステーブルから、登録されてから一定時間経過したＭＡＣアドレスを削除する（エージング）。これは、装置間の接続関係が変更される可能性を考慮した処理である。
【００４６】
制御部１４０は、管理装置４２と連携して、スイッチ１００を制御する。例えば、制御部１４０は、フレームのマーキングを制御するための情報を測定処理部１２２に設定し、フレームの廃棄を制御するための情報を廃棄処理部１２３に設定する。
【００４７】
制御部１４０は、ＣＰＵ（Central Processing Unit）１４１、ＲＡＭ（Random Access Memory）１４２およびＲＯＭ（Read Only Memory）１４３を有する。ＣＰＵ１４１は、ＲＯＭ１４３からプログラムやデータを読み出してＲＡＭ１４２に展開し、プログラムに従った処理を行う。また、ＣＰＵ１４１は、管理装置４２からのコマンドの入力を受け付ける。ＲＡＭ１４２は、プログラムやデータを一時的に記憶する揮発性のメモリである。ＲＯＭ１４３は、プログラムやデータを記憶する不揮発性のメモリである。ＲＯＭ１４３は、書き換え可能なメモリ（例えば、フラッシュメモリ）であってもよい。
【００４８】
なお、ポート１１１，１１１ａ，１１１ｂ，１１１ｃは、第１の実施の形態のポート１１，１１ａ，１１ｂの一例である。測定処理部１２２は、第１の実施の形態の受信処理部１４の一例である。廃棄処理部１２３は、第１の実施の形態の送信処理部１５ａ，１５ｂの一例である。ＭＡＣスイッチ１３０は、第１の実施の形態の内部スイッチ１２の一例である。制御部１４０は、第１の実施の形態の制御部１３の一例である。
【００４９】
図５は、ＭＡＣアドレステーブルの例を示す図である。ＭＡＣアドレステーブル１５１は、ＭＡＣスイッチ１３０のテーブル記憶部１３１に記憶されている。ＭＡＣアドレステーブル１５１は、ポート番号、ＶＬＡＮ−ＩＤおよびＭＡＣアドレスの項目を含む。
【００５０】
ポート番号の項目には、各ポートを識別するための識別情報が登録される。ＶＬＡＮ−ＩＤの項目には、ポート番号が示すポートに対応付けられたＶＬＡＮのＶＬＡＮ−ＩＤが登録される。各ポートには、フレームの通過を許可する１またはそれ以上のＶＬＡＮが、管理装置４２によって対応付けられている。ＭＡＣアドレスの項目には、各ポートから出力され得るフレームの宛先ＭＡＣアドレスのグループが、ＶＬＡＮ毎に登録される。
【００５１】
ポート番号およびＶＬＡＮ−ＩＤの項目には、管理装置４２からのコマンドに応じて値が登録される。ＭＡＣアドレスの項目には、ＭＡＣスイッチ１３０によって値が更新される。ＭＡＣアドレステーブル１５１には、例えば、ポート番号＝１，ＶＬＡＮ−ＩＤ＝１，ＭＡＣアドレス＝Ａ，Ｈという情報が登録される。これは、例えばポート１１１がＶＬＡＮ＃１のフレームの通過を許容し、ポート１１１にはアドレスＡの装置（または仮想マシン）とアドレスＨの装置（または仮想マシン）とが接続されていることを示す。
【００５２】
図６は、帯域制御テーブルの例を示す図である。帯域制御テーブル１５２は、制御部１４０によって生成されて、例えば、ＲＡＭ１４２に記憶される。帯域制御テーブル１５２は、ＶＬＡＮ毎の帯域制御を実現するために用いられる。帯域制御テーブル１５２は、ポート番号、ＶＬＡＮ−ＩＤ、ＭＡＣアドレス、帯域幅および閾値の項目を含む。
【００５３】
ポート番号の項目には、各ポートを識別するための識別情報が登録される。ＶＬＡＮ−ＩＤの項目には、ポート毎に１またはそれ以上のＶＬＡＮ−ＩＤが登録される。ＭＡＣアドレスの項目には、ＭＡＣアドレスのグループが、各ポートのＶＬＡＮ毎に登録される。帯域幅の項目には、フレームの送信レートの上限値（例えば、ビット毎秒（ｂｐｓ：bit per second）の値）が、各ポートのＶＬＡＮ毎に登録される。帯域幅は、管理者によって指定される。閾値の項目には、各ポートのＶＬＡＮ毎に、当該ポートから入力される当該ＶＬＡＮのフレームの受信レートの上限値が登録される。
【００５４】
第２の実施の形態では、ポート番号、ＶＬＡＮ−ＩＤ、ＭＡＣアドレスおよび帯域幅の項目には、管理装置４２からのコマンドに応じて値が登録される。閾値の項目には、制御部１４０によって算出された値が登録される。閾値の算出方法の詳細は後述する。なお、ＶＬＡＮ−ＩＤとＭＡＣアドレスのグループと閾値の対応関係を示す情報は、制御部１４０からＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃに通知される。
【００５５】
例えば、帯域制御テーブル１５２には、ポート番号＝３，ＶＬＡＮ−ＩＤ＝１，閾値＝Ａ＆Ｈ＝０．５Ｍｂｐｓ；Ｄ＝０．５Ｍｂｐｓという情報が登録される。これは、例えばポート１１１ｂに入力されるＶＬＡＮ＃１のフレームのうち、宛先ＭＡＣアドレス＝Ａのフレームと宛先ＭＡＣアドレス＝Ｈのフレームの合計の受信レートの閾値が、０，５Ｍｂｐｓであることを示す。また、宛先ＭＡＣアドレス＝Ｄのフレームの受信レートの閾値が、０，５Ｍｂｐｓであることを示す。
【００５６】
図７は、測定処理部と制御部の第１の構造例を示すブロック図である。測定処理部１２２は、測定部１２４、受信情報記憶部１２５およびマーキング部１２６を有する。制御部１４０は、ＶＬＡＮ設定部１４４および閾値算出部１４５を有する。ＶＬＡＮ設定部１４４と閾値算出部１４５は、ＣＰＵ１４１が実行するプログラムとして実装してもよい。または、ＶＬＡＮ設定部１４４と閾値算出部１４５は、ＦＰＧＡ（Field Programmable Gate Array）などの回路で実装してもよい。
【００５７】
ＶＬＡＮ設定部１４４は、管理装置４２からコマンドを受け付け、帯域制御テーブル１５２を生成する。第２の実施の形態では、帯域制御テーブル１５２のポート番号、ＶＬＡＮ−ＩＤ、ＭＡＣアドレスおよび帯域幅の項目の情報が、管理者から指定される。
【００５８】
閾値算出部１４５は、帯域制御テーブル１５２のポート番号、ＶＬＡＮ−ＩＤ、ＭＡＣアドレスおよび帯域幅の項目の情報から、閾値の項目の情報を生成し、帯域制御テーブル１５２に登録する。そして、閾値算出部１４５は、ポート１１１についての、ＶＬＡＮ−ＩＤとＭＡＣアドレスのグループと閾値の対応情報を、測定処理部１２２に通知する。
【００５９】
測定部１２４は、フレーム処理部１２１からフレームを取得し、マーキング部１２６に出力する。また、測定部１２４は、閾値算出部１４５から通知されたＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスのグループの組み合わせ毎に、受信レートを測定する。そして、受信レートが閾値算出部１４５から通知された閾値を超えるか判定し、判定結果に応じて、マーキング部１２６にフレームのカラー（“Ｒｅｄ”または“Ｇｒｅｅｎ”）を指定する。
【００６０】
受信情報記憶部１２５は、測定部１２４が受信レートを測定するために用いる受信記録テーブルを記憶する。受信記録テーブルには、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスのグループの組み合わせ毎に、フレームの受信時刻が登録される。受信記録テーブルは、測定部１２４によって、ＶＬＡＮタグを含むフレームの受信毎に更新される。
【００６１】
マーキング部１２６は、測定部１２４から取得したフレームに、測定部１２４から指定されたカラー（“Ｒｅｄ”または“Ｇｒｅｅｎ”）を示すカラービットを付加する。そして、マーキングしたフレームを、ＭＡＣスイッチ１３０に出力する。
【００６２】
図８は、受信記録テーブルの例を示す図である。受信記録テーブル１５３は、測定部１２４によって生成されて、受信情報記憶部１２５に記憶される。受信記録テーブル１５３は、ＶＬＡＮ−ＩＤ、ＭＡＣアドレスおよび受信時刻の項目を含む。
【００６３】
ＶＬＡＮ−ＩＤの項目には、ポート１１１に対応付けられたＶＬＡＮのＶＬＡＮ−ＩＤが登録される。ＭＡＣアドレスの項目には、宛先ＭＡＣアドレスのグループがＶＬＡＮ毎に登録される。１つの宛先ＭＡＣアドレスのグループは、１つの出力ポートに対応する。受信時刻の項目には、ＶＬＡＮおよび宛先ＭＡＣアドレスのグループ毎の最終受信時刻が登録される。受信時刻は、測定部１２４で算出される。なお、測定部１２４は、閾値算出部１４５から通知された閾値を、受信記録テーブル１５３に登録しておいてもよい。
【００６４】
図９は、廃棄処理部と制御部の構造例を示すブロック図である。廃棄処理部１２３は、キュー１２７、キューモニタ１２８および廃棄判定部１２９を有する。制御部１４０は、図７で説明したモジュールに加えて廃棄設定部１４６を有する。廃棄設定部１４６は、ＣＰＵ１４１が実行するプログラムとして実装してもよい。
【００６５】
キュー１２７は、ポート１１１から送信するフレームを一時的に記憶する。キュー１２７は、ＦＩＦＯ（First-In First-Out）方式により、先に格納されたフレームから順に、フレーム処理部１２１にフレームを出力する。ただし、廃棄処理部１２３は、ＱｏＳ（Quality of Service）制御のため、優先度の異なる複数のキューを備えていてもよい。
【００６６】
キューモニタ１２８は、キュー１２７に滞留しているフレームの量（キュー長）を監視し、キュー長を廃棄判定部１２９に報告する。
廃棄判定部１２９は、ＭＡＣスイッチ１３０からフレームを取得し、フレームのカラービットとキューモニタ１２８から報告されるキュー長に基づいて、当該フレームを廃棄するか否か判定する。キュー長が閾値を超えるとき、“Ｒｅｄ”を示すカラービットが付加されたフレーム（入力ポート側で優先的に廃棄すると認定されたフレーム）を廃棄する。廃棄判定部１２９は、廃棄しないと判定したフレームを、キュー１２７に挿入する。
【００６７】
廃棄設定部１４６は、キュー長の閾値を廃棄判定部１２９に設定する。キュー長の閾値は、例えば、管理者が操作する管理装置４２からのコマンドによって指定される。
図１０は、閾値設定の第１の例を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。
【００６８】
（ステップＳ１１）ＶＬＡＮ設定部１４４は、管理装置４２からＶＬＡＮ設定の入力を受け付け、帯域制御テーブル１５２を生成する。ＶＬＡＮ設定の入力には、ポート番号、ＶＬＡＮ−ＩＤ、宛先ＭＡＣアドレスのグループおよび帯域幅の情報が含まれる。
【００６９】
（ステップＳ１２）閾値算出部１４５は、帯域制御テーブル１５２に登録されているＶＬＡＮ−ＩＤの中から、ＶＬＡＮ−ＩＤを１つ選択する。
（ステップＳ１３）閾値算出部１４５は、出力ポートとして、ステップＳ１２で選択したＶＬＡＮ−ＩＤが対応付けられているポートを１つ選択する。
【００７０】
（ステップＳ１４）閾値算出部１４５は、帯域制御テーブル１５２から、ステップＳ１２で選択したＶＬＡＮ−ＩＤおよびステップＳ１３で選択したポートに対応する帯域幅を特定する。そして、特定した帯域幅を、選択したＶＬＡＮ−ＩＤが対応付けられている、入力ポートとしての他のポートに配分する。例えば、特定した帯域幅を他のポートの数で割ることで、帯域幅を他のポートに均等に配分する。
【００７１】
（ステップＳ１５）閾値算出部１４５は、ステップＳ１３で、条件に合致する全てのポートを選択したか判断する。全てのポートを選択した場合、処理をステップＳ１６に進める。未選択のポートがある場合、処理をステップＳ１３に進める。
【００７２】
（ステップＳ１６）閾値算出部１４５は、ステップＳ１２で、全てのＶＬＡＮ−ＩＤを選択したか判断する。全てのＶＬＡＮ−ＩＤを選択した場合、処理をステップＳ１７に進める。未選択のＶＬＡＮ−ＩＤがある場合、処理をステップＳ１２に進める。
【００７３】
（ステップＳ１７）閾値算出部１４５は、ステップＳ１４で配分した帯域幅を、各入力ポートの閾値として帯域制御テーブル１５２に登録する。閾値は、ＶＬＡＮ−ＩＤと出力ポート側の宛先ＭＡＣアドレスのグループと対応付けられるようにする。閾値算出部１４５は、閾値の情報をＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃに通知する。
【００７４】
例えば、図６の帯域制御テーブル１５２の例の場合、ポート１１１（ポート＃１）のＶＬＡＮ＃１に割り当てられた帯域１Ｍｂｐｓが、ＶＬＡＮ＃１に使用される他のポート１１１ｂ（ポート＃２）とポート１１１ｃ（ポート＃３）に均等配分されている。これにより、ポート＃２では、ポート＃１から出力されることになるＶＬＡＮ＃１のフレーム（宛先ＭＡＣアドレスがＡまたはＨのフレーム）の閾値が、０．５Ｍｐｂｓに設定される。
【００７５】
同様に、ポート＃２のＶＬＡＮ＃１に割り当てられた帯域１Ｍｂｐｓが、他のポート＃１，＃３に均等配分される。ポート＃３のＶＬＡＮ＃１に割り当てられた帯域１Ｍｂｐｓが、他のポート＃１，＃２に均等配分される。これにより、ポート＃１では、ポート＃２から出力されることになるフレーム（宛先ＭＡＣアドレスがＤのフレーム）の閾値が、０．５Ｍｐｂｓに設定される。また、ポート＃３から出力されることになるフレーム（宛先ＭＡＣアドレスがＥのフレーム）の閾値が、０．５Ｍｐｂｓに設定される。
【００７６】
なお、以上の説明では、出力ポートの帯域幅を、同一ＶＬＡＮの他の入力ポートに均等配分することとしたが、他の方法で配分するようにしてもよい。例えば、各入力ポートに接続されたサーバ装置上で動作している仮想マシンの数を用いて重み付けして、帯域幅を配分してもよい。動作する仮想マシンの多いサーバ装置が接続されたポートの閾値を大きくすることで、フレームを送信する仮想マシンに公平に帯域を割り当てることができる。サーバ装置２１，２２，２３上で動作している仮想マシンの数および各仮想マシンが使用するＶＬＡＮ−ＩＤは、例えば、スイッチ１００，１００ａ，１００ｂがサーバ装置２１，２２，２３に問い合わせることで知ることができる。
【００７７】
図１１は、受信処理の例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。
（ステップＳ２１）測定部１２４は、フレーム処理部１２１から取得したフレームに含まれるＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスを確認する。
【００７８】
（ステップＳ２２）測定部１２４は、ステップＳ２１で確認したＶＬＡＮ−ＩＤが、ポート１１１に対して登録されているＶＬＡＮ−ＩＤか判断する。登録されている場合、処理をステップＳ２３に進める。登録されていない場合、不適切なフレームの受信であると判断し、当該フレームを廃棄して処理を終了する。
【００７９】
（ステップＳ２３）測定部１２４は、受信情報記憶部１２５に記憶された受信記録テーブル１５３に、ステップＳ２１で確認した宛先ＭＡＣアドレスが登録されているか判断する。宛先ＭＡＣアドレスが登録されている場合、処理をステップＳ２４に進める。登録されていない場合、処理をステップＳ２９に進める。
【００８０】
（ステップＳ２４）測定部１２４は、受信記録テーブル１５３から、ステップＳ２１で確認したＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに対応する前回の受信時刻を検索する。
（ステップＳ２５）測定部１２４は、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに対応する受信時刻として、現在時刻を受信記録テーブル１５３に記録する。
【００８１】
（ステップＳ２６）測定部１２４は、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに応じた受信レートを算出する。受信レートは、例えば、フレームのデータ長を、現在時刻とステップＳ２４で検索した前回の受信時刻との差（受信間隔）で割ることで算出できる。
【００８２】
（ステップＳ２７）測定部１２４は、ステップＳ２６で算出した受信レートが、閾値算出部１４５で算出された、ＶＬＡＮ−ＩＤと宛先ＭＡＣアドレスに応じた閾値を超えるか判断する。受信レートが閾値を超える場合、処理をステップＳ２９に進める。受信レートが閾値以下の場合、処理をステップＳ２８に進める。
【００８３】
（ステップＳ２８）測定部１２４は、フレーム処理部１２１から取得したフレームをマーキング部１２６に出力し、カラーとして“Ｇｒｅｅｎ”をマーキング部１２６に指定する。マーキング部１２６は、フレームに“Ｇｒｅｅｎ”を示すカラービットを付加し、マーキングしたフレームをＭＡＣスイッチ１３０に出力する。
【００８４】
（ステップＳ２９）測定部１２４は、フレーム処理部１２１から取得したフレームをマーキング部１２６に出力し、カラーとして“Ｒｅｄ”をマーキング部１２６に指定する。マーキング部１２６は、フレームに“Ｒｅｄ”を示すカラービットを付加し、マーキングしたフレームをＭＡＣスイッチ１３０に出力する。
【００８５】
図１２は、送信処理の例を示すフローチャートである。以下、図１２に示す処理をステップ番号に沿って説明する。
（ステップＳ３１）廃棄判定部１２９は、ＭＡＣスイッチ１３０から取得したフレームに付加されているカラービットを確認する。
【００８６】
（ステップＳ３２）廃棄判定部１２９は、ステップＳ３１で確認したカラービットが“Ｒｅｄ”を示しているか判断する。カラービットが“Ｒｅｄ”の場合、処理をステップＳ３３に進める。カラービットが“Ｇｒｅｅｎ”の場合、処理をステップＳ３５に進める。
【００８７】
（ステップＳ３３）廃棄判定部１２９は、キューモニタ１２８により測定されたキュー長（キュー１２７に滞留しているフレームの量）を確認する。
（ステップＳ３４）廃棄判定部１２９は、ステップＳ３３で確認したキュー長が、閾値を超えるか判断する。キュー長が閾値を超える場合、処理をステップＳ３６に進める。キュー長が閾値以下の場合、処理をステップＳ３５に進める。
【００８８】
（ステップＳ３５）廃棄判定部１２９は、ＭＡＣスイッチ１３０から取得したフレームをキュー１２７に挿入する。当該フレームは、キュー１２７に一時的に保持された後、フレーム処理部１２１に出力されてポート１１１から送信される。
【００８９】
（ステップＳ３６）廃棄判定部１２９は、当該フレームを廃棄する。
第２の実施の形態では、入力ポート側でＶＬＡＮ毎の帯域幅を考慮してフレームをマーキングするため、出力ポート側ではカラービットに基づいて廃棄するフレームを選択すればよく、ＶＬＡＮ毎にフレームを管理しなくてもよい。これに対し、入力ポート側でＶＬＡＮ毎の帯域幅を考慮しない場合、出力ポート側でＶＬＡＮ毎にフレームを管理することになる。以下、出力ポート側でＶＬＡＮ毎にフレームを管理するスイッチの例を挙げる。
【００９０】
図１３は、廃棄処理部の他の構造例を示すブロック図である。出力ポート側でＶＬＡＮ毎にフレームを管理する場合、ＭＡＣスイッチ１３０とフレーム処理部１２１の間に、廃棄処理部１６０が設けられる。廃棄処理部１６０は、分離部１６１、キューの集合１６２（キュー＃１〜＃４０９４）およびスケジューラ１６３を有する。
【００９１】
分離部１６１は、ＭＡＣスイッチ１３０から取得したフレームを、フレームに含まれるＶＬＡＮ−ＩＤに応じてキュー＃１〜＃４０９４に振り分ける。キューの集合１６２は、ユーザに割り当て可能な４０９４個のＶＬＡＮ−ＩＤに対応する４０９４個のキューを含む。各キューには、同一のＶＬＡＮ−ＩＤを含むフレームが格納される。スケジューラ１６３は、フレームの送信をスケジューリングする。スケジューラ１６３は、キュー＃１〜＃４０９４から、所定のアルゴリズムに従ってフレームを抽出し、フレーム処理部１２１に出力する。アルゴリズムとしては、例えば、ラウンドロビン方式が用いられる。
【００９２】
前述の廃棄処理部１２３を用いることで、廃棄処理部１６０と比べて、キューの数を削減でき回路規模を縮小できる。また、フレームを多数のキューに振り分ける大規模回路を設けなくてよく、また、多数のキューに格納されたフレームをスケジューリングする大規模回路を設けなくてよく、回路規模を縮小できる。
【００９３】
第２の実施の形態のスイッチ１００，１００ａ，１００ｂによれば、入力ポート側で、ＶＬＡＮタグを含むフレームの出力先を考慮して出力ポート側でのＶＬＡＮ毎のフレーム滞留を予測し、フレームを優先付けできる。そして、出力ポート側で、ＶＬＡＮ毎にフレームを分類しなくても、入力ポート側での優先付けに基づいてフレームを廃棄することができる。よって、ＶＬＡＮ毎の帯域制御を、入力ポート側と出力ポート側で分担して効率的に行うことができ、処理負荷、回路規模および消費電力を抑制できる。
【００９４】
また、出力ポート側のＶＬＡＮ毎の帯域幅を指定すれば、帯域幅を自動的に入力ポート側に配分して、入力ポート毎の閾値を自動的に算出できる。また、ＶＬＡＮを対応付けるポートの増減に応じて、帯域幅の配分を自動的に再計算できる。よって、管理者の操作負担を軽減でき、また、設定ミスを抑制できる。
【００９５】
［第３の実施の形態］
次に、第３の実施の形態を説明する。第２の実施の形態との差異を中心に説明し、同様の事項については説明を省略する。第３の実施の形態のスイッチは、アドレス学習の結果を用いることで、管理者のＶＬＡＮ設定の負担を軽減する。
【００９６】
第３の実施の形態のスイッチは、図４に示した第２の実施の形態のスイッチ１００と同様のブロック構造によって実現できる。ただし、ＣＰＵ１４１およびＲＡＭ１４２を用いて実行されるプログラムのモジュールが、スイッチ１００と異なる。
【００９７】
図１４は、測定処理部と制御部の第２の構造例を示すブロック図である。第３の実施の形態のスイッチは、図７に示した制御部１４０に代えて制御部１４０ａを用いる。制御部１４０ａは、ＶＬＡＮ設定部１４４に加えて、閾値算出部１４５ａおよびテーブル監視部１４７を有する。
【００９８】
テーブル監視部１４７は、テーブル記憶部１３１に記憶されたＭＡＣアドレステーブル１５１を監視する。例えば、テーブル監視部１４７は、ＣＡＭ（Content Addressable Memory）スヌーパとして実装される。テーブル監視部１４７は、定期的にＭＡＣアドレステーブル１５１にアクセスして（ポーリング）、更新の有無を確認してもよい。また、ＭＡＣアドレステーブル１５１が更新されたときに、ＭＡＣスイッチ１３０から更新イベントを取得するようにしてもよい。ＭＡＣアドレステーブル１５１の更新が検出されると、テーブル監視部１４７は、追加または削除されたＭＡＣアドレスを、ポート番号およびＶＬＡＮ−ＩＤと対応付けて閾値算出部１４５ａに通知する。
【００９９】
閾値算出部１４５ａは、ＶＬＡＮ設定部１４４が管理装置４２からコマンドを受け付けて帯域制御テーブル１５２を生成すると、第２の実施の形態の閾値算出部１４５と同様、ＶＬＡＮ−ＩＤおよび宛先ＭＡＣアドレスのグループの組み合わせ毎の閾値を算出する。また、閾値算出部１４５ａは、テーブル監視部１４７から、ＭＡＣアドレスの追加または削除の通知を受けると、閾値に対応する宛先ＭＡＣアドレスのグループを更新する。そして、更新内容をＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃに通知する。
【０１００】
図１５は、閾値設定の第２の例を示すフローチャートである。
（ステップＳ４１）ＶＬＡＮ設定部１４４は、管理装置４２からＶＬＡＮ設定の入力を受け付けたか判断する。入力を受け付けた場合、処理をステップＳ４２に進める。受け付けていない場合、処理をステップＳ４９に進める。
【０１０１】
（ステップＳ４２〜Ｓ４８）図１０に示したステップＳ１１〜Ｓ１７と同様の処理が実行されるため、説明を省略する。
（ステップＳ４９）テーブル監視部１４７は、アドレス学習によってＭＡＣスイッチ１３０のＭＡＣアドレステーブル１５１が更新されたか判断する。更新された場合、処理をステップＳ５０に進める。更新されていない場合、処理を終了する。
【０１０２】
（ステップＳ５０）閾値算出部１４５ａは、帯域制御テーブル１５２のＭＡＣアドレスおよび閾値の項目を更新して、閾値に対応する宛先ＭＡＣアドレスのグループを変える。閾値算出部１４５ａは、更新内容をＭＡＣデバイス１２０，１２０ａ，１２０ｂ，１２０ｃに通知する。ＭＡＣデバイス１２０の測定部１２４は、受信情報記憶部１２５に記憶された受信記録テーブル１５３のＭＡＣアドレスの項目を更新する。
【０１０３】
第３の実施の形態のスイッチによれば、第２の実施の形態と同様の効果が得られる。また、第３の実施の形態のスイッチでは、アドレス学習によるＭＡＣアドレステーブル１５１の更新と連動させて、自動的に帯域制御テーブル１５２が更新される。よって、管理者の操作負担を更に軽減でき、また、設定ミスを抑制できる。
【符号の説明】
【０１０４】
１０  通信装置
１１，１１ａ，１１ｂ  ポート
１２  内部スイッチ
１３  制御部
１４  受信処理部
１４ａ  閾値情報
１５ａ，１５ｂ  送信処理部
【図１】
0005655692.tif 000002
【図２】
0005655692.tif 000003
【図３】
0005655692.tif 000004
【図４】
0005655692.tif 000005
【図５】
0005655692.tif 000006
【図６】
0005655692.tif 000007
【図７】
0005655692.tif 000008
【図８】
0005655692.tif 000009
【図９】
0005655692.tif 000010
【図１０】
0005655692.tif 000011
【図１１】
0005655692.tif 000012
【図１２】
0005655692.tif 000013
【図１３】
0005655692.tif 000014
【図１４】
0005655692.tif 000015
【図１５】
0005655692.tif 000016