(57)【特許請求の範囲】
【請求項１】
上位装置から下りフレームを受信して、複数のＯＮＵのうち当該下りフレームの宛先ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤ（Logical Link ID）および／または下り出力先選択情報からなる宛先情報を特定し、当該宛先情報を当該下りフレームに付与して、対応するＯＮＵへ転送するフレーム転送装置であって、
前記ＯＮＵと接続されたユーザ装置に個別のＭＡＣアドレスごとに、当該ＭＡＣアドレスおよび当該ＯＮＵの宛先情報を含むデータが登録されている検索テーブルと、
受信した下りフレームの宛先ＭＡＣアドレスに基づいて、前記検索テーブルから対応するデータを検索し、当該データから当該下りフレームに付加するための宛先情報を取得する検索部とを備え、
前記検索テーブルは、前記データを格納するＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリを有し、これらエントリをＮ個ずつＭ個のバケットに分割するとともに、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割し、これらバケットをＫ（Ｋは２以上の整数）個ずつ結合した、Ｍ／Ｋ個の結合バケットを有し、前記各データを、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリでそれぞれ記憶し、前記検索部から指定されたバケット番号のバケットに属するエントリで記憶している前記データを記憶領域ごとに読み出して並列的に出力し、
前記検索部は、前記検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、前記検索テーブルのうち、前記下りフレームの宛先ＭＡＣアドレスから前記ハッシュ関数で結合バケットを特定した後、当該結合バケットに属する結合前のバケットを順次切替選択し、これに応じて当該結合前のバケットに属する各エントリから並列的に出力されたＮ個の前記データを前記比較回路で比較してＮ個の比較結果を得る処理をＫ回繰り返し、得られたＮ×Ｋの比較結果に基づいて、これらＮ×Ｋ個のデータのうち前記宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから前記宛先情報を取得する
ことを特徴とするフレーム転送装置。
【請求項２】
請求項１に記載のフレーム転送装置において、
前記検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、当該検索テーブルのうち、前記ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスから前記ハッシュ関数で特定したバケットを選択し、これに応じて当該バケットに属する各エントリから並列的に出力された前記データを、それぞれ対応する前記比較回路により、当該データに含まれるＭＡＣアドレスと前記送信元ＭＡＣアドレスとをそれぞれ比較し、これら比較回路で得られたＮ個の比較結果に基づいて、当該検索テーブルに対する当該送信元ＭＡＣアドレスの登録有無を確認し、当該送信元ＭＡＣアドレスが当該検索テーブルに登録されていない場合は、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、当該検索テーブルのうち当該バケットに属する空きエントリへ登録する登録部をさらに備えることを特徴とするフレーム転送装置。
【請求項３】
請求項２に記載のフレーム転送装置において、
前記登録部は、前記宛先情報を登録する際、当該送信元ＭＡＣアドレスに関する受信状況を含めて前記検索テーブルに登録し、一定のエージング周期ごとに、前記検索テーブルに登録されている各ＭＡＣアドレスの当該受信状況を検査し、これらＭＡＣアドレスのうち当該エージング周期内に受信確認されていないＭＡＣアドレスを無効状態に設定することを特徴とするフレーム転送装置。
【請求項４】
請求項１〜請求項３のいずれか１つに記載のフレーム転送装置において、
前記検索テーブルは、Ｎ個の前記記憶領域ごとに、前記バケット番号の範囲に基づき分割された複数の記憶領域を有し、
前記検索部は、前記下りフレームの宛先ＭＡＣアドレスから前記ハッシュ関数で特定したバケット番号を前記検索テーブルへ指定し、これに応じて前記検索テーブルの対応する分割後の記憶領域から並列的に出力された前記データごとに、当該分割後の記憶領域が属する分割前の記憶領域と対応する比較回路で得られたＮ個の比較結果に基づいて、これらデータのうち前記宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから前記宛先情報を取得する
ことを特徴とするフレーム転送装置。
【請求項５】
請求項１〜請求項４のいずれか１つに記載のフレーム転送装置において、
前記検索テーブルの前記各記憶領域は、それぞれ１つ以上の記憶回路からなり、
前記各記憶領域の使用状態を示す外部からの設定に基づいて、前記記憶領域のうち、使用状態の記憶領域を構成する記憶回路および／または当該記憶領域と対応する比較回路へ電源を供給し、未使用状態の記憶領域を構成する記憶回路および／または当該記憶領域と対応する比較回路への電源供給を停止する電源制御部をさらに備えることを特徴とするフレーム転送装置。
【請求項６】
上位装置から下りフレームを受信して、複数のＯＮＵのうち当該下りフレームの宛先ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤ（Logical Link ID）および／または下り出力先選択情報からなる宛先情報を特定し、当該宛先情報を当該下りフレームに付与して、対応するＯＮＵへ転送するフレーム転送装置で用いられるフレーム転送方法であって、
検索テーブルが、前記ＯＮＵと接続されたユーザ装置に個別のＭＡＣアドレスごとに、当該ＭＡＣアドレスおよび当該ＯＮＵの宛先情報を含むデータを登録するステップと、
検索部が、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、前記検索テーブルから対応するデータを検索し、当該データから当該下りフレームに付加するための宛先情報を取得する検索ステップとを備え、
前記検索テーブルが、前記データを格納するＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリを有し、これらエントリをＮ個ずつＭ個のバケットに分割するとともに、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割し、これらバケットをＫ（Ｋは２以上の整数）個ずつ結合した、Ｍ／Ｋ個の結合バケットを有し、前記各データを、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリでそれぞれ記憶し、前記検索部から指定されたバケット番号のバケットに属するエントリで記憶している前記データを記憶領域ごとに読み出して並列的に出力するステップと、
前記検索部が、前記検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、前記検索テーブルのうち、前記下りフレームの宛先ＭＡＣアドレスから前記ハッシュ関数で結合バケットを特定した後、当該結合バケットに属する結合前のバケットを順次切替選択し、これに応じて当該結合前のバケットに属する各エントリから並列的に出力されたＮ個の前記データを前記比較回路で比較してＮ個の比較結果を得る処理をＫ回繰り返し、得られたＮ×Ｋの比較結果に基づいて、これらＮ×Ｋ個のデータのうち前記宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから前記宛先情報を取得するステップと
をさらに備えることを特徴とするフレーム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光通信技術に関し、特にＰＯＮシステムと事業者側ネットワーク（サービス網）の上位装置との間でやり取りされるフレームを転送するためのフレーム転送技術に関する。
【背景技術】
【０００２】
２００９年にＩＥＥＥ８０２．３ａｖにおいて１０Ｇ−ＥＰＯＮ（10 Gigabit Ethernet Passive Optical Network：Ethernetは登録商標）の標準化が完了した。１０Ｇ−ＥＰＯＮの特徴は、既に広く普及しているＧＥ−ＰＯＮ（Gigabit Ethernet Passive Optical Network：非特許文献１参照）の１０倍の高速伝送が可能なことである。さらに、既存のＧＥ−ＰＯＮと１０Ｇ−ＥＰＯＮを混在させて利用できるという特徴がある。
【０００３】
ＧＥ−ＰＯＮと１０Ｇ−ＥＰＯＮを混在させて利用する場合は、１Ｇ下り信号と１０Ｇ下り信号で異なる波長を使用するＷＤＭ技術を用い、１Ｇ下り信号間と１０Ｇ下り信号間のそれぞれにおいてＴＤＭ技術を用いる。上り信号においては、１Ｇ上り信号と１０Ｇ上り信号で同一の波長を使用し、１Ｇ上り信号と１０Ｇ上り信号をまとめてＴＤＭＡ技術を用いる。すなわち、１Ｇ下り信号、１０Ｇ下り信号、および、上り信号で異なる３種類の波長を用いる。
【０００４】
図３２は、従来の１０Ｇ−ＥＰＯＮシステムの構成例である。図３２に示すように、１０Ｇ−ＥＰＯＮでは、ＧＥ−ＰＯＮと１０Ｇ−ＥＰＯＮを混在させて利用できるため、１台のフレーム転送装置、ここではＯＬＴ（Optical Line Terminal）に１Ｇ−ＯＮＵ（Optical Network Unit）と１０Ｇ−ＯＮＵを接続することができる。
図３３は、従来のＧＥ−ＰＯＮ用ＯＬＴの構成を示すブロック図である（特許文献１参照）。図３４は、従来のＧＥ−ＰＯＮ用ＯＬＴで用いられるフレーム転送処理の要部構成を示すブロック図である。
【０００５】
従来のＯＬＴでは、フレーム転送処理部６０で、下りフレームの宛先ＭＡＣアドレスにより、下りフレームの宛先ＯＮＵを決定する。このため、受信した上りフレームの送信元ＭＡＣアドレスを、ＭＡＣアドレス登録部６１Ａが、受信した上りフレームのプリアンブルから取得した送信元ＯＮＵのＬＬＩＤ（Logical Link ID）に括りつけてＭＡＣアドレス検索テーブル６１Ｂへ登録しておく。そして、受信した下りフレームの宛先ＭＡＣアドレスが、ＭＡＣアドレス検索テーブル６１Ｂに登録済みであれば、ＭＡＣアドレス検索部６１Ｃで、そのＭＡＣアドレスに括りつけられたＬＬＩＤを宛先ＯＮＵと判断する機能が搭載されている。
【０００６】
図３３のＯＬＴにおいて、第１の送受信回路５２は、ＰＯＮポート５１に接続されたＯＤＮ（Optical Distribution Network）を介してＯＮＵとの間でフレームを送受信するための回路である。ＯＬＴとＯＮＵの間のデータ伝送を、ＯＤＮを介して行うシステムがＰＯＮである。
第２の送受信回路５８は、ＳＮＩ（Service Node Interface）側に設けられたＳＮＩポート５９を介して接続された事業者ネットワークＮＷとのインターフェースになる回路である。
フレーム分離部５３は、第１の送受信回路５２より受信されたフレームのうち、ＯＬＴ５０宛てのフレーム（ＰＯＮの制御に用いられる制御フレーム）を制御フレーム処理部５４へ送信するとともに、その他のフレームをフレーム転送処理部６０へ送信する処理部である。
【０００７】
フレーム多重部５６は、フレーム転送処理部６０からの下りフレームと制御フレーム処理部５４からの制御フレームとを時分割的に多重し、第１の送受信回路５２に対して送信する処理部である。
フレーム転送処理部６０は、フレーム分離部５３と第２の送受信回路５８の双方から受信したフレームについて、それぞれの宛先ＭＡＣアドレスに基づき、フレームの転送処理を行う処理部である。
【０００８】
制御フレーム処理部５４は、各ＯＮＵにＬＬＩＤを自動的に割り当てるための発見処理（Discoveryプロセス）や上り信号（ＯＮＵからＯＬＴ宛ての信号）の調停といった、ＰＯＮの制御に関する処理や、各ＯＮＵのＬＬＩＤ等のＰＯＮ−ＩＦポート情報を帯域割当処理部５５へ転送する処理を行う処理部である。
帯域割当処理部５５は、制御フレーム処理部５４からの要求に従い、ＯＮＵへ帯域（送信開始時刻と送信データ量）を割り当てる処理や、制御フレーム処理部５４から転送されたＰＯＮ−ＩＦポート情報を管理する処理を行う処理部である。
【０００９】
また、図３４のフレーム転送処理部６０のうち、ＭＡＣアドレスの登録・検索を行うＭＡＣアドレス処理部６１において、ＭＡＣアドレス登録部６１Ａは、受信した上りフレームの送信元ＭＡＣアドレスに基づいてＭＡＣアドレス検索テーブル６１Ｂを検索し、送信元ＭＡＣアドレスがＭＡＣアドレス検索テーブル６１Ｂに登録されていない場合は新規に登録し、送信元ＭＡＣアドレスが既にＭＡＣアドレス検索テーブル６１Ｂに登録されている場合は登録情報を更新する（登録情報を変更する必要がない場合は、更新しないようにしてもよい）。
ＭＡＣアドレス検索テーブル６１Ｂには、各送信元ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤが登録されている。
【００１０】
ＭＡＣアドレス検索部６１Ｃは、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル６１Ｂから、対応するＬＬＩＤを読み出して、下りフレームに付与するＬＬＩＤを決定する。
下りレイテンシ吸収部６１Ｄは、受信した下りフレームに遅延を付加して、ＭＡＣアドレス検索部６１ＣでのＬＬＩＤ決定処理によるレイテンシを吸収する。
出力合成部６１Ｅは、下りレイテンシ吸収部６１Ｄから出力された下りフレームのプリアンブルに、ＭＡＣアドレス検索部６１Ｃで決定したＬＬＩＤを挿入することにより、送信する下りフレームに宛先ＬＬＩＤを付与する。
【００１１】
図３５は、従来のＧＥ−ＰＯＮ用ＯＬＴで用いられるフレーム転送処理の要部構成（変更後）を示すブロック図である。従来のＯＬＴにおいて、下りフレームの宛先ＭＡＣアドレスから宛先ＯＮＵのＬＬＩＤを決定し、そのＬＬＩＤから下り伝送速度情報を決定して、それらの情報を下りフレームに付加する回路を追加する場合（すなわち、１０Ｇ−ＥＰＯＮ対応とする場合）、フレーム転送処理部６０において、図３５のような、下り伝送速度処理部６２が必要となると考えられる。
【００１２】
図３５において、速度情報登録部６２Ａは、受信した上りフレームのプリアンブルから、送信元ＯＮＵのＬＬＩＤを取得し、送信元ＯＮＵのＬＬＩＤに対応する下り伝送速度情報を、帯域割当処理部５５から読み出して、当該ＬＬＩＤと下り伝送速度情報とを対応付けて、下り伝送速度検索テーブル６２Ｂに登録する。
下り伝送速度検索テーブル６２Ｂには、各ＯＮＵのＬＬＩＤに対応する下り伝送速度情報が登録されている。
下り伝送速度検索部６２Ｃは、下りフレームの宛先ＬＬＩＤに基づいて下り伝送速度検索テーブル６２Ｂから下り伝送速度情報を読み出して、送信する下りフレームの下り伝送速度情報を決定する。
【００１３】
第２の下りレイテンシ吸収部６２Ｄは、宛先ＬＬＩＤが付加された下りフレームに遅延を付加して、下り伝送速度検索部６２Ｃでの下り伝送速度決定処理によるレイテンシを吸収する。
第２の出力合成部６２Ｅは、第２の下りレイテンシ吸収部６２Ｄから出力された下りフレームに、下り伝送速度検索部６２Ｃでの検索により読み出された下り伝送速度情報を付与する。
下りフレームは、付与された下り伝送速度情報に従って、所定の速度でＰＯＮへ送出される。
【００１４】
なお、この図３５では、速度情報登録部６２Ａに対して、上りフレームと帯域割当処理部５５から下り伝送速度情報が入力されているが、このような登録用の回路（速度情報登録部６２Ａ）は必ずしも必要ではない。ＯＬＴ５０を制御・管理するソフトウェアが、ＬＬＩＤ毎の下り伝送速度情報を把握しているので、このソフトウェアにより、下り伝送速度検索テーブル６２Ｂに必要な情報を書き込むことが可能である。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２００９−２６０６６８号公報
【非特許文献】
【００１６】
【非特許文献１】「技術基礎講座［GE-PON技術］第１回 PONとは」、ＮＴＴ技術ジャーナル、Vol.17、No.8、pp.71-74、2005
【発明の概要】
【発明が解決しようとする課題】
【００１７】
しかしながら、このような従来技術では、フレーム転送装置においてＭＡＣアドレスの検索に用いるテーブルのエントリ数が大きくなると、検索に要する処理時間が大きくなる、もしくは、処理時間を短縮するために同じ回路を多数搭載しなければならなくなり、回路規模及び消費電力が大きくなるという問題点があった。
【００１８】
例えば、エントリ数が１６３８４の場合、テーブルから１エントリ（１アドレス）ずつ読み出して、処理を行うと１６３８４回の読み出しが必要となる。ここで、ＯＬＴにおいて、１２５ＭＨｚのクロックで内部の回路を動かした場合、１６３８４回の読み出しには最低で８ｎｓ×１６３８４＝１３１０７２ｎｓの時間がかかることになる。ＧＥ−ＰＯＮで伝送するフレームの最短時間は、プリアンブルの時間を含めて８ｎｓ×７２＝５７６ｎｓ、フレーム間の最小間隔８ｎｓ×１２＝９６ｎｓを加えても６７２ｎｓである。
【００１９】
特に、ＭＡＣアドレス検索テーブルのように、上りフレームのＭＡＣアドレス登録と下りフレームのＭＡＣアドレス検索を同一のテーブルにおいて行う場合は、双方向のフレームを同時に処理することになる。このため、フレーム入力頻度が２倍になるので、処理を６７２ｎｓ÷２＝３３６ｎｓ以内に完了させるか、もしくは、複数フレームの判定処理を並行して行って、１フレーム当たりの平均処理時間を３３６ｎｓ以下にする必要がある。
【００２０】
また、これに対する一例として、ＭＡＣアドレス検索テーブルから複数のデータを並列的に読み出して処理する構成が考えられる。図３６は、ＭＡＣアドレス検索テーブルの一構成例である。図３７は、ＭＡＣアドレス検索部の一構成例である。
これら例では、ＭＡＣアドレス検索テーブルを８個のメモリ＃１〜＃８で構成し、それぞれのメモリに、アドレスを１ずつすらしたエントリアドレス８ｎ〜８ｎ＋７を付与してデータを格納している。また、これらデータごとに、選択回路＃１〜＃８および比較器＃１〜＃８を設けて、入力フレームから選択したＭＡＣアドレスとメモリから読み出したデータのＭＡＣアドレスとを、並列的に比較している。
【００２１】
この構成例によれば、各メモリから８個のデータを並列的に読み出すことができるため、全エントリ数が１６３８４の場合、読み出し回数を２０４８回に削減が可能となる。しかしながら、この場合でも、２０４８回の読み出しには最低で８ｎｓ×２０４８＝１６３８４ｎｓの時間がかかることになる。エントリの並列読み出し数を３２個に増やしても、最低で８ｎｓ×５１２＝４０９６ｎｓの時間がかかることになる。
したがって、ＧＥ−ＰＯＮにおける上記条件をクリアするためには、ＭＡＣアドレス検索テーブルから、より多くのエントリを並列的に読み出す必要がある。このため、このような同じ回路を多数搭載して処理時間を短縮することになるため、回路規模および消費電力が大きくなる。
【００２２】
本発明はこのような課題を解決するためのものであり、少ない回路規模および消費電力で、エントリ数の大きいＭＡＣアドレス検索テーブルの検索処理時間を短縮できる技術を提供することを目的としている。
【課題を解決するための手段】
【００２３】
このような目的を達成するために、本発明にかかるフレーム転送装置は、上位装置から下りフレームを受信して、複数のＯＮＵのうち当該下りフレームの宛先ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤ（Logical Link ID）および／または下り出力先選択情報からなる宛先情報を特定し、当該宛先情報を当該下りフレームに付与して、対応するＯＮＵへ転送するフレーム転送装置であって、ＯＮＵと接続されたユーザ装置に個別のＭＡＣアドレスごとに、当該ＭＡＣアドレスおよび当該ＯＮＵの宛先情報を含むデータが登録されている検索テーブルと、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、検索テーブルから対応するデータを検索し、当該データから当該下りフレームに付加するための宛先情報を取得する検索部とを備え、検索テーブルは、データを格納するＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリを有し、これらエントリをＮ個ずつＭ個のバケットに分割するとともに、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割し、これらバケットをＫ（Ｋは２以上の整数）個ずつ結合した、Ｍ／Ｋ個の結合バケットを有し、各データを、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリでそれぞれ記憶し、検索部から指定されたバケット番号のバケットに属するエントリで記憶しているデータを記憶領域ごとに読み出して並列的に出力し、検索部は、検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、検索テーブルのうち、下りフレームの宛先ＭＡＣアドレスからハッシュ関数で結合バケットを特定した後、当該結合バケットに属する結合前のバケットを順次切替選択し、これに応じて当該結合前のバケットに属する各エントリから並列的に出力されたＮ個のデータを比較回路で比較してＮ個の比較結果を得る処理をＫ回繰り返し、得られたＮ×Ｋの比較結果に基づいて、これらＮ×Ｋ個のデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得するようにしたものである。
【００２４】
また、本発明にかかる上記フレーム転送装置の一構成例は、検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、当該検索テーブルのうち、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスからハッシュ関数で特定したバケットを選択し、これに応じて当該バケットに属する各エントリから並列的に出力されたデータを、それぞれ対応する比較回路により、当該データに含まれるＭＡＣアドレスと送信元ＭＡＣアドレスとをそれぞれ比較し、これら比較回路で得られたＮ個の比較結果に基づいて、当該検索テーブルに対する当該送信元ＭＡＣアドレスの登録有無を確認し、当該送信元ＭＡＣアドレスが当該検索テーブルに登録されていない場合は、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、当該検索テーブルのうち当該バケットに属する空きエントリへ登録する登録部をさらに備えるようにしたものである。
【００２５】
また、本発明にかかる上記フレーム転送装置の一構成例は、登録部で、宛先情報を登録する際、当該送信元ＭＡＣアドレスに関する受信状況を含めて検索テーブルに登録し、一定のエージング周期ごとに、検索テーブルに登録されている各ＭＡＣアドレスの当該受信状況を検査し、これらＭＡＣアドレスのうち当該エージング周期内に受信確認されていないＭＡＣアドレスを無効状態に設定するようにしたものである。
【００２６】
また、本発明にかかる上記フレーム転送装置の一構成例は、検索テーブルに、Ｎ個の記憶領域ごとに、バケット番号の範囲に基づき分割された複数の記憶領域を設け、検索部で、下りフレームの宛先ＭＡＣアドレスからハッシュ関数で特定したバケット番号を検索テーブルへ指定し、これに応じて検索テーブルの対応する分割後の記憶領域から並列的に出力されたデータごとに、当該分割後の記憶領域が属する分割前の記憶領域と対応する比較回路で得られたＮ個の比較結果に基づいて、これらデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得するようにしたものである。
【００２８】
また、本発明にかかる上記フレーム転送装置の一構成例は、検索テーブルの各記憶領域を、それぞれ１つ以上の記憶回路から構成し、各記憶領域の使用状態を示す外部からの設定に基づいて、記憶領域のうち、使用状態の記憶領域を構成する記憶回路および／または当該記憶領域と対応する比較回路へ電源を供給し、未使用状態の記憶領域を構成する記憶回路および／または当該記憶領域と対応する比較回路への電源供給を停止する電源制御部をさらに備えるようにしたものである。
【００２９】
また、本発明にかかるフレーム転送方法は、上位装置から下りフレームを受信して、複数のＯＮＵのうち当該下りフレームの宛先ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤ（Logical Link ID）および／または下り出力先選択情報からなる宛先情報を特定し、当該宛先情報を当該下りフレームに付与して、対応するＯＮＵへ転送するフレーム転送装置で用いられるフレーム転送方法であって、検索テーブルが、ＯＮＵと接続されたユーザ装置に個別のＭＡＣアドレスごとに、当該ＭＡＣアドレスおよび当該ＯＮＵの宛先情報を含むデータを登録するステップと、検索部が、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、検索テーブルから対応するデータを検索し、当該データから当該下りフレームに付加するための宛先情報を取得する検索ステップとを備え、検索テーブルが、データを格納するＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリを有し、これらエントリをＮ個ずつＭ個のバケットに分割するとともに、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割し、これらバケットをＫ（Ｋは２以上の整数）個ずつ結合した、Ｍ／Ｋ個の結合バケットを有し、各データを、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリでそれぞれ記憶し、検索部から指定されたバケット番号のバケットに属するエントリで記憶しているデータを記憶領域ごとに読み出して並列的に出力するステップと、検索部が、検索テーブルの各記憶領域に対応して設けられたＮ個の比較回路を有し、検索テーブルのうち、下りフレームの宛先ＭＡＣアドレスからハッシュ関数で結合バケットを特定した後、当該結合バケットに属する結合前のバケットを順次切替選択し、これに応じて当該結合前のバケットに属する各エントリから並列的に出力されたＮ個のデータを比較回路で比較してＮ個の比較結果を得る処理をＫ回繰り返し、得られたＮ×Ｋの比較結果に基づいて、これらＮ×Ｋ個のデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得するステップとをさらに備えるものである。
【発明の効果】
【００３０】
本発明によれば、検索テーブルのすべてのエントリを検索範囲とするのではなく、検索テーブルのうち、検索対象ＭＡＣアドレスが格納されていると予想されるバケットだけに検索範囲を絞り込むことができる。したがって、当該バケットに属するエントリのデータを並列的に１回読み出すだけで検索を完了することができ、ＭＡＣアドレスの検索に要する処理を短時間で完了することができる。したがって、エントリ数の大きい検索テーブルの検索処理時間を短縮できる。
【図面の簡単な説明】
【００３１】
【図１】第１の実施の形態にかかるＰＯＮシステムの構成を示すブロック図である。
【図２】第１の実施の形態にかかるＯＬＴの構成を示すブロック図である。
【図３】第１の実施の形態にかかるフレーム転送処理部の要部構成を示すブロック図である。
【図４】第１の実施の形態にかかるフレーム転送処理部の他の要部構成を示すブロック図である。
【図５】第１の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図６】第１の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス登録部を示す構成例である。
【図７】ＰＯＮ区間で伝送されるフレームの構成例である。
【図８】第２の実施の形態にかかるＯＬＴの構成を示すブロック図である。
【図９】第２の実施の形態にかかるフレーム転送処理部の構成例を示すブロック図である。
【図１０】ＭＡＣアドレス検索テーブルの構成例である。
【図１１】下りフレームの出力先決定手順を示すフローチャートである。
【図１２】第２の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。
【図１３】第３の実施の形態にかかるＯＬＴの構成を示すブロック図である。
【図１４】上り入力部から出力される上りフレームの構成例である。
【図１５】第３の実施の形態にかかるＭＡＣアドレス登録手順を示すフローチャートである。
【図１６】ＭＡＣアドレス登録処理を示すタイムチャートである。
【図１７】ＭＡＣアドレス検索テーブルの他の構成例である。
【図１８】第４の実施の形態にかかるＭＡＣアドレス登録手順を示すフローチャートである。
【図１９】エージング処理手順を示すフローチャートである。
【図２０】ＭＡＣアドレス検索テーブルにおけるエントリの変遷を示すタイムチャートである。
【図２１】第５の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図２２】第６の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図２３】第６の実施の形態にかかるＭＡＣアドレス検索テーブルの電源供給遮断例である。
【図２４】第６の実施の形態にかかるＭＡＣアドレス検索テーブルの他の電源供給遮断例である。
【図２５】第７の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図２６】第７の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。
【図２７】第８の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図２８】第８の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。
【図２９】第９の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【図３０】第９の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。
【図３１】第９の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス登録部を示す構成例である。
【図３２】従来の１０Ｇ−ＥＰＯＮシステムの構成例である。
【図３３】従来のＧＥ−ＰＯＮ用ＯＬＴの構成を示すブロック図である。
【図３４】従来のＧＥ−ＰＯＮ用ＯＬＴで用いられるフレーム転送処理の要部構成を示すブロック図である。
【図３５】従来のＧＥ−ＰＯＮ用ＯＬＴで用いられるフレーム転送処理の要部構成（変更後）を示すブロック図である。
【図３６】ＭＡＣアドレス検索テーブルの一構成例である。
【図３７】ＭＡＣアドレス検索部の一構成例である。
【発明を実施するための形態】
【００３２】
次に、本発明の実施の形態について図面を参照して説明する。
［第１の実施の形態］
まず、図１および図２を参照して、本発明の第１の実施の形態にかかるＰＯＮシステム１００について説明する。図１は、第１の実施の形態にかかるＰＯＮシステムの構成を示すブロック図である。図２は、第１の実施の形態にかかるＯＬＴの構成を示すブロック図である。
【００３３】
図１のＰＯＮシステム１００は、１０Ｇ−ＥＰＯＮであり、ＧＥ−ＰＯＮと１０Ｇ−ＥＰＯＮを混在させて利用できるため、１台のフレーム転送装置、ここではＯＬＴに１Ｇ−ＯＮＵと１０Ｇ−ＯＮＵを接続することができる。
図２に示すように、ＯＬＴ１０（フレーム転送装置）には、主な機能部として、ＰＯＮポート１１、受信回路１２、フレーム分離部１３、制御フレーム処理部１４、帯域割当処理部１５、フレーム多重部１６、送信回路１７、送受信回路１８、ＳＮＩポート１９、およびフレーム転送処理部２０が設けられている。
【００３４】
図２のＯＬＴ１０において、受信回路１２は、ＰＯＮポート１１に接続されたＰＯＮを介してＯＮＵからの上りフレームを受信するための回路である。
送信回路１７は、ＰＯＮポート１１に接続されたＰＯＮを介してＯＮＵへの下りフレームを送信するための回路である。
送受信回路１８は、ＳＮＩ（Service Node Interface）側に設けられたＳＮＩポート１９を介して接続された事業者ネットワークＮＷとのインターフェースになる回路である。
フレーム分離部１３は、受信回路１２より受信されたフレームのうち、ＯＬＴ１０宛てのフレーム（ＰＯＮの制御に用いられる制御フレーム）を制御フレーム処理部１４へ送信するとともに、その他のフレームをフレーム転送処理部２０へ送信する処理部である。
【００３５】
フレーム多重部１６は、フレーム転送処理部２０からの下りフレームと制御フレーム処理部１４からの制御フレームとを時分割的に多重し、送信回路１７に対して送信する処理部である。
フレーム転送処理部２０は、フレーム分離部１３と送受信回路１８の双方から受信したフレームについて、それぞれの宛先ＭＡＣアドレスに基づき、フレームの転送処理を行う処理部である。
【００３６】
制御フレーム処理部１４は、各ＯＮＵにＬＬＩＤを自動的に割り当てるための発見処理（Discoveryプロセス）や上り信号（ＯＮＵからＯＬＴ宛ての信号）の調停といった、ＰＯＮの制御に関する処理や、各ＯＮＵのＬＬＩＤ等のＰＯＮ−ＩＦポート情報を帯域割当処理部１５へ転送する処理を行う処理部である。
帯域割当処理部１５は、制御フレーム処理部１４からの要求に従い、ＯＮＵへ帯域（送信開始時刻と送信データ量）を割り当てる処理や、制御フレーム処理部１４から転送されたＰＯＮ−ＩＦポート情報を管理する処理を行う処理部である。
【００３７】
図３は、第１の実施の形態にかかるフレーム転送処理部の要部構成を示すブロック図である。このフレーム転送処理部２０のうち、ＭＡＣアドレスの登録・検索を行うＭＡＣアドレス処理部２０Ａには、主な機能部として、ＭＡＣアドレス登録部（登録部）２１、ＭＡＣアドレス検索テーブル（検索テーブル）２２、ＭＡＣアドレス検索部（検索部）２３、下りレイテンシ吸収部２４、および出力合成部２５が設けられている。
【００３８】
このＯＬＴ１０では、フレーム転送処理部２０で、下りフレームの宛先ＭＡＣアドレスにより、下りフレームの宛先ＯＮＵを決定する。このため、受信した上りフレームの送信元ＭＡＣアドレスを、ＭＡＣアドレス登録部２１が、受信した上りフレームのプリアンブルから取得した送信元ＯＮＵのＬＬＩＤに括りつけてＭＡＣアドレス検索テーブル２２へ登録しておく。そして、受信した下りフレームの宛先ＭＡＣアドレスが、ＭＡＣアドレス検索テーブル２２に登録済みであれば、ＭＡＣアドレス検索部２３で、そのＭＡＣアドレスに括りつけられたＬＬＩＤを宛先ＯＮＵと判断する機能が搭載されている。
【００３９】
具体的には、ＭＡＣアドレス処理部２０Ａにおいて、ＭＡＣアドレス登録部２１は、受信した上りフレームの送信元ＭＡＣアドレスに基づいてＭＡＣアドレス検索テーブル２２を検索し、送信元ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されていない場合は新規に登録し、送信元ＭＡＣアドレスが既にＭＡＣアドレス検索テーブル２２に登録されている場合は登録情報を更新する（登録情報を変更する必要がない場合は、更新しないようにしてもよい）。
ＭＡＣアドレス検索テーブル２２には、各送信元ＭＡＣアドレスに対応するＯＮＵのＬＬＩＤが登録されている。
【００４０】
ＭＡＣアドレス検索部２３は、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２から、対応するＬＬＩＤを読み出して、下りフレームに付与するＬＬＩＤを決定する。
下りレイテンシ吸収部２４は、受信した下りフレームに遅延を付加して、ＭＡＣアドレス検索部２３でのＬＬＩＤ決定処理によるレイテンシを吸収する。
出力合成部２５は、下りレイテンシ吸収部２４から出力された下りフレームのプリアンブルに、ＭＡＣアドレス検索部２３で決定したＬＬＩＤを挿入することにより、送信する下りフレームに宛先ＬＬＩＤを付与する。
【００４１】
また、本実施の形態にかかるＰＯＮシステム１００において、１Ｇ−ＯＮＵ宛と１０Ｇ−ＯＮＵ宛の下りフレームが混在した場合も同様に、宛先ＯＮＵのＬＬＩＤを決定することが可能である。この際、そのＬＬＩＤがどちらの種類のＯＮＵのものなのかを別途確認して、該当のレートの下りフレーム出力から送信する必要がある。したがって、このような場合には、ＯＬＴ１０のフレーム転送処理部２０において、下りフレームの宛先ＭＡＣアドレスから宛先ＯＮＵのＬＬＩＤを決定し、そのＬＬＩＤから下り伝送速度情報を決定して、それらの情報を下りフレームに付加する回路を追加すればよい。
【００４２】
図４は、第１の実施の形態にかかるフレーム転送処理部の他の要部構成を示すブロック図である。このフレーム転送処理部２０には、図３と比較して、下り伝送速度処理部３０が追加されている。下り伝送速度処理部３０には、主な機能部として、速度情報登録部（登録部）３１、下り伝送速度検索テーブル（検索テーブル）３２、下り伝送速度検索部（検索部）３３、第２の下りレイテンシ吸収部３４、および第２の出力合成部３５が設けられている。なお、第１の下りレイテンシ吸収部２４Ａおよび第１の出力合成部２５Ａは、図３の下りレイテンシ吸収部２４および出力合成部２５と同等である。
【００４３】
下り伝送速度処理部３０において、速度情報登録部３１は、受信した上りフレームのプリアンブルから、送信元ＯＮＵのＬＬＩＤを取得し、送信元ＯＮＵのＬＬＩＤに対応する下り伝送速度情報を、帯域割当処理部１５から読み出して、当該ＬＬＩＤと下り伝送速度情報とを対応付けて、下り伝送速度検索テーブル３２に登録する。
下り伝送速度検索テーブル３２には、各ＯＮＵのＬＬＩＤに対応する下り伝送速度情報が登録されている。
下り伝送速度検索部３３は、下りフレームの宛先ＬＬＩＤに基づいて下り伝送速度検索テーブル３２から下り伝送速度情報を読み出して、送信する下りフレームの下り伝送速度情報を決定する。
【００４４】
第２の下りレイテンシ吸収部３４は、宛先ＬＬＩＤが付加された下りフレームに遅延を付加して、下り伝送速度検索部３３での下り伝送速度決定処理によるレイテンシを吸収する。
第２の出力合成部３５は、第２の下りレイテンシ吸収部３４から出力された下りフレームに、下り伝送速度検索部３３での検索により読み出された下り伝送速度情報を付与する。
下りフレームは、付与された下り伝送速度情報に従って、所定の速度でＰＯＮへ送出される。
【００４５】
なお、この図４では、速度情報登録部３１に対して、上りフレームと帯域割当処理部１５から下り伝送速度情報が入力されているが、このような登録用の回路（速度情報登録部３１）は必ずしも必要ではない。ＯＬＴ１０を制御・管理するソフトウェアが、ＬＬＩＤ毎の下り伝送速度情報を把握しているので、このソフトウェアにより、下り伝送速度検索テーブル３２に必要な情報を書き込むことが可能である。
【００４６】
本実施の形態は、このようなＯＬＴ１０のフレーム転送処理部２０において、ＭＡＣアドレス検索テーブル２２に、バケットと呼ばれる複数の記憶領域を設けるとともに、ＭＡＣアドレスを含むデータをそれぞれ記憶する記憶場所であるエントリを、バケットごとに複数設け、下りフレームのＭＡＣアドレスと一致するＭＡＣアドレスを検索する際、ＭＡＣアドレス検索部２３で、下りフレームの宛先ＭＡＣアドレスに基づき特定したバケットに属する複数エントリから、それぞれのデータを並列的に１回読み出して、下りフレームのＭＡＣアドレスと並列的に比較するようにしたものである。
【００４７】
図５は、第１の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
ＭＡＣアドレス検索テーブル２２は、半導体メモリなどの記憶回路からなり、ＯＮＵと接続されたユーザ装置に個別のＭＡＣアドレスごとに、当該ＭＡＣアドレスおよび当該ＯＮＵの宛先情報を含むデータを記憶する機能を有している。
【００４８】
ＭＡＣアドレス検索テーブル２２には、データを格納するデータ格納領域としてＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリがマトリクス状に設けられている。これらエントリは、Ｎ個ずつＭ個のバケットに分割されており、また、これらエントリは、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割されている。各記憶領域は、それぞれ１つ以上の記憶回路（半導体メモリ）から構成されており、バケットは複数の記憶領域に跨って仮想的に設けられている。
【００４９】
各データは、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリにそれぞれ記憶されている。ＭＡＣアドレス検索テーブル２２は、ＭＡＣアドレス検索部２３で選択されたバケットに属するすべてのエントリで記憶しているデータをそれぞれ読み出して並列的に出力する機能を有している。
【００５０】
ＭＡＣアドレス検索部２３は、上位装置から受信した下りフレームの宛先ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２から対応するデータを検索する機能と、当該データから当該下りフレームに付加するための宛先情報を取得する機能とを有している。
このＭＡＣアドレス検索部２３は、主な回路部として、比較回路２３Ａ、検索応答処理回路２３Ｂ、および検索制御回路２３Ｃが設けられている。
【００５１】
比較回路２３Ａは、ＭＡＣアドレス検索テーブル２２の各バケットに設けられたＮ個のエントリに対応してＮ個設けられている。それぞれの比較回路２３Ａは、対応するエントリから読み出されたデータに含まれるＭＡＣアドレスと、下りフレームの宛先ＭＡＣアドレスとを比較し、その比較結果を検索応答処理回路２３Ｂへ出力する機能を有している。
検索応答処理回路２３Ｂは、各比較回路２３Ａからの比較結果に基づいて、ＭＡＣアドレス検索テーブル２２から並列的に出力されたデータのうち、宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得し、ＭＡＣアドレス検索応答として出力する機能とを有している。
【００５２】
検索制御回路２３Ｃは、フレーム転送処理部２０からのＭＡＣアドレス検索要求に応じて、下りフレームの宛先ＭＡＣアドレスから、予め設定されているハッシュ関数に基づいて、当該宛先ＭＡＣアドレスと対応するバケット番号を特定する機能と、このバケット番号から、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号と対応するバケットのエントリを示すデータ格納アドレス（読出アドレス）を算出する機能と、このデータ格納アドレスに基づき当該宛先ＭＡＣアドレスと対応するバケットを選択した読出要求を、ＭＡＣアドレス検索テーブル２２へ出力する機能とを有している。
【００５３】
図５の構成例では、ＭＡＣアドレス検索テーブル２２に、記憶領域としてバケット番号０〜５１１に対応する５１２（Ｎ＝５１２）個のバケットが設けられており、各バケットには、エントリ番号０〜３１に対応する３２個のエントリが設けられている。各記憶領域のデータ格納アドレスは、バケット番号と１対１に対応している。各エントリは、５１２ｗｏｒｄのデータ格納領域を有しており、ＭＡＣアドレス検索テーブル２２全体で、最大１６３８４個のデータの登録が可能である。
【００５４】
ここでは、バケット番号の最大値が５１１なので、バケット番号を特定するハッシュ関数は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位９ビットを計算する関数式で構成すればよい。データ格納アドレスとバケット番号の関係は、（データ格納アドレス）＝（バケット番号）×ａとなる。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【００５５】
検索制御回路２３Ｃは、ＭＡＣアドレス検索要求が入力されると、下りフレームの宛先ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、当該バケット番号と対応するデータ格納アドレス値を算出し、複数の記憶領域（記憶領域＃０〜記憶領域＃３１）内の当該データ格納アドレスに格納されたエントリの登録データを同一のタイミングで読み出す。
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。
【００５６】
図５の例では、バケット振分けで求めたバケット番号は「１」、データ格納アドレス値は「ａ」である。したがって、バケット番号「１」のバケットに属する３２個のエントリから、データ１＿ｊ（ｊ＝０，１，…，３１）が同一のタイミングで読み出される。ＭＡＣアドレス検索テーブル２２から読み出された各データ１＿ｊは、それぞれ対応する比較回路２３Ａ（＃ｊ）に、同一のタイミングで入力される。
【００５７】
各比較回路２３Ａ（＃ｊ）は、データ１＿ｊに含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスとを比較し、それぞれの比較結果を同一のタイミングで出力する。検索応答処理回路２３Ｂは、これら比較回路２３Ａから同一のタイミングで入力された比較結果を基にして、当該バケット内に下りフレームの宛先ＭＡＣアドレスが登録されたエントリがあるか否かを判定する。宛先ＭＡＣアドレスと一致するＭＡＣアドレスを含むデータが見つかった場合、検索応答処理回路２３Ｂは、これら比較回路２３Ａから同一のタイミングで入力されたデータ１＿ｊのうち、ＭＡＣアドレスが一致したデータから宛先情報を取得し、ＭＡＣアドレス検索応答として出力する。
【００５８】
ＭＡＣアドレス検索応答は、下りフレームの宛先ＭＡＣアドレスが登録されたエントリの有無、および、当該エントリに登録されている下り出力先選択情報とＬＬＩＤを含んでいる。
前述した図３または図４の第１の出力合成部２５Ａは、第１の下りレイテンシ吸収部２４Ａから出力された下りフレームのプリアンブルに、このＭＡＣアドレス検索応答に含まれているＬＬＩＤを挿入することにより、送信する下りフレームに宛先ＬＬＩＤを付与する。
【００５９】
図６は、第１の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス登録部を示す構成例である。
ＭＡＣアドレス登録部２１は、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２から対応するデータを検索する機能と、送信元ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータが登録されていない場合には、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号のバケットに属する空きエントリへ登録する機能とを有している。
【００６０】
このＭＡＣアドレス登録部２１は、主な回路部として、比較回路２１Ａ、検索応答処理回路２１Ｂ、および登録制御回路２１Ｃが設けられている。
【００６１】
比較回路２１Ａは、ＭＡＣアドレス検索テーブル２２の各バケットに設けられたＮ個のエントリに対応してＮ個設けられている。それぞれの比較回路２１Ａは、対応するエントリから読み出されたデータに含まれるＭＡＣアドレスと、下りフレームの宛先ＭＡＣアドレスとを比較し、その比較結果を検索応答処理回路２１Ｂへ出力する機能を有している。
検索応答処理回路２１Ｂは、各比較回路２１Ａからの比較結果に基づいて、ＭＡＣアドレス検索テーブル２２から並列的に出力されたデータのうち、宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータの登録有無を判定し、ＭＡＣアドレス検索応答として出力する機能とを有している。
【００６２】
登録制御回路２１Ｃは、フレーム転送処理部２０からのＭＡＣアドレス登録要求に応じて、上りフレームの送信元ＭＡＣアドレスから、予め設定されているハッシュ関数に基づいて、当該送信元ＭＡＣアドレスと対応するバケット番号を特定する機能と、このバケット番号から、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号と対応するバケットのエントリを示すデータ格納アドレス（読出アドレス）を算出する機能と、このデータ格納アドレスに基づき当該宛先ＭＡＣアドレスと対応するバケットを選択した読出要求を、ＭＡＣアドレス検索テーブル２２へ出力する機能と、検索応答処理回路２１ＢからのＭＡＣアドレス検索応答が、登録なしを示す場合、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号のバケットに属する空きエントリへ登録する機能とを有している。
【００６３】
図６の構成例では、ＭＡＣアドレス検索テーブル２２に、記憶領域としてバケット番号０〜５１１に対応する５１２（Ｎ＝５１２）個のバケットが設けられており、各バケットには、エントリ番号０〜３１に対応する３２個のエントリが設けられている。各記憶領域のデータ格納アドレスは、バケット番号と１対１に対応している。各エントリは、５１２ｗｏｒｄのデータ格納領域を有しており、ＭＡＣアドレス検索テーブル２２全体で、最大１６３８４個のデータの登録が可能である。
【００６４】
ここでは、バケット番号の最大値が５１１なので、バケット番号を特定するハッシュ関数は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位９ビットを計算する関数式で構成すればよい。データ格納アドレスとバケット番号の関係は（データ格納アドレス）＝（バケット番号）×ａとなる。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【００６５】
登録制御回路２１Ｃは、ＭＡＣアドレス登録要求が入力されると、上りフレームの送信元ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、当該バケット番号と対応するデータ格納アドレス値を算出し、複数の記憶領域（記憶領域＃０〜記憶領域＃３１）内の当該データ格納アドレスに格納されたエントリの登録データを同一のタイミングで読み出す。
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。
【００６６】
図６の例では、バケット振分けで求めたバケット番号は「１」、データ格納アドレス値は「ａ」である。したがって、バケット番号「１」のバケットに属する３２個のエントリから、データ１＿ｊ（ｊ＝０，１，…，３１）が同一のタイミングで読み出される。ＭＡＣアドレス検索テーブル２２から読み出された各データ１＿ｊは、それぞれ対応する比較回路２１Ａ（＃ｊ）に、同一のタイミングで入力される。
【００６７】
各比較回路２１Ａ（＃ｊ）は、データ１＿ｊに含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスとを比較し、それぞれの比較結果を同一のタイミングで出力する。検索応答処理回路２１Ｂは、これら比較回路２１Ａから同一のタイミングで入力された比較結果を基にして、当該バケット内に下りフレームの送信元ＭＡＣアドレスが登録されたエントリがあるか否かを判定する。送信元ＭＡＣアドレスと一致するＭＡＣアドレスを含むデータの有無に応じて、検索応答処理回路２１Ｂは登録有無を示すＭＡＣアドレス検索応答を出力する。
【００６８】
登録制御回路２１Ｃは、このＭＡＣアドレス検索応答が登録なしを示す場合、送信元ＭＡＣアドレスから求めたバケット番号のバケットのうち、データが格納されていない空きエントリのデータ格納アドレスを計算する。エントリの空き状態については、比較回路２１Ａまたは検索応答処理回路２１Ｂにおいて、ＭＡＣアドレス検索テーブル２２から読み出したデータに基づき判定し、この判定結果をＭＡＣアドレス検索応答で登録制御回路２１Ｃへ通知すればよい。登録制御回路２１Ｃは、このようにして求めた空きエントリのデータ格納アドレスへ、上りフレームのＬＬＩＤとこのＬＬＩＤに予め対応付けられている下り出力先選択情報とを含む宛先情報を、当該送信元ＭＡＣアドレスと対応付けて登録する。当該バケット内の空きエントリが複数ある場合は、一例として、バケット内エントリ番号が最も小さい空きエントリに登録すればよい。
【００６９】
また、ＭＡＣアドレス検索応答が登録ありを示す場合、登録制御回路２１Ｃは、一致するＭＡＣアドレスが登録されているエントリのデータ格納アドレスに、当該上りフレームのＬＬＩＤとこのＬＬＩＤに予め対応付けられている下り出力先選択情報とを、当該送信元ＭＡＣアドレスと対応付けて上書き登録する。
【００７０】
［第１の実施の形態の効果］
このように、本実施の形態は、ＭＡＣアドレス検索テーブル２２に、データを格納するＭ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリを設けて、これらエントリをＮ個ずつＭ個のバケットに分割するとともに、各バケットに属する同一エントリ番号のエントリをＭ個ずつＮ個の記憶領域に分割し、各データを、当該データに含まれるＭＡＣアドレスからバケット振分用のハッシュ関数で特定されるバケット番号のバケットに属するエントリにそれぞれ記憶し、ＭＡＣアドレス検索部２３から指定されたバケット番号のバケットに属するすべてのエントリで記憶しているデータをそれぞれ読み出して並列的に出力するようにしたものである。
【００７１】
これに加えて、ＭＡＣアドレス検索部２３に、ＭＡＣアドレス検索テーブル２２の各記憶領域に対応してＮ個の比較回路２３Ａを設け、検索制御回路２３Ｃにより、当該ＭＡＣアドレス検索テーブル２２のうち、下りフレームの宛先ＭＡＣアドレスからハッシュ関数で特定したバケットを選択し、これに応じて当該バケットに属する各エントリから並列的に出力されたデータを、それぞれ対応する比較回路２３Ａにより、当該データに含まれるＭＡＣアドレスと当該宛先ＭＡＣアドレスとをそれぞれ比較し、これら比較回路２３Ａで得られたＮ個の比較結果に基づいて、検索応答処理回路２３Ｂにより、これらデータのうち当該宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得するようにしたものである。
【００７２】
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。したがって、当該バケットに属するエントリのデータを並列的に１回読み出すだけで検索を完了することができ、ＭＡＣアドレスの検索に要する処理を短時間で完了することができる。
【００７３】
例えば、ＭＡＣアドレス検索テーブル２２のエントリ数が１６３８４で、１回の読み出しに８ｎｓ要する場合、１エントリずつ読み出した場合には、最低で８ｎｓ×１６３８４＝１３１０７２ｎｓの時間がかかることになる。一方、本実施の形態では、１回分の読み出し時間、すなわち８ｎｓで検索が完了する。このため、ＧＥ−ＰＯＮで伝送するフレームの最短時間は、プリアンブルの時間を含めて８ｎｓ×７２＝５７６ｎｓ、フレーム間の最小間隔８ｎｓ×１２＝９６ｎｓを加えても６７２ｎｓであるが、本実施の形態を適用すれば、フレーム最短時間内に検索を完了することができる。したがって、エントリ数の大きいＭＡＣアドレス検索テーブル２２の検索処理時間を短縮できる。
【００７４】
また、本実施の形態は、ＭＡＣアドレス登録部２１に、ＭＡＣアドレス検索テーブル２２の各記憶領域に対応してＮ個の比較回路２１Ａを設け、登録制御回路２１Ｃにより、当該ＭＡＣアドレス検索テーブル２２のうち、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスからハッシュ関数で特定したバケットを選択し、これに応じて当該バケットに属する各エントリから並列的に出力されたデータを、それぞれ対応する比較回路２１Ａにより、当該データに含まれるＭＡＣアドレスと送信元ＭＡＣアドレスとをそれぞれ比較し、これら比較回路２１Ａで得られたＮ個の比較結果に基づいて、検索応答処理回路２１Ｂにより、ＭＡＣアドレス検索テーブル２２に対する当該送信元ＭＡＣアドレスの登録有無を確認し、当該送信元ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されていない場合は、登録制御回路２１Ｃにより、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケットに属する空きエントリへ登録するようにしたものである。
【００７５】
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。したがって、当該バケットに属するエントリのデータを並列的に１回読み出すだけで検索を完了することができ、ＭＡＣアドレスの検索に要する処理を大幅に短縮することができる。したがって、エントリ数の大きいＭＡＣアドレス検索テーブル２２の検索処理時間を短縮できる。
【００７６】
また、本実施の形態では、図３のＭＡＣアドレス検索テーブル（検索テーブル）２２とＭＡＣアドレス検索部（検索部）２３の構成や、ＭＡＣアドレス検索テーブル（検索テーブル）２２とＭＡＣアドレス登録部（登録部）２１の構成を例として説明したが、これに限定されるものではない。例えば、図４の下り伝送速度検索テーブル（検索テーブル）３２と下り伝送速度検索部（検索部）３３の構成や、下り伝送速度検索テーブル（検索テーブル）３２と速度情報登録部（登録部）３１の構成に適用してもよい。実際には、ＯＬＴやＯＮＵなど、ＯＳＩ参照モデルのレイヤ２において、検索テーブルと検索部（登録部）を使用してＭＡＣアドレスを検索する構成を有するフレーム転送装置であれば、前述と同様に本実施の形態を適用でき、同様の作用効果を得ることができる。
【００７７】
［第２の実施の形態］
次に、図７および図８を参照して、本発明の第２の実施の形態にかかるＰＯＮシステム１００について説明する。図７は、ＰＯＮ区間で伝送されるフレームの構成例である。図８は、第２の実施の形態にかかるＯＬＴの構成を示すブロック図である。
本実施の形態にかかるＯＬＴ１０における、第１の実施の形態との違いは、フレーム多重部１６および送信回路１７が、下り伝送速度の異なる伝送系統ごとに設けられ、さらにこれら異なる伝送系統ごとに設けられたフレーム多重部１６Ａ，１６Ｂおよび送信回路１７Ａ，１７Ｂに対応する構成のフレーム転送処理部２０を備えていることである。
【００７８】
前述した図１に示すように、このＰＯＮシステム１００において、ＯＮＵｎ（ｎ＝１〜３）は、ＵＮＩを介してユーザ装置ｎと接続されている。
各ＯＮＵは、光通信路を介して１つの光スプリッタに共通接続されており、さらにこの光スプリッタは、光通信路と光多重分離装置とを介して、１つのＯＬＴ１０と接続されている。
このＯＬＴ１０には、ＳＮＩ側に設けられたＳＮＩポート１９に、ＳＮＩを介して上位装置が接続されている。また、上位装置には、事業者側のネットワーク（サービス網）ＮＷが接続されている。
【００７９】
このＰＯＮシステム１００のＰＯＮ区間、すなわちＯＮＵｎとＯＬＴ１０との間の区間では、図７に示すような構成のフレームでデータがやり取りされる。
図７において、プリアンブルは、ＥｔｈｅｒｎｅｔのプリアンブルにＬＬＩＤを埋め込んだものである。
【００８０】
ＬＬＩＤ（Logical Link ID）は、ユニキャストの場合には各ＯＮＵと１対１に、またマルチキャストやブロードキャストの場合には各ＯＮＵと１対多に対応する識別子である。ＯＮＵ登録（ＯＮＵがＯＬＴの配下となる）時にＯＬＴで決定され、ＯＬＴは自分の配下のＯＮＵでＬＬＩＤの重複が起こらないように管理している。
【００８１】
ＶＬＡＮタグは、ＶＬＡＮ情報を含むタグである。タグがついていない場合やタグが複数ついている場合もある。このＶＬＡＮタグは、ＴＰＩＤ、ＴＣＩを含んでいる。
ＴＰＩＤ（Tag Protocol ID）は、ＶＬＡＮタグが続くことを示すＥｔｈｅｒ  Ｔｙｐｅ値である。通常、ＴＰＩＤは、ＩＥＥＥ８０２．１Ｑによるタグ付きフレームであることを表す０ｘ８１００である。
ＴＣＩ（Tag Control Information）は、ＶＬＡＮタグ情報である。このＴＣＩは、ＰＣＰ、ＣＦＩ、ＶＩＤを含んでいる。
【００８２】
ＰＣＰ（Priority Code Point）は、当該フレームの優先度である。
ＣＦＩ（Canonical Format Indicator）は、ＭＡＣヘッダ内のＭＡＣアドレスが標準フォーマットに従っているかどうかを示す値である。
ＶＩＤまたはＶＬＡＮ  ＩＤ（VLAN Identifier）は、フレームが属するＶＬＡＮを指定する値である。
Ｔｙｐｅは、上位プロトコルの種別を示すＥｔｈｅｒ  Ｔｙｐｅ値である。
【００８３】
［ＯＬＴ］
次に、図８を参照して、本実施の形態にかかるＯＬＴ１０の構成について説明する。
ＰＯＮポート１１は、ＯＤＮを介してＯＮＵとの間でフレームをやり取りするための回路である。
受信回路１２は、ＯＤＮおよびＰＯＮポート１１を介してＯＮＵからの上りフレームを受信するための回路である。
送信回路（０系）１７Ａおよび送信回路（１系）１７Ｂは、予め設定された下り伝送速度ごとに設けられて、ＰＯＮポート１１およびＯＤＮを介して、それぞれ、ＯＮＵ（０系）およびＯＮＵ（１系）へ、下りフレームを当該下り伝送速度で送信するための回路である。本発明において、例えば、０系は、下り伝送速度が１Ｇｂｐｓの伝送系統を示し、１系は、下り伝送速度が１０Ｇｂｐｓの伝送系統を示している。
【００８４】
ＳＮＩポート１９は、ＳＮＩを介して上位装置との間でフレームをやり取りする回路部である。
送受信回路１８は、ＳＮＩポート１９および上位装置を介して、事業者ネットワークＮＷとの間でフレームを送受信する回路部である。
【００８５】
フレーム分離部１３は、受信回路１２より入力されたフレームのうち、ＯＬＴ１０宛てのフレーム（ＰＯＮの制御に用いられる制御フレーム）を制御フレーム処理部１４へ送信するとともに、その他のフレームをフレーム転送処理部２０へ送信する処理部である。
フレーム多重部（０系）１６Ａは、フレーム転送処理部２０からのＯＮＵ（０系）宛の下りフレームと制御フレーム処理部１４からの制御フレームとを時分割的に多重し、送信回路（０系）１７Ａに対して送信する処理部である。
フレーム多重部（１系）１６Ｂは、フレーム転送処理部２０からのＯＮＵ（１系）宛の下りフレームと制御フレーム処理部１４からの制御フレームとを時分割的に多重し、送信回路（１系）１７Ｂに対して送信する処理部である。
【００８６】
フレーム転送処理部２０は、受信回路１２で受信されてフレーム分離部１３から入力された上りフレームを送受信回路１８へ転送処理し、送受信回路１８から受信された下りフレームを、ＭＡＣアドレス検索テーブル２２から取得した当該フレームの宛先ＭＡＣアドレスと対応する下り出力先選択情報に基づいて、フレーム多重部１６Ａ，１６Ｂ（０系または１系）のいずれかへ転送処理する処理部である。
【００８７】
制御フレーム処理部１４は、各ＯＮＵにＬＬＩＤを自動的に割り当てるための発見処理（Discoveryプロセス）や上り信号（ＯＮＵからＯＬＴ宛ての信号）の調停といった、ＰＯＮの制御に関する処理を行う処理部である。
帯域割当処理部１５は、制御フレーム処理部１４からの要求に従い、ＯＮＵへの帯域（送信開始時刻と送信データ量）割当や、制御フレーム処理部１４から転送されたＰＯＮ−ＩＦポート情報の管理を行う処理部である。
【００８８】
［第２の実施の形態の動作］
次に、図９−図１１を参照して、本実施の形態にかかるＯＬＴ１０のフレーム転送処理について詳細に説明する。図９は、第２の実施の形態にかかるフレーム転送処理部の構成例を示すブロック図である。図１０は、ＭＡＣアドレス検索テーブルの構成例である。図１１は、下りフレームの出力先決定手順を示すフローチャートである。
【００８９】
ここでは、フレーム転送処理部２０が、下りフレームの出力先を決定する動作について説明する。
フレーム転送処理部２０は、受信した下りフレームをどの送信回路１７Ａ，１７Ｂから送信するのか、すなわち速度の異なるどの下り系統へ出力するのかを、次のようにして決定する。
【００９０】
フレーム転送処理部２０は、図１０に示すＭＡＣアドレス検索テーブル２２を備えている。ＭＡＣアドレス検索テーブル２２では、データを格納するデータ格納領域として、Ｍ×Ｎ（Ｍは２以上の整数、Ｎは２以上の整数）個のエントリがマトリクス状に設けられており、エントリと１対１に対応するデータ格納アドレスに基づき、Ｎ個のバケットに区分けされている。データｉ＿ｊ（ｉ＝０，１，…，Ｍ−１、ｊ＝０，１，…，Ｎ−１）は、バケット番号ｉ、バケット内エントリ番号ｊに格納されている登録データを表わす。
【００９１】
データｉ＿ｊの内訳は、ＯＮＵと接続されたユーザ装置もしくはＯＮＵのＭＡＣアドレスごとの、下り出力先選択情報、ＬＬＩＤ、およびエントリ有効／無効である。エントリ有効／無効は、当該エントリの有効／無効を示す情報である。「エントリ無効」の場合は、このエントリのＭＡＣアドレス、下り出力先選択情報、ＬＬＩＤになんらかの値が記載されていても、出力先判定に使用不可の値であり条件無しに書き込み可能である「このエントリは空いている」ということを表す。
【００９２】
ＭＡＣアドレス検索部２３は、受信した下りフレームの宛先ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２からＬＬＩＤと下り出力先選択情報を読み出して、下りフレームの宛先ＬＬＩＤと出力先を、図１１の手順により決定する。決定されたＬＬＩＤの情報は、宛先ＬＬＩＤとしてＬＬＩＤ付与部２５Ｂへ与えられる。
【００９３】
図１１における下りフレームの下り出力先決定手順において、ＭＡＣアドレス検索部２３は、まず、ＭＡＣアドレス検索テーブル２２のうち、受信した下りフレームの宛先ＭＡＣアドレスのエントリ有効／無効に基づいて、当該宛先ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されているか確認する（ステップ１００）。
【００９４】
ここで、エントリ有効／無効として「有効」状態が設定されており、当該宛先ＭＡＣアドレスが登録されている場合（ステップ１００：ＹＥＳ）、ＭＡＣアドレス検索部２３は、ＭＡＣアドレス検索テーブル２２から当該宛先ＭＡＣアドレスに対応するＬＬＩＤを取得し、下りフレームの宛先ＬＬＩＤとして特定する（ステップ１０１）。
続いて、ＭＡＣアドレス検索部２３は、ＭＡＣアドレス検索テーブル２２から当該宛先ＭＡＣアドレスに対応する下り出力先選択情報を取得して、当該下りフレームの出力系統を特定し（ステップ１０２）、一連の処理を終了する。
【００９５】
一方、エントリ有効／無効として「有効」状態が設定されているどのエントリにおいても、ＭＡＣアドレス欄が当該宛先ＭＡＣアドレスに一致しない場合（ステップ１００：ＮＯ）、ＭＡＣアドレス検索部２３は、当該下りフレームの破棄を決定し（ステップ１０３）、一連の処理を終了する。
【００９６】
［ＭＡＣアドレス検索処理］
次に、前述した図５を参照して、図１１のステップ１００において、ＭＡＣアドレス検索部２３がＭＡＣアドレス検索テーブル２２を検索する処理について説明する。
ＭＡＣアドレス検索部２３は、上位装置から受信した下りフレームの宛先ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２から対応するデータを検索し、当該データから当該下りフレームに付加するための宛先情報を取得する機能を有している。
このＭＡＣアドレス検索部２３は、主な回路部として、比較回路２３Ａ、検索応答処理回路２３Ｂ、および検索制御回路２３Ｃが設けられている。
【００９７】
比較回路２３Ａは、ＭＡＣアドレス検索テーブル２２の各バケットに設けられたＮ個のエントリに対応してＮ個設けられている。それぞれの比較回路２３Ａは、対応するエントリから読み出されたデータに含まれるＭＡＣアドレスと、下りフレームの宛先ＭＡＣアドレスとを比較し、その比較結果を検索応答処理回路２３Ｂへ出力する機能を有している。
検索応答処理回路２３Ｂは、各比較回路２３Ａからの比較結果に基づいて、ＭＡＣアドレス検索テーブル２２から並列的に出力されたデータのうち、宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得し、ＭＡＣアドレス検索応答として出力する機能とを有している。
【００９８】
検索制御回路２３Ｃは、フレーム転送処理部２０からのＭＡＣアドレス検索要求に応じて、下りフレームの宛先ＭＡＣアドレスから、予め設定されているハッシュ関数に基づいて、当該宛先ＭＡＣアドレスと対応するバケット番号を特定する機能と、このバケット番号から、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号と対応するバケットのエントリを示すデータ格納アドレス（読出アドレス）を算出する機能と、このデータ格納アドレスに基づき当該宛先ＭＡＣアドレスと対応するバケットを選択した読出要求を、ＭＡＣアドレス検索テーブル２２へ出力する機能とを有している。
【００９９】
図５の構成例では、ＭＡＣアドレス検索テーブル２２に、記憶領域としてバケット番号０〜５１１に対応する５１２（Ｎ＝５１２）個のバケットが設けられており、各バケットには、エントリ番号０〜３１に対応する３２個のエントリが設けられている。各記憶領域のデータ格納アドレスは、バケット番号と１対１に対応している。各エントリは、５１２ｗｏｒｄのデータ格納領域を有しており、ＭＡＣアドレス検索テーブル２２全体で、最大１６３８４個のデータの登録が可能である。
【０１００】
ここでは、バケット番号の最大値が５１１なので、バケット番号を特定するハッシュ関数は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位９ビットを計算する関数式で構成すればよい。データ格納アドレスとバケット番号の関係は、（データ格納アドレス）＝（バケット番号）×ａとなる。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【０１０１】
検索制御回路２３Ｃは、ＭＡＣアドレス検索要求が入力されると、下りフレームの宛先ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、当該バケット番号と対応するデータ格納アドレス値を算出し、複数の記憶領域（記憶領域＃０〜記憶領域＃３１）内の当該データ格納アドレスに格納されたエントリの登録データを同一のタイミングで読み出す。
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。
【０１０２】
図５の例では、バケット振分けで求めたバケット番号は「１」、データ格納アドレス値は「ａ」である。したがって、バケット番号「１」のバケットに属する３２個のエントリから、データ１＿ｊ（ｊ＝０，１，…，３１）が同一のタイミングで読み出される。ＭＡＣアドレス検索テーブル２２から読み出された各データ１＿ｊは、それぞれ対応する比較回路２３Ａ（＃ｊ）に、同一のタイミングで入力される。
【０１０３】
各比較回路２３Ａ（＃ｊ）は、データ１＿ｊに含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスとを比較し、それぞれの比較結果を同一のタイミングで出力する。検索応答処理回路２３Ｂは、これら比較回路２３Ａから同一のタイミングで入力された比較結果を基にして、当該バケット内に下りフレームの宛先ＭＡＣアドレスが登録されたエントリがあるか否かを判定する。
【０１０４】
宛先ＭＡＣアドレスと一致するＭＡＣアドレスを含むデータが見つかった場合、検索応答処理回路２３Ｂは、これら比較回路２３Ａから同一のタイミングで入力されたデータ１＿ｊのうち、ＭＡＣアドレスが一致したデータから宛先情報を取得し、ＭＡＣアドレス検索応答として出力する。
ＭＡＣアドレス検索応答は、下りフレームの宛先ＭＡＣアドレスが登録されたエントリの有無、および、当該エントリに登録されている下り出力先選択情報とＬＬＩＤを含んでいる。
【０１０５】
図１２は、第２の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。この例では、ＭＡＣアドレス検索部２３に下りフレームの宛先ＭＡＣアドレスおよびＭＡＣアドレス検索要求が、先頭の１クロック目に入力された場合、次の２クロック目のバケット振分処理でバケット番号が特定され、先頭から３クロック目でバケット番号および読出アドレスと読出要求とが、検索制御回路２３ＣからＭＡＣアドレス検索テーブル２２へ出力される。
【０１０６】
これにより、先頭から４クロック目で、ＭＡＣアドレス検索部２３のうち、対応するバケットの各エントリからデータが読み出されるとともに、各比較回路２３Ａで当該データのＭＡＣアドレスと宛先ＭＡＣアドレスとが比較される。
これら比較結果は、先頭から５クロック目で、各比較回路２３Ａから検索応答処理回路２３Ｂへ出力されて、検索応答データが生成され、先頭から４クロック目で、検索応答処理回路２３Ｂから出力される。
【０１０７】
したがって、ＭＡＣアドレス検索要求の入力から、５クロック後にＭＡＣアドレス検索応答が出力されていることになる。
また、検索制御回路２３Ｃ、ＭＡＣアドレス検索テーブル２２、比較回路２３Ａ、および検索応答処理回路２３Ｂは、それぞれの入力に応じて順に処理を実行することが可能であることから、全体としてシーケンス動作を行うことができ、１つの処理が終了すれば、１クロックの間隔をあけて次の処理を開始できる。このため、ＭＡＣアドレス検索部２３は、最小間隔１クロックでの検索処理が可能となる。
【０１０８】
一方、図９に示すように、このような下りフレームの下り出力先決定手順と並行して、下りレイテンシ吸収部２４は、受信した下りフレームにＭＡＣアドレス検索部２３で発生したレイテンシと等しい遅延を付加して、ＭＡＣアドレス検索部２３での下り出力先決定処理によるレイテンシを吸収する。
ＬＬＩＤ付与部２５Ｂは、ＭＡＣアドレス検索部２３で決定したＬＬＩＤに従って、下りレイテンシ吸収部２４からの下りフレームに宛先ＬＬＩＤを付与する。
下り出力先制御部２６は、ＭＡＣアドレス検索部２３で決定した下り出力先選択情報に従って、該当する０系の下り出力タイミング調整部２７Ａ、または１系の下り出力タイミング調整部２７Ｂへ、ＬＬＩＤ付与部２５Ｂからの下りフレームを転送する。
【０１０９】
各下り出力タイミング調整部２７Ａ，２７Ｂは、各下りフレームに含まれているＰＣＰなどで決まる優先度に基づいて、各下りフレームの出力順序を調整して、該当するフレーム多重部１６Ａ，１６Ｂへ下りフレームを転送する。例えば、１０Ｇ−ＯＮＵと１Ｇ−ＯＮＵが混在するシステムであれば、１０Ｇ−ＯＮＵについては１０Ｇ（８０２．３ａｖ仕様）出力、１Ｇ−ＯＮＵについては１Ｇ（８０２．３ａｈ仕様）出力を指定すれば良い。
ＭＡＣアドレス検索部２３で破棄と判定された場合、下り出力先制御部２６は、当該下りフレームの廃棄処理を行う。
【０１１０】
ＭＡＣアドレス検索テーブル２２については、ＭＡＣアドレス登録部２１が、受信した上りフレームから送信元ＭＡＣアドレスおよびＬＬＩＤを取得し、当該ＬＬＩＤとこのＬＬＩＤに対応する下り出力先選択情報とを、当該送信元ＭＡＣアドレスと対応付けて、ＭＡＣアドレス検索テーブル２２に登録する。下り出力先選択情報は、例えば、通信開始時にＯＮＵから通知された制御フレームにより、ＯＮＵの下り出力先選択情報を取得しておけばよい。
【０１１１】
本実施の形態の構成では、ＭＡＣアドレス検索テーブル２２の値は、ＯＬＴ１０を制御・管理するソフトウェアにより設定する。具体的には、ＭＡＣアドレス登録部２１が、図１０に示したような、ＭＡＣアドレス検索テーブル２２に登録しようとする情報を、レジスタにセットして、ＭＡＣアドレス設定要求フラグを立てると、ソフトウェアがＭＡＣアドレス検索テーブル２２に情報を書き込んで、ＭＡＣアドレス設定完了フラグを立てる。このようにして、ＬＬＩＤごとに、下りフレームの宛先ＭＡＣアドレスと下り出力先選択情報を管理して、必要な情報をＭＡＣアドレス検索テーブル２２に登録する。
【０１１２】
［第２の実施の形態の効果］
このように、本実施の形態は、ＭＡＣアドレス検索テーブル２２に、ＯＮＵのＬＬＩＤおよび下り出力先選択情報を、ＯＮＵと接続されたユーザ装置もしくはＯＮＵのＭＡＣアドレスごとに登録しておき、上位装置から下りフレームを受信した場合、フレーム転送処理部２０で、当該下りフレームの宛先ＭＡＣアドレスに対応するＬＬＩＤおよび下り出力先選択情報を、ＭＡＣアドレス検索テーブル２２から取得するようにしたものである。
【０１１３】
これにより、ＭＡＣアドレス検索テーブル２２からの読み出し（検索）だけで、下りフレームの宛先ＬＬＩＤと下り出力先選択情報（下り伝送速度）を判定することができるので、前述した第１の実施の形態と比べて、より小さい回路規模で、下りフレームの出力系統を容易に特定することができる。したがって、宛先となる１Ｇ−ＯＮＵと１０Ｇ−ＯＮＵを選択して下りフレームを転送することが可能となる。
【０１１４】
また、本実施の形態では、第１の実施の形態と同様に、ＭＡＣアドレス検索テーブル２２を複数のバケットに分割して管理し、下りフレームの宛先ＭＡＣアドレスと関連付けられたバケット番号に対応するバケットから、当該バケットの各エントリからデータを並列的に読み出して、これらエントリごとに設けられている比較回路２３Ａで、データに含まれるＭＡＣアドレスと宛先ＭＡＣアドレスとを同一のタイミングで比較するようにしたので、第１の実施の形態と同様に、少ない回路規模および消費電力で、エントリ数の大きいＭＡＣアドレス検索テーブル２２の検索処理時間を短縮できる。
【０１１５】
［第３の実施の形態］
次に、図１３を参照して、本発明の第３の実施の形態にかかるＯＬＴ１０について説明する。図１３は、第３の実施の形態にかかるＯＬＴの構成を示すブロック図である。
第３の実施の形態と比較して、本実施の形態にかかるＯＬＴ１０には、上り入力部１２Ａが追加されている。
【０１１６】
本実施の形態において、帯域割当処理部１５は、第１の実施の形態で説明した機能に加え、予め帯域割当処理部１５が割り当てた上りフレームのタイミングに合わせて、予定されている上りフレームのＬＬＩＤに対応した下り出力先選択情報を、予め帯域割当処理部１５に登録されているＰＯＮ−ＩＦポート情報から読み出して、下り出力先選択情報を上り入力部１２Ａに指示する機能を有している。
上り入力部１２Ａは、帯域割当処理部１５から指示された下り出力先選択情報を、上りフレームのプリアンブルに挿入する処理部である。
【０１１７】
ＭＡＣアドレス登録部２１（図９参照）は、上り入力部１２Ａからの上りフレームから、送信元ＭＡＣアドレス、ＬＬＩＤ、および下り出力先選択情報を取得し、当該ＬＬＩＤおよび当該下り出力先選択情報を当該送信元ＭＡＣアドレスと対応付けて、ＭＡＣアドレス検索テーブル２２に登録する機能を有している。
本実施の形態にかかるこの他の構成については、第２の実施の形態と同様であり、ここでの詳細な説明は省略する。
【０１１８】
［第３の実施の形態の動作］
帯域割当処理部１５は、予め割り当てた上りフレームの受信タイミングに合わせて、予定されている上りフレームのＬＬＩＤに対応した下り出力先選択情報をＰＯＮ−ＩＦポート情報から読み出し、この下り出力先選択情報を上り入力部１２Ａに指示する。下り出力先選択情報は、例えば、通信開始時にＯＮＵから通知された制御フレームにより、ＯＮＵの下り出力先選択情報を取得しておく。
【０１１９】
この際、上りフレームのＬＬＩＤが１Ｇ−ＯＮＵ（上り速度が１Ｇ、下り速度が１Ｇ）に割り当てられている場合には、下り出力先選択情報として「０系」を指示し、上りフレームのＬＬＩＤが１０Ｇ−ＯＮＵ（上り速度が１０Ｇ、下り速度が１０Ｇ）に割り当てられている場合には、下り出力先選択情報として「１系」を指示する。なお、上りフレームのＬＬＩＤが非対称ＯＮＵ（上り速度が１Ｇで下り速度が１０Ｇ）に割り当てられている場合には、下り出力先選択情報として「１系」を指示する。
【０１２０】
上り入力部１２Ａは、帯域割当処理部１５から指示された下り出力先選択情報を、上りフレームのプリアンブルに挿入する。図１４は、上り入力部から出力される上りフレームの構成例である。前述の図７に示したＰＯＮ区間で伝送されるフレームとの違いは、プリアンブルに下り出力先選択情報が挿入されている点である。
上り入力部１２Ａは、例えば、帯域割当処理部１５からの指示が「０系」であれば、上りフレームのプリアンブルの下り出力先選択情報に「０」を挿入し、帯域割当処理部１５からの指示が「１系」であれば、上りフレームのプリアンブルの下り出力先選択情報に「１」を挿入する。
【０１２１】
本実施の形態にかかるＯＬＴ１０の構成では、フレーム転送処理部２０内のＭＡＣアドレス検索テーブル２２の値を、上りフレーム受信時に自動的に設定することが可能となる。以下に、フレーム転送処理部２０が、受信した上りフレームの送信元ＭＡＣアドレスと出力先選択情報を、自動的に登録する方法を説明する。図１５は、第３の実施の形態にかかるＭＡＣアドレス登録手順を示すフローチャートである。
ＭＡＣアドレス登録部２１は、受信した上りフレームがＰＯＮ制御フレームでない場合、上りフレームの送信元ＭＡＣアドレスに基づいて、図１５のＭＡＣアドレス登録処理を行う。
【０１２２】
ＭＡＣアドレス登録部２１は、まず、上りフレームの送信元ＭＡＣアドレスに基づいてＭＡＣアドレス検索テーブル２２を検索し（ステップ２００）、送信元ＭＡＣアドレスが既にＭＡＣアドレス検索テーブル２２に登録されている場合（ステップ２００：ＹＥＳ）、当該ＭＡＣアドレスと対応する下り出力先選択情報およびＬＬＩＤを更新し（ステップ２０１）、一連の処理を終了する。なお、ステップ２０１を実行せず、更新しないようにしてもよい。
【０１２３】
ＭＡＣアドレス検索テーブル２２に登録する下り出力先選択情報は、図１４に示すように、上り入力部１２Ａで上りフレームのプリアンブルに挿入された下り出力先選択情報が、ＭＡＣアドレス登録部２１で取得されたものである。また、ＬＬＩＤは、予め上りフレームのプリアンブルに挿入されているＬＬＩＤが、ＭＡＣアドレス登録部２１で取得されたものである。
【０１２４】
一方、ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されていない場合（ステップ２００：ＮＯ）、ＭＡＣアドレス登録部２１は、ＭＡＣアドレス検索テーブル２２に空きがあるか確認する（ステップ２０２）。「空きがある」とは、エントリ有効／無効として「無効」状態が設定されているエントリがあることを表わす。
ここで、空きがある場合（ステップ２０２：ＹＥＳ）、当該ＭＡＣアドレスに対応付けて、下り出力先選択情報およびＬＬＩＤを空きエントリに新規に登録し（ステップ２０３）、一連の処理を終了する。また、空きがない場合（ステップ２０２：ＮＯ）、一連の処理を終了する。
【０１２５】
次に、前述した図６を参照して、図１５のステップ２００において、ＭＡＣアドレス登録部２１がＭＡＣアドレス検索テーブル２２を検索する処理について説明する。
ＭＡＣアドレス登録部２１は、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスに基づいて、ＭＡＣアドレス検索テーブル２２から対応するデータを検索する機能と、送信元ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータが登録されていない場合には、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号のバケットに属する空きエントリへ登録する機能とを有している。
【０１２６】
このＭＡＣアドレス登録部２１は、主な回路部として、比較回路２１Ａ、検索応答処理回路２１Ｂ、および登録制御回路２１Ｃが設けられている。
【０１２７】
比較回路２１Ａは、ＭＡＣアドレス検索テーブル２２の各バケットに設けられたＮ個のエントリに対応してＮ個設けられている。それぞれの比較回路２１Ａは、対応するエントリから読み出されたデータに含まれるＭＡＣアドレスと、下りフレームの宛先ＭＡＣアドレスとを比較し、その比較結果を検索応答処理回路２１Ｂへ出力する機能を有している。
検索応答処理回路２１Ｂは、各比較回路２１Ａからの比較結果に基づいて、ＭＡＣアドレス検索テーブル２２から並列的に出力されたデータのうち、宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータの登録有無を判定し、ＭＡＣアドレス検索応答として出力する機能とを有している。
【０１２８】
登録制御回路２１Ｃは、フレーム転送処理部２０からのＭＡＣアドレス登録要求に応じて、上りフレームの送信元ＭＡＣアドレスから、予め設定されているハッシュ関数に基づいて、当該送信元ＭＡＣアドレスと対応するバケット番号を特定する機能と、このバケット番号から、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号と対応するバケットのエントリを示すデータ格納アドレス（読出アドレス）を算出する機能と、このデータ格納アドレスに基づき当該宛先ＭＡＣアドレスと対応するバケットを選択した読出要求を、ＭＡＣアドレス検索テーブル２２へ出力する機能と、検索応答処理回路２１ＢからのＭＡＣアドレス検索応答が、登録なしを示す場合、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号のバケットに属する空きエントリへ登録する機能とを有している。
【０１２９】
図６の構成例では、ＭＡＣアドレス検索テーブル２２に、記憶領域としてバケット番号０〜５１１に対応する５１２（Ｎ＝５１２）個のバケットが設けられており、各バケットには、エントリ番号０〜３１に対応する３２個のエントリが設けられている。各記憶領域のデータ格納アドレスは、バケット番号と１対１に対応している。各エントリは、５１２ｗｏｒｄのデータ格納領域を有しており、ＭＡＣアドレス検索テーブル２２全体で、最大１６３８４個のデータの登録が可能である。
【０１３０】
ここでは、バケット番号の最大値が５１１なので、バケット番号を特定するハッシュ関数は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位９ビットを計算する関数式で構成すればよい。データ格納アドレスとバケット番号の関係は（データ格納アドレス）＝（バケット番号）×ａとなる。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【０１３１】
登録制御回路２１Ｃは、ＭＡＣアドレス登録要求が入力されると、上りフレームの送信元ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、当該バケット番号と対応するデータ格納アドレス値を算出し、複数の記憶領域（記憶領域＃０〜記憶領域＃３１）内の当該データ格納アドレスに格納されたエントリの登録データを同一のタイミングで読み出す。
これにより、ＭＡＣアドレス検索テーブル２２のすべてのエントリを検索範囲とするのではなく、ＭＡＣアドレス検索テーブル２２のうち、検索対象ＭＡＣアドレスが格納されていると予測されるバケットだけに検索範囲を絞り込むことができる。
【０１３２】
図６の例では、バケット振分けで求めたバケット番号は「１」、データ格納アドレス値は「ａ」である。したがって、バケット番号「１」のバケットに属する３２個のエントリから、データ１＿ｊ（ｊ＝０，１，…，３１）が同一のタイミングで読み出される。ＭＡＣアドレス検索テーブル２２から読み出された各データ１＿ｊは、それぞれ対応する比較回路２１Ａ（＃ｊ）に、同一のタイミングで入力される。
【０１３３】
各比較回路２１Ａ（＃ｊ）は、データ１＿ｊに含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスとを比較し、それぞれの比較結果を同一のタイミングで出力する。検索応答処理回路２１Ｂは、これら比較回路２１Ａから同一のタイミングで入力された比較結果を基にして、当該バケット内に下りフレームの送信元ＭＡＣアドレスが登録されたエントリがあるか否かを判定する。送信元ＭＡＣアドレスと一致するＭＡＣアドレスを含むデータの有無に応じて、検索応答処理回路２１Ｂは登録有無を示すＭＡＣアドレス検索応答を出力する。
【０１３４】
図１６は、ＭＡＣアドレス登録処理を示すタイムチャートである。この例では、ＭＡＣアドレス登録部２１に上りフレームの送信元ＭＡＣアドレスおよびＭＡＣアドレス検索要求が、先頭の１クロック目に入力された場合、次の２クロック目のバケット振分処理でバケット番号が特定され、先頭から３クロック目でバケット番号および読出アドレスと読出要求とが、登録制御回路２１ＣからＭＡＣアドレス検索テーブル２２へ出力される。
【０１３５】
これにより、先頭から３クロック目で、ＭＡＣアドレス登録部２１のうち、対応するバケットの各エントリからデータが読み出されるとともに、各比較回路２１Ａで当該データのＭＡＣアドレスと宛先ＭＡＣアドレスとが比較される。
これら比較結果は、先頭から４クロック目で、各比較回路２１Ａから検索応答処理回路２１Ｂへ出力されて、検索応答データが生成され、先頭から５クロック目で、検索応答処理回路２１Ｂから出力され、これに基づき登録制御回路２１Ｃから書込要求がＭＡＣアドレス検索テーブル２２へ出力される。
【０１３６】
したがって、ＭＡＣアドレス検索要求の入力から、５クロック後にＭＡＣアドレス検索応答が出力されていることがわかる。
また、登録制御回路２１Ｃ、ＭＡＣアドレス検索テーブル２２、比較回路２１Ａ、および検索応答処理回路２１Ｂは、それぞれの入力に応じて順に処理を実行することが可能であることから、全体としてシーケンス動作を行うことができ、１つの処理が終了すれば、１クロックの間隔をあけて次の処理を開始できる。このため、ＭＡＣアドレス登録部２１は、最小間隔１クロックでの検索処理が可能となる。
【０１３７】
［第３の実施の形態の効果］
このように、本実施の形態では、上り入力部１２Ａで、受信した上りフレームの送信元ＯＮＵに関する下り出力先選択情報を当該上りフレームに付与し、ＭＡＣアドレス登録部２１で、上り入力部１２Ａからの上りフレームから送信元ＭＡＣアドレスおよびＬＬＩＤと下り出力先選択情報とを取得し、これらＬＬＩＤおよび下り出力先選択情報を当該送信元ＭＡＣアドレスと対応付けて、ＭＡＣアドレス検索テーブル２２に登録するようにしたものである。
【０１３８】
これにより、非対称ＯＮＵ（上り速度が１Ｇで下り速度が１０Ｇ）の場合を含めて、ＭＡＣアドレス登録部２１は、ＭＡＣアドレスおよびＬＬＩＤと下り出力選択情報を自動的にＭＡＣアドレス検索テーブル２２に登録することができる。
また、上りフレームを利用して、ＭＡＣアドレス登録部２１へ下り出力先選択情報を通知するようにしたので、これと同時にＭＡＣアドレス検索テーブル２２に登録する送信元ＭＡＣアドレスやＬＬＩＤと同様にして、同一タイミングでＭＡＣアドレス登録部２１が下り出力先選択情報を取得することが可能なる。これにより、下り出力先選択情報を送信元ＭＡＣアドレスやＬＬＩＤと同期させて取得するための回路や制御の追加を必要とせず、極めて簡素な構成で下り出力先選択情報を通知することができる。
【０１３９】
なお、本実施の形態の構成は、第１の実施の形態の構成と比較すると、上りの処理で下り出力先選択情報を挿入する上り入力部１２Ａの追加が必要となる。この際、上り帯域割当を行う帯域割当処理部１５から下り出力先選択情報（Ｇａｔｅフレームと呼ばれる制御フレームの送信速度に対応）をもらうことにより、上りフレームのプリアンブルに下り出力先選択情報を容易に挿入することができる。
【０１４０】
また、本実施の形態では、第１の実施の形態と同様に、ＭＡＣアドレス検索テーブル２２を複数のバケットに分割して管理し、下りフレームの宛先ＭＡＣアドレスと関連付けられたバケット番号に対応するバケットから、当該バケットの各エントリからデータを並列的に読み出して、これらエントリごとに設けられている比較回路２１Ａで、データに含まれるＭＡＣアドレスと宛先ＭＡＣアドレスとを同一のタイミングで比較するようにしてもよい。これにより、第１の実施の形態と同様に、少ない回路規模および消費電力で、エントリ数の大きいＭＡＣアドレス検索テーブル２２の検索処理時間を短縮できる。
【０１４１】
［第４の実施の形態］
次に、本発明の第４の実施の形態にかかるＯＬＴ１０について説明する。
本実施の形態において、ＯＬＴ１０のＭＡＣアドレス登録部２１は、一定周期ごとに登録済みＭＡＣアドレスの受信履歴を確認して、一定期間内に受信履歴がない登録済みＭＡＣアドレスをＭＡＣアドレス検索テーブル２２で無効状態とする（エージング処理）手段を追加している。エージング処理の周期を「エージング周期」とし、エージング周期をカウントするためのタイマを「エージングタイマ」とする。
【０１４２】
図１７は、ＭＡＣアドレス検索テーブルの他の構成例である。前述した図１０と比較して、「エージング後受信状況」の項目が追加されている。「エージング後受信状況」とは、前回のエージング処理から現在までに該当のＭＡＣアドレスのフレームを受信したかどうかを表す情報である。
【０１４３】
図１８は、第４の実施の形態にかかるＭＡＣアドレス登録手順を示すフローチャートである。このＭＡＣアドレス登録手順は、前述した図１５のＭＡＣアドレス登録手順の最後に、当該ＭＡＣアドレスに対応するエージング後受信状況を「受信あり」に設定する（ステップ３０４）ようにしたものである。これにより、ＭＡＣアドレスが新規登録または登録更新される度に、エージング後受信状況は「受信あり」となる。
【０１４４】
図１９は、エージング処理手順を示すフローチャートである。ＭＡＣアドレス登録部２１は、一定周期ごとに図１９のエージング処理手順を実行する。
まず、ＭＡＣアドレス登録部２１は、ＭＡＣアドレス検索テーブル２２から今回未処理のエントリを１つ選択し（ステップ３１０）、この選択エントリのエントリが「有効」状態に設定されているかどうか確認する（ステップ３１１）。ここで、選択エントリが「有効」状態である場合（ステップ３１１：ＹＥＳ）、選択エントリのエージング後受信状況が「受信有り」に設定されているかどうか確認する（ステップ３１２）。
【０１４５】
ここで、「受信有り」に設定されている場合（ステップ３１２：ＹＥＳ）、選択エントリのエージング後受信状況を「受信なし」に設定し（ステップ３１３）、すべてのエントリの処理が終了したか確認し（ステップ３１５）、未処理のエントリがある場合には（ステップ３１５：ＮＯ）、ステップ３１０へ戻る。また、すべてのエントリの処理が終了した場合（ステップ３１５：ＹＥＳ）、一連の処理を終了する。
【０１４６】
一方、選択エントリのエージング後受信状況が「受信なし」に設定されている場合（ステップ３１２：ＮＯ）、選択エントリのエントリを、未使用である旨を示す「無効」状態に設定し（ステップ３１４）、ステップ３１５へ移行する。
また、ステップ３１１において、選択エントリのエントリが「無効」状態である場合も（ステップ３１１：ＮＯ）、ステップ３１５へ移行する。
【０１４７】
図２０は、ＭＡＣアドレス検索テーブルにおけるエントリの変遷を示すタイムチャートである。
時刻Ｔ１から時刻Ｔ２までのエージング周期Ｔ内における時刻Ｔ１１において、ＯＬＴ１０が未登録の送信元ＭＡＣアドレスを持つ上りフレームを受信した場合、この送信元ＭＡＣアドレスが空いているエントリに新規登録され、当該エントリが「有効」状態および「受信あり」に設定され、時刻Ｔ２における次のエージング処理で「受信なし」に設定される。
【０１４８】
続いて、時刻Ｔ２から時刻Ｔ３までのエージング周期Ｔ内における時刻Ｔ１２において再度この送信元ＭＡＣアドレスを持つ上りフレームを受信すると、当該エントリに同じＭＡＣアドレスが登録更新されて「有効」状態および「受信あり」となり、時刻Ｔ３における次のエージング処理で「受信なし」に設定される。
【０１４９】
このようにして、「有効」状態および「受信なし」に設定された後、時刻Ｔ３から時刻Ｔ４までのエージング周期Ｔ内に、この送信元ＭＡＣアドレスを持つフレームを受信しなかった場合、時刻Ｔ４における次のエージング処理で、当該エントリは「無効」状態に設定される。
【０１５０】
したがって、当該エントリは、時刻Ｔ２，Ｔ３におけるエージング処理で「受信なし」と設定されても「有効」状態のままなので、ＭＡＣアドレス検索テーブル２２には、時刻Ｔ４まで、この送信元ＭＡＣアドレスが継続して登録されているが、時刻Ｔ４では「無効」状態に設定される。エントリが「無効」状態に設定されるということは、すなわち、このＭＡＣアドレスがＭＡＣアドレス検索テーブル２２から削除されて、このエントリが空いているということである（エントリ無効になった時点でテーブルから削除されたとみなす）。
エントリが無効状態に設定されている記憶領域には、他のＭＡＣアドレスを新規登録することができる。
【０１５１】
［第４の実施の形態の効果］
このように、本実施の形態では、ＭＡＣアドレス登録部２１において、受信した上りフレームごとに、当該上りフレームの送信元ＭＡＣアドレスに関する受信状況をＭＡＣアドレス検索テーブル２２に登録し、ＭＡＣアドレス検索テーブル２２に登録されている各ＭＡＣアドレスの当該受信状況を検査し、これらＭＡＣアドレスのうち一定期間内に受信確認されていないＭＡＣアドレスを無効状態に設定するようにしたものである。
【０１５２】
これにより、ある送信元ＭＡＣアドレスを持つフレームを最後に受信してから２回のエージング処理を行うまでに、同じ送信元ＭＡＣアドレスを持つフレームを受信しないと、その後、当該送信元ＭＡＣアドレスは無効状態に設定される。したがって、登録情報が無効状態である記憶領域には他のＭＡＣアドレスを新規登録することができるので、限られたサイズ（エントリ）のＭＡＣアドレス検索テーブル２２を有効に使うことができる。
【０１５３】
例えば、４８ｂｉｔのＭＡＣアドレスがとりうる全ての値に対してエントリを用意しようとすると２＾４８個のエントリが必要となり、ＭＡＣアドレス検索テーブル２２が非常に大きくなり、回路規模も大きくなってしまう。そこで、小規模のＭＡＣアドレス検索テーブル２２を用意しておいて、使われなくなったＭＡＣアドレスをＭＡＣアドレス検索テーブル２２から削除し、新規登録の際は空きエントリに格納することで、回路規模の増大を抑制することができる。このように空きエントリを探して新規登録ＭＡＣアドレスを格納する方法では、ＭＡＣアドレスは不規則に並んで登録される。
【０１５４】
また、本実施の形態では、第１の実施の形態と同様に、ＭＡＣアドレス検索テーブル２２を複数のバケットに分割して管理し、下りフレームの宛先ＭＡＣアドレスと関連付けられたバケット番号に対応するバケットから、当該バケットの各エントリからデータを並列的に読み出して、これらエントリごとに設けられている比較回路２３Ａで、データに含まれるＭＡＣアドレスと宛先ＭＡＣアドレスとを同一のタイミングで比較するようにしてもよい。これにより、第１の実施の形態と同様に、少ない回路規模および消費電力で、エントリ数の大きいＭＡＣアドレス検索テーブル２２の検索処理時間を短縮できる。
【０１５５】
［第５の実施の形態］
次に、図２１を参照して、本発明の第５の実施の形態にかかるＯＬＴ１０について説明する。図２１は、第５の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
本実施の形態にかかるＯＬＴ１０における、第１の実施の形態との違いは、電源制御部４０を設け、ＭＡＣアドレス検索テーブル２２のうち、未使用の記憶領域への電源供給を遮断するようにした点にある。
【０１５６】
ＭＡＣアドレス検索テーブル２２およびＭＡＣアドレス検索部２３の構成は、前述した図５と同様である。ただし、ＭＡＣアドレス検索テーブル２２は、給電制御を行う単位の記憶領域、例えばエントリ番号の前半（０〜１５）と後半（１６〜３１）とで、記憶領域ごとに１つ以上の独立した記憶回路（半導体メモリ）で構成する。
【０１５７】
電源制御部４０は、ＯＬＴ１０の外部からハードウェアまたはソフトウェア（図２１に記載せず）により入力されるユーザ設定に基づいて、エントリ番号１６〜３１用の記憶領域（図２１中の斜線部）を構成する記憶回路への電源供給を遮断する機能を有している。
比較回路２３Ａは、エントリ番号１６〜３１と対応する比較回路＃１６〜＃３１において入力値を無視する機能を有している。
これにより、比較回路＃１６〜＃３１からの比較結果が不一致を示すことになり、検索応答処理回路２３Ｂにおいて、比較回路＃０〜＃１５からの比較結果に応じた検索応答データが出力される。
【０１５８】
［第５の実施の形態の効果］
本実施の形態では、ＭＡＣアドレス検索テーブル２２の各記憶領域を、それぞれ１つ以上の記憶回路から構成し、電源制御部４０で、各記憶領域の使用状態を示す外部からの設定に基づいて、記憶領域のうち、使用状態の記憶領域へ電源を供給し、未使用状態の記憶領域を構成する記憶回路へ電源供給を停止するようにしたので、使用するＭＡＣアドレスの個数（合計数）に合わせて、ＭＡＣアドレス検索テーブル２２を構成する記憶領域のうち、未使用バケット内エントリ番号用の記憶領域への電源供給を遮断することができ、ＯＬＴ１０の消費電力を削減することができる。
【０１５９】
通常、接続するＯＮＵの台数が少ないほど、使用するＭＡＣアドレスの個数（合計数）を少なくすることができる。つまり、接続するＯＮＵの台数が少ない場合には、使用するＭＡＣアドレスの個数（合計数）を少なくして未使用記憶領域への電源供給を遮断することにより、ＯＬＴ１０の消費電力を削減（省電力化）することが可能である。
【０１６０】
また、本実施の形態では、ＭＡＣアドレス検索部２３により、下りフレームの宛先ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合を例として説明したが、これに限定されるものではなく、ＭＡＣアドレス登録部２１により、上りフレームの送信元ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合についても、前述と同様に、本実施の形態を適用でき、同様の作用効果を得ることができる。
【０１６１】
［第６の実施の形態］
次に、図２２を参照して、本発明の第６の実施の形態にかかるＯＬＴ１０について説明する。図２２は、第６の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
本実施の形態にかかるＯＬＴ１０における、第１の実施の形態との違いは、ＭＡＣアドレス検索テーブル２２をエントリ番号ごとに分割して格納する記憶領域が、バケット番号の範囲によりさらに分割されている点にある。
【０１６２】
本実施の形態において、ＭＡＣアドレス検索テーブル２２は、２５６ｗｏｒｄのデータ格納領域を備えた６４個の記憶領域（記憶領域＃０〜記憶領域＃６３）で構成され、最大１６３８４個のデータの登録が可能である。このうち、バケット番号０〜２５５の各エントリが記憶領域＃０〜＃３１（前半）に対応し、バケット番号２５６〜２５５の各エントリが記憶領域＃３２〜＃６３に対応している。すなわち、前述した図２１と比較して、各記憶領域が、前半と後半とに２つに分割されている。各記憶領域は、１つ以上の独立した記憶回路（半導体メモリ）で構成する。
【０１６３】
これにより、バケット番号の最大値が５１１なので、バケット番号の計算方法は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位９ビット、とすればよい。ただし、バケット番号２５６〜５１１用を使用しない場合には、バケット番号の計算方法を変える必要があり、例えば、ＭＡＣアドレスのＣＲＣ３２の下位８ビット、とすればよい。
【０１６４】
バケット番号≦２５５の場合は、記憶領域＃０〜記憶領域＃３１のデータ格納アドレスとバケット番号の関係は、（データ格納アドレス）＝（バケット番号）×ａ（但し、ａは１以上の整数）となる。
一方、バケット番号≧２５６の場合は、記憶領域＃３２〜記憶領域＃６３のデータ格納アドレスとバケット番号の関係は、（データ格納アドレス）＝（バケット番号−２５６）×ａとなる。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【０１６５】
本実施の形態においても、第５の実施の形態と同様に、未使用記憶領域の電源供給を遮断して、ＯＬＴ１０の消費電力を削減（省電力化）することが可能である。
図２３は、第６の実施の形態にかかるＭＡＣアドレス検索テーブルの電源供給遮断例である。この例では、バケット番号２５６〜５１１用を使用しない場合、電源制御部４０により、バケット番号２５６〜５１１用の記憶領域（図２３中の斜線部）を構成する記憶回路への電源供給を遮断する。
【０１６６】
図２４は、第６の実施の形態にかかるＭＡＣアドレス検索テーブルの他の電源供給遮断例である。この例では、バケット内エントリ番号１６〜３１、および、バケット番号２５６〜５１１用を使用しない場合、電源制御部４０により、バケット内エントリ番号１６〜３１用、およびバケット番号２５６〜５１１用の記憶領域（図２４中の斜線部）を構成する記憶回路への電源供給を遮断する。
【０１６７】
［第６の実施の形態の効果］
このように、本実施の形態は、ＭＡＣアドレス検索テーブル２２の各記憶領域を、それぞれ１つ以上の記憶回路から構成し、ＭＡＣアドレス検索テーブル２２のうち、エントリ番号ごとに分割して設けた記憶領域を、そのバケット番号の範囲によりさらに分割して記憶領域を設け、電源制御部４０で、各記憶領域の使用状態を示す外部からの設定に基づいて、記憶領域のうち、使用状態の記憶領域を構成する記憶回路へ電源を供給し、未使用状態の記憶領域を構成する記憶回路へ電源供給を停止するようにしたので、使用するＭＡＣアドレスの個数（合計数）に合わせて、ＭＡＣアドレス検索テーブル２２を構成する記憶領域のうち、未使用バケット番号用の記憶領域への電源供給を遮断し、ＯＬＴ１０の消費電力を削減することができ、第５の実施の形態と比較して、さらに細かくＯＬＴ１０の消費電力を削減することができる。
【０１６８】
通常、接続するＯＮＵの台数が少ないほど、使用するＭＡＣアドレスの個数（合計数）を少なくすることができる。つまり、接続するＯＮＵの台数が少ない場合には、使用するＭＡＣアドレスの個数（合計数）を少なくして未使用記憶領域への電源供給を遮断することにより、ＯＬＴ１０の消費電力を削減（省電力化）することが可能である。
また、本実施の形態では、エントリ番号ごとに分割して設けた記憶領域を、バケット番号０〜２５５用とバケット番号２５６〜５１１用の２つの記憶領域に再分割した例を示したが、３つ以上の記憶領域に分割することも可能である。
【０１６９】
また、本実施の形態では、ＭＡＣアドレス検索部２３により、下りフレームの宛先ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合を例として説明したが、これに限定されるものではなく、ＭＡＣアドレス登録部２１により、上りフレームの送信元ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合についても、前述と同様に、本実施の形態を適用でき、同様の作用効果を得ることができる。
【０１７０】
［第７の実施の形態］
次に、図２５を参照して、本発明の第７の実施の形態にかかるＯＬＴ１０について説明する。図２５は、第７の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
本実施の形態にかかるＯＬＴ１０における、第６の実施の形態との違いは、電源制御部４０で、比較回路２３Ａのうち、未使用の比較回路２３Ａへの電源供給をも遮断するようにした点にある。
【０１７１】
すなわち、図２５に示すように、バケット内エントリ番号１６〜３１、および、バケット番号２５６〜５１１用を使用しない場合に、バケット内エントリ番号１６〜３１用、および、バケット番号２５６〜５１１用の記憶領域を構成する記憶回路への電源供給を遮断し、さらに、バケット内エントリ番号１６〜３１用の比較回路２３Ａへの電源供給を遮断する（図２５中の斜線部）。各記憶領域は、１つ以上の独立した記憶回路（半導体メモリ）で構成する。
これにより、比較回路＃１６〜＃３１からの比較結果が不一致を示すことになり、検索応答処理回路２３Ｂにおいて、比較回路＃０〜＃１５からの比較結果に応じた検索応答データが出力される。
【０１７２】
図２６は、第７の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。前述した図１２との差分は、エントリ番号１６〜３１用の記憶領域と比較回路＃１６〜＃３１への電源供給が遮断されているために、ＭＡＣアドレス検索テーブル２２のうち、エントリ番号１６〜３１の読み出しデータ＃１６〜＃３１と比較結果＃１６〜＃３１とが無効となる点である。
【０１７３】
［第７の実施の形態の効果］
このように、本実施の形態は、電源制御部４０で、各記憶領域の使用状態を示す外部からの設定に基づいて、ＭＡＣアドレス検索部２３の比較回路２３Ａのうち、未使用の記憶領域と対応する比較回路２３Ａへの電源供給を遮断するようにしたので、ＯＬＴ１０の消費電力を削減することができる。
通常、接続するＯＮＵの台数が少ないほど、使用するＭＡＣアドレスの個数（合計数）を少なくすることができる。つまり、接続するＯＮＵの台数が少ない場合には、使用するＭＡＣアドレスの個数（合計数）を少なくして未使用の比較回路２３Ａへの電源供給を遮断することにより、ＯＬＴ１０の消費電力を削減（省電力化）することが可能である。
【０１７４】
また、本実施の形態では、ＭＡＣアドレス検索部２３により、下りフレームの宛先ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合を例として説明したが、これに限定されるものではなく、ＭＡＣアドレス登録部２１により、上りフレームの送信元ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合についても、前述と同様に、本実施の形態を適用でき、同様の作用効果を得ることができる。
【０１７５】
［第８の実施の形態］
次に、図２７を参照して、本発明の第８の実施の形態にかかるＯＬＴ１０について説明する。図２７は、第８の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
本実施の形態にかかるＯＬＴ１０における、第１の実施の形態との違いは、ＭＡＣアドレス検索部２３の比較回路２３Ａが、エントリ番号の範囲により複数のグループに分けられ、グループごとにタイミングをずらして、ＭＡＣアドレス検索テーブル２２からのデータ読み出しと比較処理を行う点である。
【０１７６】
比較回路２３Ａは、バケット内エントリ番号０〜１５のグループとバケット内エントリ番号１６〜３１のグループの２つのグループに分けられている。
電源制御部４０は、一方のグループの比較回路２３Ａが比較処理を行っている期間は、他方のグループの比較回路２３Ａへのクロック入力を停止すること等により消費電力を削減（省電力化）する。
【０１７７】
また、検索応答処理回路２３Ｂは、３２個の比較回路２３Ａからグループごとにずれたタイミングで入力された比較結果＃０〜＃３１を基にして、当該バケット内に下りフレームの宛先ＭＡＣアドレスが登録されたエントリがあるか否かを判定し、ＭＡＣアドレス検索応答を出力する。
【０１７８】
図２８は、第８の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。ＭＡＣアドレス検索テーブル２２に対する読出要求＃０〜＃１５／＃１６〜＃３１から、比較結果＃０〜＃１５／＃１６〜＃３１の出力までの処理タイミングが、エントリ番号０〜１５のグループとエントリ番号１６〜３１のグループの２つのグループとの間で１クロックずれて行われる。
【０１７９】
［第８の実施の形態の効果］
このように、本実施の形態によれば、ＭＡＣアドレス検索部２３に下りフレームの宛先ＭＡＣアドレスおよびＭＡＣアドレス検索要求が入力されてから、７クロック後にＭＡＣアドレスが検索され、ＭＡＣアドレス検索応答が出力される。また、ＭＡＣアドレス検索部２３は、最小間隔２クロックでの検索処理が可能である。
【０１８０】
また、本実施の形態では、ＭＡＣアドレス検索部２３により、下りフレームの宛先ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合を例として説明したが、これに限定されるものではなく、ＭＡＣアドレス登録部２１により、上りフレームの送信元ＭＡＣアドレスに基づきＭＡＣアドレス検索テーブル２２を検索する場合についても、前述と同様に、本実施の形態を適用でき、同様の作用効果を得ることができる。
【０１８１】
［第９の実施の形態］
次に、図２９を参照して、本発明の第９の実施の形態にかかるＯＬＴ１０について説明する。図２９は、第９の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス検索部の構成例である。
【０１８２】
本実施の形態では、１個のバケット番号に複数のデータ格納アドレスが対応し、複数のデータ格納アドレスに格納されている登録データをデータ格納アドレスごとにタイミングをずらして読み出して、比較するようにしたものである。図２９には、１個のバケット番号に２個のデータ格納アドレスが対応する場合の構成例が示されている。
【０１８３】
本実施の形態において、ＭＡＣアドレス検索テーブル２２には、図５の各バケットをＫ（Ｋは２以上の整数）個ずつ結合したバケット（結合後バケット）が設けられている。図２９の例は、Ｋ＝２の場合が示されており、例えばバケット番号＝１のバケット（結合後バケット）には、データ格納アドレスが「２ａ」と「３ａ」のバケット（結合前バケット）が属している。
【０１８４】
ＭＡＣアドレス検索部２３の検索制御回路２３Ｃは、ＭＡＣアドレス検索テーブル２２のうち、下りフレームの宛先ＭＡＣアドレスからハッシュ関数でバケット（結合後バケット）を特定する機能と、ｓｅｌｅｃｔ信号により、当該バケットに属するバケット（結合前バケット）を順次切替選択する機能と有している。
比較回路２３Ａは、これに応じて選択されたバケット（結合前バケット）ごとに、当該バケットに属する各エントリから並列的に出力されたＮ個のデータを順次比較することにより、Ｎ個の比較結果を得る処理をＫ回繰り返す機能を有している。
検索応答処理回路２３Ｂは、比較回路２３Ａで得られたＮ×Ｋ個の比較結果に基づいて、これらＮ×Ｋ個のデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得する機能を有している。
【０１８５】
本実施の形態によれば、ＭＡＣアドレス検索テーブル２２の構成を変えずに、１バケットあたりのエントリ数を２倍にすることができる。検索制御回路２３Ｃに入力されているｓｅｌｅｃｔ信号は、２個のデータ格納アドレスのうち、前半（番号が小さい方）または後半（番号が大きい方）のどちらに登録されているデータを読み出すのかを指示するための信号である。ｓｅｌｅｃｔ＝０の時は「前半」からデータが読み出され、ｓｅｌｅｃｔ＝１の時は「後半」が読み出される。
【０１８６】
図２９において、バケット番号の最大値が２５５なので、バケット番号の計算方法は、例えば、ＭＡＣアドレスのＣＲＣ３２の下位８ビット、とすればよい。データ格納アドレスとバケット番号の関係は（データ格納アドレス）＝｛（バケット番号）×２＋ｓｅｌｅｃｔ｝×ａ（但し、ｓｅｌｅｃｔ＝０（前半），１（後半））である。ａは、記憶領域を構成する記憶回路（半導体メモリ）における、データ格納アドレスの間隔を示す係数であり、１以上の整数が用いられる。
【０１８７】
ＭＡＣアドレス検索部２３は、ＭＡＣアドレス検索要求が入力されると、下りフレームの宛先ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、ｓｅｌｅｃｔ信号に基づいて、当該バケット番号と一対多に対応する複数のデータ格納アドレス値を、データ格納アドレスごとにタイミングをずらして算出する。
この時、算出したバケット番号をレジスタに保持しておき、ｓｅｌｅｃｔの値を０から１に変化させれば、２種類のアドレス値をタイミングをずらして出力することができる。図２９の場合、バケット番号＝「１」であり、２種類のアドレス値は「２ａ」と「３ａ」である。
【０１８８】
ＭＡＣアドレス検索部２３は、２種類のアドレス値が出力されるタイミングに合わせて、複数の記憶領域（記憶領域＃０〜記憶領域＃３１）内の当該データ格納アドレスに格納されたエントリの登録データを２回読み出すことで、合計６４個の登録データを読み出す。
エントリ番号ごとに設けられた複数の比較回路（２３Ａ）＃ｊ（ｊ＝０，１，…，３１）には、ＭＡＣアドレス検索テーブル２２から読み出されたデータ１＿ｊが同一のタイミングで入力され、次の同一のタイミングで、データ１＿（ｊ＋３２）が入力される。
【０１８９】
比較回路＃ｊは、同一のタイミングで、登録データ１＿ｊに含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスを比較して比較結果＃ｊを出力し、次の同一のタイミングで、登録データ１＿（ｊ＋３２）に含まれるＭＡＣアドレスと下りフレームの宛先ＭＡＣアドレスを比較して比較結果＃ｊを出力する。検索応答処理回路２３Ｂは、３２個の比較回路２３Ａからデータ格納アドレスごとにタイミングをずらして２回入力された、バケット内エントリ番号毎の比較結果＃ｊを基にして、６４個のエントリからなる当該バケット内に下りフレームの宛先ＭＡＣアドレスが登録されたエントリがあるか否かを判定し、ＭＡＣアドレス検索応答を出力する。
【０１９０】
図３０は、第９の実施の形態にかかるＭＡＣアドレス検索処理を示すタイムチャートである。ＭＡＣアドレス検索テーブル２２の読出アドレス算出（前半／後半）から、比較結果（前半／後半）の出力までの処理が、１クロックずれて２回に分けて行われる。この例では、ＭＡＣアドレス検索部２３に下りフレームの宛先ＭＡＣアドレスおよびＭＡＣアドレス検索要求が入力されてから、７クロック後にＭＡＣアドレス検索応答が出力される。また、ＭＡＣアドレス検索部２３は、最小間隔２クロックでの検索処理が可能である。
【０１９１】
図３１は、第９の実施の形態にかかるＭＡＣアドレス検索テーブルとＭＡＣアドレス登録部を示す構成例である。
ＭＡＣアドレス登録部２１が、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスに基づいて、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２に対して登録する場合も、ＭＡＣアドレス検索部２３と同様にして、ＭＡＣアドレス検索テーブル２２を検索することにより、当該送信元ＭＡＣアドレスに対応するデータの登録有無を確認する。
【０１９２】
図３１に示すように、このＭＡＣアドレス登録部２１は、主な回路部として、比較回路２１Ａ、検索応答処理回路２１Ｂ、および登録制御回路２１Ｃが設けられている。
比較回路２１Ａは、これに応じて選択されたバケット（結合前バケット）ごとに、当該バケットに属する各エントリから並列的に出力されたＮ個のデータを順次比較することにより、Ｎ個の比較結果を得る処理をＫ回繰り返す機能を有している。
検索応答処理回路２１Ｂは、比較回路２１Ａで得られたＮ×Ｋ個の比較結果に基づいて、これらＮ×Ｋ個のデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータの登録有無を判定し、ＭＡＣアドレス検索応答として出力する機能とを有している。
【０１９３】
登録制御回路２１Ｃは、ＭＡＣアドレス検索テーブル２２のうち、上りフレームの送信元ＭＡＣアドレスからハッシュ関数でバケット（結合後バケット）を特定する機能と、ｓｅｌｅｃｔ信号により、当該バケットに属するバケット（結合前バケット）を順次切替選択する読出要求を、ＭＡＣアドレス検索テーブル２２へ出力する機能と、検索応答処理回路２１ＢからのＭＡＣアドレス検索応答が、登録なしを示す場合、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット番号のバケットに属する空きエントリへ登録する機能とを有している。
【０１９４】
登録制御回路２１Ｃは、ＭＡＣアドレス登録要求が入力されると、上りフレームの送信元ＭＡＣアドレスを基にバケット番号を算出してバケット振分けを行い、ｓｅｌｅｃｔ信号に基づいて、当該バケット番号と一対多に対応する複数のデータ格納アドレス値を、データ格納アドレスごとにタイミングをずらして算出する。
この時、算出したバケット番号をレジスタに保持しておき、ｓｅｌｅｃｔの値を０から１に変化させれば、２種類のアドレス値をタイミングをずらして出力することができる。図３２の場合、バケット番号＝「１」であり、２種類のアドレス値は「２ａ」と「３ａ」である。
【０１９５】
このようにして、登録制御回路２１Ｃは、２種類のアドレス値が出力されるタイミングに合わせて、ＭＡＣアドレス検索テーブル２２内のＮ個の記憶領域から、当該データ格納アドレスに格納されたエントリのデータをＫ回繰り返して読み出すことで、合計Ｎ×Ｋの登録データを読み出す。
【０１９６】
比較回路２１Ａは、これらＫ回のタイミングごとに、ＭＡＣアドレス検索テーブル２２から並列的に読み出されたＮ個のデータを比較してＮ個の比較結果を得る処理を、Ｋ回繰り返す。
検索応答処理回路２１Ｂは、得られたＮ×Ｋ個の比較結果に基づいて、ＭＡＣアドレス検索テーブル２２に対する当該送信元ＭＡＣアドレスの登録有無を確認し、当該送信元ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されていない場合は、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該結合バケットに属する空きエントリへ登録する。
【０１９７】
［第９の実施の形態の効果］
このように、本実施の形態では、ＭＡＣアドレス検索テーブル２２に、各バケットをＫ（Ｋは２以上の整数）個ずつ結合したバケット（結合後バケット）を設け、ＭＡＣアドレス検索部２３の検索制御回路２３Ｃで、ＭＡＣアドレス検索テーブル２２のうち、下りフレームの宛先ＭＡＣアドレスからハッシュ関数でバケット（結合後バケット）を特定するとともに、当該バケットに属するバケット（結合前バケット）を順次切替選択し、比較回路２３Ａで、これに応じて選択されたバケット（結合前バケット）ごとに、当該バケットに属する各エントリから並列的に出力されたＮ個のデータを順次比較することにより、Ｎ個の比較結果を得る処理がＫ回繰り返し、比較回路２３Ａで得られたＮ×Ｋ個の比較結果に基づいて、検索応答処理回路２３Ｂで、これらＮ×Ｋ個のデータのうち宛先ＭＡＣアドレスと一致したＭＡＣアドレスを含むデータから宛先情報を取得するようにしたものである。
【０１９８】
これにより、ＭＡＣアドレス検索テーブル２２の構成を変えずに、１バケットあたりのエントリ数を２倍にすることができる。したがって、特定の値範囲のＭＡＣアドレスが比較的多く利用される場合であっても、これらＭＡＣアドレスを１つのバケットに格納することができる。なお、本実施の形態では、Ｋ＝２の場合を例として説明したが、これに限定されるものではなく、Ｋが３以上の場合にも同様に適用でき、同様の作用効果を得ることができる。
【０１９９】
また、本実施の形態は、ＭＡＣアドレス登録部２１の登録制御回路２１Ｃで、当該ＭＡＣアドレス検索テーブル２２のうち、ＯＮＵから受信した上りフレームの送信元ＭＡＣアドレスからハッシュ関数でバケット（結合後バケット）を特定するとともに、当該バケットに属するバケット（結合前バケット）を順次切替選択し、比較回路２１Ａで、これに応じて選択されたバケット（結合前バケット）ごとに、当該バケットに属する各エントリから並列的に出力されたＮ個のデータを順次比較することにより、Ｎ個の比較結果を得る処理をＫ回繰り返し、比較回路２１Ａで得られたＮ×Ｋ個の比較結果に基づいて、検索応答処理回路２１Ｂで、ＭＡＣアドレス検索テーブル２２に対する当該送信元ＭＡＣアドレスの登録有無を確認し、当該送信元ＭＡＣアドレスがＭＡＣアドレス検索テーブル２２に登録されていない場合は、当該上りフレームから取得した送信元ＭＡＣアドレスおよび宛先情報を含むデータを、ＭＡＣアドレス検索テーブル２２のうち当該バケット（結合後バケット）に属する空きエントリへ登録するようにしたものである。
【０２００】
これにより、ＭＡＣアドレス検索テーブル２２の構成を変えずに、１バケットあたりのエントリ数を２倍にすることができる。したがって、特定の値範囲のＭＡＣアドレスが比較的多く利用される場合であっても、これらＭＡＣアドレスを１つのバケットに格納することができる。なお、本実施の形態では、Ｋ＝２の場合を例として説明したが、これに限定されるものではなく、Ｋが３以上の場合にも同様に適用でき、同様の作用効果を得ることができる。
【０２０１】
なお、本実施の形態において、設定に応じて、「バケット振分け」、「アドレス算出」及び「検索応答処理回路」の動作を変えるように構成することも可能である。例えば、第１の動作モードでは第１の実施の形態と同じ動作とし、第２の動作モードでは本実施の形態の動作とすることが可能である。
【０２０２】
［実施の形態の拡張］
以上、実施の形態を参照して本発明を説明したが、本発明は上記実施の形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施の形態については、矛盾しない範囲で任意に組み合わせて実施することができる。
【０２０３】
また、以上の各実施の形態では、記憶回路や比較回路などの回路部への電源供給を停止することにより、電力消費を削減する場合を例として説明したが、これに限定されるものではない。例えば、回路部ごとに入力される処理動作用のクロック信号を供給停止することにより省電力化を行うようにしてもよく、前述した各実施の形態と同様の作用効果を得ることができる。
【符号の説明】
【０２０４】
１００…ＰＯＮシステム、１０…ＯＬＴ、１１…ＰＯＮポート、１２…受信回路、１２Ａ…上り入力部、１３…フレーム分離部、１４…制御フレーム処理部、１５…帯域割当処理部、１６…フレーム多重部、１６Ａ…フレーム多重部（０系）、１６Ｂ…フレーム多重部（１系）、１７Ａ…送信回路（０系）、１７Ｂ…送信回路（１系）、１８…送受信回路、１９…ＳＮＩポート、２０…フレーム転送処理部、２０Ａ…ＭＡＣアドレス処理部、２１…ＭＡＣアドレス登録部、２１Ａ…比較回路、２１Ｂ…検索応答処理回路、２１Ｃ…登録制御回路、２２…ＭＡＣアドレス検索テーブル、２３…ＭＡＣアドレス検索部、２３Ａ…比較回路、２３Ｂ…検索応答処理回路、２３Ｃ…検索制御回路、２４…下りレイテンシ吸収部、２４Ａ…第１の下りレイテンシ吸収部、２５…出力合成部、２５Ａ…第１の出力合成部、２５Ｂ…ＬＬＩＤ付与部、２６…下り出力先制御部、２７Ａ…下り出力タイミング調整部（０系）、２７Ｂ…下り出力タイミング調整部（１系）、３０…下り伝送速度処理部、３１…速度情報登録部、３２…下り伝送速度検索テーブル、３３…下り伝送速度検索部、３４…第２の下りレイテンシ吸収部、３５…第２の出力合成部、４０…電源制御部。
【図１】
0005748285.tif 000002
【図２】
0005748285.tif 000003
【図３】
0005748285.tif 000004
【図４】
0005748285.tif 000005
【図５】
0005748285.tif 000006
【図６】
0005748285.tif 000007
【図７】
0005748285.tif 000008
【図８】
0005748285.tif 000009
【図９】
0005748285.tif 000010
【図１０】
0005748285.tif 000011
【図１１】
0005748285.tif 000012
【図１２】
0005748285.tif 000013
【図１３】
0005748285.tif 000014
【図１４】
0005748285.tif 000015
【図１５】
0005748285.tif 000016
【図１６】
0005748285.tif 000017
【図１７】
0005748285.tif 000018
【図１８】
0005748285.tif 000019
【図１９】
0005748285.tif 000020
【図２０】
0005748285.tif 000021
【図２１】
0005748285.tif 000022
【図２２】
0005748285.tif 000023
【図２３】
0005748285.tif 000024
【図２４】
0005748285.tif 000025
【図２５】
0005748285.tif 000026
【図２６】
0005748285.tif 000027
【図２７】
0005748285.tif 000028
【図２８】
0005748285.tif 000029
【図２９】
0005748285.tif 000030
【図３０】
0005748285.tif 000031
【図３１】
0005748285.tif 000032
【図３２】
0005748285.tif 000033
【図３３】
0005748285.tif 000034
【図３４】
0005748285.tif 000035
【図３５】
0005748285.tif 000036
【図３６】
0005748285.tif 000037
【図３７】
0005748285.tif 000038