JP4079605B2 - Communication control apparatus in multi-process configuration and program therefor - Google Patents

Communication control apparatus in multi-process configuration and program therefor Download PDF

Info

Publication number
JP4079605B2
JP4079605B2 JP2001162949A JP2001162949A JP4079605B2 JP 4079605 B2 JP4079605 B2 JP 4079605B2 JP 2001162949 A JP2001162949 A JP 2001162949A JP 2001162949 A JP2001162949 A JP 2001162949A JP 4079605 B2 JP4079605 B2 JP 4079605B2
Authority
JP
Japan
Prior art keywords
data
processing
processing unit
buffer
storing
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
JP2001162949A
Other languages
Japanese (ja)
Other versions
JP2002351823A (en
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2001162949A priority Critical patent/JP4079605B2/en
Publication of JP2002351823A publication Critical patent/JP2002351823A/en
Application granted granted Critical
Publication of JP4079605B2 publication Critical patent/JP4079605B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はマルチプロセス構成における通信制御装置およびそのためのプログラムに関する。
【0002】
【従来の技術】
従来技術によるパケットの送受信を行う通信制御装置は、通常マルチプロセスを処理するコンピュータからなる。この装置のコンピュータが処理するマルチプロセスには、受信したパケットの処理要求を生成しプールに保存させるI/O処理プロセス、入力装置の操作等によるコマンドの処理要求を生成しプールに保存させるコマンド処理プロセスおよびI/O処理プロセスまたはコマンド処理プロセスが生成しプールに保存させた処理要求のプロセスを実行するプロトコル処理プロセス等がある。一般的なOS(オペレーティングシステム)では、コンピュータのCPUがこれらの処理プロセスを受け付け実行する優先順位は、I/O処理プロセス、プロトコル処理プロセス、コマンド処理プロセスの順になっている。
【0003】
しかるに、この装置は、ネットワークに接続されるアダプタを有する。アダプタは、ネットワークに接続されている他のコンピュータとの間でパケットの送受信を行う機能を有する。この装置はまた、パケットを複数個保存可能なバッファを有する。
この装置において、大量のパケットが受信される状況下では、CPUは高優先順位のI/O処理プロセスを実行することになり、バッファに保存されるパケットが増大し、バッファの空き容量が、入力規制値より小さくなったときアダプタの受信機能は停止し、入力規制解除値より大きくなったときアダプタの受信機能は再開する。また、受信したパケット毎にI/O処理プロセスを実行すると、受信したパケットの処理要求が生成されプールに蓄積される。
【0004】
【発明が解決しようとする課題】
上記装置において、パケットを格納するバッファの空き容量が入力規制値より小さくなると、アダプタの受信機能は停止する。すると、CPUは実行すべき高優先順位のI/O処理プロセスがなくなるので、次に優先順位の高いプロトコル処理プロセスを実行開始する。これによりプールに蓄積されたパケットの処理要求が順次実行される。すると、バッファに保存されたパケットが順次開放されバッファ内に空き領域が増えることになる。このプールに蓄積されたパケットの処理要求を実行するプロトコル処理プロセスが完了する前に、該バッファの空き容量が入力規制解除値より大きくなると、プールに蓄積されているプロトコル処理プロセスの処理要求が滞留しているにも関わらず、アダプタの受信機能が再開される。つまり、プロトコル処理プロセスは実行優先度の高いI/O処理プロセスに実行権を奪われ、CPUはI/O処理プロセスの実行を再開する。
【0005】
このように、CPUはI/O処理プロセスとプロトコル処理プロセスを交互に実行することになり、すなわち、パケットの受信の停止/再開が連続的に発生し、滞留中のプロトコル処理プロセスの実行処理能力オーバー状態から脱出できなくなる。このような場合、これらのI/O処理プロセスおよびプロトコル処理プロセスより優先度の低いコマンド処理プロセス、例えば通信機能を停止させる入力コマンド処理も当然実行不能となり、その結果ハングアップ状態になってしまうという問題が生じる。
【0006】
また、ネットワークストームは、ネットワークに接続された他のコンピュータからこの装置へ第3者が悪意的にパケットを連続送信して来るような場合やこの装置にシステム異常が生じた場合に発生する。このような場合、装置の再起動のため、ネットワークに接続された装置のアダプタを抜き取るか電源を切ることになり、保存したデータが破壊されるなど装置を安定した状態で使用できなくなるという問題が生じる。
【0007】
それゆえ、本発明は上記問題に鑑み、高優先度処理を連続的に実行しなければならない状況下で、低優先度処理を実行可能とし、低優先度処理の実行権が半永久的に回って来なくなることによりハングアップ状態になることを回避することのできるマルチプロセス構成における通信制御装置およびそのためのプログラムを提供することを目的とする。
【0008】
【課題を解決するための手段】
上記目的を達成する本発明のマルチプロセス構成における通信制御装置は、ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、コマンド処理要求とI/O処理要求とをプールするプール処理ユニット、前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プールに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、を備えたことを特徴とする。
また、上記目的を達成する本発明のネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成し保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させる手順、コマンド処理要求と前記I/O処理要求とをプールする手順、前記プールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プールする手順で残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記データの受信を再開させる手順、をコンピュータに実行させることを特徴とするプログラム。
【0009】
上記目的を達成する本発明のマルチプロセス構成における通信制御装置は、ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、コマンド処理要求を生成し該要求を前記プール処理ユニットに保存させるコマンド処理ユニット、前記コマンド処理要求と前記I/O処理要求とをプールするプール処理ユニット、前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プール処理ユニットに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、前記データを格納する前記バッファを有し、該バッファの空き容量が、前記入力規制値より小さくなったか否かを監視し、その監視結果を前記I/O処理ユニットに送るとともに、該空き容量が、前記入力規制解除値より大きくなったか否かを監視し、その監視結果を前記プロトコル処理ユニットに送るバッファ管理ユニット、を備えたことを特徴とする。
【0010】
【発明の実施の形態】
以下、添付図面を参照して本発明の実施の形態について詳細に説明する。
図1は、本発明による一実施形態のマルチプロセス構成における通信制御装置のブロック構成図である。マルチプロセス構成における通信制御装置1は、CPU・メモリからなる処理部10、キーボードやマウスからなる入力装置20、CRTやプリンタからなる出力装置30、磁気ディスクからなる補助記憶装置40、および通信のネットワーク50に接続され、ネットワーク50に接続された他のコンピュータとの間でパケットを送受信するアダプタ60を有する。
【0011】
処理部10は、I/O処理ユニット11、バッファ管理ユニット12、プール処理ユニット13、コマンド処理ユニット14−1、14−2、…、14−n(nは3以上の正の整数)、プロトコル処理ユニット15を有する。
バッファ管理ユニット12は、固定長のパケットを例えば100個格納するバッファを有する。そして、バッファの空き容量が、入力規制値(例えば、バッファ全容量の10パーセント)より小さくなったか否かを監視し、その監視結果をI/O処理ユニット11に送るとともに、バッファの空き容量が、入力規制解除値(例えば、バッファ全容量の50パーセント)より大きくなったか否かを監視し、その監視結果をプロトコル処理ユニット15に送る。ここで、入力規制値と入力規制解除値とは同じ値に設定することもできる。
【0012】
図2はI/O処理ユニットのプロセス内容を示すフローチャートである。図2に示すI/O処理プロセスはI/O処理ユニット11により実行される。先ず、ステップS1で、I/O処理ユニット11は、パケットを受信する。ステップS2で、パケットをバッファ管理ユニット12内のバッファに格納するとともに、パケットが格納されたバッファのアドレス情報を取得する。ステップS3で、パケットが格納されたバッファのアドレス情報を付加したパケットのI/O処理要求を生成しプール処理ユニット13に保存させる。
【0013】
ステップS4で、バッファ管理ユニット12からバッファの空き容量が、入力規制値より小さくなったか否かの監視結果を受け、その監視結果がYESのときS5へ進み、その監視結果がNOのときステップS1に戻る。ステップS5で、アダプタ60によるパケットの受信を停止させ、受信再開の指示を待つ。
コマンド処理ユニット14−1、14−2、…、14−nは、キーボード等からの入力操作を受け、インタプリタによりコンピュータ実行可能なコマンド処理プロセスを生成し、コマンド処理プロセスの実行を要求するコマンド処理要求を生成しこれをプール処理ユニット13に保存させる。このコマンド処理には、ネットワーク50へのアダプタ60が、受信状態か停止状態かをCRTに表示せよというコマンド、アダプタ60の受信を停止せよというコマンド等がある。
【0014】
図3はプール処理ユニットによる処理要求のキュー管理の具体例を示す図である。プール処理ユニット13は、コマンド処理ユニット14−1、14−2、…、14−nが生成したコマンド処理要求A1、A2、…、AnとI/O処理ユニット11が生成したパケットのI/O処理要求B1、B2、…、Bmとを生成された順にQに接続してプールする。パケットのI/O処理要求には、パケットが格納されたバッファのアドレス情報がそれぞれ付加される。
【0015】
図3に示すキュー管理テーブル100には、コマンド処理要求またはI/O処理要求により作成される制御表201を指すポインタのアドレスが格納されている。コマンド処理要求またはI/O処理要求が生成された順に、制御表202、203、…、20kが作成され、Qに接続される。各制御表には、次にQに接続される制御表のアドレスとコマンド処理要求に対応するプロセスまたはI/O処理要求に対応するパケット情報のバッファアドレスが格納される。
【0016】
図4はプロトコル処理ユニットのプロセス内容を示すフローチャートである。図4に示すプロトコル処理プロセスは、プロトコル処理ユニット15により実行される。先ず、ステップS11で、プール処理ユニット13にプールされた処理要求を順次取り出す。処理要求が、コマンド処理要求の場合は、生成されたコマンド処理プロセスを取り出し、処理要求が、I/O処理要求の場合は、バッファ管理部12に格納されたパケットを読み出す。
【0017】
ステップS12で、取り出した処理要求のプロセスを実行する。処理要求が、コマンド処理要求の場合は、生成されたコマンド処理プロセスを実行し、処理要求が、I/O処理要求の場合は、バッファ管理部12からプロトコルに従い読み出したパケットをインタプリタでコンピュータ実行可能なI/O処理プロセスに生成し、そのプロセスを実行する。
【0018】
ステップS13で、バッファ管理ユニット12からバッファの空き容量が予め設定された入力規制解除値より大きくなったか否かの監視結果を受け、その監視結果がYESでかつプール処理ユニット13に残されたコマンド処理要求とI/O処理要求の和が予め設定された受信再開規制値より小さくなったか否かを検出し、その結果がYESのとき図2のステップS1に進み、I/O処理ユニット11にパケットの受信を再開させ、その結果がNOのときステップS11に戻る。上記コマンド処理要求とI/O処理要求の和は、図3に示すキュー管理テーブル100が管理する制御表201、202、203、…、20kの数に等しい。受信再開規制値は、コマンド処理の緊急度、システムのハードウェア環境、特にCPUの処理速度等に応じて適宜設定される。コマンド処理を最も早く更新可能にするには、1に設定することが望ましい。
【0019】
また、本発明のプログラムは、図2に示すI/O処理ユニットのプロセス内容および図4に示すプロトコル処理ユニットのプロセス内容をコンピュータに実行させるものであり、処理部10のメモリに格納されCPUにより実行される。
(付記1) ネットワークを介してデータの送受信を行う優先度の高いI/O処理プロセス、該I/O処理プロセスより優先度の低いプロトコル処理プロセスおよびコマンド処理プロセスを有するマルチ構成における通信制御装置において、
前記データを格納するバッファの空き容量が不足になったとき、データの受信を停止し、前記バッファの空き容量が十分に回復し、かつ前記プロトコル処理プロセスに対するコマンド処理およびI/O処理の処理要求数が規制値より小になったとき、受信を再開するI/O処理ユニットを備えたことを特徴とする通信制御装置。
【0020】
(付記2) ネットワークを介してデータの送受信を行う優先度の高いI/O処理プロセス、該I/O処理プロセスより優先度の低いプロトコル処理プロセスおよびコマンド処理プロセスを有するマルチ構成における通信制御装置において、
前記データを格納するバッファの空き容量が不足になったとき、データの受信を停止し、前記バッファの空き容量が十分に回復し、かつ前記プロトコル処理プロセスに対するコマンド処理およびI/O処理の処理要求数が規制値より小になったとき、受信を再開する手順を、
をコンピュータに実行させることを特徴とするプログラム。
【0021】
(付記3) ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、
コマンド処理要求とI/O処理要求とをプールするプール処理ユニット、
前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プールに残された処理要求の数が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、
を備えたことを特徴とするマルチプロセス構成における通信制御装置。
【0022】
(付記4) ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成し保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させ手順、
コマンド処理要求と前記I/O処理要求とをプールする手順、
前記プールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記データの受信を再開させる手順、
をコンピュータに実行させることを特徴とするプログラム。
【0023】
(付記5) ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、
コマンド処理要求を生成し該要求を前記プール処理ユニットに保存させるコマンド処理ユニット、
前記コマンド処理要求と前記I/O処理要求とをプールするプール処理ユニット、
前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プール処理ユニットに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、
前記データを格納する前記バッファを有し、該バッファの空き容量が、前記入力規制値より小さくなったか否かを監視し、その監視結果を前記I/O処理ユニットに送るとともに、該空き容量が、前記入力規制解除値より大きくなったか否かを監視し、その監視結果を前記プロトコル処理ユニットに送るバッファ管理ユニット、
を備えたことを特徴とするマルチプロセス構成における通信制御装置。
【0024】
【発明の効果】
以上説明したように、本発明によれば、ネットワークから途切れなくデータが送信されてくるときの受信処理のように優先度の高い処理を連続的に実行し続ける状況下で、これらの処理より優先度の低い処理を実行可能とすることにより、優先度の高い処理から抜け出すことができずハングアップ状態になることを回避するマルチプロセス構成における通信制御装置を提供することができる。
【図面の簡単な説明】
【図1】本発明による一実施形態のマルチプロセス構成における通信制御装置のブロック構成図である。
【図2】I/O処理ユニットのプロセス内容を示すフローチャートである。
【図3】プール処理ユニットによる処理要求のキュー管理の具体例を示す図である。
【図4】プロトコル処理ユニットのプロセス内容を示すフローチャートである。
【符号の説明】
1…通信制御装置
10…処理部(CPU、メモリ)
11…I/O処理ユニット
12…バッファ管理ユニット
13…プール処理ユニット
14−1、14−2、14−n…コマンド処理ユニット
15…プロトコル処理ユニット
20…入力装置
30…出力装置
40…補助記憶装置
50…ネットワーク
60…アダプタ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a communication control apparatus in a multi-process configuration and a program therefor.
[0002]
[Prior art]
A communication control apparatus that performs transmission / reception of packets according to the prior art usually includes a computer that processes multi-processes. In the multi-process processed by the computer of this apparatus, an I / O processing process for generating a processing request for the received packet and storing it in the pool, a command processing for generating a command processing request by operating the input device and storing it in the pool There is a protocol processing process for executing a process of a processing request generated by a process and an I / O processing process or a command processing process and stored in a pool. In a general OS (operating system), the priority order in which the CPU of a computer receives and executes these processing processes is in the order of an I / O processing process, a protocol processing process, and a command processing process.
[0003]
However, this device has an adapter connected to the network. The adapter has a function of transmitting and receiving packets to and from other computers connected to the network. This apparatus also has a buffer capable of storing a plurality of packets.
In this device, when a large amount of packets are received, the CPU executes a high priority I / O processing process, the number of packets stored in the buffer increases, and the buffer free capacity is When it becomes smaller than the regulation value, the adapter reception function stops, and when it becomes larger than the input regulation release value, the adapter reception function resumes. When the I / O processing process is executed for each received packet, a processing request for the received packet is generated and accumulated in the pool.
[0004]
[Problems to be solved by the invention]
In the above apparatus, when the free capacity of the buffer for storing the packet becomes smaller than the input restriction value, the reception function of the adapter is stopped. Then, since there is no high priority I / O processing process to be executed, the CPU starts executing the protocol processing process with the next highest priority. As a result, processing requests for packets stored in the pool are sequentially executed. Then, the packets stored in the buffer are sequentially released, and the free space increases in the buffer. If the free space of the buffer becomes larger than the input restriction release value before the protocol processing process for executing the processing request for the packet stored in this pool is completed, the processing request for the protocol processing process stored in the pool is retained. Despite this, the adapter's receiving function is resumed. That is, the protocol processing process is deprived of the execution right by the I / O processing process having a high execution priority, and the CPU resumes the execution of the I / O processing process.
[0005]
In this way, the CPU executes the I / O processing process and the protocol processing process alternately, that is, the packet reception stop / restart occurs continuously, and the execution processing capacity of the staying protocol processing process. Cannot escape from the over state. In such a case, a command processing process having a lower priority than these I / O processing processes and protocol processing processes, for example, input command processing for stopping the communication function is naturally impossible to execute, resulting in a hang-up state. Problems arise.
[0006]
A network storm occurs when a third party maliciously continuously transmits packets from another computer connected to the network to this apparatus or when a system abnormality occurs in this apparatus. In such a case, because the device is restarted, the adapter of the device connected to the network must be removed or turned off, and the stored data may be destroyed, and the device cannot be used in a stable state. Arise.
[0007]
Therefore, in view of the above problems, the present invention makes it possible to execute low priority processing in a situation where high priority processing must be continuously executed, and the right to execute low priority processing is semipermanently turned around. An object of the present invention is to provide a communication control device and a program therefor in a multi-process configuration capable of avoiding a hang-up state due to no longer coming.
[0008]
[Means for Solving the Problems]
A communication control device in a multi-process configuration of the present invention that achieves the above object is a communication control device in a multi-process configuration that transmits and receives data via a network, receives the data, stores the data in a buffer, and the data An input restriction value in which an I / O processing request for the data to which the address information of the buffer in which data is stored is added is generated and stored in the pool processing unit, and the free space in the buffer for storing the data is set in advance The I / O processing unit that stops receiving the data when it becomes smaller, the pool processing unit that pools command processing requests and I / O processing requests, and the processing requests pooled in the pool processing unit are sequentially extracted and executed And the free space becomes larger than a preset input restriction release value. A protocol processing unit that causes the I / O processing unit to resume receiving the data when the sum of the command processing request and the I / O processing request remaining in the pool becomes smaller than a preset reception restart restriction value. , Provided.
In addition, in a communication control device in a multi-process configuration for transmitting and receiving data via the network of the present invention that achieves the above object, the data is received and stored in a buffer, and the buffer in which the data is stored Generate and save an I / O processing request for the data with the address information added, and stop receiving the data when the free space in the buffer for storing the data becomes smaller than a preset input restriction value A procedure for pooling the command processing request and the I / O processing request, sequentially extracting and executing the pooled processing requests, and the free capacity becomes larger than a preset input restriction release value and the pool The sum of the command processing request and the I / O processing request left in the procedure to be received is a preset reception restart rule. A program characterized by executing instructions to resume receiving the data when it becomes smaller than the value, to the computer.
[0009]
A communication control device in a multi-process configuration of the present invention that achieves the above object is a communication control device in a multi-process configuration that transmits and receives data via a network, receives the data, stores the data in a buffer, and the data An input restriction value in which an I / O processing request for the data to which the address information of the buffer in which data is stored is added is generated and stored in the pool processing unit, and the free space in the buffer for storing the data is set in advance An I / O processing unit that stops receiving the data when it becomes smaller, a command processing unit that generates a command processing request and stores the request in the pool processing unit, the command processing request and the I / O processing request Pool processing unit to pool, pooled in the pool processing unit The processing request is sequentially extracted and executed, and the free capacity becomes larger than a preset input restriction release value, and the sum of the command processing request and the I / O processing request remaining in the pool processing unit is preset. A protocol processing unit for causing the I / O processing unit to resume reception of the data when the reception restart restriction value becomes smaller, and a buffer for storing the data, the free capacity of the buffer being the input restriction value Monitoring whether or not the free capacity has become larger than the input restriction release value and sending the monitoring result to the I / O processing unit. A buffer management unit for sending to the processing unit is provided.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
FIG. 1 is a block diagram of a communication control apparatus in a multi-process configuration according to an embodiment of the present invention. The communication control device 1 in a multi-process configuration includes a processing unit 10 including a CPU / memory, an input device 20 including a keyboard and a mouse, an output device 30 including a CRT and a printer, an auxiliary storage device 40 including a magnetic disk, and a communication network. 50 and an adapter 60 that transmits and receives packets to and from other computers connected to the network 50.
[0011]
The processing unit 10 includes an I / O processing unit 11, a buffer management unit 12, a pool processing unit 13, command processing units 14-1, 14-2, ..., 14-n (n is a positive integer of 3 or more), protocol A processing unit 15 is included.
The buffer management unit 12 has a buffer for storing, for example, 100 fixed-length packets. Then, it is monitored whether or not the free space of the buffer becomes smaller than an input restriction value (for example, 10% of the total capacity of the buffer), the monitoring result is sent to the I / O processing unit 11, and the free space of the buffer is Whether the input restriction release value (for example, 50% of the total buffer capacity) has been exceeded is monitored, and the monitoring result is sent to the protocol processing unit 15. Here, the input restriction value and the input restriction release value can be set to the same value.
[0012]
FIG. 2 is a flowchart showing the process contents of the I / O processing unit. The I / O processing process shown in FIG. 2 is executed by the I / O processing unit 11. First, in step S1, the I / O processing unit 11 receives a packet. In step S2, the packet is stored in the buffer in the buffer management unit 12, and the address information of the buffer in which the packet is stored is acquired. In step S3, an I / O processing request for the packet to which the address information of the buffer storing the packet is added is generated and stored in the pool processing unit 13.
[0013]
In step S4, the monitoring result is received from the buffer management unit 12 as to whether or not the free space of the buffer has become smaller than the input restriction value. If the monitoring result is YES, the process proceeds to S5. If the monitoring result is NO, step S1 is performed. Return to. In step S5, the reception of the packet by the adapter 60 is stopped, and an instruction to resume reception is awaited.
The command processing units 14-1, 14-2,..., 14-n receive command input from a keyboard or the like, generate a computer-executable command processing process using an interpreter, and request execution of the command processing process. A request is generated and stored in the pool processing unit 13. This command processing includes a command for displaying on the CRT whether the adapter 60 to the network 50 is in a reception state or a stop state, a command for stopping the reception of the adapter 60, and the like.
[0014]
FIG. 3 is a diagram showing a specific example of queue management of processing requests by the pool processing unit. The pool processing unit 13 receives the command processing requests A1, A2,..., An generated by the command processing units 14-1, 14-2,. Processing requests B1, B2,..., Bm are connected to Q in the order of generation and pooled. Address information of the buffer storing the packet is added to the packet I / O processing request.
[0015]
The queue management table 100 shown in FIG. 3 stores the address of a pointer that points to the control table 201 created by a command processing request or an I / O processing request. Control tables 202, 203,..., 20k are created and connected to Q in the order in which command processing requests or I / O processing requests are generated. Each control table stores the address of the control table to be connected to Q next and the buffer address of the packet information corresponding to the process corresponding to the command processing request or the I / O processing request.
[0016]
FIG. 4 is a flowchart showing the process contents of the protocol processing unit. The protocol processing process shown in FIG. 4 is executed by the protocol processing unit 15. First, in step S11, processing requests pooled in the pool processing unit 13 are sequentially extracted. When the processing request is a command processing request, the generated command processing process is taken out. When the processing request is an I / O processing request, the packet stored in the buffer management unit 12 is read out.
[0017]
In step S12, the process of the extracted processing request is executed. If the processing request is a command processing request, the generated command processing process is executed. If the processing request is an I / O processing request, the packet read from the buffer management unit 12 according to the protocol can be executed by a computer using an interpreter. A new I / O process is generated and the process is executed.
[0018]
In step S13, a monitoring result is received from the buffer management unit 12 as to whether or not the free space of the buffer has become larger than a preset input restriction release value, and the monitoring result is YES and the command left in the pool processing unit 13 It is detected whether or not the sum of the processing request and the I / O processing request is smaller than a preset reception restart restriction value. If the result is YES, the process proceeds to step S1 in FIG. The reception of the packet is resumed, and when the result is NO, the process returns to step S11. The sum of the command processing request and the I / O processing request is equal to the number of control tables 201, 202, 203,..., 20k managed by the queue management table 100 shown in FIG. The reception restart restriction value is appropriately set according to the urgency of command processing, the hardware environment of the system, particularly the processing speed of the CPU, and the like. It is desirable to set it to 1 so that command processing can be updated earliest.
[0019]
The program of the present invention causes a computer to execute the process contents of the I / O processing unit shown in FIG. 2 and the process contents of the protocol processing unit shown in FIG. 4, and is stored in the memory of the processing unit 10 and is executed by the CPU. Executed.
(Supplementary Note 1) In a multi-configuration communication control apparatus having a high priority I / O processing process for transmitting and receiving data via a network, a protocol processing process having a lower priority than the I / O processing process, and a command processing process ,
When the free space of the buffer for storing the data becomes insufficient, the reception of data is stopped, the free space of the buffer is sufficiently recovered, and the command processing and I / O processing processing requests for the protocol processing process A communication control apparatus comprising: an I / O processing unit that resumes reception when the number becomes smaller than a regulation value.
[0020]
(Supplementary Note 2) In a multi-configuration communication control apparatus having a high-priority I / O processing process for transmitting and receiving data via a network, a protocol processing process having a lower priority than the I / O processing process, and a command processing process ,
When the free space of the buffer for storing the data becomes insufficient, the reception of data is stopped, the free space of the buffer is sufficiently recovered, and the command processing and I / O processing processing requests for the protocol processing process The procedure to resume reception when the number falls below the regulation value
A program that causes a computer to execute.
[0021]
(Supplementary Note 3) In a communication control apparatus in a multi-process configuration that transmits and receives data via a network,
Receiving the data, storing the data in a buffer, generating an I / O processing request for the data to which the address information of the buffer storing the data is added, storing the request in a pool processing unit, and storing the data An I / O processing unit for stopping reception of the data when the free space in the buffer to be stored becomes smaller than a preset input restriction value;
A pool processing unit that pools command processing requests and I / O processing requests;
The processing requests pooled in the pool processing unit are sequentially taken out and executed, and the free capacity becomes larger than a preset input restriction release value and the number of processing requests remaining in the pool is resumed. A protocol processing unit for causing the I / O processing unit to resume reception of the data when it becomes smaller than a regulation value;
A communication control apparatus in a multi-process configuration characterized by comprising:
[0022]
(Supplementary Note 4) In a communication control apparatus in a multi-process configuration that transmits and receives data via a network,
The buffer for receiving the data, storing the data in a buffer, generating and storing an I / O processing request for the data with the address information of the buffer storing the data, and storing the data A procedure for stopping the reception of the data when the free space in the memory becomes smaller than a preset input regulation value;
A procedure for pooling command processing requests and I / O processing requests;
The pooled processing requests are sequentially extracted and executed, and the free capacity becomes larger than a preset input restriction release value and the sum of the remaining command processing requests and I / O processing requests is preset. A procedure for resuming reception of the data when the reception resumption restriction value becomes smaller,
A program that causes a computer to execute.
[0023]
(Supplementary Note 5) In a communication control apparatus in a multi-process configuration that transmits and receives data via a network,
Receiving the data, storing the data in a buffer, generating an I / O processing request for the data to which the address information of the buffer storing the data is added, storing the request in a pool processing unit, and storing the data An I / O processing unit for stopping reception of the data when the free space in the buffer to be stored becomes smaller than a preset input restriction value;
A command processing unit that generates a command processing request and stores the request in the pool processing unit;
A pool processing unit that pools the command processing request and the I / O processing request;
The processing requests pooled in the pool processing unit are sequentially extracted and executed, and the command processing request and the I / O remaining in the pool processing unit while the free capacity becomes larger than a preset input restriction release value. A protocol processing unit that causes the I / O processing unit to resume receiving the data when the sum of the processing requests becomes smaller than a preset reception restart restriction value;
The buffer for storing the data, monitoring whether or not the free capacity of the buffer has become smaller than the input restriction value, and sending the monitoring result to the I / O processing unit; A buffer management unit that monitors whether or not the input restriction release value has been exceeded, and sends the monitoring result to the protocol processing unit;
A communication control apparatus in a multi-process configuration characterized by comprising:
[0024]
【The invention's effect】
As described above, according to the present invention, priority is given to these processes in a situation in which high-priority processing is continuously executed, such as reception processing when data is transmitted without interruption from the network. By enabling low-level processing to be performed, it is possible to provide a communication control device in a multi-process configuration that cannot escape from processing with high priority and avoids a hang-up state.
[Brief description of the drawings]
FIG. 1 is a block diagram of a communication control apparatus in a multi-process configuration according to an embodiment of the present invention.
FIG. 2 is a flowchart showing process contents of an I / O processing unit.
FIG. 3 is a diagram showing a specific example of queue management of processing requests by a pool processing unit.
FIG. 4 is a flowchart showing process contents of a protocol processing unit.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Communication control apparatus 10 ... Processing part (CPU, memory)
DESCRIPTION OF SYMBOLS 11 ... I / O processing unit 12 ... Buffer management unit 13 ... Pool processing unit 14-1, 14-2, 14-n ... Command processing unit 15 ... Protocol processing unit 20 ... Input device 30 ... Output device 40 ... Auxiliary storage device 50 ... Network 60 ... Adapter

Claims (3)

ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、
コマンド処理要求とI/O処理要求とをプールするプール処理ユニット、
前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プールに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、
を備えたことを特徴とするマルチプロセス構成における通信制御装置。
In a communication control device in a multi-process configuration that transmits and receives data via a network,
Receiving the data, storing the data in a buffer, generating an I / O processing request for the data to which the address information of the buffer storing the data is added, storing the request in a pool processing unit, and storing the data An I / O processing unit for stopping reception of the data when the free space in the buffer to be stored becomes smaller than a preset input restriction value;
A pool processing unit that pools command processing requests and I / O processing requests;
The processing requests pooled in the pool processing unit are sequentially extracted and executed, and the command processing request and the I / O processing request remaining in the pool when the free capacity becomes larger than a preset input restriction release value. A protocol processing unit for causing the I / O processing unit to resume receiving the data when the sum of the values becomes smaller than a preset reception restart restriction value;
A communication control apparatus in a multi-process configuration characterized by comprising:
ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成し保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させる手順、
コマンド処理要求と前記I/O処理要求とをプールする手順、
前記プールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プールする手順で残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記データの受信を再開させる手順、
をコンピュータに実行させることを特徴とするプログラム。
In a communication control device in a multi-process configuration that transmits and receives data via a network,
The buffer for receiving the data, storing the data in a buffer, generating and storing an I / O processing request for the data with the address information of the buffer storing the data, and storing the data A procedure for stopping the reception of the data when the free space in the memory becomes smaller than a preset input regulation value;
A procedure for pooling command processing requests and I / O processing requests;
The pooled processing requests are sequentially fetched and executed, and the command processing request and the I / O processing request left in the pooling procedure when the free space becomes larger than a preset input restriction release value. Resuming reception of the data when becomes less than a preset reception restart restriction value;
A program that causes a computer to execute.
ネットワークを介してデータを送受信するマルチプロセス構成における通信制御装置において、
前記データを受信し該データをバッファに格納するとともに、該データが格納された該バッファのアドレス情報を付加した該データのI/O処理要求を生成しプール処理ユニットに保存させ、かつ前記データを格納する前記バッファ内の空き容量が予め設定された入力規制値より小さくなったとき前記データの受信を停止させるI/O処理ユニット、
コマンド処理要求を生成し該要求を前記プール処理ユニットに保存させるコマンド処理ユニット、
前記コマンド処理要求と前記I/O処理要求とをプールするプール処理ユニット、
前記プール処理ユニットにプールされた処理要求を順次取り出し実行し、かつ前記空き容量が予め設定された入力規制解除値より大きくなるとともに前記プール処理ユニットに残された前記コマンド処理要求と前記I/O処理要求の和が予め設定された受信再開規制値より小さくなったとき前記I/O処理ユニットに前記データの受信を再開させるプロトコル処理ユニット、
前記データを格納する前記バッファを有し、該バッファの空き容量が、前記入力規制値より小さくなったか否かを監視し、その監視結果を前記I/O処理ユニットに送るとともに、該空き容量が、前記入力規制解除値より大きくなったか否かを監視し、その監視結果を前記プロトコル処理ユニットに送るバッファ管理ユニット、
を備えたことを特徴とするマルチプロセス構成における通信制御装置。
In a communication control device in a multi-process configuration that transmits and receives data via a network,
Receiving the data, storing the data in a buffer, generating an I / O processing request for the data to which the address information of the buffer storing the data is added, storing the request in a pool processing unit, and storing the data An I / O processing unit for stopping reception of the data when the free space in the buffer to be stored becomes smaller than a preset input restriction value;
A command processing unit that generates a command processing request and stores the request in the pool processing unit;
A pool processing unit that pools the command processing request and the I / O processing request;
The processing requests pooled in the pool processing unit are sequentially extracted and executed, and the command processing request and the I / O remaining in the pool processing unit while the free capacity becomes larger than a preset input restriction release value. A protocol processing unit that causes the I / O processing unit to resume receiving the data when the sum of the processing requests becomes smaller than a preset reception restart restriction value;
The buffer for storing the data, monitoring whether or not the free capacity of the buffer has become smaller than the input restriction value, and sending the monitoring result to the I / O processing unit; A buffer management unit that monitors whether or not the input restriction release value has been exceeded, and sends the monitoring result to the protocol processing unit;
A communication control apparatus in a multi-process configuration characterized by comprising:
JP2001162949A 2001-05-30 2001-05-30 Communication control apparatus in multi-process configuration and program therefor Expired - Fee Related JP4079605B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001162949A JP4079605B2 (en) 2001-05-30 2001-05-30 Communication control apparatus in multi-process configuration and program therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001162949A JP4079605B2 (en) 2001-05-30 2001-05-30 Communication control apparatus in multi-process configuration and program therefor

Publications (2)

Publication Number Publication Date
JP2002351823A JP2002351823A (en) 2002-12-06
JP4079605B2 true JP4079605B2 (en) 2008-04-23

Family

ID=19005999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001162949A Expired - Fee Related JP4079605B2 (en) 2001-05-30 2001-05-30 Communication control apparatus in multi-process configuration and program therefor

Country Status (1)

Country Link
JP (1) JP4079605B2 (en)

Also Published As

Publication number Publication date
JP2002351823A (en) 2002-12-06

Similar Documents

Publication Publication Date Title
US6223207B1 (en) Input/output completion port queue data structures and methods for using same
JP3382953B2 (en) Client management flow control method and apparatus on finite memory computer system
KR100326864B1 (en) Network communication method and network system
EP1213892B1 (en) System and method for implementing a client side HTTP stack
US7770062B2 (en) Redundancy system having synchronization function and synchronization method for redundancy system
EP2618257B1 (en) Scalable sockets
JPH06202883A (en) Equipment for communication between processes and method therefor
US7937499B1 (en) Methods and apparatus for dynamically switching between polling and interrupt mode for a ring buffer of a network interface card
JPH06309252A (en) Interconnection interface
US20110107344A1 (en) Multi-core apparatus and load balancing method thereof
JP2012018699A (en) System and method for managing connection between client and server
KR20010014944A (en) Computer system
JP2008033952A (en) Most eligible server in common work queue environment
CN112698963B (en) Event notification method and device
US20050097226A1 (en) Methods and apparatus for dynamically switching between polling and interrupt to handle network traffic
US7140015B1 (en) Microkernel for real time applications
JP4957765B2 (en) Software program execution device, software program execution method, and program
US20160366054A1 (en) Data Processing System with Routing Tables
JP2001282558A (en) Multi-operating computer system
JP4079605B2 (en) Communication control apparatus in multi-process configuration and program therefor
US20010025324A1 (en) Data communication method and apparatus, and storage medium storing program for implementing the method and apparatus
JP2004213122A (en) Stable operation method of control system by client/server and program therefor
JP4089506B2 (en) File sharing system, server and program
JPH10326207A (en) Session maintenance control system for www server
JP3933134B2 (en) Communications system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070706

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: 20080108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080205

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

Free format text: PAYMENT UNTIL: 20110215

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110215

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120215

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130215

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140215

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees