(57)【特許請求の範囲】
【請求項１】
回線情報および／またはフレーム（パケット）情報で定まるＱｏＳに対応して記憶容量とアクセス速度の異なるメモリにＦＩＢを記憶しているＦＩＢ部と、
フレーム（パケット）を受信すると、その回線情報および／またはフレーム（パケット）情報を元に内部ＱｏＳ情報を生成する内部ＱｏＳ情報生成部と、
前記受信したフレーム（パケット）を入力すると共に、前記生成された内部ＱｏＳ情報により前記受信したフレーム（パケット）のためのデータパスを選択するＳＥＬ部と、
前記データパスおよび前記メモリのインタフェースと１対１に対応した複数の個別の検索部を備え、前記個別の検索部のそれぞれが、対応する前記データパスを介して入力したフレーム（パケット）のフレーム（パケット）情報から検索ＫＥＹを作成し、該検索ＫＥＹを元に得た一意の値により、対応する前記インタフェースを介して前記ＦＩＢ部からＦＩＢを取得し、取得した前記ＦＩＢを前記入力したフレーム（パケット）と共に出力するフロー検索部と、
前記フロー検索部からのフレーム（パケット）に前記検索されたＦＩＢでフォワーディング処理を行うフォワーディング処理部を有し、
複数の前記個別の検索部のうち、少なくとも２つの前記個別の検索部は、異なる取得方法にて、前記一意の値を取得することを特徴とするデータ転送装置。
【請求項２】
前記異なる取得方法のうちの第１の方法は、前記検索ＫＥＹにＨＡＳＨ関数計算を行なって前記一意の値を得る方法であり、第２の方法は、前記検索ＫＥＹによりＴＣＡＭ（Ternary Content Addressable Memory）に問い合わせることによって前記一意の値を得る方法であることを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記ＳＥＬ部は、前記フレーム（パケット）情報の内のＴｏＳ値を元に前記インタフェースまたは前記データパスを選択することを特徴とする請求項１または２に記載のデータ転送装置。
【請求項４】
前記ＳＥＬ部は、前記回線情報の内の回線番号と、前記フレーム（パケット）情報の内のＣｏＳ値，ＴｏＳ値およびＩＰＤＡとを元に前記インタフェースまたは前記データパスを選択することを特徴とする請求項１または２に記載のデータ転送装置。
【請求項５】
前記検索ＫＥＹは、前記フレーム（パケット）情報の内のＩＰＤＡであることを特徴とする請求項１−４のいずれか１項に記載のデータ転送装置。
【請求項６】
前記複数のメモリは、スクラッチメモリもしくはキャッシュメモリと，ＳＲＡＭと，ＤＲＡＭとで構成されることを特徴とする請求項１〜５のいずれか１項に記載のデータ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレームまたはパケットを回線経由で送受信するデータ転送装置に関する。
【背景技術】
【０００２】
この種のデータ転送にはフォワーディング（forwarding）処理が伴うが、フォワーディング処理においては、データ転送装置内のデータベースからＦＩＢ（Forwarding Information Base）を検索することになる。そして、データベースで取り扱うエントリ数が増え、また通信速度が高速化すると、データベースのアクセス速度が問題化してくる。なお、ＦＩＢとは、フレーム上の情報や経路情報から作成された転送先情報のことをいい、例えば、ＭＡＣアドレスやタグ情報から作成されたものや、経路制御プロトコルなどを基に作成されたものである。
【０００３】
この問題を解決する従来技術の一つは、パケットの転送処理に関連する参照情報を記憶する情報エントリを複数個備えた記憶部と、パケットのフォワーディングに関連するフィールドに対応する参照情報をまとめて記憶するキャッシュブロックを複数備えたキャッシュ部を設けることにより、特殊なメモリや専用ハードウェアを使用することなくフォワーディング処理の高速化を図っている。
【０００４】
しかし、上記技術では、フォワーディング処理に当たって先ずキャッシュを確認し、ヒットしなければ全ての参照情報が格納されている記憶部を直接見に行く必要があるため、キャッシュにヒットしないパケットが連続してくると、キャッシュを用いず記憶部に直接アクセスする時より多くの処理時間を要する惧れがあるという第１の問題点がある。
【０００５】
また、昨今のデータ通信の多様化に伴って、処理時間を小さくしたいデータや、従来通りの処理時間でも許容できるデータが混在するにも拘わらず、全てのパケットの参照情報を同じアクセス方法（検索方法、メモリインタフェース）で取得しているため、多様化ニーズに応えることができないという第２の問題点もある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１７４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
解決しようとする問題点は、パケットの転送処理に関連するＦＩＢを得るための時間のバラツキが大きく、かつデータ通信の多様化に整合させることができない点である。
【課題を解決するための手段】
【０００８】
本発明は、記憶容量とアクセス速度の異なる複数のメモリにＦＩＢを分散記憶し、回線情報，フレームまたはパケット情報に相応しいＱｏＳ（Quality of Service）でＦＩＢを得ることを最も主要な特徴とする。なお、ＱｏＳとは、ネットワークにおける伝送遅延等のサービス品質である。
【発明の効果】
【０００９】
本発明のデータ転送装置は、回線情報，フレームまたはパケット情報に相応しいＱｏＳでＦＩＢを得ることによってフレームまたはパケットを転送することが可能となるため、データ通信の多様化に整合させつつデータ転送を高速化できるという利点がある。
【図面の簡単な説明】
【００１０】
【図１】本発明装置の実施例１のブロック図である。
【図２】ＴｏＳ値のみを振分け情報とした場合に選択されるインタフェースを例示する図である。（実施例１）
【図３】各インタフェースのアクセス時間を示す図である。（実施例１）
【図４】ＦＩＢ部の登録内容例を示す図である。（実施例１，２）
【図５】フレームの受信順番を示す図である。（実施例１，２）
【図６】ＩＰＤＡと、フロー検索部３３で得られた結果と、ＦＩＢ．Ｎｏとの関係を一覧表示する図である。（実施例１，２）
【図７】フレーム受信からフォワーディング処理を終了するまでの時系列な関係を示すシーケンス図である。（実施例１）
【図８】本発明装置の実施例２のブロック図である。
【図９】ＴｏＳ値のみを振分け情報とした場合に選択されるデータパスを例示する図である。（実施例２）
【図１０】各データパスのアクセス時間を示す図である。（実施例２）
【図１１】フレーム受信からフォワーディング処理を終了するまでの時系列な関係を示すシーケンス図である。（実施例２）
【図１２】内部ＱｏＳ情報選択部の振分け情報を得る他の方法例を示す図である。（実施例１，２）
【発明を実施するための形態】
【００１１】
本発明のデータ転送装置は、回線情報および／またはフレーム（パケット）情報で定まるＱｏＳに対応して記憶容量とアクセス速度の異なる複数のメモリにＦＩＢを記憶しておき、フレーム（パケット）を受信すると、その回線情報および／またはフレーム（パケット）情報により、メモリから該当するＦＩＢを検索し、受信したフレーム（パケット）に検索されたＦＩＢでフォワーディング処理を行って送信する。以下、本発明の実施例について図面を参照して詳細に説明する。ここまでのフレーム（パケット）は、フレームまたはパケットの意であったが、以下、「フレーム」と記す。
【実施例１】
【００１２】
図１は、本発明装置の実施例１のブロック図である。このデータ転送装置１０は、回線２０からフレームを受信し、フレーム情報に相応しいＱｏＳでＦＩＢを検索してフォワーディング処理を行い、回線２０により転送先へフレームを送信する。
【００１３】
受信フレームには、処理速度の別をＨＩ，ＭＤ，ＬＯにより指定するＴｏＳ（Type of Service）値と、フレームの宛先アドレスであるＩＰＤＡ（IP Direction Address）（これらを「フレーム情報」という）が含まれている。ＴｏＳとは、ルータに対して処理の優先度を指定するためのヘッダ情報の一部である。また、回線２０は複数であって、それぞれに物理ポート番号および装置内論理番号（「回線情報」という）が付されている。
【００１４】
データ転送装置１０は、内部ＱｏＳ情報生成部３０，ＳＥＬ部３１，ＦＩＢ部３２，フロー検索部３３およびフォワーディング処理部３４から成る。更に、ＦＩＢ部３２は、装置内遅延を最も小さくしたいＦＩＢを登録しておりスクラッチメモリもしくはキャッシュメモリで構成されるＦＩＢ＿Ｈ３２１と、装置内遅延をＦＩＢ＿Ｈの次に小さくしたいＦＩＢを登録しておりＳＲＡＭで構成されるＦＩＢ＿Ｍ３２２と、装置内遅延をあまり気にしないＦＩＢを登録しておりＤＲＡＭで構成されるＦＩＢ＿Ｌ３２３から成る。
【００１５】
一般に、記憶容量が大きいメモリはアクセスが遅く、記憶容量が小さいメモリはアクセスが速いという傾向にあるので、このように記憶容量とアクセス速度の異なる複数のメモリにＦＩＢを分散して記憶することにより、記憶容量とアクセス速度の程良いトレードオフを実現したのである。
【００１６】
内部ＱｏＳ情報生成部３０は、回線２０の回線情報とフレーム情報を元に内部ＱｏＳ情報を生成してＳＥＬ部３１へ出力する。詳しくは、内部ＱｏＳ情報生成部３０は、回線情報とフレーム情報で定まる振分け情報を予め登録しており、フレームを受信すると、回線情報，フレーム情報をキーに登録内容をサーチして内部ＱｏＳ情報を求める。
【００１７】
ＳＥＬ部３１とＦＩＢ＿Ｈ３２１，ＦＩＢ＿Ｍ３２２，ＦＩＢ＿Ｌ３２３は、別個のメモリインタフェース（以下、「インタフェース」と記す）１，２，３で接続されており、ＳＥＬ部３１は、内部ＱｏＳ情報生成部３０で生成された内部ＱｏＳ情報により、いずれかのインタフェースを選択する。なお、ＳＥＬ部３１とＦＩＢ部３２の間のメモリインタフェース数は、２つ、４つ、またはそれ以上であってもよい。
【００１８】
図２は、ＴｏＳ値のみを振分け情報とした場合に選択されるインタフェースを例示する。図１と図２から、ＴｏＳ値「ＨＩ」，「ＭＤ」，「ＬＯ」に対応して、高速度，中速度，低速度のＦＩＢ部が選択されることが分かる。図３は、各インタフェースのアクセス時間を示している。
【００１９】
一方、フロー検索部３３は、データ転送装置１０が回線２０からフレームを受信した際、上記の処理と並行して、フレーム情報により検索ＫＥＹを作成し、作成した検索ＫＥＹを元に、ＨＡＳＨ関数などの計算によって一意の値を得、その値を用いて、ＳＥＬ部３１が選択したインタフェース経由でＦＩＢ部３２からＦＩＢを取得して、受信フレームと共にフォワーディング処理部３４へ出力する。検索ＫＥＹは、例えば、ＩＰＤＡとすることも可能であり、この場合のＦＩＢ＿Ｈ３２１，ＦＩＢ＿Ｍ３２２，ＦＩＢ＿Ｌ３２３の登録内容を図４に例示する。図４において、ＦＩＢ．Ｎｏ欄における［］内の数字は、ＨＡＳＨ関数などの計算によって得られる一意の値を示す。
【００２０】
フォワーディング処理部３４は、フロー検索部３３で得られたＦＩＢを元に受信フレームについてフォワーディング処理を行い、送信フレームとして回線２０へ出力する。このように、ＦＩＢを取得する速度をＴｏＳ（Type of Service）値によって可変とすることにより、アクセス時間は速いが記憶容量は小さいメモリと、記憶容量は大きいがアクセス時間が遅いメモリを使い分けることができるため、全体的に高速化し、かつデータ通信の多様化に整合したフォワーディング処理を実行することができる。
【００２１】
次に、以上のように構成された実施例１の動作について図１〜図７を用いて説明する。内部ＱｏＳ情報生成部３０には、図２に示したようなインタフェースの選択をもたらすような振分け情報が予め登録されており、また、ＦＩＢ＿Ｈ３２１，ＦＩＢ＿Ｍ３２２，ＦＩＢ＿Ｌ３２３には、図４に示したような内容が予め登録されているものとする。
【００２２】
いま、回線番号１の回線２０から、図５に示す受信順でフレームを受信したとする。受信順番１のフレームは、ＴＯＳ値がＬＯ、ＩＰＤＡがＡというフレーム、受信順番２のフレームは、ＴＯＳ値がＨＩ、ＩＰＤＡがＢというフレーム、最後に受信順番３のフレームは、ＴＯＳ値がＭＤ、ＩＰＤＡがＣというフレームである。
【００２３】
受信順番１のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図２に示したように、フレーム情報であるＴｏＳ値＝ＬＯからインタフェース３を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。また、フロー検索部３３は、フレーム情報であるＩＰＤＡ＝Ａを検索ＫＥＹとして、ＨＡＳＨ関数などの計算を行い、例えば「２」という一意の値を得る。そして、得た値「２」を元にＦＩＢ部３２からＦＩＢを読み出す処理を実施する。
【００２４】
この時、アクセスする先は、内部ＱｏＳ情報生成部３０から通知されたインタフェース３の先にあるＦＩＢ＿Ｌ３２３となり、ＦＩＢ＿Ｌ３２３に登録されているＦＩＢを読み出す。図４（Ｃ）に示すように、ＦＩＢ＿Ｌ３２３には複数のＦＩＢが登録されており、その中から、フロー検索部３３において計算で得られた値「２」を元に、ＦＩＢ［２］対応のＦＩＢ（ＩＰＤＡ＝ＡのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図３に示したとおりｔ秒となる。このようにして得られたＦＩＢを用いて、受信フレームについてフォワーディング処理部３４は、フォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００２５】
次に、受信順番２のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図２に示したように、フレーム情報であるＴｏＳ値＝ＨＩからインタフェース１を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。また、フロー検索部３３は、フレーム情報であるＩＰＤＡ＝Ｂを検索ＫＥＹとして、ＨＡＳＨ関数などの計算を行い、例えば「２」という一意の値を得る。そして、得た値「２」を元にＦＩＢ部３２からＦＩＢを読み出す処理を実施する。
【００２６】
この時、アクセスする先は、内部ＱｏＳ生成部３０にて通知されたインタフェース１の先にあるＦＩＢ＿Ｈ３２１となり、ＦＩＢ＿Ｈ３２１に登録されているＦＩＢを読み出す。図４（Ａ）に示すように、ＦＩＢ＿Ｈ３２１には複数のＦＩＢが登録されており、その中から、フロー検索部３３において計算で得られた値「２」を元に、ＦＩＢ［２］対応のＦＩＢ（ＩＰＤＡ＝ＢのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図３に示したとおり（ｔ−２）秒となる。このようにして得られたＦＩＢを用いて、フォワーディング処理部３４は、受信フレームについてフォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００２７】
最後に受信順番３のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図２に示したように、フレーム情報であるＴｏＳ値＝ＭＤからインタフェース２を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。また、フロー検索部３３は、フレーム情報であるＩＰＤＡ＝Ｃを検索ＫＥＹとして、ＨＡＳＨなどの計算を行い、例えば「１」という一意の値を得る。そして、得た値「１」を元にＦＩＢ部３２からＦＩＢを読み出す処理を実施する。
【００２８】
この時、アクセスする先は、内部ＱｏＳ生成部３０にて通知されたインタフェース２の先にあるＦＩＢ＿Ｍ３２２となり、ＦＩＢ＿Ｍ３２２に登録されているＦＩＢを読み出す。図４（Ｂ）に示すように、ＦＩＢ＿Ｍ３２２には複数のＦＩＢが登録されており、その中から、フロー検索部３３において計算で得られた値「１」を元に、ＦＩＢ［１］対応のＦＩＢ（ＩＰＤＡ＝ＣのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図３に示したとおり（ｔ−１）秒となる。このようにして得られたＦＩＢを用いて、フォワーディング処理部３４は、受信フレームについてフォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００２９】
図６は、以上の処理における、ＩＰＤＡと、フロー検索部３３での計算結果と、ＦＩＢ．Ｎｏとの関係を一覧表示する。また、図７は、以上の処理における、受信順番１〜３のフレームを受信してからフォワーディング処理を終了するまでの時系列な関係をシーケンス図で示す。
【００３０】
図７において、横方向の矢印は、回線２０からのフレーム受信から、内部ＱｏＳ情報生成部３０→フロー検索部３３，ＳＥＬ部３１→ＦＩＢ部３２→フロー検索部３３→フォワーディング処理部→回線２０という、回線２０へのフレーム送信に到るまでの流れの順序を示している。内部ＱｏＳ情報生成部３０とフロー検索部３３は並行して処理を行う。
ｔｔ，（ｔｔ−２），（ｔｔ−１）は、それぞれ受信順番１，２，３のフレームの上記装置内処理時間を示している。図２に示したようにＴｏＳ値＝ＨＩの受信順番２のフレームは、受信順番１のフレームより２秒、ＴｏＳ値＝ＭＤの受信順番３のフレームは、受信順番１のフレームより１秒だけ速いことが分かる。
【００３１】
このように、ＦＩＢを取得する前にフレーム情報を先に確認し、フレーム毎にＦＩＢ部３２のアクセス先を違えて、アクセス速度の異なるメモリとすることで、フレームで指定された処理速度に相応した装置内遅延でデータを転送することができるようになる。
【実施例２】
【００３２】
図８は、本発明装置の実施例２のブロック図である。このデータ転送装置１１は、図１に示したデータ転送装置１０の基本的な構成を引き継ぐが、フロー検索部３３におけるＦＩＢの取得方法をＦＩＢ＿Ｈ３２１とＦＩＢ＿Ｍ３２２およびＦＩＢ＿Ｌ３２３とで違えている。即ち、フロー検索部３３は、ＦＩＢ＿Ｈ３２１を検索するための一意の値をＴＣＡＭ（Ternary Content Addressable Memory）に問い合わせることによって得るフロー検索部＿Ｈ３３１と、ＦＩＢ＿Ｍ３２２を検索するための一意の値をＨＡＳＨ計算によって得るフロー検索部＿Ｍ３３２と、ＦＩＢ＿Ｌ３２３を検索するための一意の値をＨＡＳＨ計算によって得るフロー検索部＿Ｌ３３３とから成る。
【００３３】
フロー検索部３３とＦＩＢ部３２は、図１におけるようにＳＥＬ部３１を経由することなく直結され、データパス１，２，３の何れかがＳＥＬ部３１によって選択される。そして、データパス１，２，３の先には、フロー検索部＿Ｈ３３１，フロー検索部＿Ｍ３３２，フロー検索部＿Ｌ３３３が接続されている。
【００３４】
このように、フレーム毎にＦＩＢ部３２のアクセス先を違えて、アクセス速度の異なるメモリとすると共に、更に、フロー検索部３３においてＦＩＢ部３２を検索するための一意の値を得る方法を、上記アクセス先へのインタフェース対応に異なるようにしたので、フレームで指定された処理速度に一層相応した装置内遅延でデータを転送することができるようになる。
【００３５】
ＳＥＬ部３１は、内部ＱｏＳ情報生成部３０からの内部ＱｏＳ情報によって、受信フレームをフロー検索部＿Ｈ３３１，フロー検索部＿Ｍ３３２，フロー検索部＿Ｌ３３３の内の何れかへ出力するためのデータパス１，２，３内の何れかを選択する。即ち、このデータ転送装置１１では、回線２０から受信フレームはＳＥＬ部３１へ入力し、ＳＥＬ部３１からデータパスを経てフロー検索部３３、そしてフォワーディング処理部３４を経由して回線２０へ送信フレームが出力される。
【００３６】
図９は、ＴｏＳ値のみを振分け情報とした場合に選択されるデータパスを例示する。図８と図９から、ＴｏＳ値ＨＩ，ＭＤ，ＬＯに対応して、高速度，中速度，低速度のフロー検索と、高速度，中速度，低速度のＦＩＢ部が選択されることが分かる。図１０は、各データパスのアクセス時間を示している。
【００３７】
次に、以上のように構成された実施例２の動作について図８〜図１１を用いて説明する。内部ＱｏＳ情報生成部３０には、図９に示したようなデータパスの選択をもたらすような振分け情報が予め登録されており、また、ＦＩＢ＿Ｈ３２１，ＦＩＢ＿Ｍ３２２，ＦＩＢ＿Ｌ３２３には、図４に示したような内容が予め登録されているものとする。
【００３８】
いま、回線番号１の回線２０から、図５に示す受信順でフレームを受信したとする。受信順番１のフレームは、ＴＯＳ値がＬＯ、ＩＰＤＡがＡというフレーム、受信順番２のフレームは、ＴＯＳ値がＨＩ、ＩＰＤＡがＢというフレーム、最後に受信順番３のフレームは、ＴＯＳ値がＭＤ、ＩＰＤＡがＣというフレームである。
【００３９】
受信順番１のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図９に示したように、フレーム情報であるＴｏＳ値＝ＬＯからデータパス３を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。ＳＥＬ部３１は、回線２０からの受信フレームをデータパス３経由でフロー検索部＿Ｌ３３３へ出力する。
【００４０】
また、フロー検索部＿Ｌ３３３は、フレーム情報であるＩＰＤＡ＝Ａを検索ＫＥＹとして、ＨＡＳＨ計算を行い、例えば「２」という一意の値を得る。そして、得た値「２」を元にＦＩＢ部＿Ｌ３２３からＦＩＢを読み出す。図４（Ｃ）に示したように、ＦＩＢ＿Ｌ３２３には複数のＦＩＢが登録されており、その中から、フロー検索部３３＿Ｌ３３３において計算で得られた値「２」を元に、ＦＩＢ［２］対応のＦＩＢ（ＩＰＤＡ＝ＡのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図１０に示したとおりｔ秒となる。このようにして得られたＦＩＢを用いて、フォワーディング処理部３４は、受信フレームについてフォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００４１】
次に、受信順番２のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図９に示したように、フレーム情報であるＴｏＳ値＝ＨＩからデータパス１を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。ＳＥＬ部３１は、回線２０からの受信フレームをデータパス１経由でフロー検索部＿Ｈ３３１へ出力する。
【００４２】
また、フロー検索部＿Ｈ３３１は、フレーム情報であるＩＰＤＡ＝Ｂを検索ＫＥＹとして、ＴＣＡＭに問い合わせ、例えば「２」という一意の値を得る。そして、得た値「２」を元にＦＩＢ部＿Ｈ３２１からＦＩＢを読み出す。図４（Ａ）に示したように、ＦＩＢ＿Ｈ３２１には複数のＦＩＢが登録されており、その中から、フロー検索部３３＿Ｈ３３１においてＴＣＡＭから得られた値「２」を元に、ＦＩＢ［２］対応のＦＩＢ（ＩＰＤＡ＝ＢのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図１０に示したとおり（ｔ−２）秒となる。このようにして得られたＦＩＢを用いて、フォワーディング処理部３４は、受信フレームについてフォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００４３】
最後に受信順番３のフレームを受信すると、内部ＱｏＳ情報生成部３０は、図９に示したように、フレーム情報であるＴｏＳ値＝ＭＤからデータパス２を選択するための内部ＱｏＳ情報を生成し、ＳＥＬ部３１に通知する。ＳＥＬ部３１は、回線２０からの受信フレームをデータパス１経由でフロー検索部＿Ｍ３３２へ出力する。
【００４４】
また、フロー検索部＿Ｍ３３２は、フレーム情報であるＩＰＤＡ＝Ｃを検索ＫＥＹとして、ＨＡＳＨ計算を行い、例えば「１」という一意の値を得る。そして、得た値「１」を元にＦＩＢ部＿Ｍ３２２からＦＩＢを読み出す。図４（Ｂ）に示したように、ＦＩＢ＿Ｍ３２２には複数のＦＩＢが登録されており、その中から、フロー検索部３３＿Ｍ３３２においてＨＡＳＨ計算ＤＥ得られた値「１」を元に、ＦＩＢ［１］対応のＦＩＢ（ＩＰＤＡ＝ＣのＦＩＢ）を得る。ＦＩＢを得る時のアクセス時間は、図１０に示したとおり（ｔ−１）秒となる。このようにして得られたＦＩＢを用いて、フォワーディング処理部３４は、受信フレームについてフォワーディング処理を実施し、送信フレームとして回線２０上に送信する。
【００４５】
図６は、以上の処理における、ＩＰＤＡと、フロー検索部３３での計算結果と、ＦＩＢ．Ｎｏとの関係を一覧表示する。また、図１１は、以上の処理における、受信順番１〜３のフレームを受信してからフォワーディング処理を終了するまでの時系列な関係をシーケンス図で示す。
【００４６】
図１１において、横方向の矢印は、回線２０からのフレーム受信から、内部ＱｏＳ情報生成部３０→ＳＥＬ部３１→フロー検索部３３→ＦＩＢ部３２→フロー検索部３３→フォワーディング処理部→回線２０という、回線２０へのフレーム送信に到るまでの流れの順序を示している。図７においては、内部ＱｏＳ情報生成部３０とフロー検索部３３は並行して処理を行うことを示していたが、ここでは、ＳＥＬ部３１を介して直列に処理を行うことが示されている。
【００４７】
なお、実施例１および実施例２においては、内部ＱｏＳ情報生成部３０は、内部ＱｏＳ情報を生成するのにＴｏＳ値のみを用いているが、ＣｏＳ（Class of Services），ＩＰアドレスなどのフレーム情報を組み合わせるようにしてもよい。ＣｏＳとは、ルータで優先制御を行うためのメカニズムであって、優先度は送信元のアプリケーションが指定する。
【００４８】
例えば、図１２は、回線番号，ＣｏＳの優先度，ＩＰアドレスおよびＴｏＳ値を使用した場合のインタフェース選択論理をフローチャート化して示す。ここでは、回線番号１かつＣｏＳ＝ＨＩの場合は内部ＱｏＳ情報１、回線番号１かつＣｏＳ＝ＬｏかつＩＰアドレス＝ＡかつＴｏＳ＝ＨＩの場合は内部ＱｏＳ情報２、１以外の回線番号、および回線番号１であってもＣｏＳ＝ＨＩでないかＩＰアドレス＝ＡでないかＴｏＳ＝ＨＩでない場合は内部ＱｏＳ情報３としている。
【符号の説明】
【００４９】
１０，１１  フレーム転送装置
２０        回線
３０        内部ＱｏＳ情報生成部
３１        ＳＥＬ部
３２        ＦＩＢ部
３３        フロー検索部
３４        フォワーディング処理部
３２１      ＦＩＢ＿Ｈ
３２２      ＦＩＢ＿Ｍ
３２３      ＦＩＢ＿Ｌ
３３１      フロー検索部＿Ｈ
３３２      フロー検索部＿Ｍ
３３３      フロー検索部＿Ｌ
【図１】
0005519257.tif 000002
【図２】
0005519257.tif 000003
【図３】
0005519257.tif 000004
【図４】
0005519257.tif 000005
【図５】
0005519257.tif 000006
【図６】
0005519257.tif 000007
【図７】
0005519257.tif 000008
【図８】
0005519257.tif 000009
【図９】
0005519257.tif 000010
【図１０】
0005519257.tif 000011
【図１１】
0005519257.tif 000012
【図１２】
0005519257.tif 000013