(57)【要約】【課題】ルート選択方法において、パケットのルート選択処理を高速化できルート情報の管理を簡略化できることを目的とする。【解決手段】受信したパケットのＦＣＳ検査を行い、前記ＦＣＳ検査でエラーがない場合に前記受信したパケットをバッファに書き込み、前記バッファへの前記受信したパケットの書き込み中に、前記受信したパケットに含まれる宛先情報から送出するルートを示すルート情報を得るルート検索を行い、前記バッファへの前記受信したパケットの書き込み中に、前記ルート検索で得たルート情報を前記バッファに書き込まれたパケットに付加し、前記バッファに格納されているパケットを前記パケットに付加されているルート情報から順に読み出す読み出し、前記バッファから読み出されたルート情報を基に前記バッファから読み出されたパケットの送出ルートを切り替えて出力する。【選択図】図２
2012120237.tif 000002
【特許請求の範囲】
【請求項１】
受信したパケットのＦＣＳ検査を行い、
前記ＦＣＳ検査でエラーがない場合に前記受信したパケットをバッファに書き込み、
前記バッファへの前記受信したパケットの書き込み中に、前記受信したパケットに含まれる宛先情報から送出するルートを示すルート情報を得るルート検索を行い、
前記バッファへの前記受信したパケットの書き込み中に、前記ルート検索で得たルート情報を前記バッファに書き込まれたパケットに付加し、
前記バッファに格納されているパケットを前記パケットに付加されているルート情報から順に読み出す読み出し、
前記バッファから読み出されたルート情報を基に前記バッファから読み出されたパケットの送出ルートを切り替えて出力する
ことを特徴とするルート選択方法。
【請求項２】
請求項１記載のルート選択方法において、
前記ＦＣＳ検査と前記ルート検索と前記パケットと前記ルート情報の前記バッファへの書き込みと読み出しは、パケットを受信するポート毎に行うことを特徴とするルート選択方法。
【請求項３】
請求項２記載のルート選択方法において、
前記ルートを切り替えて出力されたルート情報の付加されたパケットを前記バッファとは異なる別のバッファに格納し、
前記別のバッファに格納しているパケットを前記パケットに付加されているルート情報から順に読み出し、
前記ルートを切り替えて出力されたルート情報の付加されたパケットを供給され、供給されたパケットのルート情報を基に前記供給されたパケットの送出ルートを更に切り替えて出力する
ことを特徴とするルート選択方法。
【請求項４】
受信したパケットのＦＣＳ検査を行うＦＣＳ検査手段と、
前記ＦＣＳ検査でエラーがない場合に前記受信したパケットが書き込まれるバッファ手段と、
前記バッファ手段への前記受信したパケットの書き込み中に、前記受信したパケットに含まれる宛先情報から送出するルートを示すルート情報を得るルート検索手段と、
前記バッファ手段への前記受信したパケットの書き込み中に、前記ルート検索手段が得たルート情報を前記バッファ手段に書き込まれたパケットに付加する書き込み制御手段と、
前記バッファ手段に格納されているパケットを前記パケットに付加されているルート情報から順に読み出す読み出し制御手段と、
前記バッファ手段から読み出された前記ルート情報を基に前記バッファ手段から読み出されたパケットの送出ルートを切り替えて出力するスイッチ手段と
を有することを特徴とするルータ装置。
【請求項５】
請求項４記載のルータ装置において、
前記ＦＣＳ検査手段とバッファ手段と前記ルート検索手段と書き込み制御手段と読み出し制御手段は、パケットを受信するポート毎に設けられることを特徴とするルータ装置。
【請求項６】
請求項５記載のルータ装置において、
前記スイッチ手段から出力されたルート情報の付加されたパケットを格納し、格納しているパケットを前記パケットに付加されているルート情報から順に読み出す前記バッファ手段とは異なる別のバッファ手段と、
前記スイッチ手段から出力されるルート情報の付加されたパケットを供給され、供給されたパケットのルート情報を基に前記供給されたパケットの送出ルートを更に切り替えて出力する前記スイッチ手段とは異なる別のスイッチ手段と
を有することを特徴とするルータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信したパケットに含まれる宛先情報に基づいて送出ルートを切り替えるルート選択方法及びルータ装置に関する。
【背景技術】
【０００２】
従来より、例えばローカルエリアネットワーク（ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）と、広域ネットワーク（ＷＡＮ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  ）とを接続し、クライアント／サーバ・モデルのコンピュータ間等のインターネット通信、又はイントラネット通信等のデータ通信を可能にするルータ装置がある。
【０００３】
図１は、従来のルータ装置の一例のブロック図を示す。同図中、受信ポート１０から受信したパケットはパケットバッファ１２，書き込み制御部１４，ＦＣＳ検査部１６に供給される。
【０００４】
書き込み制御部１４は、書き込みアドレスを含む書き込み制御信号をパケットバッファ１２に供給して受信パケットをパケットバッファ１２に書き込む。ＦＣＳ検査部１６は、受信パケットのＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）チェックを行い、受信パケットにエラーの有無を確認する。ここで、エラーがある場合はパケットを廃棄し、エラーがない場合は容量監視部１８で監視しているパケットバッファ１２の蓄積パケット数をインクリメントする。
【０００５】
なお、パケットバッファ１２には、パケットの先頭を示すＳＯＰ（Ｓｔａｒｔ  Ｏｆ  Ｐａｃｋｅｔ）とパケットの終了を示すＥＯＰ（Ｅｎｄ  Ｏｆ  Ｐａｃｋｅｔ）が並走情報としてパケットデータと共に書き込まれ、パケットデータと共に読み出される。
【０００６】
容量監視部１８は、パケットバッファ１２の蓄積パケット数を読み出し制御部２０に通知する。読み出し制御部２０は、パケットバッファ１２の蓄積パケット数が正であれば読み出しアドレスを含む読み出し制御信号をパケットバッファ１２に供給してパケットバッファ１２からパケットを読み出す。
【０００７】
パケットバッファ１２から並走情報ＳＯＰ，ＥＯＰと共に読み出されたパケットはＥＯＰ抽出部２２，ＤＡ抽出部２４，位相調整部２８に供給される。ＥＯＰ抽出部２２は、パケットの終了を示すＥＯＰを抽出すると読み出し制御部２０に通知する。
【０００８】
ＤＡ抽出部２４は、パケットのＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ：宛先アドレス）を抽出してルート検索部２６に供給する。ルート検索部２６は、ＤＡにより内蔵するルート検索テーブルを検索して、得られたルート情報をスイッチ３０に供給する。
【０００９】
位相調整部２８は、パケットをルート検索に要する時間だけ遅延して位相調整を行いスイッチ３０に供給する。スイッチ３０はルート情報に応じて送信ポート３２ａ〜３２ｄのいずれかを送出先として決定し、決定した送信ポートからパケットを送出する。
【００１０】
なお、特許文献１には、転送エンジンで受信パケットをパケットバッファに記憶し、また、ヘッダ情報をヘッダＲＡＭに記憶し、検索エンジンでヘッダ情報から転送制御情報を検索してヘッダＲＡＭに書き込み、転送エンジンにてパケットバッファ及びヘッダＲＡＭの情報に基づいて出力パケットを生成し転送先に出力することが記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０００−２４４５７０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
図１に示す従来方法では、パケットバッファ１２への書き込みを行った後に、宛先情報であるＤＡをパケットバッファ１２から読み出してルート検索部２６でルート情報を検索しているために、パケットをパケットバッファ１２から読み出した後ルート検索にかかる時間分だけ、パケットの送出が遅れてしまうという問題があった。
【００１３】
本発明は、上記の点に鑑みなされたものであり、パケットのルート選択処理を高速化できルート情報の管理を簡略化できるルート選択方法及びルータ装置を提供することを総括的な目的とする。
【課題を解決するための手段】
【００１４】
この目的を達成するため、本発明のルート選択方法は、受信したパケットのＦＣＳ検査を行い、前記ＦＣＳ検査でエラーがない場合に前記受信したパケットをバッファに書き込み、前記バッファへの前記受信したパケットの書き込み中に、前記受信したパケットに含まれる宛先情報から送出するルートを示すルート情報を得るルート検索を行い、前記バッファへの前記受信したパケットの書き込み中に、前記ルート検索で得たルート情報を前記バッファに書き込まれたパケットに付加し、前記バッファに格納されているパケットを前記パケットに付加されているルート情報から順に読み出す読み出し、前記バッファから読み出されたルート情報を基に前記バッファから読み出されたパケットの送出ルートを切り替えて出力する。
【発明の効果】
【００１５】
このようなルート選択方法によれば、パケットのルート選択処理を高速化できルート情報の管理を簡略化することができる。
【図面の簡単な説明】
【００１６】
【図１】従来のルータ装置の一例のブロック図である。
【図２】本発明のルート選択方法を用いたパケットバッファ及びルート検索部の一実施形態のブロック図である。
【図３】入力パケット及びパケットバッファに蓄積されるパケットのフォーマットを示す図である。
【図４】パケットバッファにおけるパケットと並走情報の格納イメージを示す図である。
【図５】パケットバッファへのパケット書き込み処理のフローチャートである。
【図６】１対多スイッチ構成のルータ装置の一実施形態のブロック図である。
【図７】多対多スイッチ構成のルータ装置の一実施形態のブロック図である。
【図８】多段スイッチ構成のルータ装置の一実施形態のブロック図である。
【発明を実施するための形態】
【００１７】
以下、図面に基づいて本発明の実施形態について説明する。
【００１８】
＜パケットバッファ及びルート検索部＞
図２は、本発明のルート選択方法を用いたパケットバッファ及びルート検索部の一実施形態のブロック図を示す。同図中、端子４０からの入力パケットはＤＡ抽出部４２，セレクタ４６，書き込み制御部４８，ＦＣＳ検査部５０に供給される。
【００１９】
ＤＡ抽出部４２は、パケットのＤＡ（宛先アドレス）を抽出してルート検索部４４に供給する。ルート検索部４４は、ＤＡにより内蔵するルート検索テーブルを検索して、得られたルート情報（例えば送信ポートの物理ポート番号）をセレクタ４６に供給する。
【００２０】
書き込み制御部４８は、図示しないパケット検出部から端子４０へのパケットの先頭を示すＳＯＰとパケットの終了を示すＥＯＰを供給されており、書き込み制御部４８はＳＯＰとＥＯＰから選択信号を生成してセレクタ４６に供給する。
【００２１】
これにより、セレクタ４６は端子４０からのパケット入力期間に入力パケットを選択し、パケット入力後にルート検索部４４からのルート情報を選択してパケットバッファ５２に供給する。
【００２２】
また、書き込み制御部４８は、書き込みアドレスを含む書き込み制御信号をパケットバッファ５２に供給して、セレクタ４６から供給される受信パケット及びルート情報をパケットバッファ５２に書き込む。
【００２３】
なお、パケットバッファ５２には、パケットの先頭を示すＳＯＰとパケットの終了を示すＥＯＰが並走情報としてパケットデータと共に書き込まれ、パケットデータと共に読み出される。
【００２４】
図３（Ａ）に端子４０に供給される入力パケットのフォーマットを示す。入力パケットは、６バイトのＤＡ（宛先アドレス）と、６バイトのＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ：送信元アドレス）、２バイトのＴｙｐｅ（タイプ解釈）、４６バイト以上（１５００バイト以下）のデータ、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）を有している。
【００２５】
図３（Ｂ）にパケットバッファ５２に蓄積されるパケットのフォーマットを示す。パケットバッファ５２においては、図３（Ａ）に示すフォーマットのパケットに、ルート情報を格納する１バイトのＩＦ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｈｅａｄｅｒ）が付加されている。
【００２６】
図４にパケットバッファ５２におけるパケットと並走情報ＳＯＰ，ＥＯＰの格納イメージを示す。先ず、ＩＦを空けた状態で入力パケットのＤＡ，ＳＡ，Ｔｙｐｅ，データ，ＦＣＳがパケットバッファ５２に書き込まれ、その後、ＩＦにルート情報が書き込まれる。読み出し時には、ＩＦ，ＤＡ，ＳＡ，Ｔｙｐｅ，データ，ＦＣＳの順にパケットが読み出される。
【００２７】
ＦＣＳ検査部５０は、受信パケットのＦＣＳチェックを行い、受信パケットにエラーの有無を確認する。ここで、エラーがある場合はパケットを廃棄し、エラーがない場合は容量監視部５４で監視しているパケットバッファ５２の蓄積パケット数をインクリメントする。
【００２８】
容量監視部５４は、パケットバッファ５２の蓄積パケット数を読み出し制御部５６に通知する。また、容量監視部５４は読み出し制御部５６より読み出し完了通知を受けるとパケットバッファ５２の蓄積パケット数をデクリメントする。
【００２９】
読み出し制御部５６は、後続のスイッチから端子５８を介して読み出し要求を受けると、パケットバッファ５２の蓄積パケット数が正であれば読み出しアドレスを含む読み出し制御信号をパケットバッファ５２に供給してパケットバッファ５２からパケットの読み出しを行う。
【００３０】
パケットバッファ５２から並走情報ＳＯＰ，ＥＯＰと共に読み出されたルート情報を含むパケットはＥＯＰ抽出部６０に供給されると共に、端子６２から出力される。ＥＯＰ抽出部６０は、パケットの終了を示すＥＯＰを抽出すると読み出し制御部５６に通知する。
【００３１】
＜パケット書き込み処理のフローチャート＞
図５は、書き込み制御部４８によるパケットバッファ５２へのパケット書き込み処理のフローチャートを示す。同図中、ステップＳ１で書き込み制御部４８は図示しないパケット検出部から供給されるＳＯＰからパケットを受信したか否かを判別し、パケットを受信した場合にはステップＳ２でパケットの先頭か否かを判別する。
【００３２】
パケットの先頭の場合はステップＳ３で、書き込みアドレスＷＡＤＲをパケット先頭アドレスＳＴＡＲＴ＿ＷＡＤＲとして記憶する。このステップはパケットを廃棄したときの書き戻しと、ルート情報を書き込むためにある。次に、ステップＳ４で書き込みアドレスＷＡＤＲを１だけインクリメントして更新する。
【００３３】
ステップＳ４の実行後、又はパケットの先頭ではない場合はステップＳ５に進んで、パケットバッファ５２の書き込みアドレスＷＡＤＲに受信データを書き込んだのち、ステップＳ６で書き込みアドレスＷＡＤＲを１だけインクリメントして更新する。なお、本実施形態では、受信プログラムをワード単位でパケットバッファ５２の書き込みアドレスＷＡＤＲに書き込むものとする。
【００３４】
次に、ステップＳ７で図示しないパケット検出部から供給されるＥＯＰからパケットの末尾であるか否かを判別し、パケットの末尾ではない場合はステップＳ１に進む。
【００３５】
パケットの末尾の場合はステップＳ８でＦＣＳ検査部５０からのＦＣＳチェック結果がＯＫか否かを判別する。ＦＣＳチェック結果がＯＫの場合にはステップＳ９で書き込みアドレスＷＡＤＲにルート情報（ＩＦ）を書き込んでステップＳ１に進む。
【００３６】
一方、ＦＣＳチェック結果がＮＧの場合には、パケット先頭アドレスＳＴＡＲＴ＿ＷＡＤＲを書き込みアドレスＷＡＤＲに戻して受信パケットを廃棄してステップＳ１に進む。
【００３７】
＜１対多スイッチ構成＞
図６は、１対多スイッチ構成のルータ装置の一実施形態のブロック図を示す。同図中、受信ポート７１から受信したパケットは図２の構成を持つパケットバッファ及びルート検索部７２に供給される。
【００３８】
パケットバッファ及びルート検索部７２ではパケットバッファ５２への書き込み中に、ＤＡ（宛先アドレス）を抽出し、ルート検索部４４にて送信ポートを判定する。ルート検索部４４から取得したルート情報は、パケットバッファ５２へのパケット蓄積完了後にパケットデータの先頭に蓄積する。
【００３９】
スイッチ７３から読み出し要求信号を供給されたパケットバッファ及びルート検索部７２のパケットバッファ５２の読み出し時には、先頭のＩＦのルート情報から順にパケットデータを読み出してスイッチ７３に供給する。これにより、スイッチ７３において即座にルート切り替えが可能となる。また、ルート情報をパケットバッファ５２ではルート情報をパケットの先頭のＩＦに格納することからルート情報の管理を簡略化することができる。
【００４０】
スイッチ７３では上記のルート情報に基づいて送信ポート７４ａ〜７４ｄのいずれか１つを選択し、選択した送信ポートにパケットを送出する。なお、スイッチ７３は送信ポートから送出する際にパケットの先頭に付加されたルート情報を廃棄する。
【００４１】
＜多対多スイッチ構成＞
図７は、多対多スイッチ構成のルータ装置の一実施形態のブロック図を示す。同図中、受信ポート７１ａ〜７１ｄから受信したパケットはそれぞれ図２の構成を持つパケットバッファ及びルート検索部７２ａ〜７２ｄに供給される。
【００４２】
各パケットバッファ及びルート検索部７２ａ〜７２ｄではパケットバッファ５２への書き込み中に、ＤＡ（宛先アドレス）を抽出し、ルート検索部４４にて送信ポートを判定する。ルート検索部４４から取得したルート情報は、パケットバッファ５２へのパケット蓄積完了後にパケットデータの先頭に蓄積する。
【００４３】
各パケットバッファ及びルート検索部７２ａ〜７２ｄそれぞれでは、パケットバッファ５２から先頭のＩＦのルート情報を先読みして予めスイッチ７５に通知しておく。スイッチ７５では、送信ポート７４ａ〜７４ｄの使用状況から未使用の送信ポートを１つを選択し、選択した送信ポートにパケットを送出するパケットバッファ及びルート検索部（７２ａ〜７２ｄのいずれか）に対して読み出し要求を発行する。
【００４４】
これにより、読み出し要求信号が供給されたパケットバッファ及びルート検索部（７２ａ〜７２ｄのいずれか）のパケットバッファ５２からパケットデータが読み出され、スイッチ７５で既に選択されている送信ポート（７４ａ〜７４ｄのいずれか）に導かれて送出される。なお、スイッチ７５は送信ポートから送出する際にパケットの先頭に付加されたルート情報を廃棄する。
【００４５】
＜多段スイッチ構成＞
図８は、多段スイッチ構成のルータ装置の一実施形態のブロック図を示す。同図中、受信ポート７１ａ〜７１ｄから受信したパケットはそれぞれ図２の構成を持つパケットバッファ及びルート検索部７２ａ〜７２ｄに供給される。
【００４６】
各パケットバッファ及びルート検索部７２ａ〜７２ｄではパケットバッファ５２への書き込み中に、ＤＡ（宛先アドレス）を抽出し、ルート検索部４４にて送信ポートを判定する。ルート検索部４４から取得したルート情報は、パケットバッファ５２へのパケット蓄積完了後にパケットデータの先頭に蓄積する。
【００４７】
スイッチ７６から読み出し要求信号を供給されたパケットバッファ及びルート検索部７２ａ，７２ｂそれぞれは、先頭のＩＦのルート情報から順にパケットデータを読み出してスイッチ７６に供給する。これにより、スイッチ７６は即座にルート切り替えが可能となる。スイッチ７６では上記のルート情報に基づいてパケットバッファ部７７ａ，７７ｂのいずれかを選択し、選択したパケットバッファ部にパケットバッファ及びルート検索部７２ａ，７２ｂから読み出されたパケットを供給する。
【００４８】
パケットバッファ部７７ａ，７７ｂは、図２の構成からＤＡ抽出部４２，ルート検索部４４，セレクタ４６を削除した構成である。パケットバッファ部７７ａ，７７ｂはスイッチ７６から供給される、先頭のＩＦにルート情報が付加されたパケットを蓄積する。
【００４９】
パケットバッファ及びルート検索部７２ｃ，パケットバッファ部７７ａそれぞれでは、パケットバッファ５２から先頭のＩＦのルート情報を先読みして予めスイッチ７８ａに通知しておく。
【００５０】
スイッチ７８ａでは、送信ポート７４ａ，７４ｂの使用状況から未使用の送信ポートを１つを選択し、選択した送信ポートにパケットを送出するパケットバッファ及びルート検索部７２ｃ又はパケットバッファ部７７ａに対して読み出し要求を発行する。
【００５１】
これにより、読み出し要求信号が供給されたパケットバッファ及びルート検索部７２ｃ又はパケットバッファ部７７ａのパケットバッファ５２からパケットデータが読み出され、スイッチ７８ａで既に選択されている送信ポート（７２ｃ，７７ａのいずれか）に導かれて送出される。なお、スイッチ７８ａは送信ポートから送出する際にパケットの先頭に付加されたルート情報を廃棄する。
【００５２】
一方、パケットバッファ及びルート検索部７２ｄ又はパケットバッファ部７７ｂそれぞれでは、パケットバッファ５２から先頭のＩＦのルート情報を先読みして予めスイッチ７８ｂに通知しておく。
【００５３】
スイッチ７８ｂでは、送信ポート７４ｃ，７４ｄの使用状況から未使用の送信ポートを１つを選択し、選択した送信ポートにパケットを送出するパケットバッファ及びルート検索部７２ｄ又はパケットバッファ部７７ｂに対して読み出し要求を発行する。
【００５４】
これにより、読み出し要求信号が供給されたパケットバッファ及びルート検索部７２ｄ又はパケットバッファ部７７ｂのパケットバッファ５２からパケットデータが読み出され、スイッチ７８ｂで既に選択されている送信ポート（７４ｃ，７４ｄのいずれか）に導かれて送出される。なお、スイッチ７８ｂは送信ポートから送出する際にパケットの先頭に付加されたルート情報を廃棄する。
【００５５】
この実施形態では、１段目のパケットバッファ及びルート検索部７２ａ〜７２ｄにパケットが蓄積される際に、パケットにルート情報が付加されているため、後段の待ち合わせ用のパケットバッファ部７７ａ，７７ｂでは、ルート検索処理が不要となり、更にルート選択制御の高速化を行うことができ、また、ルート情報の管理を簡略化することができる。
【００５６】
なお、図８において、パケットバッファ及びルート検索部７２ｃ，７２ｄの出力するパケットをスイッチを通してパケットバッファ７７ａ，７７ｂと同様なパケットバッファに格納したのちスイッチ７８ａ，７８ｂに供給するようにしても良く、上記実施形態に限定されるものではない。
【００５７】
なお、上記実施形態では、ルート検索手段の一例としてルート検索部４４を用い、バッファ手段の一例としてパケットバッファ５２を用い、スイッチ手段の一例としてスイッチ５２を用い、別のバッファ手段の一例としてパケットバッファ７７ａ，７７ｂを用い、別のスイッチ手段の一例としてスイッチ７８ａ，７８ｂを用いている。
【符号の説明】
【００５８】
４２  ＤＡ抽出部
４６  セレクタ
４４  ルート検索部
４６  セレクタ
４８  書き込み制御部
５０  ＦＣＳ検査部
５２  パケットバッファ
５４  容量監視部
５６  読み出し制御部
６０  ＥＯＰ抽出部
７２，７２ａ〜７２ｄ，７７ａ，７７ｂ  パケットバッファ及びルート検索部
７３，７５，７８ａ，７８ｂ  スイッチ
【図１】
2012120237.tif 000003
【図２】
2012120237.tif 000004
【図３】
2012120237.tif 000005
【図４】
2012120237.tif 000006
【図５】
2012120237.tif 000007
【図６】
2012120237.tif 000008
【図７】
2012120237.tif 000009
【図８】
2012120237.tif 000010