JP2004363782A - Communication controller and communication control method - Google Patents
Communication controller and communication control method Download PDFInfo
- Publication number
- JP2004363782A JP2004363782A JP2003158050A JP2003158050A JP2004363782A JP 2004363782 A JP2004363782 A JP 2004363782A JP 2003158050 A JP2003158050 A JP 2003158050A JP 2003158050 A JP2003158050 A JP 2003158050A JP 2004363782 A JP2004363782 A JP 2004363782A
- Authority
- JP
- Japan
- Prior art keywords
- data
- communication
- processing
- processing task
- 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.)
- Pending
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、通信制御技術に関し、特に、オペレーティングシステムにより管理されるタスクから出力されるデータをネットワークへ出力する技術に関する。
【0002】
【従来の技術】
特許文献1には、伝送路の品質状態に応じて通信プロトコルをTCP(Transmission Control Protocol)およびUDP(User datagram protocol)のいずれか一方に切り替えると共に、パケットサイズを切り替えて通信を行なう技術が開示されている。TCPは、通信品質を保証するための処理を行うため、UDPに比べてリアルタイム性が劣る。このため、映像などの情報処理データをPCなどの情報処理装置に通信する場合(情報系通信と呼ぶ)には、一般にTCPが利用されるのに対し、コマンドなどの制御データをI/Oボードなどの制御装置に通信する場合(制御系通信と呼ぶ)には、リアルタイム性の高いUDPが利用されることが多い。
【0003】
【特許文献1】
特開平11−313330号公報
【0004】
【発明が解決しようとする課題】
情報系通信や制御系通信のために、情報処理装置や制御装置などの装置間の接続にイーサネット(登録商標)が用いられることが多い。近年のCPUやNIC(Network Interface Card)の性能向上により、1つのCPUあるいはNICで情報系通信および制御系通信の両方を並列的に処理することも可能である。しかし、この場合、次のような問題が生じることが考えられる。
【0005】
すなわち、情報系通信において、映像などの大容量データを通信する場合、データサイズを可能な限り大きくして、例えばイーサネット(登録商標)のフレームのヘッダ情報付加などによるオーバヘッドを減らし、スループットを上げることが好ましい。しかし、情報系通信のデータサイズを大きくすると、データ処理に係る時間が長くなり、その期間のCPUやNICが占有されてしまう。このため、制御系通信のリアルタイム性が損なわれてしまう。
【0006】
本発明は上記事情に鑑みてなされたものであり、本発明の目的は、制御系通信のリアルタイム性が損なわれるのを抑制しつつ、情報系通信のスループットを向上させることができるようにすることにある。
【0007】
【課題を解決するための手段】
上記課題を解決するために、本発明の通信制御装置は、オペレーティングシステムにより管理され並列的に処理される第1の処理系タスクおよび第2の処理系タスクから出力されるデータを、ネットワークへ出力する。そして、前記第1および第2の処理系タスクの出力データを通信データに加工する通信データ処理手段と、前記通信データ処理手段で生成される通信データ各々を、順番に前記ネットワークへ出力するネットワーク送出手段と、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを調整するデータサイズ調整手段と、を有する。ここで、前記データサイズ調整手段は、前記第2の処理系タスクの状態により前記第1の処理系タスクの出力データのデータサイズを制御するものでもよい。
【0008】
前記第1の処理系タスクが行なう通信を情報系通信、前記第2の処理系タスクが行なう通信を制御系通信とした場合、本発明によれば、前記データサイズ調整手段により、前記第2の処理系タスクによる制御系通信の頻度が高い期間、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを小さくすることができる。このようにすることで、制御系通信の頻度が高い期間は、情報系通信のデータサイズを小さくして制御系通信のリアルタイム性が損なわれるのを防止し、制御系通信の頻度が低い期間は、情報系通信のデータサイズを大きくして情報系通信のスループットを向上させることができる。
【0009】
本発明において、前記ネットワーク送出手段は、前記第2の処理系タスクの出力データを優先すべき旨の指示が入力された場合に、前記ネットワークへ送出するために保持している前記第1の処理系タスクの通信データを破棄すると共に、当該通信データの再送要求を前記通信データ処理手段に出力してもよい。そして、前記通信データ処理手段は、前記第1の処理系タスクの通信データに対する応答を受信するまで、当該通信データを保持すると共に、当該通信相手あるいは前記ネットワーク送出手段から再送要求を受信した場合、当該通信データを前記ネットワーク送出手段で再度出力してもよい。
【0010】
このようにした場合、前記第2の処理系タスクによる制御系通信の頻度が高い場合に、前記第2の処理系タスクの出力データを優先すべき旨の指示を前記ネットワーク送出手段に入力することで、制御系通信の通信データを優先して前記ネットワークへ出力することができる。これにより、制御系通信のリアルタイム性が損なわれるのを抑制しつつ、情報系通信のスループットを向上させることができる。なお、この場合は前記データサイズ調整手段を設けなくてもよい。
【0011】
なお、本発明において、前記第2の処理系タスクによる制御系通信の頻度が高いか否かの判断は、例えば、前記第1および第2の処理系タスクを管理するオペレーティングシステムの指示や、前記第2の処理系タスクの通信相手からの応答が正しく送られてくるか否かを確認することで行なうことができる。
【0012】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。
【0013】
図1は、本発明の一実施形態が適用された制御装置の概略図である。
【0014】
本実施形態の制御装置1100は、LSIマスク装置や血液分析装置などの各種制御装置に適用可能である。図示するように、メインコントローラ1200と、少なくとも1つI/Oボード1600と、メインコントローラ1200およびI/Oボード1600間を接続するLAN1820と、を有する。LAN1820には、PC1700などの汎用コンピュータも接続されている。
【0015】
I/Oボード1600には、モータ1610やセンサ1620などの被制御装置が接続されており、メインコントローラ1200より出力された通信データを被制御装置に送信したり、被制御装置より出力された通信データをメインコントローラ1200へ送信したりする。
【0016】
メインコントローラ1200は、LAN1820を介してI/Oボード1600と制御系通信を行って、I/Oボード1600に接続された被制御装置にコマンドを含む制御データを送信したり、被制御装置で計測された計測データを受信したりする。また、メインコントローラ1200は、LAN1820を介してPC1700と情報系通信を行なって映像を含む情報処理データを送受する。
【0017】
図示するように、メインコントローラ1200は、CPU1400、メモリ1300、および、メインコントローラ1200をLAN1820に接続するNIC1500が、バス1810で互いに接続された構成を有する。CPU1400は、メモリ1300に格納された各プログラムを実行する。メモリ1300には、OS(オペレーティングシステム)1350、および、OS1350によって管理され並列的に処理されるタスク1310〜1330が格納されている。
【0018】
OS1350は、上述したように、タスク1310〜1330を管理し、所定の順番でこれらのタスクを切り替えながら実行することにより、タスク1310〜1330を並列的に処理する。また、本実施形態のOS1350には、通信処理系タスク1330に、制御処理系タスク1320の出力データを優先すべき旨を通知するためのフラグを登録するフラグ登録部1360が設けられている。一般に、制御PGは、決められた周期で被制御装置との通信が発生する場合が多い。そこで、本実施形態では、OS1350に、制御PGおよび被制御装置間の通信が発生する周期に合わせて、所定時間、フラグ登録部1360にフラグを設定させるようにしている。
【0019】
図2(A)はフラグ登録部1360にフラグが設定されるタイミングを、そして、図2(B)はフラグ登録部1360の登録内容の一例を示している。図2(A)に示すように、制御処理系タスク1320による制御系通信の頻度が高くなる期間1361と、該制御系通信の頻度が低くなる期間1362とが、周期T1363を持って交互に現れる場合、OS1350が、期間1361のときにフラグをオンにし、期間136とのきはフラグをオフにするように設定する。図2(B)に示す例では、フラグ登録部1360は、フラグ(オンのときは「1」、オフのときは「0」)を登録するためのフィールド1364と、フラグオンのときのデータサイズが予め登録されたフィールド1365と、を有する。ただし、フィールド1365は、必ずしも設けられていなくてもよい。
【0020】
タスク1310は、PC1700との情報系通信を伴う情報処理系タスクであり、WebサーバPG(プログラム)や、CGI(Common Gateway Interface)PGなどが該当する。
【0021】
タスク1320は、I/Oボード1600との制御系通信を伴う制御処理系タスクであり、I/Oボード制御PGや、I/Oボードに接続された被制御装置の制御PGなどが該当する。
【0022】
タスク1330は、PC1700およびI/Oボード1600との通信に必要な処理を実行するための通信処理系タスクである。情報系通信により情報処理系タスク1310がPC1700と情報処理データの送受を行なうために必要な処理を実行すると共に、制御系通信により制御処理系タスク1320がI/Oボード1600と制御データの送受を行なうために必要な処理を実行する。
【0023】
図3は、通信処理系タスク1330の機能構成図である。
【0024】
図示するように、通信処理系タスク1330は、FIFO(First In First Out)1331、1332と、サイズ調整部1333と、TCP処理部1334と、UDP処理部1335と、IP処理部1336と、を有する。
【0025】
FIFO1331には、情報処理系タスク1310の出力データが順次入力され、一時的に格納された後、入力順に出力される。
【0026】
FIFO1332には、制御処理系タスク1320の出力データが順次入力され、一時的に格納された後、入力順に出力される。
【0027】
サイズ調整部1333は、制御処理系タスク1320の状態により情報処理系タスク1310の出力データのデータサイズを制御する。具体的には、フラグ登録部1360にフラグが登録されているか否かを監視し、その結果に基づいて、FIFO1331から出力するデータのデータサイズを調整する。フラグ登録部1360にフラグが登録されていない場合、FIFO1331から出力するデータをそのままTCP処理部1334に出力する。一方、フラグ登録部1360にフラグが登録されている場合、FIFO1331から出力するデータのデータサイズがフラグ登録部1360に登録されているデータサイズ(このデータサイズはFIFO1331から出力するデータのデータサイズより小さいサイズに設定されている)となるように分割する。そして、このようにして分割されたデータを順番にTCP処理部1334に出力する。なお、フラグ登録部1360にデータサイズが登録されていない場合は、サイズ調整部1333に初期設定されているサイズとなるように、FIFO1331から出力するデータのデータサイズを制御すればよい。
【0028】
TCP処理部1334は、サイズ調整部1333を介してFIFO1331から受け取った情報処理系タスク1310の出力データに、TCP処理を行って、当該データをTCPパケット化する。そして、TCPパケットをIP処理部1336に出力する。また、IP処理部1336から受け取ったTCPパケットから情報処理系タスク1310宛てのデータを取り出し、情報処理系タスク1310へ出力する。
【0029】
UDP処理部1335は、サイズ調整部1333を介してFIFO1332から受け取った制御処理系タスク1320の出力データに、UDP処理を行って、当該データをUDPパケット化する。そして、UDPパケットをIP処理部1336に出力する。また、IP処理部1336から受け取ったUDPパケットから制御処理系タスク1320宛てのデータを取り出し、制御処理系タスク1320へ出力する。
【0030】
IP処理部1336は、TCP処理部1334およびUDP処理部1335で生成されたパケット各々を、その生成順に受け取ってIP処理し、IPパケット化する。そして、生成したIPパケットを順番にNIC1500へ出力する。また、NIC1500から受け取ったIPパケットからTCPパケットおよびUDPパケットを取り出し、TCPパケットをTCP処理部1334に出力すると共に、UDPパケットをUDP処理部1335に出力する。
【0031】
図4は、通信処理系タスク1330の動作フロー図である。
【0032】
図示するように、通信処理系タスク1330は、FIFO1331、サイズ調整部1333およびTCP処理部1334を用いて、情報処理系タスク1310の出力データをTCPパケット化し、IP処理部1336へ出力すると共に、IP処理部1336から受け取ったTCPパケットから情報処理系タスク1310宛てのデータを抽出して情報処理系タスク1310へ出力する情報系通信処理(S101)と、FIFO1332およびUDP処理部1335を用いて、制御処理系タスク1320の出力データをUDPパケット化し、IP処理部1336へ出力すると共に、IP処理部1336から受け取ったUDPパケットから制御処理系タスク1320宛てのデータを抽出して制御処理系タスク1320へ出力する制御系通信処理(S102)と、IP処理部1336を用いて、TCP処理部1334およびUDP処理部1335で生成されたパケット各々を生成順に受け取ってIPパケット化し、NIC1500へ出力すると共に、NIC1500から受け取ったIPパケットからTCPパケットおよびUDPパケットを取り出し、TCPパケット、UDPパケットをそれぞれTCP処理部1334、UDP処理部1335に出力するIP処理(S103)と、を順番に繰り返し行う。
【0033】
以上、本発明の第1実施形態について説明した。
【0034】
図4の情報系通信処理(S101)において、フラグ登録部1360にフラグが設定されている場合、つまり、制御系通信の頻度が高い場合、サイズ調整部1333は、情報処理系タスク1310の出力データのデータサイズを、フラグが設定されていない場合、つまり、制御系通信の頻度が低い場合に比べてより小さなサイズに分割して、TCP処理部1334へ渡す。その結果、制御系通信の頻度が高い場合は、TCP処理部1334から出力されるTCPパケットが小さなサイズとなるため、このTCPパケットに対するIP処理部1336でのIP処理およびNIC1500への出力に要する時間を短くすることができる。これにより、IP処理部1336は、UDP処理部1335からUDPパケットが出力された場合に、このUDPパケットへの処理に取りかかるまでの待ち時間を短縮することができる。したがって、御系通信のリアルタイム性が損なわれるのを抑制することができる。
【0035】
一方、フラグ登録部1360にフラグが設定されていない場合、つまり、制御系通信の頻度が低い場合、サイズ調整部1333は、情報処理系タスク1310の出力データをそのままTCP処理部1334へ渡す。その結果、制御系通信の頻度が低い場合は、TCP処理部1334から出力されるTCPパケットのサイズが大きくなり、情報系通信のスループットを向上させることができる。この場合、NIC1500から出力される1フレーム当たりのデータサイズは最大で約1.5キロバイトとなる。
【0036】
なお、本発明は上記の実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【0037】
例えば、上記の実施形態において、サイズ調整部1333は、OS1350が管理するフラグ登録部1360のフラグの有無に従い、情報処理系タスク1310の出力データのデータサイズを調整している。ここで、フラグのオン・オフは、OS1350が予め定められたタイミングで替えるようにしている。しかし、本発明はこれに限定されない。
【0038】
例えば、図5(A)に示すように、各I/Oボード1600を、終了通知用の信号線1630でメインコントローラ1200と接続すると共に、I/Oボード1600各々に、メインコントローラ1200との制御系通信が終了したならば、信号線1630を介して、制御系通信が終了した旨をメインコントローラ1200に通知させる。そして、フラグのオンは、OS1350が予め定められたタイミングで設定し、フラグのオフは、OS1350がI/Oボード1600からの終了通知の受領をトリガとして行なう。このようにすれば、OS1350は、タイマ等を使って管理する対象がフラグをオンにするタイミングのみとなるので、OS1350の構成をより簡単にすることができる。
【0039】
また、例えば、図5(B)に示すように、各I/Oボード1600に、UDPの上位レイヤとして、メインコントローラ1200から受信したデータに対する応答(当該データに付された識別情報を有する応答データ)をメインコントローラ1200に返す応答処理部1601を設ける。そして、メインコントローラ1200において、フラグのオン・オフをOS1350で管理するのに代えて、通信処理系タスク1330に、I/Oボード1600からの応答をモニタする機能を持たせ、モニタ結果に応じて情報処理系タスク1310の出力データのデータサイズを調整するようにしてもよい。
【0040】
図6は、図3に示す通信処理系タスク1330の変形例の機能構成図である。この変形例では、OS1350にフラグ登録部1360を設ける代わりに、通信系処理計タスク1330に、タイムアウト回数計測部1337を設けている。
【0041】
タイムアウト回数計測部1337は、FIFO1332から出力されUDP処理部1335へ入力するデータに識別情報(例えばシリアル番号)を付すと共に、このデータがUDP処理部1335へ出力されてから、UDP処理部1335より当該データに対する応答(当該データに付された識別情報を有する応答データ)を受信するまでの時間を計測し、計測時間が所定のタイムアウト時間を超えたか否かを調べる。そして、タイムアウト時間を超えたならばタイムアウト回数のカウント値を1つインクリメントする。そして、図7(A)に示すように、カウント値13371が所定の閾値(制御系通信の頻度が高くなっていることを示す値)13372を超えたならば、サイズ調整部1333に対して、フラグオンと同じ意味を持つサイズ調整指示を出力する。なお、タイムアウト回数のカウント値13371は、所定のリセット周期13373毎にリセットするものとする。そして、前回リセットしてから、今回のリセットタイミングとなるまでに計測されたタイムアウト回数のカウント値13371が所定の閾値13372に達しなかった場合、サイズ調整部1333に対して、フラグオフと同じ意味を持つサイズ調整指示を出力する。
【0042】
このようにすることで、御系通信の頻度が高い場合は制御系通信を優先させて制御系通信のリアルタイム性を向上させ、そうでない場合は制御系通信の優先度を下げ情報系通信のスループットを向上させることができる。
【0043】
なお、閾値13372は、複数設けるようにしてもよい。この場合、タイムアウト回数計測部1337に、閾値13372毎に、閾値13372が大きくなるほどデータサイズが小さくなるように、データサイズの情報を登録しておく。そして、タイムアウト回数計測部1337に、タイムアウト回数のカウント値13371を複数の閾値13372と比較させ、カウント値13371が少なくとも1つの閾値13372を超えている場合、そのなかで最も高い値を持つ閾値13372に対応するデータサイズが指定されたサイズ調整指示を、サイズ調整部1333に出力させる。これにより、サイズ調整部1333は、FIFO1331から出力されたデータをサイズ調整指示で指定されたデータサイズに調整する。
【0044】
このようにすることで、制御系通信のタイムアウト回数13371に合わせて情報系通信のデータサイズを細かく調整できるので、制御系通信および情報系通信のトレードオフの制御をより一層最適化することができる。
【0045】
図6に示す変形例において、タイムアウト回数計測部1337を設ける代わりに、応答時間計測部1338を設けるようにしてもよい。
【0046】
応答時間計測部1338は、FIFO1332から出力されUDP処理部1335へ入力するデータに識別情報(例えばシリアル番号)を付すと共に、このデータがUDP処理部1335へ出力されてから、UDP処理部1335より当該データに対する応答(当該データに付された識別情報を有する応答データ)を受信するまでの時間を計測する。そして、新たに計測した時間をそれまでの計測時間の累積である総応答時間に加算する。そして、図7(B)に示すように、総応答時間13374が所定の閾値(制御系通信の頻度が高くなっていることを示す値)13375を超えたならば、サイズ調整部1333に対して、フラグオンと同じ意味を持つサイズ調整指示を出力する。なお、総応答時間13374は、所定のリセット周期13376毎にリセットするものとする。そして、前回リセットしてから、今回のリセットタイミングとなるまでに計測された総応答時間13374が所定の閾値13375に達しなかった場合、サイズ調整部1333に対して、フラグオフと同じ意味を持つサイズ調整指示を出力する。
【0047】
このようにすることで、御系通信の頻度が高い場合は制御系通信を優先させて制御系通信のリアルタイム性を向上させ、そうでない場合は制御系通信の優先度を下げ情報系通信のスループットを向上させることができる。
【0048】
なお、閾値13375は、複数設けるようにしてもよい。この場合、応答時間計測部1338に、閾値13375毎に、閾値13375が大きくなるほどデータサイズが小さくなるように、データサイズの情報を登録しておく。そして、応答時間計測部1338に、総応答時間13374を複数の閾値13375と比較させ、総応答時間13374が少なくとも1つの閾値13375を超えている場合、そのなかで最も高い値を持つ閾値13375に対応するデータサイズが指定されたサイズ調整指示を、サイズ調整部1333に出力させる。これにより、サイズ調整部1333は、FIFO1331から出力されたデータをサイズ調整指示で指定されたデータサイズに調整する。
【0049】
このようにすることで、制御系通信の総応答時間13374に合わせて情報系通信のデータサイズを細かく調整できるので、制御系通信および情報系通信のトレードオフの制御をより一層最適化することができる。
【0050】
また、上記の実施形態では、サイズ調整部1333にてFIFO1331から出力されたデータのサイズを調整することにより、制御系通信のリアルタイム性を向上させている。しかし、本発明はこれに限定されない。例えば、IP処理部1336において、UDPパケットが優先的に処理されるようにすることで、制御系通信のリアルタイム性を向上させるようにしてもよい。
【0051】
図8は、図3に示す通信処理系タスク1330の変形例の機能構成図である。この変形例では、IP処理部1336に、送信キュー13361と、キュークリア部13362と、再送要求部13363とを設けている。
【0052】
送信キュー13361には、TCPパケットおよびUDPパケットが、TCP処理部1334およびUDP処理部1335での生成順に格納される。そして、IP処理部1336は、送信キュー13361に格納されているパケット各々を、格納が古いものから順番にIP処理し、その結果生成されたIPパケットをNIC1500へ出力する。
【0053】
キュークリア部13362は、フラグ登録部1360にフラグが登録されているか否かを監視する。そして、フラグ登録部1360にフラグが登録されている場合、送信キュー13361に格納されている最も古いパケットがTCPパケットならば、このTCPパケットをIP処理することなく破棄すると共に、破棄したTCPパケットのヘッダ情報を再送要求部13363に通知する。
【0054】
そして、再送要求部13363は、キュークリア部13362よりTCPパケットのヘッダ情報を受け取ると、TCPに従いこのヘッダ情報により特定されるTCPパケットの再送要求を生成し、TCP処理部1334に通知する。TCP処理部1334は、自身が送出したTCPパケットを当該パケットに対する応答を受信するまで保持する。そして、再送要求を受信したならば、再送要求対象のTCPパケットをIP処理部1336へ再度出力する。
【0055】
図8に示す変形例によれば、フラグ登録部1360にフラグが登録されている場合、つまり、制御系通信の頻度が高い間は、UDPパケットが優先的にIP処理され、IP処理部1336からNIC1500へ送出される。したがって、御系通信の頻度が高い場合は制御系通信を優先させて制御系通信のリアルタイム性を向上させ、そうでない場合は制御系通信の優先度を下げ情報系通信のスループットを向上させることができる。
【0056】
なお、図8に示す変形例において、サイズ調整部1333はなくてもよい。また、図8に示す変形例においても、図6に示す変形例と同様に、通信処理系タスク1330にタイムアウト回数計測部1337あるいは応答時間計測部1338を設けてもよい。そして、キュークリア部13362に、フラグ登録部1360にフラグが登録されているか否かを監視させる代わりに、タイムアウト回数計測部1337あるいは応答時間計測部1338からの指示を受け付けるようにしてもよい。つまり、タイムアウト回数計測部1337あるいは応答時間計測部1338からフラグオンと同じ意味を持つ指示が入力された場合、送信キュー13361に格納されている最も古いパケットがTCPパケットならば、このTCPパケットをIP処理することなく破棄すると共に、破棄したTCPパケットのヘッダ情報を再送要求部13363に通知する処理を行う。一方、タイムアウト回数計測部1337あるいは応答時間計測部1338からフラグオフと同じ意味を持つ指示が入力された場合は、上記の処理を中止する。
【0057】
また、例えば、上記の実施形態では、メインコントローラ1200およびI/Oボード1600、PC1700間の接続にイーサネット(登録商標)を用いた場合を例にとり説明した。しかし、本発明はこれに限定されない。メインコントローラ1200およびI/Oボード1600、PC1700間の接続にUSB(Universal Serial Bus)を用いるようにしてもよい。
【0058】
図9は、図1に示す制御装置1100の変形例の概略図である。
【0059】
図9に示す制御装置1100が図1に示す制御装置1100と異なる点は、USBハブ1910を介して、メインコントローラ1200およびI/Oボード1600、PC1700間をUSBで接続していることである。また、図9に示すメインコントローラ1200が図1に示すメインコントローラ1200と異なる点は、NIC1600に代えてUSBコントローラ1900を設けたこと、および、通信処理系タスク1330に代えて通信処理系タスク1330Aを設けたことである。
【0060】
図10は、通信処理系タスク1330Aの機能構成図である。
【0061】
図示するように、通信処理系タスク1330Aは、FIFO1331A、1332Aと、サイズ調整部1333Aと、データ出力部1337と、を有する。
【0062】
FIFO1331Aには、情報処理系タスク1310の出力データが順次入力され、一時的に格納された後、入力順に出力される。
【0063】
FIFO1332Aには、制御処理系タスク1320の出力データが順次入力され、一時的に格納された後、入力順に出力される。
【0064】
サイズ調整部1333Aは、フラグ登録部1360にフラグが登録されているか否かを監視し、その結果に基づいて、FIFO1331Aから出力するデータのデータサイズを調整する。具体的には、フラグ登録部1360にフラグが登録されていない場合、FIFO1331Aから出力するデータをそのままデータ出力部部1337に出力する。一方、フラグ登録部1360にフラグが登録されている場合、FIFO1331Aから出力するデータのデータサイズがフラグ登録部1360に登録されているデータサイズ(このデータサイズはFIFO1331Aから出力するデータのデータサイズより小さいサイズに設定されている)となるように分割する。そして、このようにして分割されたデータを順番にデータ出力部1337に出力する。なお、フラグ登録部1360にデータサイズが登録されていない場合は、サイズ調整部1333Aに初期設定されているサイズとなるように、FIFO1331Aから出力するデータのデータサイズを制御すればよい。
【0065】
データ処理部1339は、サイズ調整部1333AおよびFIFO1332Aから出力されるデータ各々を、その生成順に受け取って順番にUSBコントローラ1900へ出力する。また、USBコントローラ1900から受け取ったデータを、その宛先である情報処理系タスク1310あるいは制御処理系タスク1320へ出力する。
【0066】
さて、USBでは、エンドポイント(通信先)毎にデータがリスト構造で管理され、エンドポイント自体もリスト構造で管理される。USB規格上リスト構造で管理される際の上限データサイズは約8キロバイトである。制御処理系タスク1320が通信相手と送受するデータは、コマンドなどの数十バイト程度のものが殆どである。しかし、情報処理系タスク1310は、映像などの大容量データを通信相手と送受することがあるため、USBコントローラ1900は、情報処理系タスク1310の通信先を示すエンドポイントのリスト構造に8キロバイトの通信データを接続することもあり得る。複数のエンドポイントがある場合、USBコントローラ1900は、USB規格により順番にデータの通信処理を行なう。このため、情報処理系タスク1310の通信先を示すエンドポイントのリスト構造に大きなサイズの通信データが接続されると、当該通信データの処理に時間がかかり、制御処理系タスク1320の通信先を示すエンドポイントのリスト構造に接続された通信データの通信処理開始までの待ち時間が大きくなる。結果として、制御系通信のリアルタイム性が劣化する。
【0067】
しかし、図10に示す通信処理系タスク1330Aでは、フラグ登録部1360にフラグが設定されている場合、つまり、制御系通信の頻度が高い場合、サイズ調整部1333Aは、情報処理系タスク1310の出力データのデータサイズを、フラグが設定されていない場合、つまり、制御系通信の頻度が低い場合に比べてより小さなサイズに分割して、データ出力部1337へ渡す。その結果、制御系通信の頻度が高い場合は、情報処理系タスク1310の通信先を示すエンドポイントのリスト構造に接続されるデータが小さなサイズとなる。このため、制御処理系タスク1320の通信先を示すエンドポイントのリスト構造に接続された通信データの通信処理開始までの待ち時間を短縮でき、制御系通信のリアルタイム性が損なわれるのを抑制することができる。
【0068】
なお、図10に示す通信処理系タスク1330Aにおいても、図6に示す通信処理系タスク1330と同様に、OS1350にフラグ登録部1360を設ける代わりに、タイムアウト回数計測部1337あるいは応答時間計測部1338を設け、FIFO1332Aから出力されデータ出力部1339へ入力するデータに識別情報(例えばシリアル番号)を付すと共に、このデータがデータ出力部1339へ出力されてから、データ出力部1339より当該データに対する応答(当該データに付された識別情報を有する応答データ)を受信するまでの時間を計測し、計測時間が所定のタイムアウト時間を超えたタイムアウト回数を計測し、あるいは、計測時間の累積である総応答時間を計測し、所定時間内にタイムアウト回数あるいは総応答時間を所定の閾値と比較し、その結果に応じてサイズ調整部1333Aを制御するようにしてもよい。
【0069】
この場合、各I/Oボード1600に、メインコントローラ1200から受信したデータに対する応答(当該データに付された識別情報を有する応答データ)をメインコントローラ1200に返す機能を持たせる必要がある。
【0070】
【発明の効果】
以上説明したように、本発明によれば、制御系通信のリアルタイム性が損なわれるのを抑制しつつ、情報系通信のスループットを向上させることができる。
【図面の簡単な説明】
【図1】図1は本発明の一実施形態が適用された制御装置の概略図である。
【図2】図2(A)はフラグ登録部1360にフラグが設定されるタイミングを、図2(B)はフラグ登録部1360の登録内容の一例を示す図である。
【図3】図3は通信処理系タスク1330の機能構成図である。
【図4】図4は通信処理系タスク1330の動作フロー図である。
【図5】図5はI/Oボード1600の変形例を示す図である。
【図6】図6は図3に示す通信処理系タスク1330の変形例の機能構成図である。
【図7】図7(A)はカウント値13371と閾値13372との関係を示す図であり、図7(B)は総応答時間13374と閾値13375との関係を説明するための図である。
【図8】図8は図3に示す通信処理系タスク1330の変形例の機能構成図である。
【図9】図9は図1に示す制御装置1100の変形例の概略図である。
【図10】図10は通信処理系タスク1330Aの機能構成図である。
【符号の説明】
1100…制御装置、1200…メインコントローラ、1300・・・メモリ、1310・・・情報処理系タスク、1320・・・制御処理系タスク、1330・・・通信処理系タスク、1331・・・FIFO、1332・・・FIFO、1333・・・サイズ調整部、1334・・・TCP処理部、1335・・・UDP処理部、1336・・・IP処理部、1337・・・タイムアウト回数計測部、1338・・・応答時間計測部、1350・・・OS、1360・・・フラグ登録部、1400・・・CPU、1500・・・NIC、1600・・・I/Oボード、1601・・・応答処理部、1610・・・・モータ、1620・・・センサ、1700・・・PC、1810・・・バス、1820・・・LAN、1900・・・USBコントローラ、1910・・・USBハブ、13361・・・送信キュー、13362・・・キュークリア部、13363・・・再送要求部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a communication control technique, and more particularly to a technique for outputting data output from a task managed by an operating system to a network.
[0002]
[Prior art]
Patent Literature 1 discloses a technology in which a communication protocol is switched to one of TCP (Transmission Control Protocol) and UDP (User datagram protocol) in accordance with a quality state of a transmission path, and communication is performed by switching a packet size. ing. TCP performs processing for guaranteeing communication quality, and thus is inferior in real-time performance to UDP. For this reason, when information processing data such as video is communicated to an information processing apparatus such as a PC (referred to as information communication), TCP is generally used, whereas control data such as commands is transmitted to an I / O board. When communicating with a control device such as the above (referred to as control communication), UDP having high real-time properties is often used.
[0003]
[Patent Document 1]
JP-A-11-313330
[0004]
[Problems to be solved by the invention]
For information communication and control communication, Ethernet (registered trademark) is often used for connection between devices such as an information processing device and a control device. Recent improvements in the performance of CPUs and NICs (Network Interface Cards) make it possible for a single CPU or NIC to process both information communication and control communication in parallel. However, in this case, the following problem may occur.
[0005]
That is, when communicating large-capacity data such as video in information communication, increase the data size as much as possible, for example, reduce the overhead due to the addition of header information of the Ethernet (registered trademark) frame, and increase the throughput. Is preferred. However, if the data size of the information communication is increased, the time required for the data processing becomes longer, and the CPU or NIC during that period is occupied. For this reason, the real-time property of control system communication is impaired.
[0006]
The present invention has been made in view of the above circumstances, and an object of the present invention is to improve throughput of information communication while suppressing real-time performance of control communication. It is in.
[0007]
[Means for Solving the Problems]
In order to solve the above problem, a communication control device of the present invention outputs data output from a first processing task and a second processing task managed in parallel by an operating system to a network. I do. Communication data processing means for processing output data of the first and second processing tasks into communication data; and network transmission for sequentially outputting each of the communication data generated by the communication data processing means to the network. Means for adjusting the data size of output data of the first processing task input to the communication data processing means. Here, the data size adjusting means may control a data size of output data of the first processing task according to a state of the second processing task.
[0008]
According to the present invention, when the communication performed by the first processing task is information communication and the communication performed by the second processing task is control communication, according to the present invention, the data size adjustment unit performs The data size of the output data of the first processing task input to the communication data processing means can be reduced during a period in which the frequency of control communication by the processing task is high. By doing so, during the period when the frequency of the control communication is high, the data size of the information communication is reduced to prevent the real-time property of the control communication from being impaired. In addition, the data size of information communication can be increased to improve the throughput of information communication.
[0009]
In the present invention, when an instruction to give priority to output data of the second processing task is input, the network sending means holds the first processing held for sending to the network. The communication data of the system task may be discarded, and a request for retransmission of the communication data may be output to the communication data processing unit. The communication data processing means holds the communication data until a response to the communication data of the first processing task is received, and receives a retransmission request from the communication partner or the network sending means. The communication data may be output again by the network sending means.
[0010]
In this case, when the frequency of control communication by the second processing task is high, an instruction to give priority to output data of the second processing task is input to the network sending means. Thus, the communication data of the control system communication can be preferentially output to the network. As a result, it is possible to improve the throughput of the information communication while suppressing the real-time property of the control communication from being impaired. In this case, the data size adjusting means may not be provided.
[0011]
In the present invention, whether the frequency of control communication by the second processing task is high or not is determined, for example, by an instruction from an operating system that manages the first and second processing tasks, This can be performed by confirming whether or not a response from the communication partner of the second processing task is correctly sent.
[0012]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0013]
FIG. 1 is a schematic diagram of a control device to which one embodiment of the present invention is applied.
[0014]
The
[0015]
A controlled device such as a
[0016]
The
[0017]
As shown, the
[0018]
As described above, the
[0019]
FIG. 2A shows a timing at which a flag is set in the
[0020]
The
[0021]
The
[0022]
The
[0023]
FIG. 3 is a functional configuration diagram of the
[0024]
As shown in the figure, the
[0025]
The output data of the
[0026]
The output data of the
[0027]
The
[0028]
The
[0029]
The
[0030]
The
[0031]
FIG. 4 is an operation flowchart of the
[0032]
As shown in the figure, the
[0033]
The first embodiment of the present invention has been described above.
[0034]
In the information communication process (S101) of FIG. 4, when the flag is set in the
[0035]
On the other hand, when the flag is not set in the
[0036]
It should be noted that the present invention is not limited to the above embodiment, and various modifications are possible within the scope of the gist.
[0037]
For example, in the above embodiment, the
[0038]
For example, as shown in FIG. 5A, each I /
[0039]
Also, for example, as shown in FIG. 5B, a response to data received from the main controller 1200 (a response data having identification information attached to the data) is provided to each I /
[0040]
FIG. 6 is a functional configuration diagram of a modified example of the
[0041]
The timeout
[0042]
In this way, when the frequency of the control communication is high, priority is given to the control communication to improve the real-time property of the control communication, and otherwise, the priority of the control communication is lowered and the throughput of the information communication is reduced. Can be improved.
[0043]
Note that a plurality of
[0044]
By doing so, the data size of the information communication can be finely adjusted according to the
[0045]
In the modification shown in FIG. 6, a response time measuring unit 1338 may be provided instead of providing the timeout
[0046]
The response time measuring unit 1338 attaches identification information (for example, a serial number) to the data output from the
[0047]
In this way, when the frequency of the control communication is high, priority is given to the control communication to improve the real-time property of the control communication, and otherwise, the priority of the control communication is lowered and the throughput of the information communication is reduced. Can be improved.
[0048]
Note that a plurality of
[0049]
By doing so, the data size of the information communication can be finely adjusted in accordance with the
[0050]
In the above embodiment, the size of the data output from the
[0051]
FIG. 8 is a functional configuration diagram of a modified example of the
[0052]
The
[0053]
The
[0054]
Upon receiving the header information of the TCP packet from the
[0055]
According to the modification shown in FIG. 8, when the flag is registered in
[0056]
In the modification shown in FIG. 8, the
[0057]
Further, for example, in the above embodiment, the case where Ethernet (registered trademark) is used for the connection between the
[0058]
FIG. 9 is a schematic diagram of a modification of the
[0059]
9 differs from
[0060]
FIG. 10 is a functional configuration diagram of the
[0061]
As illustrated, the
[0062]
The output data of the
[0063]
The output data of the
[0064]
The
[0065]
The
[0066]
Now, in USB, data is managed in a list structure for each endpoint (communication destination), and the endpoint itself is managed in a list structure. The upper limit data size when managed by the list structure in the USB standard is about 8 kilobytes. Most of the data transmitted and received by the
[0067]
However, in the
[0068]
In the
[0069]
In this case, each I /
[0070]
【The invention's effect】
As described above, according to the present invention, it is possible to improve the throughput of information communication while suppressing the real-time property of control communication from being impaired.
[Brief description of the drawings]
FIG. 1 is a schematic diagram of a control device to which an embodiment of the present invention is applied.
FIG. 2A is a diagram illustrating a timing at which a flag is set in a flag registration unit, and FIG. 2B is a diagram illustrating an example of registration contents of a flag registration unit;
FIG. 3 is a functional configuration diagram of a
FIG. 4 is an operation flowchart of a
FIG. 5 is a diagram showing a modification of the I /
FIG. 6 is a functional configuration diagram of a modification of the
7A is a diagram illustrating a relationship between a
FIG. 8 is a functional configuration diagram of a modified example of the
FIG. 9 is a schematic diagram of a modification of the
FIG. 10 is a functional configuration diagram of a
[Explanation of symbols]
1100: Control device, 1200: Main controller, 1300: Memory, 1310: Information processing task, 1320: Control processing task, 1330: Communication processing task, 1331: FIFO, 1332 ... FIFO, 1333 ... Size adjustment unit, 1334 ... TCP processing unit, 1335 ... UDP processing unit, 1336 ... IP processing unit, 1337 ... Timeout count measurement unit, 1338 ... Response time measurement unit, 1350 OS, 1360 flag registration unit, 1400 CPU, 1500 NIC, 1600 I / O board, 1601 response processing unit, 1610 ... Motor, 1620 ... Sensor, 1700 ... PC, 1810 ... Bus, 1820 ... LAN, 1900 ... US Controller, 1910 ··· USB hub, 13361 ... transmission queue, 13362 ... queue clear portion, 13,363 ... retransmission request unit
Claims (15)
前記第1および第2の処理系タスクの出力データを通信データに加工する通信データ処理手段と、
前記通信データ処理手段で生成される通信データ各々を、順番に前記ネットワークへ出力するネットワーク送出手段と、
前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを制御するデータサイズ調整手段と、を有すること
を特徴とする通信制御装置。A communication control device for outputting data output from a first processing task and a second processing task managed by an operating system and processed in parallel to a network,
Communication data processing means for processing output data of the first and second processing tasks into communication data;
Network sending means for sequentially outputting communication data generated by the communication data processing means to the network,
A communication control device, comprising: data size adjusting means for controlling the data size of output data of the first processing task input to the communication data processing means.
前記データサイズ調整手段は、前記第2の処理系タスクの状態により前記第1の処理系タスクの出力データのデータサイズを制御すること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The communication control device, wherein the data size adjusting means controls a data size of output data of the first processing task according to a state of the second processing task.
前記オペレーティングシステムは、前記第2の処理系タスクの出力データを優先すべき旨を示すフラグを、所定間隔毎に所定時間設定し、
前記データサイズ調整手段は、前記第2の処理系タスクの出力データを優先すべき旨を示すフラグが設定されている場合に、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを、前記フラグが設定されていない場合に比べ小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The operating system sets a flag indicating that output data of the second processing task should be prioritized for a predetermined time at predetermined intervals,
The data size adjusting means outputs the first processing task input to the communication data processing means when a flag indicating that output data of the second processing task should be given priority is set. A communication control device, wherein a data size of data is reduced as compared with a case where the flag is not set.
前記オペレーティングシステムは、前記第2の処理系タスクの出力データを優先すべき旨を示すフラグを、所定間隔毎に前記第2の処理系タスクの通信相手から通信終了指示を受信するまで設定し、
前記データサイズ調整手段は、前記第2の処理系タスクの出力データを優先すべき旨を示すフラグが設定されている場合に、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを、前記フラグが設定されていない場合に比べ小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The operating system sets a flag indicating that output data of the second processing task should be given priority at predetermined intervals until a communication end instruction is received from a communication partner of the second processing task,
The data size adjusting means outputs the first processing task input to the communication data processing means when a flag indicating that output data of the second processing task should be given priority is set. A communication control device, wherein a data size of data is reduced as compared with a case where the flag is not set.
前記ネットワーク送出手段により前記第2の処理系タスクの通信相手へ送信された通信データに対する応答が、所定時間内に到達せずにタイムアウトとなった回数を計測するタイムアウト回数計測手段をさらに有し、
前記データサイズ調整手段は、前記タイムアウト回数計測手段の計測値が所定の閾値以上となった場合に、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを、前記計測値が前記所定の閾値未満の場合に比べて小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
A response to the communication data transmitted to the communication partner of the second processing task by the network transmission unit further includes a timeout count measurement unit that counts the number of times that a timeout has occurred without arriving within a predetermined time,
The data size adjustment unit, when the measurement value of the timeout count measurement unit is equal to or greater than a predetermined threshold, the data size of the output data of the first processing system task to be input to the communication data processing unit, the A communication control device, wherein the measured value is smaller than a case where the measured value is less than the predetermined threshold.
前記ネットワーク送出手段により前記第2の処理系タスクの通信相手へ送信された通信データに対する応答が、所定時間内に到達せずにタイムアウトとなった回数を計測するタイムアウト回数計測手段をさらに有し、
前記データサイズ調整手段は、前記タイムアウト回数計測手段の計測値が大きくなるほど、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
A response to the communication data transmitted to the communication partner of the second processing task by the network transmission unit further includes a timeout count measurement unit that counts the number of times that a timeout has occurred without arriving within a predetermined time,
The communication control, wherein the data size adjusting unit reduces the data size of the output data of the first processing task input to the communication data processing unit as the measured value of the timeout count measuring unit increases. apparatus.
前記ネットワーク送出手段が前記第2の処理系タスクの通信相手へ通信データを送出してから前記通信相手より応答を受信するまでの応答時間を計測する応答時間計測手段をさらに有し、
前記データサイズ調整手段は、前記応答時間計測手段の計測値が所定の閾値以上となった場合に、前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを、前記計測値が前記所定の閾値未満の場合に比べて小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The network sending unit further includes a response time measuring unit that measures a response time from sending communication data to a communication partner of the second processing task to receiving a response from the communication partner,
The data size adjustment unit, when the measured value of the response time measurement unit is equal to or more than a predetermined threshold, the data size of the output data of the first processing task to be input to the communication data processing unit, the A communication control device, wherein the measured value is smaller than a case where the measured value is less than the predetermined threshold.
前記ネットワーク送出手段が前記第2の処理系タスクの通信相手へ通信データを送出してから前記通信相手より応答を受信するまでの応答時間を計測する応答時間計測手段をさらに有し、
前記データサイズ調整手段は、前記応答時間計測手段の計測値が大きくなるほど、前記第1の通信データ処理手段へ入力する前記処理系タスクの出力データのデータサイズを小さくすること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The network sending unit further includes a response time measuring unit that measures a response time from sending communication data to a communication partner of the second processing task to receiving a response from the communication partner,
The communication control, wherein the data size adjusting unit reduces the data size of the output data of the processing task input to the first communication data processing unit as the measured value of the response time measuring unit increases. apparatus.
前記ネットワーク送出手段は、前記第2の処理系タスクの出力データを優先すべき旨の指示が入力された場合に、前記ネットワークへ送出するために保持している前記第1の処理系タスクの通信データを破棄すると共に、当該通信データの再送要求を前記通信データ処理手段に出力し、
前記通信データ処理手段は、前記第1の処理系タスクの通信データに対する応答を受信するまで、当該通信データを保持すると共に、当該通信相手あるいは前記ネットワーク送出手段から再送要求を受信した場合、当該通信データを前記ネットワーク送出手段で再度出力すること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The network sending means, when an instruction to give priority to the output data of the second processing task is input, communicates the first processing task held for sending to the network. While discarding the data, output a request for retransmission of the communication data to the communication data processing means,
The communication data processing means holds the communication data until a response to the communication data of the first processing task is received, and, when a retransmission request is received from the communication partner or the network sending means, the communication data processing means A communication control device for outputting data again by said network sending means.
前記第1の処理系タスクは、通信相手との通信にTCP(Transmission Control Protocol)を利用する情報処理系タスクであり、
前記第2の処理系タスクは、通信相手との通信にUDP(User datagram protocol)を利用する制御系タスクであり、
前記通信データ処理手段は、前記第1の処理系タスクの出力データをTCPに従ってパケット化するTCP処理手段と、前記第2の処理系タスクの出力データをUDPに従ってパケット化するUDP処理手段と、を有すること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The first processing task is an information processing task that uses TCP (Transmission Control Protocol) for communication with a communication partner.
The second processing task is a control task that uses UDP (User datagram protocol) for communication with a communication partner.
The communication data processing means includes: TCP processing means for packetizing output data of the first processing task according to TCP; and UDP processing means for packetizing output data of the second processing task according to UDP. A communication control device comprising:
前記第1の処理系タスクは、USB(Universal Serial Bus)を利用して映像を含む情報処理データを通信相手と送受する情報処理系タスクであり、
前記第2の処理系タスクは、USBを利用してコマンドを含む制御データを通信相手と送受する制御系タスクであること
を特徴とする通信制御装置。The communication control device according to claim 1, wherein
The first processing task is an information processing task of transmitting and receiving information processing data including video to and from a communication partner using a USB (Universal Serial Bus).
The communication control device according to claim 2, wherein the second processing task is a control task for transmitting / receiving control data including a command to / from a communication partner using a USB.
前記第1および第2の処理系タスクの出力データを通信データに加工するステップと、
加工した通信データ各々を順番に前記ネットワークへ出力するステップと、
前記加工するステップに先立ち、通信データに加工する前記第1の処理系タスクの出力データのデータサイズを制御するステップと、を有すること
を特徴とする通信制御方法。A communication control method for outputting data output from a first processing task and a second processing task managed by an operating system and processed in parallel to a network,
Processing the output data of the first and second processing tasks into communication data;
Outputting the processed communication data to the network in order;
Controlling the data size of output data of the first processing task to be processed into communication data prior to the processing step.
前記制御するステップは、前記第2の処理系タスクの状態により前記第1の処理系タスクの出力データのデータサイズを制御すること
を特徴とする通信制御方法。The communication control method according to claim 12, wherein
The communication control method, wherein the controlling step controls a data size of output data of the first processing task according to a state of the second processing task.
コンピュータを、
前記第1および第2の処理系タスクの出力データを通信データに加工する通信データ処理手段、
前記通信データ処理手段で生成される通信データ各々を順番に前記ネットワークへ出力するネットワーク送出手段、および、
前記通信データ処理手段へ入力する前記第1の処理系タスクの出力データのデータサイズを制御するデータサイズ調整手段として機能させること
を特徴とするプログラム。A program for outputting data output from a first processing task and a second processing task managed by an operating system and processed in parallel to a network,
Computer
Communication data processing means for processing output data of the first and second processing tasks into communication data;
Network sending means for sequentially outputting the communication data generated by the communication data processing means to the network, and
A program for functioning as data size adjusting means for controlling the data size of output data of the first processing task input to the communication data processing means.
前記データサイズ調整手段は、前記第2の処理系タスクの状態により前記第1の処理系タスクの出力データのデータサイズを制御すること
を特徴とするプログラム。The program according to claim 14,
The program, wherein the data size adjusting means controls a data size of output data of the first processing task according to a state of the second processing task.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003158050A JP2004363782A (en) | 2003-06-03 | 2003-06-03 | Communication controller and communication control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003158050A JP2004363782A (en) | 2003-06-03 | 2003-06-03 | Communication controller and communication control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004363782A true JP2004363782A (en) | 2004-12-24 |
Family
ID=34051584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003158050A Pending JP2004363782A (en) | 2003-06-03 | 2003-06-03 | Communication controller and communication control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004363782A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102553A (en) * | 2008-10-24 | 2010-05-06 | Nec Corp | Terminal device, server client system, terminal control program, and terminal control method |
KR20190050998A (en) | 2016-10-14 | 2019-05-14 | 오므론 가부시키가이샤 | Communication device, control device and communication method |
EP3528131A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
EP3528471A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
EP3528132A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Slave device, control system, communication method for response data and storage medium |
EP3528470A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
CN112714113A (en) * | 2020-12-23 | 2021-04-27 | 上海有个机器人有限公司 | Robot network self-repairing method, device, terminal and storage medium |
-
2003
- 2003-06-03 JP JP2003158050A patent/JP2004363782A/en active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102553A (en) * | 2008-10-24 | 2010-05-06 | Nec Corp | Terminal device, server client system, terminal control program, and terminal control method |
KR20190050998A (en) | 2016-10-14 | 2019-05-14 | 오므론 가부시키가이샤 | Communication device, control device and communication method |
US10999367B2 (en) | 2016-10-14 | 2021-05-04 | Omron Corporation | Communication apparatus, control device, and communication method |
EP3528131A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
EP3528471A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
EP3528132A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Slave device, control system, communication method for response data and storage medium |
EP3528470A1 (en) | 2018-02-14 | 2019-08-21 | Omron Corporation | Control device, control system, control method, and control program |
JP2019139630A (en) * | 2018-02-14 | 2019-08-22 | オムロン株式会社 | Control device, control system, control method, and control program |
US10735520B2 (en) | 2018-02-14 | 2020-08-04 | Omron Corporation | Control device, control system, control method, and non-transitory computer-readable storage medium |
US10924406B2 (en) | 2018-02-14 | 2021-02-16 | Omron Corporation | Control device, control system, control method, and non-transitory computer-readable storage medium |
JP7059673B2 (en) | 2018-02-14 | 2022-04-26 | オムロン株式会社 | Control devices, control systems, control methods, and control programs |
CN112714113A (en) * | 2020-12-23 | 2021-04-27 | 上海有个机器人有限公司 | Robot network self-repairing method, device, terminal and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060203730A1 (en) | Method and system for reducing end station latency in response to network congestion | |
US6788704B1 (en) | Network adapter with TCP windowing support | |
JP4791322B2 (en) | Method and apparatus for adaptive bandwidth control with bandwidth guarantee | |
KR100973201B1 (en) | Method and system for transparent tcp offload | |
EP1513321B1 (en) | System and method for TCP/IP offload independent of bandwidth delay product | |
JP2009060660A (en) | Transmission apparatus and transmission method | |
US8259728B2 (en) | Method and system for a fast drop recovery for a TCP connection | |
US7953113B2 (en) | Method and apparatus for adaptive bandwidth control with user settings | |
US8341453B2 (en) | Transmission apparatus that transmits data according to a protocol, and method for measuring time in the transmission apparatus | |
US20070291782A1 (en) | Acknowledgement filtering | |
JP2004363782A (en) | Communication controller and communication control method | |
US20070019550A1 (en) | Shaper control method, data communication system, network interface apparatus, and network delay apparatus | |
Rio et al. | A map of the networking code in Linux kernel 2.4. 20 | |
JP2008053888A (en) | Communication equipment, program, information storage medium and communication control method | |
JP2011151490A (en) | Relay device and band control method | |
JP5116319B2 (en) | Message relay apparatus and method | |
US7213074B2 (en) | Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet | |
JP2000134263A (en) | Data communication equipment | |
JP2016012801A (en) | Communication apparatus, communication system, and communication apparatus control method | |
JP2009194504A (en) | Computer device and packet reception control method | |
Barczyk et al. | High rate packets transmission on Ethernet LAN using commodity hardware | |
JP2012049883A (en) | Communication device and packet processing method | |
JP2004260562A (en) | Method and device for transmitting and receiving packet | |
KR100545665B1 (en) | Apparatus for guaranteeing Quality of Service in Internet | |
Rio | Technical Report DataTAG-2004-1 FP5/IST DataTAG Project |