(57)【要約】【課題】各ノードの伝送が、ネットワーク中の他のノードの伝送、および自ノードの他の伝送から影響を受けて、意図した伝送タイミングが変動することを抑制することを目的とする。【解決手段】複数の端末１，３を有し、ネットワークにおいて、トークンを取得した端末１，３が、予め設定されている規定サイズのデータを送信するトークンパッシング方式を用いる通信端末１，３における通信方法であって、端末１，３は、端末１，３自身が、送信しようとしているデータ１０１ａ〜１０４ｄを、記憶部から取得し、送信しようとしているデータのサイズ１０１ａ〜１０４ｄが、規定サイズより大きい場合、送信しようとするデータを、規定サイズ以下のデータに分割した後、トークンを周回させつつ、複数回にわたって送信することを特徴とする。【選択図】図７
2009017145.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信端末を有するネットワークにおいて、トークンを取得した通信端末が、予め設定されている規定サイズのデータを送信するトークンパッシング方式を用いる通信端末における通信方法であって、
前記通信端末は、
前記通信端末自身が、送信しようとしているデータを、記憶部から取得し、
前記送信しようとしているデータのサイズが、前記規定サイズより大きい場合、前記送信しようとするデータを、前記規定サイズ以下のデータに分割した後、トークンを周回させつつ、複数回にわたって送信することを特徴とする通信方法。
【請求項２】
前記データには、伝送開始条件が予め設定されており、
前記通信端末は、前記伝送開始条件の成立を監視し、
前記伝送開始条件が成立すると前記データの送信を行うことを特徴とする請求項１に記載の通信方法。
【請求項３】
前記通信端末は、時間計測手段を有しており、
前記伝送開始条件は、同一種の伝送データにおける前回の送信条件成立から、所定の時間が経過したか否かであることを特徴とする請求項２に記載の通信方法。
【請求項４】
前記データには、送信の優先度が予め付されており、
前記通信端末は、前記優先度の高いデータを、優先的に送信することを特徴とする請求項１に記載の通信方法。
【請求項５】
前記データの送信中に、前記送信中のデータと同じ優先度を有するデータであり、前記送信中のデータとは異なるデータが存在するとき、前記送信中のデータが送信完了後に、前記送信中のデータとは異なるデータの送信を開始することを特徴とする請求項４に記載の通信方法。
【請求項６】
請求項１から請求項５に記載の通信方法をコンピュータに実行させることを特徴とするプログラム。
【請求項７】
複数の通信端末を有するネットワークにおいて、トークンを取得した通信端末が、予め設定されている規定サイズのデータを送信するトークンパッシング方式を用いる通信端末であって、
記憶部に送信しようとしているデータを保持しており、
前記通信端末自身が、前記送信しようとしているデータを、前記記憶部から取得し、
前記送信しようとしているデータのサイズが、前記規定サイズより大きい場合、前記送信しようとするデータを、前記規定サイズ以下のデータに分割した後、トークンを周回させつつ、複数回にわたって送信することを特徴とする通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信方法、プログラムおよび通信端末の技術に関する。
【背景技術】
【０００２】
従来、トークンパッシング方式を用いたネットワークにおける、伝送周期の異なる複数のデータを管理する技術として、以下のような技術が開示されている（例えば、特許文献１参照）。すなわち、一定周期で伝送が必要な周期データを扱う周期データ伝送モードと、非周期に伝送が必要な非周期データを扱う非周期データ伝送モードとの、２つの動作モードを定める。そして、トークンに動作モードの情報を付加することで、ネットワーク中の全てのノードが同一の動作モードで伝送を行うデータ制御装置が開示されている。
【０００３】
また、トークンパッシング方式を使用したネットワークにおいて、トークンを得た場合に、ノードが送信することのできるデータのサイズを一定にすることで、各ノードにトークンが周回する時間を明確にし、ネットワークのスループットを維持する技術もある。
【特許文献１】特開平４−９００３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の技術では、全ノードが動作モードを共有しており、かつ、各ノードがトークンを得た場合に伝送できるデータサイズが一定でないために、他のノードの伝送に影響を受けて、意図した周期に従った伝送が困難な場合がある。
また、ノードが送信することのできるデータのサイズを一定にすることで、ネットワークのスループットを維持する技術では、該一定のサイズを超えたデータを、具体的にどのようにして伝送するかが明確にされていない。
【０００５】
このような背景に鑑みて本発明がなされたのであり、本発明は、各ノードである通信端末の伝送が、ネットワーク中の他の通信端末の伝送、および自通信端末の他の伝送から影響を受けて、意図した伝送タイミングが変動することを抑制することを目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、本発明の一の手段は、複数の通信端末を有し、トークンパッシング方式を用いるネットワークにおいて、通信端末は、通信端末自身が、送信しようとしているデータを、記憶部から取得し、送信しようとしているデータのサイズが、予め設定されている規定サイズより大きい場合、送信しようとするデータを、規定サイズ以下のデータに分割した後、トークンを周回させつつ、複数回にわたって送信することを特徴とする。
【０００７】
また、本発明の他の手段は、データには、送信の優先度が予め付されており、通信端末は、優先度の高いデータを、優先的に送信することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、各ノードである通信端末の伝送が、ネットワーク中の他の通信端末の伝送、および自通信端末の他の伝送から影響を受けて、意図した伝送タイミングが変動することを抑制することができる。
【発明を実施するための最良の形態】
【０００９】
次に、本発明を実施するための最良の形態（「実施形態」という）について、適宜図面を参照しながら詳細に説明する。
【００１０】
図１は、本実施形態に係る通信システムの構成の一例を示す図である。
本実施形態では、通信システム１００は、ホスト端末１と、シミュレーション端末２と、クライアント端末３とを有してなる。ここで、ホスト端末１、シミュレーション端末２およびクライアント端末３は、それぞれ通信システム１００におけるノードである。また、ホスト端末１、シミュレーション端末２およびクライアント端末３を総称して、端末１０と記載する。本実施形態におけるネットワーク４は、物理トポロジがバス型で、論理トポロジがリング型となっているネットワーク４を想定しているが、これに限らず、論理トポロジがリング型であればよく、例えば、物理トポロジがスター型となっていてもよい。
ホスト端末１は、クライアント端末３から受信した入力情報を基に、入力状況に従った演算を実行し、演算により求めた出力の有無および出力内容を定期的にクライアント端末３に伝送する機能を有する。
【００１１】
また、ホスト端末１は、入出力状況と、演算に使用しているパラメータに関する情報を、定期的にシミュレーション端末２に伝送し、シミュレーション端末２は、受信したパラメータに関する情報を基に、複数回のシミュレーションを実行し、最適なパラメータを決定し、ネットワーク４を介して、ホスト端末１に伝送する。ホスト端末１とシミュレーション端末２との間の伝送は、ホスト端末１とクライアント端末３との間の入出力情報に影響を与えない様に実行する。ホスト端末１は、システムの動作履歴を蓄積し、１日に１度の頻度でクライアント端末３に実装された外部記憶装置に格納する。この場合、蓄積した動作履歴は、他の端末１０の動作、例えばクライアント端末３の入出力動作に影響を与えない様、クライアント端末３に対して伝送する。
【００１２】
クライアント端末３は、図示しないクライアント端末３の入出力部からの入力を監視して、入力の有無および入力内容を定期的にホスト端末１に伝送する機能を有する。
また、クライアント端末３の図示しない入出力部への入力に応じた出力が要求されるため、クライアント端末３が入力を検出し、入力情報をホスト端末１に伝送するまでの時間と、ホスト端末１が入力情報に応じた出力情報を作成し、クライアント端末３に伝送後、実際にクライアント端末３が外部に出力するまでの時間とは、明確に決まっており、かつ通信システム１００全体への影響がない範囲で保障されている必要がある。
【００１３】
なお、ホスト端末１、クライアント端末３およびシミュレーション端末２は、通信システム１００中に複数存在し、それぞれがノードを構成してもよい。また、ホスト端末１、クライアント端末３およびシミュレーション端末２のうち、少なくとも１種類の端末１０が、２つ以上ネットワーク４内にあればよい。
また、ホスト端末１、クライアント端末３およびシミュレーション端末２は、図２を参照して後記する機能を有し、トークンパッシング方式を用いる端末１０であればよく、図１を参照して説明した機能を有していなくてもよい。
【００１４】
図２は、本実施形態に係る端末の構成例を示す機能ブロック図である。
図２における端末１０（通信端末）は、ホスト端末１、クライアント端末３およびシミュレーション端末２に共通の構成である。
端末１０は、制御部１１、通信コントロール部１２、記憶部１３、データバス１４、アドレスバス１５、送受信通知バス１６および通信回路１７を有してなる。
制御部１１は、図示しないタイマを有しており、伝送開始条件が成立した伝送データの検索を、例えば、１０ｍｓ周期で実行し、その他の各種演算、およびシミュレーションなどを端末１０ごとに必要に応じて実行する機能を有する。ここで、伝送データとは、端末１０がネットワーク４に対して伝送しようとしているデータである。また、制御部１１は、データバス１４と、アドレスバス１５とを介して、通信コントロール部１２に対する所定の操作を行い、トークンパッシング方式のネットワーク４に参加する機能を有する。制御部１１が、伝送すべきデータを有している場合は、データバス１４と、アドレスバス１５を介して、通信コントロール部１２に対する所定の操作を行うと、通信コントロール部１２は、トークンパッシング方式に従って、例えば、規定サイズとしての２５６バイトのデータを送信する。通信コントロール部１２が２５６バイトのデータを送信完了したとき、または、ネットワーク４中の他のノードからの受信を、通信回路１７が、検出したときは、通信コントロール部１２は、送受信通知バス１６により、制御部１１に対する通知を行なう。受信検出時、制御部１１は、所定の操作により通信コントロール部１２から受信データを読み出す。
記憶部１３は、伝送データや、送信待ち行列を格納している。
【００１５】
制御部１１および通信コントロール部１２は、ＲＯＭ（Read Only Memory）や、ＨＤ（Hard Disk）に格納されたプログラムが、ＲＡＭ（Random Access Memory）に展開され、ＣＰＵ（Central Processing Unit）によって実行されることによって具現化したり、ＲＯＭに格納されたプログラムが、直接ＣＰＵによって実行されることによって具現化したりする。
なお、制御部１１と、通信コントロール部１２は、同一のＣＰＵで実行されてもよいし、異なるＣＰＵで実行されてもよい。すなわち、制御部１１と、通信コントロール部１１は、ハードウェア的に独立していてもよいし、独立していなくてもよい。
また、本実施形態では、制御部１１と、通信コントロール部１２とを同一の端末１０に内蔵されているものとしたが、それぞれが別の装置に内蔵されていてもよい。
また、通信コントロール部１２は、前記したようにプログラムによって具現化する以外にも、電子部品によって構成されているハードウェアによって具現化していてもよい。
【００１６】
図３は、本実施形態に係る伝送データの一覧の例を示す表である。
図３に示す表には、本実施形態で用いられる伝送データの種類ごとに、ネットワーク４（図１参照）内の各伝送データに対し一意に付される識別番号、送信元、送信先、伝送データの内容（データ内容）、データサイズ、伝送開始条件および優先度が記載されている。すなわち、本実施形態に係る通信システム１００（図１参照）では、識別番号「１」〜「５」で区別される５種類の伝送データを用いるものとするが、伝送データは、これらに限られないことは当然である。
ここで、伝送開始条件とは、図５に示す送信待ち行列の作成処理を始めるタイミングである。また、優先度については、図４を参照して後記する。
例えば、１項目の伝送データは、識別番号「１」、送信元「ホスト端末１」、送信先「クライアント端末３」、データ内容は、「外部への出力データ」、データサイズは、「３４８バイト」、伝送開始条件は、「１００ｍｓ周期」および優先度は、「高」である。これらの各情報のうち、実際に伝送データに付されている情報は、識別番号、送信元、送信先、データサイズ、伝送開始条件および優先度である。図３におけるデータサイズは、全データサイズである。本実施形態では、規定サイズを２５６バイトとする。すなわち、識別番号「１」の伝送データは、２５６バイトと、９２バイトとのデータに分割されてネットワーク内に送出される。
以下、２項目以降の伝送データは、図３に示されている通りであるため、説明を省略する。
【００１７】
ここで、識別番号「１」〜「３」および識別番号「５」の伝送開始条件は、ホスト端末１や、シミュレーション端末２や、クライアント端末３の制御部１１に備えられているタイマによって管理されている。これらの伝送データでは、同じ識別番号を有する他の伝送データ（同一種の伝送データ）の送信後、定められた伝送開始条件の時間が経過しなければ、送信を開始することができない。例えば、識別番号「１」を有するが、異なる内容である伝送データＡ，Ｂが存在すると、伝送データＢは、伝送データＡの送信開始後、１００ｍｓ経過しなければ、送信を開始することができない。ここで、伝送データＡおよび伝送データＢのように、識別番号が同じであるが、異なる内容である伝送データを同一種の伝送データとする。また、伝送データＡおよび伝送データＢは、同時に存在することはない。
また、識別番号「４」の伝送開始条件は、「シミュレーション終了」となっている。すなわち、シミュレーション端末２におけるシミュレーションが終了すると、このシミュレーションの終了を、契機としてシミュレーション端末２の制御部１１が、図５で後記する伝送データの検出を行う。
なお、本実施形態では、優先度を「高」、「中」および「低」の３段階に分けているが、これに限らず、例えば、「０」〜「４」の５段階に分け、値が大きいほど、優先度が高いなど、数値による優先度の設定を行ってもよい。
【００１８】
図４は、伝送データの送信待ち行列の例を示す図である。
図４に示すように、送信待ち行列は、データの識別番号と、残りデータサイズとが対となった情報である。ここで、識別番号は、図３を参照して説明した識別番号であり、送信待ち行列中の伝送データを識別するために用いられる。残りデータサイズは、送信待ち行列中の各識別番号の伝送データを、残り何バイト送信するべきかを記録する。
また、図４の例では、Ｎ個のデータが送信待ち行列に登録されており、送信中のデータである１番目の伝送データから順に、送信までの時間が長くなるよう、設定されている。
【００１９】
次に、図２を参照しつつ、図５および図６に沿って、本実施形態に係る伝送データ送出の処理を説明する。なお、図５および図６では、送信待ち行列において、ｎ番目（ｎは所定の値）に位置する識別番号に相当する伝送データを、Ｎ個の送信待ち行列におけるｎ番目の伝送データと記載することとする。
図５は、本実施形態に係る送信待ち行列の作成処理の流れを説明するための図であり、（ａ）は、送信待ち行列の作成処理の流れを示すフローチャートであり、（ｂ）は、伝送データ同士の優先度の比較を模式的に示した図である。
なお、図５に示す処理（Ｓ１０２〜Ｓ１１０）は、各端末１０の制御部１１が、記憶部１３を参照して、伝送開始条件の成立した伝送データの検出処理を１０ｍｓ周期で実行した結果、伝送開始条件の成立した伝送データの検出を契機として実行され、端末１０の電源をＯＦＦにしたときに終了する。以下、ここで検出した伝送データを、「検出した伝送データ」と記載する。
次に、制御部１１は、記憶部１３を参照して、送信待ち行列を参照することによって、送信待ちの伝送データ数を取得し、これを変数Ｎに代入する（Ｓ１０２）。なお、変数Ｎには、検出した伝送データは含めない数である。
そして、制御部１１は、Ｎが「０」であるか否かを判定する（Ｓ１０３）。
【００２０】
ステップＳ１０３の結果、Ｎが「０」であった場合（Ｓ１０３→Ｙｅｓ）、すなわち、送信待ちの伝送データ数が「０」であった場合、制御部１１は、検出した伝送データを、１番目の伝送データに設定する（Ｓ１０４）。すなわち、送信待ち行列の最初に、検出した伝送データの識別番号と残りデータサイズ（ここでは、検出した伝送データの全データサイズ）を登録する。
そして、制御部１１は、図６を参照して後記する送信処理を行った（Ｓ１０５）後、再び、記憶部１３を参照して、伝送開始条件の成立した伝送データの検出処理を１０ｍｓ周期で実行し、伝送開始条件の成立した伝送データを検出すると、ステップＳ１０２の処理を行う。
【００２１】
ステップＳ１０３の結果、Ｎが「０」でない場合（Ｓ１０３→Ｎｏ）、制御部１１は、「１」を変数ｎに代入する（Ｓ１０６）。ここで、変数ｎは、伝送データと優先度を比較する送信待ち行列における伝送データの順番である。
そして、制御部１１は、記憶部１３を参照して、送信待ち行列におけるＮ個の伝送データのうちのｎ番目（現在は、１番目）の伝送データの優先度と、検出した伝送データの優先度とを比較し、検出した伝送データが、ｎ番目の伝送データ以下の優先度を有するか否かを判定する（Ｓ１０７）。ｎ番目の伝送データの優先度は、制御部１１が、送信待ち行列の識別番号を基に、記憶部１３に保持されている伝送データを参照することによって取得する。
ステップＳ１０７の結果、検出した伝送データが、ｎ番目の伝送データ以下の優先度を有さない場合（Ｓ１０７→Ｎｏ）、すなわち、検出した伝送データの優先度が、ｎ番目の伝送データより高い場合、制御部１１は、ステップＳ１１０の処理へ進む。
【００２２】
ステップＳ１０７の結果、検出した伝送データが、ｎ番目の伝送データ以下の優先度を有する場合（Ｓ１０７→Ｙｅｓ）、すなわち、検出した伝送データの優先度が、ｎ番目の伝送データの優先度と同じか、ｎ番目の伝送データの優先度より低い場合、制御部１１は、変数ｎの値を「１」加算した値を、変数ｎに代入する（Ｓ１０８）。このような手順を行うことにより、例えば、送信待ち行列の１番目の伝送データ（送信中）と同じ優先度を有する伝送データが伝送開始条件を満たしたとき、送信中の１番目の伝送データの送信が完了した後に、１番目の伝送データと同じ優先度を有する伝送データの送信を行うことができる。
【００２３】
次に、制御部１１は、ｎの値がＮの値より大きいか否かを判定する（Ｓ１０９）。
ステップＳ１０９の結果、ｎの値がＮの値より大きくない場合（Ｓ１０９→Ｎｏ）、制御部１１は、ステップＳ１０７の処理へ戻る。
ステップＳ１０９の結果、ｎの値がＮの値より大きい場合（Ｓ１０９→Ｙｅｓ）、制御部１１は、検出した伝送データをｎ番目の伝送データに設定する（Ｓ１１０）。すなわち、検出した伝送データの情報（識別番号および残りデータサイズ（この時点では、全データサイズ））をｎ番目の送信待ち行列に登録する。そして、制御部１１は、再び、記憶部１３を参照して、伝送開始条件の成立した伝送データの検出処理を１０ｍｓ周期で実行し、伝送開始条件の成立した伝送データを検出すると、ステップＳ１０２の処理を行う。ここで、ステップＳ１１０の時点において、ｎ＝１であった場合（検出した伝送データの優先度が、１番目の伝送データの優先度より高い場合）、１番目の伝送データは、ステップＳ１０５の処理により、送信中の状態となっている。したがって、ｎ＝１の場合、ステップＳ１１０において、制御部１１は、通信コントロール１２へ現在送信中の伝送データの送信を一時的に中断する旨の指示を送った後、現出したデータを１番目の伝送データとする。この場合、現在送信中の伝送データは、２番目の伝送データとなる。
【００２４】
ここで、ステップＳ１０６からステップＳ１１０の処理を、図５（ｂ）を参照して説明する。
符号５０〜５３は、送信待ち行列における伝送データである。符号５０は、１番目の伝送データであり、符号５１は、２番目の伝送データであり、符号５２は、３番目の伝送データであり、符号５３は、Ｎ番目の伝送データである。そして、符号５４は、伝送開始条件が成立することによって、検出された伝送データである。ステップＳ１０６でｎ＝１とすることによって、ステップＳ１０７で、制御部１１は、１（＝ｎ）番目の伝送データ５０と、検出した伝送データ５４の優先度を比較する。ステップＳ１０７の結果、検出した伝送データ５４が、１番目の伝送データ５０より高い優先度を有するとき、制御部１１は、通信コントロール部１２に前記したように現在送信中の伝送データを一時的に中断させた後、検出した伝送データ５４を１番目の伝送データとする。すなわち、伝送データ５０の前に、検出した伝送データ５４をセットする。
【００２５】
ステップＳ１０７の結果、検出した伝送データ５４が、１番目の伝送データ５０より低い優先度を有しているとき、ステップＳ１０８によって、ｎが１加算される。これにより、次のステップＳ１０７では、制御部１１が、２（＝ｎ）番目の伝送データ５１と、検出した伝送データ５４との優先度の比較を行う。検出した伝送データ５４が、２番目の伝送データ５１より高い優先度を有していれば、ステップＳ１１０により、検出した伝送データを２番目の伝送データとする。すなわち、伝送データ５１の前に、検出した伝送データをセットする（送信待ち行列に識別番号と残りデータサイズとを登録する）。
ステップＳ１０７の結果、検出した伝送データ５４が、２番目の伝送データ５０より低い優先度を有しているとき、ステップＳ１０８によって、ｎが１加算される。これにより、次のステップＳ１０７では、制御部１１が、３（＝ｎ）番目の伝送データ５２と、検出した伝送データ５４との優先度の比較を行う。
以下、同様にして、制御部は、ｎ番目の伝送データと、検出した伝送データ５４との優先度を比較していく。
【００２６】
そして、ステップＳ１０９で「Ｙｅｓ」となったとき、すなわち、ステップＳ１０７で、Ｎ番目の伝送データ５３より、検出した伝送データ５４の優先度が低いと判定されたとき、制御部１１は、検出した伝送データ５４をＮ＋１番目の伝送データ、すなわち、Ｎ番目の伝送データ５３の後に、検出した伝送データ５４をセットする（送信待ち行列に識別番号と残りデータサイズとを登録する）。
【００２７】
図６は、本実施形態に係る送信処理の流れを示すフローチャートである。
図６に示す送信処理は、図５のステップＳ１０５において行われる処理である。
なお、制御部１１は、図６に示す送信処理と、図５の処理とを平行して行っている。すなわち、送信待ち行列における１番目の伝送データを送信している間にも、他に伝送条件が成立している伝送データが記憶部１３に存在する場合には、送信待ち行列に次々と伝送データの情報が加えられることなる。
本実施形態では、ネットワーク４の送信することのできるデータの規定サイズを２５６バイトとするが、規定サイズが２５６バイトに限られないことは当然である。
まず、制御部１１は、記憶部１３における送信待ち行列の１番目の伝送データの残りデータサイズを変数Ｂに代入する（Ｓ２０１）。
続いて、制御部１１は、Ｂの値が、規定サイズの値である２５６バイトより大きいか否かを判定する（Ｓ２０２）。
ステップＳ２０２の結果、Ｂの値が、規定サイズの値である２５６バイトより大きくない場合（Ｓ２０２→Ｎｏ）、制御部１１は、この時点における変数Ｂの値が、「０」であるか否かを判定する（Ｓ２０２ａ）。なお、ステップＳ２０２ａの処理を行う理由は、図６の説明の最後で後記する。
ステップＳ２０２ａの結果、変数Ｂが「０」である場合（Ｓ２０２ａ→Ｙｅｓ）、制御部１１は、ステップＳ２１２の処理へ進む。
ステップＳ２０２ａの結果、変数Ｂが「０」でない場合（Ｓ２０２ａ→Ｎｏ）、制御部１１は、ステップＳ２０３の処理へ進む。
そして、制御部１１は、変数ｂに変数Ｂの値を代入し（Ｓ２０３）、変数Ｂに「０」を代入した（Ｓ２０４）後、ステップＳ２０７の処理へ進む。
【００２８】
ステップＳ２０２の結果、Ｂの値が、２５６バイトより大きい場合（Ｓ２０２→Ｙｅｓ）、制御部１１は、変数ｂに２５６バイトを代入し（Ｓ２０５）、変数Ｂに、変数Ｂの値から、２５６バイトを減算した値を代入する（Ｓ２０６）。
そして、制御部１１は、１番目の伝送データのうち、データサイズｂ分の伝送データを記憶部１３から取得した後、すなわち、規定サイズの値である２５６バイト（Ｓ２０５，Ｓ２０６を経由した場合）または２５６バイト以下（Ｓ２０３，Ｓ２０４を経由した場合）の伝送データを、制御部１１が、記憶部１３から取得した後、データバス１４を介して、通信コントロール部１２に送り（Ｓ２０７）、送信待ち行列の１番目の伝送データの残りデータサイズを変数Ｂの値とする（Ｓ２０８）。つまり、ステップＳ２０３およびステップＳ２０４を経由したときは、送信待ち行列の１番目の伝送データの残りデータサイズの値は、「０」となり、ステップＳ２０５およびステップＳ２０６を経由したときは、送信待ち行列の１番目の伝送データの残りデータサイズは、２５６バイト以下となる。
そして、制御部１１は、ステップＳ２０７で通信コントロール部１２に送った伝送データを、ネットワーク４に送信するよう、通信コントロール部１２に指令し（Ｓ２０９）、通信コントロール部１２からの送信完了通知を待機する（Ｓ２１０）。通信コントロール部１２は、通信回路１７を介して、ネットワーク４を周回しているトークンを取得すると、制御部１１により送られた伝送データを、通信回路１７を介してネットワーク４に送出し、その後、通信回路１７を介することによって、再びトークンをネットワーク４に送出すると、送受信通知バス１６を介して、制御部１１へ通信完了通知を送る。
本実施形態では、分割された個々の伝送データを送信する毎に、通信コントロール部１２が、制御部１１へ送信完了通知を送っているが、これに限らず、送信先の端末１０から肯定応答（Ａｃｋ（Acknowledgement）信号）が得られるプロトコルを用いている場合は、通信コントロール部１２が、送信先の端末１０からの該肯定応答を受信した後に、送信完了通知を送ってもよい。
【００２９】
通信コントロール部１２からの通信完了通知を受信した制御部１１は、記憶部１３の送信待ち行列を参照して、送信待ち行列の１番目の伝送データの残りデータサイズが、「０」であるか否かを判定する（Ｓ２１１）。
ステップＳ２１１の結果、送信待ち行列の１番目に相当する伝送データの残りデータサイズが、「０」ではない場合（Ｓ２１１→Ｎｏ）、すなわち、ステップＳ２０２で「Ｙｅｓ」だった場合、制御部１１は、ステップＳ２０１の処理へ戻る。
ステップＳ２１１の結果、送信待ち行列の１番目に相当する伝送データの残りデータサイズが、「０」である場合（Ｓ２１１→Ｙｅｓ）、すなわち、ステップＳ２０２で「Ｎｏ」だった場合、制御部１１は、送信待ち行列の１番目の情報を削除して、送信待ち行列の順番を繰り上げる（Ｓ２１２）。
そして、制御部１１は、順番を繰り上げた送信待ち行列に伝送データがあるか否かを判定する（Ｓ２１３）。すなわち、制御部１１は、記憶部１３の送信待ち行列を参照し、送信待ち行列に情報があるか否かを判定する。
ステップＳ２１３の結果、送信待ち行列に伝送データがある場合（Ｓ２１３→Ｙｅｓ）、制御部１１は、ステップＳ２０１の処理へ戻る。
ステップＳ２１３の結果、送信待ち行列に伝送データがない場合（Ｓ２１３→Ｎｏ）、制御部１１は、処理を終了する。
【００３０】
ここで、ステップＳ２０２ａの処理について説明する。前記したように、図５に示す送信待ち行列の作成処理と、図６に示す送信処理とは、並行で行われている。従って、ステップＳ２０８で、１番目の伝送データ（伝送データＣとする）の残りデータサイズとして「０」が登録された後、例えば、ステップＳ２１０における送信完了通知待機の間に、新たな伝送データが１番目の伝送データとして登録されることがあり得る。新たな伝送データ（伝送データＤとする）のデータサイズを仮に１２８バイトとすると、このとき、送信待ち行列の残りデータサイズは、「１２８」，「０」・・・の順となっている。この後、伝送データＤに対して、ステップＳ２０１〜ステップＳ２１１の処理が行われると、ステップＳ２１２で、伝送データＣが、再び１番目の伝送データとなり、送信待ち行列の残りデータサイズは、「０」・・・となる。すると、次の、ステップＳ２０１において、「Ｂ＝０」となる。すでに、「Ｂ＝０」となっている伝送データに対し、ステップＳ２０３〜ステップＳ２１１を行うことは効率的ではない。従って、ステップＳ２０２ａの時点で「Ｂ＝０」である場合、制御部１１は、ステップＳ２１２の処理へ進むことで、効率的な処理を行うことができる。
【００３１】
なお、分割する際のデータサイズは、設定されている規定サイズ以下であればよいが、規定サイズに合わせた方が送信回数を減らすことができ、伝送データを効率的に送信することができる。
【００３２】
図７は、ある時点における各端末の送信タイムチャートの例を示す図である。
上段は、ホスト端末１から送信される伝送データの送信タイムチャートを示し、下段は、クライアント端末３から送信される伝送データの送信タイムチャートを示す図である。
図７において符号１０１ａ〜１０１ｄは、ホスト端末１から送信される動作履歴データであり、優先度は、「低」に設定されている。なお、符号１０１ａ〜１０１ｄは、図３の識別番号「２」の伝送データである。
また、符号１０２ａ〜１０２ｄは、ホスト端末１から送信される外部への出力データであり、優先度は、「高」に設定されている。なお、符号１０２ａ〜１０２ｄは、図３の識別番号「１」の伝送データである。
さらに、符号１０３ａ〜１０３ｆは、ホスト端末１から送信される入出力状況、演算パラメータのデータであり、優先度は、「中」に設定されている。なお、符号１０３ａ〜１０３ｆは、図３の識別番号「３」の伝送データである。
そして、符号１０４ａ〜１０４ｄは、クライアント端末３から送信される外部からの入力データであり、優先度は、「高」に設定されている。なお、符号１０４ａ〜１０４ｄは、図３の識別番号「５」の伝送データである。
【００３３】
ホスト端末１は、最初、動作履歴データ１０１ａ，１０１ｂを送信している。そして、優先度「高」である外部への出力データ１０２ａ，１０２ｂにおいて伝送開始条件が成立すると、ホスト端末１は、優先度が、「低」である動作履歴データ１０１ｃの送信を中断し、外部への出力データ１０２ａ，１０２ｂの送信を開始する。優先度が、「高」の外部への出力データの送信が、符号１０２ｂで完了すると、ホスト端末１は、中断していた動作履歴データ１０１ｃ〜１０１ｄの送信を再開する。ところが、動作履歴データ１０１ｄの送信後、優先度が、「中」の入出力状況、演算パラメータ１０３ａ〜１０３ｆの伝送開始条件が成立したため、優先度が、「低」である動作履歴データの送信を中断し、入出力状況、演算パラメータ１０３ａ〜１０３ｆの送信を開始する。
さらに、演算パラメータ１０３ｄの送信後、すでに送信した外部への出力データ１０２ａ，１０２ｂとは異なる外部への出力データ１０２ｃ，１０２ｄ（優先度「高」）の伝送開始条件（すなわち、外部への出力データ１０２ａから、Ｌ＝１００ｍｓが経過：図３参照）が成立したため、ホスト端末１は、優先度が、「中」の入出力状況、演算パラメータ１０３ｅの伝送を中断し、優先度が、「高」の外部への出力データ１０２ｃ，１０２ｄを送信した後、入出力状況、演算パラメータ１０３ｅ，１０３ｆの送信を再開する。
【００３４】
また、クライアント端末３は、外部からの入力データ１０４ａ，１０４ｂを送信開始し、外部からの入力データ１０４ｂの送信を完了すると、一時的に送信待ちデータ無しで送信休止状態となる。そして、外部からの入力データの伝送開始条件である１００ｍｓ（図３参照）が経過すると、符号１０４ａ，１０４ｂとは異なる外部からの入力データ１０４ｃ，１０４ｄを送信する。
【００３５】
（効果）
本実施形態によれば、通信プロトコルで規定されたデータサイズ（規定サイズ）を超えた伝送データの伝送方法を提供することにより、各ノードである通信端末の伝送が、ネットワーク中の他の通信端末の伝送、および自通信端末の他の伝送から影響を受けて、意図した伝送タイミングが変動することを抑制することができる。
本実施形態によれば、複数の端末１０で構成するネットワーク４で、内容および優先度の異なる伝送データを取り扱うシステムにおいて、優先度の高い伝送データほど、事前に取り決めた伝送開始条件に基づいた伝送時期を保障することができる。このため、利用者への応答性を確保しながら、配車制御や最適化シミュレーションなどの高負荷な処理を行う群管理エレベーターなどに適している。
また、一定以上の頻度でデータを伝送し続けなくてはならないデータ、例えば映像や音声のデータと、多少時間を要しても、最終的に全てのデータを伝送すれば、目的を達成できるデータ、例えばテキストや画像のデータを、同一のネットワーク４上で取り扱うことができる。
【図面の簡単な説明】
【００３６】
【図１】本実施形態に係る通信システムの構成の一例を示す図である。
【図２】本実施形態に係る端末の構成例を示す機能ブロック図である。
【図３】本実施形態に係る伝送データの一覧の例を示す表である。
【図４】伝送データの送信待ち行列の例を示す図である。
【図５】送信待ち行列の作成処理の流れを示すフローチャートである。
【図６】本実施形態に係る送信処理の流れを示すフローチャートである。
【図７】ある時点における各端末の送信タイムチャートの例を示す図である。
【符号の説明】
【００３７】
１      ホスト端末
２      シミュレーション端末
３      クライアント端末
４      ネットワーク
１０    端末（通信端末）
１１    制御部
１２    通信コントロール部
１３    記憶部
１４    データバス
１５    アドレスバス
１６    送受信通知バス
１７    通信回路
１００  通信システム
【図１】
2009017145.tif 000003
【図２】
2009017145.tif 000004
【図３】
2009017145.tif 000005
【図４】
2009017145.tif 000006
【図５】
2009017145.tif 000007
【図６】
2009017145.tif 000008
【図７】
2009017145.tif 000009