(57)【特許請求の範囲】
【請求項１】
パケットを受信すると、受信した当該パケットに対して自装置内の第１のパケット処理装置による所定のパケット処理を実行するか否かを判定するパケット処理判定部と、
前記パケット処理判定部によってパケット処理を実行すると判定されたパケットの転送速度が前記第１のパケット処理装置による処理速度を超過した場合に、前記パケット処理と同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置であって、自パケット通信装置の属するネットワークにおいて自パケット通信装置よりも前記ネットワークのコア側に位置する他のパケット通信装置を探索する探索部と、
前記探索部によって探索された他のパケット通信装置に前記パケットを転送する転送部と
を備えたことを特徴とするパケット通信装置。
【請求項２】
前記探索部は、前記判定部によってパケット処理を実行すると判定されたパケットの転送速度が自装置内の前記第１のパケット処理装置による処理速度と前記探索された他のパケット通信装置内の前記第２のパケット処理装置による処理速度との合計を超過した場合に、超過分のパケットを廃棄することを特徴とする請求項１に記載のパケット通信装置。
【請求項３】
前記転送部は、前記探索部によって探索された他のパケット通信装置が複数存在する場合には、前記他のパケット通信装置各々に搭載されるパケット処理装置による処理速度の比率に応じて前記パケットを転送することを特徴とする請求項１又は２に記載のパケット通信装置。
【請求項４】
パケット通信装置が、
入力されるパケットに対して自装置内の第１のパケット処理装置による所定のパケット処理を実行するか否かを判定する判定ステップと、
前記判定ステップによってパケット処理を実行すると判定されたパケットの転送速度が前記パケット処理装置による処理速度を超過した場合に、前記パケット処理と同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置であって、自パケット通信装置の属するネットワークにおいて自パケット通信装置よりも前記ネットワークのコア側に位置する他のパケット通信装置を探索する探索ステップと、
前記探索ステップによって探索された他のパケット通信装置に前記パケットを転送する転送ステップと
を含んだことを特徴とするパケット転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信装置及びパケット転送方法に関する。
【背景技術】
【０００２】
従来、ネットワーク内でパケットを転送するルータ等のパケット通信装置が用いられている。このようなパケット通信装置では、近年の高機能化の要求に伴い、パケットを他の装置へ転送する通常のルーティング機能を実行する他に、パケットに対して圧縮／解凍や暗号化／復号化等のパケット処理を行うものが主流となっている。【０００３】
図９は、従来のパケット通信装置を説明するための図である。同図に示すように、従来のパケット通信装置１０は、パケット処理判定部１１と、パケット処理装置１２とを有する。【０００４】
パケット処理判定部１１は、例えばＮＷＰ（Network  Processor）であり、パケットを受信すると、受信したパケットに対して自装置内のパケット処理装置１２による圧縮／解凍や暗号化／復号化等のパケット処理を実行するか否かを判定する。例えば、パケット処理判定部１１は、受信したパケットのヘッダ情報を解析し、パケット処理が未だ実効されていないことを示す制御情報が含まれる場合に、受信したパケットに対してパケット処理装置１２によるパケット処理を実行すると判定する。【０００５】
パケット処理判定部１１は、パケット処理装置１２によるパケット処理を実行しないと判定した場合には、通常のルーティング機能を実行することにより、受信したパケットを他のパケット通信装置へ転送する。一方、パケット処理判定部１１は、パケット処理装置１２によるパケット処理を実行すると判定した場合には、受信したパケットをパケット処理装置１２に出力する。【０００６】
パケット処理装置１２は、例えばＨＷＡ（Hardware  Accelerator）であり、パケット処理判定部１１から入力されるパケットに対してパケット処理を実施し、パケット処理を実施したパケットをパケット処理判定部１１へ返送する。なお、パケット処理装置１２は、パケット処理を実施したパケットのヘッダ情報にパケット処理が実施済みである旨を示す制御情報を付加する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０００−８３０４５号公報
【特許文献２】特開２００８−２２６０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記した従来のパケット通信装置では、ネットワークを構築する場合に、一部のパケット通信装置に負荷が集中し、輻輳が発生する恐れがあるという問題がある。【０００９】
例えば、コア側のパケット通信装置の下にエッジ側のパケット通信装置を接続したネットワークを構築したとする。この場合、コア側のパケット通信装置は、通常のルーティング機能を実行することにより、受信したパケットを他のパケット通信装置へ転送する。一方、エッジ側のパケット通信装置は、受信したパケットを他のパケット通信装置へ転送するだけでなく、自身に搭載したパケット処理装置によるパケット処理の実行を行う。このため、コア側のパケット通信装置よりもエッジ側のパケット通信装置に負荷が集中する。その結果、エッジ側のパケット通信装置では、パケット処理を実行すると判定されたパケットの転送速度がパケット処理装置による処理速度を超過した場合に、回線の輻輳が発生する。【００１０】
開示の技術は、上記に鑑みてなされたものであって、ネットワークにおける輻輳の発生を回避することができるパケット通信装置及びパケット転送方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本願に開示するパケット通信装置は、一つの態様において、パケットを受信すると、受信した当該パケットに対して自装置内の第１のパケット処理装置による所定のパケット処理を実行するか否かを判定するパケット処理判定部と、前記パケット処理判定部によってパケット処理を実行すると判定されたパケットの転送速度が前記第１のパケット処理装置による処理速度を超過した場合に、前記パケット処理と同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する探索部と、前記探索部によって探索された他のパケット通信装置に前記パケットを転送する転送部とを備えた。
【発明の効果】
【００１２】
開示のパケット通信装置によれば、ネットワークにおける輻輳の発生を回避することができるという効果を奏する。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例１に係るパケット通信装置の構成を示す図である。
【図２】図２は、実施例２に係るパケット通信装置によるパケット転送方法の一例を説明するための図である。
【図３】図３は、実施例２に係るパケット通信装置によるパケット転送方法の他の例を説明するための図である。
【図４】図４は、実施例２に係るパケット通信装置の構成を示すブロック図である。
【図５】図５は、図４に示したＶＳＷ部の構成を示すブロック図である。
【図６】図６は、ＨＷＡ情報記憶部の一例を示す図である。
【図７】図７は、実施例２に係るパケット通信装置による処理手順を示すフローチャートである。
【図８】図８は、装置内に複数のＨＷＡ部が搭載されたパケット通信装置の構成例を示す図である。
【図９】図９は、従来のパケット通信装置を説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示するパケット通信装置及びパケット転送方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示するパケット通信装置及びパケット転送方法が限定されるものではない。
【実施例１】
【００１５】
まず、図１を用いて、実施例１に係るパケット通信装置の構成を説明する。図１は、実施例１に係るパケット通信装置１００の構成を示す図である。同図に示すように、実施例１に係るパケット通信装置１００は、パケット処理判定部１０１と、第１のパケット処理装置１０２と、探索部１０３と、転送部１０４とを有する。【００１６】
パケット処理判定部１０１は、パケットを受信すると、受信したパケットに対して自装置内の第１のパケット処理装置１０２による所定のパケット処理を実行するか否かを判定する。例えば、パケット処理判定部１０１は、受信したパケットのヘッダ情報を解析し、パケット処理が未だ実行されていないことを示す制御情報が含まれる場合に、受信したパケットに対して第１のパケット処理装置１０２によるパケット処理を実行すると判定する。【００１７】
パケット処理判定部１０１は、第１のパケット処理装置１０２によるパケット処理を実行しないと判定した場合には、通常のルーティング機能を実行することにより、受信したパケットを他のパケット通信装置へ転送する。一方、パケット処理判定部１０１は、第１のパケット処理装置１０２によるパケット処理を実行すると判定した場合には、受信したパケットを第１のパケット処理装置１０２に出力する。【００１８】
第１のパケット処理装置１０２は、パケット処理判定部１０１から入力されるパケットに対してパケット処理を実施し、パケット処理を実施したパケットをパケット処理判定部１０１へ返送する。なお、パケット処理には、圧縮／解凍、暗号化／復号化、チェックサムチェック／チェックサムジェネレータ、高レイヤフロー識別、フロー単位ＱｏＳ（Quality  of  Service）制御、ウイルススキャン及びコンテンツフィルタリング等の各種の処理が含まれる。また、第１のパケット処理装置１０２は、パケット処理を実施したパケットのヘッダ情報にパケット処理が実行済みである旨を示す制御情報を付加する。【００１９】
探索部１０３は、第１のパケット処理装置１０２へ入力されるパケットの転送速度が第１のパケット処理装置１０２による処理速度を超過した場合に、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する。転送部１０４は、探索部１０３によって探索された他のパケット通信装置に第１のパケット処理装置１０２へ入力されるパケットを転送する。【００２０】
上述したように、実施例１に係るパケット通信装置１００は、パケットの転送速度が第１のパケット処理装置１０２による処理速度を超過した場合に、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する。そして、パケット通信装置１００は、探索した他のパケット通信装置に第１のパケット処理装置１０２へ入力されるパケットを転送する。このため、パケット通信装置１００は、自身に搭載された第１のパケット処理装置１０２にかかる処理負荷をネットワーク内の他のパケット通信装置に分散することができる。その結果、パケット通信装置１００は、ネットワーク内のエッジ側のパケット通信装置として用いられる場合であっても、自身に負荷が集中することを防止することができ、ネットワークにおける輻輳の発生を回避することができる。
【実施例２】
【００２１】
次に、実施例２に係るパケット通信装置を説明する。ここでは、実施例２に係るパケット通信装置によるパケット転送方法について説明した後、実施例２に係るパケット通信装置の構成及び実施例２に係るパケット通信装置による処理手順について説明する。【００２２】
まず、図２及び図３を用いて、実施例２に係るパケット通信装置によるパケット転送方法について説明する。図２は、実施例２に係るパケット通信装置によるパケット転送方法の一例を説明するための図である。なお、図２に示すネットワークでは、コア側のパケット通信装置２００ａ、２００ｂに搭載されたパケット処理装置と、エッジ側のパケット通信装置２００ｃに搭載されたパケット処理装置とが同一のパケット処理を実行するものとする。また、エッジ側のパケット通信装置２００ｃが、本実施例に係るパケット転送方法を行うパケット通信装置であるものとする。【００２３】
図２に示すように、パケット通信装置２００ｃは、所定の入力ポートからパケットを受信すると、受信したパケットに対して自装置内の第１のパケット処理装置によるパケット処理を実行するか否かを判定する。ここでは、パケット通信装置２００ｃは、第１のパケット処理装置によるパケット処理を実行すると判定したものとする。【００２４】
続いて、パケット通信装置２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度を超過したか否かを判定する。例えば、第１のパケット処理装置による処理速度が２００Ｍｂｐｓであるとすると、パケット通信装置２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が２００Ｍｂｐｓを超過したか否かを判定する。【００２５】
そして、パケット通信装置２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度以下である場合には、第１のパケット処理装置によるパケット処理を実行する。【００２６】
一方、パケット通信装置２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度を超過した場合には、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する。図３の例では、パケット通信装置２００ｃは、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置２００ａ、２００ｂを探索する。【００２７】
このとき、パケット通信装置２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度と他のパケット通信装置内の第２のパケット処理装置による処理速度との合計を超過したか否かを判定する。図３の例では、パケット通信装置２００ａ、２００ｂ、２００ｃ内のパケット処理装置による処理速度がともに２００Ｍｂｐｓであるとすると、パケット通信装置２００ｃは、パケットの転送速度が２００＋２００＋２００Ｍｂｐｓを超過したか否かを判定する。【００２８】
そして、パケット通信装置２００ｃは、パケットの転送速度が第１及び第２のパケット処理装置による処理速度の合計以下である場合には、第２のパケット処理装置を搭載した他のパケット通信装置にパケットを転送する。図３の例では、パケット通信装置２００ｃは、第２のパケット処理装置を搭載したパケット通信装置２００ａ、２００ｂにパケットを転送する。【００２９】
このとき、パケット通信装置２００ｃは、探索された他のパケット通信装置が複数存在する場合には、他のパケット通信装置各々に搭載されるパケット処理装置による処理速度の比率に応じてパケットを転送する。図３の例では、パケット通信装置２００ａ、２００ｂ内のパケット処理装置による処理速度がそれぞれ１００Ｍｂｐｓ、２００Ｍｂｐｓであるとすると、パケット通信装置２００ｃは、パケット通信装置２００ａ、２００ｂに１：２の比率でパケットを転送する。【００３０】
一方、パケット通信装置２００ｃは、パケットの転送速度が第１及び第２のパケット処理装置による処理速度の合計を超過した場合には、超過分のパケットを廃棄する。【００３１】
図３は、実施例２に係るパケット通信装置によるパケット転送方法の他の例を説明するための図である。なお、図３に示すネットワークでは、コア側のパケット通信装置２００ａに搭載されたパケット処理装置と、エッジ側のパケット通信装置２００ｂ、２００ｃに搭載されたパケット処理装置とが同一のパケット処理を実行するものとする。また、エッジ側のパケット通信装置２００ｂ、２００ｃが、本実施例に係るパケット転送方法を行うパケット通信装置であるものとする。【００３２】
図３に示すように、パケット通信装置２００ｂ、２００ｃは、所定の入力ポートからパケットを受信すると、受信したパケットに対して自装置内の第１のパケット処理装置によるパケット処理を実行するか否かを判定する。ここでは、パケット通信装置２００ｂ、２００ｃは、第１のパケット処理装置によるパケット処理を実行すると判定したものとする。【００３３】
続いて、パケット通信装置２００ｂ、２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度を超過したか否かを判定する。例えば、第１のパケット処理装置による処理速度がともに２００Ｍｂｐｓであるとすると、パケット通信装置２００ｂ、２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が２００Ｍｂｐｓを超過したか否かを判定する。【００３４】
そして、パケット通信装置２００ｂ、２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度以下である場合には、第１のパケット処理装置によるパケット処理をそれぞれ実行する。【００３５】
一方、パケット通信装置２００ｂ、２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度を超過した場合、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する。図３の例では、パケット通信装置２００ｂ、２００ｃは、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置２００ａをそれぞれ探索する。【００３６】
このとき、パケット通信装置２００ｂ、２００ｃは、パケット処理を実行すると判定されたパケットの転送速度が第１のパケット処理装置による処理速度と他のパケット通信装置内の第２のパケット処理装置による処理速度との合計を超過したか否かを判定する。図３の例では、パケット通信装置２００ａ、２００ｂ、２００ｃ内のパケット処理装置による処理速度がともに２００Ｍｂｐｓであるとすると、パケット通信装置２００ｂ、２００ｃは、パケットの転送速度が２００＋２００Ｍｂｐｓを超過したか否かを判定する。【００３７】
そして、パケット通信装置２００ｂ、２００ｃは、パケットの転送速度が第１及び第２のパケット処理装置による処理速度の合計以下である場合には、第２のパケット処理装置を搭載した他のパケット通信装置にパケットを転送する。図３の例では、パケット通信装置２００ｂ、２００ｃは、第２のパケット処理装置を搭載したパケット通信装置２００ａにパケットを転送する。【００３８】
一方、パケット通信装置２００ｂ、２００ｃは、パケットの転送速度が第１及び第２のパケット処理装置による処理速度の合計を超過した場合には、超過分のパケットを廃棄する。【００３９】
このように、実施例２に係るパケット転送方法は、パケットの転送速度が自装置内の第１のパケット処理装置による処理速度を超過した場合に、同一のパケット処理を実行する第２のパケット処理装置を搭載した他のパケット通信装置を探索する。そして、実施例２に係るパケット転送方法は、探索した他のパケット通信装置に第１のパケット処理装置へ入力されるパケットを転送する。このため、実施例２に係るパケット転送方法は、あるパケット通信装置に搭載された第１のパケット処理装置にかかる処理負荷をネットワーク内の他のパケット通信装置に分散することができる。その結果、実施例２に係るパケット転送方法は、エッジ側のパケット通信装置に負荷が集中することを防止することができ、ネットワークにおける輻輳の発生を回避することができる。【００４０】
また、実施例２に係るパケット転送方法は、パケットの転送速度が第１及び第２のパケット処理装置による処理速度の合計を超過した場合に、超過分のパケットを廃棄するため、ネットワーク内に不要なパケットを出力することを防止することができる。【００４１】
また、実施例２に係るパケット転送方法は、第２のパケット処理装置を搭載した他のパケット通信装置が複数存在する場合には、他のパケット通信装置各々に搭載されるパケット処理装置による処理速度の比率に応じてパケットを転送する。このため、実施例３に係るパケット転送方法は、あるパケット通信装置に搭載された第１のパケット処理装置にかかる処理負荷をネットワーク内の他のパケット通信装置に効率良く分散することができる。【００４２】
次に、図４を用いて、実施例２に係るパケット通信装置２００の構成を説明する。図４は、実施例２に係るパケット通信装置２００の構成を示すブロック図である。なお、図４に示したパケット通信装置２００は、図２に示したエッジ側のパケット通信装置２００ｃ及び図３に示したエッジ側のパケット通信装置２００ｂ、２００ｃに相当する。【００４３】
図４に示すように、パケット通信装置２００は、ＮＷＰ部２０１と、ＨＷＡ部２０２と、ＶＳＷ（Virtual  Switch）部２０３とを有する。ＮＷＰ部２０１は、所定のポートからパケットを受信すると、受信したパケットに対して自装置内のＨＷＡ部２０２による圧縮／解凍や暗号化／復号化等のパケット処理を実行するか否かを判定する。例えば、ＮＷＰ部２０１は、受信したパケットのヘッダ情報を解析し、パケット処理が未だ実行されていないことを示す制御情報が含まれる場合に、受信したパケットに対してＨＷＡ部２０２によるパケット処理を実行すると判定する。【００４４】
ＮＷＰ部２０１は、ＨＷＡ部２０２によるパケット処理を実行しないと判定した場合には、通常のルーティング機能を実行することにより、受信したパケットを他のパケット通信装置へ転送する。一方、ＮＷＰ部２０１は、ＨＷＡ部２０２によるパケット処理を実行すると判定した場合には、受信したパケットをＶＳＷ部２０３を介してＨＷＡ部２０２に出力する。なお、ＮＷＰ部２０１は、図１に示したパケット処理判定部１０１の一例である。【００４５】
ＨＷＡ部２０２は、ＶＳＷ部２０３を介してＮＷＰ部２０１から入力されるパケットに対してパケット処理を実施し、パケット処理を実施したパケットをＶＳＷ部２０３を介してＮＷＰ部２０１へ返送する。なお、パケット処理には、圧縮／解凍、暗号化／復号化、チェックサムチェック／チェックサムジェネレータ、高レイヤフロー識別、フロー単位ＱｏＳ制御、ウイルススキャン及びコンテンツフィルタリング等の各種の処理が含まれる。また、ＨＷＡ部２０２は、パケット処理を実施したパケットのヘッダ情報にパケット処理が実行済みである旨を示す制御情報を付加する。なお、ＨＷＡ部２０２は、図１に示した第１のパケット処理装置１０２の一例である。【００４６】
ＶＳＷ部２０３は、ＮＷＰ部２０１からＨＷＡ部２０２へ入力されるパケットを処理する処理部である。図５は、図４に示したＶＳＷ部２０３の構成を示すブロック図である。図５に示すように、ＶＳＷ部２０３は、ＨＷＡ情報記憶部２１１と、スケジューラ部２１２と、パケット転送部２１３とを有する。【００４７】
ＨＷＡ情報記憶部２１１は、ネットワーク内のパケット通信装置を識別するための装置番号に対応付けて、ＨＷＡ部に関する各種情報を記憶する。ＨＷＡ情報記憶部２１１の一例を図６に示す。図６に示すように、ＨＷＡ情報記憶部２１１は、装置番号、ＨＷＡ種類、処理速度、転送先アドレスといった項目を有する。【００４８】
装置番号は、ネットワーク内のパケット通信装置を識別するための番号を示す。ＨＷＡ種類は、装置番号が示すパケット通信装置に搭載されたＨＷＡ部が行うパケット処理の種類を示す。処理速度は、対応するＨＷＡ部がパケット処理を行う速度を示す。転送先アドレスは、装置番号が示すパケット通信装置のＩＰアドレスを示す。【００４９】
例えば、図６に示したＨＷＡ情報記憶部２１１の１行目は、装置番号「１」が示すパケット通信装置にパケット処理「Ａ」を行うＨＷＡ部が搭載されており、該ＨＷＡ部によるパケット処理の処理速度が「１００」Ｍｂｐｓであることを示す。そして、図６に示したＨＷＡ情報記憶部２１１の１行目は、装置番号「１」が示すパケット通信装置にパケットを転送する際に用いられるＩＰアドレスが「ＰＰＰ」であることを示す。また、図６に示したＨＷＡ情報記憶部２１１の１、３行目は、装置番号「１」が示すパケット通信装置に搭載されたＨＷＡ部と、装置番号「３」が示すパケット通信装置に搭載されたＨＷＡ部とが同一のパケット処理「Ａ」を実行することを示す。【００５０】
スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度を超過したか否かを判定する。具体的には、スケジューラ部２１２は、自装置（例えば装置番号「１」）に搭載されたＨＷＡによるパケット処理（例えば「Ａ」）の処理速度（例えば「１００」Ｍｂｐｓ）をＨＷＡ情報記憶部２１１から読み出す。そして、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が読み出した処理速度（例えば「１００」Ｍｂｐｓ）を超過したか否かを判定する。【００５１】
スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度以下である場合には、ＨＷＡ部２０２にパケットを出力する。なお、スケジューラ部２１２は、ＨＷＡ部２０２からパケット処理後のパケットを受け取ると、このパケットをＮＷＰ部２０１へ出力する。【００５２】
一方、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度を超過した場合には、ＨＷＡ部２０２と同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット通信装置を探索する。具体的には、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度を超過した場合には、ＨＷＡ情報記憶部２１１を参照する。そして、スケジューラ部２１２は、自装置（例えば装置番号「１」）に搭載されたＨＷＡ部によるパケット処理（「Ａ」）と同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット通信装置（装置番号「３」、「４」）をＨＷＡ情報記憶部２１１から探索する。【００５３】
このとき、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度と他のパケット通信装置内のＨＷＡ部による処理速度との合計を超過したか否かを判定する。具体的には、スケジューラ部２１２は、ＨＷＡ情報記憶部２１１から自装置（例えば装置番号「１」）内のＨＷＡ部２０２による処理速度（例えば「１００」Ｍｂｐｓ）を読み出す。そして、スケジューラ部２１２は、ＨＷＡ情報記憶部２１１から他装置（例えば装置番号「３」、「４」）内のＨＷＡ部による処理速度（例えば「１００」Ｍｂｐｓ）を読み出す。そして、スケジューラ部２１２は、読み出した処理速度の合計（例えば「１００」＋「１００」＋「１００」＝「３００」Ｍｂｐｓ）を求める。そして、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が読み出した処理速度の合計を超過したか否かを判定する。【００５４】
スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が処理速度の合計以下である場合には、探索した他のパケット通信装置の情報及びパケットをパケット転送部２１３に出力する。【００５５】
一方、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が処理速度の合計を超過した場合には、超過分のパケットを優先度の低い順番に廃棄し、残りのパケットをパケット転送部２１３に出力する。なお、スケジューラ部２１２は、図１に示した探索部１０３の一例である。【００５６】
パケット転送部２１３は、スケジューラ部２１２によって探索された他のパケット通信装置に、スケジューラ部２１２から入力されるパケットを転送する。具体的には、パケット転送部２１３は、スケジューラ部２１２によって探索された他のパケット通信装置（上記例で装置番号「３」、「４」）の転送先アドレス（例えば「ＲＲＲ」、「ＳＳＳ」）をＨＷＡ情報記憶部２１１から読み出す。そして、パケット転送部２１３は、読み出した転送先アドレスに対応するパケット通信装置（装置番号「３」、「４」）に、スケジューラ部２１２から入力されるパケットを転送する。【００５７】
このとき、パケット転送部２１３は、スケジューラ部２１２によって探索された他のパケット通信装置が複数存在する場合には、他のパケット通信装置各々に搭載されるＨＷＡ部による処理速度の比率に応じてパケットを転送する。例えば、パケット転送部２１３は、スケジューラ部２１２により２つのパケット通信装置（上記例で装置番号「３」、「４」）が探索された場合には、対応するＨＷＡ部による処理速度（いずれも「１００」Ｍｂｐｓ）をＨＷＡ情報記憶部２１１から読み出す。そして、パケット転送部２１３は、読み出した処理速度の比率（「１００」：「１００」＝１：１）で２つのパケット通信装置（装置番号「３」、「４」）それぞれにパケットを転送する。なお、パケット転送部２１３は、図１に示した転送部１０４の一例である。【００５８】
次に、図７を用いて、実施例２に係るパケット通信装置２００による処理手順について説明する。図７は、実施例２に係るパケット通信装置２００による処理手順を示すフローチャートである。【００５９】
図７に示すように、パケット通信装置２００のＮＷＰ部２０１は、パケットを受信すると（ステップＳ１１肯定）、受信したパケットに対して自装置内のＨＷＡ部２０２によるパケット処理を実行するか否かを判定する（ステップＳ１２）。そして、ＮＷＰ部２０１は、ＨＷＡ部２０２によるパケット処理を実行しないと判定した場合（ステップＳ１２否定）、受信したパケットを他のパケット通信装置へ転送し（ステップＳ１３）、処理を終了する。【００６０】
一方、ＮＷＰ部２０１は、ＨＷＡ部２０２によるパケット処理を実行すると判定した場合（ステップＳ１２肯定）、受信したパケットをＶＳＷ部２０３を介してＨＷＡ部２０２に出力する（ステップＳ１４）。【００６１】
続いて、ＶＳＷ部２０３のスケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度を超過したか否かを判定する（ステップＳ１５）。スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度以下である場合（ステップＳ１５否定）、ＨＷＡ部２０２にパケットを出力し（ステップＳ１６）、処理をステップＳ１２に戻す。【００６２】
一方、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度を超過した場合（ステップＳ１５肯定）、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット通信装置を探索する（ステップＳ１７）。【００６３】
このとき、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度がＨＷＡ部２０２による処理速度と他のパケット通信装置内のＨＷＡ部による処理速度との合計を超過したか否かを判定する（ステップＳ１８）。スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が処理速度の合計以下である場合（ステップＳ１８否定）、探索した他のパケット通信装置の情報及びパケットをパケット転送部２１３に出力し、処理をステップＳ２０へ進める。【００６４】
一方、スケジューラ部２１２は、ＮＷＰ部２０１から入力されるパケットの転送速度が処理速度の合計を超過した場合（ステップＳ１８肯定）、超過分のパケットを優先度の低い順番に廃棄し（ステップＳ１９）、残りのパケットをパケット転送部２１３に出力する。【００６５】
続いて、パケット転送部２１３は、スケジューラ部２１２によって探索された他のパケット通信装置に、スケジューラ部２１２から入力されるパケットを転送する（ステップＳ２０）。【００６６】
上述してきたように、実施例２に係るパケット通信装置２００は、パケットの転送速度が自装置内のＨＷＡ部２０２による処理速度を超過した場合に、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット通信装置を探索する。そして、実施例２に係るパケット通信装置２００は、探索した他のパケット通信装置にＨＷＡ部２０２へ入力されるパケットを転送する。このため、実施例２に係るパケット通信装置２００は、自身に搭載されたＨＷＡ部２０２にかかる処理負荷をネットワーク内の他のパケット通信装置に分散することができる。その結果、実施例２に係るパケット通信装置２００は、エッジ側のパケット通信装置として用いられる場合であっても、自身に負荷が集中することを防止することができ、ネットワークにおける輻輳の発生を回避することができる。【００６７】
また、実施例２に係るパケット通信装置２００は、パケットの転送速度が自装置内のＨＷＡ部２０２による処理速度と他装置内のＨＷＡ部による処理速度の合計を超過した場合に、超過分のパケットを廃棄する。このため、実施例２に係るパケット通信装置２００は、ネットワーク内に不要なパケットを出力することを防止することができる。【００６８】
また、実施例２に係るパケット通信装置２００は、探索された他のパケット通信装置が複数存在する場合には、他のパケット通信装置各々に搭載されるＨＷＡ部による処理速度の比率に応じてパケットを転送する。このため、実施例２に係るパケット通信装置２００は、自身に搭載されたＨＷＡ部２０２にかかる処理負荷をネットワーク内の他のパケット通信装置に効率良く分散することができる。
【実施例３】
【００６９】
本願の開示するパケット通信装置等は、上述した実施例以外にも、種々の異なる形態にて実施されてもよい。そこで、実施例３では、本願の開示するパケット通信装置等の他の実施例について説明する。【００７０】
例えば、上記実施例２では、一つのパケット通信装置内に一つのＨＷＡ部が搭載される例を示した。しかし、一つのパケット通信装置内に複数のＨＷＡ部が搭載されていてもよい。そこで、以下では、一つのパケット通信装置内に複数のＨＷＡ部が搭載される例について説明する。【００７１】
図８は、装置内に複数のＨＷＡ部が搭載されたパケット通信装置３００の構成例を示す図である。図８に示すパケット通信装置３００は、ＮＷＰ部、ＶＳＷ部及びＨＷＡ部を含む３つのパケット転送ブレード４００、４１０、４２０を有する。【００７２】
３つのパケット転送ブレード４００、４１０、４２０各々は、上記実施例２で既に説明したパケット通信装置２００と同様の装置である。すなわち、３つのパケット転送ブレード４００、４１０、４２０が含んだＮＷＰ部、ＶＳＷ部及びＨＷＡ部は、図４に示したＮＷＰ部２０１、ＶＶＳＷ部２０３及びＨＷＡ部２０２にそれぞれ相当する。なお、パケット転送ブレードの台数は、何台であってもよい。【００７３】
また、パケット通信装置３００は、スイッチ５００と、３つのループバックポインタ６００、６１０、６２０とを有する。スイッチ５００は、３つのパケット転送ブレード４００、４１０、４２０間でやり取りされるパケットを中継する装置である。ループバックポインタ６００、６１０、６２０は、スイッチ５００からのパケットをパケット転送ブレード４００、４１０、４２０それぞれにループバックする装置である。【００７４】
このように構成されたパケット通信装置３００によるパケット転送処理の一例を説明する。ここでは、パケット転送ブレード４００のＮＷＰ部が所定のポートからパケットを受信したものとして説明を行う。パケット転送ブレード４００のＮＷＰ部は、所定のポートからパケットを受信すると、受信したパケットに対して自装置内のＨＷＡ部によるパケット処理を実行するか否かを判定する。【００７５】
パケット転送ブレード４００のＮＷＰ部は、ＨＷＡ部によるパケット処理を実行すると判定した場合に、受信したパケットをＶＳＷ部を介してＨＷＡ部に出力する。ＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度がＨＷＡ部による処理速度を超過した場合に、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット転送ブレードを探索する。図８の例では、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット転送ブレードとして、パケット転送ブレード４１０が探索されたものとする。【００７６】
そして、パケット転送ブレード４００のＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度が自装置内のＨＷＡ部による処理速度とパケット転送ブレード４１０内のＨＷＡ部による処理速度との合計を超過したか否かを判定する。そして、パケット転送ブレード４００のＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度が処理速度の合計を超過した場合には、超過分のパケットを優先度の低い順番に廃棄し、残りのパケットをパケット転送ブレード４１０に転送する。【００７７】
続いて、スイッチ５００は、パケット転送ブレード４００からのパケットをスイッチングしてパケット転送ブレード４１０に対応するループバックポインタ６１０へ中継する。続いて、ループバックポインタ６１０は、スイッチ５００からのパケットをパケット転送ブレード４１０にループバックする。【００７８】
そして、パケット転送ブレード４１０のＮＷＰ部は、所定のポート及びループバックポインタ６１０からパケットを受信すると、受信したパケットに対して自装置内のＨＷＡ部によるパケット処理を実行するか否かを判定する。【００７９】
パケット転送ブレード４１０のＮＷＰ部は、ＨＷＡ部によるパケット処理を実行すると判定した場合に、受信したパケットをＶＳＷ部を介してＨＷＡ部に出力する。ＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度がＨＷＡ部による処理速度を透過した場合に、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット転送ブレードを探索する。図８の例では、同一のパケット処理を実行するＨＷＡ部を搭載した他のパケット転送ブレードが探索できなかったものとする。【００８０】
そして、パケット転送ブレード４１０のＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度が自装置内のＨＷＡ部による処理速度を超過したか否かを判定する。そして、パケット転送ブレード４２０のＶＳＷ部は、ＮＷＰ部から入力されるパケットの転送速度が処理速度を超過した場合には、超過分のパケットを優先度の低い順番に廃棄し、残りのパケットを自装置内のＨＷＡ部に送出する。そして、パケット転送ブレード４２０のＨＷＡ部は、ＶＳＷ部２０３を介してＮＷＰ部から入力されるパケットに対してパケット処理を実施し、パケット処理を実施したパケットをＶＳＷ部を介してＮＷＰ部へ返送する。【００８１】
そして、パケット転送ブレード４１０のＮＷＰ部は、通常のルーティング機能を実行することにより、ＨＷＡ部から返送されたパケットをパケット転送ブレード４２０へ転送する。【００８２】
続いて、スイッチ５００は、パケット転送ブレード４１０からのパケットをスイッチングしてパケット転送ブレード４２０に対応するループバックポインタ６２０へ中継する。ループバックポインタ６２０は、スイッチ５００からのパケットをパケット転送ブレード４２０にループバックすることなく所定のポートから外部へ出力する。【００８３】
このように、パケット通信装置３００は、パケットの転送速度が自装置内のあるＨＷＡ部による処理速度を超過した場合に、同一のパケット処理を実行する自装置内の他のＨＷＡ部を探索する。そして、パケット通信装置３００は、探索した自装置内の他のＨＷＡ部に、自装置のＨＷＡ部へ入力されるパケットを転送する。このため、パケット通信装置３００は、自装置内に複数のＨＷＡ部が搭載されており、そのうち一部のＨＷＡ部に過度な処理負荷がかかる場合であっても、その処理負荷を自装置内の他のＨＷＡ部に分散することができる。その結果、パケット通信装置３００は、自装置内に複数のＨＷＡ部が搭載されている場合に自装置内での輻輳の発生を回避することができる。
【符号の説明】
【００８４】
１００、２００  パケット通信装置
１０１  パケット処理判定部
１０２  第１のパケット処理装置
１０３  探索部
１０４  転送部
２０１  ＮＷＰ部（パケット処理判定部）
２０２  ＨＷＡ部（第１のパケット処理装置）
２０３  ＶＳＷ部
２１１  ＨＷＡ情報記憶部
２１２  スケジューラ部（探索部）
２１３  パケット転送部（転送部）
【図１】
0005423886.tif 000002
【図２】
0005423886.tif 000003
【図３】
0005423886.tif 000004
【図４】
0005423886.tif 000005
【図５】
0005423886.tif 000006
【図６】
0005423886.tif 000007
【図７】
0005423886.tif 000008
【図８】
0005423886.tif 000009
【図９】
0005423886.tif 000010