JP2009301277A - スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 - Google Patents
スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 Download PDFInfo
- Publication number
- JP2009301277A JP2009301277A JP2008154353A JP2008154353A JP2009301277A JP 2009301277 A JP2009301277 A JP 2009301277A JP 2008154353 A JP2008154353 A JP 2008154353A JP 2008154353 A JP2008154353 A JP 2008154353A JP 2009301277 A JP2009301277 A JP 2009301277A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- execution
- protocol processing
- priority
- task
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【解決手段】パケット受信部10でパケットを受信したときに、パケット解析部20でパケットヘッダを解析し、第1セッション管理部30でパケットのプロトコル処理の実行エントリを実行待ち状態とする。さらに、アプリケーションのプロセスを実行する優先度が設定された対応プロセステーブル80及びそのプロセスにより処理されるパケットに対するプロトコル処理を実行する優先度が設定されたプロトコル処理優先度テーブル90を参照する。そして、スケジューラ40で、実行待ち状態となっているプロセス及びプロトコル処理の実行エントリから、最も優先度の高いプロセス又はプロトコル処理の実行エントリを選択し、処理部50でこれを実行する。
【選択図】 図1
Description
即ち、プロトコル処理もプロセスも同様にCPU資源を使用するにも関わらず、あるパケットのプロトコル処理の優先度と、プロトコル処理が完了した他のパケットに対応するプロセスの優先度と、の比較はなされない。また、同様に、かかるプロトコル処理の優先度と、通信を伴わずに独立して実行されるアプリケーションのプロセスの優先度と、の比較もなされない。このため、優先度が低いプロセスにより処理されるパケットに対するプロトコル処理と、優先度が高いプロセスと、が同時に実行待ち状態になった場合、両者の実行順序は全く保証されなかった。従って、優先度の高いプロセスよりも先に、優先度の低いプロセスにより処理されるパケットに対するプロトコル処理にCPU資源が割り当てられ、実行されてしまうことがあった。このため、依然として、優先度の高いプロセスの処理が遅延してしまうという問題は解消されていなかった。
図1は、第1実施例において、本発明のスケジューリング機構を具現化したシステムの全体構成を示す。このシステムは、パケット受信部10,パケット解析部20,第1セッション管理部30,第1スケジューラ40,処理部50,対応セッションテーブル60,対応プロセステーブル70,プロセス優先度テーブル80及びプロトコル処理優先度テーブル90を含む。これらの構成は、少なくともCPU(Central Processing Unit)及びメモリを備えたコンピュータにおいて実現される。そして、これらの構成は、コンピュータで読取可能な記憶媒体に記憶されたスケジューリングプログラムがメモリにロードされることにより実現される。なお、本実施例では、OSとしてLinux2.6を用いた動作環境において、TCP又はUDP(User Datagram Protocol)/IP(Internet Protocol)プロトコルを用いた通信を行う例を用いて説明する。
図6は、初めに通信システムコール(bind,connect,accept等)が発行されてセッションが確立され、セッションとそのセッションで受信するパケットのヘッダ情報とが対応付けられ、その対応関係が対応セッションテーブル60に設定されたときに、第1セッション管理部30で実行される処理を示す。
ステップ3では、プロトコル処理優先度テーブル90に、プロトコル処理の優先度を設定する。このとき、予め設定されているプロセス優先度テーブル80を参照し、プロトコル処理の優先度として、そのプロトコル処理の対象となるパケットを処理するプロセスの優先度と同一の優先度を設定する。
ステップ34では、選択した実行エントリに係るプロトコル処理にCPU資源を割り当てる。
さらに、プロトコル処理完了後、第1スケジューラ40では、当該プロトコル処理の対象となるパケットを処理するプロセスの実行エントリを、実行待ちキューに接続する。こうすることで、次回のCPU資源の割り当てにおいては、プロセスの実行エントリにCPU資源が割り当てられる。
図9は、これらの各構成要素の機能及び処理データの具体例を示す説明図である。まず、通信が確立された時点で、第1セッション管理部30で、セッション1とプロセスA,セッション2とプロセスB及びCを夫々対応付ける。そして、かかる対応関係を、図3のように対応プロセステーブル70に登録する。また、プロセスA,プロセスB及びプロセスC並びにこれらのプロセスにより処理されるパケットに対するプロトコル処理としてのプロトコル処理A,プロトコル処理B及びプロトコル処理Cの実行エントリを夫々生成する。さらに、図4のプロセス優先度テーブル80と同一の優先度を、図5に示すプロトコル処理優先度テーブル90に、対応するプロトコル処理の優先度として設定する。例えば、プロセス優先度テーブル80の「プロセスA」の優先度5を、プロトコル処理優先度テーブル90に、対応する「プロトコル処理A」の優先度として設定する。
次に、本システムにおける第2実施例について説明する。
図11は、第2実施例において、本発明のスケジューリング機構を具現化したシステムの全体構成を示す。第2実施例では、パケット受信部10,パケット解析部20,第2セッション管理部300,第2スケジューラ400,処理部50,対応セッションテーブル60,対応プロセステーブル70及びプロセス優先度テーブル80を含む。
図13は、パケット受信部10においてパケットを受信したときに、パケット解析部20(ステップ51〜52)及び第2セッション管理部300(ステップ53)で実行される処理を示す。
ステップ61では、実行待ちキューに接続された実行エントリ、即ち「Ready」状態又は「Semi-Ready」状態の実行エントリの全てについて、プロセス優先度テーブル80に設定された優先度を比較する。そして、実行待ちキューに接続されている実行エントリの中から、実行エントリに係るプロセスの優先度が最も高い実行エントリを選択する。
ステップ64では、選択した実行エントリに係るプロセスに対応するプロトコル処理にCPU資源を割り当てる。
さらに、プロトコル処理完了後、第2スケジューラ400では、当該実行エントリを「Ready」状態にする。なお、こうすることで、当該実行エントリに対する次回のCPU資源の割り当てにおいては、プロセスにCPU資源が割り当てられる。
20 パケット解析部
30 第1セッション管理部
40 第1スケジューラ
50 処理部
60 対応セッションテーブル
70 対応プロセステーブル
80 プロセス優先度テーブル
90 プロトコル処理優先度テーブル
300 第2セッション管理部
400 第2スケジューラ
Claims (7)
- パケットを受信したときに、そのパケットに対するプロトコル処理のタスクを実行待ち状態とする第1の状態設定ステップと、
アプリケーションのプロセスを実行する優先度及びそのプロセスにより処理されるパケットに対するプロトコル処理を実行する優先度が設定されたテーブルを参照し、実行待ち状態となっているプロセスのタスク及び前記第1の状態設定ステップにより実行待ち状態とされたプロトコル処理のタスクの中から、最も優先度の高いプロセスのタスク又はプロトコル処理のタスクを選択する第1の選択ステップと、
前記第1の選択ステップにより選択されたタスクを優先して実行する第1の実行ステップと、
をコンピュータに実現させることを特徴とするスケジューリングプログラム。 - 前記プロトコル処理の優先度は、そのプロトコル処理の対象となるパケットを処理するアプリケーションのプロセスについて予め設定された優先度と同一であることを特徴とする請求項1記載のスケジューリングプログラム。
- 前記第1の実行ステップは、実行したタスクがプロトコル処理のタスクであるときには、そのプロトコル処理が完了した後に、そのプロトコル処理の対象となるパケットを処理するアプリケーションのプロセスのタスクを実行待ち状態とすることを特徴とする請求項1又は請求項2に記載のスケジューリングプログラム。
- 前記アプリケーションのプロセスは、受信したパケットを処理するアプリケーションのプロセス及び通信を伴わないアプリケーションのプロセスの両方を含むことを特徴とする請求項1〜請求項3のいずれか1つに記載のスケジューリングプログラム。
- パケットを受信したときに、受信したパケットを処理するアプリケーションのプロセスのタスクを、実行待ち状態且つパケットに対するプロトコル処理を要する状態とする第2の状態設定ステップと、
アプリケーションのプロセスを実行する優先度が設定されたテーブルを参照し、実行待ち状態となっているプロセスのタスクの中から、最も優先度の高いプロセスのタスクを選択する第2の選択ステップと、
前記選択されたタスクが第2の状態設定ステップによりパケットに対するプロトコル処理を要する状態とされているときには、そのタスクに係るプロセスにより処理されるパケットに対してプロトコル処理を実行する一方、前記選択されたタスクがプロトコル処理を要する状態でないときには、そのタスクに係るプロセスを実行する第2の実行ステップと、
をコンピュータに実現させることを特徴とするスケジューリングプログラム。 - パケットを受信したときに、そのパケットに対するプロトコル処理のタスクを実行待ち状態とする第1の状態設定ステップと、
アプリケーションのプロセスを実行する優先度及びそのプロセスにより処理されるパケットに対するプロトコル処理を実行する優先度が設定されたテーブルを参照し、実行待ち状態となっているプロセスのタスク及び前記第1の状態設定ステップにより実行待ち状態とされたプロトコル処理のタスクの中から、最も優先度の高いプロセスのタスク又はプロトコル処理のタスクを選択する第1の選択ステップと、
前記第1の選択ステップにより選択されたタスクを優先して実行する第1の実行ステップと、
をコンピュータが実行することを特徴とするスケジューリング方法。 - パケットを受信したときに、そのパケットに対するプロトコル処理のタスクを実行待ち状態とする第1の状態設定手段と、
アプリケーションのプロセスを実行する優先度及びそのプロセスにより処理されるパケットに対するプロトコル処理を実行する優先度が設定されたテーブルを参照し、実行待ち状態となっているプロセスのタスク及び前記第1の状態設定手段により実行待ち状態とされたプロトコル処理のタスクの中から、最も優先度の高いプロセスのタスク又はプロトコル処理のタスクを選択する第1の選択手段と、
前記第1の選択ステップにより選択されたタスクを優先して実行する第1の実行手段と、
を含んで構成されることを特徴とするスケジューリング装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008154353A JP5262329B2 (ja) | 2008-06-12 | 2008-06-12 | スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008154353A JP5262329B2 (ja) | 2008-06-12 | 2008-06-12 | スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009301277A true JP2009301277A (ja) | 2009-12-24 |
JP5262329B2 JP5262329B2 (ja) | 2013-08-14 |
Family
ID=41548109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008154353A Expired - Fee Related JP5262329B2 (ja) | 2008-06-12 | 2008-06-12 | スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5262329B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11248172B2 (en) | 2019-07-23 | 2022-02-15 | Koppers Delaware, Inc. | Heat treatment process and system for increased pitch yields |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0946373A (ja) * | 1995-07-31 | 1997-02-14 | Nippon Telegr & Teleph Corp <Ntt> | パケット処理方法 |
JP2005217491A (ja) * | 2004-01-27 | 2005-08-11 | Nippon Telegr & Teleph Corp <Ntt> | 受信処理方法/プログラム/プログラム記録媒体、情報処理装置 |
JP2007199848A (ja) * | 2006-01-24 | 2007-08-09 | Yaskawa Electric Corp | 軽量化リアルタイムos |
-
2008
- 2008-06-12 JP JP2008154353A patent/JP5262329B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0946373A (ja) * | 1995-07-31 | 1997-02-14 | Nippon Telegr & Teleph Corp <Ntt> | パケット処理方法 |
JP2005217491A (ja) * | 2004-01-27 | 2005-08-11 | Nippon Telegr & Teleph Corp <Ntt> | 受信処理方法/プログラム/プログラム記録媒体、情報処理装置 |
JP2007199848A (ja) * | 2006-01-24 | 2007-08-09 | Yaskawa Electric Corp | 軽量化リアルタイムos |
Also Published As
Publication number | Publication date |
---|---|
JP5262329B2 (ja) | 2013-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110535813B (zh) | 内核态协议栈与用户态协议栈并存处理方法和装置 | |
JP3382953B2 (ja) | 有限メモリコンピュータシステム上におけるクライアント管理フロー制御方法及び装置 | |
US9264369B2 (en) | Technique for managing traffic at a router | |
US20080301406A1 (en) | System and method for allocating communications to processors in a multiprocessor system | |
US20220261270A1 (en) | Reusing software application containers | |
US9712374B1 (en) | Network services resource management | |
US20080120619A1 (en) | Real time monitoring and tracing of scheduler decisions | |
TW200922246A (en) | Dynamically configuring a router to find the best DHCP server | |
JP2004038758A (ja) | 記憶制御装置、記憶制御装置の制御方法、及びプログラム | |
US20060080457A1 (en) | Computer system and bandwidth control method for the same | |
US8539089B2 (en) | System and method for vertical perimeter protection | |
CN107666474B (zh) | 一种网络报文处理方法、装置及网络服务器 | |
JP2016162266A (ja) | 通信装置及びそのプロセッサ割当方法 | |
CN113722103A (zh) | 加密卡的调用控制方法及通信设备 | |
WO2024159957A1 (zh) | 网络健康探测方法、装置、电子设备及存储介质 | |
US7697434B1 (en) | Method and apparatus for enforcing resource utilization of a container | |
US8442939B2 (en) | File sharing method, computer system, and job scheduler | |
US8375123B2 (en) | Remote session management | |
JP5262329B2 (ja) | スケジューリングプログラム,スケジューリング方法及びスケジューリング装置 | |
JP4415391B2 (ja) | データをネットワークに送信する方法及び装置並びにデータをネットワークから受信する方法及び装置 | |
US7363383B2 (en) | Running a communication protocol state machine through a packet classifier | |
US7693166B2 (en) | Method and apparatus for transmitting data to network and method and apparatus for receiving data from network | |
WO2018127013A1 (zh) | 一种流数据的并发传输方法和装置 | |
US10291717B2 (en) | Prioritizing VDI sessions and redirected devices in software defined networks | |
JP2005217491A (ja) | 受信処理方法/プログラム/プログラム記録媒体、情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110315 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120620 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120712 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130130 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130206 |
|
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: 20130402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130415 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |