(57)【特許請求の範囲】
【請求項１】
同じポート番号が振られている第１網側入力ポートと第１網側出力ポートの組を複数有すると共に、同じポート番号が振られている第２網側入力ポートと第２網側出力ポートの組を複数有し、いずれかの第１網側入力ポートから入力されたフレームを所定の第２網側出力ポートに与え、いずれかの第２網側入力ポートから入力されたフレームを所定の第１網側出力ポートに与える通信装置において、
ポート番号とＭＡＣアドレスとの組を登録しているＭＡＣアドレス学習記憶手段と、
外部から与えられたＭＡＣアドレスを含む、ポート番号とＭＡＣアドレスとの組が上記ＭＡＣアドレス学習記憶手段にあるか否かを検索させる検索手段と、
検索できないことを条件として、外部から与えられたＭＡＣアドレスとポート番号との組を上記ＭＡＣアドレス学習記憶手段に登録する登録手段と、
入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから送信元ＭＡＣアドレスを抽出してポート番号と共に、上記検索手段及び上記登録手段に与えて上記ＭＡＣアドレス学習記憶手段への登録を促す送信元アドレス抽出手段と、
入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから宛先ＭＡＣアドレスを抽出して上記検索手段に与えて、上記ＭＡＣアドレス学習記憶手段から宛先ＭＡＣアドレスに対応するポート番号を取得させる宛先アドレス抽出手段と、
宛先ＭＡＣアドレスに対応するポート番号が取得できたときに、そのポート番号を有する出力ポートを入力されたフレームを出力させる出力ポートに設定すると共に、宛先ＭＡＣアドレスに対応するポート番号が取得できないときに、フレーム転送方向の全ての出力ポートを入力されたフレームを出力させる出力ポートに設定して出力させる出力ポート設定手段と、
上記ＭＡＣアドレス学習記憶手段の負荷を監視し、高負荷のときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる高負荷時動作制限手段とを有し、
フレームとして、一般フレームの他に優先フレームを用意し、
上記高負荷時動作制限手段は、入力されたフレームが優先フレームの場合に高負荷と判断する基準を、入力されたフレームが一般フレームの場合に高負荷と判断する基準より高め、入力されたフレームが優先フレームである場合には、優先フレーム用の基準で高負荷と判断したときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる
ことを特徴とする通信装置。
【請求項２】
同じポート番号が振られている第１網側入力ポートと第１網側出力ポートの組を複数有すると共に、同じポート番号が振られている第２網側入力ポートと第２網側出力ポートの組を複数有し、いずれかの第１網側入力ポートから入力されたフレームを所定の第２網側出力ポートに与え、いずれかの第２網側入力ポートから入力されたフレームを所定の第１網側出力ポートに与える通信装置に搭載されたコンピュータを、
ポート番号とＭＡＣアドレスとの組を登録しているＭＡＣアドレス学習記憶手段と、
外部から与えられたＭＡＣアドレスを含む、ポート番号とＭＡＣアドレスとの組が上記ＭＡＣアドレス学習記憶手段にあるか否かを検索させる検索手段と、
検索できないことを条件として、外部から与えられたＭＡＣアドレスとポート番号との組を上記ＭＡＣアドレス学習記憶手段に登録する登録手段と、
入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから送信元ＭＡＣアドレスを抽出してポート番号と共に、上記検索手段及び上記登録手段に与えて上記ＭＡＣアドレス学習記憶手段への登録を促す送信元アドレス抽出手段と、
入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから宛先ＭＡＣアドレスを抽出して上記検索手段に与えて、上記ＭＡＣアドレス学習記憶手段から宛先ＭＡＣアドレスに対応するポート番号を取得させる宛先アドレス抽出手段と、
宛先ＭＡＣアドレスに対応するポート番号が取得できたときに、そのポート番号を有する出力ポートを入力されたフレームを出力させる出力ポートに設定すると共に、宛先ＭＡＣアドレスに対応するポート番号が取得できないときに、フレーム転送方向の全ての出力ポートを入力されたフレームを出力させる出力ポートに設定して出力させる出力ポート設定手段と、
上記ＭＡＣアドレス学習記憶手段の負荷を監視し、高負荷のときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる高負荷時動作制限手段として機能させるものであり、
フレームとして、一般フレームの他に優先フレームを用意し、
上記高負荷時動作制限手段は、入力されたフレームが優先フレームの場合に高負荷と判断する基準を、入力されたフレームが一般フレームの場合に高負荷と判断する基準より高め、入力されたフレームが優先フレームである場合には、優先フレーム用の基準で高負荷と判断したときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる
ことを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信装置及びプログラムに関し、例えば、イーサネット（登録商標）のパケットを利用して通信を行う装置におけるＭＡＣアドレスの学習や学習したＭＡＣアドレスに基づいた制御に適用し得るものである。
【背景技術】
【０００２】
従来、イーサネットのパケットなどを使用する通信装置のＭＡＣアドレスの学習方法として、例えば、特許文献１に記載の方法がある。
【０００３】
特許文献１によれば、ＭＡＣブロードキャストフレームを重複して受信させることのないように、ＭＡＣフレームを受信したとき、受信したＭＡＣフレームから抽出した送信元アドレス（ＳＡ：Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）をキーとしてアドレス学習テーブルを検索し、この送信元アドレスがアドレス学習テーブルに登録（学習）され、既に学習されている場合はこれを登録しないで廃棄する手段を備えていた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−１２２３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、近年のネットワークトラヒックは増加しており、高トラヒックに対応するためにネットワークの帯域を増強する必要があり、例えば、１Ｇｉｇａｂｉｔ／ｓｅｃ、１０Ｇｉｇａｂｉｔ／ｓｅｃなどの通信帯域が必要となってきた。これに伴い、通信装置のＭＡＣアドレスの学習をフレーム毎に行うためには、ＭＡＣアドレス学習の高速化が必要である。
【０００６】
しかし、高速化には、メモリの増大、処理の並列化、処理速度の向上のためのクロック速度の向上が必要であり、消費電力の増大やコストの上昇が懸念される。
【０００７】
とはいえ、そのまま処理能力を向上させない場合、制御時間の増大やＭＡＣアドレス学習・検索の処理遅延によって、主信号の処理が間に合わないことによるフレーム廃棄、若しくはフラッディングが起こる可能性があり、結果としてスループットが低下する恐れがあった。
【０００８】
本発明は、以上の点に鑑みてなされたものであり、主信号（ユーザデータ）に及ぼす影響が少なくなるようにＭＡＣアドレスの検索・学習を実行でき、負荷を軽減させてスループット低下を防止できる通信装置及びプログラムを提供しようとしたものである。
【課題を解決するための手段】
【０００９】
第１の本発明は、同じポート番号が振られている第１網側入力ポートと第１網側出力ポートの組を複数有すると共に、同じポート番号が振られている第２網側入力ポートと第２網側出力ポートの組を複数有し、いずれかの第１網側入力ポートから入力されたフレームを所定の第２網側出力ポートに与え、いずれかの第２網側入力ポートから入力されたフレームを所定の第１網側出力ポートに与える通信装置において、（１）ポート番号とＭＡＣアドレスとの組を登録しているＭＡＣアドレス学習記憶手段と、（２）外部から与えられたＭＡＣアドレスを含む、ポート番号とＭＡＣアドレスとの組が上記ＭＡＣアドレス学習記憶手段にあるか否かを検索させる検索手段と、（３）検索できないことを条件として、外部から与えられたＭＡＣアドレスとポート番号との組を上記ＭＡＣアドレス学習記憶手段に登録する登録手段と、（４）入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから送信元ＭＡＣアドレスを抽出してポート番号と共に、上記検索手段及び上記登録手段に与えて上記ＭＡＣアドレス学習記憶手段への登録を促す送信元アドレス抽出手段と、（５）入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから宛先ＭＡＣアドレスを抽出して上記検索手段に与えて、上記ＭＡＣアドレス学習記憶手段から宛先ＭＡＣアドレスに対応するポート番号を取得させる宛先アドレス抽出手段と、（６）宛先ＭＡＣアドレスに対応するポート番号が取得できたときに、そのポート番号を有する出力ポートを入力されたフレームを出力させる出力ポートに設定すると共に、宛先ＭＡＣアドレスに対応するポート番号が取得できないときに、フレーム転送方向の全ての出力ポートを入力されたフレームを出力させる出力ポートに設定して出力させる出力ポート設定手段と、（７）上記ＭＡＣアドレス学習記憶手段の負荷を監視し、高負荷のときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる高負荷時動作制限手段とを有し、（８）フレームとして、一般フレームの他に優先フレームを用意し、（９）上記高負荷時動作制限手段は、入力されたフレームが優先フレームの場合に高負荷と判断する基準を、入力されたフレームが一般フレームの場合に高負荷と判断する基準より高め、入力されたフレームが優先フレームである場合には、優先フレーム用の基準で高負荷と判断したときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させることを特徴とする。
【００１０】
第２の本発明の通信プログラムは、同じポート番号が振られている第１網側入力ポートと第１網側出力ポートの組を複数有すると共に、同じポート番号が振られている第２網側入力ポートと第２網側出力ポートの組を複数有し、いずれかの第１網側入力ポートから入力されたフレームを所定の第２網側出力ポートに与え、いずれかの第２網側入力ポートから入力されたフレームを所定の第１網側出力ポートに与える通信装置に搭載されたコンピュータを、（１）ポート番号とＭＡＣアドレスとの組を登録しているＭＡＣアドレス学習記憶手段と、（２）外部から与えられたＭＡＣアドレスを含む、ポート番号とＭＡＣアドレスとの組が上記ＭＡＣアドレス学習記憶手段にあるか否かを検索させる検索手段と、（３）検索できないことを条件として、外部から与えられたＭＡＣアドレスとポート番号との組を上記ＭＡＣアドレス学習記憶手段に登録する登録手段と、（４）入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから送信元ＭＡＣアドレスを抽出してポート番号と共に、上記検索手段及び上記登録手段に与えて上記ＭＡＣアドレス学習記憶手段への登録を促す送信元アドレス抽出手段と、（５）入力ポートに対応して設けられ、対応した入力ポートに入力されたフレームから宛先ＭＡＣアドレスを抽出して上記検索手段に与えて、上記ＭＡＣアドレス学習記憶手段から宛先ＭＡＣアドレスに対応するポート番号を取得させる宛先アドレス抽出手段と、（６）宛先ＭＡＣアドレスに対応するポート番号が取得できたときに、そのポート番号を有する出力ポートを入力されたフレームを出力させる出力ポートに設定すると共に、宛先ＭＡＣアドレスに対応するポート番号が取得できないときに、フレーム転送方向の全ての出力ポートを入力されたフレームを出力させる出力ポートに設定して出力させる出力ポート設定手段と、（７）上記ＭＡＣアドレス学習記憶手段の負荷を監視し、高負荷のときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させる高負荷時動作制限手段として機能させるものであり、（８）フレームとして、一般フレームの他に優先フレームを用意し、（９）上記高負荷時動作制限手段は、入力されたフレームが優先フレームの場合に高負荷と判断する基準を、入力されたフレームが一般フレームの場合に高負荷と判断する基準より高め、入力されたフレームが優先フレームである場合には、優先フレーム用の基準で高負荷と判断したときに、上記検索手段による上記送信元ＭＡＣアドレスに基づいた検索と、上記登録手段の動作とを禁止させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、主信号に及ぼす影響が少なくなるようにＭＡＣアドレスの検索・学習を実行でき、負荷を軽減させてスループット低下を防止できる通信装置及びプログラムを提供できる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態に係る通信装置の構成を、ＭＡＣアドレス学習・制御面から示すブロック図である。
【図２】第１の実施形態の通信装置におけるＭＡＣアドレス学習部の詳細構成を示すブロック図である。
【図３】第１の実施形態の通信装置におけるＭＡＣアドレス学習テーブル部の詳細構成を示すブロック図である。
【図４】第１の実施形態に係る通信装置の動作を示すフローチャートである。
【図５】第２の実施形態に係る通信装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
（Ａ）第１の実施形態
以下、本発明による通信装置及び通信プログラムの第１の実施形態を、図面を参照しながら説明する。
【００１４】
（Ａ−１）第１の実施形態の構成
図１は、第１の実施形態に係る通信装置の構成を、ＭＡＣアドレス学習・制御面から示すブロック図である。第１の実施形態の通信装置１におけるＭＡＣアドレス学習・制御構成は、ハードウェア的に構成されても良く、また、ＣＰＵと、ＣＰＵが実行するプログラムを中心としたソフトウェア的に構成されても良く、いずれにせよ、機能的には図１で表すことができる。
【００１５】
この通信装置１は、レイヤ２の中継機能を担うブリッジ装置であり、例えば、イーサネットを採用しているＬＡＮと広域網との間の中継を行うものである。図１では、通信装置１が、ＬＡＮケーブルを収容する端末側に２つのポート、広域網側に２つのポートを有し、送信方向にポートの振り分けが必要なものである。なお、ポート数は２に限定されないことは勿論である。
【００１６】
符号Ｐｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉはそれぞれ、端末側の２つのポートの入力側を表しており、符号Ｐｏｒｔ３Ｏ、Ｐｏｒｔ４Ｏはそれぞれ、広域網側に２つのポートの出力側を表している。ポートＰｏｒｔ１Ｉ、Ｐｏｒｔ２ＩからポートＰｏｒｔ３Ｏ、Ｐｏｒｔ４Ｏへ向かう送信方向（以下、上り方向と呼ぶ）の伝送経路上には、Ｐｏｒｔ１用ＭＡＣアドレス学習部２−１、Ｐｏｒｔ２用ＭＡＣアドレス学習部２−２及び振り分け・フラッディング部３−Ｕが設けられている。
【００１７】
また、符号Ｐｏｒｔ３Ｉ、Ｐｏｒｔ４Ｉはそれぞれ、広域網側の２つのポートの入力側を表しており、符号Ｐｏｒｔ１Ｏ、Ｐｏｒｔ２Ｏはそれぞれ、端末側に２つのポートの出力側を表している。ポートＰｏｒｔ３Ｉ、Ｐｏｒｔ４ＩからポートＰｏｒｔ１Ｏ、Ｐｏｒｔ２Ｏへ向かう送信方向（以下、下り方向と呼ぶ）の伝送経路上には、Ｐｏｒｔ３用ＭＡＣアドレス学習部２−３、Ｐｏｒｔ４用ＭＡＣアドレス学習部２−４及び振り分け・フラッディング部３−Ｄが設けられている。
【００１８】
各ＭＡＣアドレス学習部２−１〜２−４はそれぞれ、ＭＡＣアドレス学習テーブル部４と接続され、ＭＡＣアドレス学習テーブル部４と情報を授受できるようになされている。
【００１９】
図２は、ＭＡＣアドレス学習部２（２−１〜２−４）の詳細構成を示すブロック図である。ＭＡＣアドレス学習部２は、ＳＡ抽出処理部１０と、ＤＡ抽出処理部１１とを有する。
【００２０】
図３は、ＭＡＣアドレス学習テーブル部４の詳細構成を示すブロック図である。ＭＡＣアドレス学習テーブル部４は、ＭＡＣアドレス学習テーブル２０と、ＳＡ検索部２１と、ＳＡ学習部２２と、ＤＡ検索部２３と、高負荷監視・通知部２４とを有する。
【００２１】
上り方向に係るＭＡＣアドレス学習部２−１、２−２のＳＡ抽出処理部１０はそれぞれ、対応する端末側ポートＰｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉから入力された上りフレームから、送信元アドレスＳＡを抽出し、ＭＡＣアドレス学習テーブル部４に通知するものである。下り方向に係るＭＡＣアドレス学習部２−３、２−４のＳＡ抽出処理部１０はそれぞれ、対応する広域網側ポートＰｏｒｔ３Ｉ、Ｐｏｒｔ４Ｉから入力された下りフレームから、送信元アドレスＳＡを抽出し、ＭＡＣアドレス学習テーブル部４に通知するものである。
【００２２】
ＭＡＣアドレス学習テーブル部４においては、いずれかのＭＡＣアドレス学習部２−１〜２−４から、受信フレームの送信元アドレスＳＡが通知されると、ＳＡ検索部２１がＭＡＣアドレス学習テーブル２０上から検索し、ＭＡＣアドレス学習テーブル２０上に登録されていない状態（未学習）である場合は、ＳＡ学習部２２が、ＭＡＣアドレス学習テーブル２０に学習対象の送信元アドレスＳＡの登録を行う。登録は、送信元アドレスＳＡとフレームが転送されてきたポート番号（端末側ポート番号又は広域網側ポート番号）をセットにして行う。上述した既登録の有無の判断は、送信元アドレスＳＡとポート番号のセット全体として判断し、２つの要素のうちの一方が異なる場合には、登録されていない状態（未学習）であると判断し、登録を行う。この際、同じ送信元アドレスＳＡを有するセットが登録されている場合には、そのセットをＭＡＣアドレス学習テーブル２０から削除する。
【００２３】
学習した送信元アドレスＳＡとフレームが転送されてきたポート番号は、逆方向へのフレーム転送時に宛先アドレスＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）を検索して、そのポートにフレーム転送を振り分けるために使用される。
【００２４】
上り方向に係るＭＡＣアドレス学習部２−１、２−２のＤＡ抽出処理部１１はそれぞれ、対応する端末側ポートＰｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉから入力された上りフレームから、宛先アドレスＤＡを抽出し、ＭＡＣアドレス学習テーブル部４に通知し、受信フレームを与える広域網側ポートの情報を求め、返信されたる広域網側ポートの情報に応じて、振り分け・フラッディング部３−Ｕを制御するものである。下り方向に係るＭＡＣアドレス学習部２−３、２−４のＤＡ抽出処理部１１はそれぞれ、対応する端末側ポートＰｏｒｔ３Ｉ、Ｐｏｒｔ４Ｉから入力された上りフレームから、宛先アドレスＤＡを抽出し、ＭＡＣアドレス学習テーブル部４に通知し、受信フレームを与える端末側ポートの情報を求め、返信されたる端末側ポートの情報に応じて、振り分け・フラッディング部３−Ｄを制御するものである。
【００２５】
ＭＡＣアドレス学習テーブル部４においては、いずれかのＭＡＣアドレス学習部２−１〜２−４から、受信フレームの宛先アドレスＤＡが通知されると、ＤＡ検索部２３が、受信した宛先アドレスＤＡをキーにＭＡＣアドレス学習テーブル２０を検索し、その検索結果に応じた送信先ポート情報を返信する。
【００２６】
ＭＡＣアドレス学習テーブル部４のＤＡ検索部２３は、ＭＡＣアドレス学習テーブル２０に受信した宛先アドレスＤＡが登録されていない状態（未学習）である場合には、送信先ポートへの振り分けを行わずに、フラッディング動作する（送信できるポート全てに同じデータを送信する）ことを指示する送信先ポート情報を返信する。
【００２７】
これに対して、ＭＡＣアドレス学習テーブル部４のＤＡ検索部２３は、ＭＡＣアドレス学習テーブル２０上に宛先アドレスＤＡが登録されている状態（学習済み）である場合は、宛先アドレスＤＡとセットで学習されているポート（広域網側ポート又は端末側ポート）へ振り分けることを指示する送信先ポート情報を返信する。
【００２８】
振り分け・フラッディング部３−Ｕは、各ＭＡＣアドレス学習部２−１、２−２のＤＡ抽出処理部１１の制御下で、上り方向のフレームを、出力用の広域網側ポートＰｏｒｔ３Ｏ若しくはＰｏｒｔ４Ｏに振り分け、又は、出力用の広域網側ポートＰｏｒｔ３Ｏ及びＰｏｒｔ４Ｏの双方に送出するものである。また、振り分け・フラッディング部３−Ｄは、各ＭＡＣアドレス学習部２−３、２−４のＤＡ抽出処理部１１の制御下で、下り方向のフレームを、出力用の端末側ポートＰｏｒｔ１Ｏ若しくはＰｏｒｔ２Ｏに振り分け、又は、出力用の端末側ポートＰｏｒｔ１Ｏ及びＰｏｒｔ２Ｏの双方に送出するものである。
【００２９】
以上では、ＭＡＣアドレス学習に関する基本的な構成、機能を説明したが、この第１の実施形態の通信装置１は、ＭＡＣアドレス学習テーブル部４に高負荷監視・通知部２４を設け、ＭＡＣアドレス学習部２のＳＡ抽出処理部１０は、高負荷監視・通知部２４が高負荷アラームを発している状況では、送信元アドレスＳＡの抽出を行わないことを特徴としている。以下では、このような特徴構成、機能を設けた意味合いについて説明する。
【００３０】
上述のように、ＭＡＣアドレス学習においては、１フレームの処理について送信元アドレス検索、送信元アドレス学習、宛先アドレス検索の３つの機能が実施され、これら３つの機能は、上り方向と下り方向の双方向で実施される必要であり、ＭＡＣアドレス学習テーブル部４が３つの機能×２方向＝６つの機能を処理することが必要となる。
【００３１】
このような前提下において、広帯域なパケット転送、未学習のパケット、Ｌｅｎｇｔｈが短いショートパケットなどが連続した場合には、ＭＡＣアドレス学習テーブル部４での処理が間に合わなくなる可能性がある。
【００３２】
そこで、この第１の実施形態では、ＭＡＣアドレス学習テーブル部４での処理が間に合わなくなる前に、ＭＡＣアドレス学習部２が、ＭＡＣアドレス学習テーブル部４からの高負荷アラームを受け取り、負荷を軽減するためのＭＡＣ学習軽減モードに移行する。負荷を軽減するためのＭＡＣ学習軽減モードとは、ＭＡＣアドレス学習部２が高負荷アラームを受け取っている間、送信元アドレスを抽出してＭＡＣアドレス学習テーブル部４に与えるのを中止することにより、送信元アドレス検索、送信元アドレス学習の２つの機能をスキップし、ＭＡＣアドレス学習テーブル部４が宛先アドレス検索のみ実施させるモードである。
【００３３】
このＭＡＣ学習軽減モードの導入により、ユーザデータのフレーム廃棄を防ぎ、スループット低下を防ぐことができる。
【００３４】
但し、このとき送信元アドレス検索、送信元アドレス学習の２つをスキップするため、フレームを受信しても未学習となり、反対方向のフレームを処理する場合に、宛先アドレス検索を実施しても検出はできず、送信先ポートへ振り分けられず、フラッディング動作となる欠点がある。
【００３５】
因みに、宛先アドレス検索をもスキップさせた場合、送信元アドレス学習の有無に拘らず、振り分け機能が機能しないため、全てのフレームがフラッディング処理となって余計なフレーム送信を増大させる、若しくは、振り分けができないことによるフレーム廃棄が起こる可能性がある。そのため、第１の実施形態では、宛先アドレス検索はフレーム毎に実施するものとした。
【００３６】
（Ａ−２）第１の実施形態の動作
次に、以上のような構成を有する第１の実施形態に係る通信装置１の動作を説明する。以下では、図４のフローチャートを参照しながら、ある入力用のポートＰｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉ、Ｐｏｒｔ３Ｉ又はＰｏｒｔ４Ｉに転送すべきフレームが入力された際の動作を説明する。
【００３７】
フレームが入力されると（ステップＳ１０１）、そのフレームの入力ポートに対応するＭＡＣアドレス学習部２において、ＭＡＣアドレス学習テーブル部４が高負荷の状態に近いことを示す高負荷アラームがＭＡＣアドレス学習テーブル部４から出されているかどうかを判定する（ステップＳ１０２）。ＭＡＣアドレス学習部２がこの際にＭＡＣアドレス学習テーブル部４が高負荷アラームを発しているか否かを見にいくようにしても良く、また、ＭＡＣアドレス学習テーブル部４がＭＡＣアドレス学習部２内の高負荷アラームフラグを操作することとしておき、ＭＡＣアドレス学習部２がこの際に内蔵フラグの状態を見にいくようにしても良い。
【００３８】
例えば、高負荷監視・通知部２４は、ＭＡＣアドレス学習テーブル２０に登録されている、ＭＡＣアドレスとポート番号とのセットの数が第１の閾値を越えている場合に高負荷アラームを発する。これに代え、又は、これに加え、高負荷監視・通知部２４は、ＭＡＣアドレス学習テーブル２０に登録されているセット数が第２の閾値（第１の閾値より小さい）を越えており、しかも、最新所定時間でのセットの増加数が、増加数に係る閾値を越えている場合に高負荷アラームを発する。さらに例えば、セットの増加数や増加率だけに基づいて、高負荷アラームを発するか否かを決めても良い。セットの数をパラメータにするのではなく、ＭＡＣアドレス学習テーブル２０というメモリへのアクセス（書き込み、読出しなど）回数や割合（所定時間当たりのアクセス率）をパラメータとして、高負荷か否かを判断するようにしても良い。
【００３９】
高負荷アラームが出されている場合には、通信装置１は、直ちに後述するステップＳ１０７に移行（スキップ）する。この移行は、送信元アドレス検索及び送信元アドレス学習の省略になっている。
【００４０】
一方、高負荷アラームが出されていない場合、ＭＡＣアドレス学習テーブル部４において、送信元アドレスＳＡがＭＡＣアドレス学習テーブル２０から検索され、過去の学習の有無が判別される（ステップＳ１０３、Ｓ１０４）。
【００４１】
ＭＡＣアドレス学習テーブル２０から検索できない場合（すなわち、学習した結果が存在しない場合）には、送信元アドレスＳＡがＭＡＣアドレス学習テーブル２０に登録（学習）される（ステップＳ１０５）。
【００４２】
ＭＡＣアドレス学習テーブル２０から送信元アドレスＳＡが検索できた場合（すなわち、学習した結果が存在する場合）には、ＭＡＣアドレス学習テーブル２０の学習（登録）結果の更新が実行される（ステップＳ１０６）。ＭＡＣアドレス学習に上限を設けている場合、ＭＡＣアドレス学習テーブルの長時間アクセスされなくなった登録情報を削除するためにエージングタイマなどが設けられていることがある。このエージングタイマをクリアすることなどが、このステップＳ１０６での更新処理に該当する。
【００４３】
高負荷か否かを、セットの総数や増加数や増加率で判断する方法を採用している場合であれば、ステップＳ１０５やＳ１０６の処理の終了後に、高負荷か否かを改めて判断するステップを設けるようにしても良い。
【００４４】
高負荷アラームが出されていた場合には直ちに、高負荷アラームが出されていない場合には上述した送信元アドレスに係る処理の終了後に、ＭＡＣアドレス学習テーブル部４において、宛先アドレスＤＡがＭＡＣアドレス学習テーブル２０から検索され、過去の学習の有無が判別される（ステップＳ１０７、Ｓ１０８）。
【００４５】
ＭＡＣアドレス学習テーブル２０から宛先アドレスＤＡが検索できた場合（すなわち、学習した結果が存在する場合）には、テーブル２０で、そのアドレスとセットにされているポートが、今回の受信フレームを出力するポートとして指定され（ステップＳ１０９）、これに対して、ＭＡＣアドレス学習テーブル２０から宛先アドレスＤＡが検索できない場合（すなわち、学習した結果が存在しない場合）には、今回の転送方向の全ての出力ポートが、今回の受信フレームをコピー（フラッディング）して出力するポートとして指定される（ステップＳ１１０）。
【００４６】
最後に、指定ポートから、受信フレームを送出させ、図４に示す一連の処理を終了する（ステップＳ１１１）。
【００４７】
（Ａ−３）第１の実施形態の効果
第１の実施形態によれば、ＭＡＣアドレス学習において、ＭＡＣアドレス学習テーブル部での処理が間に合わないときに、送信元アドレス検索、送信元アドレス学習（学習結果の更新を含む）を省略し、宛先アドレス検索のみを実施させるようにしたので、ＭＡＣアドレス学習テーブル部での処理が間に合わないことによるユーザデータのフレーム廃棄を防ぎ、スループット低下を防ぐことができる。
【００４８】
（Ｂ）第２の実施形態
次に、本発明による通信装置及び通信プログラムの第２の実施形態を、図面を参照しながら説明する。
【００４９】
（Ｂ−１）第２の実施形態の構成
第２の実施形態の通信装置も、機能的構成は、上述した第１の実施形態に係る図１〜図３で表すことができる。
【００５０】
但し、第２の実施形態は、ＭＡＣアドレス学習部２（２−１〜２−４）のＳＡ抽出処理部１０が、対応する入力ポートＰｏｒｔ１Ｉ〜Ｐｏｒｔ４Ｉから入力されたフレームの送信元アドレスＤＡを抽出する機能に加え、そのフレームが優先フレームか否かを判定する機能を有する点が、第１の実施形態と異なっている。また、第２の実施形態は、ＭＡＣアドレス学習テーブル部４の高負荷監視・通知部２４が、ＭＡＣアドレス学習テーブル２０の高負荷状態を２段階に分けて判定し、高負荷状態の中で低いときに第１の高負荷アラームを発し、高負荷状態の中で高いときに第２の高負荷アラームを発する点が、第１の実施形態と異なっている。
【００５１】
優先フレームか否かを判定できるようにする方法は任意であり、ユーザが指定可能とする。例えば、フレームの一部に優先フレームであることを表す情報を盛り込むようにしても良い。例えば、ＤＳＣＰ（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｃｏｄｅ  Ｐｏｉｎｔ）に優先設定を行う。また例えば、パケット（フレーム）の種別で優先フレームを設定するようにしても良い。エラーメッセージや制御メッセージを取り扱うＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）パケットを優先させるように指定しても良い。さらに例えば、ＭＡＣアドレス学習テーブル２０の他に、優先フレームテーブルを設けて、ＳＡ抽出処理部１０が参照できるようにしても良い。この場合において、優先フレームテーブルには、ＭＡＣアドレスとポートとの組で優先フレームを特定させるようにしても良く、宛先及び送信元となる２つのＭＡＣアドレスの組で優先フレームを特定させるようにしても良い。
【００５２】
第１の実施形態の場合、高負荷の状態に近いことを示す高負荷アラームがある場合、送信元アドレス検索、送信元アドレス学習（登録）を省略させて、ＭＡＣアドレス学習テーブル部４の負荷を抑えることができるようにした。しかし、フレームの中には、送信元アドレス検索、送信元アドレス学習を省略させたくないフレームもあり得ることが考えられ、そのため、第２の実施形態では、優先フレームという概念を導入し、一般フレームとは多少処理を変えるようにした。
【００５３】
（Ｂ−２）第２の実施形態の動作
次に、図５のフローチャートを参照しながら、ある入力用のポートＰｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉ、Ｐｏｒｔ３Ｉ又はＰｏｒｔ４Ｉに転送すべきフレームが入力された際の、第２の実施形態に係る通信装置１の動作を説明する。なお、図５において、上述した第１の実施形態に係る図４との同一、対応ステップには同一符号を付して示している。
【００５４】
フレームが入力されると（ステップＳ１０１）、そのフレームの入力ポートに対応するＭＡＣアドレス学習部２において、第１又は第２の高負荷アラームがＭＡＣアドレス学習テーブル部４から出されているかどうかを判定する（ステップＳ２０１、Ｓ２０２）。
【００５５】
第１の高負荷アラームが出されていない場合には（ステップＳ２０１で否定結果）、送信元アドレスＳＡを検索する処理（ステップＳ１０３）に移行し、これ以降、第１の実施形態で説明した処理を実行する。
【００５６】
また、高負荷状態の中でも高い方を表す第２の高負荷アラームが出されている場合には（ステップＳ２０２で肯定結果）、入力フレームが優先フレームか否かを確認することなく、宛先アドレスＤＡを検索する処理（ステップＳ１０７）に移行し、これ以降、第１の実施形態で説明した処理を実行する。従って、この場合には、送信元アドレス検索、送信元アドレス学習（登録）は実行されない。
【００５７】
さらに、高負荷状態の中でも低い方を表す第１の高負荷アラームが出されているが、高負荷状態の中でも高い方を表す第２の高負荷アラームが出されていない場合には（ステップＳ２０２で否定結果）、入力フレームが優先フレームか否かが判別される（ステップＳ２０３）。
【００５８】
入力フレームが優先フレームでなければ（言い換えると、一般フレームであると）、第１の高負荷アラームが出されているので、宛先アドレスＤＡを検索する処理（ステップＳ１０７）に移行し、これ以降、第１の実施形態で説明した処理を実行する。従って、この場合には、送信元アドレス検索、送信元アドレス学習（登録）は実行されない。
【００５９】
これに対して、入力フレームが優先フレームであれば、第１の高負荷アラームが出されているが、送信元アドレスＳＡを検索する処理（ステップＳ１０３）に移行し、これ以降、第１の実施形態で説明した処理を実行する。
【００６０】
（Ｂ−３）第２の実施形態の効果
第２の実施形態によっても、第１の実施形態と同様な効果を奏することができる。
【００６１】
さらに、第２の実施形態によれば、ＭＡＣアドレス学習テーブル部での負荷が高いことを示す高負荷アラームを２段階にし、第１段階の高負荷アラームの状態では優先フレームに限定して送信元アドレス検索、送信元アドレス学習を実行するようにしたので、優先度が高いフレームについて適切な出力ポートの設定を行うことができる。
【００６２】
（Ｃ）他の実施形態
上記各実施形態においては、端末側のＬＡＮと、広域網との中継を行う通信装置に本発明を適用したものを示したが、通信装置が中継する２つの網は、上記組み合わせに限定されるものではない。例えば、２つのＬＡＮ間で中継する通信装置に本発明を適用することも可能である。
【００６３】
上記各実施形態では、上り方向と下り方向とで、高負荷アラームを出す基準（閾値）が同じものを示したが、方向によって、高負荷アラームを出す基準（閾値）を変えるようにしても良い。また、一方向だけ、高負荷アラームに基づく制御を適用するようにしても良い。
【００６４】
上記第２の実施形態では、優先フレームと一般フレームとで処理をスキップする条件を変えたものを示したが、優先フレームも、優先度が異なる複数の優先フレームを設け、各優先度で処理をスキップする条件を変更するようにしても良い。また、上り方向と下り方向の一方向だけ優先フレームと一般フレームとの概念を導入するようにしても良い。さらに、上り方向と下り方向とで優先フレームの段階数を変えるようにしても良い。
【符号の説明】
【００６５】
１…通信装置、Ｐｏｒｔ１Ｉ、Ｐｏｒｔ２Ｉ…上り方向入力ポート、Ｐｏｒｔ３Ｏ、Ｐｏｒｔ４Ｏ…上り方向出力ポート、Ｐｏｒｔ３Ｉ、Ｐｏｒｔ４Ｉ…下り方向入力ポート、Ｐｏｒｔ１Ｏ、Ｐｏｒｔ２Ｏ…下り方向出力ポート、２、２−１〜２−４…ＭＡＣアドレス学習部、３−Ｕ…上り方向振り分け・フラッディング部、３−Ｄ…下り方向振り分け・フラッディング部、４…ＭＡＣアドレス学習テーブル部、１０…ＳＡ抽出処理部、１１…ＤＡ抽出処理部、２０…ＭＡＣアドレス学習テーブル、２１…ＳＡ検索部、２２…ＳＡ学習部、２３…ＤＡ検索部、２４…高負荷監視・通知部。
【図１】
0005786588.tif 000002
【図２】
0005786588.tif 000003
【図３】
0005786588.tif 000004
【図４】
0005786588.tif 000005
【図５】
0005786588.tif 000006