JP4835934B2 - 高速処理装置、高速処理方法、及びプログラム - Google Patents

高速処理装置、高速処理方法、及びプログラム Download PDF

Info

Publication number
JP4835934B2
JP4835934B2 JP2006348979A JP2006348979A JP4835934B2 JP 4835934 B2 JP4835934 B2 JP 4835934B2 JP 2006348979 A JP2006348979 A JP 2006348979A JP 2006348979 A JP2006348979 A JP 2006348979A JP 4835934 B2 JP4835934 B2 JP 4835934B2
Authority
JP
Japan
Prior art keywords
packet
level
priority
address
port number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006348979A
Other languages
English (en)
Other versions
JP2008160626A (ja
Inventor
文博 牧山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2006348979A priority Critical patent/JP4835934B2/ja
Publication of JP2008160626A publication Critical patent/JP2008160626A/ja
Application granted granted Critical
Publication of JP4835934B2 publication Critical patent/JP4835934B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、高速処理装置に関し、特にネットワークコンピュータシステムのIPパケットを処理するIPパケット高速処理装置に関する。
高速処理装置に関する技術として、特開2003−152772号公報(特許文献1)にパケット送出優先処理方法及び装置及びパケット送出優先処理装置を用いた通信装置及びパケット送出優先処理プログラム及びパケット送出優先処理プログラムを格納した記憶媒体が開示されている。この従来技術では、複数の一時蓄積手段に格納されたパケットを、各一時蓄積手段に対応した送出優先度に応じて、パケットをネットワーク回線へ送出する。
従来は、特開2003−152772号公報(特許文献1)に示されているように、取得したパケットを複数の一時蓄積手段のいずれかに格納し、複数の当該一時蓄積手段に対応してパケット出力優先度が定義された優先度定義テーブルを参照し、当該一時蓄積手段に対応するパケット送出優先度に応じて当該一時蓄積手段から取り出されたパケットをネットワーク回線へ送出する例にあるように高速化の工夫がなされてきた。しかし、このような高速化方法には、以下のような問題点があった。
第1の問題点として、IP(Internet Protocol Address)ネットワーク通信では従来は優先度の低いIPプロトコルのパケットの受信処理中に当該パケットよりも優先性の高いIPプロトコルのパケットが送信されてきても、当該優先性の高いパケットを効率的に優先処理されないため、優先性の高いIPプロトコルのパケット処理を必要とするアプリケーションのスループットが低下したまま改善されないという課題があった。
その理由は、IPパケットの優先処理手段として固定的な優先順位の元での優先処理技術はあるが、変動的に優先順位を決定し優先処理を行う技術が未発達なため、大量のIPパケットのトランザクションが発生しても動的に優先順位を決定する機構が無いために、あるコンピュータシステムのアプリケーションから他のコンピュータシステムのアプリケーションに対して非常に大量のIPパケットが送出されても伝送処理される優先順位が低ければ処理の遅延が生じて一定以上の処理量は望めないためである。
第2の問題点として、今後急激に発展する次世代ネットワークにおいて音声や動画データがIPパケットとしてIPネットワーク内でデータベースと利用者端末間で大量のトランザクションを発生させるケースが容易に想像できるが、例えば音声、動画データベースシステムと利用者の間のIPパケットのトランザクションの増大により、IPネットワーク内部に大量のIPパケットが行き来しても、特定の音声、動画データを優先的に伝送しない限りは利用者側のコンピュータシステムやモバイル端末上のネットワークアプリケーションの処理性能の低下を招くという課題がある。
その理由は、従来の固定的な優先処理技術ではネットワークの多様化による複雑なトラフィックの変動に対応できないため、十分な速度でのパケット伝送を提供できず、特定のコンピュータシステム及びモバイル端末上のネットワークアプリケーションが処理待ちの状態になってしまうことが予想されるためである。
関連する技術として、特開2001−197108号公報(特許文献2)に複数トランスポートストリーム多重化装置が開示されている。
この従来技術では、複数のトランスポートストリーム(TS)を周期フレーム構造にパケット単位で時分割多重する多重化装置において、最大入力パケット数と実際に入力されたパケット数をTS毎に比較し、実際に入力されたパケット数が最大入力パケット数を越えている場合には、そのTSについて、越えた分のパケット、あるいはそのフレーム期間中に送られた全パケットの優先度を下げる処理を行う。
また、特開2001−086157号公報(特許文献3)にデータグラム転送方法、トラヒック観測装置、ヘッダーフィールド挿入装置、トラヒック監視装置、データグラム転送装置及びデータグラム転送システムが開示されている。
この従来技術では、トラヒック観測装置が、重み値をデータグラムのヘッダに書込む。すなわち、ヘッダに優先情報を付加する。
また、特開2001−186138号公報(特許文献4)に優先度制御機能付きATMスイッチが開示されている。
この従来技術では、優先度毎にバッファが設けられている。
また、特開2004−297775号公報(特許文献5)にパケット中継装置が開示されている。
この従来技術では、パケット分類ルール記憶手段に、IPアドレス、ポート番号、及びクラス(優先度の高/低)というフィールドを持つルールが定義されている。
更に、特開平06−232904号公報(特許文献6)にルータにおける優先度制御方式が開示されている。
この従来技術では、優先度に対応して設けられた中継処理優先度キューが並列に接続されている。
特開2003−152772号公報 特開2001−197108号公報 特開2001−086157号公報 特開2001−186138号公報 特開2004−297775号公報 特開平06−232904号公報
第1の問題点に関しては、各IPサブネット間をつなぐルータとしての位置にルータ機能を兼ねたIPパケット高速処理装置を配置することによって、特定のIPアドレスとポート番号のペアのパケットを優先的に伝送処理することで解決される。当該IPパケット高速処理装置は一定時間T秒間に受信したパケット数に応じて動的に優先順位を決定することで、ある一定以上の大量のパケットが流れている場合は当該パケットを優先的に伝送処理する仕組みを持っているので、あるサブネットのコンピュータシステムのアプリケーションから他のサブネットのコンピュータシステムのアプリケーションに対して非常に大量のIPパケットが送出された場合でも優先的に伝送処理することが可能である。
第2の問題点に関しては、IPパケット化された音声又は動画データをIPパケット高速処理装置に特定のIPアドレスとポート番号の組として優先処理させるように設定しておくことによって、あるサブネット上にある音声又は動画データベースと別のサブネット上にある利用者端末間で円滑にデータ転送を実現することが可能である。
本発明の目的は、ネットワークで繋がっている複数のコンピュータシステム間でやり取りされるパケットを効率よく伝送する高速処理装置を提供することである。
本発明の他の目的は、ネットワーク内に存在し、パケット間の優先順位付けを一定時間内の入力パケット数の重みを加味した優先順位を動的にタイムリーに決定し、それぞれの優先順位に1:1に対応する内部のパケット処理手段に処理させ、処理後のパケットも優先順位の順に送信先に送信し、より優先的に処理させたいパケットを効率よく処理して送信先に届ける高速処理装置を提供することである。
本発明の更に他の目的は、リアルタイム性の要求されるネットワークアプリケーションへのデータ転送を円滑に行い、性能低下を防ぐ高速処理装置を提供することである。
本発明の更に他の目的は、ネットワークで繋がっているコンピュータシステム間のパケット送受信をタイムリーに動的に決定される優先順位によって制御する高速処理装置を提供することである。
以下に、[発明を実施するための最良の形態]で使用される番号を括弧付きで用いて、課題を解決するための手段を説明する。これらの番号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]との対応関係を明らかにするために付加されたものである。但し、それらの番号を、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明の高速処理装置(100)は、パケット種別(アドレス,ポート番号)の組を優先順位の順にレベル分けして保持するレベル管理テーブル(30)と、入力パケット用キュー(10)からパケットを取得し、パケットのパケット種別(アドレス,ポート番号)の組を解析し、レベル管理テーブル(30)の情報を基に、組の優先順位に一定計測時間での受信パケット数の重みを加味して優先順位を決定し、パケットに優先順位のレベルを示すレベルヘッダを付加するヘッダ解析部(20)と、ヘッダ解析部(20)から入力されたパケットをレベルに応じて処理するパケット処理部(40)とを具備する。アドレスの例として、IPアドレスがある。
パケット処理部(40)は、優先順位のレベル毎に存在し、レベル順に直列に設けられ、自身のレベルのレベルヘッダが付加されたパケットを処理する場合がある。
パケット処理部(40)は、入力されたパケットのレベルヘッダを参照して自身のレベルのパケットかどうかを判定し、自身のレベルのパケットでなければ他のレベルのパケット処理部(40)へのパケットと判断してパケットを処理せず通過させ、自身のレベルのパケットであれば演算処理用バッファ(42)に格納する入力パケット確認部(41)と、ルーティングテーブル(60)を参照して、演算処理用バッファ(42)に格納されたパケットの送信先を判定するデータ演算部(43)と、データ演算部(43)から取得したパケットを格納する出力パケット用キュー(44)とを具備する場合がある。
本発明の高速処理装置(100)は、レベル順に、出力パケット用キュー(44)の中に入っているパケットを取得し、レベル管理テーブル(30)の情報を基に、出力されるパケットに送受信用ヘッダを付加して出力するパケット送信部(50)を更に具備する場合がある。送受信用ヘッダの例として、IP/TCP(Transmission Control Protocol)ヘッダがある。
本発明の高速処理方法は、(a)入力パケット用キュー(10)に入ったパケットに対して、パケットのパケット種別(アドレス,ポート番号)の組を解析し、パケット種別(アドレス,ポート番号)の組を優先順位の順にレベル分けして保持するレベル管理テーブル(30)の情報を基に、組の優先順位に一定計測時間での受信パケット数の重みを加味して優先順位を決定し、パケットに優先順位のレベルを示すレベルヘッダを付加するステップと、(b)パケットをレベルに応じて処理するステップとを具備する。
(a)ステップは、(a1)レベル管理テーブル(30)に格納されている(アドレス,ポート番号)の優先順位がN個の(アドレス,ポート番号)の組に対してそれぞれP_1>P_2>…>P_Nとして、優先順位P_iとP_(i+1)(但し、i=1〜N−1、P_i>P_(i+1))を持つそれぞれの組(アドレス,ポート番号)のパケットに対して一定計測時間毎の各優先順位のパケット受信数の統計情報を取るステップと、(a2)優先順位P_iとP_(i+1)の一定計測時間内での受信パケット総数をそれぞれN(P_i)、N(P_(i+1))として、N(P_(i+1))=>2・N(P_i)になった場合、P_iとP_(i+1)の優先順位の上下関係が逆転するという規則に従って優先順位P_1〜P_Nのパケット間の優先順位の順序変更を行うステップと、(a3)一定計測時間毎にその都度決定した(アドレス,ポート番号)の組の間の優先順位についてのレベルヘッダを送受信用ヘッダに付加して作成したパケットをパケット処理部(40)に渡すステップとを具備する場合がある。
(b)ステップは、(b1)パケット処理部(40)が優先順位のレベル毎に存在し最高位のレベル1から最下位のレベルNまでのレベル順に直列に設けられており、最高位のレベル1のパケット処理部(40)に、レベルヘッダが付加されたパケットを入力してパケット処理を開始するステップと、(b2)各レベルのパケット処理部(40)が、入力されたパケットのレベルヘッダを参照して自身のレベルのパケットかどうかを判定し、自身のレベルのパケットでなければ他のレベルのパケット処理部(40)へのパケットと判断してパケットを処理せず通過させ、自身のレベルのパケットであればルーティングテーブル(60)を参照して、パケットの送信先を判定して各レベルのパケット処理部(40)の出力パケット用キュー(44)に格納するステップと、(b3)レベル順に、各レベルのパケット処理部(40)の出力パケット用キュー(44)の中に入っているパケットを取り出して出力するステップと
を具備する場合がある。
本発明のプログラムは、上記の高速処理方法をコンピュータに実行させる。
第1の効果は、ネットワークのトランザクションの増大によって多様なパケットが混在する中でも特定のパケットを優先的に伝送するという点である。その理由は、IPパケット高速処理装置内部に受信パケットを優先処理順に定義したレベル管理テーブルを保持し、特定のパケットを優先的に送信先に送るように処理する仕組みを提供しているためである。
第2の効果は、パケット間の優先順位を動的に最適化し、優先処理したいパケットを効率よく伝送する点である。その理由は、当該IPパケット高速処理装置が一定期間で受信パケットの統計を取り、その期間内に受信したパケット間に、所定の規則にしたがって優先順位を動的にタイムリーに決定する仕組みを提供しているからである。
第3の効果は、指定したネットワークアプリケーションの性能低下を防ぐことができる点である。その理由は、当該IPパケット高速処理によって特定のIPパケットを指定して優先処理させることにより、あるコンピュータシステム上のネットワークアプリケーションにおけるパケット送受信を迅速に行わせることができるからである。
本発明は、ネットワークコンピュータシステムのIPパケット処理に関し、特に高速にパケットを処理する機構を持ったモジュールに関する。
以下に本発明の第1実施形態について添付図面を参照して説明する。
図1に示すように、IPパケット高速処理装置100は、入力パケット用キュー10と、IP/TCPヘッダ解析部20と、レベル管理テーブル30と、パケット処理部40と、パケット送信部50を備える。
IPパケット高速処理装置100は、図2に示すように、各IPサブネットワーク間のデータを中継する場所に設置し、ルータとしての機能を持ち、且つ(IPアドレス,ポート番号)でのパケット種別毎の優先処理を行う。
IP/TCPヘッダ解析部20は、入力パケット用キュー10のIPパケットを取り出し、このIPパケットのIPパケット種別(IPアドレス,ポート番号)の組を解析し、レベル管理テーブル30の情報を基に、組の間の優先順位に一定計測時間T秒での受信パケット数の重みを加味して優先順位を決定し、IP/TCPヘッダに1バイトのレベルヘッダを付加してレベル1の処理エリアのパケット処理部40へ渡す。レベルヘッダは、優先順位のレベルを示す。
レベル管理テーブル30は、(IPアドレス,ポート番号)の組を優先処理させたい順にレベル分けして保持し、IP/TCPヘッダ解析部20とパケット送信部50に情報を提供するためのテーブルである。
パケット処理部40(40−i、i=1〜N:Nはレベル数)は、優先順位の各レベル単位で存在し、入力されたパケットを各レベルそれぞれについて処理を行う。
パケット送信部50は、レベル1〜レベルNの順で各パケット処理部40の中の出力パケット用のキューの先頭から順にパケットを取り出し、ネットワークに送信する。
次に、図3を参照して、IPパケット高速処理装置100の処理プロセスについて説明する。
(1)ステップS101
入力パケット用キュー10は、ネットワークを介して入力されたパケットを格納する。
(2)ステップS102
IP/TCPヘッダ解析部20は、入力パケット用キュー10に入ったパケットに対して、(IPアドレス,ポート番号)の組に対する優先処理レベルを決定するための処理を開始する。ここで、レベル管理テーブル30に格納されているベースとなる(IPアドレス,ポート番号)の優先順位がN個の(IPアドレス,ポート番号)の組に対してそれぞれP_1>P_2>…>P_Nとする。優先順位P_iとP_(i+1)(但し、i=1〜N−1、P_i>P_(i+1))を持つそれぞれの(IPアドレス,ポート番号)の組のパケットに対して一定計測時間T秒毎の各優先順位のパケット受信数の統計情報を取る。
(3)ステップS103
IP/TCPヘッダ解析部20は、優先順位P_iとP_(i+1)の一定計測時間T秒内での受信パケット総数をそれぞれN(P_i)、N(P_(i+1))として、N(P_(i+1))=>2・N(P_i)になった場合のみ、P_iとP_(i+1)の優先順位の上下関係が逆転するという規則に従って全優先順位P_1〜P_Nのパケット間の優先順位の順序変更を行う。
(4)ステップS104
IP/TCPヘッダ解析部20は、一定計測時間T秒内で入力パケットの計測を行い、上記の規則に従って、受信パケットに対して優先順位の入れ替えを行う場合がある。そして一定計測時間T秒毎にその都度決定した(IPアドレス,ポート番号)の組の間の優先順位についてのレベルヘッダをIP/TCPヘッダに付加して作成したパケットをレベル1のパケット処理部40に渡す。
(5)ステップS105
最高位のレベル1から最下位レベルのレベルNまでのパケット処理部40は、順次、各レベルでのパケット処理を行う。各レベルのパケット処理部40で処理されたパケットは各レベルのパケット処理部40の出力パケット用キューに格納され送信待ち状態になっている。
(6)ステップS106
パケット送信部50は、レベル1、レベル2、…、レベルNの順で各レベルのパケット処理部40の出力パケット用キューをサーチして、その順序でキューの中に入っているパケットを取り出し、ネットワークに送信する。
(7)ステップS107
全てのパケットを送信し終わったパケット送信部50はIP/TCPヘッダ解析部20に対して待機状態を解除することで新たなIPパケットの入力処理を可能にする。
次に、IP/TCPヘッダ解析部20の内部構成の例について説明する。
図4に示すように、IP/TCP解析部20は、入力パケットカウンタ21、優先レベル設定部22、パケット数統計部23、優先レベル処理部24を備える。なお、図4において、破線の矢印は情報の提供を示す。実線の矢印はパケットの流れを示す。
入力パケットカウンタ21は、入力パケット用キュー10からIPパケットを取得し、優先レベル設定部22に渡す。
優先レベル設定部22は、IPパケットに対して、優先レベルをヘッダに付加し、パケット処理部40へと渡す。
パケット数統計部23は、入力パケットカウンタ21で計測した各(IPアドレス,ポート番号)の組の受信数情報を、図5に示すように、それぞれのパケットについて一定計測時間T秒内に受信した総数として統計していく。
パケット数統計部23は、一定時間T秒が経過すると、優先レベル処理部24に計測時間T秒内での各IPパケットの統計情報の通知を行う。
優先レベル処理部24は、統計情報の通知を受けると、レベル管理テーブル30からのデフォルトの固定的な初期優先順位と計測時間T秒内での各IPパケットの受信パケット数の情報を基に、全ての(IPアドレス,ポート番号)の組のパケット統計情報とパケット数閾値を比較し、ある(IPアドレス,ポート番号)の組のパケット統計情報が閾値を超えている場合は、優先レベルを最高位に繰り上げるという処置を施しながら(IPアドレス,ポート番号)の全組の間で動的な優先順位の決定を行う。但し、複数の(IPアドレス,ポート番号)の組でパケット統計情報が閾値を超えている場合は初期優先順位の順に最高位から優先レベルの順序付けをされるものとする。
優先レベル処理部24で決定された優先順位は優先レベル設定部22に渡される。優先レベル設定部22では入力IPパケットの(IPアドレス,ポート番号)の組に対応する優先レベルが1バイトの優先順位の数字のヘッダとしてIPパケットの先頭に付加され、レベルヘッダを付加された各IPパケットは外部のパケット処理部40へと渡される。
次に、図6を参照して、IP/TCPヘッダ解析部20の動作について説明する。
(1)ステップS201
入力パケットカウンタ21は、入力パケット用キュー10からIPパケットを取得し、優先レベル設定部22に渡す。
(2)ステップS202
優先レベル設定部22は、IPパケットに対して、優先レベルをヘッダに付加し、パケット処理部40へと渡す。
(3)ステップS203
パケット数統計部23が、入力パケットカウンタ21で計測した各(IPアドレス,ポート番号)の組の受信数情報を、図5に示すように、それぞれのパケットについて一定計測時間T秒内に受信した総数として統計していく。
(4)ステップS204
パケット数統計部23は、一定時間T秒が経過すると、優先レベル処理部24に計測時間T秒内での各IPパケットの統計情報の通知を行う。
(5)ステップS205
優先レベル処理部24は、統計情報の通知を受けると、レベル管理テーブル30からのデフォルトの固定的な初期優先順位と計測時間T秒内での各IPパケットの受信パケット数の情報を基に、全ての(IPアドレス,ポート番号)の組のパケット統計情報とパケット数閾値を比較する。すなわち、閾値を超えている(IPアドレス,ポート番号)の組の有無を確認する。
(6)ステップS206
優先レベル処理部24は、ある(IPアドレス,ポート番号)の組のパケット統計情報が閾値を超えている場合は、複数の(IPアドレス,ポート番号)の組でパケット統計情報が閾値を超えているか確認する。
(7)ステップS207
優先レベル処理部24は、複数の(IPアドレス,ポート番号)の組でパケット統計情報が閾値を超えている場合は、初期優先順位の順に最高位から優先レベルの順序付けを行う。
(8)ステップS208
優先レベル処理部24は、優先レベルを最高位に繰り上げるという処置を施しながら(IPアドレス,ポート番号)の全組の間で動的な優先順位の決定を行う。
(9)ステップS209
優先レベル処理部24で決定された優先順位は優先レベル設定部22に渡される。優先レベル設定部22は、入力IPパケットの(IPアドレス,ポート番号)の組に対応する優先レベルを、1バイトの優先順位の数字のヘッダ(レベルヘッダ)としてIPパケットの先頭に付加し、レベルヘッダを付加された各IPパケットを外部のパケット処理部40へ渡す。
次に、レベル管理テーブル30の例について説明する。
図7に示すように、レベル管理テーブル30は、IPアドレスとポート番号の組に対する処理の初期優先順位を定義する。また、各(IPアドレス、ポート番号)の組の一定計測時間T秒内での受信パケット総数の閾値を定義している。各優先順位のパケット総数の閾値は一つ上位の優先順位のパケット総数の閾値の2倍となるように定義されている。各(IPアドレス,ポート番号)毎の当該閾値は当該優先順位と共にIP/TCPヘッダ解析部20の優先レベル処理部24に渡され、パケット毎の動的な優先レベル決定の際に使用される。
次に、パケット処理部40の内部構成の例について説明する。
図8に示すように、パケット処理部40は、入力パケット確認部41と、演算処理用バッファ42と、データ演算部43と、出力パケット用キュー44を備える。なお、図8において、破線の矢印は情報の提供を示す。実線の矢印はパケットの流れを示す。
入力パケット確認部41は、各パケット処理部40の中に存在し、IP/TCPヘッダ解析部20又は一つ前のパケット処理部40から渡されたIPパケットを入力パケットのレベルヘッダを確認して自身の処理レベルのパケットかどうかを判定し、もしそうであればデータを取り出して演算処理用バッファ42に格納し、そうでなければ次の一段低い処理レベルのパケット処理部40のパケットと判断して次のパケット処理部40に渡す。
データ演算部43は、各パケット処理部40の中に存在し、入力パケット確認部41から取得したパケットに関してルーティングテーブル60を参照して送信先決定の処理を行い、順次処理済のパケットを出力パケット用キュー44に格納する。ルーティングテーブル60は、パケットの配送先に関する経路情報である。
次に、図9を参照して、各パケット処理部40でのパケット処理について説明する。
(1)ステップS301
入力パケット確認部41は、各レベルのパケット処理部40に渡されたパケットに対して、パケットレベルヘッダのチェックを行い、自身の処理レベルのパケットかどうかを判定する。自身の処理レベルのパケットであればパケット演算部43に渡す。
(2)ステップS302
パケット演算部43は、入力パケット確認部41から取得したパケットに関してルーティングテーブル60を参照してパケットのルーティング処理を行い、当該処理後にパケット処理部40の出力パケット用キュー44に格納する。
(3)ステップS303
入力パケット確認部41は、自身の処理レベルのパケットでなければ、より優先順位の低いレベルのパケットであると判断して、次のパケット処理部40に渡すために当該パケットを次の処理レベルのパケット処理部40の入力パケット確認部41に渡す。
なお、本発明のIPパケット高速処理装置100の各部の動作は、本発明の高速処理方法を規定したプログラムによりコンピュータに実行させることも可能である。
最後に、本発明のIPパケット高速処理装置100の特徴について詳述する。
本発明のIPパケット高速処理装置100は、(IPアドレス,ポート番号)の組を優先処理させたい順にレベル分けして保持したレベル管理テーブル30から取得した情報を基に、一定計測時間T秒毎に受信パケット数の重みを加味してIPパケット間の優先順位を決定し、IP/TCPヘッダの代わりにレベルヘッダをデータに付加してパケット処理部40へ渡すIP/TCPヘッダ解析部20を有する点を特徴とする。
また、本発明のIPパケット高速処理装置100は、入力パケット確認部41、演算処理用バッファ42、データ演算部43を含むパケット処理部40がIPパケットの優先処理レベル毎に用意され、優先処理レベルの高いパケットが早く処理されるようレベル順にそれぞれ直列に並び、各パケット処理部40が当該パケット処理部40に割り当てられた優先処理レベルのレベルヘッダの付加されたIPパケットのみを処理する機構を有する点を特徴とする。
また、本発明のIPパケット高速処理装置100は、入力パケットのレベルヘッダが自身の処理レベルのパケットかどうかを判定し、そうであれば演算処理用バッファ42に格納し、そうでなければ次の一つ低い優先処理レベルのパケット処理部40へのパケットとみなしてパケットを処理せず通過させるための入力パケット確認部41、及び入力パケット確認部41から取り込まれたデータを一時的に格納する演算処理用バッファ42、そしてルーティングテーブル60を参照してパケットの送信先を判定処理し、送信処理済のパケットを出力パケット用キュー44に格納するデータ演算部43を含むパケット処理部40を有する点を特徴とする。
更に、本発明のIPパケット高速処理装置100は、優先処理レベルの高いパケットの格納される出力パケット用キュー44から順にサーチして、その順序でキューの中に入っているパケットを取り出し、レベル管理テーブル30の情報を基に出力パケットにIP/TCPヘッダを付加してネットワークに送出するパケット送信部50を有する点を特徴とする。
以上のように、従来は、IPネットワーク通信環境では優先性の低いIPプロトコルのパケットの受信処理中に当該パケットよりも優先性の高いIPプロトコルのパケットが送信されてきても、当該優先性の高いパケットを効率的に優先処理されないため、優先性の高いIPプロトコルのパケット処理を必要とするコンピュータシステム上のアプリケーションのスループットが低下するという課題があった。
そこで、図4に示すように、各IPサブネット間をつなぐルータとしての位置にルータ機能を兼ねたIPパケット高速処理装置100を配置することによって特定のIPアドレスとポート番号のペアのパケットを優先的に伝送処理する。また、当該IPパケット高速処理装置100は一定時間T秒間に受信したパケット数に応じて動的に優先順位を決定することで、ある一定以上の大量のパケットが流れている場合は当該パケットを優先的に伝送処理する仕組みを持っているので、あるサブネットのコンピュータシステムのアプリケーションから他のサブネットのコンピュータシステムのアプリケーションに対して非常に大量のIPパケットが送出された場合でも優先的に伝送処理することで課題を解決する。
図1は、IPパケット高速処理装置の内部モジュール構成を示した図である。 図2は、IPパケット高速処理装置の設置と運用形態を示した図である。 図3は、IPパケット高速処理装置の処理プロセスを示したフローチャートである。 図4は、IP/TCPヘッダ解析部の内部構成を示した図である。 図5は、一定計測時間T秒での受信パケット数の推移の様子を示した図である。 図6は、IP/TCPヘッダ解析部の動作を示したフローチャートである。 図7は、レベル管理テーブルの内部構成を示した図である。 図8は、各パケット処理部の内部構成を示した図である。 図9は、各パケット処理部でのパケット処理を示したフローチャートである。
符号の説明
10… 入力パケット用キュー
20… IP/TCPヘッダ解析部
21… 入力パケットカウンタ
22… 優先レベル設定部
23… パケット数統計部
24… 優先レベル処理部
30… レベル管理テーブル
40… パケット処理部
41… 入力パケット確認部
42… 演算処理用バッファ
43… データ演算部
44… 出力パケット用キュー
50… パケット送信部
60… ルーティングテーブル
100… IPパケット高速処理装置

