JP2005202873A - 分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム - Google Patents
分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム Download PDFInfo
- Publication number
- JP2005202873A JP2005202873A JP2004010901A JP2004010901A JP2005202873A JP 2005202873 A JP2005202873 A JP 2005202873A JP 2004010901 A JP2004010901 A JP 2004010901A JP 2004010901 A JP2004010901 A JP 2004010901A JP 2005202873 A JP2005202873 A JP 2005202873A
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing
- controlled
- transmission
- terminal
- 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.)
- Withdrawn
Links
Images
Landscapes
- Multi Processors (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】 データを送受信するときに生じるエラーが原因となって、処理されたデータを得るときに遅延が生じることを回避する。
【解決手段】 制御端末3から被制御端末4に対する処理前データの送信で送信エラーが生じた場合には、制御端末3に備えられた制御部11がACKの内容やACKの返信がないことに基づいて、処理前データの送信で送信エラーが生じたことを検出し、プロセッサ12にタスクを実行させて、被制御端末4に対して送信した処理前データと同じデータを代行処理させる。
【選択図】 図5
【解決手段】 制御端末3から被制御端末4に対する処理前データの送信で送信エラーが生じた場合には、制御端末3に備えられた制御部11がACKの内容やACKの返信がないことに基づいて、処理前データの送信で送信エラーが生じたことを検出し、プロセッサ12にタスクを実行させて、被制御端末4に対して送信した処理前データと同じデータを代行処理させる。
【選択図】 図5
Description
本発明は、複数の端末が互いに負荷を分散しながらデータ処理を行う分散処理システム、この分散処理システムを構成する分散処理制御端末、この分散処理システムに適用される分散処理方法、及びこの分散処理システムを実現させるための分散処理プログラムに関する。
近年、ソフトウェアの複雑化や高度化に伴い、プロセッサによって処理されるデータ量が増大している。処理するデータ量が増大するとプロセッサに負担がかかり、処理の終了までに時間を要するなどの問題が生じる。かかる問題を改善するために、1つのプロセッサだけで全ての処理を行わずに、互いに接続されている複数のプロセッサを使用して、データ処理を行う分散処理システムが開発されている。
分散処理システムとしては、例えば、複数の端末装置を備えており、新たにタスクの実行を要求するときに、タスクの最大実行速度と現在実行されているタスク数とから各プロセッサが新たなタスクを実行するときに要する実行タスク処理速度を求め、さらに通信速度とタスク処理の移動に伴う通信量からタスク移動時間を求め、各プロセッサの実行タスク処理速度とタスク移動時間とから、新たなタスクをどのプロセッサで実行すると最も早く処理が終了するかを判断する分散処理システムが提案されている(例えば、特許文献1参照)。
ところで、近年、DVD(Digital Versatile Disc)プレーヤやテレビジョン用ゲーム機など家庭内で使用される電子機器に、処理能力の高いプロセッサが搭載されている。そこで、これらの電子機器に搭載されたプロセッサを使用して、家庭内などで分散処理を行うことが提案されている。
しかし、複数の電子機器に搭載されているプロセッサを使用した分散処理システムでは、各電子機器はEthernet(登録商標)などの有線で接続され、各プロセッサで処理するデータや各プロセッサで処理された後のデータなどは、有線を介して送受信される。各電子機器を有線で接続すると、電子機器の配置が制限されたり、接続に使用されるコードが邪魔になるなどの不都合が生じ、家庭内などで使用する上で不便なものとなる。
以上説明した不都合を回避するために、各電子機器を、無線通信網を介して接続した分散処理システムが提案されている。この分散処理システムでは、各電子機器を、無線通信網を介して接続することによって、コードを使用して接続する必要がなくなる。したがって、分散処理システムによれば、電子機器を自由に配置することが可能となり、また、コードが邪魔にならなくなる。
しかしながら、無線通信網を介してデータの送受信を行うと、伝送エラーが一定の割合で生じる。例えば、パケットエラー率は0.01〜0.1の割合で生じる。無線通信網を介してデータを送受信するときには、伝送エラーが生じると、データの再送信が行われるために伝送遅延が生じてしまう。
また、無線通信網を介してデータを送受信するときには、送受信のときに使用するチャンネルを他の無線通信システムと共有する。したがって、分散処理システムでは、使用可能なチャンネルが他の通信システムで使われているなどの理由によって混雑しているときにも、伝送速度が遅くなり、伝送遅延が生じてしまう。
以上説明した理由によって、無線通信網を介して接続された分散処理システムでは、所定の時間内にデータ処理を終了させることが困難となる場合が生じる。したがって、分散処理されたデータを使用して行われる後段の処理が遅くなるなどの不都合が生じる。
本発明は、以上説明した従来の実情を鑑みて提案されたものであり、無線通信網を介してデータの送受信を行ったときに、伝送エラーなどによって、処理後データを得るまでに生じる遅延を低減することが可能な分散処理システム、この分散処理システムを構成する分散処理制御端末、この分散処理システムに適用される分散処理方法、及びこの分散処理システムを実現させるための分散処理プログラムを提供することを目的とする。
本発明に係る分散処理システムは、 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムであって、上記分散処理制御端末は、上記タスクを実行してデータを処理するデータ処理手段と、上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、上記被制御端末は、上記タスクを実行して、上記分散処理制御端末の送信手段によって送信された処理前データを処理する被制御側データ処理手段を備え、上記分散処理制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、上記分散処理制御端末の上記データ処理手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記送信手段が上記被制御端末に対して送信した処理前データと同じデータを、上記タスクの実行により処理することを特徴とする。
本発明に係る分散処理制御端末は、無線通信網を介して被制御端末と接続されており、一連のデータ処理を複数のタスクに分割して、上記タスクを実行するとともに上記被制御端末に実行させる分散処理制御端末であって、上記タスクを実行してデータを処理するデータ処理手段と、上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、上記データ処理手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記送信手段が上記被制御端末に対して送信した処理前データと同じデータを、上記タスクを実行して処理することを特徴とする。
本発明に係る分散処理方法は、無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムの分散処理方法であって、上記分散処理制御端末が、上記被制御端末に対して、上記被制御端末で実行可能とされているタスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、上記被制御端末が上記タスクを実行することによって、上記第1の送信ステップで送信された処理前データを処理するデータ処理ステップと、上記分散処理制御端末が、上記送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、 上記分散処理制御端末が、上記送信エラー検出ステップで上記送信エラーを検出した場合、上記第1の送信ステップで送信した上記処理前データと同じデータを、タスクを実行することで処理する送信時代行処理ステップとを備えることを特徴とする。
本発明に係る分散処理プログラムは、無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムで実行される分散処理プログラムであって、上記分散処理制御端末が、上記被制御端末に対して、上記被制御端末で実行可能とされているタスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、上記被制御端末が上記タスクを実行することによって、上記第1の送信ステップで送信された処理前データを処理するデータ処理ステップと、上記分散処理制御端末が、上記送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、上記分散処理制御端末が、上記送信エラー検出ステップで上記送信エラーを検出した場合、上記第1の送信ステップで送信した上記処理前データと同じデータを、タスクを実行することで処理する送信時代行処理ステップとを備えることを特徴とする。
本発明に係る分散処理システムは、無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムであって、上記分散処理制御端末は、上記タスクを実行してデータを処理するデータ処理手段と、上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、上記被制御端末は、タスクを実行してデータを処理する被制御側データ処理手段を備え、上記制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、上記制御端末の上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合に、上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信することを特徴とする。
本発明に係る分散処理制御端末は、無線通信網を介して被制御端末と接続されており、一連のデータ処理を複数のタスクに分割して、上記タスクを実行するとともに上記被制御端末に実行させる分散処理制御端末であって、上記タスクを実行してデータを処理するデータ処理手段と、上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、上記制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記被制御端末のうちいずれかに送信することを特徴とする。
本発明に係る分散処理方法は、無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムの分散処理方法であって、上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、上記分散処理制御端末が、上記第1の送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、上記送信エラー検出ステップで上記送信エラーが検出された場合、上記分散処理制御端末が、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信する第2の送信ステップとを備えることを特徴とする。
本発明に係る分散処理プログラムは、無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムで実行される分散処理プログラムであって、上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、上記分散処理制御端末が、上記第1の送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、上記送信エラー検出ステップで上記送信エラーが検出された場合、上記分散処理制御端末が、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信する第2の送信ステップとを備えることを特徴とする。
本発明によれば、分散処理制御端末から被制御端末に対する処理前データの送信でエラーが生じた場合には、分散処理制御端末のデータ処理手段がタスクを実行して、被制御端末に送信した処理前データと同じデータを代行処理する。
したがって、本発明によれば、処理前データの送受信のエラーに伴って、分散処理制御端末が処理後データを得るときに生じる遅延を回避することが可能となり、分散処理を円滑に行うことが可能となる。
また、本発明によれば、分散処理制御端末によって処理前データを再送しない構成とされているために、分散処理制御端末の送信手段の構成を簡略化することが可能となり、分散処理制御端末を小型化することが可能となる。
本発明によれば、分散処理制御端末が複数の被制御端末に対して処理前データを送信しており、分散処理制御端末から被制御端末に対する処理前データの送信でエラーが生じた場合に、被制御端末に対して送信した処理前データと同じデータを、エラーとなった送信が行われてから所定の時間が経過したときに、複数の被制御端末のうちいずれかに対して送信する。
したがって、本発明によれば、処理前データや処理後データの送受信のエラーに伴って、分散処理制御端末が処理後データを得るときに生じる遅延を低減することが可能となり、分散処理を円滑に行うことが可能となる。
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。
図1に示すように、本発明を適用した分散処理システム1は、無線通信網2を介して接続された制御端末3と、制御端末3との間でデータを送受信する第1〜第3の被制御端末4a,4b,4c(以下、区別する必要のないときは、被制御端末4と総称する。)とを備える。本発明を適用した分散処理システム1では、例えば動画像を再生するために行うデータ処理などを、制御端末3と、被制御端末4とで分散処理する。
本実施の形態では、制御端末3と被制御端末4とは、例えばIEEE802.11の仕様などに従って通信を行う。
すなわち、所望のデータを送信するときには、図2に示すように、最初に、データ送信側がデータ受信側に対してRTS(Request To Send)を送信する。データ受信側は、RTSを受信するとCTS(Clear To Send)を周囲に対して送信することによって、周囲の端末に対してパケット交換の開始を通知する。そして、データ送信側は、データ受信側に対して所望のデータを送信し、データ受信側は、所望のデータを受信する。データ受信側は、データ送信側から送信された所望のデータを受信すると、データ送信側に対してACK(Acknowledgement;到達確認応答)を送信する。なお、受信側は、RTS又はデータを正常に受信できなかった場合には、CTS又はACKを送信しない。また、送信側は、CTSを受信できなかった場合には、ACKを送信しない。
制御端末3は、タスクを実行するとともに、被制御端末4に対してタスクの実行によってデータ処理される前のデータ(以下、処理前データという。)を送信する。また、各被制御端末4がタスクの実行によってデータを処理した後に、返信したデータ(以下、処理後データという。)を受信する。制御端末3は、各被制御端末4から受信したデータを、一連のデータ処理の実行によって処理されたデータとしてまとめ、後段の処理を行う。
なお、本実施の形態では、各処理前データ及び処理後データにデータ番号mが付され、データ番号mの処理前データが処理されてデータ番号mの処理後データとされる。
制御端末3は、制御部11と、プロセッサ12と、無線通信部13とを備える。制御部11と、プロセッサ12と、無線通信部13とは、図示しないバスなどを介して互いに接続されている。
制御部11は、プリセッサ12、無線通信部13などを制御する。
また、制御部11は、処理前データを送信するときに生じたエラー(以下、送信エラーという)及び処理後データを受信するときに生じたエラー(以下、受信エラーという。)を検出し、プロセッサ12にタスクを実行させる。具体的に説明すると、送信エラーは、被制御端末4から送信されたACKの内容又は被制御端末4からACKを受信できないことによって判断する。一方、受信エラーは、処理前データを送信するときに処理前データにIDを付加し、IDと対応して期限を設定し、期限までにIDが付加された処理後データが返信されるか否かを確認することで、判断される。
プロセッサ12は、タスクを実行して処理前データを処理する。本実施の形態では、タスクAを実行する。なお、本実施の形態では、タスクAによって処理される処理前データ、およびタスクAによって処理される処理後データのデータ番号には、先頭にAが付けられる。
また、プロセッサ12は、制御部11によってエラーが検出されたときに、制御部11の制御に従ってタスクを実行して、処理前データを代行処理する。
詳述すると、プロセッサ12は、送信エラーが生じた場合、制御部11の制御に従ってタスクを実行し、被制御端末4に対して送信した処理前データと同じデータを代行処理する。また、受信エラーが生じたときには、制御部11の制御に従ってタスクを実行し、被制御端末4から送信された処理後データに対応する処理前データと同じデータ、言いかえると、被制御端末4から送信された処理後データが被制御端末4によって処理される前の処理前データと同じデータを代行処理する。すなわち、期限までに返信が確認されないIDが付与された処理前データと同じデータを代行処理する。
なお、プロセッサ12は、送信エラーや受信エラーが生じたときに処理前データを代行処理する構成とされているために、処理能力の一部を、予め代行処理用に確保できる構成とされていることが好ましい。
無線通信部13は、MAC(Media Access Controller)が備えられており、制御部11による制御に基づいて、無線通信網2を介して、所定の周期毎に、処理前データを被制御端末4のうちいずれかに対して送信したり、被制御端末4のうちいずれかから返信された処理後データを受信する。
本実施の形態では、無線通信部13は、図3に示すように、第1〜第3の被制御端末4a,4b,4cのそれぞれと、2周期ずつ通信する。すなわち、第1〜第3の被制御端末4a,4b,4cのそれぞれと、6周期おきに通信する。通信している2周期のうち最初の1周期は各被制御端末4から送信された処理後データを受信し、次の1周期は各被制御端末4に対して処理前データを送信する。
なお、図3中矢印Pで示される期間が1周期に相当する。また、図3中矢印a〜矢印fは被制御端末4から制御端末3への処理後データの返信を示しており、矢印g〜矢印lは制御端末3から被制御端末4への処理前データの送信を示している。図3では、処理前データ及び処理後データの送信を示す矢印のみが示されており、RTS、CTS、ACKの送信を示す矢印が省略されているが、処理後データ及び処理前データが送信される前にはRTS及びCTSが送信されており、処理後データ及び処理前データが送信された後にはACKが送信されている。また、図3では、矢印Xに沿った方向が時間を示している。以下、図5〜図7、図9、図13〜図15、図18についても同様とされる。
なお、本実施の形態では、無線通信部13は、被制御端末4に対する処理前データの送信を、所定の周期毎に行っているが、被制御端末4に対する処理前データの送信は、周期と関係なく行っても良い。
被制御端末4は、制御端末3からの指示に基づいて、タスクを実行して、制御端末3から送信された処理前データを処理する。本実施の形態では、各被制御端末4は、全てタスクAを実行する。
被制御端末4は、プロセッサ21と、無線通信部22と、被制御端末4に備えられた各部を制御する制御部23とを備える。
プロセッサ21は、タスクを実行して制御端末3から送信された処理前データを処理し、処理後データとする。本実施の形態では、タスクAを実行する。
なお、本実施の形態では、第1〜第3の被制御端末4a,4b,4cに備えられたプロセッサ21は処理能力が同じとされているが、第1〜第3の被制御端末4a,4b,4cに備えられるプロセッサ21は、処理能力が異なっていても良い。
無線通信部22は、無線通信網2を介して、制御端末3から送信された処理前データを受信したり、処理後データを制御端末3に対して送信する。
以上説明した分散処理システム1で、制御端末3が被制御端末4に対して処理前データを送信するときに制御部11が行う制御は、図4のフローチャートに示す通りとなる。
先ず、ステップST11で、制御部11は、データ番号Amを初期値A00に設定し、機器番号Nを初期値1に設定する。なお、データ番号AmはA00からAmaxまでとされる。本実施の形態では、Amax=A99とされる。また、機器番号Nは、制御端末3及び第1〜第3の被制御端末4a〜4cに対応しており、1からNmaxまでとされる。本実施の形態では、機器番号N=1は制御端末3を示しており、機器番号N=2は第1の被制御端末4aを示しており、機器番号N=3は第2の被制御端末4bを示しており、機器番号N=4は第3の被制御端末4cを示している。すなわち、本実施の形態では、Nmax=4とされている。
次に、ステップST12で、制御部11は、機器番号Nが1であるか否かを確認する。機器番号Nが1であるときはステップST13に進み、機器番号Nが1以外のときはステップST14に進む。
ステップST13では、プロセッサ12が、制御部11の制御に従ってタスクを実行することによって、データ番号Amの処理前データを処理する。そして、ステップST16に進む。
また、ステップST14では、無線通信部13が、制御部11の制御に従って、データ番号Amの処理前データを、機器番号Nに相当する被制御端末4に対して送信する。そして、ステップST15に進む。なお、処理前データが送信された被制御端末4では、プロセッサ21がタスクAを実行して、制御端末3から送信された処理前データを処理する。
ステップST15では、制御部11は、ACKが受信されているか否か、又はACKの内容に基づいて、被制御端末4に対するデータの送信が成功したか否かを確認する。成功したときにはステップST16に進み、失敗したときには、ステップST13に戻る。
そして、ステップST16では、制御部11は、データ番号Amを1増加させてステップST17に進む。
次に、ステップST17では、制御部11は、機器番号Nを1増加させてステップST18に進む。
次に、ステップST18では、制御部11は、機器番号NがNmaxより大であるか否かを確認する。機器番号NがNmaxより大であるときにはステップST19に進み、機器番号NがNmax以下であるときはステップST20に進む。
ステップST19では、制御部11は、機器番号Nを1に設定してステップST20に進む。
そして、ステップST20では、制御部11は、データ番号Am=Amaxであるか否かを判断する。データ番号Am=AmaxでないときにはステップST12に戻り、データ番号Am=Amaxであるときには、処理を終了させる。
以上説明したように、分散処理システム1では、送信エラーが生じない場合には、図3に示すように、制御端末3は、2周期毎に、各被制御端末4に対して処理前データを送信するとともに、被制御端末4から返信された処理後データを受信し、さらにタスクを実行してデータ処理を行う。そして、各被制御端末4は、制御端末3から送信された処理前データを、タスクを実行して処理する。
また、送信エラーが生じた場合には、図5に示すように、制御部11の制御によってプロセッサ12がタスクを実行することによって、被制御端末4に対して送信した処理前データと同じデータを代行処理する。
一般的な通信システムでは、一方の電子機器から他方の電子機器にデータを送信するときにエラーが生じると、一方の電子機器は、他方の電子機器から送信されるACKの内容又は他方の電子機器からACKが送信されないことに基づいて、エラーによって送信されなかったデータを、他方の電子機器と次に通信を行うタイミングで、他方の電子機器に対して再度送信(再送)する方法によって、送信するときに生じるエラーに対処している。
かかる方法に従って分散処理システム1でデータの送受信を行うと、制御端末3が被制御端末4に対する処理前データの送信でエラーが生じたときには、制御端末3は、エラーによって送信できなかったデータを、次に同じ被制御端末4と通信するタイミングで、同じ被制御端末4に対して再度送信する構成とされる。したがって、制御端末3では、送信するときにエラーが生じた処理前データに対応する処理後データを得る時間に、6周期分の遅延が生じてしまう。
例えば、図6に示すように、制御端末3が第2の被制御端末4bに対してデータ番号A02が付与された処理前データを送信してエラーが生じたときには、制御端末3は、データ番号A02が付与された処理前データを、第2の被制御端末4bに対して再送する。分散処理システム1では、制御端末3は、第1の被制御端末4a、第2の被制御端末4b、及び第3の被制御端末4cとの間で、それぞれ2周期毎に順番に通信を行う構成とされているので、第2の被制御端末4bに対してデータを再送すると、再送したデータは、6周期分遅延して第2の被制御端末4bに送信され、処理された後に、6周期分遅延して制御端末3に返信される。
一方、本実施の形態の分散処理システム1では、制御端末3から被制御端末4に対して処理前データを送信するときに送信エラーが生じると、制御部11の制御によってプロセッサ12がタスクを実行することによって、送信した処理前データと同じデータを代行処理する構成とされている。例えば、図5に示すように、第2の被制御端末4bに対して送信したときに送信エラーとなったデータ番号A02の処理前データを、プロセッサ12が代行処理する。
以上説明した構成とすることによって、分散処理装置1では、図7に示すように、制御端末3が被制御端末4に対して処理前データを送信するときに送信エラーが生じた場合、被制御端末4に対して送信した処理前データと同じデータを、制御端末3のプロセッサ12がタスクを実行することによって代行処理する構成とされている。
したがって、分散処理システム1では、送信エラーが生じた場合に送信した処理前データと同じデータが再度同じ被制御端末4に送信されることによって制御端末3が処理後データを得るまでに生じる遅延を、回避することが可能となる。また、制御端末3が処理後データを得た後に行われる処理が遅延することを回避することが可能となる。
また、制御端末3が被制御端末4から送信された処理後データを受信するときに、制御部11が行う制御は、図8のフローチャートに示す通りとなる。
先ず、ステップST31で、制御部11は、データ番号Amを初期値A00に設定する。
次に、ステップST32で、制御部11は、データ番号Amが付与された処理前データの送信が完了したか否かを確認する。完了したときにはステップST33に進み、完了していないときにはステップST32に戻る。
次に、ステップST33で、制御部11は、タイマーによる測定時間TをTmaxに設定して、計測を開始する。なお、Tmaxは処理前データが被制御端末4に送信されてから、被制御端末4によって処理されて処理後データとされ、被制御端末4から送信されて、制御端末3によって受信されるまでの時間に相当し、本実施の形態では6周期分となる。
次に、ステップST34で、制御部11は、測定時間Tが0であるか否かを判断する。測定時間Tが0でないときにはステップST35に進み、測定時間Tが0であるときにはステップST36に進む。
ステップST35では、測定時間Tを1減じた後に、ステップST34に戻る。
ステップST36では、データ番号Amが付与された処理後データの受信が完了したか否かを判断する。受信が完了していないときにはステップST37に進み、受信が完了しているときにはステップST38に進む。
ステップST37では、プロセッサ12が、データ番号Amが付与された処理前データを、タスクAを実行することによって処理する。そして、ステップST38に進む。
ステップST38では、制御部11が、データ番号Amを1増加させる。そして、ステップST39では、データ番号AmがAmaxであるか否かを判断する。データ番号AmがAmaxではないときにはステップST32に戻り、データ番号AmがAmaxであるときには処理を終了させる。
以上説明したように、本発明を適用した分散処理システム1によれば、制御端末3から被制御端末4に対する処理前データの送信で送信エラーが生じた場合には、制御端末3のプロセッサ12がタスクを実行して、被制御端末4に対して送信した処理前データと同じデータを代行処理する。また、被制御端末4から制御端末3に返信された処理後データの受信で受信エラーが生じた場合には、制御端末3のプロセッサ12がタスクを実行して、被制御端末4から送信された処理後データに対応する処理前データと同じデータを処理する。
したがって、本発明を適用した分散処理システム1では、処理前データや処理後データの送受信のエラーに伴って、制御端末3が処理後データを得るまでに生じる遅延を低減することが可能となり、分散処理を円滑に行うことが可能となる。また、処理後データを得た後に行われるデータ処理の遅延を低減することも可能となる。
また、分散処理システム1は、被制御端末4に対する処理前データの再送を行わない構成とすることによって、制御端末3の無線通信部13に備えられたMACの構成を簡略化することが可能となるために、制御端末3を小型化することが可能となる。
また、分散処理システム1では、制御端末3が、被制御端末4に対して処理前データを送信したり、被制御端末4との処理前データ及び処理後データの送受信でエラーが生じたときにタスクを実行して処理前データを代行処理しているために、分散処理全体を一元管理している。したがって、エラーが生じたときに、制御端末3によって適切な対処を行うことなどが可能となり、分散処理を利用したアプリケーションの実行を最適に行うことが可能となる。
なお、図9に示すように、制御端末3は、処理前データを第1〜第3の被制御端末4a,4b,4cのうち1つに対して送信して送信エラーが生じた場合、送信エラーが生じたときに送信していた処理前データと同じデータを、エラーとなった送信が行われてから所定の時間が経過したとき、すなわち、本実施の形態では2周期経過したときに、第1〜第3の被制御端末4a,4b,4cのうち他の1つに対して送信する構成としても良い。
かかる構成で被制御端末4に対して処理前データを送信するときに、制御部11が行う制御は、図10のフローチャートに示す通りとなる。
先ず、ステップST51で、制御部11は、データ番号Amを初期値A00に設定し、機器番号Nを初期値1に設定する。
次に、ステップST52で、制御部11は、機器番号Nが1であるか否かを確認する。機器番号Nが1であるときはステップST53に進み、機器番号Nが1以外のときはステップST54に進む。
ステップST53では、プロセッサ12が、制御部11の制御に従ってタスクを実行することによって、データ番号Amの処理前データを処理する。そして、ステップST56に進む。
また、ステップST54では、無線通信部13が、制御部11の制御に従って、データ番号Amの処理前データを、機器番号Nに相当する被制御端末4に対して送信する。そして、ステップST55に進む。なお、処理前データが送信された被制御端末4では、プロセッサ21が、タスクを実行することによって処理前データを処理する。
ステップST55では、制御部11は、ACKが受信されたか否か、又はACKの内容に基づいて、被制御端末4に対する処理前データの送信が成功したか否かを確認する。成功したときにはステップST56に進み、失敗したときにはステップST57に進む。
ステップST56では、制御部11は、データ番号Amを1増加させてステップST57に進む。
ステップST57では、制御部11は、機器番号Nを1増加させてステップST58に進む。
次に、ステップST58では、制御部11は、機器番号NがNmaxより大であるか否かを確認する。機器番号NがNmaxより大であるときにはステップST59に進み、機器番号NがNmax以下であるときはステップST60に進む。
ステップST59では、制御部11は、機器番号Nを1に設定してステップST60に進む。
そして、ステップST60では、制御部11は、データ番号Am=Amaxであるか否かを判断する。データ番号Am=AmaxでないときにはステップST52に戻り、データ番号Am=Amaxであるときには、処理を終了させる。
以上説明した構成とすることによって、分散処理システム1では、制御端末3が処理後データを得るまでに生じる遅延が2周期とされる。したがって、制御端末3が処理後データを得るまでに生じる遅延を低減することが可能となる。
また、分散処理システム1は、以上説明した構成とすることによって、制御端末3に備えられたプロセッサ12は、エラーが生じたときにタスクを実行して代行処理をする必要がなくなる。
ところで、分散処理システム1では、第1〜第3の被制御端末4a,4b,4cは同じタスクを実行することが可能とされているが、第1〜第3の被制御端末4a,4b,4cが実行できるタスクは異なっていても良い。以下では、図11に示すように、第1〜第3の被制御端末4a,4b,4cによって実行されるタスクが異なっており、複数のタスクを同時に処理する分散処理システム51について説明する。
なお、分散処理システム51の説明では、分散処理システム1と同等な構成、部位、機能についての説明を省略し、また、図面において同じ符号を付するものとする。
本発明を適用した分散処理システム51は、無線通信網2を介して接続された制御端末53と、制御端末53との間でデータを送受信する第1〜第3の被制御端末4a,4b,4cとを備える。分散処理システム1は、タスクA,B,C,Dを実行することが可能とされている。
制御端末53は、タスクを実行して処理前データを処理するとともに、被制御端末4に対して処理前データを送信する。制御端末53は、制御部61と、プロセッサ62と、無線通信部63とを備える。制御部61と、プロセッサ62と、無線通信部63とは、図示しないバスなどを介して互いに接続されている。
制御部61は、プロセッサ62と、無線通信部63などを制御する。また、制御部61は、処理前データを送信するときに生じた送信エラーを検出する。送信エラーの検出は、制御部11と同じ方法で行われる。
プロセッサ62は、タスクを実行して処理前データを処理する。また、プロセッサ62は、分散処理システム1で実行可能なタスクを全て実行することができる。本実施の形態では、プロセッサ62は、タスクA,B,C,Dを実行することが可能とされており、エラーがないときはタスクAのみを実行し、エラーの発生に応じてタスクB,C,Dを実行する。
なお、本実施の形態では、タスクA,B,C,Dによって処理される処理前データ、およびタスクA,B,C,Dによって処理された処理後データのデータ番号の前に、それぞれA,B,C,Dがつけられる。また、本実施の形態では、対応する処理前データと処理後データには同じデータ番号Am,Bm,Cm,Dmが付与される。
また、プロセッサ62は、制御部61によってエラーが検出されたときに、制御部61の制御に従って、タスクを実行してデータを処理する。詳述すると、被制御端末4に対する処理前データの送信で送信エラーが生じたときには、送信エラーが生じた場合に送信した処理前データと同じデータを、送信先の被制御端末4で実行可能とされているタスクを実行することによって代行処理する。また、被制御端末4から返信された処理後データの受信で受信エラーが生じたときには、エラーが生じた場合に被制御端末4から返信された処理後データに対応する処理前データと同じデータを、処理後データの送信元の被制御端末4で実行可能とされているタスクを実行することによって代行処理する。
なお、制御端末3に備えられたプロセッサ62は、エラーが生じたときに処理前データを代行処理する構成とされているために、処理能力の一部を、予め代行処理用に確保できる構成とされていることが好ましい。
無線通信部63は、制御部61による制御に基づいて、無線通信網2を介して、所定の周期毎に、処理前データを被制御端末4のうちいずれかに対して送信したり、被制御端末4のうちいずれかから返信された処理後データを受信する。
詳述すると、無線通信部63は、第1被制御端末4aに対してはデータ番号Bmが付与された処理前データを送信し、第2の被制御端末4bに対してはデータ番号Cmが付与された処理前データを送信し、第3の被制御端末4cに対してはデータ番号Dmが付与された処理前データを送信する。また、第1の被制御端末4aからデータ番号Bmが付与された処理後データを受信し、第2の被制御端末4bからデータ番号Cmが付与された処理後データを受信し、第3の被制御端末4cからデータ番号Dmが付与された処理後データを受信する。
なお、本実施の形態では、無線通信部63は、被制御端末4に対する処理前データの送信を、所定の周期毎に行っているが、被制御端末4に対する処理前データの送信は、周期と関係なく行っても良い。
以上説明した分散処理システム51で、制御端末53が被制御端末4に対して処理前データを送信するときに制御部61が行う制御は、図12A及び図12Bのフローチャートに示す通りとなる。
先ず、ステップST70で、制御部61は、機器番号Nを1に設定するとともに、データ番号AmをA00、BmをB00、CmをC00、DmをD00に設定する。なお、データ番号AmはA00からAmaxまでとされ、データ番号BmはB00からBmaxまでとされ、データ番号CmはC00からCmaxまでとされ、データ番号DmはD00からDmaxまでとされる。
次に、ステップST71で、制御部61は、機器番号Nが1か否かを判断する。機器番号Nが1であるときにはステップST72に進み、機器番号Nが1以外であるときにはステップST74に進む。
ステップST72では、制御部61の制御に基づいてプロセッサ62がタスクAを実行し、データ番号Amが付与された処理前データを処理する。
そして、ステップST73で、制御部61は、データ番号Amを1増加させて、ステップST91に進む。
また、ステップST74で、制御部61は、Nが2であるか否かを判断する。Nが2であるときにはステップST75に進み、Nが2以外のときにはステップST80に進む。
ステップST75では、無線通信部63が、制御部61の制御に基づいて、データ番号Bmの処理前データを、第1の被制御端末4aに対して送信する。
次に、ステップST76で、制御部61は、ステップST75で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が失敗したときにはステップST77に進み、処理前データの送信が成功したときにはステップST78に進む。
ステップST77では、プロセッサ62が、制御部61の制御に基づいてタスクBを実行し、データ番号Bmの処理前データを処理する。そして、ステップST78に進む。
ステップST78では、制御部61が、データ番号Bmを1増加させる。そして、ステップST91に進む。
また、ステップST80で、制御部61は、機器番号Nが3であるか否かを判断する。機器番号Nが3であるときにはステップST81に進み、機器番号Nが3以外のときにはステップST85に進む。
次に、ステップST81で、無線通信部63が、制御部61の制御に基づいて、データ番号Cmの処理前データを、第2の被制御端末4bに対して送信する。
次に、ステップST82では、制御部61が、ステップST81で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が失敗したときにはステップST83に進み、処理前データの送信が成功したときにはステップST84に進む。
ステップST83では、プロセッサ62が、制御部61の制御に基づいてタスクCを実行し、データ番号Cmの処理前データを処理する。そして、ステップST84に進む。
ステップST84では、制御部61が、データ番号Cmを1増加させる。そして、ステップST91に進む。
また、ステップST85で、制御部61は、機器番号Nが4であるか否かを判断する。機器番号Nが4であるときにはステップST86に進み、機器番号Nが4以外のときには処理を終了する。
次に、ステップST86で、無線通信部63が、制御部61の制御に基づいて、データ番号Dmの処理前データを、第3の被制御端末4cに対して送信する。
次に、ステップST87では、制御部61が、ステップST86で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が失敗したときにはステップST88に進み、処理前データの送信が成功したときにはステップST89に進む。
ステップST88では、プロセッサ62が、制御部61の制御に基づいてタスクDを実行し、データ番号Dmの処理前データを処理する。そして、ステップST89に進む。
ステップST89では、制御部61が、データ番号Dmを1増加させる。そして、ステップST91に進む。
ステップST91では、制御部61は、機器番号Nを1増加させる。
次に、ステップST92で、機器番号NがNmaxより大きいか否かを判断する。機器番号NがNmaxより大きいときにはステップST93に進み、機器番号NがNmax以下であるときにはステップST94に進む。
ステップST93では、制御部61は、機器番号Nを1とする。そして、ステップST94に進む。
ステップST94では、制御部61は、データ番号Am=Amax、データ番号Bm=Bmax、データ番号Cm=Cmax、且つデータ番号Dm=Dmaxという条件が満たされている否かを確認する。そして、条件が満たされていないときにはステップST71に戻り、条件が満たされているときには処理を終了する。
以上説明したように、分散処理システム51では、処理前データの送信で送信エラーが生じないときには、図13に示すように、2周期毎に、制御端末53が各被制御端末4に対して処理前データを送信するとともに、被制御端末4から返信された処理後データを受信し、さらにタスクAを実行してデータ処理を行う。そして、各被制御端末4は、制御端末3から処理前データが送信されると、タスクB,C,Dを実行して処理する。
また、処理前データの送信で送信エラーが生じたときには図14に示すように、制御部61の制御によってプロセッサ62がタスクを実行することによって、送信した処理前データと同じデータを代行処理する。
以上説明した分散処理システム51で、一般的な通信システムで行われている方法、すなわち、送信エラーによって送信されなかった処理前データを、同じ電子機器に対して次に通信を行うタイミングで再度送信する方法を適用すると、制御端末3は、例えば図15に示すように、送信するときに送信エラーが生じた処理前データに対応する処理後データを得る時間が遅延してしまう。
一方、本実施の形態の分散処理システム51では、図14に示すように、制御端末53から被制御端末4に対して処理前データを送信するときに送信エラーが生じると、制御部61の制御によってプロセッサ62がタスクを実行し、送信エラーが生じたときに送信した処理前データと同じデータを代行処理する構成とされている。
したがって、分散処理システム51では、各被制御端末4で異なるタスクが実行可能とされているときにも、エラーが生じたときに送信した処理前データと同じデータが再度同じ被制御端末4に送信されることによって、制御端末3が処理後データを得る時間が遅延することを、回避することが可能となる。すなわち、処理後データを受信した後に行う処理が遅延することを回避することが可能となる。
なお、分散処理システム51では、各被制御端末4毎に1つのタスクを実行可能としているが、各被制御端末4は、複数のタスクを実行することが可能とされていても良い。各被制御端末4毎に複数のタスクを実行することが可能とされているときには、処理前データの送信で送信エラーが生じた場合、送信エラーが生じたときに送信された処理前データを、この処理前データを処理するタスク(以下、目的のタスクという。)が実行可能とされている被制御端末4のうち、送信エラーが生じたときに送信先とされていた被制御端末4とは別の被制御端末4に対して送信することが好ましい。
以下では、図16に示すように、各被制御端末4が複数のタスクを実行可能とされており、処理前データの送信で送信エラーが生じたときに送信した処理前データと同じデータを、目的のタスクが実行可能とされている被制御端末4のうち、送信エラーが生じたときに送信先とされていた被制御端末4とは別の被制御端末4に対して送信する分散処理システム71について説明する。
なお、以下の説明では、分散処理システム1と同等な構成、部位、機能についての説明を省略し、また、図面において同じ符号を付するものとする。
本発明を適用した分散処理システム71は、無線通信網2を介して接続された制御端末73と、制御端末73との間でデータを送受信する第1〜第3の被制御端末4a,4b,4cとを備える。分散処理システム71は、タスクA,B,C,Dを実行することが可能とされている。
制御端末73は、タスクを実行して処理前データを処理するとともに、被制御端末4に対して処理前データを送信する。制御端末73は、制御部81と、プロセッサ82と、無線通信部83とを備える。制御部81と、プロセッサ82と、無線通信部83とは、図示しないバスなどを介して互いに接続されている。
制御部81は、プロセッサ82、無線通信部83などを制御する。
また、制御部81は、処理前データを送信するときに生じた送信エラーを検出する。送信エラーの検出は、制御部11と同じ方法で行われる。
また、制御部81は、エラーの検出などに基づいて、各被制御端末4に対して送信する処理前データを調整する。具体的な調整方法については、詳細を後述する。
プロセッサ82は、タスクを実行して、処理前データを処理する。本実施の形態では、タスクA,Dを実行することが可能とされており、送信エラーが検出されないときにはタスクAを実行してデータを処理する。また、プロセッサ82は、制御部81によってエラーが検出されたときに、制御部81の制御に従って、タスクを実行してデータを処理する。
なお、本実施の形態では、第1の被制御端末4aはタスクA,Bを実行することが可能とされており、第2の被制御端末4bはタスクB,Cを実行することが可能とされており、第3の被制御端末4cはタスクC,Dを実行することが可能とされており、プロセッサ82はタスクD,Aを実行することが可能とされている。各被制御端末4は、送信された処理前データに応じて、2つのタスクのうち一方を実行して、処理前データを処理する。
無線通信部83は、制御部81による制御に基づいて、無線通信網2を介して、所定の周期毎に、処理前データを被制御端末4のうちいずれかに対して送信したり、被制御端末4のうちいずれかから返信された処理後データを受信する。
なお、本実施の形態では、無線通信部83は、被制御端末4に対する処理前データの送信を、所定の周期毎に行っているが、被制御端末4に対する処理前データの送信は、周期と関係なく行っても良い。
以上説明した構成とすることによって、分散処理システム71では、エラーが生じたときに送信した処理前データと同じデータが、再度同じ被制御端末4と通信可能となるタイミングで再度同じ被制御端末4に対して送信されることによって、制御端末73が処理後データを得るまでに生じる遅延を、回避することが可能となる。すなわち、処理後データを受信した後に行う処理が遅延することを回避することが可能となる。
処理前データを送信するときに、制御部11が行う制御は、図17のフローチャートに示す通りとなる。
先ず、ステップST100で、制御部81は、機器番号Nを1に設定するとともに、データ番号AmをA00、BmをB00、CmをC00、DmをD00に設定する。
次に、ステップST101で、制御部81は、機器番号Nが1か否かを判断する。機器番号Nが1であるときにはステップST102に進み、機器番号Nが1以外であるときにはステップST111に進む。
次に、ステップST102で、制御部81の制御に基づいてプロセッサ82がタスクAを実行し、データ番号Amが付与された処理前データを処理する。
次に、ステップST103で、制御部81は、データ番号Amを1増加させて、ステップST141に進む。
また、ステップST111で、制御部81は、機器番号Nが2であるか否かを判断する。機器番号Nが2であるときにはステップST112に進み、機器番号Nが2以外のときにはステップST121に進む。
ステップST112では、無線通信部83が、制御部81の制御に基づいて、データ番号Bmの処理前データを、第1の被制御端末4aに対して送信する。
次に、ステップST113で、制御部81は、ステップST112で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が成功したときにはステップST114に進み、処理前データの送信が失敗したときにはステップST115に進む。
ステップST114では、制御部81は、データ番号Bmを1増加させる、そして、ステップST141に進む。
ステップST115では、制御部81は、データ番号Bmの処理前データを第2の被制御端末4bに対して送信する。
次に,ステップST116で、制御部81は、ステップST115で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が成功したときにはステップST117に進み、処理前データの送信が失敗したときにはステップST112に戻る。
次に、ステップST117で、制御部81は、データ番号Bmを1増加させる、そして、ステップST142に進む。
また、ステップST121で、制御部81は、機器番号Nが3であるか否かを判断する。機器番号Nが3であるときにはステップST122に進み、機器番号Nが3以外のときにはステップST131に進む。
ステップST122では、無線通信部83が、制御部81の制御に基づいて、データ番号Cmの処理前データを、第2の被制御端末4bに対して送信する。
次に、ステップST123で、制御部81は、ステップST122で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が成功したときにはステップST124に進み、処理前データの送信が失敗したときにはステップST125に進む。
ステップST124では、制御部81は、データ番号Cmを1増加させる、そして、ステップST141に進む。
また、ステップST125では、制御部81は、データ番号Cmの処理前データを第3の被制御端末4cに対して送信する。
次に,ステップST126で、制御部81は、ステップST125で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が成功したときにはステップST127に進み、処理前データの送信が失敗したときにはステップST122に戻る。
次に、ステップST127で、制御部81は、データ番号Cmを1増加させる、そして、ステップST142に進む。
また、ステップST131で、制御部81は、機器番号Nが4であるか否かを判断する。機器番号Nが4であるときにはステップST132に進み、機器番号Nが4以外のときには処理を終了する。
ステップST132では、無線通信部83が、制御部81の制御に基づいて、データ番号Dmの処理前データを、第3の被制御端末4cに対して送信する。
次に、ステップST133で、制御部81は、ステップST132で行われた処理前データの送信が成功したか否かを判断する。処理前データの送信が成功したときにはステップST134に進み、処理前データの送信が失敗したときにはステップST135に進む。
ステップST134では、制御部81は、データ番号Dmを1増加させる、そして、ステップST141に進む。
また、ステップST135では、プロセッサ82が、制御部81の制御に基づいてタスクDを実行し、データ番号Dmの処理前データを処理する。
次に,ステップST136で、制御部81は、データ番号Dmを1増加させる、そして、ステップST142に進む。
ステップST141では、制御部81は、機器番号Nを1増加させる。そして、ステップST143に進む。
また、ステップST142では、制御部81は、機器番号Nを2増加させる。そして、ステップST143に進む。
次に、ステップST143で、機器番号NがNmaxより大きいか否かを判断する。機器番号NがNmaxより大きいときにはステップST144に進み、機器番号NがNmax以下であるときにはステップST145に進む。
ステップST144では、制御部81は、機器番号Nを1とする。そして、ステップST145に進む。
ステップST145では、制御部81は、データ番号Am=Amax、データ番号Bm=Bmax、データ番号Cm=Cmax、且つデータ番号Dm=Dmaxであるという条件が満たされている否かを確認する。条件が満たされていないときにはステップST101に戻り、条件が満たされているときには処理を終了する。
以上説明したように、分散処理システム71では、処理前データの送信で送信エラーが生じないときには、2周期毎に、制御端末73が第1の被制御端末4aに対してデータ番号Bmの処理前データを送信し、第2の被制御端末4bに対してデータ番号Cmの処理前データを送信し、第3の被制御端末4cに対してデータ番号Dmの処理前データを送信し、プロセッサ82がデータ番号Amの処理前データを処理する。
また、第1の被制御端末4aに対する処理前データの送信で送信エラーが生じたときには、送信エラーが生じたときに第1の被制御端末4aに対して送信されていたデータ番号Bmの処理前データを第2の被制御端末4bに対して送信し、第2の被制御端末4bに対して送信する予定とされていたデータ番号Cmの処理前データを第3の被制御端末4cに対して送信し、第3の被制御端末4cに対して送信する予定とされていたデータ番号Dmの処理前データを、プロセッサ82が処理する。
また、第2の被制御端末4bに対する処理前データの送信で送信エラーが生じたときには、図18に示すように、第2の被制御端末4bに対して送信する予定とされていたデータ番号Cmの処理前データを第3の被制御端末4cに対して送信し、第3の被制御端末4cに対して送信する予定とされていたデータ番号Dmの処理前データを、プロセッサ82が処理する。
また、第3の被制御端末4cに対する処理前データの送信で送信エラーが生じたときには、第3の被制御端末4cに対して送信する予定とされていたデータ番号Dmの処理前データを、プロセッサ82が処理する。
したがって、分散処理システム71によれば、制御端末73のプロセッサ82によって実行可能なタスクが2つのタスクA,Dのみとされているにも拘わらず、制御端末73が処理後データを得るまでに生じる遅延を低減することが可能となる。
1,51,71 分散処理システム、2 無線通信網、3,53,73 制御端末、4a,4b,4c,4d 被制御端末、11,61,81 制御部、12,62,82 プロセッサ、13,63,83 無線通信部、21 プロセッサ、22 無線通信部
Claims (30)
- 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムであって、
上記分散処理制御端末は、上記タスクを実行してデータを処理するデータ処理手段と、
上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、
上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、
上記被制御端末は、上記タスクを実行して、上記分散処理制御端末の送信手段によって送信された処理前データを処理する被制御側データ処理手段を備え、
上記分散処理制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、
上記分散処理制御端末の上記データ処理手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記送信手段が上記被制御端末に対して送信した処理前データと同じデータを、上記タスクの実行により処理すること
を特徴とする分散処理システム。 - 上記分散処理制御端末は、上記被制御端末から送信されて上記被制御側データ処理手段によって上記タスクが実行されることで処理された処理後データを受信する受信手段を備え、
上記分散処理制御端末のエラー検出手段は、上記受信手段によって上記処理後データを受信するときに生じた受信エラーを検出し、
上記分散処理制御端末の上記データ処理手段は、上記エラー検出手段によって上記受信エラーが検出された場合、上記被制御端末から送信された上記処理後データが上記被制御側データ処理手段によって処理される前の処理前データと同じデータを、上記一連のデータ処理を構成するタスクを実行して処理すること
を特徴とする請求項1記載の分散処理システム。 - 上記分散処理制御端末は、上記無線通信網を介して複数の被制御端末と接続されており、
上記複数の被制御端末に備えられた各被制御側データ処理手段は、それぞれ異なるタスクを実行することが可能とされており、
上記分散処理制御端末の上記データ処理手段は、上記複数の被制御端末に備えられた各被制御側データ処理手段によって実行できるタスクを全て実行することが可能とされており、上記エラー検出手段によって上記受信エラーが検出された場合、上記送信手段が上記被制御端末に送信した上記処理前データと同じデータを、上記処理前データの送信先とされていた被制御端末の被制御側データ処理手段で実行されるタスクと同じタスクを実行して処理すること
を特徴とする請求項1記載の分散処理システム。 - 上記分散処理制御端末は、上記被制御端末から送信されて上記被制御側データ処理手段によって上記タスクが実行されることで処理された処理後データを受信する受信手段を備え、
上記分散処理制御端末のエラー検出手段は、上記受信手段によって上記処理後データを受信するときに生じた受信エラーを検出し、
上記分散処理制御端末の上記データ処理手段は、上記エラー検出手段によって上記受信エラーが検出された場合、上記被制御端末から送信された上記処理後データが上記被制御側データ処理手段によって処理される前の処理前データと同じデータを、上記処理後データの送信元である被制御端末の被制御側データ処理手段によって実行されるタスクと同じタスクを実行して処理すること
を特徴とする請求項3記載の分散処理システム。 - 上記分散処理制御端末は、上記被制御装置に対して送信する処理前データに識別子を付加する識別子付加手段と、
上記識別子に対応して期限を設定する期限設定手段とを備え、
上記分散処理制御端末の上記エラー検出手段は、上記識別子を付加した処理前データが上記識別子に対応して設定された期限以内に上記被制御端末から処理後データとして送信されないときに、上記受信手段による上記処理後データの受信でエラーが生じたと判断すること
を特徴とする請求項4記載の分散処理システム。 - 上記データ処理手段の処理能力は、上記被制御端末に備えられたデータ処理手段の処理能力より大きいこと
を特徴とする請求項1記載の分散処理システム。 - 無線通信網を介して被制御端末と接続されており、一連のデータ処理を複数のタスクに分割して、上記タスクを実行するとともに上記被制御端末に実行させる分散処理制御端末であって、
上記タスクを実行してデータを処理するデータ処理手段と、
上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、
上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、
上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、
上記データ処理手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記送信手段が上記被制御端末に対して送信した処理前データと同じデータを、上記タスクを実行して処理すること
を特徴とする分散処理制御端末。 - 上記被制御端末から送信され、上記被制御端末で上記タスクを実行して処理された処理後データを受信する受信手段を備え、
上記エラー検出手段は、上記受信手段によって上記処理後データを受信するときに生じた受信エラーを検出し、
上記データ処理手段は、上記エラー検出手段によって上記受信エラーが検出された場合、上記被制御端末から送信された上記処理後データが上記被制御端末で処理される前の処理前データと同じデータを、上記タスクを実行して処理すること
を特徴とする請求項7記載の分散処理制御端末。 - 上記無線通信網を介して、それぞれ異なるタスクを実行することが可能とされている複数の被制御端末と接続されており、
上記データ処理手段は、上記複数の被制御端末で実行可能なタスクを全て実行することが可能とされており、上記エラー検出手段によって上記送信エラーが検出された場合、上記送信手段が上記被制御端末に送信した上記処理前データを、上記処理前データの送信先となる被制御端末で実行可能とされているタスクと同じタスクを実行して処理すること
を特徴とする請求項7記載の分散処理制御端末。 - 上記被制御端末から送信され、上記被制御手段で上記タスクが実行されることにより処理された処理後データを受信する受信手段を備え、
上記エラー検出手段は、上記受信手段によって上記処理後データを受信するときに生じた受信エラーを検出し、
上記データ処理手段は、上記エラー検出手段によって上記受信エラーが検出された場合、上記被制御端末から送信された上記処理後データが上記被制御端末で処理される前の処理前データと同じデータを、上記処理後データの送信先である被制御端末で実行可能とされているタスクと同じタスクを実行して処理すること
を特徴とする請求項9記載の分散処理制御端末。 - 上記被制御装置に対して送信する処理前データに識別子を付加する識別子付加手段と、
上記識別子に対応して期限を設定する期限設定手段とを備え、
上記エラー検出手段は、上記識別子を付加した処理前データが上記識別子に対応して設定された期限以内に上記被制御端末から処理後データとして送信されないときに、上記受信手段が上記処理後データを受信するときにエラーが生じたと判断すること
を特徴とする請求項10記載の分散処理制御端末。 - 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムの分散処理方法であって、
上記分散処理制御端末が、上記被制御端末に対して、上記被制御端末で実行可能とされているタスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、
上記被制御端末が上記タスクを実行することによって、上記第1の送信ステップで送信された処理前データを処理するデータ処理ステップと、
上記分散処理制御端末が、上記送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、
上記分散処理制御端末が、上記送信エラー検出ステップで上記送信エラーを検出した場合、上記第1の送信ステップで送信した上記処理前データと同じデータを、タスクを実行することで処理する送信時代行処理ステップとを備えること
を特徴とする分散処理方法。 - 上記被制御端末が、上記データ処理ステップで処理された後のデータである処理後データを上記分散処理制御端末に対して送信する第2の送信ステップと、
上記分散処理制御端末が、上記第2の送信ステップで送信された上記処理後データを受信する受信ステップと、
上記分散処理制御端末が、上記受信ステップで生じた受信エラーを検出する受信エラー検出ステップと、
上記分散処理制御端末が、上記受信エラー検出ステップで上記受信エラーを検出した場合、上記被制御端末から送信された上記処理後データが上記被制御端末で処理される前の処理前データと同じデータを、上記タスクを実行して処理する受信時代行処理ステップとを備えること
を特徴とする請求項12記載の分散処理方法。 - 上記分散処理制御端末は、上記無線通信網を介してそれぞれ異なるタスクを実行することが可能とされている複数の被制御端末と接続されており、
上記送信時代行処理ステップでは、上記送信エラー検出ステップで上記送信エラーが検出されたときに上記第1の送信ステップで送信した処理前データと同じデータを、上記第1の送信ステップで送信先とされている被制御端末で実行可能とされているタスクを実行して処理すること
を特徴とする請求項12記載の分散処理方法。 - 上記被制御端末が、上記データ処理ステップで処理された後のデータである処理後データを上記分散処理制御端末に対して送信する第2の送信ステップと、
上記分散処理制御端末が、上記第2の送信ステップで送信された上記処理後データを受信する受信ステップと、
上記分散処理制御端末が、上記受信ステップで生じたエラーを検出する受信エラー検出ステップと、
上記分散処理制御端末が、上記受信エラー検出ステップで上記受信エラーを検出したときに、上記被制御端末から送信された上記処理後データが上記被制御端末で処理される前の処理前データと同じデータを、上記処理後データの送信元である被制御端末で実行可能とされているタスクと同じタスクを実行することで処理する受信時代行処理ステップとを備えること
を特徴とする請求項14記載の分散処理方法。 - 上記分散処理制御手段が、上記被制御装置に対して送信する処理前データに識別子を付加する識別子付加ステップと、
上記分散処理制御手段が、上記識別子に対応して期限を設定する期限設定ステップとを備え、
上記受信エラー検出ステップでは、上記識別子を付加した処理前データが上記識別子に対応して設定された期限以内に上記被制御端末から処理後データとして送信されないときに、上記受信ステップにおける上記処理後データの受信でエラーが生じたと判断すること
を特徴とする請求項15記載の分散処理方法。 - 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムで実行される分散処理プログラムであって、
上記分散処理制御端末が、上記被制御端末に対して、上記被制御端末で実行可能とされているタスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、
上記被制御端末が上記タスクを実行することによって、上記第1の送信ステップで送信された処理前データを処理するデータ処理ステップと、
上記分散処理制御端末が、上記送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、
上記分散処理制御端末が、上記送信エラー検出ステップで上記送信エラーを検出した場合、上記第1の送信ステップで送信した上記処理前データと同じデータを、タスクを実行することで処理する送信時代行処理ステップとを備えること
を特徴とする分散処理プログラム。 - 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムであって、
上記分散処理制御端末は、上記タスクを実行してデータを処理するデータ処理手段と、
上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、
上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、
上記被制御端末は、タスクを実行してデータを処理する被制御側データ処理手段を備え、
上記制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、
上記制御端末の上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合に、上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信すること
を特徴とする分散処理システム。 - 上記制御端末の上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記複数の被制御端末のうち1つに対して送信した上記処理前データを、上記所定の時間が経過したときに、上記複数の被制御端末のうち他の1つに対して送信すること
を特徴とする請求項18記載の分散処理システム。 - 上記複数の被制御端末のうち1つで実行可能なタスクは、他の被制御端末でも実行可能とされており、
上記分散処理制御端末の上記送信手段は、目的のタスクが実行可能とされている被制御端末のうちいずれかに対して上記処理前データを送信し、上記エラー検出手段によって上記送信エラーが検出された場合、上記被制御端末に対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうちいずれかに送信すること
を特徴とする請求項18記載の分散処理システム。 - 上記制御端末の上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記目的のタスクが実行可能とされている被制御端末のうち1つに対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうち他の1つに対して送信すること
を特徴とする請求項20記載の分散処理システム。 - 無線通信網を介して被制御端末と接続されており、一連のデータ処理を複数のタスクに分割して、上記タスクを実行するとともに上記被制御端末に実行させる分散処理制御端末であって、
上記タスクを実行してデータを処理するデータ処理手段と、
上記被制御端末に対して、上記タスクの実行によって処理される前のデータである処理前データを送信する送信手段と、
上記被制御端末との間でデータを送受信するときに生じるエラーを検出するエラー検出手段とを備え、
上記制御端末の上記エラー検出手段は、上記送信手段によって上記処理前データを送信するときに生じた送信エラーを検出し、
上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記被制御端末のうちいずれかに送信すること
を特徴とする分散処理制御端末。 - 上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記目的のタスクが実行可能とされている被制御端末のうち1つに対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうち他の1つに対して送信すること
を特徴とする請求項22記載の分散処理制御端末。 - 上記複数の被制御端末のうち1つで実行可能なタスクは、他の被制御端末でも実行可能とされており、
上記送信手段は、目的のタスクが実行可能とされている被制御端末のうちいずれかに対して上記処理前データを送信し、上記エラー検出手段によって上記送信エラーが検出された場合、上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうちいずれかに送信すること
を特徴とする請求項22記載の分散処理制御端末。 - 上記送信手段は、上記エラー検出手段によって上記送信エラーが検出された場合、上記目的のタスクが実行可能とされている被制御端末のうち1つに対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうち他の1つに対して送信すること
を特徴とする請求項24記載の分散処理制御端末。 - 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムの分散処理方法であって、
上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、
上記分散処理制御端末が、上記第1の送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、
上記送信エラー検出ステップで上記送信エラーが検出された場合、上記分散処理制御端末が、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信する第2の送信ステップとを備えること
を特徴とする分散処理方法。 - 上記第2の送信ステップでは、上記分散処理制御端末は、上記第1の送信ステップで上記複数の被制御端末のうち1つに対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記複数の被制御端末のうち他の1つに対して送信すること
を特徴とする請求項26記載の分散処理方法。 - 上記複数の被制御端末のうち1つで実行可能なタスクは、他の被制御端末でも実行可能とされており、
上記第1の送信ステップでは、目的のタスクが実行されている被制御端末のうちいずれかに対して上記処理前データを送信し、
上記第2の送信ステップでは、上記分散処理制御端末は、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうちいずれかに対して送信すること
を特徴とする請求項26記載の分散処理方法。 - 上記第2の送信ステップでは、上記分散処理制御端末は、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、上記所定の時間が経過したときに、上記目的のタスクが実行可能とされている被制御端末のうち他の1つに対して送信すること
を特徴とする請求項28記載の分散処理方法。 - 無線通信網を介して接続された分散処理制御端末と被制御端末とを備え、一連のデータ処理を複数のタスクに分割して、上記タスクを上記分散処理制御端末と上記被制御端末とに実行させる分散処理システムで実行される分散処理プログラムであって、
上記各被制御端末のうちいずれかに対して、上記タスクの実行によって処理される前のデータである処理前データを送信する第1の送信ステップと、
上記分散処理制御端末が、上記第1の送信ステップで生じた送信エラーを検出する送信エラー検出ステップと、
上記送信エラー検出ステップで上記送信エラーが検出された場合、上記分散処理制御端末が、上記第1の送信ステップで上記被制御端末に対して送信した上記処理前データと同じデータを、所定の時間が経過したときに、上記複数の被制御端末のうちいずれかに送信する第2の送信ステップとを備えること
を特徴とする分散処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004010901A JP2005202873A (ja) | 2004-01-19 | 2004-01-19 | 分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004010901A JP2005202873A (ja) | 2004-01-19 | 2004-01-19 | 分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005202873A true JP2005202873A (ja) | 2005-07-28 |
Family
ID=34823486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004010901A Withdrawn JP2005202873A (ja) | 2004-01-19 | 2004-01-19 | 分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005202873A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009534945A (ja) * | 2006-04-18 | 2009-09-24 | クゥアルコム・インコーポレイテッド | 無線アプリケーション用のオフロード処理 |
WO2011068018A1 (ja) * | 2009-12-02 | 2011-06-09 | 株式会社Mush-A | データ処理装置、データ処理システムおよびデータ処理方法 |
US8600373B2 (en) | 2006-04-26 | 2013-12-03 | Qualcomm Incorporated | Dynamic distribution of device functionality and resource management |
US9535671B2 (en) | 2009-12-02 | 2017-01-03 | Mush-A Co., Ltd. | Parallel data processing apparatus and method |
-
2004
- 2004-01-19 JP JP2004010901A patent/JP2005202873A/ja not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009534945A (ja) * | 2006-04-18 | 2009-09-24 | クゥアルコム・インコーポレイテッド | 無線アプリケーション用のオフロード処理 |
US8644396B2 (en) | 2006-04-18 | 2014-02-04 | Qualcomm Incorporated | Waveform encoding for wireless applications |
US8654868B2 (en) | 2006-04-18 | 2014-02-18 | Qualcomm Incorporated | Offloaded processing for wireless applications |
US8600373B2 (en) | 2006-04-26 | 2013-12-03 | Qualcomm Incorporated | Dynamic distribution of device functionality and resource management |
WO2011068018A1 (ja) * | 2009-12-02 | 2011-06-09 | 株式会社Mush-A | データ処理装置、データ処理システムおよびデータ処理方法 |
US8817793B2 (en) | 2009-12-02 | 2014-08-26 | Mush-A Co., Ltd. | Data processing apparatus, data processing system, and data processing method |
KR101450675B1 (ko) | 2009-12-02 | 2014-10-14 | 가부시키가이샤 무쉬-에이 | 데이터 처리 장치, 데이터 처리 시스템, 패킷, 기록 매체, 기억 장치, 및 데이터 처리 방법 |
US9535671B2 (en) | 2009-12-02 | 2017-01-03 | Mush-A Co., Ltd. | Parallel data processing apparatus and method |
US10025594B2 (en) | 2009-12-02 | 2018-07-17 | Mush-A Co., Ltd. | Parallel data processing apparatus, system, and method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5346947B2 (ja) | 共有媒体のアクセス制御方式における競合スロット | |
TWI237451B (en) | System and method for avoiding stall of an H-ARQ reordering buffer in a receiver | |
JPH08307330A (ja) | 無線通信装置 | |
AU8935498A (en) | System and method of data communication in multiprocessor system | |
JP2008085932A (ja) | データ通信方法 | |
JP2009003677A (ja) | Usbホスト、usbスレーブ、無線通信方式、及びデータ転送方法 | |
JP2000259525A (ja) | 通信プロトコルにおける応答返却方法および通信制御装置 | |
JP2005202873A (ja) | 分散処理システム、分散処理制御端末、分散処理方法、及び分散処理プログラム | |
JPWO2010073352A1 (ja) | データ通信システムおよびデータ通信装置 | |
JP3400772B2 (ja) | パケット送受信処理装置 | |
JP2007243239A (ja) | 通信装置及び通信方法 | |
JP2008078769A (ja) | 通信システム | |
JP5389174B2 (ja) | 通信装置、パケット生成装置、及びプログラム | |
JP4017452B2 (ja) | 通信方法 | |
JP4151330B2 (ja) | ネットワークファイルシステム用i/o制御方法 | |
JP2007019705A (ja) | 通信システム、送信装置、送信方法、およびプログラム | |
JP3658224B2 (ja) | 無線通信装置およびその制御方法、プログラムを記憶したコンピュータ読み取り可能な記憶媒体 | |
JP5892849B2 (ja) | 送受信システム、送受信方法及び電子装置 | |
JP3758645B2 (ja) | 画像処理システム及び画像読取装置 | |
JP2003188888A (ja) | 通信システム、送信装置および方法、受信装置および方法、並びにプログラム | |
JP2004023564A (ja) | 無線通信制御装置及び方法 | |
JP6869502B2 (ja) | マスタ装置、通信方法及び通信プログラム | |
JP2611478B2 (ja) | 通信制御部の応答監視装置 | |
JP6688122B2 (ja) | 通信装置およびその制御方法 | |
JP2846234B2 (ja) | 同報送信方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070403 |