(57)【要約】【課題】パケット処理装置、およびパケット処理方法を提供すること。【解決手段】パケット処理装置として、通信パケットが入力されるインターフェースと、前記通信パケットを用いて各々が共通の所定の処理を行う複数のパケット処理部と、前記インターフェースに入力される通信パケットのヘッダ情報を監視する監視部１２４と、前記監視部により監視された前記通信パケットのヘッダ情報に基づいて、前記インターフェースに入力された通信パケットの優先度を決定し、前記通信パケットを用いた処理を行わせるパケット処理部を前記複数のパケット処理部のうちから前記優先度に応じて指定する制御部１２８と、前記制御部により指定されたパケット処理部に前記通信パケットを出力するスイッチ部１３２と、を設ける。【選択図】図３
2009081688.tif 000002
【特許請求の範囲】
【請求項１】
通信パケットが入力されるインターフェースと；
前記通信パケットを用いて各々が共通の所定の処理を行う複数のパケット処理部と；
前記インターフェースに入力される通信パケットのヘッダ情報を監視する監視部と；
前記監視部により監視された前記通信パケットのヘッダ情報に基づいて、前記インターフェースに入力された通信パケットの優先度を決定し、前記通信パケットを用いた処理を行わせるパケット処理部を前記複数のパケット処理部のうちから前記優先度に応じて指定する制御部と；
前記制御部により指定されたパケット処理部に前記通信パケットを出力するスイッチ部と；
を備えることを特徴とする、パケット処理装置。
【請求項２】
前記通信パケットのヘッダ情報にはポート番号が含まれており、
前記監視部は、前記通信パケットのヘッダ情報に含まれているポート番号を監視することを特徴とする、請求項１に記載のパケット処理装置。
【請求項３】
前記通信パケットのヘッダ情報にはペイロードタイプが含まれており、
前記監視部は、前記通信パケットのヘッダ情報に含まれているペイロードタイプを監視することを特徴とする、請求項１に記載のパケット処理装置。
【請求項４】
前記パケット処理装置は前記インターフェースを複数備え、
前記制御部は、前記通信パケットの優先度を、前記通信パケットが入力されるインターフェースごとに前記通信パケットのヘッダ情報に基づいて決定し、前記優先度に基づいて前記通信パケットを処理させるパケット処理部を前記インターフェースごとに分散的に指定することを特徴とする、請求項１に記載のパケット処理装置。
【請求項５】
通信パケットが入力されるステップと；
前記通信パケットのヘッダ情報に基づいて、前記インターフェースに入力される通信パケットの優先度を決定するステップと；
前記通信パケットを用いた処理を行わせるパケット処理装置を複数のパケット処理装置のうちから前記優先度に応じて指定するステップと；
前記通信パケットを指定されたパケット処理装置に出力するステップと；
前記パケット処理装置が入力された通信パケットを用いて所定処理を行うステップと；
を含むことを特徴とする、パケット処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット処理装置、およびパケット処理方法に関する。
【背景技術】
【０００２】
近日、複数の通信装置間でインターネットを介して行われるパケット通信が広く普及している。例えば、ある通信装置がパケットを送信すると、インターネット上に配されているルータ（パケット処理装置）が該パケットの通信経路をルーティングし、ルータによりルーティングされた通信経路を経て該パケットが他の通信装置に到達する。
【０００３】
上記ルータは、フィルタリング機能、リンクアドレス機能、輻輳制御機能などの処理機能が実装されたネットワークプロセッサを内蔵している。かかる処理機能を例えば２つのネットワークプロセッサに分散させることにより、１のネットワークプロセッサにおいて発生する処理負荷を抑制することができる。
【０００４】
例えば、フィルタリング機能、およびリンクアドレス機能を１のネットワークプロセッサに実装し、該ネットワークプロセッサの処理後に行う輻輳制御機能を他のネットワークプロセッサに実装してもよい。このように複数のネットワークプロセッサを利用する技術に関連する内容が例えば特許文献１に記載されている。
【０００５】
【特許文献１】特開平１１−６５９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来のルータにおいては、受信したパケットを複数のネットワークプロセッサが直列的に処理していた。このため、従来のルータにおいてはネットワークプロセッサによる処理がボトルネックとなるという問題があった。
【０００７】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、スループットの向上を図ることが可能な、新規かつ改良されたパケット処理装置、およびパケット処理方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある観点によれば、通信パケットが入力されるインターフェースと、前記通信パケットを用いて各々が共通の所定の処理を行う複数のパケット処理部と、前記インターフェースに入力される通信パケットのヘッダ情報を監視する監視部と、前記監視部により監視された前記通信パケットのヘッダ情報に基づいて、前記インターフェースに入力された通信パケットの優先度を決定し、前記通信パケットを用いた処理を行わせるパケット処理部を前記複数のパケット処理部のうちから前記優先度に応じて指定する制御部と、前記制御部により指定されたパケット処理部に前記通信パケットを出力するスイッチ部と、を備えるパケット処理装置が提供される。
【０００９】
かかる構成においては、通信パケットが複数のパケット処理部のうちのいずれかにより処理される。すなわち、当該パケット処理装置は、複数のパケット処理部に並列的に九通の所定の処理を行わせることができる。その結果、当該パケット処理装置によれば、１ポート（物理的なポート）当たりの処理効率およびスループットを向上することができる。
【００１０】
前記通信パケットのヘッダ情報にはポート番号が含まれており、前記監視部は、前記通信パケットのヘッダ情報に含まれているポート番号を監視してもよい。
【００１１】
前記通信パケットのヘッダ情報にはペイロードタイプが含まれており、前記監視部は、前記通信パケットのヘッダ情報に含まれているペイロードタイプを監視してもよい。
【００１２】
前記パケット処理装置は前記インターフェースを複数備え、前記制御部は、前記通信パケットの優先度を、前記通信パケットが入力されるインターフェースごとに前記通信パケットのヘッダ情報に基づいて決定し、前記優先度に基づいて前記通信パケットを処理させるパケット処理部を前記インターフェースごとに分散的に指定してもよい。
【００１３】
また、上記課題を解決するために、本発明の別の観点によれば、通信パケットが入力されるステップと、前記通信パケットのヘッダ情報に基づいて、前記インターフェースに入力される通信パケットの優先度を決定するステップと、前記通信パケットを用いた処理を行わせるパケット処理装置を複数のパケット処理装置のうちから前記優先度に応じて指定するステップと、前記通信パケットを指定されたパケット処理装置に出力するステップと、前記パケット処理装置が入力された通信パケットを用いて所定処理を行うステップと、を含むパケット処理方法が提供される。
【発明の効果】
【００１４】
以上説明したように本発明にかかるパケット処理装置、およびパケット処理方法によれば、スループットの向上を図ることができる。
【発明を実施するための最良の形態】
【００１５】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１６】
また、以下の順序にしたがって当該「発明を実施するための最良の形態」を説明する。
〔１〕本実施形態にかかる通信システムおよびルータの概要
〔２〕本実施形態の目的
〔２−１〕本実施形態に関連するルータの説明
〔２−２〕本実施形態の目的
〔３〕本実施形態にかかるルータの詳細な説明
〔３−１〕ルータの機能
〔３−２〕ルータの動作
〔４〕まとめ
【００１７】
〔１〕本実施形態にかかる通信システムおよびルータの概要
まず、図１を参照して本実施形態にかかる通信システム１の概要を説明する。
【００１８】
図１は、本実施形態にかかる通信システム１の構成を示した説明図である。図１に示したように、当該通信システム１は、複数の通信装置２０Ａおよび２０Ｂと、パケット処理装置の一例としての複数のルータ１０Ａおよび１０Ｂを含む。なお、特にルータ１０Ａおよび１０Ｂを区別する必要が無い場合は、単にルータ１０と称する。複数の通信装置２０Ａおよび２０Ｂについても同様である。
【００１９】
通信装置２０Ａおよび２０Ｂは、所定の通信経路を経て通信することができる。例えば、通信装置２０Ａがパケットを送信すると、該パケットを受信したルータ１０Ａが該パケットの通信経路（全体、または一部）をルーティングし、ルーティングした通信経路上のルータ１０へ送信する。そして、ルータ１０Ｂにパケットが到達すると、ルータ１０Ｂが通信装置２０Ｂに該パケットを送信し、通信装置２０Ｂがパケットを受信することができる。
【００２０】
ルータ１０は、上述したように、パケットの通信経路をルーティングする機能の他、パケットの通信制限に関するフィルタリング機能、リンクアドレス機能、輻輳制御機能などを実装していてもよい。
【００２１】
なお、図１においては通信装置２０の一例としてＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を示しているが、通信装置２０は、家庭用映像処理装置（ＤＶＤレコーダ、ビデオデッキなど）、携帯電話、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）、携帯用音楽再生装置、携帯用映像処理装置、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、家庭用ゲーム機器、携帯用ゲーム機器、家電機器などの情報処理装置であってもよい。
【００２２】
続いて、図２を参照し、本実施形態にかかるルータ１０について概略的に説明する。
【００２３】
図２は、本実施形態にかかるルータ１０の構成を示した機能ブロック図である。図２に示したように、当該ルータ１０は、ポート１１Ａ〜ポート１１Ｈと、Ｃｏｐｐｅｒ  ｐｈｙ１２と、ＸＭＡＣ１３と、ＳＰＩＦ１４と、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５と、ＮＰＵ１６と、ＮＰＵ１７と、Ｚｏｎｅ２（１８）と、を備える。
【００２４】
各ポート１１Ａ〜１１Ｈは入力された電気信号をＣｏｐｐｅｒ  ｐｈｙ１２に出力する。例えば、各ポート１１Ａ〜１１Ｈは、例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅ  Ｎｅｔｗｏｒｋ）ケーブル入力されたパケット（通信パケット）をポート１１Ａ〜１１Ｈに設けられた端子を介してＣｏｐｐｅｒ  ｐｈｙ１２に出力するインターフェースとしての機能を有する。
【００２５】
また、各ポート１１Ａ〜１１Ｈは、ＥｔｈｅｎｅｔケーブルやＩＳＤＮ回線などで利用される８芯のモジュラ式コネクタである「ＲＪ４５」であってもよい。
【００２６】
Ｃｏｐｐｅｒ  ｐｈｙ１２は、入力された電気信号の相互変換を行い、ＲＧＭＩＩ（Ｒｅｄｕｃｅｄ  Ｇｉｇａｂｉｔ  Ｍｅｄｉａ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｉｎｔｅｒｆａｃｅ）規格に沿ってパケット信号に変換してＸＭＡＣ１３に出力する。Ｃｏｐｐｅｒ  ｐｈｙ１２には、かかる機能が各ポート１１Ａ〜１１Ｈごとに実装されている。
【００２７】
ＸＭＡＣ１３は、Ｃｏｐｐｅｒ  ｐｈｙ１２から入力されたパケット信号に対して振り分けを行い、ＳＰＩ４．２（Ｓｙｓｔｅｍ  Ｐａｃｋｅｔ  Ｉｎｔｅｒｆａｃｅ  Ｌｅｖｅｌ  ４，Ｐｈａｓｅ  ２）規格に沿ってＳＰＩＦ１４へ出力する。また、ＸＭＡＣ１３は、ＳＰＩＦ１４からＳＰＩ４．２規格に沿って入力されるパケット信号を、Ｓｅｒｄｅｓ規格に変換して出力する。
【００２８】
ＳＰＩＦ（Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓ  Ｉｎｔｅｒｆａｃｅ）１４は、ポート１１Ａ〜１１Ｈに入力されたパケット信号をＸＭＡＣ１３からラウンドロビン制御で受信、多重化、特殊パケットヘッダの付加などを行い、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５へパケット信号を出力する。また、ＳＰＩＦ１４は、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５から入力されたパケット信号をＮＰＵ１６またはＮＰＵ１７へ出力する。ＮＰＵ１６およびＮＰＵ１７の機能については、「〔３−１〕ルータの機能」において説明する。
【００２９】
Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５は、ＳＰＩＦ１４から入力されたパケット信号と、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５内に保存されているパケット信号の比較を行い、一致の有無などのデータをＳＰＩＦ１４に出力する。なお、一致の有無とは、例えば、ＭＡＣアドレス、ＩＰアドレス、ポート番号などの一致の有無であってもよい。
【００３０】
Ｚｏｎｅ２（１８）は、ＡＴＣＡ（Ａｄｖａｎｃｅｄ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ａｒｃｈｉｔｅｃｔｕｒｅ）で規定される物理的なインターフェースコネクタである。Ｚｏｎｅ２（１８）は、複数のチャネルを接続するバックプレーン側の内部接続ファブリックへ接続する。このような「Ｚｏｎｅ２（１８）を介してブレード単位の通信を行うことができる。
【００３１】
〔２〕本実施形態の目的
以上、本実施形態にかかる通信システム１およびルータ１０について概略的に説明した。続いて、本実施形態に関連するルータについて比較例として説明した後に、本実施形態の目的を説明する。
【００３２】
〔２−１〕本実施形態に関連するルータの説明
図３は、本実施形態に関連するルータに内蔵されるＳＰＩＦ１４’の構成を示す機能ブロック図である。図３に示したように、本実施形態に関連するルータに内蔵されるＳＰＩＦ１４’は、多重化部８２およびＮＳＥ８４を備える。多重化部８２は、ＸＭＡＣから複数ポート（物理的なポート）のパケット信号をラウンドロビン制御で受信し、多重化してＮＳＥ８４に出力する。
【００３３】
ＮＳＥ８４は、多重化部８２から入力されるパケット信号に特殊なヘッダを付与し、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅへ出力する。また、ＮＳＥ８４は、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅから入力されたＨＩＴ／ＭＩＳＨＨＩＴの判定や各種情報を特殊ヘッダに付与し、ＮＰＵ８６へ出力する。
【００３４】
ＮＰＵ８６は、ＳＰＩＦ１４’から入力されたパケット信号を用い、フィルタリング機能、リンクアドレス機能などを行い、ＳＰＩＦ１４’に出力する。また、ＮＰＵ８８は、ＮＰＵ８６により処理されたパケット信号を用い、ＮＰＵ８６と異なる例えば輻輳制御などを行い、ＳＰＩＦ１４’に出力する。
【００３５】
〔２−２〕本実施形態の目的
上述したように、本実施形態に関連するルータのＳＰＩＦ１４’は、ＮＰＵ８６およびＮＰＵ８８に処理機能を分散し、ＮＰＵ８６およびＮＰＵ８８に直列的に処理させることにより１のＮＰＵ８６またはＮＰＵ８８における処理負荷を抑制することができた。
【００３６】
しかし、本実施形態に関連するルータのＳＰＩＦ１４’では、ＮＰＵ８６およびＮＰＵ８８を直列的に用いているため、１のポート１１当たりの処理効率が向上せず、ＮＰＵ８６およびＮＰＵ８８におけるし処理がボトルネックになるという問題があった。また、ＮＰＵ８６またはＮＰＵ８８のいずれかが故障すると、全ての処理が停止してしまう（ストリームが停止してしまう。）という問題があった。
【００３７】
さらに、本実施形態に関連するルータには、パケットの優先制御を行なう機能が実装されていないため、データ系または音声系などのプロトコル変換またはメディア変換を行なう上で、特定のパケット処理を優先させることができなかった。
【００３８】
そこで、上記のような事情に鑑みて本実施形態にかかるルータ１０を創作するに至った。本実施形態にかかるルータ１０によれば、特定のパケット処理を優先的に行い、かつスループットの向上を図ることができる。以下、このようなルータ１０について、ルータ１０に内蔵されるＳＰＩＦ１４に重きをおいて説明する。
【００３９】
〔３〕本実施形態にかかるルータの詳細な説明
〔３−１〕ルータの機能
図４は、本実施形態にかかるルータ１０に設けられるＳＰＩＦ１４の構成を示した機能ブロック図である。図４に示したように、当該ＳＰＩＦ１４は、多重化部１１６と、ＮＳＥ１２０と、監視部１２４と、制御部１２８と、スイッチ部１３２と、多重化部１３２と、を備える。
【００４０】
多重化部１１６は、ＸＭＡＣ１３から複数のポート１１Ａ〜１１Ｈ（物理的なポート）のパケット信号をラウンドロビン制御で受信し、多重化してＮＳＥ１２０（Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ）に出力するインターフェースとしての機能を有する。ＮＳＥ１２０は、多重化部１１６から入力されるパケット信号に特殊なヘッダを付与し、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅ１５へ出力する。また、ＮＳＥ１２０は、Ｎｅｔｗｏｒｋ  Ｓｅａｃｈ  Ｅｎｇｉｎｅから入力されたＨＩＴ／ＭＩＳＨＨＩＴの判定や各種情報を特殊ヘッダに付与し、スイッチ部１３２へ出力する。
【００４１】
監視部１２４は、多重化部１１６から出力されるパケット信号のヘッダ情報を監視し、該ヘッダ情報を制御部１２８へ通知する。例えば、監視部１２４は、パケット信号のポート番号（イーサヘッダ）や、ＲＴＰポートの場合はＲＴＰのペイロードタイプ（ＲＴＰヘッダを監視して制御部１２８へ通知してもよい。図５に、ＲＴＰパケットの構成例を示す。
【００４２】
図５は、ＲＴＰパケットの構成を示した説明図である。図５に示したように、ＲＴＰパケットは、バージョン情報（Ｖ）１０１、パディング情報（Ｐ）１０２、エクステンション情報（Ｘ）１０３、ＣＳＲＣカウント情報（ＣＣ）１０４、境界情報（Ｍ）１０５、ペイロードタイプ情報（ＰＴ）１０６、シーケンス番号１０７、タイムスタンプ１０８、ＳＳＲＣ識別子１０９を含む。また、ＲＴＰパケットは、ＣＳＲＣ識別子１１０、ヘッダ拡張１１１、ペイロードヘッダ１１２、ペイロードデータ１１３、およびパディング１１４を含む。
【００４３】
また、パケット信号に付加されるポート番号の意味合いの一覧を以下の表に示す。
【００４４】
【表１】
2009081688.tif 000003
【００４５】
【表２】
2009081688.tif 000004
【００４６】
制御部１２８は、監視部１２４から通知されたポート番号やペイロードタイプなどのヘッダ情報に基づいて、ＮＰＵ１６またはＮＰＵ１７へパケット信号をポート１１Ａ〜１１Ｈごとに割当てる。より詳細には、制御部１２８は、監視部１２４から通知されたポート番号やペイロードタイプなどのヘッダ情報に基づいて、パケット信号の重み（優先度）をポート１１Ａ〜１１Ｈごとに決定する。そして、制御部１２８は、ポート１１Ａ〜１１Ｈを決定した重みが高い順に分散的にＮＰＵ１６またはＮＰＵ１７へ割当てる。かかる制御部１２８による処理の具体例を、図６および図７を参照して説明する。
【００４７】
図６は、制御部１２８により決定されたパケット信号のポート（物理的なポート）ごとの重みの一例を示した説明図である。図７は、制御部１２８によりＮＰＵ１６またはＮＰＵ１７へポート（物理的なポート）が割当てられた結果例を示した説明図である。なお、図６においては物理的なポートが１０個設けられている例を示しているが、８個や２０個など任意の数の物理的なポートが設けられてもよい。
【００４８】
図６に示した例では、ポート１に入力されるパケット信号の重みが「２」に決定され、ポート２に入力されるパケット信号の重みが「３」に決定され、ポート３に入力されるパケット信号の重みが「２」に決定されている。同様に、図６に示した例では、ポート４については重みが「１」に、ポート５については重みが「１」に、ポート６については重みが「１」に、ポート７については重みが「５」に、ポート８については重みが「５」に、ポート９については重みが「６」に、ポート１０については重みが「６」に決定されている。
【００４９】
なお、ペイロードタイプ１は符号化方式「１０１６」を示し、ペイロードタイプ２は符号化方式「Ｇ７２１」を示し、ペイロードタイプ３は符号化方式「ＧＳＭ」を示し、ペイロードタイプ４は符号化方式「Ｕｎａｓｓｉｇｎｅｄ」を示す。例えば、制御部１２８は、音声のＩＴＵ−Ｔ  Ｇ．７１１  Ａ−ｌａｗ（ペイロードタイプ０）を優先（高い重みを付し）し、映像のＭＰＥＧ−１／２ビデオ（ペイロードタイプ３２）の優先度は落としてもよい（低い重みを付してもよい）。
【００５０】
このような重み付けの基準は、目的や必要に応じて適宜設定、任意に変更することができる。例えば、音声（Ｇ．７２６）に高い重みを付しても、携帯電話音声（ＡＶＲ）に高い重みを付しても、映像（Ｈ．２６４）に高い重みを付してもよい。
【００５１】
図６に示したように重みが決定された場合、制御部１２８は、重みが高い方から交互にＮＰＵ１６またはＮＰＵ１７に割当てる。
【００５２】
具体的には、図７に示したように、制御部１２８は、重みが「６」に決定されたポート１０に入力されるパケット信号をＮＰＵ１６に割り当て、重みが「６」に決定されたポート９に入力されるパケット信号をＮＰＵ１７に割り当てる。また、制御部１２８は、重みが「５」に決定されたポート８に入力されたパケット信号をＮＰＵ１６に割り当て、重みが「５」に決定されたポート７に入力されるパケット信号をＮＰＵ１７に割り当てる。以下同様にして、制御部１２８は、ポート２、３、５に入力されるパケット信号をＮＰＵ１６に割り当て、ポート１、４、６に入力されるパケット信号をＮＰＵ１７に割り当てる。    
【００５３】
このように、制御部１２８は、ＮＰＵ１６およびＮＰＵ１７における処理負荷が均等になるようにパケット信号を割当てる。その結果、ポートが１０個ある場合、ＮＰＵ１６およびＮＰＵ１７には、各々５個のポートに入力されるパケット信号が割当てられてもよい。
【００５４】
スイッチ部１３２は、制御部１２８による制御に基づき、ＮＳＥ１２０から入力されるパケット信号をＮＰＵ１６またはＮＰＵ１７に出力する。例えば、図７に示したように制御部１２８により割当てられた場合、ポート１０、８、２、３、５に入力されるパケット信号をＮＰＵ１６に出力し、ポート９、７、１、４、６に入力されるパケット信号をＮＰＵ１７に出力する。
【００５５】
ＮＰＵ１６およびＮＰＵ１７は、入力された通信パケットを用いて処理の処理を行う、所定の処理としては、例えば、フィルタリング機能、リンクアドレス機能、輻輳制御機能などの処理機能などがあげられる。
【００５６】
多重化部１３２は、ＮＰＵ１６およびＮＰＵ１７から入力されるパケット信号をラウンドロビン制御で多重化し、ＸＭＡＣ１３へ出力する。
【００５７】
〔３−２〕ルータの動作
以上、本実施形態にかかるルータの機能を説明した。続いて、図８を参照して本実施形態にかかるルータ１０において実行されるパケット処理方法を説明する。
【００５８】
図８は、本実施形態にかかるルータ１０において実行されるパケット処理方法の流れを示した説明図である。図８に示したように、まず、ＸＭＡＣ１３から多重化部１１６にＳｅｒｄｅｓ規格に沿った複数のパケット信号がラウンドロビン制御により入力される（Ｓ２０４）。そして、監視部１２４は、多重化部１１６から出力されるパケット信号を監視し、イーサネット（登録商標）フレームのポート番号を制御部１２８に通知する（Ｓ２０８）。また、監視部１２４は、パケット信号がＲＴＰポート（５００４）の場合はＲＴＰフレーム中のペイロードタイプ１０６を監視して制御部１２８へ通知する。
【００５９】
なお、上記は予約済みのポート番号に対しての動作である。動的／プライベートポートの場合はあらかじめ重み（優先度）を登録しておいてもよい。
【００６０】
続いて、制御部１２８は、Ｎｅｔｗｏｒｋ  Ｓｅａｒｃｈ  Ｅｎｇｉｎｅ１５で処理が行われている間、個々のポート１１Ａ〜１１Ｈから入力されるパケット信号の重みを、ポート番号またはペイロードタイプごとに設定されている重みを参照し、決定する（Ｓ２１２）。そして、制御部１２８は、決定した重みに基づいてＮＰＵ１６およびＮＰＵ１７の分散処理が均等の割合になるようにパケット信号を処理するＮＰＵ１６またはＮＰＵ１７をポート（物理的なポート）ごとに指定する（Ｓ２２６）。
【００６１】
その後、制御部１２８による制御に基づいてスイッチ部１３２がパケット信号をＮＰＵ１６またはＮＰＵ１７に出力し、ＮＰＵ１６およびＮＰＵ１７は入力されたパケット信号を用いて所定の処理を行う（Ｓ２２０）。
【００６２】
〔４〕まとめ
以上説明したように、本実施形態にかかるルータ１０は、監視部１２４、制御部１２８、およびスイッチ部１３２を備える。このため、並列に設けられたＮＰＵ１６およびＮＰＵ１７における１ポート（物理的なポート）当たりの処理効率およびスループットを向上することができる。
【００６３】
また、本実施形態にかかるルータ１０は、パケット優先制御をポート番号およびＲＴＰ上のペイロードタイプに基づいて行なうことができる。また、当該ルータ１０は、特定のパケット信号を優先または廃棄することができるため、例えばデータ系パケットを抑制して音声系パケットを優先処理することでＱｏｓ向上を図り、異常なパケットの廃棄することでＮＰＵ１６およびＮＰＵ１７の負荷を低減できる。
【００６４】
なお、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【００６５】
例えば、上記実施形態では、ルータ１０が２つのＮＰＵ１６およびＮＰＵ１７を備える例を説明したが、本発明はかかる例に限定されない。例えば、ルータ１０は、３個や１０個の複数のＮＰＵを備えてもよい。
【００６６】
また、上記実施形態では、制御部１２８が、重みの高い方から交互にＮＰＵ１６またはＮＰＵ１７に割当てる場合を説明したが、本発明はかかる例に限定されない。例えば、制御部１２８は、重みの総和がＮＰＵ１６とＮＰＵ１７とで同一または近似するようにパケット信号を割当ててもよい。
【００６７】
また、本明細書のルータ１０の処理における各ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、ルータ１０の処理における各ステップは、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）を含んでもよい。
【図面の簡単な説明】
【００６８】
【図１】本実施形態にかかる通信システムの構成を示した説明図である。
【図２】本実施形態にかかるルータの構成を示した機能ブロック図である。
【図３】本実施形態に関連するルータに内蔵されるＳＰＩＦの構成を示す機能ブロック図である。
【図４】本実施形態にかかるルータに設けられるＳＰＩＦの構成を示した機能ブロック図である。
【図５】ＲＴＰパケットの構成を示した説明図である。
【図６】制御部により決定されたパケット信号のポート（物理的なポート）ごとの重みの一例を示した説明図である。
【図７】制御部により複数のＮＰＵのいずれかへポート（物理的なポート）が割当てられた結果例を示した説明図である。
【図８】本実施形態にかかるルータにおいて実行されるパケット処理方法の流れを示した説明図である。
【符号の説明】
【００６９】
１０      ルータ
２０      通信装置
１４      ＳＰＩＦ
１５      Ｎｅｔｗｏｒｋ  Ｓｅａｒｃｈ  Ｅｎｇｉｎｅ
１６、１７  ＮＰＵ
１１６、１３６    多重化部
１２４    監視部
１２８    制御部
１３２    スイッチ部
【図１】
2009081688.tif 000005
【図２】
2009081688.tif 000006
【図３】
2009081688.tif 000007
【図４】
2009081688.tif 000008
【図５】
2009081688.tif 000009
【図６】
2009081688.tif 000010
【図７】
2009081688.tif 000011
【図８】
2009081688.tif 000012