Claims (6)

  1. 入力パケット用キューに入ったパケットに対して、前記パケットのパケット種別(アドレス、ポート番号)の組を解析する手段と、
    前記パケット種別(アドレス、ポート番号)の組を優先順位の順にレベル分けして保持するレベル管理テーブルの情報を基に、前記パケット種別(アドレス、ポート番号)の組の優先順位に一定計測時間での受信パケット数の重みを加味して優先順位を決定する手段と、
    前記レベル管理テーブルに格納されている(アドレス、ポート番号)の優先順位がN個の(アドレス、ポート番号)の組に対して、それぞれP_1>P_2>…>P_Nとして、優先順位P_iとP_(i+1)(i=1〜N−1、P_i>P_(i+1))を持つそれぞれの組(アドレス、ポート番号)のパケットに対して一定計測時間毎の各優先順位のパケット受信数の統計情報を取る手段と、
    優先順位P_iとP_(i+1)の一定計測時間内での受信パケット総数をそれぞれN(P_i)、N(P_(i+1))として、N(P_(i+1))=>2・N(P_i)になった場合、P_iとP_(i+1)の優先順位の上下関係が逆転するという規則に従って、優先順位P_1〜P_Nのパケット間の優先順位の順序変更を行う手段と、
    一定計測時間毎に、その都度決定した(アドレス、ポート番号)の組の間の優先順位のレベルを示すレベルヘッダを、前記パケットの送受信用ヘッダに付加する手段と
    前記パケットを優先順位のレベルに応じて処理する手段と
    を具備する
    高速処理装置。
  2. 請求項1に記載の高速処理装置であって、
    前記パケットを優先順位のレベルに応じて処理する際、優先順位のレベル毎に最高位のレベル1から最下位のレベルNまでのレベル順に直列に設けられたパケット処理部のうち、最高位のレベル1のパケット処理部に、レベルヘッダが付加されたパケットを入力してパケット処理を開始する手段と、
    各レベルのパケット処理部毎に、入力されたパケットのレベルヘッダを参照して、自身のレベルのパケットかどうかを判定する手段と、
    自身のレベルのパケットでなければ、他のレベルのパケット処理部へのパケットと判断してパケットを処理せず通過させる手段と、
    自身のレベルのパケットであれば、ルーティングテーブルを参照して、パケットの送信先を判定して、自身の出力パケット用キューに格納する手段と、
    レベル順に、各出力パケット用キューに格納されているパケットを取り出して出力する手段と
    を更に具備する
    高速処理装置。
  3. 計算機により実施される高速処理方法であって、
    入力パケット用キューに入ったパケットに対して、前記パケットのパケット種別(アドレス、ポート番号)の組を解析することと、
    前記パケット種別(アドレス、ポート番号)の組を優先順位の順にレベル分けして保持するレベル管理テーブルの情報を基に、前記パケット種別(アドレス、ポート番号)の組の優先順位に一定計測時間での受信パケット数の重みを加味して優先順位を決定することと、
    前記レベル管理テーブルに格納されている(アドレス、ポート番号)の優先順位がN個の(アドレス、ポート番号)の組に対して、それぞれP_1>P_2>…>P_Nとして、優先順位P_iとP_(i+1)(i=1〜N−1、P_i>P_(i+1))を持つそれぞれの組(アドレス、ポート番号)のパケットに対して一定計測時間毎の各優先順位のパケット受信数の統計情報を取ることと、
    優先順位P_iとP_(i+1)の一定計測時間内での受信パケット総数をそれぞれN(P_i)、N(P_(i+1))として、N(P_(i+1))=>2・N(P_i)になった場合、P_iとP_(i+1)の優先順位の上下関係が逆転するという規則に従って、優先順位P_1〜P_Nのパケット間の優先順位の順序変更を行うことと、
    一定計測時間毎に、その都度決定した(アドレス、ポート番号)の組の間の優先順位のレベルを示すレベルヘッダを、前記パケットの送受信用ヘッダに付加することと
    前記パケットを優先順位のレベルに応じて処理することと
    を含む
    高速処理方法。
  4. 請求項3に記載の高速処理方法であって、
    前記パケットを優先順位のレベルに応じて処理する際、優先順位のレベル毎に最高位のレベル1から最下位のレベルNまでのレベル順に直列に設けられたパケット処理部のうち、最高位のレベル1のパケット処理部に、レベルヘッダが付加されたパケットを入力してパケット処理を開始することと、
    各レベルのパケット処理部毎に、入力されたパケットのレベルヘッダを参照して、自身のレベルのパケットかどうかを判定することと、
    自身のレベルのパケットでなければ、他のレベルのパケット処理部へのパケットと判断してパケットを処理せず通過させることと、
    自身のレベルのパケットであれば、ルーティングテーブルを参照して、パケットの送信先を判定して、自身の出力パケット用キューに格納することと、
    レベル順に、各出力パケット用キューに格納されているパケットを取り出して出力することと
    を更に含む
    高速処理方法。
  5. 入力パケット用キューに入ったパケットに対して、前記パケットのパケット種別(アドレス、ポート番号)の組を解析するステップと、
    前記パケット種別(アドレス、ポート番号)の組を優先順位の順にレベル分けして保持するレベル管理テーブルの情報を基に、前記パケット種別(アドレス、ポート番号)の組の優先順位に一定計測時間での受信パケット数の重みを加味して優先順位を決定するステップと、
    前記レベル管理テーブルに格納されている(アドレス、ポート番号)の優先順位がN個の(アドレス、ポート番号)の組に対して、それぞれP_1>P_2>…>P_Nとして、優先順位P_iとP_(i+1)(i=1〜N−1、P_i>P_(i+1))を持つそれぞれの組(アドレス、ポート番号)のパケットに対して一定計測時間毎の各優先順位のパケット受信数の統計情報を取るステップと、
    優先順位P_iとP_(i+1)の一定計測時間内での受信パケット総数をそれぞれN(P_i)、N(P_(i+1))として、N(P_(i+1))=>2・N(P_i)になった場合、P_iとP_(i+1)の優先順位の上下関係が逆転するという規則に従って、優先順位P_1〜P_Nのパケット間の優先順位の順序変更を行うステップと、
    一定計測時間毎に、その都度決定した(アドレス、ポート番号)の組の間の優先順位のレベルを示すレベルヘッダを、前記パケットの送受信用ヘッダに付加するステップと
    前記パケットを優先順位のレベルに応じて処理するステップと
    を計算機に実行させるための
    プログラム。
  6. 請求項5に記載のプログラムであって、
    前記パケットを優先順位のレベルに応じて処理する際、優先順位のレベル毎に最高位のレベル1から最下位のレベルNまでのレベル順に直列に設けられたパケット処理部のうち、最高位のレベル1のパケット処理部に、レベルヘッダが付加されたパケットを入力してパケット処理を開始するステップと、
    各レベルのパケット処理部毎に、入力されたパケットのレベルヘッダを参照して、自身のレベルのパケットかどうかを判定するステップと、
    自身のレベルのパケットでなければ、他のレベルのパケット処理部へのパケットと判断してパケットを処理せず通過させるステップと、
    自身のレベルのパケットであれば、ルーティングテーブルを参照して、パケットの送信先を判定して、自身の出力パケット用キューに格納するステップと、
    レベル順に、各出力パケット用キューに格納されているパケットを取り出して出力するステップと
    を更に計算機に実行させるための
    プログラム。
