(57)【特許請求の範囲】
【請求項１】
入力ポートと、
前記入力ポートから入力するフレームに含まれる送信元アドレスを抽出する送信元アドレス抽出手段と、
前記送信元アドレス抽出手段で抽出された送信元アドレス、および、前記フレームが入力された前記入力ポートの対応関係を示すデータを記憶する記憶手段と、
出力ポートに出力するフレームに含まれる宛先アドレスを抽出する宛先アドレス抽出手段と、
前記記憶手段から、前記宛先アドレス抽出手段で抽出された宛先アドレスに該当するデータを検索する検索手段と、
前記検索手段の検索結果に基づいて、前記出力ポートから前記宛先アドレスに対応するポートを選択し、該ポートに前記宛先アドレスを含むフレームを振り分ける出力先振り分け手段と、
前記検索手段の検索結果がミスヒットになる回数を宛先アドレス毎にカウントし、該カウントしたミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出するミスヒットカウント手段と、
前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが前記記憶手段に記憶された後、当該記憶手段に記憶されている全てのデータのうちで、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが上書き削除されないように保護する管理手段と、
を備えたことを特徴とするフレーム中継装置。
【請求項２】
請求項１に記載のフレーム中継装置であって、
前記出力先振り分け手段は、前記検索手段の検索結果がミスヒットのとき、前記出力ポートの全てに前記宛先アドレスを含むフレームを振り分けることを特徴とするフレーム中継装置。
【請求項３】
請求項１または２に記載のフレーム中継装置であって、
前記管理手段は、前記記憶手段がデータで満杯の状態にあるときに、前記記憶手段にデータが記憶されていない新たな送信元アドレスを含むフレームが前記入力ポートの少なくとも１つから入力すると、前記記憶手段に記憶された全てのデータのうち、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータ以外で最も古くに記憶されたデータに対して、前記新たな送信元アドレスに対応したデータを上書きすることを特徴とするフレーム中継装置。
【請求項４】
請求項１〜３のいずれか１つに記載のフレーム中継装置であって、
前記ミスヒットカウント手段は、所定の周期内に前記検索手段の検索結果がミスヒットになる回数を宛先アドレス毎にカウントし、そのカウントした所定の周期内のミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出することを特徴とするフレーム中継装置。
【請求項５】
請求項４に記載のフレーム中継装置であって、
前記ミスヒットカウント手段は、前記カウントした所定の周期内のミスヒット回数が前記閾値以上になった場合、当該カウント周期以降において前記ミスヒット回数を保持して前記宛先アドレスの検出を行うことを特徴とするフレーム中継装置。
【請求項６】
入力ポートから入力するフレームに含まれる送信元アドレスを抽出し、
抽出した前記送信元アドレス、および、前記フレームが入力された前記入力ポートの対応関係を示すデータを記憶し、
出力ポートに出力するフレームに含まれる宛先アドレスを抽出し、
記憶した前記データから、抽出した前記宛先アドレスに該当するデータを検索し、
前記検索の結果に基づいて、前記出力ポートから前記宛先アドレスに対応するポートを選択し、該ポートに前記宛先アドレスを含むフレームを振り分けるフレーム中継方法であって、
前記検索の結果がミスヒットになる回数を宛先アドレス毎にカウントし、
該カウントしたミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出し、
検出した前記宛先アドレスに該当するデータを記憶した後、全ての記憶データのうちで、検出した前記宛先アドレスに該当するデータが上書き削除されないように保護することを特徴とするフレーム中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フラッディングの発生を抑制するフレーム中継装置およびフレーム中継方法に関する。
【背景技術】
【０００２】
例えば、イーサネット（登録商標、以下同様）通信に利用されるレイヤ２スイッチ等のフレーム中継装置は、受信したフレームを複数のポートに振り分けて出力するためのＭＡＣ学習機能を備える。このＭＡＣ学習機能は、フレーム中継装置の各ポートから入力するフレームより、送信元の端末のＭＡＣ（Media Access Control）アドレス（以下、「送信元アドレス」とする）を抽出し、該送信元アドレスを上記フレームが入力されたポートの情報と一緒にＭＡＣ学習テーブルへ登録する。
【０００３】
上記ＭＡＣ学習テーブルは、フレーム中継装置の受信フレームに含まれる、送信先の端末のＭＡＣアドレス（以下、「宛先アドレス」とする）で検索され、該宛先アドレスに該当するデータがＭＡＣ学習テーブルに登録済みの場合に、当該ＭＡＣアドレスに対応付けられたポート情報に従って、上記フレームの出力先ポートの振り分けが行われる。一方、宛先アドレスに該当するデータがＭＡＣ学習テーブルに未登録の場合には、上記フレームが入力ポート以外の全てのポートから出力されるようにする「フラッディング（Flooding）」と呼ばれる処理が行われる。
【０００４】
上記フラッディングは、宛先アドレスに対応した出力先ポートが不明であってもフレームを送信先の端末に確実に送ることができる反面、本来の出力先ポート以外のポートにもフレームが転送されてしまうので、各ポートの通信帯域を必要以上に消費することになる。このため、フレーム中継装置におけるフラッディングの発生は、通信網の帯域圧迫を招くという問題がある。この問題に対処した従来技術として、例えば特許文献１，２には、送信元アドレスと入力ポートの対応関係がＭＡＣ学習テーブルに登録されるまでの待ち時間を短くすることにより、フラッディングの発生を抑制して通信網の帯域圧迫を軽減する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２６６８５０号公報
【特許文献２】特開２０１１−０１５０９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上記のような従来のＭＡＣ学習機能を備えたフレーム中継装置において、ＭＡＣ学習テーブルに登録可能なデータの量は、該ＭＡＣ学習テーブルに割り当てられるメモリ等の容量に制約される。このため、ＭＡＣ学習テーブルが登録データで満杯になり空きの無い状態（以下、ＦＵＬＬ状態とする）にあるときに、未登録の送信元アドレスを含むフレームがいずれかのポートに入力された場合、フレーム中継装置は、ＭＡＣ学習テーブルに登録済みのデータの一部に新たなデータを上書き登録することが必要になる。この上書き登録の処理では、通常、ＭＡＣ学習テーブルにデータが登録された順番に従い、最も古い登録データが上書きの対象とされる。つまり、ＭＡＣ学習テーブルの登録データが最新の状態に保たれるように、ＭＡＣ学習テーブルの管理が行われる。
【０００７】
上記のようなＭＡＣ学習テーブルのＦＵＬＬ状態における上書き登録の処理を行った後
に、上書きの対象とされたＭＡＣアドレスと同一の宛先アドレスを含んだフレームがいずれかのポートに入力されると、該宛先アドレスに該当するデータがＭＡＣ学習テーブルに登録されていないため、前述したようなフラッディングが行われることになり、通信網の帯域圧迫が課題になる。この課題に対して前述した従来技術、すなわち、ＭＡＣ学習テーブルへの登録待ち時間を短縮することでフラッディングを抑制する技術は、上記のようなＭＡＣ学習テーブルのＦＵＬＬ状態における処理の内容について開示していないため、新たなデータの上書き登録に起因して発生するフラッディングによる帯域圧迫までを軽減することは困難である。
【０００８】
なお、上記課題に対し、ＭＡＣ学習テーブルに割り当てられるメモリの容量を大きくすることによって、ＭＡＣ学習テーブルがＦＵＬＬ状態にならないようにする解決策が考えられる。しかし、ＭＡＣアドレスのビット数は４８ビットであり、フレーム中継装置に接続され得る全ての端末のＭＡＣアドレスと、該各ＭＡＣアドレスに対応したポート情報とを漏れ無く登録することが可能な容量を確保するには、大規模なメモリを多数用意することが必要になる。このため、装置コスト等の面を考慮すると、上記解決策は現実的ではない。
【０００９】
本発明は上記の点に着目してなされたもので、ＭＡＣ学習テーブルの上書き登録に起因して発生するフラッディングを抑制し、通信網の帯域圧迫を緩和できるフレーム中継装置およびフレーム中継方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示するフレーム中継装置の一態様は、入力ポートと、前記入力ポートから入力するフレームに含まれる送信元アドレスを抽出する送信元アドレス抽出手段と、前記送信元アドレス抽出手段で抽出された送信元アドレス、および、前記フレームが入力された前記入力ポートの対応関係を示すデータを記憶する記憶手段と、出力ポートに出力するフレームに含まれる宛先アドレスを抽出する宛先アドレス抽出手段と、前記記憶手段から、前記宛先アドレス抽出手段で抽出された宛先アドレスに該当するデータを検索する検索手段と、前記検索手段の検索結果に基づいて、前記出力ポートから前記宛先アドレスに対応するポートを選択し、該ポートに前記宛先アドレスを含むフレームを振り分ける出力先振り分け手段と、前記検索手段の検索結果がミスヒットになる回数を宛先アドレス毎にカウントし、該カウントしたミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出するミスヒットカウント手段と、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが前記記憶手段に記憶された後、当該記憶手段に記憶されている全てのデータのうちで、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが上書き削除されないように保護する管理手段と、を備える。
【発明の効果】
【００１１】
上記のようなフレーム中継装置によれば、従来のＭＡＣ学習テーブルに相当するデータを記憶する記憶手段に、ミスヒット回数が閾値以上になる宛先アドレスに該当するデータが一度記憶されると、記憶手段が満杯の状態になったとしても、当該データは保護されるので上書きの対象にはならず、ミスヒット回数の少ない宛先アドレスに該当する他のデータが上書き削除されるため、前述したような上書き登録に起因して発生するフラッディングを抑制することができ、通信網の帯域圧迫を緩和することが可能である。
【図面の簡単な説明】
【００１２】
【図１】本発明によるフレーム中継装置の一実施形態の構成を示すブロック図である。
【図２】上記実施形態における多重化回路の構成例を示すブロック図である。
【図３】上記実施形態におけるＭＡＣ−ＳＡ抽出回路の構成例を示すブロック図である。
【図４】上記実施形態における上りフレーム送信回路および下りフレーム受信回路の構成例を示すブロック図である。
【図５】上記実施形態におけるＭＡＣ−ＤＡ抽出回路の構成例を示すブロック図である。
【図６】上記実施形態における出力先振り分け回路の構成例を示すブロック図である。
【図７】上記実施形態におけるＭＡＣ学習テーブル管理回路の構成例を示すブロック図である。
【図８】上記実施形態におけるエージング監視回路の構成例を示すブロック図である。
【図９】上記実施形態におけるミスヒットカウント回路の構成例を示すブロック図である。
【図１０】上記実施形態における上り方向のフレームの処理の流れを示すフローチャートである。
【図１１】上記実施形態におけるＭＡＣ学習テーブルの具体的な一例を示す図である。
【図１２】図１１のＭＡＣ学習テーブルにおける１つの物理アドレスに着目したエージング処理の遷移の一例を示す図である。
【図１３】上記実施形態における下り方向のフレームの処理の流れを示すフローチャートである。
【図１４】上記実施形態におけるミスヒットカウントテーブルの具体的な一例を示す図である。
【図１５】図１４のミスヒットカウントテーブルの管理の具体的な内容を説明する図である。
【図１６】上記実施形態の応用例に用いられるミスヒットカウント回路の構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について添付図面を参照しながら詳細に説明する。
図１は、本発明によるフレーム中継装置の一実施形態の構成を示すブロック図である。
図１において、フレーム中継装置１は、例えば、ライン側の複数のポートＰ１，Ｐ２，…Ｐｎと、各ポートＰ１〜Ｐｎから入力するフレームＦＲＭ１〜ＦＲＭｎを多重化する多重化回路１０と、多重化回路１０から出力されるフレームＦＲＭＬより送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴを抽出するＭＡＣ−ＳＡ抽出回路２０と、ＭＡＣ−ＳＡ抽出回路２０を通過したフレームＦＲＭＬをネットワーク側へ送信する上りフレーム送信回路３０と、ネットワーク側からのフレームを受信する下りフレーム受信回路４０と、下りフレーム受信回路４０から出力されるフレームＦＲＭＮより宛先アドレスＭＡＣ−ＤＡを抽出するＭＡＣ−ＤＡ抽出回路５０と、ＭＡＣ−ＤＡ抽出回路５０を通過したフレームＦＲＭＬをライン側の各ポートＰＬ１〜ＰＬｎに振り分ける出力先振り分け回路６０と、ＭＡＣ−ＳＡ抽出回路２０およびＭＡＣ−ＤＡ抽出回路５０の抽出情報を基にＭＡＣ学習テーブルの管理を行う、ＭＡＣ学習テーブル管理回路７０、エージング監視回路８０およびミスヒットカウント回路９０と、を備える。
【００１４】
各ポートＰ１〜Ｐｎは、フレーム中継装置１のライン側に接続される図示しない各端末とフレームの送受信を行う通信インターフェイスとしてフレーム中継装置１に物理的に備えられたポートであり、各々のポートＰ１〜Ｐｎがライン側に対する入力ポートおよび出力ポートとしての役割を担っている。各ポートＰ１〜Ｐｎには、互いに異なるポート番号が割り振られており、ここでは、各ポートの符号の添え字が各々のポート番号を表すものとする。
【００１５】
多重化回路１０は、例えば図２のブロック図に示すように、各ポートＰ１〜Ｐｎに対応した複数の速度変換ＦＩＦＯ（First In First Out）１１−１〜１１−ｎおよび１つのセレクタ１２を有する。
【００１６】
各速度変換ＦＩＦＯ１１−１〜１１−ｎは、ライン側の各ポートＰ１〜Ｐｎから入力するフレームＦＲＭ１〜ＦＲＭｎをそれぞれ格納し、各々に対応した回線クロックＣＬＫ１〜ＣＬＫｎから共通のシステムクロックＣＬＫＳＹＳに乗せ換えたフレームＦＲＭ１〜ＦＲＭｎをセレクタ１２に出力する。また、各速度変換ＦＩＦＯ１１−１〜１１−ｎは、１フレーム分以上の情報を蓄積すると、その状態を示す信号ＡＣＣをセレクタ１２に出力する。
【００１７】
セレクタ１２は、各速度変換ＦＩＦＯ１１−１〜１１−ｎからの出力信号ＡＣＣに応じて１つの速度変換ＦＩＦＯを選択し、その選択した速度変換ＦＩＦＯから出力されるフレームを、対応する入力ポートの番号を示すポート情報ＰＯＲＴと一緒にＭＡＣ−ＳＡ抽出回路２０に出力する。ここでは、セレクタ１２から出力されるフレームをＦＲＭＬと表記する。
【００１８】
ＭＡＣ−ＳＡ抽出回路２０は、例えば図３のブロック図に示すように、待機用メモリ２１、ＭＡＣ−ＳＡラッチ２２、ＳＦＤラッチ２３、フレームカウンタ２４およびＭＡＣ−ＳＡタイミングデコーダ２５を有する。
【００１９】
待機用メモリ２１は、多重化回路１０から出力されるフレームＦＲＭＬおよびポート情報ＰＯＲＴを一旦格納し、後述するＭＡＣ学習テーブル管理回路７０からの応答信号ＲＥＳを受けて、格納したフレームＦＲＭＬおよびポート情報ＰＯＲＴを後段ブロックに出力する。
【００２０】
ＭＡＣ−ＳＡラッチ２２は、ＭＡＣ−ＳＡタイミングデコーダ２５から出力されるＭＡＣ−ＳＡタイミング信号に従って、待機用メモリ２１から出力されるフレームＦＲＭＬに含まれる送信元アドレスＭＡＣ−ＳＡをラッチし、該送信元アドレスＭＡＣ−ＳＡをＭＡＣ学習テーブル管理回路７０に通知する。
【００２１】
ＳＦＤラッチ２３は、待機用メモリ２１から出力されるフレームＦＲＭＬを受け、該フレームＦＲＭＬの先頭位置を示すＳＦＤ（Start frame delimiter）をラッチしてＳＦＤ検出パルスを生成し、該ＳＦＤ検出パルスをフレームカウンタ２４に出力する。
【００２２】
フレームカウンタ２４は、ＳＦＤラッチ２３からのＳＦＤ検出パルスを基準タイミングとして、フレームＦＲＭＬのバイト数をカウントし、そのカウント値をＭＡＣ−ＳＡタイミングデコーダ２５に通知する。
【００２３】
ＭＡＣ−ＳＡタイミングデコーダ２５は、フレームカウンタ２４のカウント値に応じて、フレームＦＲＭＬ内における送信元アドレスＭＡＣ−ＳＡの位置を示すＭＡＣ−ＳＡタイミング信号を生成し、該ＭＡＣ−ＳＡタイミング信号をＭＡＣ−ＳＡラッチ２２に出力する。なお、ＭＡＣ−ＳＡタイミング信号は、後述するＭＡＣ学習テーブル管理回路７０への登録要求ＲＤとしても利用される。
【００２４】
上りフレーム送信回路３０は、例えば図４の上段に示すようにフリップフロップ３１を用いて構成され、ＭＡＣ−ＳＡ抽出回路２０を通過したフレームＦＲＭＬをフリップフロップ３１に取り込み、該フレームＦＲＭＬをフレーム中継装置１に接続されているネットワークへの上りフレームとして出力する。
【００２５】
下りフレーム受信回路４０は、例えば図４の下段に示すようにフリップフロップ４１を用いて構成され、フレーム中継装置１に接続されているネットワークを伝送された下りフレームをフリップフロップ４１に取り込み、該下りフレームをネットワーク側からの入力
フレームＦＲＭＮとしてＭＡＣ−ＤＡ抽出回路５０に出力する。
【００２６】
ＭＡＣ−ＤＡ抽出回路５０は、例えば図５のブロック図に示すように、待機用メモリ５１、ＭＡＣ−ＤＡラッチ５２、ＳＦＤラッチ５３、フレームカウンタ５４、ＭＡＣ−ＤＡタイミングデコーダ５５、論理和（ＯＲ）回路５６および論理否定（ＮＯＴ）回路５７を有する。
【００２７】
待機用メモリ５１は、下りフレーム受信回路４０から出力されるフレームＦＲＭＮを一旦格納し、後述するＭＡＣ学習テーブル管理回路７０から通知される応答信号ＲＥＳを受けて、格納したフレームＦＲＭＮを後段ブロックに出力する。
【００２８】
ＭＡＣ−ＤＡラッチ５２は、ＭＡＣ−ＤＡタイミングデコーダ５５から出力されるＭＡＣ−ＤＡタイミング信号に従って、待機用メモリ５１から出力されるフレームＦＲＭＮに含まれる宛先アドレスＭＡＣ−ＤＡをラッチし、該宛先アドレスＭＡＣ−ＤＡをＭＡＣ学習テーブル管理回路７０に通知する。
【００２９】
ＳＦＤラッチ５３は、待機用メモリ５１から出力されるフレームＦＲＭＮを受け、該フレームの先頭位置を示すＳＦＤをラッチしてＳＦＤ検出パルスを生成し、該ＳＦＤ検出パルスをフレームカウンタ５４に出力する。
【００３０】
フレームカウンタ５４は、ＳＦＤラッチ５３からのＳＦＤ検出パルスを基準タイミングとして、フレームＦＲＭＮのバイト数をカウントし、そのカウント値をＭＡＣ−ＤＡタイミングデコーダ５５に通知する。
【００３１】
ＭＡＣ−ＤＡタイミングデコーダ５５は、フレームカウンタ５４のカウント値に応じて、フレームＦＲＭＮ内における宛先アドレスＭＡＣ−ＤＡの位置を示すＭＡＣ−ＤＡタイミング信号を生成し、該ＭＡＣ−ＤＡタイミング信号をＭＡＣ−ＤＡラッチ５２に出力する。なお、ＭＡＣ−ＤＡタイミング信号は、後述するＭＡＣ学習テーブル管理回路７０への検索要求ＳＤとしても利用される。
【００３２】
ＯＲ回路５６は、ＭＡＣ学習テーブル管理回路７０から通知される検索結果ＳＲが示すポート情報ＰＯＲＴおよびミスヒット情報ＭＩＳＨＩＴの論理和を演算し、該演算結果を基にフレームＦＲＭＮの出力先となるポート番号を指示するポート指示信号ＰＩを生成する。このポート指示信号ＰＩは、待機用メモリ５１から出力されるフレームＦＲＭＮと一緒に出力先振り分け回路６０へ出力される。
【００３３】
ＮＯＴ回路５７は、上記検索結果ＳＲが示すミスヒット情報ＭＩＳＨＩＴの論理否定を演算することによりヒット情報ＨＩＴを生成する。このヒット情報ＨＩＴおよびミスヒット情報ＭＩＳＨＩＴは、ミスヒットカウント回路９０に通知される。
【００３４】
出力先振り分け回路６０は、例えば図６のブロック図に示すように、１つのコントローラ６１および各ポートＰ１〜Ｐｎに対応させて設けられた複数のＦＩＦＯ６２−１〜６２−ｎを有する。
【００３５】
コントローラ６１は、ＭＡＣ−ＤＡ抽出回路５０から出力されるポート指示信号ＰＩを受け、該ポート指示信号ＰＩが示す出力先のポート番号に応じて、各ＦＩＦＯ６２−１〜６２−ｎにそれぞれ対応したライトイネーブル信号ＷＥＮ１〜ＷＥＮｎを出力する。
【００３６】
各ＦＩＦＯ６２−１〜６２−ｎは、ＭＡＣ−ＤＡ抽出回路５０から出力されるフレームＦＲＭＮがそれぞれ入力され、コントローラ６１からのライトイネーブル信号ＷＥＮ１〜
ＷＥＮｎが有効であるときに、システムクロックＣＬＫＳＹＳのタイミングに従って入力フレームＦＲＭＮが書き込まれる。各ＦＩＦＯ６２−１〜６２−ｎに書き込まれたフレームＦＲＭＮは、出力用クロックＣＬＫＯＵＴのタイミングに従って読み出され、各々に対応するポートＰ１〜Ｐｎからの出力フレームＦＲＭ１〜ＦＲＭｎとなる。
【００３７】
ＭＡＣ学習テーブル管理回路７０は、例えば図７のブロック図に示すように、ＭＡＣ学習テーブルを記憶可能なメモリ７１Ａおよびプロセッサ７１Ｂを含む記憶ユニット７１、並びに、エージングタイマ用のシフトレジスタ７２を有する。
【００３８】
記憶ユニット７１は、ＭＡＣ−ＳＡ抽出回路２０からの登録要求ＲＤに応じて、プロセッサ７１Ｂにより、ＭＡＣ−ＳＡ抽出回路２０から出力される送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴをメモリ７１Ａ内のＭＡＣ学習テーブルに登録する処理を行い、該登録処理が完了すると応答信号ＲＥＳをＭＡＣ−ＳＡ抽出回路２０に出力する。また、記憶ユニット７１は、ＭＡＣ−ＤＡ抽出回路５０からの検索要求ＳＤに応じて、プロセッサ７１Ｂにより、宛先アドレスＭＡＣ−ＤＡに該当するデータがメモリ７１Ａ内のＭＡＣ学習テーブルに登録されているか否かを検索し、その検索結果ＳＲをＭＡＣ−ＤＡ抽出回路５０に通知する。ＭＡＣ学習テーブルの検索結果ＳＲは、具体的には、検索がヒットした場合、すなわち、宛先アドレスＭＡＣ−ＤＡに一致するＭＡＣアドレスがＭＡＣ学習テーブルに登録されていたときに、該ＭＡＣアドレスに対応付けられたポート情報ＰＯＲＴをＭＡＣ−ＤＡ抽出回路５０に通知する。一方、宛先アドレスＭＡＣ−ＤＡに一致するＭＡＣアドレスがＭＡＣ学習テーブルに登録されておらず、検索がミスヒットに終わった場合には、ミスヒット情報ＭＩＳＨＩＴをＭＡＣ−ＤＡ抽出回路５０に通知する。
【００３９】
シフトレジスタ７２は、後述するエージング監視回路８０から出力されるエージングタイミング信号ＳＡＴを受けて、メモリ７１Ａ内のＭＡＣ学習テーブルに登録されているＭＡＣアドレス毎のエージングタイマ値Ｔを更新する処理を行う。このエージングタイマ値Ｔの更新処理の詳細については後述する。
【００４０】
エージング監視回路８０は、例えば図８のブロック図に示すように、自走カウンタ８１およびデコーダ８２を有する。自走カウンタ８１は、エージング周期をカウントする。デコーダ８２は、自走カウンタ８１のカウント値をデコードすることにより、ＭＡＣ学習テーブル管理回路７０用のエージングタイミング信号ＳＡＴを生成すると共に、ミスヒットカウント回路９０用のエージングタイミング信号ＳＭＡＴを生成する。
【００４１】
ミスヒットカウント回路９０は、例えば図９のブロック図に示すように、ミスヒットカウントテーブルを記憶可能なメモリ９１Ａおよびプロセッサ９１Ｂを含む記憶ユニット９１、ローカルミスヒット数カウンタ９２、ミスヒットカウント値ラッチ９３、並びに、コンパレータ９４を有する。
【００４２】
記憶ユニット９１は、ＭＡＣ−ＤＡ抽出回路５０から通知される宛先アドレスＭＡＣ−ＤＡおよびミスヒット情報ＭＩＳＨＩＴを受けて、プロセッサ９１Ｂにより、宛先アドレスＭＡＣ−ＤＡ毎のミスヒット回数をメモリ９１Ａ内のミスヒットカウントテーブルに登録する処理を行う。また、記憶ユニット９１は、ＭＡＣ−ＳＡ抽出回路２０から通知される送信元アドレスＭＡＣ−ＳＡを受けて、プロセッサ９１Ｂにより、メモリ９１Ａ内のミスヒットカウントテーブルを検索し、送信元アドレスＭＡＣ−ＳＡに一致するＭＡＣアドレスに後述する優先フラグが立てられているか否かを示す優先フラグ情報ＦＬＧをＭＡＣ学習テーブル管理回路７０に通知する。
【００４３】
ローカルミスヒット数カウンタ９２は、ＭＡＣ−ＤＡ抽出回路５０から通知される宛先アドレスＭＡＣ−ＤＡに対応したヒット情報ＨＩＴおよびミスヒット情報ＭＩＳＨＩＴに
応じて、ミスヒットが通知される毎に、メモリ９１Ａ内のミスヒットカウントテーブルに現在登録されている宛先アドレスＭＡＣ−ＤＡに対応したローカルカウント値ＣＬを読み取り、その値をインクリメントした新たなローカルカウント値ＣＬをメモリ９１Ａに書き込む。なお、ローカルミスヒット数カウンタ９２は、エージング監視回路８０からのエージングタイミング信号ＳＭＡＴを受けると、ミスヒットカウントテーブルの各ＭＡＣアドレスに対応したローカルカウント値ＣＬを初期化する。これにより、エージング周期内のミスヒット回数が、ローカルカウント値ＣＬとしてカウントされることになる。
【００４４】
ミスヒットカウント値ラッチ９３は、エージング監視回路８０からのエージングタイミング信号ＳＭＡＴを受けて、上記ローカルミスヒット数カウンタ９２により初期化される前のローカルカウント値ＣＬを読み取り、エージング周期内のミスヒット回数をＭＡＣアドレス毎に判断する。そして、ミスヒットカウント値ラッチ９３は、判断したエージング周期内のミスヒット回数に従って、メモリ９１Ａ内のミスヒットカウントテーブルに登録されている各ＭＡＣアドレスに対応したミスヒットカウント値ＣＭを更新すると共に、更新後のミスヒットカウント値ＣＭをコンパレータ９４に通知する。
【００４５】
コンパレータ９４は、ミスヒットカウント値ラッチ９３から通知されるミスヒットカウント値ＣＭが予め定めた閾値以上であるか否かを判定し、閾値以上の場合には、メモリ９１Ａ内のミスヒットカウントテーブルにおける該当するＭＡＣアドレスに優先フラグを立てるための信号を出力する。
【００４６】
次に、フレーム中継装置１の動作について説明する。
図１０は、ライン側から入力されるフレームをネットワーク側の上りフレームとして送信するときの処理の流れを示すフローチャートである。
【００４７】
上記のような構成のフレーム中継装置１では、ライン側の各ポートＰ１〜Ｐｎに接続された端末からフレームＦＲＭ１〜ＦＲＭｎが送信されると、該各フレームＦＲＭ１〜ＦＲＭｎが多重化回路１０に与えられ、多重化されたフレームＦＲＭＬおよびポート情報ＰＯＲＴがＭＡＣ−ＳＡ抽出回路２０に送られる。ＭＡＣ−ＳＡ抽出回路２０では、多重化回路１０からのフレームＦＲＭＬおよびポート情報ＰＯＲＴを受けて、該フレームＦＲＭＬより送信元アドレスＭＡＣ−ＳＡが抽出される（図１０のＳ１０１，Ｓ１０２）。
【００４８】
送信元アドレスＭＡＣ−ＳＡの抽出が完了すると、ＭＡＣ学習テーブル管理回路７０が処理を受付可能な状態にあるか否かの判定が行われる（Ｓ１０３）。ＭＡＣ学習テーブル管理回路７０において、先に入力されたフレームの送信元アドレスＭＡＣ−ＳＡの登録処理または宛先アドレスＭＡＣ−ＤＡの検索処理が行われている場合には、当該処理が完了するのを待った後に、ＭＡＣ−ＳＡ抽出回路２０により、ＭＡＣ学習テーブル管理回路７０に対して、上記Ｓ１０２で抽出した送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴの登録要求ＲＤが行われる（Ｓ１０４）。また、ＭＡＣ学習テーブル管理回路７０に対する登録要求ＲＤと並行して、ＭＡＣ−ＳＡ抽出回路２０により、ミスヒットカウント回路９０に対して、上記Ｓ１０２で抽出した送信元アドレスＭＡＣ−ＳＡの検索要求が行われる（Ｓ１２１）。
【００４９】
ＭＡＣ−ＳＡ抽出回路２０からの登録要求ＲＤを受けたＭＡＣ学習テーブル管理回路７０では、送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴの登録処理を開始するために、次の登録要求の受付が禁止される（Ｓ１０５）。そして、登録要求ＲＤにおける送信元アドレスＭＡＣ−ＳＡに一致するＭＡＣアドレスが、メモリ７１Ａ内のＭＡＣ学習テーブルに登録済みであるか否かの判定が行われる（Ｓ１０６）。登録済みの場合には、該ＭＡＣアドレスに対応させてＭＡＣ学習テーブルに登録されているエージングタイマ値Ｔが初期化される（Ｓ１０７）。
【００５０】
一方、送信元アドレスＭＡＣ−ＳＡに一致するＭＡＣアドレスがＭＡＣ学習テーブルに未登録の場合には、ＭＡＣ学習テーブルに空き物理アドレスがあるか否かの判定が行われる（Ｓ１１１）。ＭＡＣ学習テーブルに空き物理アドレスが有る場合、該空き物理アドレスに、登録要求のあった送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴが登録される（Ｓ１１２）。一方、空き物理アドレスが無い場合、すなわち、ＭＡＣ学習テーブルのＦＵＬＬ状態には、ＭＡＣ学習テーブルの登録データについて、優先フラグが無く、かつ、エージングタイマ値Ｔが最も大きいＭＡＣアドレスが特定され、該ＭＡＣアドレスが登録されている物理アドレスに、登録要求のあった送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴが上書き登録される（Ｓ１１３）。上記Ｓ１１２またはＳ１１３により、登録要求のあった送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴがＭＡＣ学習テーブルに登録されると、後述するＳ１１４に進む。
【００５１】
前述したＳ１２１においてＭＡＣ−ＳＡ抽出回路２０からの検索要求を受けたミスヒットカウント回路９０では、送信元アドレスＭＡＣ−ＳＡに一致するＭＡＣアドレスが、メモリ９１Ａ内のミスヒットカウントテーブルに登録されているか否かの判定が行われる（Ｓ１２２）。なお、ミスヒットカウントテーブルの詳細については後述する。
【００５２】
上記Ｓ１２２の判定で登録有りの場合、該ＭＡＣアドレスに対応する優先フラグの有無が判定され（Ｓ１２３）、優先フラグ有りであれば、優先フラグ情報として「ＦＬＧ＝１」がＭＡＣ学習テーブル管理回路７０に通知される（Ｓ１２４）。一方、上記Ｓ１２２の判定で登録無しの場合、または、上記Ｓ１２３の判定で優先フラグ無しの場合には、優先フラグ情報として「ＦＬＧ＝０」がＭＡＣ学習テーブル管理回路７０に通知される（Ｓ１２５）。
【００５３】
上記ミスヒットカウント回路９０からの優先フラグ情報ＦＬＧの通知を受けたＭＡＣ学習テーブル管理回路７０では、前述したＳ１１２またはＳ１１３において送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴを登録した、ＭＡＣ学習テーブルの物理アドレスに対して、優先フラグ情報ＦＬＧが登録される（Ｓ１１４）。上記Ｓ１１１〜Ｓ１１４の処理により、登録要求のあった送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴ、並びに、該送信元アドレスＭＡＣ−ＳＡに対応した優先フラグ情報ＦＬＧがＭＡＣ学習テーブルに登録されると、前述したＳ１０７に移り、上記送信元アドレスＭＡＣ−ＳＡに対応するエージングタイマ値Ｔとして初期値が設定される。
【００５４】
上記Ｓ１０７によりエージングタイマ値Ｔの初期化が済むと、ＭＡＣ学習テーブル管理回路７０は、ＭＡＣ−ＳＡ抽出回路２０からの登録要求ＲＤに応じた送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴの登録処理を完了し、次の登録要求の受付を許可する（Ｓ１０８）。そして、ＭＡＣ−ＳＡ抽出回路２０を通過したフレームＦＲＭＬが、上りフレーム送信回路３０に送られることにより、ネットワーク側に上りフレームが送信される（Ｓ１０９）。
【００５５】
ここで、ＭＡＣ学習テーブルの構成について、図１１に示す具体的な一例を参照しながら詳しく説明する。図１１のＭＡＣ学習テーブルは、例えば、物理アドレス０，１，…ｎ毎に、登録有無フラグ、ポート情報ＰＯＲＴ、ＭＡＣアドレス、エージングタイマ値Ｔ、タイムアウトフラグおよび優先フラグをそれぞれ管理している。
【００５６】
登録有無フラグは、ＭＡＣ学習テーブルの個々の物理アドレスにデータが登録されているか否かを示すものであり、登録有りの場合に「１」が設定され、登録無しの場合に「０」が設定される。この登録有無フラグは、前述の図１０に示したＳ１１１における空き物理アドレスの判定に利用可能である。図１１の例では、２番の物理アドレスが、データの
登録されていない空き物理アドレスに該当している。
【００５７】
ポート情報ＰＯＲＴは、フレームＦＲＭＬが入力された物理ポートの番号を表している。ＭＡＣアドレスは、登録要求ＲＤのあった送信元アドレスＭＡＣ−ＳＡに該当し、後述する下りフレームについての出力先ポートの振り分け時には、宛先アドレスＭＡＣ−ＤＡの検索対象となる。
【００５８】
エージングタイマ値Ｔは、送信元アドレスＭＡＣ−ＳＡがＭＡＣ学習テーブルに登録されてからの経過時間を５ビットの値で表している。タイムアウトフラグは、エージングタイマ値Ｔが予め定めた値を超えてタイムアウトになったか否かを示すものであり、タイムアウトになった場合に「１」が設定され、タイムアウトになっていない場合に「０」が設定される。
【００５９】
優先フラグは、前述の図１０に示したＳ１２４およびＳ１２５の処理で設定される優先フラグ情報ＦＬＧに対応している。つまり、ミスヒットカウント回路９０のミスヒットカウントテーブルにおいて、送信元アドレスＭＡＣ−ＳＡに一致するＭＡＣアドレスが登録されており、かつ、該ＭＡＣアドレスに対応付けて優先フラグが立てられている場合に、ＭＡＣ学習テーブルにも優先フラグとして「１」が設定される。
【００６０】
上記優先フラグに「１」が設定されているＭＡＣアドレスに対しては、ＭＡＣ学習テーブルがＦＵＬＬ状態、すなわち、全ての物理アドレスにデータが登録されており登録有無フラグが全て「１」の状態におけるデータの上書き登録が禁止される。つまり、ミスヒット回数が多いＭＡＣアドレスについては、ＭＡＣ学習テーブルにデータが一度登録されると、該データが上書き登録により削除されないよう保護される。ただし、優先フラグに「１」が設定されていても、エージングタイマ値Ｔがタイムアウトした場合には、登録データが削除される。これは、該当するＭＡＣアドレスを有する端末がライン側のポートから切り離された場合に対応するためである。
【００６１】
ここで、図１１に示したＭＡＣ学習テーブルの一例を用いて、前述したライン側からネットワーク側への上り方向の処理におけるＭＡＣ学習機能に関係する動作を具体的に説明しておく。ＭＡＣ−ＳＡ抽出回路２０で抽出された送信元アドレスＭＡＣ−ＳＡがＭＡＣ学習テーブルに未登録であれば、登録有無フラグを利用して空き物理アドレスが有るかどうかが確認される。空き物理アドレスが有れば、該空き物理アドレスに対して、送信元アドレスＭＡＣ−ＳＡが新規登録される。この新規登録時には、登録有無フラグが「１」に設定されると共に、送信元アドレスＭＡＣ−ＳＡに対応するポート情報ＰＯＲＴが登録される。また、エージングタイマ値Ｔが初期値の「００００１」に設定され、タイムアウトフラグが「０」に設定される。
【００６２】
一方、全ての登録有無フラグが「１」で空き物理アドレスが無ければ、ＭＡＣ学習テーブルに登録済みのデータのうちで、優先フラグが「０」に設定され、かつ、エージングタイマ値Ｔが最も大きいＭＡＣアドレスが特定される。そして、そのＭＡＣアドレスが登録されている物理アドレスに対して、新たな送信元アドレスＭＡＣ−ＳＡおよびポート情報ＰＯＲＴ等が上書き登録される。なお、登録要求ＲＤのあった送信元アドレスＭＡＣ−ＳＡがＭＡＣ学習テーブルに既に登録済みであれば、対応するエージングタイマ値Ｔが初期値の「００００１」に戻される。
【００６３】
上記エージングタイマ値Ｔおよびタイムアウトフラグは、ＭＡＣ学習テーブルの登録データのエージング処理に用いられる。図１２は、ＭＡＣ学習テーブルにおける１つの物理アドレスに着目したエージング処理の遷移の一例である。ここでは、５ビットのエージングタイマ値Ｔを用いてエージングタイムを簡易的に管理している。
【００６４】
具体的に、図１２における（Ａ）の状態は、当該物理アドレスに送信元アドレスＭＡＣ−ＳＡ等のデータが登録されていない未登録時に該当しており、この状態ではエージングタイマ値Ｔが「０００００」、タイムアウトフラグが「０」にそれぞれ設定される。そして、ＭＡＣ学習テーブルに登録されていない送信元アドレスＭＡＣ−ＳＡの登録要求ＲＤを受けて、該送信元アドレスＭＡＣ−ＳＡが上記物理アドレスに新規登録されるとエージング監視が開始され、（Ｂ）に示すようにエージングタイマ値Ｔの最下位ビットＬＳＢに「１」が設定される。つまり、エージングタイマ値Ｔが「００００１」へ遷移する。
【００６５】
上記（Ｂ）の状態で一定時間（エージング周期）が経過して、エージング監視回路８０から出力されるエージングタイミング信号ＳＡＴがＭＡＣ学習テーブル管理回路７０に通知されると、該ＭＡＣ学習テーブル管理回路７０のシフトレジスタ７２の動作によって、（Ｃ）に示すようにエージングタイマ値Ｔが「０００１１」へ遷移する。さらに、（Ｃ）の状態でエージング周期が経過すると、上記と同様にシフトレジスタ７２の動作によって、（Ｄ）に示すようにエージングタイマ値Ｔが「００１１１」へ遷移する。
【００６６】
上記（Ｄ）の状態で、同一の送信元アドレスＭＡＣ−ＳＡの登録要求ＲＤを受けた場合には、エージング監視を再スタートさせるため、（Ｅ）に示すようにエージングタイマ値Ｔが「００００１」に初期化される。エージング監視の再スタート後は、上記（Ｂ）〜（Ｄ）に対応した処理と同様にして、エージング周期が経過する毎にエージングタイマ値Ｔが、（Ｆ）に示す「０００１１」、（Ｇ）に示す「００１１１」、（Ｈ）に示す「０１１１１」、（Ｉ）に示す「１１１１１」へと順に遷移する。
【００６７】
そして、上記（Ｉ）の状態でエージング周期が経過すると、（Ｊ）に示すようにタイムアウトフラグが「１」に設定されてエージングタイムアウトとなり、当該物理アドレスの登録データが削除される。これにより、ＭＡＣ学習テーブルの登録有無フラグは「０」に設定される。
【００６８】
ＭＡＣ学習テーブル管理回路７０では、上記のような一連のエージング監視が、ＭＡＣ学習テーブルの各物理アドレスの登録データについてそれぞれ行われる。前述したＭＡＣ学習テーブルのＦＵＬＬ状態は、ＭＡＣ学習テーブルの全ての物理アドレスにデータが登録済みであって、各々の登録データがエージングタイムアウトに至っていない状態、つまり、ＭＡＣ学習テーブルの全ての物理アドレスにおける登録有無フラグが「１」であり、かつ、タイムアウトフラグが「０」の状態に該当している。
【００６９】
上記のようなＭＡＣ学習テーブルのＦＵＬＬ状態において、未登録の送信元アドレスＭＡＣ−ＳＡの登録要求ＲＤを受けた場合、一般的なＭＡＣ学習テーブルの管理手法では、登録データが最新の状態に保たれるように、エージングタイマ値Ｔが最も大きい物理アドレスの登録データが上書きの対象とされる。また、エージングタイマ値Ｔが最大の物理アドレスが複数ある場合には、物理アドレスの番号が最も小さいものが上書きの対象とされる。しかし、このような一般的な手法で上書き登録の処理を行った場合、上書きによりＭＡＣ学習テーブルから削除されたＭＡＣアドレスと同一の宛先アドレスＭＡＣ−ＤＡを含む下りフレームがネットワーク側から入力されると、フラッディングが行われることになるため、ライン側の各ポートの帯域が圧迫されてしまう。
【００７０】
そこで、本実施形態のフレーム中継装置１は、ＭＡＣ学習テーブルを宛先アドレスＭＡＣ−ＤＡで検索した時のミスヒット回数をカウントしておき、ＭＡＣ学習テーブルのＦＵＬＬ状態におけるデータの上書き登録を行う際に、ミスヒット回数が多いＭＡＣアドレスに対応した登録データが上書きの対象とならないようにＭＡＣ学習テーブルの管理を行うことで、上書き登録に起因して発生するフラッディングを抑制している。以下、ミスヒッ
ト回数のカウント処理が行われる下りフレームの処理について詳しく説明する。
【００７１】
図１３は、ネットワーク側から受信した下りフレームを宛先アドレスＭＡＣ−ＤＡに応じてライン側の各ポートＰ１〜Ｐｎに出力するときの処理の流れを示すフローチャートである。ネットワーク側からの下りフレームは、フレーム中継装置１の下りフレーム受信回路４０を通ってＭＡＣ−ＤＡ抽出回路５０に送られる。ＭＡＣ−ＤＡ抽出回路５０では、フレーム入力回路４０からのフレームＦＲＭＮを受けて、該フレームＦＲＭＮより宛先アドレスＭＡＣ−ＤＡが抽出される（図１３のＳ２０１，Ｓ２０２）。
【００７２】
宛先アドレスＭＡＣ−ＤＡの抽出が完了すると、ＭＡＣ学習テーブル管理回路７０が処理を受付可能な状態にあるか否かの判定が行われる（Ｓ２０３）。ＭＡＣ学習テーブル管理回路７０において、先に入力されたフレームの宛先アドレスＭＡＣ−ＤＡの検索処理または送信元アドレスＭＡＣ−ＳＡの登録処理が行われている場合には、当該処理が完了するのを待った後に、ＭＡＣ−ＤＡ抽出回路５０により、ＭＡＣ学習テーブル管理回路７０に対して、上記Ｓ２０２で抽出した宛先アドレスＭＡＣ−ＤＡの検索要求ＳＤが行われる（Ｓ２０４）。また、ＭＡＣ学習テーブル管理回路７０に対する検索要求ＳＤと並行して、ＭＡＣ−ＤＡ抽出回路５０により、ミスヒットカウント回路９０に対して、上記Ｓ２０２で抽出した宛先アドレスＭＡＣ−ＤＡについてのミスヒット回数のカウント処理が要求される（Ｓ２１１）。
【００７３】
ＭＡＣ−ＤＡ抽出回路５０からの検索要求ＳＤを受けたＭＡＣ学習テーブル管理回路７０では、宛先アドレスＭＡＣ−ＤＡの検索処理を開始するために、次の検索要求ＳＤの受付が禁止される（Ｓ２０５）。そして、検索要求ＳＤにおける宛先アドレスＭＡＣ−ＤＡに一致するＭＡＣアドレスが、メモリ７１Ａ内のＭＡＣ学習テーブルに登録済みであるか否かの判定が行われる（Ｓ２０６）。登録済みの場合には、該ＭＡＣアドレスに対応するポート情報ＰＯＲＴが読み取られ、該ポート情報ＰＯＲＴの示すポート番号（ＰＯＲＴ＝ｋ）が検索結果ＳＲとしてＭＡＣ−ＤＡ抽出回路５０に通知される（Ｓ２０７）。一方、未登録の場合には、ミスヒット情報ＭＩＳＨＩＴと共に、ライン側の全てのポート番号（ＰＯＲＴ＝ａｌｌ）が検索結果ＳＲとしてＭＡＣ−ＤＡ抽出回路５０に通知される（Ｓ２０８）。
【００７４】
ＭＡＣ学習テーブル管理回路７０からの検索結果ＳＲを受けたＭＡＣ−ＤＡ抽出回路５０では、フレームＦＲＭＮの出力先となるポート番号を指示するポート指示信号ＰＩが生成され、該ポート指示信号ＰＩがフレームＦＲＭＮと一緒に出力先振り分け回路６０に出力される。上記ポート指示信号ＰＩは、検索結果がヒットのときに１つのポート番号（ＰＯＲＴ＝ｋ）を指示し、ミスヒットのときに全てのポート番号（ＰＯＲＴ＝ａｌｌ）を指示する。また、ＭＡＣ−ＤＡ抽出回路５０により、ＭＡＣ学習テーブル管理回路７０での検索結果に対応したヒット情報ＨＩＴおよびミスヒット情報ＭＩＳＨＩＴが、ミスヒットカウント回路９０に通知される。
【００７５】
前述したＳ２１１において、ＭＡＣ−ＤＡ抽出回路５０で抽出された宛先アドレスＭＡＣ−ＤＡについてのミスヒット回数のカウント処理要求を受けたミスヒットカウント回路９０では、宛先アドレスＭＡＣ−ＤＡに一致するＭＡＣアドレスが、メモリ９１Ａ内のミスヒットカウントテーブルに登録されているか否かの判定が行われる（Ｓ２１２）。登録済みの場合には、ＭＡＣ−ＤＡ抽出回路５０から通知されるヒット情報ＨＩＴおよびミスヒット情報ＭＩＳＨＩＴを基に、ＭＡＣ学習テーブルについての当該宛先アドレスＭＡＣ−ＤＡの検索がヒットしたか否かの判定が行われる（Ｓ２１３）。ヒットの場合には、ミスヒットカウントテーブルの上記ＭＡＣアドレスに対応した登録データが削除される（Ｓ２１４）。一方、ミスヒットの場合には、ミスヒットカウントテーブルに登録されている上記ＭＡＣアドレスに対応したミスヒット回数がインクリメントされる。
【００７６】
上記Ｓ２１２において、宛先アドレスＭＡＣ−ＤＡに一致するＭＡＣアドレスがミスヒットカウントテーブルに登録されていないと判定された場合、ミスヒットカウントテーブルに空き物理アドレスがあるか否かの判定が行われる（Ｓ２１６）。ミスヒットカウントテーブルに空き物理アドレスがある場合、該空き物理アドレスに宛先アドレスＭＡＣ−ＤＡが登録される（Ｓ２１７）。一方、空き物理アドレスがない場合には、ミスヒットカウントテーブルの登録データについて、カウント有効フラグが「１」であり、かつ、ミスヒットカウント値ＣＭが最も小さいＭＡＣアドレスが特定され、該ＭＡＣアドレスが登録されている物理アドレスに新たな宛先アドレスＭＡＣ−ＤＡが上書き登録される（Ｓ２１８）。なお、ミスヒットカウントテーブルの具体的な構成とその管理に関する内容については後で詳しく説明することにする。
【００７７】
上記のようなＳ２１１〜Ｓ２１８によるミスヒットカウント回路９０での一連の処理が済むと、ＭＡＣ学習テーブル管理回路７０は、ＭＡＣ−ＤＡ抽出回路５０からの検索要求ＳＤに応じた宛先アドレスＭＡＣ−ＤＡの検索処理を完了し、次の検索要求の受付を許可する（Ｓ２２１）。
【００７８】
続いて、ＭＡＣ−ＤＡ抽出回路５０から出力されるフレームＦＲＭＮおよびポート指示信号ＰＩを受けた出力先振り分け回路６０では、コントローラ６１により、ポート指示信号ＰＩが１つのポート番号（ＰＯＲＴ＝ｋ）を指示するものであるかの判定が行われる（Ｓ２２２）。ＰＯＲＴ＝ｋである場合、コントローラ６１により、ライン側のｋ番目のポートＰｋに対応したＦＩＦＯ６２−ｋに対してライトイネーブル信号ＷＥＮｋが出力されて、ＭＡＣ−ＤＡ抽出回路５０からのフレームＦＲＭＮがＦＩＦＯ６２−ｋを通ってポートＰｋに出力される（Ｓ２２３）。
【００７９】
一方、上記ポート指示信号ＰＩの指示がＰＯＲＴ＝ａｌｌである場合には、コントローラ６１により、ライン側の全てのポートＰ１〜Ｐｎに対応したＦＩＦＯ６２−１〜６２−ｎに対してライトイネーブル信号ＷＥＮ１〜ＷＥＮｎがそれぞれ出力される。これにより、ＭＡＣ−ＤＡ抽出回路５０からのフレームＦＲＭＮが各ＦＩＦＯ６２−１〜６２−ｎを通って各ポートＰ１〜Ｐｎに出力され、フラッディングが行われる（Ｓ２２４）。
【００８０】
ここで、上記ミスヒットカウントテーブルの構成について、図１４に示す具体的な一例を参照しながら詳しく説明する。図１４のミスヒットカウントテーブルは、物理アドレス０，１，…ｎ毎に、登録有無フラグ、ＭＡＣアドレス、カウント有効フラグ、ローカルカウント値ＣＬ、ミスヒットカウント値ＣＭおよび優先フラグをそれぞれ管理している。
【００８１】
登録有無フラグは、ミスヒットカウントテーブルの個々の物理アドレスにデータが登録されているか否かを示すものであり、登録有りの場合に「１」が設定され、登録無しの場合に「０」が設定される。この登録有無フラグは、前述したＳ２１６における空き物理アドレスの判定に利用可能である。図１４の例では、２番の物理アドレスが、データの登録されていない空き物理アドレスに該当している。
【００８２】
ＭＡＣアドレスは、ミスヒット回数のカウント処理要求のあった宛先アドレスＭＡＣ−ＤＡに該当し、前述した上り方向のフレームＦＲＭＬについてのＭＡＣ学習テーブルへの登録要求時には、送信元アドレスＭＡＣ−ＳＡの検索対象となる。
【００８３】
カウント有効フラグは、ミスヒットカウント値ＣＭが有効であるか否かを示す。ローカルカウント値ＣＬは、該当するＭＡＣアドレスについてカウントされたミスヒット回数の途中経過を示す。ミスヒットカウント値ＣＭは、ミスヒットエージング周期毎のミスヒット回数（頻度）を示す。優先フラグは、ミスヒットカウント値ＣＭが予め定めた閾値以上
であるか否かを示す（前述の図１１に示したＭＡＣ学習テーブルの優先フラグに対応）。
【００８４】
上記のようなミスヒットカウントテーブルの登録データは、前述の図１３に示したＳ２１２〜Ｓ２１８の一連の処理により管理される。このミスヒットカウントテーブルの管理の具体的な内容について図１５を参照しながら詳しく説明する。
【００８５】
図１５の（１）に示す段階では、特定の宛先アドレスＭＡＣ−ＤＡ（以下、ＭＡＣ−ＤＡ＝αと表記する）を含む下りフレームがネットワーク側から入力され、該宛先アドレスＭＡＣ−ＤＡ＝αでＭＡＣ学習テーブルを検索してミスヒットになった場合を想定している。このとき、ミスヒットカウントテーブルにおいて登録有無フラグが「０」となっている空き物理アドレスがあれば、該物理アドレスに上記宛先アドレスＭＡＣ−ＤＡ＝αが登録され、該当する登録有無フラグが「１」に設定される。この段階では、エージング監視回路８０からのエージングタイミング信号ＳＭＡＴがミスヒットカウント回路９０で受信されておらずミスヒットエージング周期を経過していないため、カウント有効フラグは「０」に設定される。ローカルカウント値ＣＬは、ローカルミスヒット数カウンタ９２のカウントアップ動作により「１」となるが、カウント有効フラグが「０」であるため、ミスヒットカウント値ＣＭは「０」に設定される。このミスヒットカウント値ＣＭはコンパレータ９４に設定された閾値（例えば、２５５回）より小さいので、優先フラグは「０」に設定される。
【００８６】
続いて、（２）の段階では、エージング監視回路８０からのエージングタイミング信号ＳＭＡＴがミスヒットカウント回路９０で受信される。上記（１）の段階で宛先アドレスＭＡＣ−ＤＡ＝αを新規登録した後、上記エージングタイミング信号ＳＭＡＴを受信するまでの経過時間は、ミスヒットエージング周期の一周期分には満たないため、この段階でのカウント有効フラグは「０」のままとされ、ローカルカウント値ＣＬが「０」に初期化される。
【００８７】
（３）の段階では、宛先アドレスＭＡＣ−ＤＡ＝αを含む下りフレームが再びネットワーク側から入力され、ＭＡＣ学習テーブルの検索結果がミスヒットになったことにより、ローカルカウント値ＣＬがカウントアップされて「１」となる。続く（４）および（５）の段階でも、上記（３）の段階と同様に、宛先アドレスＭＡＣ−ＤＡ＝αを含む下りフレームの入力およびＭＡＣ学習テーブルの検索ミスヒットにより、ローカルカウント値ＣＬが順次カウントアップされる。（５）の段階でのローカルカウント値ＣＬは「３」となる。
【００８８】
（６）の段階では、エージング監視回路８０からのエージングタイミング信号ＳＭＡＴがミスヒットカウント回路９０で受信され、上記（２）の段階でのエージングタイミング信号ＳＭＡＴの受信からミスヒットエージング周期の一周期分が経過したことになるため、カウント有効フラグが「１」に設定される。そして、このタイミングの直前におけるローカルカウント値ＣＬの「３」がミスヒットカウント値ＣＭに転写され、ローカルカウント値ＣＬが「０」に初期化される。
【００８９】
（７）の段階では、上記（３）の段階と同様に、宛先アドレスＭＡＣ−ＤＡ＝αを含む下りフレームの入力およびＭＡＣ学習テーブルの検索ミスヒットにより、ローカルカウント値ＣＬがカウントアップされて「１」となる。これ以降、図示を省略しているがＭＡＣ−ＤＡ＝αのフレーム入力が高い頻度で発生してミスヒット回数のカウントが積み重ねられ、（８）の段階におけるローカルカウント値ＣＬは「ＦＦ」（１６進数表示）となっている。つまり、（７）の段階から（８）の段階に至るまでの間にミスヒットが２５５回発生したことになる。
【００９０】
（９）の段階では、ミスヒットカウント回路９０がエージングタイミング信号ＳＭＡＴを受信する。上記（６）の段階でのエージングタイミング信号ＳＭＡＴの受信からミスヒットエージング周期の一周期分が経過したことになるため、このタイミングの直前におけるローカルカウント値ＣＬの「ＦＦ」がミスヒットカウント値ＣＭに転写される。このミスヒットカウント値ＣＭは、コンパレータ９４に設定された閾値以上となるため、優先フラグが「１」に設定される。なお、ローカルカウント値ＣＬは「０」に初期化される。以降、上記と同様にしてミスヒットエージング周期毎にミスヒットカウント値ＣＭが更新され、ＭＡＣ−ＤＡ＝αの下りフレームの流量（入力頻度）に応じた優先フラグの設定が行われる。
【００９１】
（１０）の段階では、宛先アドレスＭＡＣ−ＤＡ＝αの下りフレーム入力に応じたＭＡＣ学習テーブルの検索結果がヒットになる、すなわち、ＭＡＣ−ＤＡ＝αに一致したＭＡＣアドレスがＭＡＣ学習テーブルに登録済みとなったことにより、ミスヒットカウントテーブルからＭＡＣアドレスがαに該当する登録データが削除される。これにより、当該物理アドレスの登録有無フラグ、カウント有効フラグ、ローカルカウント値ＣＬ、ミスヒットカウント値ＣＭおよび優先フラグはいずれも「０」に設定される。
【００９２】
なお、上記ミスヒットカウントテーブルの管理に関する説明では、ＭＡＣ学習テーブルの検索結果がミスヒットになった宛先アドレスＭＡＣ−ＤＡ＝αをミスヒットカウントテーブルに登録する際に、ミスヒットカウントテーブルに空きの物理アドレスがある場合を想定した。しかし、ミスヒットカウントテーブルに空きの物理アドレスが無いＦＵＬＬ状態の場合であっても、例えば、ミスヒットカウントテーブルの登録データのうちで、カウント有効フラグが「１」であり、かつ、ミスヒットカウント値ＣＭが最も小さいＭＡＣアドレスを特定し、該ＭＡＣアドレスが登録されている物理アドレスのデータを上書きの対象として、新たにミスヒットになった宛先アドレスＭＡＣ−ＤＡ＝αを登録することが可能である。上書き対象の条件の１つとして、カウント有効フラグが「１」を設定している理由は、登録直後のＭＡＣアドレスに対する上書きを防止するためである。これにより、ミスヒットカウントテーブルのＦＵＬＬ状態には、ミスヒット回数が相対的に少ないＭＡＣアドレスに対して上書き登録の処理が行われるようになる。
【００９３】
上記のようにしてミスヒットカウントテーブルの管理が行われることにより、ＭＡＣ学習テーブルにおける宛先アドレスＭＡＣ−ＤＡの検索で、一定周期内に発生するミスヒット回数が所要の閾値以上になるＭＡＣアドレス、つまり、ＭＡＣ学習テーブルに未登録のＭＡＣアドレスのうちで、ネットワーク側からライン側への下り方向のフレーム出力流量が多いＭＡＣアドレスが特定され、該ＭＡＣアドレスに対応付けてミスヒットカウントテーブルに優先フラグが立てられるようになる。
【００９４】
このミスヒットカウントテーブルの優先フラグに関する情報が、ＭＡＣ学習テーブルに送信元アドレスＭＡＣ−ＳＡおよびポート情報を登録する際に参照され、下り方向のフレーム出力流量が多いＭＡＣアドレスに該当するＭＡＣ学習テーブルの登録データにも優先フラグが立てられることになる（上述した図１０のＳ１１４）。そして、ＭＡＣ学習テーブルのＦＵＬＬ状態において、未登録の送信元アドレスＭＡＣ−ＳＡの登録要求を受けた場合には、優先フラグが無く、かつ、エージングタイマ値Ｔが最も大きいＭＡＣアドレスに対応した登録データが上書きの対象とされる（上述した図１０のＳ１１３）。つまり、ＭＡＣ学習テーブルの優先フラグが立てられたＭＡＣアドレスに対応する登録データは、ＦＵＬＬ状態における上書き登録の対象から優先的に除外される。
【００９５】
したがって、フレーム中継装置１によれば、下り方向のフレーム出力流量が多いＭＡＣアドレスについては、ＭＡＣ学習テーブルに一度登録されれば、ＭＡＣ学習テーブルがＦＵＬＬ状態になっても、エージング監視でタイムアウトにならない限り、該ＭＡＣアドレ
スに対応した登録データは上書き削除されないように保護される。その結果、ＭＡＣ学習テーブルのＦＵＬＬ状態において、下り方向のフレーム出力流量が比較的少ないＭＡＣアドレスの登録データに対して新たなデータが上書き登録されるようになるため、該上書き登録に起因して発生するフラッディングを抑制することができる。たとえ上書き登録に起因したフラッディングが発生したとしても、ライン側の各ポートＰ１〜Ｐｎに転送されるフレームが消費する各ポートの帯域は限られているので、通信網の帯域圧迫を効果的に緩和することが可能である。また、ＭＡＣ学習テーブルおよびミスヒットカウントテーブルについて、ＦＵＬＬ状態での上書き登録を可能にしているため、フレーム中継装置１に接続され得る端末の台数が多数に及んでもメモリ容量の増大を抑えることができ、低コスト化にも有利である。
【００９６】
次に、上述したフレーム中継装置１の応用例について説明する。
図１６は、フレーム中継装置１の応用例に用いられるミスヒットカウント回路の構成を示すブロック図である。なお、この応用例におけるミスヒットカウント回路以外の各回路要素の構成は上述したフレーム中継装置１と同一であるため、ここでの説明を省略する。
【００９７】
図１６において、上記応用例に用いられるミスヒットカウント回路９０’の構成が、上述の図９に示したミスヒットカウント回路９０の構成と異なる点は、コンパレータ９４の出力にラッチ９５が挿入されている点である。このラッチ９５は、コンパレータ９４から出力される信号の状態を保持する機能を持つ。
【００９８】
上記のような構成のミスヒットカウント回路９０’では、ミスヒットカウントテーブルに登録されている各ＭＡＣアドレスに対応したミスヒットカウント値ＣＭが閾値以上となった場合に、当該ＭＡＣアドレスに対して優先フラグを設定するためにコンパレータ９４から出力される信号の状態がラッチ９５によって保持される。そして、当該ＭＡＣアドレスがミスヒットカウントテーブルから削除されることにより、ラッチ９５がリセットされる。
【００９９】
これにより、上記ＭＡＣアドレスを宛先とする下りフレームの流量が変動して、ミスヒットカウント値ＣＭが一時的に閾値より小さくなっても、そのミスヒットカウント値ＣＭの変化によって優先フラグの設定が解除されてしまうことが回避される。つまり、ミスヒットカウント値ＣＭが閾値の近辺で比較的短い時間に変化するような状況でも、優先フラグが一度設定されると、ミスヒットカウント値ＣＭの変化に関係なく、当該ＭＡＣアドレスがミスヒットカウントテーブルから削除されるまで、優先フラグ有りの状態が維持される。このため、ＭＡＣ学習テーブルのＦＵＬＬ状態における上書き登録の処理を安定して行うことが可能になる。
【０１００】
以上の実施形態に関して、さらに以下の付記を開示する。
【０１０１】
（付記１）  入力ポートと、
前記入力ポートから入力するフレームに含まれる送信元アドレスを抽出する送信元アドレス抽出手段と、
前記送信元アドレス抽出手段で抽出された送信元アドレス、および、前記フレームが入力された前記入力ポートの対応関係を示すデータを記憶する記憶手段と、
出力ポートに出力するフレームに含まれる宛先アドレスを抽出する宛先アドレス抽出手段と、
前記記憶手段から、前記宛先アドレス抽出手段で抽出された宛先アドレスに該当するデータを検索する検索手段と、
前記検索手段の検索結果に基づいて、前記出力ポートから前記宛先アドレスに対応するポートを選択し、該ポートに前記宛先アドレスを含むフレームを振り分ける出力先振り分
け手段と、
前記検索手段の検索結果がミスヒットになる回数を宛先アドレス毎にカウントし、該カウントしたミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出するミスヒットカウント手段と、
前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが前記記憶手段に記憶された後、当該記憶手段に記憶されている全てのデータのうちで、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータが上書き削除されないように保護する管理手段と、
を備えたことを特徴とするフレーム中継装置。
【０１０２】
（付記２）  付記１に記載のフレーム中継装置であって、
前記出力先振り分け手段は、前記検索手段の検索結果がミスヒットのとき、前記出力ポートの全てに前記宛先アドレスを含むフレームを振り分けることを特徴とするフレーム中継装置。
【０１０３】
（付記３）  付記１または２に記載のフレーム中継装置であって、
前記管理手段は、前記記憶手段がデータで満杯の状態にあるときに、前記記憶手段にデータが記憶されていない新たな送信元アドレスを含むフレームが前記入力ポートの少なくとも１つから入力すると、前記記憶手段に記憶された全てのデータのうち、前記ミスヒットカウント手段で検出された宛先アドレスに該当するデータ以外で最も古くに記憶されたデータに対して、前記新たな送信元アドレスに対応したデータを上書きすることを特徴とするフレーム中継装置。
【０１０４】
（付記４）  付記１〜３のいずれか１つに記載のフレーム中継装置であって、
前記ミスヒットカウント手段は、所定の周期内に前記検索手段の検索結果がミスヒットになる回数を宛先アドレス毎にカウントし、そのカウントした所定の周期内のミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出することを特徴とするフレーム中継装置。
【０１０５】
（付記５）  付記４に記載のフレーム中継装置であって、
前記ミスヒットカウント手段は、前記カウントした所定の周期内のミスヒット回数が前記閾値以上になった場合、当該カウント周期以降において前記ミスヒット回数を保持して前記宛先アドレスの検出を行うことを特徴とするフレーム中継装置。
【０１０６】
（付記６）  付記１〜５のいずれか１つに記載のフレーム中継装置であって、
前記記憶手段にデータが記憶済みの送信元アドレスを含むフレームが、該送信元アドレスに対応付けられた前記ポートに対して所定の時間内に再入力されるか否かを監視し、再入力の無い送信元アドレスに該当するデータを前記記憶手段から削除するエージング監視手段を備えたことを特徴とするフレーム中継装置。
【０１０７】
（付記７）  付記１〜６のいずれか１つに記載のフレーム中継装置であって、
前記送信元アドレス抽出手段で送信元アドレスの抽出が行われたフレームをネットワークに送信する送信手段と、
前記ネットワークを伝送されたフレームを受信し、該フレームを前記宛先アドレス抽出手段に与える受信手段と、
を備えたことを特徴とするフレーム中継装置。
【０１０８】
（付記８）  入力ポートから入力するフレームに含まれる送信元アドレスを抽出し、
抽出した前記送信元アドレス、および、前記フレームが入力された前記入力ポートの対応関係を示すデータを記憶し、
出力ポートに出力するフレームに含まれる宛先アドレスを抽出し、
記憶した前記データから、抽出した前記宛先アドレスに該当するデータを検索し、
前記検索の結果に基づいて、前記出力ポートから前記宛先アドレスに対応するポートを選択し、該ポートに前記宛先アドレスを含むフレームを振り分けるフレーム中継方法であって、
前記検索の結果がミスヒットになる回数を宛先アドレス毎にカウントし、
該カウントしたミスヒット回数が予め定めた閾値以上になる宛先アドレスを検出し、
検出した前記宛先アドレスに該当するデータを記憶した後、全ての記憶データのうちで、検出した前記宛先アドレスに該当するデータが上書き削除されないように保護することを特徴とするフレーム中継方法。
【符号の説明】
【０１０９】
１…フレーム中継装置
１０…多重化回路
１１−１〜１１−ｎ…速度変換ＦＩＦＯ
１２…セレクタ
２０…ＭＡＣ−ＳＡ抽出回路
２１，５１…待機用メモリ
２２…ＭＡＣ−ＳＡラッチ
２３，５３…ＳＦＤラッチ
２４，５４…フレームカウンタ
２５…ＭＡＣ−ＳＡタイミングデコーダ
３０…上りフレーム送信回路
３１，４１…フリップフロップ
４０…下りフレーム受信回路
５０…ＭＡＣ−ＤＡ抽出回路
５２…ＭＡＣ−ＤＡラッチ
５５…ＭＡＣ−ＤＡタイミングデコーダ
５６…論理和（ＯＲ）回路
５７…論理否定（ＮＯＴ）回路
６０…出力先振り分け回路
６１…コントローラ
６２−１〜６２−ｎ…ＦＩＦＯ
７０…ＭＡＣ学習テーブル管理回路
７１，９１…記憶ユニット
７１Ａ，９１Ａ…メモリ
７１Ｂ，９１Ｂ…プロセッサ
７２…シフトレジスタ
８０…エージング監視回路
８１…自走カウンタ
８２…デコーダ
９０，９０’ …ミスヒットカウント回路
９２…ローカルミスヒット数カウンタ
９３…ミスヒットカウント値ラッチ
９４…コンパレータ
９５…ラッチ
ＣＬ…ローカルカウント値
ＣＭ…ミスヒットカウント値
ＦＬＧ…優先フラグ情報
ＦＲＭ１〜ＦＲＭｎ，ＦＲＭＬ，ＦＲＭＮ…フレーム
ＨＩＴ…ヒット情報
ＭＩＳＨＩＴ…ミスヒット情報
ＭＡＣ−ＳＡ…送信元アドレス
ＭＡＣ−ＤＡ…宛先アドレス
Ｐ１〜Ｐｎ…ポート
ＰＯＲＴ…ポート情報
ＳＡＴ，ＳＭＡＴ…エージングタイミング信号
Ｔ…エージングタイマ値
【図１】
0005682528.tif 000002
【図２】
0005682528.tif 000003
【図３】
0005682528.tif 000004
【図４】
0005682528.tif 000005
【図５】
0005682528.tif 000006
【図６】
0005682528.tif 000007
【図７】
0005682528.tif 000008
【図８】
0005682528.tif 000009
【図９】
0005682528.tif 000010
【図１０】
0005682528.tif 000011
【図１１】
0005682528.tif 000012
【図１２】
0005682528.tif 000013
【図１３】
0005682528.tif 000014
【図１４】
0005682528.tif 000015
【図１５】
0005682528.tif 000016
【図１６】
0005682528.tif 000017