(57)【要約】      （修正有）【課題】低速通信リンクを介してメッセージを伝送するにあたり、そのデータスループットを向上させる。【解決手段】メッセージバンドルの据え置き肯定応答を利用して、通信リンク１６を時間的にパックすることにより、通信リンクのアイドル時間を短縮する。送信システム１２は、送信されるメッセージを保留メッセージ待ち行列に記憶し、動的ウィンドウを保留メッセージ待ち行列に適用して、低速通信リンク１６を介して送信されるメッセージバンドルを規定する。送信システム１２は、バンドル内の少なくとも１個のメッセージに対する肯定応答をリクエストする。送信局が、リクエストされた肯定応答に応じて時宜を得た肯定応答を受信すると、送信局は、その肯定応答に関連するすべての未処理メッセージを再送待ち行列から除去する。【選択図】図１
2011072004.tif 000002
【特許請求の範囲】
【請求項１】
往復送信時間遅延を有する通信リンクを介して複数個のメッセージを送信する方法において、前記通信リンクを介して送信されるメッセージを記憶するための第１の待ち行列を確立するステップと、前記通信リンクに送信された応答されていないメッセージを記憶するための第２の待ち行列を確立するステップと、前記第１の待ち行列内の位置に関連する下端部と、前記下端部の位置と、前記第２の待ち行列に含まれる応答されていないメッセージの数とに基づく上端部とを有するウィンドウを規定するステップと、前記ウィンドウを前記第１の待ち行列に適用して、前記通信リンクを介して送信される１個以上のメッセージを含むメッセージバンドルを規定するステップと、前記第１の待ち行列から前記メッセージバンドルに関連する１個以上のメッセージを除去するステップと、前記メッセージバンドル内の少なくとも２個のメッセージが前記往復送信時間遅延よりも短い時間に送信されるように、前記通信チャネルを介して、前記メッセージバンドルに関連する１個以上のメッセージを送信するステップと、前記送信された１個以上のメッセージを前記第２の待ち行列に付加するステップと、前記メッセージバンドル内のメッセージが送信された後、前に送信された１個以上のメッセージのうちのいくつかの肯定応答を受信するステップとを備える、メッセージを送信する方法。
【請求項２】
前記第２の待ち行列を確立するステップが、前記第２の待ち行列に含まれてもよい所定最大数の応答されていないメッセージを規定するステップを備えることを特徴とする、請求項１記載のメッセージを送信する方法。
【請求項３】
前記所定最大数の応答されていないメッセージが、前記通信リンクの往復送信時間遅延を基準とすることを特徴とする、請求項２記載のメッセージを送信する方法。
【請求項４】
前記第１の待ち行列を確立するステップが、前記第１の待ち行列に記憶されたメッセージの各々に対するシーケンス番号を与えるステップを備え、前記ウィンドウを規定するステップが、前記ウィンドウの下端部を前記通信リンクに送信される次のメッセージに関連する第１のシーケンス番号と関連させるステップを備えることを特徴とする、請求項１記載のメッセージを送信する方法。
【請求項５】
前記ウィンドウを規定するステップが、前記ウィンドウの上端部を前記第２のシーケンス番号と関連させるステップを備え、前記第２のシーケンス番号と前記第１のシーケンス番号との差が、前記第２の待ち行列に現在記憶されているメッセージの数に逆比例の関係であることを特徴とする、請求項４記載のメッセージを送信する方法。
【請求項６】
前記メッセージバンドルに関連する１個以上のメッセージを送信するステップが、前記通信リンク内に１個以上のメッセージを送信する前に、前記１個以上のメッセージの各々にタイムスタンプを付加するステップを備えることを特徴とする、請求項１記載のメッセージを送信する方法。
【請求項７】
タイムアウトし第２の待ち行列に付加された１個以上の送信メッセージを前記第２の待ち行列から除去するステップをさらに備えることを特徴とする、請求項６記載のメッセージを送信する方法。
【請求項８】
タイムアウトした第２の待ち行列に付加された１個以上の送信メッセージを前記通信リンクを介して再送するステップをさらに備えることを特徴とする、請求項７記載のメッセージを送信する方法。
【請求項９】
前記メッセージバンドルに関連する１個以上のメッセージを送信するステップが、前記メッセージバンドル内の１個のメッセージに対する肯定応答をリクエストするステップを備えることを特徴とする、請求項１記載のメッセージを送信する方法。
【請求項１０】
肯定応答をリクエストするステップが、所定数のメッセージの各組に対する肯定応答をリクエストするステップを備え、前記所定数が前記第２の待ち行列に含まれてもよい応答していないメッセージの最大数よりも小さいことを特徴とする、請求項９記載のメッセージを送信する方法。
【請求項１１】
前記メッセージの所定数が、前記第２の待ち行列に含まれてもよい応答していないメッセージの最大数の半分に等しいことを特徴とする、請求項１０記載のメッセージを送信する方法。
【請求項１２】
前記メッセージの所定数が、前記第２の待ち行列に含まれてもよい応答していないメッセージの所定最大数の法として設定されることを特徴とする、請求項１０記載のメッセージを送信する方法。
【請求項１３】
前記肯定応答をリクエストするステップが、前記メッセージバンドル内で最後のメッセージに対する肯定応答をリクエストするステップを備えることを特徴とする、請求項９記載のメッセージを送信する方法。
【請求項１４】
前記送信されたメッセージに対する肯定応答を受信し、前記第２の待ち行列から応答されたメッセージを除去するステップをさらに備えることを特徴とする、請求項１記載のメッセージを送信する方法。
【請求項１５】
前記肯定応答を受信するステップが、受信された１個の肯定応答に基づいて１個以上の送信メッセージのうちの２個以上に応答するステップを備えることを特徴とする、請求項１４記載のメッセージを送信する方法。
【請求項１６】
第１のデータサーバと、データ肯定応答を使用する通信リンクを介して、前記第１のデータサーバに通信結合された第２のデータサーバとの間でデータを搬送するための通信方法において、前記第１のデータサーバにおいて第１の待ち行列を確立して、前記通信リンクを介して送信されるデータを記憶するステップと、前記第１のデータサーバにおいて第２の待ち行列を確立して、前記通信リンク内に既に送信されており、まだ応答していないデータを記憶するステップと、前記第１の待ち行列にウィンドウを適用し、前記通信リンクを介して送信されるデータのグループを規定するステップと、前記データのグループを前記リンクに第１の時間に送信するステップと、前記データのグループを前記通信リンク内に送信する結果、前記データのグループを前記第２の待ち行列に付加するステップと、前記第１の時間よりも長い第２の時間に前記データのグループのうちの少なくとも１個に対して肯定応答を受信するステップと、前記肯定応答を受信して、前記第２の待ち行列から前記応答されたデータを除去するステップとを備える、通信方法。
【請求項１７】
前記第２の待ち行列から前記応答されたデータを除去するステップが、前記第２の待ち行列から２個以上のデータアイテムを除去するステップを備えることを特徴とする、請求項１６記載の通信方法。
【請求項１８】
前記第１のデータサーバにおいて第２の待ち行列を確立するステップが、前記第２の待ち行列に含まれてもよいデータの所定最大量を規定するステップを備えることを特徴とする、請求項１６記載の通信方法。
【請求項１９】
前記第２の待ち行列に含まれてもよいデータの所定最大量が、前記通信リンクの往復送信時間遅延によって決定されることを特徴とする、請求項１８記載の通信方法。
【請求項２０】
前記ウィンドウを前記第１の待ち行列に適用するステップが、前記第２の待ち行列における応答していないデータの量に基づいてウィンドウサイズを決定するステップを備えることを特徴とする、請求項１６記載の通信方法。
【請求項２１】
前記データのグループを送信するステップが、前記データのグループを前記通信リンクに送信する前に前記データのグループ内のデータにタイムスタンプを付加するステップを備えることを特徴とする、請求項１６記載の通信方法。
【請求項２２】
前記送信されたデータのグループ内のデータに対するタイムアウト期間を決定し、タイムアウトした前記第２の待ち行列内のデータを前記第２の待ち行列から除去するステップをさらに備えることを特徴とする、請求項２１記載の通信方法。
【請求項２３】
タイムアウトした前記第２の待ち行列内でデータを再送するステップをさらに備えることを特徴とする、請求項２２記載の通信方法。
【請求項２４】
前記データのグループを送信するステップが、前記データのグループの１個のメンバに対する肯定応答をリクエストするステップを備えることを特徴とする、請求項１６記載の通信方法。
【請求項２５】
前記肯定応答をリクエストするステップが、前記第２の待ち行列に含まれてもよいデータの所定最大許容量よりも小さく、１よりも大きい特定のデータ量に基づいて肯定応答をリクエストするステップを備えることを特徴とする、請求項２４記載の通信方法。
【請求項２６】
前記データ量が、前記第２の待ち行列に含まれてもよいデータの所定最大許容量の半分に等しいことを特徴とする、請求項２５記載の通信方法。
【請求項２７】
前記特定のデータ量が、前記第２の待ち行列に含まれてもよいデータの所定最大許容量の法を用いて決定されることを特徴とする、請求項２５記載の通信方法。
【請求項２８】
前記肯定応答をリクエストするステップが、前記データのグループ内で最後のデータアイテムに対する肯定応答をリクエストするステップを備えることを特徴とする、請求項２４記載の通信方法。
【請求項２９】
通信リンクを介して複数個のメッセージを送信する方法において、前記通信リンクを介して送信されるメッセージを第１の待ち行列に記憶するステップと、前記第１の待ち行列からメッセージを選択するためのメッセージウィンドウサイズを規定するステップとを備え、前記ウィンドウサイズが１よりも大きく、さらに、前記ウィンドウサイズのウィンドウを前記第１の待ち行列に適用し、第１の数のメッセージを含むメッセージバンドルを前記ウィンドウサイズまで規定するステップと、前記メッセージバンドルに関連する前記第１の数のメッセージを前記通信リンク内に送信するステップと、前記第１の数のメッセージのうちの１個が前記メッセージバンドル内にある状態で肯定応答リクエストを送信するステップと、前記送信された第１の数のメッセージを第２の待ち行列に記憶するステップと、応答されたメッセージを前記第２の待ち行列から除去するステップとを備えることを特徴とする、メッセージを送信する方法。
【請求項３０】
前記ウィンドウサイズを規定するステップが、前記第２の待ち行列に現在記憶されている多数のメッセージに基づいてウィンドウサイズを決定するステップを備えることを特徴とする、請求項２９記載のメッセージを送信する方法。
【請求項３１】
前記ウィンドウサイズが、前記第２の待ち行列に現在記憶されているメッセージの数に逆比例の関係であることを特徴とする、請求項３０記載のメッセージを送信する方法。
【請求項３２】
前記第１の待ち行列にメッセージを記憶するステップが、前記第１の待ち行列に記憶されたメッセージの各々に対するシーケンス番号を与えるステップを備えることを特徴とする、請求項２９記載のメッセージを送信する方法。
【請求項３３】
前記第１の数のメッセージを前記通信リンクに送信するステップが、前記第１の数のメッセージの各々を前記通信リンクに送信する前に、各メッセージにタイムスタンプを付加するステップを備えることを特徴とする、請求項２９記載のメッセージを送信する方法。
【請求項３４】
前記第２の待ち行列におけるメッセージに対するタイムアウト期間を決定し、タイムアウトしたメッセージを前記第２の待ち行列から除去するステップをさらに備えることを特徴とする、請求項３３記載のメッセージを送信する方法。
【請求項３５】
タイムアウトしたメッセージを再送するステップをさらに備えることを特徴とする、請求項３４記載のメッセージを送信する方法。
【請求項３６】
前記肯定応答リクエストを送信するステップが、第２の数のメッセージ毎に肯定応答リクエストを送信するステップを備え、前記第２の数が前記ウィンドウサイズよりも小さいことを特徴とする、請求項２９記載のメッセージを送信する方法。
【請求項３７】
前記第２の数が前記ウィンドウサイズの半分に等しいことを特徴とする、請求項３６記載のメッセージを送信する方法。
【請求項３８】
前記第２の数が前記ウィンドウサイズの法を用いて決定されることを特徴とする、請求項３６記載のメッセージを送信する方法。
【請求項３９】
肯定応答リクエストを送信するステップが、前記メッセージバンドル内の最後のメッセージ対して肯定応答リクエストを送信するステップを備えることを特徴とする、請求項２９記載のメッセージを送信する方法。
【請求項４０】
プロセッサを有するデータサーバが通信リンクに通信結合されたデータ送信システム内で使用するための据え置き肯定応答通信システムにおいて、コンピュータ読み出し可能媒体と、前記コンピュータ読み出し可能媒体に記憶され、前記通信リンクを介して送信されるデータを第１の待ち行列に記憶するプロセッサによって実行される第１の記憶ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記通信リンクに送信されるデータを第２の待ち行列に記憶するプロセッサによって実行される第２の記憶ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、ウィンドウを用いて前記通信リンクを介して送信される前記第１の待ち行列に記憶されたデータのグループを規定するプロセッサによって実行されるウィンドウルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記通信リンクに前記データのグループを送信するプロセッサによって実行される送信ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、送信されているデータのグループの結果として、前記データのグループを前記第２の待ち行列に付加するプロセッサによって実行される付加ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記データのグループのいずれかに対する肯定応答を受信し、前記第２の待ち行列から受信した肯定応答に関連するデータを除去するプロセッサによって実行される肯定応答ルーチンとを備えることを特徴とする、据え置き肯定応答通信システム。
【請求項４１】
前記ウィンドウルーチンがさらに、前記第２の待ち行列に記憶されたデータ量に基づいてウィンドウサイズを決定することを特徴とする、請求項４０記載の据え置き肯定応答通信システム。
【請求項４２】
前記送信ルーチンがさらに、前記データのグループを前記通信リンクに送信する前に、前記データのグループにおけるデータにタイムスタンプを付加することを特徴とする、請求項４０記載の据え置き肯定応答通信システム。
【請求項４３】
通信リンクに通信するデータサーバを有するデータ送信システムにおいて使用するための据え置き肯定応答通信システムにおいて、コンピュータ読み出し可能媒体と、前記コンピュータ読み出し可能媒体に記憶され、前記通信リンクを介して送信されるメッセージを第１の待ち行列に記憶する前記データサーバによって実行される第１の記憶ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記第１の待ち行列からメッセージを選択するためのウィンドウサイズを規定するプロセッサによって実行される規定ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記ウィンドウサイズのウィンドウを前記第１の待ち行列に適用し、ウィンドウサイズまでのメッセージの数を含むメッセージバンドルを規定する前記データサーバによって実行されるウィンドウルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記メッセージバンドルのメッセージの数を前記通信リンクに送信する前記データサーバによって実行される第１の送信ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記送信されたメッセージの数のうちの１個と共に、肯定応答リクエストを送信する前記データサーバによって実行される第２の送信ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、前記送信されたメッセージの数を第２の待ち行列に記憶する前記データサーバによって実行される第２の記憶ルーチンと、前記コンピュータ読み出し可能媒体に記憶され、応答されたメッセージを前記第２の待ち行列から除去する前記データサーバによって実行される肯定応答トラッキングルーチンとを備えることを特徴とする、据え置き肯定応答通信システム。
【請求項４４】
前記ウィンドウルーチンはさらに、前記第２の待ち行列に現在記憶されているメッセージの数に基づいてウィンドウサイズを規定することを特徴とする、請求項４３記載のシステム。
【請求項４５】
前記ウィンドウルーチンは、前記第２の待ち行列に現在記憶されているメッセージの数に逆比例の関係であるウィンドウサイズを選択することを特徴とする、請求項４４記載のシステム。
【請求項４６】
前記第１の送信ルーチンはさらに、前記メッセージバンドルのメッセージを前記通信リンクに送信する前に、前記メッセージバンドルから各メッセージにタイムスタンプを付加することを特徴とする、請求項４４記載のシステム。
【請求項４７】
前記コンピュータ読み出し可能媒体に記憶され、前記第２の待ち行列に記憶された送信メッセージの各々に対するタイムアウト期間を決定し、タイムアウトした前記第２の待ち行列に記憶された送信メッセージのうちの１個を再送するデータサーバによって実行される再送ルーチンをさらに備えることを特徴とする、請求項４６記載のシステム。
【請求項４８】
前記第２の送信ルーチンはさらに、第２の数のメッセージ毎に肯定応答リクエストを送信し、前記第２の数が前記ウィンドウサイズよりも小さいことを特徴とする、請求項４３記載のシステム。
【請求項４９】
前記第２の数が前記ウィンドウサイズの半分に等しいことを特徴とする、請求項４８記載のシステム。
【請求項５０】
前記第２の数が前記ウィンドウサイズの寸法を用いて決定されることを特徴とする、請求項４８記載のシステム。
【請求項５１】
通信リンクを介して複数個のメッセージを送信するシステムにおいて、第１のデータサーバが、前記通信リンクを介して送信されるメッセージを記憶する第１の待ち行列と、前記通信リンクに既に送信された応答していないメッセージを記憶する第２の待ち行列と、前記第１の待ち行列に記憶されたメッセージのグループを前記通信リンクに送信する第１のルーチンとを備え、前記メッセージのグループ内のメッセージの数は、前記第２の待ち行列に記憶されたメッセージの数を基準とし、さらに前記送信されたメッセージのグループを前記第２の待ち行列に付加する第２のルーチンと、前記送信されたメッセージのグループと関連する肯定応答を処理し、前記第２の待ち行列から応答されたメッセージを除去する第３のルーチンとを備え、前記通信リンクを介して前記第１のデータサーバに通信結合された第２のデータサーバが、前記通信リンクを介して前記送信されたメッセージのグループを受信し、前記受信された送信メッセージのグループのうちの１個以上に対する肯定応答を前記通信リンクを介して前記第１のデータサーバに送信する第４のルーチンを備えることを特徴とする、メッセージを送信するシステム。
【請求項５２】
前記通信リンクが衛星通信リンクを備えることを特徴とする、請求項５１記載のシステム。
【請求項５３】
前記通信リンクが無線セルラリンクを備えることを特徴とする、請求項５１記載のシステム。
【請求項５４】
前記通信リンクがモデムリンクを備えることを特徴とする、請求項５１記載のシステム。
【請求項５５】
前記第４のルーチンはさらに、前記受信された送信メッセージのグループに関連する肯定応答に対するリクエストに応じて、肯定応答を送信することを特徴とする、請求項５１記載のシステム。
【請求項５６】
前記第４のルーチンはさらに、順序を乱して受信された送信メッセージのグループ内の受信メッセージに応じて、肯定応答を送信することを特徴とする、請求項５１記載のシステム。
【請求項５７】
前記第１および第２のデータサーバが、前記通信リンクを介して送信されたメッセージに対する１対多の関係を備えることを特徴とする、請求項５１記載のシステム。
【請求項５８】
衛星通信リンクを介して通信結合された第１の通信ネットワークと第２の通信ネットワークとを有するプロセス制御システムにおいて、前記第１の通信ネットワークに接続された第１のユーザインタフェースと、前記第１の通信ネットワークを介して前記ユーザインタフェースに通信結合された第１の制御装置と、前記第１の通信ネットワークを介して前記ユーザインタフェースと前記制御装置とに通信結合された第１のデータサーバと、前記第２の通信ネットワークに接続された第２のユーザインタフェースと、前記第２の通信ネットワークを介して前記第２のユーザインタフェースに通信結合された第２の制御装置と、前記第２の通信ネットワークを介して前記第２のユーザインタフェースと前記第２の制御装置とに通信結合され、前記衛星通信リンクを介して前記第１のデータサーバに通信結合された第２のデータサーバとを備えることを特徴とする、プロセス制御システム。
【請求項５９】
低速通信リンクを介して通信結合された第１の通信ネットワークと第２の通信ネットワークとを有するプロセス制御システムにおいて、前記第１の通信ネットワークに接続された第１のユーザインタフェースと、前記第１の通信ネットワークを介して前記ユーザインタフェースに通信結合された第１の制御装置と、前記第１の通信ネットワークを介して前記ユーザインタフェースと前記制御装置とに通信結合された第１のデータサーバと、前記第２の通信ネットワークに接続された第２のユーザインタフェースと、前記第２の通信ネットワークを介して前記第２のユーザインタフェースに通信結合された第２の制御装置と、前記第２の通信ネットワークを介して前記第２のユーザインタフェースと前記第２の制御装置とに通信結合され、前記低速通信リンクを介して前記第１のデータサーバに通信結合された第２のデータサーバとを備え、前記第１のユーザインタフェースは、前記第１の通信ネットワークを介して第１の制御戦略を前記第１の制御装置に送り、前記第１のデータサーバにカスタム通信オブジェクトを送る構成ルーチンを備えることを特徴とする、プロセス制御システム。
【請求項６０】
前記構成ルーチンが、前記第１および第２の通信ネットワーク間のユーザ特定通信に応じて、前記カスタム通信オブジェクトを自動的に生成することを特徴とする、請求項５９に記載のプロセス制御システム。
【請求項６１】
前記カスタム通信オブジェクトが、前記低速通信リンクを介して前記第１および第２の通信ネットワーク間でのメッセージの自動ルーティングを可能にすることを特徴とする、請求項６０に記載のプロセス制御システム。
【請求項６２】
前記第１および第２のデータサーバが、前記低速通信リンク上で送信される情報を記憶する第１および第２のパラメータリストをそれぞれ備えることを特徴とする、請求項５９記載のプロセス制御システム。
【請求項６３】
前記第１のパラメータリスト内の少なくともいくつかの情報が前記第１の通信ネットワーク上で発行されることを特徴とする、請求項６２に記載のプロセス制御システム。
【請求項６４】
前記第１のパラメータリスト内の少なくともいくつかの情報が前記第２の通信ネットワーク上で発行されることを特徴とする、請求項６２に記載のプロセス制御システム。
【請求項６５】
前記第１のデータサーバが、複数個のメッセージのうちのいずれかに対する肯定応答を受信する前に、前記低速通信リンク上で前記複数個のメッセージを送信することを特徴とする、請求項５９に記載のプロセス制御システム。
【請求項６６】
往復送信遅延を有し、データ肯定応答を利用する通信リンクを介して複数個のメッセージを送信する方法において、前記通信リンクに第１のメッセージを送信するステップと、前記第１のメッセージの肯定応答を待つことなく、前記通信リンクに第２のメッセージを送信するステップと、前記第２のメッセージに対して肯定応答をリクエストするステップとを備えることを特徴とする、メッセージを送信する方法。
【請求項６７】
前記第２のメッセージの肯定応答を受信し、前記受信した肯定応答を用いて、前記第２のメッセージに明確に応答し、前記第１のメッセージに暗に応答するステップをさらに備えることを特徴とする、請求項６６に記載の方法。
【請求項６８】
前記第１および第２のメッセージ間で、１個以上のさらなるメッセージを送信するステップをさらに備えることを特徴とする、請求項６７に記載の方法。
【請求項６９】
前記受信した肯定応答を用いて、前記１個以上のさらなるメッセージに暗に応答するステップをさらに備えることを特徴とする、請求項６８に記載の方法。
【請求項７０】
前記第１および第２のメッセージを前記通信リンクに送信するステップが、前記第１および第２のメッセージを前記通信リンクに送信する前に、前記第１および第２のメッセージにタイムスタンプを付加するステップを備えることを特徴とする、請求項６６に記載の方法。
【請求項７１】
タイムアウトした前記第１および第２の送信メッセージからメッセ−ジを識別し、タイムアウトしたメッセージを前記通信リンクに再送するステップをさらに備えることを特徴とする、請求項７０に記載の方法。
【請求項７２】
通信リンクを介して第２の部分に通信結合された第１の部分を有するプロセス制御システムにおけるアプリケーション情報を通信する方法において、前記プロセス制御システムの前記第１の部分内でアプリケーションクライアントプロセスを確立するステップと、前記プロセス制御システムの前記第２の部分内でアプリケーションサーバプロセスを確立するステップと、前記アプリケーションサーバプロセスから前記アプリケーションクライアントプロセスまで第１のアプリケーションメッセージを送信し、前記クライアント処理に定期的に送信される一組のアプリケーション情報を規定するステップと、前記アプリケーションサーバプロセスから前記クライアントプロセスまで定期的アプリケーション更新メッセージを送信するステップとを備え、前記更新メッセージが、前記第１のアプリケーションメッセージによって特定される前記アプリケーション情報の組に関する情報を含むことを特徴とする、アプリケーション情報を通信する方法。
【請求項７３】
前記第１のアプリケーションメッセージおよび前記アプリケーション更新メッセージが警報情報に関連することを特徴とする、請求項７２に記載の方法。
【請求項７４】
前記アプリケーションクライアントプロセスから前記アプリケーションサーバプロセスまでフロー制御メッセージを送信し、それによって前記アプリケーションサーバプロセスを開始して、前記アプリケーションクライアントプロセスと再同期するステップをさらに備えることを特徴とする、請求項７２に記載の方法。
【請求項７５】
前記第１のアプリケーションメッセージと前記アプリケーション更新メッセージとを送信するステップが、２個以上のメッセージのうち第１のものに対して肯定応答が受信される前に前記２個以上のメッセージを送信するステップを備えることを特徴とする、請求項７３に記載の方法。
【請求項７６】
前記警報情報が優先順位情報を備えることを特徴とする、請求項７３に記載の方法。
【請求項７７】
前記アプリケーションサーバプロセスが前記アプリケーション更新メッセージを前記アプリケーションクライアントプロセスに送信する頻度に関連する情報を、前記第１のアプリケーションメッセージが備えることを特徴とする、請求項７３に記載の方法。
【請求項７８】
前記アプリケーションサーバプロセスが、アプリケーション更新メッセージを前記アプリケーションクライアントプロセスに送信する頻度に基づいて、前記アプリケーション更新メッセージの不在を検出するステップをさらに備えることを特徴とする、請求項７７に記載の方法。
【請求項７９】
前記アプリケーションクライアントプロセスが前記第１のアプリケーションメッセージを前記アプリケーションサーバプロセスに送信する頻度に関連する情報を、前記第１のアプリケーションメッセージが備えることを特徴とする、請求項７３に記載の方法。
【請求項８０】
前記アプリケーションクライアントプロセスが前記第１のアプリケーションメッセージを前記アプリケーションサーバプロセスに送信する頻度に基づいて、アプリケーション更新メッセージの不在を検出するステップをさらに備えることを特徴とする、請求項７９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に通信システムに関し、特に送信メッセージの据え置き肯定応答を用いて、低帯域幅および／又は送信時間遅延を有する通信リンクのデータスループットを増大させる通信方法等に関する。
【背景技術】
【０００２】
一般に、通信技術は、望ましいレベルのデータ完全性での特定レベルのデータスループットを提供する。典型的には、システム設計者は、システムコストを目標とする利用可能な各通信技術によって提供されるデータ完全性とデータスループットとの固有トレードオフを平衡させることによって、アプリケーションに適する通信技術を選択する。制御装置等の局所的に位置する装置とプロセス制御システムで使用するワークステーションとの間の通信を必要とするアプリケーションにおいては、専用高速データバス（例えば、イーサネット（登録商標））を用いて、高レベルのデータスループットおよび完全性を比較的低コストで提供することができるものがある。その他のアプリケーション、例えば、制御装置やプロセス制御システムで使用するワークステーション等の局所および遠隔に位置する装置間の通信を必要とするアプリケーションにおいては、事実上の考察および限定によって、システム設計者は、比較的低い帯域幅または衛星通信リンク等の送信時間遅延を有するリンクを備えたモデムリンク、無線セルラリンク等の低速通信リンクを使用するよう強制される。
【０００３】
上記低速通信リンクを用いて局所および遠隔システム間の通信を達成することにより、重大な問題がいくつか生じる。例えば、低速通信リンクは一般に、リンクを介して送信されるデータの破壊を生じる可能性のある電磁波雑音干渉の影響をかなり受け易い。さらに、低速通信リンクは、そのリンクを介して送信されるデータの単位あたりかなりのコストを要する衛星データキャリヤ帯域幅における電話回線、セルラチャネルまたはチャネル割付等の購入サービスに関連する場合が多い。このように、リンクの時相および周波数範囲におけるデータとの低速通信リンクを「パック」する通信技術はかなり望ましいものと言える。なぜなら、この技術によって、データスループットが増大し、リンクを介して送信されるデータの単位毎のコストが最小限になるからである。
【０００４】
アプリケーションの多くは、データ完全性および送信されるデータの単位あたりのコストの許容レベルが、片方向通信リンク内の従来のデータ符号化およびチャネル変調技術を用いて達成できる。例えば、一般にオーディオおよびビデオデータが、順方向誤り修正および重畳符号化またはそのいずれかの形式を用いて伝送する前に符号化され、スペクトラム拡散変調技術を用いて片方向通信リンクを介して効果的に伝送することも可能である。その後、受信局が伝送されたデータを復調し且つ復号し、許容完全性レベルを有するオーディオ信号とビデオ信号とを生成することも可能である。受信局は、送信局と通信しないため、激しく破壊された、または失われたデータは受信局によって回復されず、ビデオ信号およびオーディオ信号内のスプリアスエラーがユーザに提供される場合もある。これらのスプリアスエラーは望ましくないが、ユーザが容易には知覚しないため、システム全体の性能にはあまり衝撃を与えない。このように、オーディオデータとビデオデータとを送信するための従来の通信プロトコルは、システムの定性性能に悪影響を与えることなく、一般にフルハンドシェーク通信プロトコルを使用する両方向通信技術に通常関連する通信オーバヘッドを解消できる。
【０００５】
片方向通信リンクを介してデータを伝送する上記アプローチは、オーディオおよびビデオ情報を再生するための許容レベルのデータ完全性を提供するが、これらのアプローチは、他の形態のアプリケーションを使用するのに適するレベルの完全性を提供しない。例えば、プロセス制御システムに関連するデータ、例えば警報条件に関連するデータは、極めてクリティカルな性質であってもよい。なぜならば、紛失または破壊された警報データによって、作業員が損傷を受けたり、材料、プラント機器等が損なわれる可能性があるからである。さらに、片方向通信技術は一般に、プロセス制御システムと共に使用するのには適さない。その理由は、遠隔受信局が送信局によって送信されたデータを実際に受信して処理していることを局所送信局が認識することがかなり望ましいためである（また必要である場合が多い）。
【０００６】
従来、低速データ通信リンクは両方向（すなわち全二重）通信技術を使用しており、この両方向通信技術は、送信された各メッセージ（一般に複数のデータバイトを含む）が、次のメッセージが送信される前に受信局によって応答されるのを必要とするフルハンドシェーク通信プロトコルを提供する。このような従来のフルハンドシェーク通信プロトコルは、例えばプロセス制御システムにおける許容レベルのデータ完全性を提供し、遠隔受信局が送信されたデータを受信し、処理しているかどうかを局所送信局が確認できるが、これらのプロトコルによってデータスループットが低減し、プロセス制御システム内の警報情報等のかなり大きなクリティカルデータが伝送されている場合にかなり不利になる。
【０００７】
従来のフルハンドシェーク通信プロトコルを衛星通信リンクと共に使用するのは、特に問題がある。なぜならば、送信局が送信された各メッセージの肯定応答を待つ間に通信リンクにかなりのアイドル時間を生じることになるように、これらのリンクの往復チャネル送信時間遅延が数百ミリ秒であってもよいからである。さらに、大量の情報の送信は（例えば、ユーザが操作する局所ワークステーションから遠隔に位置するワークステーションまで）、情報を要求するユーザにとってはかなり認識できるほど、または非実用的に低速となる可能性がある。いずれの場合にも、衛星通信リンクを非効率的に使用することによって、伝送されるデータの単位あたりのコストが許容できないほど高くなる。
【０００８】
フルハンドシェーク低レベル通信プロトコルを利用して、低速通信リンクを介する確実な通信を達成することに加えて、従来のプロセス制御システムの多くは、アプリケーションレベルのフルハンドシェーク通信方式を使用するため、各アプリケーションメッセージは、低速通信リンクを介して次のアプリケーションメッセージが伝送される前に応答される。例えば、従来のプロセス制御システムは一般に、警報の受信に応答する警報加入者に警報および警報メッセージが送信される警報サービスを備える。このように、フルハンドシェーク通信プロトコルを用いて低速通信リンクを介して警報メッセージが送信される場合、警報は、受信される特定の警報メッセージの各々に対するアプリケーションレベルの肯定応答を送信する。その結果、低速通信リンクを介して送信される警報メッセージは、実際には２回応答される（すなわち、低レベルフルハンドシェーク通信プロトコルで１回、アプリケーションレベルで１回）。アプリケーションレベルでの警報メッセージに対するこの冗長な肯定応答は、低速通信リンクを介する警報通信の時間的効率をかなり低減できる。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明の課題は、低速（すなわち低帯域幅および遅延時間またはそのいずれか）通信リンク、例えば、衛星リンク、セルラリンク、広域ネットワーク等を介して効率的にデータ送信が可能な通信技術を提供することである。
【課題を解決するための手段】
【００１０】
本発明は、低速（すなわち低帯域幅および遅延時間またはそのいずれか）通信リンク、例えば、衛星リンク、セルラリンク、広域ネットワーク等を介して効率的にデータ送信が可能な通信技術を提供する。一般に、通信技術は、メッセージバンドルの据え置き肯定応答を用いて通信リンクのアイドル時間を最小限にし、いずれかのメッセージの肯定応答を受信する前に複数メッセージで通信リンクを時間的にパックする。すなわち、通信技術のメッセージ送信部がメッセージバンドル内でのすべてのメッセージに対して明確な肯定応答を必要とするわけではなく、メッセージバンドル内の通信リンク上でメッセージを送信するが、その代わりに、あるメッセージに対する肯定応答がそのメッセージ以前に送信されたメッセージに暗に応答することを理解した上で、バンドル内のいくつかのメッセージのみに対して応答することをリクエストする。通信技術の肯定応答処理部は、送信されたメッセージバンドルに対応する通信リンクの他方の端部から受信した肯定応答を処理し、各メッセージに関連するタイムアウト期間の最後までメッセージが応答されないままのトラックを維持する。さらに、この通信技術は、冗長メッセージを統合し、リンクを介して受信システムに送信されるメッセージの総数を最小限にする。
【００１１】
一実施の形態では、送信システムは、送信されるメッセージを保留メッセージ待ち行列に記憶し、動的ウィンドウを保留メッセージ待ち行列に適用し、低速通信リンクを介して送信されるメッセージバンドルを規定する。送信局は、バンドル内の少なくとも１個のメッセージ（例えば、送信された最後のメッセージ）に対する肯定応答をリクエストするが、バンドル内のメッセージ毎に肯定応答を要求するわけではない。送信されたメッセージは、その送信されたメッセージが応答されるまで、または各々のメッセージに関連するタイムアウト期間が経過するまで、応答していないメッセージとして再送待ち行列に一時的に記憶される。送信局は、リクエストされた肯定応答に応じて、時宜を得た肯定応答を受信すると、その肯定応答に関連するすべての未処理メッセージを再送待ち行列から除去する。各肯定応答は一般に、複数個のメッセージに応答するように動作する。一方、時宜を得た肯定応答が受信されない場合、送信局は、タイムアウトしたすべてのメッセージを再送する。その結果、上記通信技術は、メッセージバンドル（またはバンドル部分）に対する肯定応答をリクエストし、メッセージバンドルの肯定応答が、リンク上で追加のメッセージを送信しながらしばらくの間据え置くことにより、従来の通信技術に関連する通信リンクアイドル時間をかなり短縮することができる。
【００１２】
本発明の第１の実施態様の方法は、往復送信時間遅延を有する通信リンクを介して複数個のメッセージを送信することが可能である。この方法は、通信リンクを介して送信されるメッセージを記憶するための第１の待ち行列と、通信リンクに既に送信された応答していないメッセージを記憶するための第２の待ち行列とを確立する。この方法は、第１の待ち行列内の位置に関連する下端部と、その下端部の位置に関連する上端部とを有するウィンドウと、第２の待ち行列に含まれる多数の未処理メッセージとを利用する。この方法は、第１の待ち行列にウィンドウを適用し、通信リンクを介して送信される１個以上のメッセージを含むメッセージバンドルを規定し、このメッセージバンドルに関連する１個以上のメッセージを第１の待ち行列から除去する。さらに、この方法は、メッセージバンドル内の少なくとも２個のメッセージが往復送信遅延よりも短い時間で送信されるように、メッセージバンドルに関連する１個以上のメッセージを通信チャネルを介して送信し、送信された１個以上のメッセージを第２の待ち行列に付加し、メッセージバンドル内のメッセージが送信された後、送信された１個以上のメッセージのうちの少なくともいくつかに応答する。この方法は、送信されたメッセージを第２の待ち行列から除去するステップと、タイムアウトしたメッセージを再送するステップとをさらに備えてもよい。
【００１３】
本発明の他の実施態様では、通信リンクを介して複数個のメッセージを送信するシステムは、通信リンクを介して送信されるメッセージを記憶する第１の待ち行列と通信リンク内に既に送信された応答していないメッセージを記憶する第２の待ち行列とを有する第１のデータサーバを備える。第１のデータサーバは、第２の待ち行列に記憶されたメッセージの数に基づいて、第１の待ち行列に記憶されたメッセージのグループを通信リンク内に送信する第１のルーチンと、送信されたメッセージのグループを第２の待ち行列に付加する第２のルーチンと、送信されたメッセージのグループに関連する肯定応答を処理して、応答されたメッセージを第２の待ち行列から除去する第３のルーチンとをさらに備えてもよい。
【００１４】
このシステムは、通信リンクを介して第１のデータサーバに通信結合された第２のデータサーバをさらに備えてもよい。第２のデータサーバは、送信されたメッセージのグループを通信リンクを介して受信し、受信された送信メッセージのグループのうちの１個以上に対する肯定応答を通信リンクを介して第１のデータサーバに送信する第４のルーチンを備えてもよい。
【００１５】
本発明のさらに他の実施態様では、通信リンクを介して第２の部分に通信結合された第１の部分を有するプロセス制御システムにおいてアプリケーション情報を通信する方法は、プロセス制御システムの第１の部分内でアプリケーションクライアントプロセスを確立するステップと、プロセス制御システムの第２の部分内でアプリケーションサーバプロセスを確立するステップとを備える。この方法は、第１のアプリケーションメッセージをアプリケーションサーバプロセスからアプリケーションクライアントプロセスまで送信し、クライアントプロセスに定期的に送信されるメッセージを規定してもよい。この方法はさらに、定期的アプリケーション更新メッセージをクライアントプロセスに送信し、第２のアプリケーションメッセージをアプリケーションクライアントプロセスからアプリケーションサーバプロセスまで送信し、それによって、アプリケーションサーバプロセスがアプリケーションクライアントプロセスにメッセージを送信することも可能である。一実施の形態では、アプリケーションクライアントプロセスおよびアプリケーションサーバプロセスが、警報情報の処理に関連してもよく、また警報情報のいくつかが、警報情報の送信の前に優先されてもよい。
【発明の効果】
【００１６】
以上より本発明にによれば、低速（すなわち低帯域幅および遅延時間またはそのいずれか）通信リンク、例えば、衛星リンク、セルラリンク、広域ネットワーク等を介して効率的にデータ送信が可能な通信技術を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】据え置き肯定応答通信技術を用いて低速通信リンクを介して遠隔システムと通信する局所システムを示す概略ブロック図である。
【図２】図１の据え置き肯定応答通信技術内で使用可能な保留メッセージ待ち行列および再送待ち行列を示す模式ブロック図である。
【図３】図２の保留メッセージ待ち行列と再送待ち行列との間のメッセージの移動を示す模式フロー図である。
【図４】遠隔システムにメッセージバンドルが送信されて、図３のシステム内のデータ通信を達成する方法を示す模式フロー図である。
【図５】図１の局所システムと遠隔システムとの間で伝送されるメッセージの可能なデータフォーマットの１つを示す模式ブロック図である。
【図６】図１の据え置き肯定応答通信技術を用いて低速通信リンクを介して遠隔部と通信する局所部を有するプロセス制御システムを示す概略ブロック図である。
【図７】データサーバが図６の低速通信リンクを介して送信されるメッセージを統合するような形態をより詳細に示す概略ブロック図である。
【図８】図６のプロセス制御システムの局所部と遠隔部との間の透過通信を可能にするソフトウェアモジュールを示す概略ブロック図である。
【図９】図１および図６の据え置き肯定応答通信技術を用いるクライアント／サーバ警報管理アプリケーションを示す概略ブロック図である。
【発明を実施するための形態】
【００１８】
送信時間遅延を有する衛星通信リンクに関連して、低速通信リンクを介して情報を伝送する技術について詳細に述べるが、ここで述べる通信技術は、様々な通信システム内の低レベル通信プロトコルとして使用するのが都合よく、これらの通信システムは、例えばモデムを使用する低帯域幅システムと、無線セルラと、インターネット等の広域ネットワークと、プロセス制御報告、警報等の高レベルアプリケーションとを備え、これらはその通信システム上で階層化されていることに注意されたい。さらに、ここでの通信技術は、プロセス制御システムで使用されているものとして述べるが、低速通信リンク上でデータを伝送するいずれの通信システムにおいても都合よく使用できる。
【００１９】
据え置き肯定応答通信技術について、より詳細に述べる前に、低速通信リンクを介してメッセージを伝送する際に使用する従来の全二重通信技術は、一般に送信された各メッセージに対する肯定応答を必要とし、先に送信されたメッセージに対する肯定応答が受信されるまで次のメッセージを送信しないことを認識することが重要である。換言すれば、従来のこれらの通信技術によって、唯一の未処理の、または応答されていないメッセージが所与の時間存在可能となる。低速通信リンクを介する往復伝送時間遅延が一般に、１つのメッセージを伝送するのに必要な時間よりもかなり長いため、従来の通信技術は、低速通信リンク上に実質的なアイドル時間を生じることになり、それによって、データスループットが低減し、これらのリンクを介して送信されたデータの単位あたりのコストが高くなる。
【００２０】
さらに、上記従来の通信技術は一般に、冗長メッセージを認識せず、また統合しない。その結果、特に、遠隔に位置するシステム上の複数アプリケーションおよびワークステーションまたはそのいずれかによって同一メッセージが定期的にリクエストされている場合、通信リンクの有効スループットがさらに低減され、伝送されたデータの単位あたりのコストがさらに増大する。
【００２１】
ここで述べる通信技術は、低速通信リンクを介する効率的なデータ伝送を可能にする。一般に、通信技術は、メッセージバンドルの据え置き肯定応答を用いることによって通信リンクのアイドル時間を最小限にし、通信リンクを時間的にパックする。すなわち、通信技術のメッセージ伝送部は、メッセージバンドル内のすべてのメッセージに対する明確な肯定応答を必要とするわけではなく、メッセージバンドル内の通信リンク上でメッセージを送信するが、その代わりに、１つのメッセージに対する肯定応答が、そのメッセージ以前に送信されたメッセージに暗に応答することを理解した上で、バンドル内のいくつかのメッセージのみに対して肯定応答をリクエストする。通信技術の肯定応答処理部は、伝送されたメッセージバンドルに対応する通信リンクの他の端部から受信した肯定応答を処理し、各メッセージに関連するタイムアウト期間の最後までメッセージが応答されないままであるトラックを維持する。さらに、通信技術は、冗長メッセージを統合し、リンクを介して受信システムに送信されるメッセージの総数を最小限にする。
【００２２】
図１は、据え置き肯定応答通信技術を用いて、低速通信リンク１６を介して遠隔システム１４と通信する局所システム１２を示す概略ブロック図であり、以下でより詳細に述べる。例えば、低速通信リンク１６は、衛星リレー１８と、アップリンク／ダウンリンク通信チャネル２０および２２とを用いて、システム１２および１４間の全二重通信を確立する無線リンクである。
【００２３】
局所システム１２は、局所ユーザインタフェース２４を備えており、この局所ユーザインタフェース２４は、ワークステーションまたは他のいかなるコンピュータもしくはプロセッサであってもよく、通信ネットワークにおいてシステムレベルデータバス２８を介して局所データサーバ２６に接続されている。システムレベルデータバス２８は、イーサネット（登録商標）データバスまたはデータ伝送に好適な他のいずれかのデータバスであってもよい。局所サーバ２６は、アップリンク／ダウンリンク通信チャネル２０上での通信を可能にするアンテナ３０を備える。同様に、遠隔システム１４は、遠隔システムレベルデータバス３６を介して遠隔データサーバ３４に接続された遠隔ユーザインタフェース３２を備える。遠隔サーバ３４は、アップリンク／ダウンリンク通信チャネル２２上での通信を可能にするアンテナ３８を備える。局所サーバ２６および遠隔サーバ３４は、ここで述べる通信技術を実施するためのそれぞれのソフトウェアルーチン４０および４２（それぞれのコンピュータ読み出し可能メモリ４３および４４に記憶可能である）を備える。
【００２４】
般に周知のように、衛星１８の起動距離のため、アップリンク／ダウンリンク通信チャネル２０および２２を介する往復伝送時間遅延がおよそ数百ミリ秒であってもよい。従来のフルハンドシェーク通信技術では、送信された各メッセージに対して、次のメッセージが送信される前に応答しなければならないため、往復伝送遅延の間、通信リンクがアイドル状態となる。数百ミリ秒のアイドル時間が一般に、メッセージ時間（数十ミリ秒であってもよい）よりも実質上長いため、上記従来の通信技術の時間的効率およびデータスループットがかなり低く、リンク上で伝送されるデータの単位あたりのコストが比較的高い。しかしながら、ここで述べる通信技術では、一般に複数個のメッセージを備えるバンドル内でメッセージに応答し、メッセージバンドルに対する肯定応答は、低速リンク１６の往復伝送時間遅延よりも長い時間、据え置くことも可能である。このように、本発明の通信技術は、アップリンク／ダウンリンク通信チャネル２０および２２にメッセージを一時的にパックし、それによって、低速通信リンク１６のアイドル時間を短縮するか、または事実上無くすことが可能である。
【００２５】
さらに、ここで述べる通信技術は、冗長メッセージの伝送を認識し且つ排除することによって、低速通信リンク１６の利用をさらに改善する。例えば、サーバ２６および３４は、メッセージマルチプレクサ／デマルチプレクサとしての機能を果たすことができるため、システム１２または１４におけるメッセージに対する複数のリクエストにも拘わらず、実際にはメッセージのうちの１つのコピーのみが低速通信リンク１６を介して伝送される。
【００２６】
図２は、図１の据え置き肯定応答通信ルーチン４０および４２によって使用可能な保留メッセージ待ち行列５０と再送待ち行列５２とを示すブロック図である。局所ユーザインタフェース２４（図１）または他のいかなるプロセス制御装置も、１つ以上のアプリケーション５４ないし５８を実施することが可能であり、このうちの１つは、例えば、警報管理アプリケーションであってもよく、これらはシステムレベルデータバス２８上で遠隔システム１４への搬送のための局所サーバ２６にメッセージを非同期に送信するものである。局所サーバ２６は、アプリケーション５４ないし５８から保留メッセージ待ち行列５０にメッセージが受信されると、それを追加する。各々のメッセージは、待ち行列５０において受信された順序を識別するシーケンス番号と共に保留メッセージ待ち行列５０に記憶される。例えば、局所サーバ２６によって新しいメッセージが送信される度に１６ビットカウンタが増分され、カウンタ値は、受信されたメッセージに対して、そのシーケンス番号として関連づけることも可能である。図２は、シーケンス番号１００ないし１１４を有するメッセージを備えた保留メッセージ待ち行列５０の一部を示すが、局所サーバ２６によってメッセージが送信される順序を識別する他の方法またはメッセージをシーケンス番号で識別する他の方法を、発明の範囲を逸脱することなく使用することが可能であることを認識するべきである。
【００２７】
局所サーバ２６内のソフトウェアルーチン４０は、シーケンス番号に従って保留メッセージ待ち行列５０からメッセージを除去し、そのメッセージを送信器５９に送り、送信器５９が、既知のまたは望ましいプロトコルを用いてアップリンク／ダウンリンク通信チャネル２０を介してメッセージを送信するメッセージ送信ルーチンを備える。この送信ルーチンは、メッセージ（タイムスタンプを含む）を低速通信リンク１６に送信した直後、再送待ち行列５２に各メッセージをタイムスタンプと共に追加する。再送待ち行列５２における送信されたメッセージの各々に関連するタイムスタンプは、メッセージが低速通信リンク１６に最初に送信された時間を表す。以下でより詳細に述べるように、送信されたメッセージは、遠隔システム１４によって応答されるまで、または局所サーバ２６がこれらのメッセージに対して遠隔サーバ３４から時宜を得た肯定応答を受信しない結果、タイムアウト期間が満了するまで、送信されたメッセージが、未処理の、または応答されていないメッセージとして再送待ち行列５２に記憶される。
【００２８】
再送待ち行列５２は、所定最大数の未処理メッセージを保持する。一般に、再送待ち行列５２は、低速通信リンク１６を一時的にパックするのに十分な多数の未処理メッセージを保持する。例えば、各メッセージが３０ミリ秒（ｍｓ）の送信時間を表し、往復送信時間遅延が約３００ｍｓである場合、再送待ち行列５２は、１０個以上の未処理メッセージを保持するような形態であってもよい。上記例の再送待ち行列５２は、より多くの未処理メッセージを保持するような形態が可能であるが、メモリ可用性およびメッセージタイムアウト期間等を様々に考慮することによって、実際の上限を規定することができる。
【００２９】
局所サーバ２６は、未処理メッセージ６６の最大許容数と現在の未処理メッセージ６８の数とに基づいた下位シーケンス番号６２と上位シーケンス番号６４とを有する動的ウィンドウ６０を用いて低速通信リンク１６を介して送信されるメッセージバンドルを規定する。一般に、ウィンドウの大きさ（すなわちバンドル内のメッセージの数）は現在の未処理メッセージ６８の数と逆比例の関係にあるため、保留メッセージ待ち行列５０から取られるメッセージバンドルは、再送待ち行列５２に追加可能な未処理メッセージの数に等しい数のメッセージを含む。例えば、未処理メッセージ６６の最大数が１０であり、現在の未処理メッセージ６８の数がゼロであり、次に送信されるメッセージ（すなわち下位シーケンス番号６２に対応するメッセージ）が１０１のシーケンス番号を有する場合、上位シーケンス番号は１１０であり、それによってシーケンス番号１０１ないし１１０に対応する１０個のメッセージを含むメッセージバンドルを作成する。
【００３０】
このように、局所サーバ２６（図１）は、保留メッセージ待ち行列５０（図２）において送信されるメッセージを記憶し、保留メッセージ待ち行列５０に動的ウィンドウ６０を適用し、低速通信リンク１６を介して送信されるメッセージバンドルを規定する。局所サーバ２６は、バンドル内で少なくとも１個のメッセージ（例えば、最後に送信されたメッセージ）に対する肯定応答をリクエストするが、メッセージバンドルが１個のメッセージを含むのでない場合、バンドル内のメッセージ毎に肯定応答を要求するわけではない。送信されたメッセージは、応答されるまで、またはメッセージに関連するタイムアウト期間が経過するまで、再送待ち行列５２内の未処理メッセージとして一時的に記憶される。局所サーバ２６が、リクエストされた肯定応答に応じて、時宜を得た肯定応答を受信すると、局所サーバ２６は、その肯定応答に関連するすべての未処理メッセージを再送待ち行列５２から除去する。以下でより詳細に述べるように、各肯定応答が、一般に複数個のメッセージに応答するように動作することが重要である。一方、いずれかのメッセージまたはメッセージのバンドルに関連するタイムアウト期間の後、時宜を得た肯定応答が受信されない場合、局所サーバ２６は、タイムアウトしたすべてのメッセージを再送する。このように、ここで述べる通信技術では、複数個のメッセージを有するメッセージバンドルに対する肯定応答をリクエストし、後に（すなわち、他のメッセージが通信リンク内に送信されるまで）未処理メッセージに対する肯定応答を据え置くことにより、上記従来技術に関連する通信リンクアイドル時間をかなり短縮することができる。
【００３１】
図３は、図２の保留メッセージ待ち行列５０と再送待ち行列５２との間でのメッセージの移動をより詳細に示すフロー図である。メッセージのフローは、主として３つのプロセスまたは「スレッド」によって制御される。送信処理１００は、実行可能な１個以上のアプリケーション５４ないし５８、例えば局所システム１２のユーザインタフェース２４から受信されたメッセージを保留メッセージ待ち行列５０に付加する。送信プロセス１００は、上記シーケンス番号と共に保留メッセージ待ち行列５０にメッセージを付加する。局所システム１２内のメモリの可用性は、所与の時間、保留メッセージ待ち行列５０に含まれるメッセージの数に実際に制限を加えることも可能である。これらの制限に適応するために、送信プロセス１００は、メモリ制限に到達するか、またはほぼ到達すると、保留メッセージ待ち行列５０へのメッセージの付加を停止することも可能である。送信プロセス１００はさらに、異常に多い数のメッセージを生成しているアプリケーションの一致を、ユーザインタフェース２４を介してユーザに指示し、それによって訂正動作を行うことも可能である。
【００３２】
タイマプロセス１０２は、動的ウィンドウ６０（図２）によって規定されるメッセージバンドルを保留メッセージ待ち行列５０から定期的に除去し、タイムスタンプと共にバンドル内のメッセージを低速通信リンク１６に送信する（すなわち、送信されるが、必ずしも遠隔サーバ３４によって受信されるわけではない）。メッセージバンドル（タイムスタンプを含む）内のメッセージの各々は、再送待ち行列５２に付加される。再送待ち行列５２は、送信されたメッセージのこれらのコピーを、応答されるかまたはタイムアウトするまで未処理のメッセージとして保持する。
【００３３】
タイマプロセス１０２は、各メッセージのタイムスタンプ（すなわちメッセージがリンクに送信される時間）および所定のタイムアウト遅延の合計と現時刻値とを比較することによって、タイムアウトしたメッセージに対して、再送待ち行列５２を定期的に走査する。例えば、低速通信リンク１６を介する往復送信時間遅延が約３００ｍｓである場合、所定のタイムアウト遅延は、約６００ｍｓとなるように選択可能である。６００ｍｓのタイムアウト遅延は、サーバ２６および３４ならびに衛星１８の範囲内で行われる処理等の追加時間と全往復送信時間遅延との合計を考慮する。メッセージ時間スタンプ値と所定のタイムアウト遅延との合計が現時刻よりも短い場合にタイマプロセス１０２がメッセージを識別すると、タイマプロセス１０２は、再送待ち行列５２からメッセージを除去し、低速通信リンク１６を介してメッセージを再送し、新たなタイムスタンプ値を有する再送待ち行列５２にメッセージを再付加する。アプリケーションにおいては、訂正動作を行ってリンク１６上の不必要な通信を防止するように所与のメッセージを考慮した再送回数を制限し、ユーザにその問題を通知するのが望ましい場合がある。
【００３４】
システム１２および１４（図１）を初期化する際、低速通信リンク１６を介する往復送信時間遅延の実測定値を用いて好適なタイムアウト遅延期間を自動的に確立するために、タイマプロセス１０２を使用することも可能である。例えば、局所サーバ２６は、同期リクエストをリンク１６を介して遠隔サーバ３４に送信することも可能である。これに応じて、遠隔サーバ３４は、同期回答をリンク１６を介して局所サーバ２６に送信する。この同期回答を受信すると、局所サーバ２６は、同期リクエストが送信される時間と、同期回答が受信された時間との時間差を測定し、最初の測定された往復送信時間遅延を確立することが可能である。さらに、局所サーバ２６が、送信されたすべてのメッセージと受信されたすべての肯定応答とにタイムスタンプを行うため、肯定応答がリクエストされた（すなわち、局所サーバ２６によってリンク１６内に送信された）時間と、それらのリクエストに対応する肯定応答が局所サーバ２６によって受信された時間との差を測定することによって、最初に測定された往復送信遅延が前進的に更新可能となる。
【００３５】
受信プロセス１０４は、タイマプロセス１０２によって行われる肯定応答リクエストおよび順序が乱れて（例えばシーケンス番号を無視して）受信されたメッセージに応答して遠隔サーバ３４によって送信された明確な肯定応答を受信する。受信プロセス１０４は、受信した明確な肯定応答を用いて、送信待ち行列５２からメッセージを除去する。受信プロセス１０４は、メッセージの明確な肯定応答を用いて、明らかに応答されたメッセージのシーケンス番号に優先するシーケンス番号を有するすべてのメッセージに暗に応答することも可能である。換言すれば、受信プロセス１０４は、明確な肯定応答を用いて、再送待ち行列５２から暗に応答されたメッセージを除去し、暗に応答されたメッセージに先行するすべてのメッセージを再送待ち行列５２から除去することも可能である。例えば、局所サーバ２６が、１０個のメッセージを含むメッセージバンドルの範囲内で第５および第１０のメッセージに対する肯定応答をリクエストする場合、第５のメッセージに対する局所サーバ２６内の肯定応答を受信することによって、受信プロセス１０４は、第１から第５までのメッセージを再送待ち行列５２から除去する。同様に、第１０のメッセージの肯定応答が受信されると、受信プロセス１０４は、第６から第１０のメッセージを再送待ち行列５２から除去する。しかしながら、遠隔サーバ３４がメッセージを受信し損ねた場合（すなわち、シーケンス番号がスキップされるか、またはなくした場合）、遠隔サーバ３４が、肯定応答（局所サーバ２６によって肯定応答がリクエストされたかどうか）を、順に受信された最後のメッセージに対する局所サーバ２６に自動的に送信する。さらに、遠隔サーバ３４は、先行するすべてのスキップまたは紛失したメッセージが受信されるまで、順序が乱れたメッセージ（肯定応答がリクエストされている）の受信に応じて肯定応答を送信しない。受信プロセス１０４が、上記のように、明確にしかも暗に応答されたメッセージを再送待ち行列５２から除去するのみなので、遠隔サーバ３４によって受信されないメッセージは、再送待ち行列５２に残る。換言すれば、リクエストされなかった肯定応答を受信すると、受信プロセス１０４は、順に受信された再送待ち行列５２からそれらのメッセージのみを除去し、紛失しているメッセージを局所サーバ２６の再送待ち行列５２に残す。これらの紛失メッセージは、再送待ち行列５２に残存し、タイムアウトすると、遠隔サーバ３４に再送される。遠隔サーバ３４は、再送されたメッセージのシーケンス番号を用いて、再送されたメッセージを、事前に受信されたメッセージと共に順に適当に挿入することが可能である。
【００３６】
上記の例（すなわち、第５および第１０のメッセージに対する肯定応答リクエストと共に１０個のメッセージを含むメッセージバンドル）を用いると、遠隔サーバ３４が第１ないし第６のメッセージおよび第８ないし第１０のメッセージを受信した場合（すなわち、第７のメッセージを受信し損ねた場合）、遠隔サーバ３４は、第５および第７のメッセージに対する肯定応答を送信する。局所サーバ２６が第５のメッセージに対する肯定応答を受信すると、受信プロセス１０４は、第１ないし第５のメッセージを再送待ち行列５２から除去する。同様に、局所サーバ２６が第７のメッセージに対する肯定応答を受信すると、受信プロセス１０４が、第６および第７のメッセージを再送待ち行列５２から除去し、第８ないし第１０のメッセージが再送待ち行列５２に残存する。続いて、第８ないし第１０のメッセージに対するタイムアウト期間が経過すると、第８ないし第１０のメッセージが遠隔サーバ３４に再送されることになる。
【００３７】
低速通信リンク１６を介する送信時間遅延および紛失メッセージ（すなわち遠隔サーバ３４によって受信されていないメッセージ）またはそのいずれかのため、局所サーバ２６は、事前に送信されたメッセージバンドルに関連する肯定応答のいずれか、またはそのすべてを受信する前に、後のメッセージバンドルの送信を開始または完了することが可能である。上記例に続いて、第１１ないし第１５のメッセージを含む後のメッセージバンドルが通信リンク１６に送信される場合、再送待ち行列５２は、先行のメッセージバンドルに関連する第８ないし第１０のメッセージおよび次のメッセージバンドルに関連する第１１ないし第１５のメッセージを含む。このように、遠隔サーバ３４は、再送された第８ないし第１０のメッセージを受信する前に、第１１ないし第１５のメッセージを受信することも可能である。その場合、遠隔サーバ３４は、第８ないし第１０のメッセージが遠隔サーバ３４によって受信されるまで第１１ないし第１５のメッセージに対する肯定応答を送信しなくてもよく、これによって局所サーバ２６は、明確な肯定応答が受信されるメッセージを送信待ち行列５２から除去し、明確に応答されたメッセージに先行するシーケンス番号を有するすべてのメッセージを除去するというルールに従うことになる。
【００３８】
図４は、メッセージバンドルが遠隔システム１４（図１）に送信されて図３のデータフローの一部を達成する方法１１０を示すフロー図である。この方法１１０は、例えば、データサーバ２６におけるルーチン４０によって実現することも可能である。特に、図４は、タイマプロセス１０２が保留メッセージ待ち行列５０からメッセージを除去し、低速通信リンク１６を介してメッセージを送信し、送信された／未処理のメッセージを再送待ち行列５２に付加する方法をより詳細に示す。ブロック１２０は、ウィンドウ６０の現在の下位シーケンス番号６２に未処理メッセージ６６の最大許容数と未処理メッセージ６８の現在数との差を足して１を引いた結果を用いて、ウィンドウ６０の上位シーケンス番号６４を更新する。ブロック１２２は、動的ウィンドウ６０が保留メッセージ待ち行列５０における保留メッセージを含むかどうかを判断する。保留メッセージが存在しない場合、方法１１０が実施され、メッセージバンドルを送信し、これを繰り返す。一方、動的ウィンドウ６０内に保留メッセージが存在する場合、ブロック１２４は、現在の下位シーケンス番号６２に関連するメッセージを保留メッセージ待ち行列５０から除去する。ブロック１２６は、除去されたメッセージが保留待ち行列５０における最後のメッセージであるかどうかを判断し、ブロック１２８は、除去されたメッセージが動的ウィンドウ６０内の再度のメッセ−ジであるかどうかを判断し、ブロック１３０は、除去されたメッセージが、例えば未処理メッセージ６６の最大許容数の半分に等しい数のメッセージを有するサブバンドルの最後のメッセージであるかどうかを判断する。ブロック１２６ないし１３０で行われる検査のいずれかが真である場合、ブロック１３２は、除去されたメッセージ内でデータフィールドを設定し、そのメッセージに対する肯定応答をリクエストするか、または肯定応答リクエストを生成する。一方、ブロック１２６ないし１３０で行われる検査のいずれも真でない場合、除去されたメッセージに対して肯定応答がリクエストされない。ブロック１３４は、その後、除去されたメッセージにタイムスタンプを付加し、ブロック１３６は、通信リンク１６にメッセージ（タイムスタンプを含む）を送信する。ブロック１３８は、送信されたメッセージを再送待ち行列５２に付加し、ブロック１４０は、現在の下位シーケンス番号６２を増分し、ブロック１２２に制御を戻すことによって、方法１１０が繰り返される。
【００３９】
上記ブロック１２６ないし１３０では、局所サーバ２６がメッセージの肯定応答をリクエスト可能な条件の例をいくつか述べているが、追加の異なる、またはそのいずれかの条件の組を用いることも可能である。例えば、ブロック１３０は、未処理メッセージ６６の最大許容数の３分の１、４分の１または８分の１等に等しいメッセージの数を有するメッセージのサブバンドル等、メッセージバンドル内のいずれかの組のメッセージに対する肯定応答をリクエストすることが可能である。いずれの場合にも、局所サーバ２６がメッセージの肯定応答をリクエストする条件が選択され、それによって、メッセージよりも少ない肯定応答が低速通信リンク１６を介して送信され、一般に各肯定応答を用いて、１個のメッセージに明確に応答し、明確に応答されたメッセージに先行するシーケンス番号を有する１個以上のメッセージに暗に応答することが可能である。
【００４０】
一般に、上記ブロック１２２ないし１４０の繰り返しによって、メッセージが順次送信され、低速通信リンク１６を介してメッセージバンドルを作成する。メッセージバンドル内のメッセージの数は、現在未処理のメッセージ６８の数に従って変化し、それによって、所定時間であっても、現在未処理のメッセージ６８の数は、未処理メッセージ６６の所定最大許容数を超えない。バンドル内の１個以上のメッセージは、遠隔サーバ３４によって用いられて局所サーバ２６に肯定応答を送信する肯定応答に対するリクエストを含む。しかしながら、ブロック１２２ないし１４０の繰り返しは、メッセージバンドル内のすべてのメッセージの明確な肯定応答を必要としているわけではない。逆に、上記のように、局所サーバ２６によって受信された各肯定応答は、肯定応答に対するリクエストを含んだメッセージに明確に応答し、明確に応答されたメッセージに先行するシーケンス番号を有するメッセージに暗に応答する。
【００４１】
図５は、図１の局所システム１２と遠隔システム１４との間で送信されるメッセージに対して１個の可能なデータフォーマット２００を示すブロック図である。データフォーマットは、インターネットプロトコル（IP）部２０２と、メッセージヘッダ部２０４と、メッセージデータ部２０６とを備える。IP部２０２は、ネットワーク通信技術において周知の標準IPカプセル封じ技術を基本とするのが好ましいが、ＴＣＰ、ＵＤＰ等他のカプセル封じ技術は、発明の範囲を逸脱することなく代用することも可能である。メッセージヘッダ部２０４は、使用される低レベル通信技術を支持するか、またはそれに関連するシーケンス番号フィールド、肯定応答フィールドに対するリクエスト、タイムスタンプ情報フィールド、完全性フラグ、ソースおよび行き先フィールド、一次／二次指示フィールド等、様々なデータフィールドを備えることも可能である。メッセージデータ部２０６は、システム１２および１４（図１）内で実行されるアプリケーション５４ないし５８に関連する様々な情報に関するデータを含むことも可能である。例えば、メッセージデータ部２０６は、警報、プロセスパラメータ、装置情報等の実時間プロセス制御データ、または一般には、ユーザによってリクエストされるか、またはユーザにとって有用ないずれかの情報であってもよい。低速通信リンク１６の効率的な使用をさらに改善するために、データ部２０６は、ＩＰ部２０２とヘッダ部２０４とに関連する固定オーバヘッドを考慮してスループットを最大限にする傾向のある複数の制御装置、装置等に関連する可能性のある多数の情報を含むこともできる。
【００４２】
保留メッセージ待ち行列５０における各メッセージは、同一データバイト数、例えば１５００バイトを含むのが好ましい。各メッセージ内のデータバイト数を選択して一般に低速通信リンク１６に存在する干渉のレベルに対してデータスループットを最適化することも可能である。例えば、長メッセージが短メッセージよりも統計的に破壊され易く、完全なメッセージのみがチャネルを介して再送可能であるため、低速通信リンク１６における比較的高レベルの干渉は、短メッセージを要求する傾向がある。その結果、最適なメッセージの長さは、メッセージ破壊の結果としてのメッセージ再送に関連するスループットの低減と、より多くの短メッセージを有することに関連するスループットの低減とを比較検討することによって、決定することも可能である。また、望ましい場合には、その中のメッセージまたはデータがエラー符号化されて、より信頼性を提供することも可能である。
【００４３】
上記通信技術により、従来の通信技術では可能であった低速通信リンクを介してより効率的にデータを伝送することが可能である。一般に、ここで述べる通信技術は、メッセージバンドルの据え置き肯定応答を用いて低速通信リンクのアイドル時間を最小限にして、通信リンクを時間的にパックする。すなわち、バンドル内のメッセージ毎に肯定応答を必要とすることなく、またメッセージバンドルの送信間の肯定応答を待つことなく、メッセージバンドル内の通信リンク上でメッセージを送信する。通信技術は、バンドルが最初にリンクに送信された後、低速リンクを介する少なくとも１つの往復送信時間遅延であってもよい時間に、送信されたメッセージバンドル内の１個以上のメッセージに対応して肯定応答を処理する。
【００４４】
図６は、局所部２５１を有するプロセス制御システム２５０を示す概略ブロック図である。この局所部２５１は、ここで述べる据え置き肯定応答通信技術を用いて、低速通信リンク１６を介して遠隔に位置する、または遠隔の部分２５２と通信する。局所部２５１はユーザインタフェース２５４を備えており、このユーザインタフェース２５４は、ワークステーションであってもよく、通信ネットワークにおいてシステムレベルデータバス２５８を介してデータサーバ２５６に接続される。システムレベルデータバス２５８は、イーサネット（登録商標）データバスまたはデータ送信に好適ないずれか他のデータバスであってもよい。局所サーバ２５６は、アンテナ２６０に結合され、このアンテナ２６０は、衛星１８のアップリンク／ダウンリンク通信チャネル２０上での通信を可能にする。
【００４５】
第１および第２の制御装置２６２および２６４は、システムレベルデータバス２５８を介して、ユーザインタフェース２５４およびデータサーバ２５６と通信するものとして示されており、当然のことながら、データ記憶装置、追加ユーザインタフェース等（図示せず）の他の装置もまた、システムレベルデータバス２５８を介して接続することも可能である。例えば、第２の制御装置２６４は、分散制御システム（ＤＣＳ）型制御装置であってもよく、システムレベルデータバス２５８を介してオープンまたは固有の通信プロトコルを用いて、または他のいずれかのプロトコルを用いてユーザインタフェース２５４と通信することも可能である。第２の制御装置２６４は、例えば、警報および状態情報をユーザインタフェース２５４に送信することも可能であり、さらに、ユーザインタフェース２５４からシステムレベルデータバス２５８を介してユーザコマンド／リクエストを受信することも可能である。第２の制御装置２６４は、従来の、またはいずれか他の望ましい方法で制御装置１８に接続されたフィールド装置２６６および２６８を制御する際に使用するための制御アルゴリズムをさらに備えることも可能である。第２の制御装置２６４もまた、入出力（Ｉ／Ｏ）装置２７６を介してスマートフィールド装置２７０ないし２７４と通信するものとして示されている。フィールド装置２７０ないし２７４は、通信ネットワークにおいて、非固有プロトコルデータバス２８０を介して接続され、互いに、且つＩ／Ｏ装置２７６と通信し、制御装置２６４と共に、または制御装置２６４から独立して１個以上のプロセス制御ループを実行する。スマートフィールド装置２７０ないし２７４は、例えば、フィールドバス装置であってもよく、この場合、非固有プロトコルデータバス２８０はフィールドバス信号プロトコルを採用する。しかしながら、他の形態の装置およびプロトコル、例えば、ＨＡＲＴ（登録商標）、ＰＲＯＦＩＢＵＳ（登録商標）、ＷＯＲＬＤＦＩＰ（登録商標）、Ｄｅｖｉｃｅ−Ｎｅｔ（登録商標）、ＣＡＮ およびＡＳインタフェースプロトコル等も同様に使用可能である。同様に、遠隔部２５２は、ユーザインタフェース２８２および２８４と、アンテナ２８７に結合されたデータサーバ２８６と、制御装置２８８とを備えており、これらはシステムレベルデータバス２９０を介して通信結合されている。遠隔システム２５２の制御装置２８８は、フィールド装置に、およびＩ／Ｏ装置２９２を介してスマートフィールド装置２９４および２９６またはそのいずれかに必要に応じて接続可能である。
【００４６】
システム２５０の局所部２５１および遠隔部２５２のデータサーバ２５６および２８６は、上記据え置き肯定応答通信技術を用いて、従来の通信技術において可能であった低速通信リンク１６をより効率的に利用する。例えば、ユーザが遠隔部２５２のユーザインタフェース２８４を介して局所部２５１に関連する実時間データなどのデータをリクエストすると、ユーザインタフェース２５４または制御装置２６２および２６４のうちのいずれかが、データサーバ２５６を利用し、ここで述べる据え置き肯定応答通信技術を用いて低速通信リンク１６を介して遠隔に位置するデータサーバ２８６にメッセージバンドルを送信する。低速リンク１６を介して送信されるデータの単位あたりのコストを実質上低減することに加えて、ここで述べる据え置き肯定応答通信技術を利用することによって、従来の通信技術よりもかなり高速で、局所部２５１と遠隔部２５２との間で大量の情報が交換される。また、低速リンク１６を介してメッセージがより高速に搬送可能であるため、インタフェース２５４のユーザは、局所ユーザインタフェース２５４を介する遠隔部２５２との相互作用が、あたかも遠隔部２５２のユーザインタフェース２８４を介して生じているかのように認識するかもしれない。
【００４７】
上記のように、ここで述べる通信技術は、データサーバ２５６および２８６を統合することができるため、メッセージの多数のリクエストに応じて、メッセージの１個のコピーのみが低速通信リンク１６を介して送信される。実際、データサーバ２５６および２８６は、低速通信リンク１６を介してメッセージを送信する前に、それらを多重化することが可能であり、低速通信リンク１６から受信したメッセージを逆多重化することが可能である。例えば、システム２５０の局所部２５１の制御装置２６２および２６４の両方が、遠隔部２５２のスマートフィールド装置２９４および２９６のうちの１つに含まれる定期的リクエスト（すなわち加入）情報を作成するような形態であった場合、データサーバ２５６は、リクエストされた情報の１個のコピーを記憶するのみであり、１対多の関係を用いて、リクエストされた情報のコピーを制御装置２６２および２６４に分散する。局所部２５１のデータサーバ２５６は、リクエストされた情報の１個のコピーを維持し、遠隔部２５２のデータサーバ２８６は、低速リンク１６を介して、情報の１個のコピーを送信するのみである。より一般的には、データサーバ２５６および２８６の両方は、低速通信リンク１６を介して定期的に搬送される情報に対して１対多の関係を確立するような形態であってもよい。このように、データサーバ２５６および２８６は、低速通信リンク１６を一度介して１個の情報を搬送することが可能であり、複数個のユーザインタフェース、制御装置、装置等へ、またそこから情報の多数のコピーを分散／受信することが可能である。
【００４８】
図７は、図６のデータサーバ２５６およい２８６が低速通信リンク１６を介して送信されたメッセージを統合するような形態であってもよい例を、より詳細に述べる概略ブロック図である。図７に示すように、データサーバ２５６および２８６は、それぞれのアップリンク／ダウンリンク通信チャネル２０および２２を介して情報を送受信する遠隔リンク通信ルーチン２９９および３００と、制御装置２６２、２６４および２８８、ならびに局所部２５１および遠隔部２５２に関連する他の装置に関連する情報を含むパラメータリスト３０１および３０２と、それぞれのシステムレベルデータバス２５８および２９０を介して情報を送受信するネットワーク通信ルーチン３０３および３０４とを備える。
【００４９】
一般に、リスト３０１および３０２は、低速通信リンク１６を介して局所部２５１と遠隔部２５２との間で共有または送信されるデータを備え、局所的に位置する制御装置間で共有される情報をさらに備えてもよい。例えば、リスト３０１は、制御装置２６２および２６４によって共有される情報またはデータを備えてもよい。一般に、遠隔リンク通信ルーチン２９９および３００により、低速通信リンク１６を介して、そのそれぞれのリスト３０１および３０２内に含まれる情報をデータサーバ２５６および２８６が交換することが可能であり、例えば、図１ないし図５に関して述べた通信技術を用いて、この通信を行うことも可能である。ネットワーク通信ルーチン３０３および３０４により、それぞれのシステムレベルデータバス２５８および２９０を介して（局所部２５１および遠隔部２５２に関連する）装置を用いて、データサーバ２５６および２８６がリスト３０１および３０２内の情報を交換することができる。
【００５０】
リスト３０１および３０２は、機能ブロック情報と、制御装置２６２、２６４および２８８の制御戦略に関連する他の制御情報とを備えることも可能であり、さらに、例えばユーザインタフェース２５４、２８２および２８４のうちの１個以上を介してユーザによって、またはシステム２５０内の制御装置２６２、２６４および２８８によってリクエスト可能な局所部２５１または遠隔部２５２に関連する他のいずれかの情報を備えることも可能である。リスト３０１および３０２内の情報は、タグ記述またはリスト３０１および３０２に記憶された様々な情報を一意に識別するいずれか他の記述によって、編成または索引付けが可能である。
【００５１】
特に、リスト３０１は、局所部２５１によって必要とされ且つ遠隔部２５２から送信される情報を含み、また遠隔部２５２によって必要とされ且つ局所部２５１から送信される情報も含む。同様に、リスト３０２は、遠隔部２５２によって必要とされ、局所部２５１から送信される情報を含み、また局所部２５１によって必要とされ且つ遠隔部２５２から送信される情報も含む。さらに、リスト３０１および３０２は、それぞれのシステムレベルデータバス２５８および２９０に関連する装置間で局所的に共有される情報を含むことも可能である。例えば、リスト３０１内の情報のうちいくつかは、局所部２５１と遠隔部２５２との間で必ずしも共有されるわけではない制御装置２６２および２６４によって共有される情報を含むことも可能である。
【００５２】
例えば、制御装置２８８がフィールド装置２６８からの入力を必要とする機能ブロックを使用する構成である場合、制御装置２６４は、フィールド装置２６８の出力をデータサーバ２５６に対して定期的に送る構成である。同時に、ユーザインタフェース２８２は、ユーザに表示するためにフィールド装置２６８からのこのデータを必要とする場合もあるため、制御装置２６４は、ユーザインタフェース２８２にこのデータを発行するようにも構成されている。ネットワーク通信ルーチン３０３は、フィールド装置２６８に関連する出力データを受信し、フィールド装置２６８に対する出力データを含むリスト３０１内の場所を更新するが、このデータの１個のコピーのみが、２個の異なる装置（すなわち、遠隔ネットワーク２５２上の制御装置２８８およびユーザインタフェース２８２）に発行されたとしても、リスト３０１に記憶される。遠隔通信ルーチン２９９は、リスト３０１がフィールド装置２６８の出力に関連する更新された情報を現在含んでいることを認識し、ここで述べる通信技術を利用して、この更新された情報を低速通信リンク１６上で送信する。遠隔データサーバ２８６は、アップリンク／ダウンリンク通信チャネル２２を介してフィールド装置２６８に関連する更新された情報を受信する。遠隔通信リンクルーチン３００は、その後、フィールド装置２６８に関連する更新された情報を用いて、リスト３０２の適当な位置を更新する。、制御装置２８８およびユーザインタフェース２８２の両方が、システムレベルデータバス２９０上でフィールド装置２６８に関連する情報（現在、リスト３０２に記憶されている）が定期的に発行されることを要求することをネットワーク通信ルーチン３０４は認識している。従って、通信ルーチン３０４は、情報が更新されたかどうかに拘わらず、フィールド装置２６８に関連する情報（リスト３０２に含まれる）を制御装置２８８とユーザインタフェース２８２の両方に発行する。
【００５３】
上記例から判るように、リスト３０１および３０２により、低速リンク１６に関連する通信プロセス２９９および３００とシステムレベルデータバス２５８および２９０に関連する通信プロセス３０３および３０４が互いに非同期に動作することになる。例えば、ネットワーク通信ルーチン３０３は、第１の定期速度で遠隔部２５２によってリクエストされた情報を受信（さらにリスト３０１を更新）することも可能であり、ネットワーク通信ルーチン３０４は、第１の定期速度とは異なってもよい第２の定期速度で（リスト３０２に含まれる）リクエストされた情報を発行することも可能である。さらに、リンク１６を介する不必要な通信を排除するために、遠隔通信リンクルーチン２９９および３００は、情報が変化すると、リンク１６上でそれぞれのリスト３０１および３０２における情報を送信するのみであってもよい。このように、ネットワーク通信ルーチン３０３および３０４が、それぞれのリスト３０１および３０２における情報を未変化情報で定期的にリフレッシュしている場合、遠隔通信ルーチン２９９および３００は、遠隔通信ルーチン２９９および３００は、低速通信リンク１６を介して未変化情報を送信せず、それによって低速通信リンク１６を介して冗長メッセージの送信を排除する。
【００５４】
上記データサーバ２５６および２８６において特に興味深い局面は、ネットワーク通信ルーチン３０３および３０４と組み合わされたリスト３０１および３０２によって、データサーバ２５６および２８６が、リスト３０１および３０２に記憶された情報に対する１対多の関係を確立することになる。このように、遠隔システム２５２上のいくつかの装置は、リスト３０２内の情報に加入することが可能であり、ネットワーク通信ルーチン３０４は、どの装置がどのデータに加入しているかをトラッキングすることのみを必要とし、そのデータが更新毎に一回、リンク１６上で送信されるのみであっても、そのデータをリスト３０２からこれらすべての装置に定期的に送信する。このように、フィールド装置２６８に対する更新された情報（リスト３０２に含まれる）は、一旦、低速通信リンク１６を介して送信することが可能であり、その後、ネットワーク通信ルーチン３０４を介して多数の装置に発行することが可能である。
【００５５】
図８は、図６のプロセス制御システム２５０の局所部２５１と遠隔部２５２との間で透過通信を可能にするソフトウェアモジュールを一般的に示す概略ブロック図である。局所部２５１のユーザインタフェース２５４は、第２の制御装置２６４における制御戦略ルーチン３２２を構成し、必要に応じて局所データサーバ２５６および遠隔データサーバ２８６内でカスタム通信オブジェクト３２４を生成する構成ルーチン３２０を備える。同様に、遠隔部２５２のユーザインタフェース２８４は、必要に応じて遠隔データサーバ２８６および局所データサーバ２５６内でカスタム通信オブジェクト３２８を生成する構成ルーチン３２６を備える。
【００５６】
局所ユーザインタフェース２５４の構成ルーチン３２０は、局所部２５１の装置に関連する情報に対する定期的リクエストを行うように第２の制御装置２６４を構成することも可能であり、さらに、局所データサーバ２５６を介して遠隔部２５２に関連する装置から定期的に情報をリクエストするように第２の制御装置２６４を構成することが可能である。そのために、構成ルーチン３２０は、このデータの通信が低速リンク１６上で生じることを認識し、その後、データサーバ２５６内でカスタム通信オブジェクト３２４を自動的にセットアップし、それによって、データサーバ２５６が遠隔部２５２からの情報に対するリクエストを認識し、これらのリクエストを低速通信リンク１６を介してルーティングし、遠隔部２５２のデータサーバ２８６から必要な情報を定期的に検索するのを可能にする。
【００５７】
さらに一般的には、カスタム通信オブジェクト３２４および３２８によって、データサーバ２５６および２８６が、あたかも同一データバスに接続されていたかのように局所サイトと遠隔サイトとの間で情報ルーティング機能を果たし、それによって、ユーザインタフェース２５４におけるユーザにとって、遠隔部２５２のユーザインタフェース２８４が局所部２５１のシステムレベルデータバス２５８上で直接通信しているように見える。換言すれば、データサーバ２５６および２８６は、それぞれのカスタム通信オブジェクト３２４および３２８を用いて、ユーザインタフェース２５４および２８４の通信属性をエミュレートし、それによって、システム２５０の局所部２５１と遠隔部２５２との間の通信がユーザにとって完全に透過される。さらに、この透過性は、構成ルーチン３２０および３２６がカスタム通信オブジェクト３２４および３２８を自動的に作成するのでシステム構成に拡張する。その結果、ユーザは、ここで述べる通信プロトコルまたは低速通信リンク１６に関連する技術を理解する必要なく、システム２５０を構成することが可能である。
【００５８】
特に、制御装置２６４は、データサーバ２５６内に位置するカスタム通信オブジェクト３２４に（遠隔システム２５２に搬送されるべき）データを発行するように構成することも可能である。通信オブジェクト３２４は、その後、ネットワーク通信ルーチン３０３と協働し、データサーバ３２４が、データを受信するために事前に構成されたリスト３０１の特定の場所でデータを受信し、その後、記憶する。上記のように、遠隔リンク通信ルーチン２９９は、その後、ここで述べる通信技術を用いて、低速リンク１６上でリスト３０１内に記憶されたデータを送信することも可能である。データは、遠隔データサーバ２８６によって（メッセージまたはメッセージバンドル内で）受信されると、データを受信するために事前に構成されたリスト３０２の特定の場所に記憶される。カスタム通信オブジェクト３２８は、リスト３０２の特定の場所から記憶されたデータを定期的に検索し、ネットワーク通信ルーチン３０４と協働して、１個以上の加入装置、例えば、制御装置２８８、ユーザインタフェース２８４および遠隔システム２５２に関連する他の装置またはそのいずれかに、遠隔データバス２９０上のデータを発行する。
【００５９】
上記のように、ここで述べる据え置き肯定応答通信技術は、プロセス制御システム内で使用され、低速通信リンクを介して通信する制御システムの遠隔に位置する部分と、局所的に位置する部分との間の透過性のある効率的な通信（すなわち、送信されたデータの単位あたりのスループットが高く、コストが低い）を可能にする。さらに、本発明の通信技術は、低レベル通信プロトコルであるため、プロセス制御システムの局所および遠隔部内で実行する他のアプリケーションが、この通信プロトコル上で階層化され、このアプリケーションは、低速通信リンクを横切り、効率的に通信可能となる。
【００６０】
一般にプロセス制御システムと共に使用される特定的に重要な一形式のアプリケーションは、ユーザに異常であることを警告する警報条件または警報メッセージや、プロセス制御システム内で生じる恐らく危険な事象の通信および報告である。従来のプロセス制御システムでは、ユーザインタフェースは一般に、ユーザが訂正動作を取るように素早く警告するブリンキングエレメント、可聴予告等を含んでもよい図形表示内で警報状態情報を与える。これらの従来のプロセス制御システムでは、警報メッセージが、警報を発生するいずれかの装置から送信される度に検証または応答される。このような警報肯定応答方式が、低速通信リンクを有する従来のプロセス制御システム内で使用された場合、警報肯定応答は遅くなり、低速リンクの全帯域幅の有意な部分を消費する可能性がある。これらの通信上の障害は、（例えばプラントアップセット状態で）プロセスの一部が制御を失うのとほぼ同時に、遠隔システムが多数の警報を発生する可能性があるという事実とさらに複合される。
【００６１】
上記通信技術に関して階層化されて、プロセス制御システムの遠隔部に関連する警報情報をプロセス制御システムの局所部におけるユーザインタフェースに効率的に通信できるようにする警報管理アプリケーションについて、図９を参照して以下でより詳細に述べる。
【００６２】
図９は、例えば図１および図６の据え置き肯定応答通信技術を用いてシステム２５０の遠隔部２５２からシステム２５０の局所部２５１のユーザインタフェース２５４まで警報情報を効率的に通信するクライアント／サーバ警報管理アプリケーションを示す概略ブロック図である。局所ユーザインタフェース２５４は、遠隔ユーザインタフェース２８４内の警報サーバプロセス３３２にSUBSCRIBEメッセージとFLOW CONTROLメッセージを送信する警報クライアントプロセス３３０を備える。逆に、警報サーバプロセス３３２は、警報クライアントプロセス３３０から受信したSUBSCRIBEメッセージに応じて、警報クライアントプロセス３３０にALARM UPDATEメッセージを定期的に送信する。
【００６３】
以下でより詳細に述べるように、警報クライアントプロセス３３０および警報サーバプロセス３３２は協働して、低速通信リンクを介して警報情報を送信する。警報クライアント３３０および警報サーバプロセス３３２は、上記据え置き肯定応答通信技術をオーバレイするのが好ましい。換言すれば、警報サーバプロセス３３２は、据え置き肯定応答通信技術を低レベル通信プロトコルとして使用して、遠隔部２５２に関連する統合された警報情報を含むメッセージバンドルを局所部２５１に送信する。同様に、警報クライアントプロセス３３０は、同一低レベル通信プロトコルを使用して、警報情報を含むメッセージバンドルを遠隔部２５２から受信する。警報クライアントプロセス３３０および警報サーバプロセス３３２の完全性は、その間の定期的なメッセージ交換を介して維持され、それによって、適当に機能したままであることを互いに通知し合う。
【００６４】
基底の据え置き肯定応答通信プロトコルは、警報サーバプロセス３３２によって与えられるメッセージバンドル等の警報情報を備えるメッセージバンドルを含むすべてのメッセージバンドルに対して明確な、しかも暗黙の肯定応答を与えるため、警報管理アプリケーションレベル（すなわち、クライアントプロセス３３０およびサーバプロセス３３２のレベル）のさらなる肯定応答を排除することが可能である。一般に従来の警報管理技術において使用するプロセスレベル肯定応答をこのように排除することにより、ここで述べる据え置き肯定応答通信技術を用いてリンク１６を介して送信されるメッセージバンドル内で低速通信リンク１６において警報情報が一時的にパックされる。
【００６５】
一般に、警報クライアント３３０は、SUBSCRIBEメッセージを送信して警報サーバ３３２から特定の警報に加入し、警報サーバ３３２から警報クライアント３３０まですべての警報が送信されるように指示し、その後、ALARM UPDATEメッセージを定期的に送信して、警報クライアント３３２に警報情報を送信する。警報クライアント３３２は、警報シーケンス番号によって警報のトラックを維持し、FLOW CONTROLメッセージを介して警報サーバ３３２に紛失もしくは取り去ったメッセージまたはリクエスト再同期を通知することも可能である。
【００６６】
特に、警報クライアントプロセス３３０からのSUBSCRIBEメッセージは、（警報サーバ３３２が警報クライアント３３０にメッセージを送信／ルーティングできるように）局所ユーザインタフェース２５４を識別する情報と、警報クライアント３３０が情報をリクエストしているプラント領域の組と、警報サーバ３３２により再同期サイクルが開始されるように警報クライアント３３０が要求しているかどうかを示すフラグとを含む。さらに、SUBSCRIBEメッセージは、警報クライアント３３０が警報サーバ３３２にSUBSCRIBEメッセージを繰り返す頻度に関する情報を含んでもよく、それによって警報クライアント３３０が通信していないかどうか判断でき、警報サーバ３３２が警報クライアント３３０に対して維持されている未使用のリソース（例えば、処理およびメモリリソース）を解除できるようにする。SUBSCRIBEメッセージは、警報サーバ３３２が警報クライアント３３０にALARM UPDATEメッセージを送信する頻度に関する情報も含み、それによって警報サーバ３３２がいつ通信しなくなったかを警報クライアント３３０が判断することができ、この警報クライアント３３０が局所ユーザインタフェース２５４の表示から誤った警報情報を除去することが可能である。
【００６７】
ALARM UPDATEメッセージは、メッセージのシーケンス内の警報メッセージが取り去られて（すなわち、失われて）いないことを警報クライアント３３０が識別できる警報シーケンス番号（基底通信プロトコルに関連するシーケンス番号に一般には関連しない）を含む。ALARM UPDATEメッセージは、警報状態に関連する情報、例えば、プロセス制御システム２５０内の各警報を一意に識別する警報IDストリング、現在の警報状態（警報が不能化されているか、抑制されているか、非アクティブに応答されている、アクティブに応答されているか、非アクティブに非応答されているか、またはアクティブに非応答されているかどうか等）、警報が検出されたプラント領域、最近の警報状態または優先順位変化の時期、警報優先順位、警報形態（例えば、「HIGH」、「LOW」、「HIGH-HIGH」等）およびユーザが警報状態に適当に、しかも容易に応答できるようにする記述メッセージをさらに含むことも可能である。
【００６８】
警報クライアント３３０が警報サーバ３３２に送信するFLOW CONTROLメッセージは、警報サーバ３３２が警報クライアント３３０に情報を送信／ルーティングできるように、警報クライアント３３０を識別する情報と警報クライアント３３０が警報サーバ３３２によって非同期サイクルが開始されるようにリクエストしていることを指示し、メッセージが失われていることをALARM UPDATEメッセージが指示している場合、警報クライアント３３０によって呼び出し可能なフラグと、未処理警報メッセージの数を制御し、本発明の基底通信技術が再送待ち行列５２（図２）における未処理メッセージの数を制御するのと同様に警報管理アプリケーション層で機能する情報とを備える。
【００６９】
一般に、警報クライアント３３０は、局所ユーザインタフェース２５４において実行している他のプロセスによって警報状態情報に対する必要性を監視し、必要な警報に関連する一組のプラント領域に同一の情報を統合する。統合された組のプラント領域が変化すると、警報クライアント３３０は、新たな組のプラント領域を含む加入メッセージを警報サーバ３３２に送信する。新たなプラント領域がリストに追加される場合、加入メッセージは、再同期サイクルをリクエストするフラグを含む。加入情報が未変化であっても、警報クライアント３３０は定期的にSUBSCRIBEメッセージを再送し、それによって、警報クライアント３３０が適当に機能し続け、警報サーバ３３２が正しい加入情報を有することを確実にすることを警報サーバ３３２は知る。ALARM UPDATEメッセージ間の時間がSUBSCRIBEメッセージにおいてリクエストされた更新頻度を超える場合、警報クライアント３３０は、警報サーバ３３２が作動しないものと考えて、局所ユーザインタフェース２５４内で実行されているアプリケーションに、警報情報が誤りであるかもしれないことを通知する。警報クライアント３３０は、重要性によって命令されたアクティブな警報に関連する情報を、局所ユーザインタフェース２５４内で実行されている他のアプリケーションに利用可能な特殊なパラメータとして発行する。これらの特殊なパラメータは、プロセス制御情報に対する工業標準インタフェースと互換性があるデータフォーマットを使用して発行されるのが好ましい。
【００７０】
上記のように、警報クライアント３３０は、警報サーバ３３２からALARM UPDATEメッセージを受信する。警報クライアント３３０は、ALARM UPDATEメッセージを受信すると、警報メッセージのシーケンス番号を期待シーケンス番号（すなわち、受信した最後の更新メッセージのシーケンス番号に１を増分したもの）と比較する。受信したメッセージのシーケンス番号が受信した最後のメッセージと同じであるならば、ALARM UPDATEメッセージは、再同期サイクルを必要とすることなく、重複するものとして破棄される。受信したシーケンス番号が期待番号に整合する場合、メッセージ内に含まれる警報情報は、警報クライアント３３０によって維持されるアクティブな警報のリストに統合される。警報状態情報に基づいて、アクティブな警報のリストには新たな警報が追加可能であり、非アクティブな警報をリストから除去することも可能であり、アクティブな警報に対する変化（例えば、優先順位の変化）をリストに統合することも可能である。
【００７１】
警報サーバ３３２は、遠隔ユーザインタフェース２８４によって加入されたプラント領域のセットを組み合わせ、制御装置２８８からの必要な警報状態情報収集を実行して、警報サーバ３３２がシステム２５０の遠隔部２５２に関連するすべての制御装置からのアクティブな警報の現在のリストを確実に備えるようにする。警報サーバ３３２は、必要なプラント領域の各々に対するアクティブな警報のリストを備え、警報状態が加入警報クライアント３３０にまだ通信されていない場合、非アクティブな警報を備える。動作中、新たな警報状態の変化が検出され、制御装置２８８から到着すると、警報サーバ３３２は情報をそのアクティブな警報のリストに統合し、警報クライアント３３０に対して構成されたALARM UPDATEメッセージにおける警報状態情報を緩衝する。未処理ARARM UPDATEメッセージの最大許容数に達した結果、警報状態情報が緩衝できない場合、警報状態情報は、シーケンス内のより多くのALARM UPDATEメッセージが送信可能であることを指示して警報クライアント３１０がFLOW CONTROLメッセージに応答し始めると、警報状態情報が「フラッシュされる」（すなわち、警報クライアント３３０に送信される）必要が依然としてあることを示す警報サーバ３３２のアクティブな警報のリスト内に警報とともに含まれる。
【００７２】
警報サーバ３３２は、警報クライアント３３０がFLOW CONTROLメッセージにまだ応答していないために警報サーバ３３２がいつ他のメッセージを送信できないかをさらに検出することが可能である。この「フロー制限」状態は、新たな警報状態変化のボリュームが低速通信リンク１６のスループットと比較して大きい時に生じる可能性がある。これらのフロー制限状態では、最もクリティカルまたは重要な警報が低速通信リンク１６を介してできるだけ早く警報クライアント３３０に確実に搬送される優先順位駆動警報フラッシング技術を警報サーバ３３２が採用することも可能である。
【００７３】
警報サーバ３３２は、警報クライアント３３０が非アクティブであることを通知された事実にも拘わらず、非アクティブ状態にある警報を定期的に検査し、破棄する。警報サーバ３３２は、警報クライアント３３０がSUBSCRIBEメッセージを最後に送信してから経過した時間と現在の時間および警報サーバ３３２によってSUBSCRIBEメッセージが受信される期待頻度とを比較することにより、警報クライアント３３０が機能したままであるかどうかを定期的に検査することも可能である。警報サーバ３３２は、警報クライアント３３０がもはや機能していないと判断すると、警報クライアント３３０を非加入にし、警報クライアント３３０に対して保持されたリソースを割り当て解除する。
【００７４】
上記の図８に示す警報管理アプリケーションは、１個の警報サーバ３３２と通信する１個の警報クライアント３３０を示すが、多数の警報クライアントおよびサーバは、プロセス制御システムの遠隔に位置する部分と局所に位置する部分の両方で使用することが可能である。さらに、警報サーバ３３２は、他の警報サーバのクライアントとして機能することが可能であるため、警報管理階層の１個以上のレベルが低速通信ネットワーク１６を」介して、またはカスケード低速リンクを介して通信するように、警報クライアントおよびサーバの多段ネットワークが形成可能である。
【００７５】
このように、上記警報管理アプリケーションは、通信リンクを介して警報情報をより効率的に送信し、低速通信リンクを介して警報情報を送信するために使用する際、特に都合よい。警報管理アプリケーションは、警報情報をメッセージバンドルに統合し、上記通信技術を用いて、低速通信リンク上でメッセージバンドルを送信する。警報メッセージは、個別には応答されず、一般に、上で詳細に述べたように、１個の肯定応答を用いて、警報メッセージを含む多数のメッセージに応答することも可能である。警報管理アプリケーションは、警報情報を統合し、各警報は個別には応答されないため、上記警報管理アプリケーションは、低速通信リンクの帯域幅をより効率的に利用し、プラントアップセットに応じて、例えば、ユーザが訂正動作を素早く取れるような大量の警報情報をより迅速に搬送することが可能である。
【００７６】
一般に、上記据え置き肯定応答通信技術および警報管理アプリケーションは、汎用プロセッサを用いて効率的に実現され、コンピュータ読み出し可能メモリから検索される多数のソフトウェアコードセグメントまたはモジュールを実行することも可能である。しかし、例えば、アルゴリズム特定集積回路（すなわちASIC）を用いるハードウェアおよびソフトウェアまたは他の形式のハードウエアもしくはファームウエアの他の組み合わせを利用して、発明の範囲を逸脱することなく、同一機能を果たすことも可能である。
【００７７】
上記通信技術は、データまたは情報待ち行列を使用して、通信リンクを介して送信されるべき情報、データまたはメッセージを記憶することも可能であるが、発明の範囲を逸脱することなく、リンクを介して送信されるべきデータを編成するいずれか他の方法を用いることも可能である。
【００７８】
ソフトウェアで実現される場合、ここで述べた機能ブロックおよびルーチンは、コンピュータ読み出し可能メモリ、例えば、磁気、光学又は他の記憶媒体やコンピュータ制御装置、フィールド装置のRAMまたはROM等に記憶することも可能である。同様に、このソフトウェアは、搬送波上で変調され、通信チャネル、例えば、電話回線、インターネット等を含む既知の、または望ましい搬送方法によって、ユーザまたは装置に搬送することも可能である。
【００７９】
本発明について、例示するものであってそれを限定するものではない特定の実施例を参照して述べたが、発明の精神および範囲を逸脱することなく、開示された実施の形態に変更、追加または削除を行ってもよいことが当業者には明らかとなるであろう。
【符号の説明】
【００８０】
１２ 局所システム
１４ 遠隔システム
１６ 低速通信リンク
１８ 制御装置
２４ 局所ユーザインターフェース
２６ 局所データサーバ
２８ システムレベルデータバス
３２ 遠隔ユーザインターフェース
３４ 遠隔データサーバ
３６ 遠隔システムレベルデータバス
４０ ソフトウエアルーチン（据え置き肯定応答通信ルーチン）
４２ ソフトウエアルーチン（据え置き肯定応答通信ルーチン）
５０ 保留メッセージ待ち行列
５２ 再送待ち行列
５４ アプリケーション
５６ アプリケーション
５８ アプリケーション
６０ 動的ウィンドウ
６６ 未処理メッセージ
６８ 未処理メッセージ
１００ 送信プロセス
１０２ タイマプロセス
１０４ 受信プロセス
２００ データフォーマット
２０２ インターネットプロトコル部
２０４ メッセージヘッダ部
２０６ メッセージデータ部
２５０ プロセス制御システム
２５４ ユーザインタフェース
２５６ データサーバ
２５８ システムレベルデータバス
２６２ 制御装置
２６４ 制御装置
２６６ フィールド装置
２７０ スマートフィールド装置
２７２ スマートフィールド装置
２７４ スマートフィールド装置
２７６ Ｉ／Ｏ装置
２８０ 非固有プロトコルデータバス
２８２ ユーザインターフェース
２８４ ユーザインターフェース
２８６ データサーバ
２８８ 制御装置
２９０ システムレベルデータバス
２９９ 遠隔通信リンクルーチン
３００ 遠隔通信リンクルーチン
３０１ リスト
３０２ リスト
３０３ ネットワーク通信ルーチン
３０４ ネットワーク通信ルーチン
３２２ 制御戦略ルーチン
３２４ カスタム通信オブジェクト
３２８ カスタム通信オブジェクト
【図１】
2011072004.tif 000003
【図２】
2011072004.tif 000004
【図３】
2011072004.tif 000005
【図４】
2011072004.tif 000006
【図５】
2011072004.tif 000007
【図６】
2011072004.tif 000008
【図７】
2011072004.tif 000009
【図８】
2011072004.tif 000010
【図９】
2011072004.tif 000011
【手続補正書】
【提出日】平成22年11月25日(2010.11.25)
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
衛星通信リンクを介して通信結合された第１の通信ネットワークと第２の通信ネットワークとを有するプロセス制御システムにおいて、前記第１の通信ネットワークに接続された第１のユーザインタフェースと、前記第１の通信ネットワークを介して前記ユーザインタフェースに通信結合された第１の制御装置と、前記第１の通信ネットワークを介して前記ユーザインタフェースと前記制御装置とに通信結合された第１のデータサーバと、前記第２の通信ネットワークに接続された第２のユーザインタフェースと、前記第２の通信ネットワークを介して前記第２のユーザインタフェースに通信結合された第２の制御装置と、前記第２の通信ネットワークを介して前記第２のユーザインタフェースと前記第２の制御装置とに通信結合され、前記衛星通信リンクを介して前記第１のデータサーバに通信結合された第２のデータサーバとを備えることを特徴とする、プロセス制御システム。
【請求項２】
低速通信リンクを介して通信結合された第１の通信ネットワークと第２の通信ネットワークとを有するプロセス制御システムにおいて、前記第１の通信ネットワークに接続された第１のユーザインタフェースと、前記第１の通信ネットワークを介して前記ユーザインタフェースに通信結合された第１の制御装置と、前記第１の通信ネットワークを介して前記ユーザインタフェースと前記制御装置とに通信結合された第１のデータサーバと、前記第２の通信ネットワークに接続された第２のユーザインタフェースと、前記第２の通信ネットワークを介して前記第２のユーザインタフェースに通信結合された第２の制御装置と、前記第２の通信ネットワークを介して前記第２のユーザインタフェースと前記第２の制御装置とに通信結合され、前記低速通信リンクを介して前記第１のデータサーバに通信結合された第２のデータサーバとを備え、前記第１のユーザインタフェースは、前記第１の通信ネットワークを介して第１の制御戦略を前記第１の制御装置に送り、前記第１のデータサーバにカスタム通信オブジェクトを送る構成ルーチンを備えることを特徴とする、プロセス制御システム。
【請求項３】
前記構成ルーチンが、前記第１および第２の通信ネットワーク間のユーザ特定通信に応じて、前記カスタム通信オブジェクトを自動的に生成することを特徴とする、請求項２に記載のプロセス制御システム。
【請求項４】
前記カスタム通信オブジェクトが、前記低速通信リンクを介して前記第１および第２の通信ネットワーク間でのメッセージの自動ルーティングを可能にすることを特徴とする、請求項３に記載のプロセス制御システム。
【請求項５】
前記第１および第２のデータサーバが、前記低速通信リンク上で送信される情報を記憶する第１および第２のパラメータリストをそれぞれ備えることを特徴とする、請求項２記載のプロセス制御システム。
【請求項６】
前記第１のパラメータリスト内の少なくともいくつかの情報が前記第１の通信ネットワーク上で発行されることを特徴とする、請求項５に記載のプロセス制御システム。
【請求項７】
前記第１のパラメータリスト内の少なくともいくつかの情報が前記第２の通信ネットワーク上で発行されることを特徴とする、請求項５に記載のプロセス制御システム。
【請求項８】
前記第１のデータサーバが、複数個のメッセージのうちのいずれかに対する肯定応答を受信する前に、前記低速通信リンク上で前記複数個のメッセージを送信することを特徴とする、請求項２に記載のプロセス制御システム。
【請求項９】
通信リンクを介して第２の部分に通信結合された第１の部分を有するプロセス制御システムにおけるアプリケーション情報を通信する方法において、前記プロセス制御システムの前記第１の部分内でアプリケーションクライアントプロセスを確立するステップと、前記プロセス制御システムの前記第２の部分内でアプリケーションサーバプロセスを確立するステップと、前記アプリケーションサーバプロセスから前記アプリケーションクライアントプロセスまで第１のアプリケーションメッセージを送信し、前記クライアント処理に定期的に送信される一組のアプリケーション情報を規定するステップと、前記アプリケーションサーバプロセスから前記クライアントプロセスまで定期的アプリケーション更新メッセージを送信するステップとを備え、前記更新メッセージが、前記第１のアプリケーションメッセージによって特定される前記アプリケーション情報の組に関する情報を含むことを特徴とする、アプリケーション情報を通信する方法。
【請求項１０】
前記第１のアプリケーションメッセージおよび前記アプリケーション更新メッセージが警報情報に関連することを特徴とする、請求項９に記載の方法。
【請求項１１】
前記アプリケーションクライアントプロセスから前記アプリケーションサーバプロセスまでフロー制御メッセージを送信し、それによって前記アプリケーションサーバプロセスを開始して、前記アプリケーションクライアントプロセスと再同期するステップをさらに備えることを特徴とする、請求項９に記載の方法。
【請求項１２】
前記第１のアプリケーションメッセージと前記アプリケーション更新メッセージとを送信するステップが、２個以上のメッセージのうち第１のものに対して肯定応答が受信される前に前記２個以上のメッセージを送信するステップを備えることを特徴とする、請求項１０に記載の方法。
【請求項１３】
前記警報情報が優先順位情報を備えることを特徴とする、請求項１０に記載の方法。
【請求項１４】
前記アプリケーションサーバプロセスが前記アプリケーション更新メッセージを前記アプリケーションクライアントプロセスに送信する頻度に関連する情報を、前記第１のアプリケーションメッセージが備えることを特徴とする、請求項１０に記載の方法。
【請求項１５】
前記アプリケーションサーバプロセスが、アプリケーション更新メッセージを前記アプリケーションクライアントプロセスに送信する頻度に基づいて、前記アプリケーション更新メッセージの不在を検出するステップをさらに備えることを特徴とする、請求項１４に記載の方法。
【請求項１６】
前記アプリケーションクライアントプロセスが前記第１のアプリケーションメッセージを前記アプリケーションサーバプロセスに送信する頻度に関連する情報を、前記第１のアプリケーションメッセージが備えることを特徴とする、請求項１０に記載の方法。
【請求項１７】
前記アプリケーションクライアントプロセスが前記第１のアプリケーションメッセージを前記アプリケーションサーバプロセスに送信する頻度に基づいて、アプリケーション更新メッセージの不在を検出するステップをさらに備えることを特徴とする、請求項１６に記載の方法。