JP2006348979A 2006-12-26 2006-12-26 高速処理装置、高速処理方法、及びプログラム Expired - Fee Related JP4835934B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006348979A JP4835934B2 (ja) 2006-12-26 2006-12-26 高速処理装置、高速処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006348979A JP4835934B2 (ja) 2006-12-26 2006-12-26 高速処理装置、高速処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2008160626A JP2008160626A (ja) 2008-07-10
JP4835934B2 true JP4835934B2 (ja) 2011-12-14

Family

ID=39661011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006348979A Expired - Fee Related JP4835934B2 (ja) 2006-12-26 2006-12-26 高速処理装置、高速処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP4835934B2 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3151103B2 (ja) * 1994-03-30 2001-04-03 株式会社日立製作所 通信システムおよび通信方法
US5896379A (en) * 1996-08-26 1999-04-20 Motorola, Inc. Network node for packet switching with selective data processing and method therefor
JP3581056B2 (ja) * 1999-09-13 2004-10-27 日本電信電話株式会社 トラヒック観測装置、トラヒック監視装置、データグラム転送装置及びデータグラム転送システム
JP3719206B2 (ja) * 2001-12-19 2005-11-24 日本電信電話株式会社 パケット転送装置とパケットの転送優先制御方法およびその処理プログラムと記録媒体
JP2003198616A (ja) * 2001-12-27 2003-07-11 Mitsumi Electric Co Ltd 伝送方法及びその装置
JP4057486B2 (ja) * 2003-07-07 2008-03-05 三菱電機株式会社 Lan伝送装置

Also Published As

Publication number Publication date
JP2008160626A (ja) 2008-07-10

Similar Documents

Publication Publication Date Title
US7130903B2 (en) Multi-layer class identifying communication apparatus with priority control
JP5895202B2 (ja) 中継器、中継器の制御方法、およびコンピュータプログラム
JP5660198B2 (ja) ネットワークシステム、及びスイッチ方法
US10637792B2 (en) Real-time analysis of quality of service for multimedia traffic in a local area network
CN108243116B (zh) 一种流量控制方法及交换设备
CN114095457A (zh) 基于流的共享缓冲区资源管理
WO2020022209A1 (ja) ネットワーク制御装置及びネットワーク制御方法
US9942161B1 (en) Methods and systems for configuring and updating session-based quality of service for multimedia traffic in a local area network
CN118158173A (zh) 面向可编程网络时延保障的数据包级传输优先级自适应调整方法
CN103281257A (zh) 一种协议报文处理方法和设备
CN112737940A (zh) 一种数据传输的方法和装置
US9225650B2 (en) Network system, gateway, and packet delivery method
JP4382122B2 (ja) 中継装置および帯域制御プログラム
JP2003244223A (ja) 輻輳制御方法、エッジ型パケット転送装置及びネットワーク
JP4835934B2 (ja) 高速処理装置、高速処理方法、及びプログラム
JP4849270B2 (ja) コンピュータ装置
JP7048149B2 (ja) ネットワークシステム、制御装置、処理規則設定方法及びプログラム
JP5492709B2 (ja) 帯域制御方法及び帯域制御装置
US7961612B2 (en) Limiting transmission rate of data
JP2006197473A (ja) ノード
EP3959847B1 (en) Computer-implemented method for adapting at least one predefined frame delay
KR101003505B1 (ko) 망 부하에 따른 트래픽의 동적 제어방법 및 그 장치
JP2009049458A (ja) オーバレイトラヒック検出システム及びトラヒック監視・制御システム
CN117692347B (zh) 服务质量QoS的控制方法和设备
JP4630231B2 (ja) パケット処理システム、パケット処理方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110816

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110901

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110914

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4835934

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees