説明

複数計算機間における通信プロトコルの動的選択方法、動的選択システムおよびそのプログラム

【課題】アプリケーションからトランスポート層通信プロトコルを隠蔽するような複数計算機間における通信プロトコルの動的切替方法を提供する。
【解決手段】送信側計算機PC−Sは、ネゴシエーション管理部11−Sと、ネゴシエーション通信部12−Sと、通信プロトコル判定部13−Sと、通信相手管理部14−Sと、通信相手一覧データファイル15−Sと、ネゴシエーション情報ファイル16−Sと、通信プロトコル一覧データファイル17−Sと、データ用通信部18−Sと、アプリケーション19−Sとから構成され、受信側計算機PC−Rは、ネゴシエーション管理部11−Rと、ネゴシエーション通信部12−Rと、ネゴシエーション情報ファイル16−Rと、データ用通信部18−Rと、アプリケーション19−Rとから構成される。送信側計算機が受信側計算機の台数および計算機構成に応じてデータ通信で使用する通信プロトコルを自動的に選択する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数計算機間における通信プロトコルの動的選択方法、動的選択システムおよびそのプログラムに係り、特にOSI参照モデルにおけるトランスポート層のプロトコルの動的選択方法、動的選択システムおよびそのプログラムに関する。
【背景技術】
【0002】
一台の計算機から複数台の計算機に同報通信を行う場合、利用可能な通信プロトコルとしては、OSI(Open Systems Interconnect)参照モデルの第3層(ネットワーク層)の通信プロトコルであるTCPやUDPでのブロードキャスト通信、マルチキャスト通信等がある。それぞれの通信プロトコルを利用するにあたってはメリットあるいはデメリットが生じる。
【0003】
これら通信プロトコルのうち、どの通信プロトコルを利用するかについては、通常、アプリケーション開発時に決定し、アプリケーションの実装についても通信プロトコルに依存するものを作成している。
【発明の開示】
【発明が解決しようとする課題】
【0004】
上述したように、アプリケーション開発時に使用する通信プロトコルを決定した場合、アプリケーションを実装する際、通信プロトコルに依存するため、使用する通信プロトコルを変更するたびにアプリケーションを開発する必要があり、アプリケーションの生産性が悪い。
【0005】
また、通信対象の計算機台数が変化する場合、通信を行う計算機によって回線品質等の通信環境も異なるため、特定の通信プロトコルを利用することにより、計算機の台数増加による計算機負荷、通信負荷、リソース使用量が増大する。
【0006】
さらに、通信環境の異なる計算機の間で通信することにより、回線品質が悪い計算機については再送が頻発し、通信負荷が増大する恐れがある。このため、計算機の台数およびネットワーク内の配置により適切な通信プロトコルを選択する必要があった。
【0007】
本発明は、上述した従来技術の問題点を解決するためになされたものであり、その目的とするところは、通信環境の異なる複数の計算機間での一斉同報通信に際して、OSI参照モデルのセッション層に相当する論理的な通信路の制御を行うものであり、トランスポート層の通信プロトコルに関する通信の開始、終了および通信プロトコルの切り替えを、通信環境の変化に対して動的に行うことにより、アプリケーションからトランスポート層通信プロトコルを隠蔽するような複数計算機間における通信プロトコルの動的切替方法、動的切換システムおよびそのプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記の目的を達成するために、請求項1に係る発明は、ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための複数計算機間における通信プロトコルを選択する方法であって、前記送信側計算機および前記受信側計算機に対してデータ通信手段、ネゴシエーション管理手段、ネゴシエーション通信手段およびアプリケーションを共通して設けるとともに、前記送信側計算機に対して更に通信プロトコル判定手段および通信相手管理手段を付加するようにし、受信側計算機の前記ネゴシエーション管理手段は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信手段にネゴシエーション要求を通知し、当該ネゴシエーション通信手段より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信手段に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、受信側計算機の前記ネゴシエーション通信手段は、前記ネゴシエーション管理手段から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信手段に送信し、送信側計算機の当該ネゴシエーション通信手段から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理手段に通知し、送信側計算機の前記ネゴシエーション管理手段は、前記ネゴシエーション通信手段から受け取ったネゴシエーション要求を前記通信プロトコル判定手段に通知して当該通信プロトコル判定手段から使用する通信プロトコルを受け取り、前記データ通信手段に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用する通信プロトコルを通知するために前記ネゴシエーション通信手段にネゴシエーション応答要求を通知し、送信側計算機の前記ネゴシエーション通信手段は、受信側計算機の前記ネゴシエーション通信手段から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理手段に通知し、前記ネゴシエーション管理手段からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信手段に対してネゴシエーション応答を送信し、前記通信プロトコル判定手段は、送信側計算機の前記ネゴシエーション管理手段からネゴシエーション要求を受け取り、前記通信相手管理手段に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理手段から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理手段に通知し、前記通信相手管理手段は、前記通信プロトコル判定手段からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定手段からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定手段に渡し、送信側計算機の前記データ通信手段は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信手段に対してデータを送信し、前記ネゴシエーション管理手段からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、受信側計算機の前記データ通信手段は、送信側計算機の前記データ通信手段から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理手段からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする。
【0009】
また、請求項9に係る発明は、ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための通信プロトコルを選択するようにしたシステムであって、前記送信側計算機および前記受信側計算機には共通してデータ通信部、ネゴシエーション管理部、ネゴシエーション通信部およびアプリケーションを設けるとともに、前記送信側計算機に対して更に通信プロトコル判定部および通信相手管理部を付加するようにし、前記受信側計算機のネゴシエーション管理部は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信部にネゴシエーション要求を通知し、当該ネゴシエーション通信部より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信部に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、前記受信側計算機のネゴシエーション通信部は、前記ネゴシエーション管理部から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信部に送信し、当該送信側計算機のネゴシエーション通信部から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理部に通知し、前記送信側計算機のネゴシエーション管理部は、前記ネゴシエーション通信部から受け取ったネゴシエーション要求を通信プロトコル判定部に通知して当該通信プロトコル判定部から使用する通信プロトコルを受け取り、前記データ通信部に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用するプロトコルを通知するためにネゴシエーション通信部にネゴシエーション応答要求を通知し、前記送信側計算機のネゴシエーション通信部は、受信側計算機の前記ネゴシエーション通信部から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理部に通知し、前記ネゴシエーション管理部からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信部へネゴシエーション応答を送信し、前記通信プロトコル判定部は、送信側計算機の前記ネゴシエーション管理部からネゴシエーション要求を受け取り、前記通信相手管理部に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理部から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理部に通知し、前記通信相手管理部は、前記通信プロトコル判定部からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定部からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定部に渡し、送信側計算機の前記データ通信部は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信部に対してデータを送信し、前記ネゴシエーション管理部からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、受信側計算機の前記データ通信部は、送信側計算機の前記データ通信部から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理部からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする。
【0010】
さらに、請求項14に係る発明は、ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機および受信側計算機となる一台以上の計算機にそれぞれ共通するデータ通信手段、ネゴシエーション管理手段、ネゴシエーション通信手段およびアプリケーションを設けるとともに、前記送信側計算機に対して更に通信プロトコル判定手段および通信相手管理手段を付加するようにし、前記送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための通信プロトコルを選択するプログラムであって、受信側計算機の前記ネゴシエーション管理手段は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信手段にネゴシエーション要求を通知し、当該ネゴシエーション通信手段より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信手段に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、受信側計算機の前記ネゴシエーション通信手段は、前記ネゴシエーション管理手段から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信手段に送信し、当該送信側計算機のネゴシエーション通信手段から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理手段に通知し、送信側計算機の前記ネゴシエーション管理手段は、前記ネゴシエーション通信手段から受け取ったネゴシエーション要求を前記通信プロトコル判定手段に通知して当該通信プロトコル判定手段から使用する通信プロトコルを受け取り、前記データ通信手段に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用する通信プロトコルを通知するために前記ネゴシエーション通信手段にネゴシエーション応答要求を通知し、送信側計算機の前記ネゴシエーション通信手段は、受信側計算機の前記ネゴシエーション通信手段から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理手段に通知し、前記ネゴシエーション管理手段からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信手段に対してネゴシエーション応答を送信し、前記通信プロトコル判定手段は、送信側計算機の前記ネゴシエーション管理手段からネゴシエーション要求を受け取り、前記通信相手管理手段に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理手段から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理手段に通知し、前記通信相手管理手段は、前記通信プロトコル判定手段からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定手段からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定手段に渡し、送信側計算機の前記データ通信手段は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信手段に対してデータを送信し、前記ネゴシエーション管理手段からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、受信側計算機の前記データ通信手段は、送信側計算機の前記データ通信手段から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理手段からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする。
【発明の効果】
【0011】
本発明によれば、送信側計算機が受信側計算機の台数および計算機構成に応じてデータ通信で使用する通信プロトコルを自動的に選択するため、計算機構成に対応した最適な通信プロトコルを使用することができ、これにより計算機負荷、通信負荷、リソース使用量を低減することができる。また、送信側計算機および受信側計算機で動作するアプリケーションは通信プロトコルを意識することなく通信が行えるため、通信プロトコルに依存した通信処理手順を記述する必要がなく、アプリケーションの生産性向上が期待できる。
【発明を実施するための最良の形態】
【0012】
以下、本発明に係る複数計算機間における通信プロトコルの動的選択方法、動的選択システムおよびそのプログラムの実施の形態について図面を参照して説明するが、まずその前に本明細書で用いる主な用語について説明する。
【0013】
(1)送信側計算機
受信側計算機へデータを送信するアプリケーションが動作する計算機。
【0014】
(2)受信側計算機
送信側計算機から送信されたデータを受信するアプリケーションが動作する計算機。
【0015】
(3)オートネゴシエーション
送信側計算機と受信側計算機間でお互いの情報を遣り取りすることにより、データ通で使用する通信プロトコルを決定する処理。受信側計算機からのネゴシエーション要求とそれに対するネゴシエーション応答によりネゴシエーションを行う。
【0016】
(4)通信相手
送信側計算機からみて受信側計算機、またはその逆を指す。本発明では、送信側計算機から見た受信側計算機のことを指す。
【0017】
(5)通信品質
計算機間のデータ通信が損失なしに行われているかを示すもの。受信側計算機での再送要求送信頻度が実際例である。
【0018】
(6)通信状態
計算機間でのデータ通信が正常に行われているかを示すもの。通信状態が悪いとは、送信側計算機が送信したデータが受信側計算機に届かない状況を指す。
【0019】
(7)一斉同報通信
送信が複数の計算機に対して同時一斉に行われる。受信側の受信状況に関わらず送信する一方的な通信である。複数の計算機が、特定のグループである場合と、不特定多数である場合がある。IP網では、マルチキャスト通信マルチブロードキャスト通信が実際例である。
【0020】
(実施の形態1)
図1ないし図9を参照して本発明の実施の形態1に係る複数計算機間における通信プロトコルの動的選択システムについて説明する。
【0021】
(構成)
図1は本発明の実施の形態1に係る複数計算機間における通信プロトコルの動的選択システム構成図である。なお、実施の形態2以降のシステム構成図においても、送信側計算機およびその構成部品(機能)には添字符号(−S)を、また、受信側計算機およびその構成部品(機能)には添字符号(−R)をそれぞれ付けて区別する。
【0022】
図1を参照して、本実施の形態1のシステム構成から説明する。
送信側計算機PC−Sは、ネゴシエーション管理部11−Sと、ネゴシエーション通信部12−Sと、通信プロトコル判定部13−Sと、通信相手管理部14−Sと、通信相手一覧データファイル15−Sと、ネゴシエーション情報ファイル16−Sと、通信プロトコル一覧データファイル17−Sと、データ用通信部18−Sと、アプリケーション19−Sとを備えている。
【0023】
これに対して、受信側計算機PC−Rは、ネゴシエーション管理部11−Rと、ネゴシエーション通信部12−Rと、ネゴシエーション情報ファイル16−Rと、データ用通信部18−Rと、アプリケーション19−Rとを備えており、送信側計算機PC−Sに設けてある通信プロトコル判定部、通信相手管理部、通信相手一覧データファイルおよび通信プロトコル一覧データファイル等は備えていない。
【0024】
次に、送信側計算機PC−Sおよび受信側計算機PC−Rの各部の詳細機能について説明する。
受信側計算機PC−Rのネゴシエーション管理部11−Rは、送信側計算機PC−Sへネゴシエーション要求を行うために、ネゴシエーション要求をネゴシエーション通信部12−Rに渡し、その結果送信側計算機PC−Sから返ってきたネゴシエーション応答に含まれる通信プロトコルをデータ用通信部18−Rに設定する。
【0025】
ネゴシエーション要求は、例えば図5に示すように受信側計算機PC−Rのアドレス情報として「IPアドレス;192.168.20.51」、「サブネットマスク;255.255.255.0」および「通信プロトコル;空」を含むように構成されている。
【0026】
送信側計算機PC−Sでは、受信側計算機PC−Rのネゴシエーション通信部12−Rから送信されてきたネゴシエーション要求を自機のネゴシエーション通信部12−Sで受信し、ネゴシエーション管理部11−Sを経由して通信プロトコル判定部13−Sに対して「通信プロトコル自動判定処理」を依頼する。
【0027】
通信プロトコル判定部13−Sによって判定された通信プロトコルは、ネゴシエーション管理部11−Sを経由してネゴシエーション情報ファイル16−Sに格納され、かつデータ用通信部18−Sに設定され、ネゴシエーション応答を送信するために、応答データをネゴシエーション通信部12−Sに渡す。
【0028】
ネゴシエーション応答は、図6に示すように「IPアドレス;192.168.20.51」、「サブネットマスク;255.255.255.0」および「通信プロトコル;ブロードキャスト」構成されている。このようにネゴシエーション応答のデータには、ネゴシエーション要求に加えて、判定結果としての通信プロトコルも付加されている。
【0029】
受信側計算機PC−Rのネゴシエーション通信部12−Rは、ネゴシエーション管理部11−Rから受け取った図6のネゴシエーション要求を送信側計算機PC−Sに送信し、要求した結果として送信側計算機PC−Sから送信されてきたネゴシエーション応答を受信し、そのネゴシエーション応答をネゴシエーション管理部11−Rに渡す。
【0030】
送信側計算機PC−Sのネゴシエーション通信部12−Sは、受信側計算機PC−Rから送信されてきたネゴシエーション要求を受信し、通信プロトコルの判定を行うために、ネゴシエーション管理部11−Sに渡し、通信プロトコル判定結果を含むネゴシエーション応答をネゴシエーション管理部11−Sから受け取り、受信側計算機PC−Rに送信する。
【0031】
送信側計算機PC−Sの通信プロトコル判定部13−Sは、ネゴシエーション管理部11−Sからネゴシエーション要求を受け取って通信相手管理部14−Sに渡すとともに、通信相手管理部14−Sから情報を取得した受信側計算機PC−Rの順に、受信側計算機PC−Rの計算機台数および計算機構成によるルールに従って、通信プロトコル一覧データファイル17−Sに格納されている通信プロトコル一覧データで定義されている通信プロトコルの中から使用する通信プロトコルを選択する。
【0032】
送信側計算機PC−Sに設けられた通信相手管理部14−Sは、通信プロトコル判定部13−Sから受け取ったネゴシエーション要求に含まれる受信側計算機PC−Rの情報を送信側計算機PC−Sに設けられた通信相手一覧データファイル15−Sに格納し、通信プロトコル判定部13−Sからの受信側計算機PC−Rの情報の取得要求に対して、通信相手一覧データファイル15−Sに格納済みの全データを渡す。
【0033】
通信相手一覧データファイル15−Sに格納されるデータは図7に示すように受信側計算機PC−Rの情報を表形式で格納している。この図7の例では、受信側計算機PC−Rの情報を3台分格納しており、具体的には各受信側計算機PC−R1〜3のアドレス情報としてIPアドレス(192.168.20.51、192.168.20.52、192.168.100.71)およびサブネットマスク(255.255.255.0、255.255.255.0、255.255.255.0)を格納している。なお、このアドレス情報はネットワーク上の配置を一意に特定できる値であればよく、例えば数値や文字列のようなIPアドレス以外の情報を用いることでも良い。
【0034】
送信側計算機PC−Sおよび受信側計算機PC−R双方のネゴシエーション情報ファイル16−Sおよびネゴシエーション情報ファイル16−Rに格納されるデータは、図8に示すようなオートネゴシエーションに関連するデータを格納している。このうち、受信側計算機PC−Rのネゴシエーション情報ファイル16−Rではネゴシエーション応答に格納された通信プロトコルを格納し、送信側計算機PC−Sのネゴシエーション情報ファイル16−Sではネゴシエーション要求に対して通信プロトコル判定部13−Sが判定した通信プロトコルを格納する。
【0035】
送信側計算機PC−Sに設けられている通信プロトコル一覧データファイル17−Sは、送信側計算機PC−Sのデータ用通信部18−Sと受信側計算機PC−Rのデータ用通信部18−Rとが利用可能な図9に示すように構成された通信プロトコルの一覧、すなわち、TCP/IP、ブロードキャスト(UDP)、マルチキャスト(UDP)を格納している。
【0036】
通信プロトコル判定部13−Sは、この通信プロトコル一覧データファイル17−Sに格納されているプロトコル一覧の中から、使用する通信プロトコルを選択するように自動判定処理を行う。なお、OSI参照モデルのトランスポート層の通信プロトコルとしては、TCP、UDPが挙げられる。また、UDPについては、一斉同報通信を実施するための通信プロトコルとしてブロードキャスト、マルチキャストが挙げられる。
【0037】
データ用通信部18−Sおよびデータ用通信部18−Rは、送信側計算機PC−Sと受信側計算機PC−Rの間でアプリケーション19−Sおよびアプリケーション19−Rの送受信処理を行う。送信側計算機PC−Sのデータ用通信部18−Sはアプリケーション19−Sからの送信要求に対して受信側計算機PC−Rにデータを送信し、受信側計算機PC−Rのデータ用通信部18−Rは送信側計算機PC−Sから送信されたデータを受信し、受信通知と受信データとをアプリケーション19−Rに渡すようになっている。
【0038】
(作用)
次に、図1で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図2および図3のフローチャートを参照して説明する。
図2は送信側計算機PC−Sでのオートネゴシエーションによる通信プロトコルの選択処理手順を示すフローチャートである。なお、既に受信側計算機PC−Rとの通信が行われている状態でもそうでない状態でも同様の処理を行う。
【0039】
まず、第1の処理ステップ(S201)でネゴシエーション通信部12−Sは、受信側計算機PC−Rから送信されたネゴシエーション要求を受信し受付ける。
【0040】
次の第2の処理ステップ(S202)でネゴシエーション通信部12−Sは、受信したネゴシエーション要求をネゴシエーション管理部11−Sに渡す。当該ネゴシエーション管理部11−Sは受け取ったネゴシエーション要求に基づいて、通信プロトコル判定部13−Sに対して通信プロトコル判定要求を行う。この判定要求を受けて通信プロトコル判定部13−Sは通信相手管理部14−Sにネゴシエーション要求を渡す。これにより、通信相手管理部14−Sはネゴシエーション要求中のアドレス情報を通信相手一覧データファイル15−Sに格納する。
【0041】
次の第3の処理ステップ(S203)で通信プロトコル判定部13−Sは、現状の受信側計算機PC−Rの情報により「通信プロトコル自動判定処理」を行い、その判定結果をネゴシエーション管理部11−Sに渡す。なお、この「通信プロトコル自動判定処理」については後で図3を参照して詳しく述べる。
【0042】
続く第4の処理ステップ(S204)でネゴシエーション管理部11−Sは、通信プロトコル判定部13−Sから受け取った判定結果をネゴシエーション情報ファイル16−Sに格納する。
【0043】
次に、第5の処理ステップ(S205)でネゴシエーション管理部11−Sは、判定結果の通信プロトコル情報を含むネゴシエーション応答の通信データを作成し、ネゴシエーション通信部12−Sに渡す。すると、当該ネゴシエーション通信部12−Sは受け取ったネゴシエーション応答を受信側計算機PC−Rのネゴシエーション通信部12−Rに送信する。
【0044】
最後に第6の処理ステップ(S206)において、送信側計算機PC−Sのネゴシエーション管理部11−S、受信側計算機PC−Rのネゴシエーション管理部11−Rは判定結果の通信プロトコルをデータ用通信部18−Sおよびデータ用通信部18−Rにそれぞれ設定する。これにより、通信プロトコル判定結果によるデータ通信が送信側計算機PC−Sおよび受信側計算機PC−R間で実施可能になる。
【0045】
次に、図3のフローチャートを参照して通信プロトコル判定部13−Sで行われる通信プロトコル自動判定処理(図2のS203)の詳細を説明する。
【0046】
図3において、第1の処理ステップ(S301)で通信プロトコル判定部13−Sは、通信相手管理部14−Sから通信相手一覧データファイル15−Sに格納されている受信側計算機PC−Rの情報を取得する。
【0047】
次の第2の処理ステップ(S302)で通信プロトコル判定部13−Sは、受信側計算機PC−Rの計算機台数を確認する。この第2の処理ステップ(S302)での確認結果、受信側計算機PC−Rの台数が1台(=1)であれば、第3の処理ステップ(S303)で通信プロトコルとしてTCP/IPを選択する。ここで、受信側計算機PC−Rの台数が1台の場合、TCP/IPの替わりにユニキャスト(UDP/IP)を選択させることも可能である。その場合は、通信プロトコル一覧データファイル17−Sにユニキャスト(UDP/IP)を追加すれば良い。
【0048】
第2の処理ステップ(S302)での確認の結果、受信側計算機PC−Rの台数が1台より多い場合(>1)、第4の処理ステップ(S304)で受信側計算機PC−Rが同一ネットワークセグメントに属するか否かの確認を行う。
【0049】
この確認の結果、全ての受信側計算機PC−Rが同一ネットワークセグメントに属する場合(Yes)、第5の処理ステップ(S305)では通信プロトコルとしてUDP/IPのブロードキャストを選択する。第3の処理ステップS303での確認の結果、1台でも受信側計算機PC−Rが異なるネットワークセグメントに属する場合(No)、第6の処理ステップ(S306)では通信プロトコルとしてマルチキャストを選択する。
【0050】
このように、第3の処理ステップ(S303)、第5の処理ステップ(S305)あるいは第6の処理ステップ(S306)で通信プロトコルを選択することによって通信プロトコル判定部13−Sによる「通信プロトコル自動判定処理」を終える。
【0051】
図4は、受信側計算機PC−Rでのネゴシエーション処理手順を示すフローチャートである。第1の処理ステップ(S401)で、ネゴシエーション管理部11−Rは自計算機のアドレス情報を格納したネゴシエーション要求を作成し、ネゴシエーション通信部12−Rに渡す。すると、ネゴシエーション通信部12−Rは受け取ったネゴシエーション要求を送信側計算機PC−Sに送信する。
【0052】
続く第2のステップ(S402)で、ネゴシエーション通信部12−Rは送信側計算機PC−Sからのネゴシエーション応答の受信待ちを行い、受信したネゴシエーション応答をネゴシエーション管理部11−Rに渡す。
【0053】
更に次の第3のステップ(S403)では、ネゴシエーション管理部11−Rはネゴシエーション応答に含まれている通信プロトコルをネゴシエーション情報ファイル16−Rに格納し、かつ、データ用通信部18−Rに通信プロトコルを設定する。
【0054】
次に、通信プロトコル自動判定処理について、受信側計算機PC−Rの台数に具体的台数例をあげて説明する。
受信側計算機PC−Rが3台あり、そのうち2台(PC−R1、PC−R2とする)が送信側計算機PC−Sと同一ネットワーク内に存在し、1台(PC−R3とする)が異なるネットワークに存在するものとする。
【0055】
受信側計算機をPC−R1→PC−R2→PC−R3の順に起動する場合、PC−R1がオートネゴシエーションを行うと、送信側計算機PC−Sの通信相手一覧データファイル15−Sに受信側計算機PC−R1の情報が格納される。この場合、受信側計算機PC−Rは1台であるため、送信側計算機PC−Sと受信側計算機PC−R1の間ではTCP/IPによる通信が行われる。
【0056】
次に、受信側計算機PC−R2がオートネゴシエーションを行うと、通信相手一覧データファイル15−Sに受信側計算機PC−R2の情報が格納される。この時点では受信側計算機PC−Rは2台全て同一ネットワークであるため、ブロードキャスト(UDP/IP)による通信が行われる。
【0057】
更に、受信側計算機PC−R3がオートネゴシエーションを行うと、送信側計算機PC−Sの通信相手一覧データファイル15−Sに受信側計算機PC−R3の情報が格納される。この時点では受信側計算機PC−R3台は同一ネットワークにはないため、マルチキャスト(UDP/IP)による通信が行われる。
【0058】
(効果)
以上述べたように、本実施の形態1によれば送信側計算機PC−Sが受信側計算機PC−Rの台数および計算機構成に応じてデータ通信で使用する通信プロトコルを自動的に選択するため、計算機構成に対応した最適な通信プロトコルを使用することができ、これにより計算機負荷、通信負荷およびリソース使用量を低減することができる。
【0059】
また、送信側計算機PC−Sおよび受信側計算機PC−Rで動作するアプリケーションは通信プロトコルを意識することなく通信が行えるため、通信プロトコルに依存した通信処理手順を記述する必要がなく、アプリケーションの生産性の向上が期待できる。
【0060】
(実施の形態2)
次に、本発明の実施の形態2に係る複数計算機間における通信プロトコルの動的選択システムについて図10、図11および図12を参照して説明する。なお実施の形態1と同一の機能部には同一の符号を付け、関連する機能部分には´を付けて重複する説明は適宜省略する。
【0061】
(構成)
図10は本発明の実施の形態2に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
本実施の形態2と前述した実施の形態1との違いを以下述べる。
【0062】
送信側計算機PC−S内に設けられた通信相手管理部14−S´が受信側計算機PC−Rの台数を監視し、受信側計算機PC−Rのネゴシエーション要求等により台数が変化した場合、台数の変化を検出して通信プロトコル判定部13−S´に通信プロトコルの再判定要求を行う。
【0063】
通信プロトコル判定部13−S´はこの再判定要求を受けて変更後の計算機台数および計算機構成により通信プロトコルを決定し、ネゴシエーション管理部11−S´に通信プロトコルの変更通知を行う。ネゴシエーション管理部11−S´は台数変更により通信プロトコルが変更された場合のみ、ネゴシエーション通信部12−Sにより受信側計算機PC−Rのネゴシエーション通信部12−Rに通信プロトコル変更通知を行う。その他の点については実施の形態1と同じなので説明を省略する。
【0064】
(作用)
次に、図10で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図11および図12のフローチャートを参照して説明する。
【0065】
図11は送信側計算機PC−Sでの「通信相手監視処理」を示すフローチャートである。
図11において、第1の処理ステップ(S1101)で通信相手管理部14−Sは、通信相手一覧データファイル15−S中の受信側計算機PC−Rの台数を取得する。
【0066】
次に、第2の処理ステップ(S1102)において、取得した台数によって受信側計算機PC−R側に台数の変化があるか否かを判定する。第2の処理ステップ(S1102)で台数が前回の台数取得時から変化している場合(Yes)は、第3の処理ステップ(S1103)で通信プロトコル判定部13−Sに通信プロトコルの再判定要求を行い、通信プロトコル判定部13−Sは前述した図3に示す通信プロトコル自動判定処理を行う。
【0067】
続いて第4の処理ステップ(S1104)において、通信プロトコル判定部13−Sは判定結果の通信プロトコルをネゴシエーション管理部11−Sに渡し、ネゴシエーション管理部11−Sは判定結果の通信プロトコルとネゴシエーション情報ファイル16−Sに格納済みの通信プロトコルとを比較してプロトコルが変更されているか否かを確認する。
【0068】
前記第4の処理ステップ(S1104)において、プロトコルが変更されていることが確認された場合(Yes)は、続く第5の処理ステップ(S1105)においてネゴシエーション管理部11−Sは変更後の通信プロトコルをネゴシエーション情報ファイル16−Sに格納する。次に第6の処理ステップ(S1106)において変更後の通信プロトコルを含む通信プロトコル変更通知を作成し、ネゴシエーション通信部12−Sにより受信側計算機PC−Rに送信する。
【0069】
最後に第7の処理ステップ(S1107)においてネゴシエーション管理部11−Sは変更後の通信プロトコルをデータ用通信部18−Sに設定する。
【0070】
図12は受信側計算機PC−Rでの通信プロトコル変更処理手順を示すフローチャートである。
図12において、ネゴシエーション通信部12−Rは第1の処理ステップ(S1101)において、通信プロトコル変更通知を受信し、ネゴシエーション管理部11−Rに渡す。次に第2の処理ステップ(S1202)においてネゴシエーション管理部11−Rは既に利用中の通信プロトコルをネゴシエーション情報ファイル16−Rから取得し、変更通知に含まれる通信プロトコルと比較する。第2の処理ステップ(S1202)で通信プロトコルが変更されていると判断した場合(Yes)、第3の処理ステップ(S1203)においてネゴシエーション情報ファイル16−Rに変更後の通信プロトコルを格納し、データ用通信部18に通信プロトコルを設定する。
【0071】
(効果)
本実施の形態2によれば、既に送信側計算機PC−Sと通信を行っている受信側計算機PC−Rが存在する場合、計算機台数が増加したとき送信側計算機PC−Sで台数変更を検出し、検出した時点での計算機構成に対する最適な通信プロトコルを動的に選択することにより、受信側計算機PC−Rの台数変更による送信側計算機PC−Sの計算機負荷、通信負荷、リソース使用量の増加を抑制することができる。
また、通信プロトコルの変更を受信側計算機PC−Rに通知することにより、最適な通信プロトコルを維持しつつアプリケーション間のデータ通信を継続することができる。
【0072】
(実施の形態3)
次に、本実施の形態3について図13、図14、図15、図16、図17、図18および図19を参照して説明する。なお実施の形態1と同一の構成には同一の符号を付し、重複する説明は省略する。
【0073】
(構成)
図13は本発明の実施の形態2に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
本実施の形態3と実施の形態1との違いを以下述べる。
【0074】
受信側計算機PC−Rがネゴシエーション処理を行う際、送信側計算機PC−Sおよび受信側計算機PC−Rで使用する通信プロトコルをネゴシエーション情報ファイル16−S´および16−R´に格納し、ネゴシエーション管理部11−S´および11−R´が使用する通信プロトコルを取り出し、図16に示すような通信プロトコルを含んだネゴシエーション要求データを送信側計算機PC−Sに送信する。
【0075】
送信側計算機PC−Sはネゴシエーション管理部11−S´が受信側計算機PC−Rの通信プロトコルと送信側計算機PC−Sで使用する通信プロトコルを通信プロトコル判定部13−S´に渡し、通信プロトコル判定部13−S´は図17に示した通信プロトコル判定表に従った通信プロトコル自動判定処理を行う。
【0076】
判定の結果、受信側計算機PC−Rの通信プロトコルが利用可能である場合、図18に示すような要求時と同一の通信プロトコルをネゴシエーション応答に含めて正常判定として受信側計算機PC−Rに送信し、受信側計算機PC−Rの通信プロトコルが利用不可である場合、異常判定の情報をネゴシエーション応答に含めて受信側計算機PC−Rに送信し、受信側計算機PC−Rとの通信を行わないようにするか、受信側計算機PC−Rで利用可能な通信プロトコルを選択したものをネゴシエーション応答に含めて受信側計算機PC−Rに送信し、通知された代替の通信プロトコルで通信を行う。
【0077】
ここでの代替通信プロトコルとは、計算機構成に制約されないプロトコル(TCP/IP等)を使用することが望ましい。また、通信プロトコル自動判定処理の際、図19に示すように通信相手一覧データファイルに受信側計算機PC−Rに通信プロトコルを格納し、通信プロトコルを指定していない受信側計算機PC−Rに対してのみ実施の形態1の通信プロトコル自動判定を行う。
【0078】
(作用)
次に、図13で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図14および図15のフローチャートを参照して説明する。
図14は送信側計算機PC−Sでの通信プロトコル選択処理手順を示すフローチャートである。
【0079】
ネゴシエーション管理部11−Sは第1の処理ステップ(S1401)で受信側計算機PC−Rからネゴシエーション要求を受信する。次に第2の処理ステップ(S1402)でネゴシエーション要求から受信側計算機PC−Rの通信プロトコルを取り出し、通信プロトコル判定部13−Sで通信プロトコル判定を実施する。そして、ネゴシエーション情報ファイル16−Sから取り出した送信側計算機PC−Sの通信プロトコルが自動選択かどうか確認する。
【0080】
前記第2の処理ステップ(S1402)で自動選択が確認された場合(Yes)、次の第3の処理ステップ(S1403)で受信側計算機PC−Rの通信プロトコルが自動選択か否かを確認する。第3の処理ステップ(S1403)において受信側計算機PC−Rも自動選択であることが確認された場合(Yes)は、第4の処理ステップ(S1404)で、実施の形態1で実施した「通信プロトコル自動判定処理」を行い、通信プロトコルを決定する。
【0081】
一方、前記第2の処理ステップ(S1402)で送信側計算機PC−Sの通信プロトコルが自動選択でないことが確認された場合(No)、第5の処理ステップ(S1405)で送信側計算機PC−Sの通信プロトコルと受信側計算機PC−Rの通信プロトコルとが同一か否かを確認し、同一(Yes)であれば第6の処理ステップ(S1406)で判定OKとする。
【0082】
しかし、第5の処理ステップ(S1405)で送信側計算機PC−Sの通信プロトコルと受信側計算機PC−Rの通信プロトコルとが一致していない場合(No)、または前記第3の処理ステップ(S1403)で受信側計算機PC−Rの通信プロトコルが自動選択でない場合(No)は、第7の処理ステップ(S1407)において代替通信プロトコルを利用するか否かについて確認する。
【0083】
そして、この第7の処理ステップ(S1407)で代替通信プロトコルを利用する場合(Yes)、次の第8の処理ステップ(S1408)で代替通信プロトコルを選択する。しかし、第7の処理ステップで代替通信プロトコルを利用しない場合(No)、第9の処理ステップ(S1409)で判定NGとする。
【0084】
判定NG以外の判定OKや代替通信プロトコルを選択した場合は、第10の処理ステップ(S1410)で判定結果をネゴシエーション情報ファイル16−Sに格納し、続く第11の処理ステップ(S1411)で受信側計算機PC−Rにネゴシエーション応答を送信する。以上で送信側計算機PC−Sでの通信プロトコル選択処理を終了する。
【0085】
図15は受信側計算機PC−Rでのネゴシエーション処理手順を示すフローチャートである。
ネゴシエーション管理部11−Rは、第1の処理ステップ(S1501)において、使用する通信プロトコルをネゴシエーション情報ファイル16−Rから取り出し、ネゴシエーション要求に通信プロトコルを含めて、送信側計算機PC−Sに送信する。
【0086】
そして、第2の処理ステップ(S1502)で送信側計算機PC−Sからのネゴシエーション応答を受信し、当該ネゴシエーション応答に含まれている通信プロトコルを取り出す。ネゴシエーション管理部11−Rは、第3の処理ステップ(S1503)において、当該取り出した通信プロトコルが有効な値(または代替通信プロトコル選択)か否かを確認し、有効な値であれば(Yes)、第4の処理ステップ(S1504)でネゴシエーション情報ファイル16−R´に通信プロトコルを格納してデータ用通信部18−Rに通信プロトコルを設定し、また、第3の処理ステップ(S1503)で通信プロトコルが有効な値ではないと判定した場合(No)、通信を停止して受信側計算機PC−Rでのネゴシエーション処理を終了する。
【0087】
本実施の形態3の場合、例えば、実施の形態1の作用で示した例で、送信側計算機PC−Sがブロードキャスト、PC−R1がブロードキャスト、PC−R2がTCP/IP、PC−R3がマルチキャストを選択した場合、送信側計算機PC−SとPC−R1の間ではブロードキャストによる通信が行われ、送信側計算機C−SとPC−R2の間ではTCP/IPによる通信が行われ、送信側計算機PC−SとPC−R3の間ではマルチキャストによる通信が行われる。
【0088】
(効果)
以上述べたように、本実施の形態3によれば、送信側計算機PC−Sでは通常のプロトコル自動判定を行う一方、受信側計算機PC−Rで通信プロトコルを指定した場合、指定した通信プロトコルによる通信も可能であるため、低品質、低速の回線による通信を行う場合にTCP/IPのような高信頼な通信プロトコルを明示的に指定することにより、通信プロトコルの自動選択によりUDP/IPのような通信プロトコルが低品質の回線に適さないものが選択され、通信効率が低下することを抑制することができる。
【0089】
また、ローカルネットワーク網(LAN)でUDPでの一斉同報通信を行っている最中に、広域網(WAN)を経由して通信する計算機について明示的にTCP/IPを指定することにより、効率の良い通信と通信効率が悪い回線での高信頼な通信を混在させる等、LANあるいはWANに関係なく様々な形態のネットワークにも対応することができる。
【0090】
(実施の形態4)
次に、本発明の実施の形態4について図20、図21、図22、図24、図23を参照して説明する。なお、実施の形態1と同一の機能部には同一の符号を付し、重複する説明は省略する。
【0091】
(構成)
図20は本発明の実施の形態4に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
この図20は、実施の形態1の図1に加えて送信側計算機PC−Sに通信品質監視部20−Sおよび通信品質一覧データファイル21−Sを設け、また受信側計算機PC−Rに通信品質監視部20−Rを設けたものであり、その他の機能は図1と同じである。
【0092】
図20において、受信側計算機PC−Rの通信品質監視部20−Rは、データ用通信部18−Rにおける通信品質を監視するために、図23に示すようなデータ用通信部18−Rの受信状態データを送信側計算機PC−Sに送信し、送信側計算機PC−Sの通信品質監視部20−Sは受信した通信品質を通信品質一覧データファイル21−Sに格納し、合わせて計算機毎の通信品質を監視する。
【0093】
通信品質一覧データファイル21−Sは図24に示すような計算機情報と受信状態を表形式のデータとして格納している。計算機情報としてはIPアドレスもしくは、通信相手一覧データファイル15の計算機識別番号を利用し、受信状態としては、データ用通信部18−Sでの最終受信時刻を利用する。送信側計算機PC−Sで一定時間送信が行われない場合、生存確認データを定期的に送信し、ある時間間隔以内でデータが受信されるようにする。
【0094】
(作用)
次に図20で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図21および図22のフローチャートを参照して説明する。
図21は受信側計算機PC−Rでの受信状態通知処理手順を示すフローチャートである。
【0095】
図21において、第1の処理ステップ(S2201)で、通信品質監視部20−Rはデータ用通信部18−Rから最新受信時刻を取得し、第2の処理ステップ(S2202)で受信時刻を含めた受信状態データを送信側計算機PC−Sのデータ用通信部18−Sに送信する。
【0096】
図22は送信側計算機PC−Sでの受信状態監視処理手順を示すフローチャートである。
図22において、第1の処理ステップ(S2201)で、通信品質監視部20−Sは受信側計算機PC−Rのデータ用通信部18−Rから送信された受信状態データを受信し、続く第2の処理ステップ(S2202)で受信側計算機PC−Rに対する受信状態データを通信品質一覧データファイル21に格納する。
【0097】
次に、第3の処理ステップ(S2203)において、通信品質監視部20−Sは前記第1の処理ステップ(S2201)で受信した受信状態データが異常か否かを確認し、異常と確認された場合、すなわち一定時間データが受信されていない場合(Yes)、次の第4の処理ステップ(S2204)で通信プロトコル判定部13−Sに当該受信側計算機PC−Rの通信プロトコルを代替通信プロトコルに変更するとともに通信プロトコル再判定要求を行う。すると当該通信プロトコル判定部13−Sは、通信相手管理部14−Sに当該受信側計算機PC−Rの通信プロトコルを代替通信プロトコルに変更要求を行う。
【0098】
第5の処理ステップ(S2205)において、通信相手管理部14−Sは当該受信側計算機PC−Rの通信プロトコルを変更した状態で前述の実施の形態2で説明した「通信相手監視処理」を行い、通信プロトコルの再判定を行う。
【0099】
第6の処理ステップ(S2206)で通信プロトコル判定部13−Sは、ネゴシエーション管理部11−Sに当該受信側計算機PC−Rに対する通信プロトコル変更通知要求を行う。
【0100】
例えば、実施の形態1の作用で示した例で、全ての計算機で自動選択を指定した場合、通常はマルチキャストによる通信が行われるが、送信側計算機PC−Sと受信側計算機PC−R3の間でルータの設定変更等によりマルチキャスト通信が行えなくなった場合、送信側計算機PC−Sの通信品質一覧データファイル21−Sについて、PC−R3の最新受信時刻が更新されなくなるため、一定時間経過後、通信品質監視部20がPC−R3を受信状態異常とみなし、PC−R3の通信プロトコルをTCP/IPに変更した上で、通信プロトコルの再判定を行う。その結果、送信側計算機C−Sと受信側計算機PC−R1、PC−R2の間ではブロードキャストによる通信が行われ、送信側計算機PC−Sと受信側計算機PC−R3の間ではTCP/IPによる通信が行われる。
【0101】
(効果)
本実施の形態4によれば、送信側計算機PC−Sは受信側計算機PC−Rの受信状態を監視し、異常状態が発生した時点で、当該受信側計算機PC−Rの通信プロトコルを現在使用中である通信プロトコル以外の代替通信プロトコルに変更した上で他の計算機の通信プロトコルを再選択させることにより、TCP/IPのような構成に依存しない通信プロトコルを代替通信プロトコルとした場合、ブロードキャストやマルチキャストの一斉同報通信のように、ネットワーク構成により通信が行えないケースが発生し得る通信プロトコルについては、通信異常を検出して代替通信プロトコルに切り替えることにより通信を継続させることが可能である。
【0102】
(実施の形態5)
次に、本発明の実施の形態5について図25、図26、図27、図29、図28を参照して説明する。なお実施の形態4と同一の機能部には同一の符号を付し、関連する部分には´を付けて重複する説明は省略する。
【0103】
(構成)
図25は本発明の実施の形態5に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
本実施の形態5と実施の形態4との違いは通信品質監視部20−S´、通信品質監視部20−R´の監視対象がデータ受信時の通信品質であり、受信側計算機PC−Rでは通信品質監視部20−R´が、データ用通信部18−Rから受信時の通信品質として図28に示すような一定時間内の受信漏れカウントを送信側計算機PC−Sに送信する。
【0104】
送信側計算機PC−Sでは通信品質監視部20−S´が受信した通信品質データを通信品質一覧データファイル21−Sに格納する。当該通信品質一覧データファイル21−Sは図29に示すように、受信時刻に加えて受信漏れカウントを格納する。
【0105】
通信品質監視部20−S´は、通信品質が通信中の通信プロトコルの要求品質を満たさないことを確認した場合、通信プロトコル判定部13−S´に代替通信プロトコルへの変更および通信プロトコル再選択要求を行い、通信プロトコル再選択処理の後に、通信プロトコル判定部13−S´が、ネゴシエーション管理部11−Sに通信プロトコル変更通知の送信要求を行い、受信側計算機PC−Rに通信プロトコル変更通知を送信する。
【0106】
(作用)
次に、図25で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図26および図27のフローチャートを参照して説明する。
図26は受信側計算機PC−Rでの通信品質通知処理手順を示すフローチャートである。
【0107】
図26の第1の処理ステップ(S2601)において、通信品質監視部20−R´は、データ用通信部18−Rでの一定時間あたりの受信漏れ回数を取得し、続いて第2の処理ステップにおいて、通信品質データを送信側計算機PC−Sの通信品質監視部20−Sに送信する(S2602)。
【0108】
図27は送信側計算機PC−Sでの通信品質監視処理手順を示すフローチャートである。
通信品質監視部20−Sは第1の処理ステップ(S2701)において、受信側計算機PC−Rから送信された通信品質データを受信し、続いて第2の処理ステップ(S2702)において、受信側計算機PC−Rに対する通信品質を通信品質一覧データファイル21に格納する。
【0109】
次に、第3の処理ステップ(S2703)において、通信品質一覧データファイル21中の第1の処理ステップ(S2701)で受信した通信品質が現在使用中の通信プロトコルが満たす必要のある値であるか否かを確認する。
【0110】
第3の処理ステップ(S2703)において通信品質に異常がないと判断された場合(No)は、送信側計算機PC−Sでの通信品質監視処理は終了し、通信品質異常すなわち一定時間内のデータ受信漏れ回数が許容範囲を超えたと判断された場合(Yes)は、第4の処理ステップ(S2704)で通信プロトコル判定部13−Sに対して当該受信計算機の代替通信プロトコルへの変更および通信プロトコル再判定要求を行う。そして通信プロトコル判定部13−Sはこれを受けて通信相手管理部14−Sに当該受信側計算機PC−Rの通信プロトコルを代替通信プロトコルに変更要求を行う。
【0111】
続く第5の処理ステップ(S2705)において、当該受信側計算機PC−Rの通信プロトコルを変更した状態で、実施の形態2で説明した「通信相手監視処理」を行い、通信プロトコルの再判定を行う。
【0112】
最後の第6の処理ステップ(S2706)において、通信プロトコル判定部13−Sは、ネゴシエーション管理部11−Sに当該受信側計算機PC−Rに対する通信プロトコル変更通知要求を行う。
【0113】
例えば、実施の形態1の作用の項で説明した例で、全ての計算機で自動選択を指定した場合、通常はマルチキャストによる通信が行われるが、送信側計算機PC−Sと受信側計算機PC−R3の間に介在するルータの通信スループットが低い場合、受信側計算機PC−R3のデータ用通信部18−Rでデータ受信漏れが頻発し、送信側計算機PC−Sの通信品質一覧データファイル21−Sについて、受信側計算機PC−R3の受信漏れ回数が増加する。
【0114】
その結果、受信漏れカウント値がマルチキャスト通信を行うための通信品質で指定してある上限値を超えるため、通信品質監視部20−Rが受信側計算機PC−R3を通信品質異常とみなし、受信側計算機PC−R3の通信プロトコルをTCP/IPに変更した上で、通信プロトコルの再判定を行う。その結果、送信側計算機PC−Sと受信側計算機PC-R1、PC−R2の間ではブロードキャストによる通信が行われ、送信側計算機PC−SとPC−R3の間ではTCP/IPによる通信が行われる。
【0115】
(効果)
本実施の形態5によれば、送信側計算機PC−Sは受信側計算機PC−Rの通信品質を監視し、通信品質が異常に変化した時点で、当該受信側計算機PC−Rの通信プロトコルを現在使用中である通信プロトコル以外の代替通信プロトコルに変更した上で他の計算機の通信プロトコルを再選択させることにより、TCP/IPのような通信品質が低い回線でも高信頼通信を行う通信プロトコルを代替通信プロトコルとした場合、送信側計算機PC−Sの通信品質が悪いネットワークに属する計算機との通信において、UDP/IPのような低信頼な通信プロトコルが選択された場合、通信品質の低下を検出し、TCP/IPのような高信頼な通信プロトコルに切り替えることにより、通信効率の低下をリカバリすることが可能である。
【0116】
(実施の形態6)
次に、本発明の実施の形態6について図30、図31、図32、図33を参照して説明する。なお実施例1と同一の構成には同一の符号を付し、重複する説明は省略する。
【0117】
(構成)
図30は本発明の実施の形態6に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
本実施の形態6と実施の形態1との違いは、受信側計算機PC−Rの起動時にネゴシエーション管理部11−R´が図33に示すように送信側計算機PC−Sの候補一覧が追加されたネゴシエーション情報ファイル16−Rから取得した送信側計算機PC−Sの候補について、候補の中から順に送信側計算機PC−Sを問い合わせにより探す処理が追加されることである。
【0118】
ネゴシエーション管理部11−R´は送信側計算機PC−Sの候補の各エントリに対して問い合わせ情報を送信し、送信側計算機PC−Sが受信した問い合わせ情報に対する応答を返し、受信側計算機PC−Rのネゴシエーション管理部11−R´は応答を受け取った計算機を送信側計算機PC−Sと認識し、以後、ネゴシエーション処理を行う。
【0119】
(作用)
次に、図30で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図31のフローチャートを参照して説明する。
図31は受信側計算機PC−Rにおける送信側計算機問い合わせ処理手順を示すフローチャートである。
【0120】
ネゴシエーション管理部11−R´は、第1の処理ステップ(S3101)においてネゴシエーション情報ファイル16−Rから送信側計算機C−Sの候補の一覧を取得し、続いて第2の処理ステップ(S3102)において候補が存在するか否かを判定する。ネゴシエーション管理部11−R´は、この第2の処理ステップ(S3102)で候補が存在すると判断した場合(Yes)、取得した全候補について第3の処理ステップ(S3103)で、通信可否の問い合わせ情報をネゴシエーション通信部12−Rから送信し、続いて第4の処理ステップ(S3104)において問い合わせに関する応答をネゴシエーション通信部12−Rで受信する。
【0121】
第5の処理ステップ(S3105)において計算機から応答があり、かつ通信可能か否かを判定し、通信可能な計算機からの応答を受信した場合(Yes)、残りの候補については問い合わせを行わない。
【0122】
第6の処理ステップ(S3106)において全ての候補について問い合わせを行った結果、通信可能な送信側計算機PC−Sがあるか否かを判定し、通信可能な送信側計算機PC−Sからの応答があった場合(Yes)、第7の処理ステップ(S3107)で当該送信側計算機PC−Sに対して前述した実施の形態1の「ネゴシエーション処理」を実施する。
【0123】
しかしながら、第2の処理ステップ(S3102)において通信可能な計算機が存在しない(No)、または第6の処理ステップ(S3106)において送信側計算機PC−Sの候補が存在しない場合(No)、第8の処理ステップ(S3108)において通信開始は失敗となり、送信側計算機に対する問い合わせ処理は終了する。
【0124】
図32は送信側計算機PC−Sにおける通信可否問い合わせ受付処理手順を示すフローチャートである。
ネゴシエーション管理部11−Sは、第1の処理ステップ(S3201)においてネゴシエーション通信部12−R、12−Sを介して受信側計算機PC−Rからの通信可否問い合わせ情報を受信し、第2の処理ステップ(S3202)で問い合わせに対する応答情報を生成、受信側計算機PC−Rに送信し、通信可否問い合わせ受付処理を終了する。
【0125】
(効果)
本実施の形態6によれば、受信側計算機PC−Rであらかじめ送信側計算機PC−Sの候補一覧を登録し、計算機起動時に受信側計算機PC−Rから送信側計算機PC−Sの候補に問い合わせ情報を送信し、送信側計算機PC−Sからの応答を受信することにより、計算機が配置されているネットワーク構成に関係なく受信側計算機PC−Rが送信側計算機PC−Sを認識することができる。
【0126】
(実施の形態7)
次に、本発明の実施の形態7について図34、図35、図36および図37を参照して説明する。なお実施の形態1と同一の構成には同一の符号を付し、重複する説明は省略する。
【0127】
(構成)
図34は本発明の実施の形態7に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
本実施の形態7と実施の形態1との違いは、受信側計算機PC−Rの起動時に、ネゴシエーション管理部11−R´が図37に示す送信側計算機PC−Sの探索用同報通信アドレスが追加されたネゴシエーション情報ファイル16−Rから取得した送信側計算機PC−Sの探索用同報通信アドレスに対して送信側計算機PC−Sの探索情報を一斉同報通信により送信し、送信側計算機PC−Sからの応答により送信側計算機PC−Sを特定する処理が追加されることである。
【0128】
ネゴシエーション管理部11−R´は送信側計算機PC−Sの探索用同報通信アドレスに対して送信側計算機PC−S探索情報を送信し、送信側計算機PC−Sが受信した探索情報に対する応答を返し、受信側計算機PC−Rのネゴシエーション管理部11−R´は応答を受け取った計算機を送信側計算機PC−Sと認識し、以後、ネゴシエーション処理を行う。
【0129】
(作用)
次に、図34で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について、図35および図36のフローチャートを参照して説明する。
図35は受信側計算機PC−Rでの送信側計算機探索処理手順を示すフローチャートである。
【0130】
ネゴシエーション管理部11−Rは、第1の処理ステップ(S3501)において、ネゴシエーション情報ファイル16−Rから送信側計算機探索用同報通信アドレスを取得する。次に第2の処理ステップ(S3502)において、探索用アドレスが存在すると判定された場合(Yes)、第3の処理ステップ(S3503)において同報通信により送信側計算機探索情報をネゴシエーション通信部12−Rから送信する。
【0131】
そして、第4の処理ステップ(S3504)において探索情報に対する送信側計算機からの応答をネゴシエーション通信部12−Rで受信する。
【0132】
ネゴシエーション管理部11−Rは、第5の処理ステップ(S3505)で探索情報に対する応答の有無を判定し、探索情報に対する応答があった場合(Yes)、次の第6の処理ステップ(S3506)で当該送信側計算機PC−Sに対する実施の形態1の「ネゴシエーション処理」を実施する。
【0133】
しかし、前述した第2の処理ステップ(S3502)で探索アドレスが存在しない場合(No)、または第5の処理ステップ(S3505)で探索情報に対する応答がなかった場合(No)は、第7の処理ステップ(S3507)で通信開始失敗となり、受信側計算機PC−Rでの送信側計算機探索処理を終了する。
【0134】
図36は送信側計算機PC−Sにおける探索要求応答処理手順を示すフローチャートである。
送信側計算機PC−Sのネゴシエーション管理部11−Sは、第1の処理ステップ(S3601)において受信側計算機PC−Rから送信された送信側計算機探索情報をネゴシエーション通信部12−Sを介して受信する。そして、次の第2の処理ステップ(S3602)で探索情報に対する応答情報を生成し、ネゴシエーション通信部12−Sを介して受信側計算機PC−Rに送信し、探索要求応答処理を終了する。
【0135】
(効果)
本実施の形態によれば、受信側計算機PC−Rで送信側計算機PC−Sの探索用同報通信アドレスを登録し、計算機起動時に一斉同報通信により送信側計算機PC−Sに対する問い合わせを実施し、送信側計算機PC−Sからの応答を受信することにより、受信側計算機PC−Rはどの計算機が送信側計算機PC−Sであるかを意識せずに送信側計算機PC−Sを認識することができる。
【0136】
(実施の形態8)
次に、本発明の実施の形態8について図38、図39、図40、図41および図42を参照して説明する。なお実施の形態4と同一の構成には同一の符号を付し、重複する説明は省略する。
【0137】
(構成)
図38は、本実施の形態8に係る複数計算機間における通信プロトコルの動的選択システム構成図である。
【0138】
図38は、前述の実施の形態4に係る図20に加えて、受信側計算機PC−Rに対して通信プロトコル判定部13−Rと、通信相手管理部14−Rと、通信相手一覧データファイル15−Rと、通信プロトコル一覧データファイル17−Rと、通信品質一覧データファイル21−Rとを構成要素として設けるようにしたものである。
【0139】
すなわち、送信側計算機PC−Sと受信側計算機PC−Rの両方で実施の形態4の構成を採用し、しかも双方向通信を行うために図39のネゴシエーション要求の通信データ例、図40のネゴシエーション応答の通信データ例、図41の受信状態通知の通信データ例および図42の通信品質通知の通信データ例で示すように、ネゴシエーション要求とネゴシエーション応答と受信状態通知データと通信品質通知データに送信側計算機C−Sのアドレス情報と通信識別情報を付加してネゴシエーション処理を行うようにしている。
【0140】
ここでの通信識別情報とは、データ用通信部18−Sおよび18−Rで利用している情報で、アプリケーション間の通信毎に定義するものであり、具体的にはTCP/IPやUDP/IPでのポート番号を利用する。
【0141】
(作用)
次に、図38で示した複数計算機間における通信プロトコルの動的選択システムの通常時の動作について説明する。
前記実施の形態1で説明した「ネゴシエーション処理」において、受信側計算機PC−Rがネゴシエーション要求を行う際、ネゴシエーション管理部11−Rはネゴシエーション要求に送信側計算機PC−Sのアドレス情報およびデータ用通信部18−Rで使用している通信識別情報を付加する。
【0142】
また、実施の形態1での「通信プロトコル選択処理」において、送信側計算機PC−Sがネゴシエーション応答を送信する際、ネゴシエーション要求と同一の送信側計算機PC−Sのアドレス情報と通信識別情報を付加する。
【0143】
そして、実施の形態4での「受信状態通知処理」および実施の形態5での「通信品質通知処理」についてもネゴシエーション要求と同様に、受信側計算機PC−Rの通信品質監視部20−Rは送信側計算機PC−Sのアドレス情報と通信識別情報を付加したものを送信する。
【0144】
(効果)
本実施の形態8によれば、受信側計算機PC−Rと送信側計算機PC−Sとを同一構成にし、ネゴシエーション要求、ネゴシエーション応答、受信状態通知、通信品質通知の通信データに送信側計算機PC−Sのアドレス情報と通信識別情報を付加したものを送信することにより、受信側計算機PC−Rを送信側計算機PC−Sとみなすことによる双方向通信が可能であるため、送信側計算機PC−Sと受信側計算機PC−Rの間でn対nの通信を行うことができる。
【0145】
また、送信側計算機PC−Sでは送信処理、受信側計算機PC−Rでは受信処理といった計算機に依存したアプリケーションを作成する必要がないため、アプリケーションの生産性も向上させることができる。
【図面の簡単な説明】
【0146】
【図1】本発明の実施の形態1に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図2】本発明の実施の形態1に係る複数計算機間における通信プロトコル選択処理手順を示すフローチャート。
【図3】本発明の実施の形態1に係る複数計算機間における通信プロトコル自動判定処理手順を示すフローチャート。
【図4】本発明の実施の形態1に係るネゴシエーション処理手順を示すフローチャート。
【図5】本発明の実施の形態1に係るネゴシエーション要求での通信データの一例を示す図。
【図6】本発明の実施の形態1に係るネゴシエーション応答での通信データの一例を示す図。
【図7】本発明の実施の形態1に係る通信相手一覧データファイルのデータ構造の一例を示す図。
【図8】本発明の実施の形態1に係るネゴシエーション情報のデータ構造の一例を示す図。
【図9】本発明の実施の形態1に係る複数計算機間における通信プロトコル一覧データファイルのデータ構造の一例を示す図。
【図10】本発明の実施の形態2に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図11】本発明の実施の形態2に係る通信相手監視処理手順を示すフローチャート。
【図12】本発明の実施の形態2に係る複数計算機間における通信プロトコル変更処理手順を示すフローチャート。
【図13】本発明の実施の形態3に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図14】本発明の実施の形態3に係る複数計算機間における通信プロトコル選択処理手順を示すフローチャート。
【図15】本発明の実施の形態3に係るネゴシエーション処理手順を示すフローチャート。
【図16】本発明の実施の形態3に係るネゴシエーション要求の通信データの一例を示す図。
【図17】本発明の実施の形態3に係るネゴシエーション判定表のデータ構造の一例を示す図。
【図18】本発明の実施の形態3に係るネゴシエーション応答の通信データの一例を示す図。
【図19】本発明の実施の形態3に係る通信相手一覧データファイルのデータ構造の一例を示す図。
【図20】本発明の実施の形態4に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図21】本発明の実施の形態4に係る受信状態通知処理手順を示すフローチャート。
【図22】本発明の実施の形態4に係る受信状態監視処理手順を示すフローチャート。
【図23】本発明の実施の形態4に係る実施の形態4に係る受信状態通知の通信データの一例を示す図。
【図24】本発明の実施の形態4に係る通信品質一覧データファイルのデータ構造の一例を示す図。
【図25】本発明の実施の形態5に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図26】本発明の実施の形態5に係る通信品質通知処理手順を示すフローチャート。
【図27】本発明の実施の形態5に係る通信品質監視処理手順を示すフローチャート。
【図28】本発明の実施の形態5に係る通信品質通知の通信データの一例を示す図。
【図29】本発明の実施の形態5に係る通信品質一覧データファイルのデータ構造の一例を示す図。
【図30】本発明の実施の形態6に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図31】本発明の実施の形態6に係る送信側計算機問い合わせ処理手順を示すフローチャート。
【図32】本発明の実施の形態6に係る通信可否問い合わせ受付処理手順を示すフローチャート。
【図33】本発明の実施の形態6に係るネゴシエーション情報のデータ構造の一例を示す図。
【図34】本発明の実施の形態7に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図35】本発明の実施の形態7に係る送信側計算機探索処理手順を示すフローチャート。
【図36】本発明の実施の形態7に係る探索要求応答処理手順を示すフローチャート。
【図37】本発明の実施の形態7に係るネゴシエーション情報のデータ構造の一例を示す図。
【図38】本発明の実施の形態8に係る複数計算機間における通信プロトコルの動的選択システム構成図。
【図39】本発明の実施の形態8に係るネゴシエーション要求の通信データの一例を示す図。
【図40】本発明の実施の形態8に係るネゴシエーション応答の通信データの一例を示す図。
【図41】本発明の実施の形態8に係る受信状態通知の通信データの一例を示す図。
【図42】本発明の実施の形態8に係る通信品質通知の通信データの一例を示す図。
【符号の説明】
【0147】
11…ネゴシエーション管理部、12…ネゴシエーション通信部、13…通信プロトコル判定部、14…通信相手管理部、15…通信相手一覧データファイル、16…ネゴシエーション情報ファイル、17…通信プロトコル一覧データファイル、18…データ用通信部、19…アプリケーション、20…通信品質監視部、21…通信品質一覧データファイル。

【特許請求の範囲】
【請求項1】
ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための複数計算機間における通信プロトコルを選択する方法であって、
前記送信側計算機および前記受信側計算機に対してデータ通信手段、ネゴシエーション管理手段、ネゴシエーション通信手段およびアプリケーションを共通して設けるとともに、前記送信側計算機に対して更に通信プロトコル判定手段および通信相手管理手段を付加するようにし、
受信側計算機の前記ネゴシエーション管理手段は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信手段にネゴシエーション要求を通知し、当該ネゴシエーション通信手段より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信手段に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、
受信側計算機の前記ネゴシエーション通信手段は、前記ネゴシエーション管理手段から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信手段に送信し、送信側計算機の当該ネゴシエーション通信手段から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理手段に通知し、
送信側計算機の前記ネゴシエーション管理手段は、前記ネゴシエーション通信手段から受け取ったネゴシエーション要求を前記通信プロトコル判定手段に通知して当該通信プロトコル判定手段から使用する通信プロトコルを受け取り、前記データ通信手段に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用する通信プロトコルを通知するために前記ネゴシエーション通信手段にネゴシエーション応答要求を通知し、
送信側計算機の前記ネゴシエーション通信手段は、受信側計算機の前記ネゴシエーション通信手段から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理手段に通知し、前記ネゴシエーション管理手段からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信手段に対してネゴシエーション応答を送信し、
前記通信プロトコル判定手段は、送信側計算機の前記ネゴシエーション管理手段からネゴシエーション要求を受け取り、前記通信相手管理手段に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理手段から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理手段に通知し、
前記通信相手管理手段は、前記通信プロトコル判定手段からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定手段からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定手段に渡し、
送信側計算機の前記データ通信手段は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信手段に対してデータを送信し、前記ネゴシエーション管理手段からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、
受信側計算機の前記データ通信手段は、送信側計算機の前記データ通信手段から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理手段からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする複数計算機間における通信プロトコルの動的選択方法。
【請求項2】
送信側計算機の前記通信相手管理手段は、前記ネゴシエーション通信手段の受信側計算機との通信状態を監視し、受信側計算機の台数の変化を検出した場合、前記通信相手管理手段は受信側計算機の一覧データを更新し、前記通信プロトコル判定手段に通信プロトコルの再判定要求を行い、
送信側計算機の前記通信プロトコル判定手段は、最新の受信側計算機一覧データから通信プロトコルを再選択し、
送信側計算機の前記ネゴシエーション管理手段は、前記通信プロトコルの再選択により通信プロトコルが変更された場合、前記データ通信手段に通信プロトコル設定要求を行うとともに、前記ネゴシエーション通信手段に通信プロトコル変更通知を行い、
受信側計算機の前記ネゴシエーション通信手段は、送信側計算機から送信されてきた通信プロトコル変更通知を前記ネゴシエーション管理手段に通知し、
受信側計算機の前記ネゴシエーション管理手段は、通信プロトコル変更通知が既に選択された通信プロトコルと異なる場合、前記データ通信手段に対して通信プロトコル設定要求を行うことを特徴とする請求項1記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項3】
受信側計算機で使用したい通信プロトコルを指定した場合、受信側計算機の前記ネゴシエーション管理手段は、ネゴシエーション要求として受信側計算機のアドレス情報に加えて通信プロトコルも送信し、
送信側計算機の前記通信プロトコル判定手段は、受信側計算機のアドレス情報及び通信プロトコルにより指定した通信プロトコルが利用可能か否か判定し、利用可能であれば指定した通信プロトコルを、利用不可能であれば利用可能な代替通信プロトコルをネゴシエーション応答として受信側計算機に送信することを特徴とする請求項2記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項4】
送信側計算機および受信側計算機は、双方間の通信品質を監視する通信品質監視手段をそれぞれ有し、
受信側計算機の前記通信品質監視手段は、前記データ通信手段のデータ受信状態を送信側計算機の前記通信品質監視手段に送信し、
送信側計算機の前記通信品質監視手段は、受信したデータ受信状態を通信品質一覧データファイルに格納し、データが届いていない受信側計算機を発見した場合、前記通信プロトコル判定部に対して受信側計算機を除いた計算機台数による通信プロトコルの再判定要求を行い、
前記通信プロトコル判定部は、再選択した通信プロトコルをネゴシエーション管理手段に通知することを特徴とする請求項2記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項5】
受信側計算機の前記通信品質監視手段は、前記データ通信手段のデータ受信時の通信品質を送信側計算機に送信し、選択された通信プロトコルで必要な通信品質を満たさない受信側計算機の通信プロトコルを、通信品質条件を満たす通信プロトコルに変更し、残りの受信側計算機に対して通信プロトコルの再選択を行うことを特徴とする請求項4の複数計算機間における通信プロトコルの動的選択方法。
【請求項6】
受信側計算機は、ネゴシエーション情報に送信側計算機の候補となる計算機の一覧データを格納し、
受信側計算機の前記ネゴシエーション管理手段は、送信側計算機候補に送信側計算機か否かを問い合わせ、送信側計算機候補が問い合わせに対して送信側計算機であることを通知することにより、受信側計算機が送信側計算機を認識するようにしたことを特徴とする請求項1記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項7】
受信側計算機の前記ネゴシエーション管理手段は、前記ネゴシエーション通信手段に送信側計算機の探索要求を行い、当該ネゴシエーション通信手段が同報通信により送信側計算機の探索要求を送信し、探索要求を受信した送信側計算機のネゴシエーション通信手段が応答することにより、受信側計算機が送信側計算機を認識することを特徴とする請求項1記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項8】
受信側計算機に通信プロトコル判定手段および通信相手管理手段を付加し、
前記ネゴシエーション通信部での通信および前記通信品質監視部での通信において送信側計算機の情報を含み、送信側計算機の情報が一致する場合に前記ネゴシエーション管理部が通信プロトコル選択またはネゴシエーション要求を行うことを特徴とする請求項1、請求項4および請求項5のいずれか1項に記載の複数計算機間における通信プロトコルの動的選択方法。
【請求項9】
ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための通信プロトコルを選択するようにしたシステムであって、
前記送信側計算機および前記受信側計算機には共通してデータ通信部、ネゴシエーション管理部、ネゴシエーション通信部およびアプリケーションを設けるとともに、前記送信側計算機に対して更に通信プロトコル判定部および通信相手管理部を付加するようにし、
前記受信側計算機のネゴシエーション管理部は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信部にネゴシエーション要求を通知し、当該ネゴシエーション通信部より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信部に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、
前記受信側計算機のネゴシエーション通信部は、前記ネゴシエーション管理部から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信部に送信し、当該送信側計算機のネゴシエーション通信部から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理部に通知し、
前記送信側計算機のネゴシエーション管理部は、前記ネゴシエーション通信部から受け取ったネゴシエーション要求を通信プロトコル判定部に通知して当該通信プロトコル判定部から使用する通信プロトコルを受け取り、前記データ通信部に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用するプロトコルを通知するためにネゴシエーション通信部にネゴシエーション応答要求を通知し、
前記送信側計算機のネゴシエーション通信部は、受信側計算機の前記ネゴシエーション通信部から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理部に通知し、前記ネゴシエーション管理部からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信部へネゴシエーション応答を送信し、
前記通信プロトコル判定部は、送信側計算機の前記ネゴシエーション管理部からネゴシエーション要求を受け取り、前記通信相手管理部に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理部から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理部に通知し、
前記通信相手管理部は、前記通信プロトコル判定部からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定部からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定部に渡し、
送信側計算機の前記データ通信部は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信部に対してデータを送信し、前記ネゴシエーション管理部からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、
受信側計算機の前記データ通信部は、送信側計算機の前記データ通信部から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理部からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする複数計算機間における通信プロトコルの動的選択システム。
【請求項10】
送信側計算機の前記通信相手管理部は、前記ネゴシエーション通信部の受信側計算機との通信状態を監視し、受信側計算機の台数の変化を検出した場合、前記通信相手管理部は受信側計算機の一覧を更新し、前記通信プロトコル判定部に通信プロトコルの再判定要求を行い、
送信側計算機の前記通信プロトコル判定部は、最新の受信側計算機一覧データから通信プロトコルを再選択し、
送信側計算機の前記ネゴシエーション管理部は、前記通信プロトコルの再選択により通信プロトコルが変更された場合、前記データ通信部に通信プロトコル設定要求を行うとともに、前記ネゴシエーション通信部に通信プロトコル変更通知を行い、
受信側計算機の前記ネゴシエーション通信部は、送信側計算機から送信されてきた通信プロトコル変更通知を前記ネゴシエーション管理部に通知し、
受信側計算機の前記ネゴシエーション管理部は、通信プロトコル変更通知が既に選択された通信プロトコルと異なる場合、前記データ通信部に対して通信プロトコル設定要求を行うことを特徴とする請求項9記載の複数計算機間における通信プロトコルの動的選択システム。
【請求項11】
受信側計算機で使用したい通信プロトコルを指定した場合、受信側計算機の前記ネゴシエーション管理部は、ネゴシエーション要求として受信側計算機のアドレス情報に加えて通信プロトコルも送信し、
前記送信側計算機の通信プロトコル判定部は、受信側計算機のアドレス情報及び通信プロトコルにより指定した通信プロトコルが利用可能か否か判定し、利用可能であれば指定した通信プロトコルを、利用不可能であれば利用可能な代替通信プロトコルをネゴシエーション応答として受信側計算機に送信することを特徴とする請求項10記載の複数計算機間における通信プロトコルの動的選択システム。
【請求項12】
送信側計算機および受信側計算機は、双方間の通信品質を監視する通信品質監視部をそれぞれ有し、
受信側計算機の前記通信品質監視部は、前記データ通信部のデータ受信状態を送信側計算機の前記通信品質監視部に送信し、
送信側計算機の前記通信品質監視部は、受信したデータ受信状態を通信品質一覧データファイルに格納し、データが届いていない受信側計算機を発見した場合、前記通信プロトコル判定部に当該受信側計算機を除いた計算機台数による通信プロトコルの再判定要求を行い、
前記通信プロトコル判定部が、再選択した通信プロトコルをネゴシエーション管理部に通知することを特徴とする請求項10記載の複数計算機間における通信プロトコルの動的選択システム。
【請求項13】
受信側計算機は、ネゴシエーション情報に送信側計算機の候補となる計算機の一覧データを格納し、
受信側計算機の前記ネゴシエーション管理部は、送信側計算機候補に送信側計算機か否かを問い合わせ、前記送信側計算機候補が問い合わせに対して送信側計算機であることを通知することにより、受信側計算機が送信側計算機を認識するようにしたことを特徴とする請求項9記載の複数計算機間における通信プロトコルの動的選択システム。
【請求項14】
ネットワーク上に配置された複数台の計算機のうち、送信側計算機となる一台の計算機および受信側計算機となる一台以上の計算機にそれぞれ共通するデータ通信手段、ネゴシエーション管理手段、ネゴシエーション通信手段およびアプリケーションを設けるとともに、前記送信側計算機に対して更に通信プロトコル判定手段および通信相手管理手段を付加するようにし、前記送信側計算機となる一台の計算機から受信側計算機となる一台以上の計算機に同報通信をするための通信プロトコルを選択するプログラムであって、
受信側計算機の前記ネゴシエーション管理手段は、通信を開始するとき、送信側計算機で使用する通信プロトコルを問い合わせるために、前記ネゴシエーション通信手段にネゴシエーション要求を通知し、当該ネゴシエーション通信手段より送信側計算機から送信された通信プロトコルを受け取り、前記データ通信手段に当該受け取った通信プロトコルの通信プロトコル設定要求を行い、
受信側計算機の前記ネゴシエーション通信手段は、前記ネゴシエーション管理手段から受け取ったネゴシエーション要求を送信側計算機の前記ネゴシエーション通信手段に送信し、当該送信側計算機のネゴシエーション通信手段から送信されてきたネゴシエーション応答を受信し、当該受信したネゴシエーション応答を前記ネゴシエーション管理手段に通知し、
送信側計算機の前記ネゴシエーション管理手段は、前記ネゴシエーション通信手段から受け取ったネゴシエーション要求を前記通信プロトコル判定手段に通知して当該通信プロトコル判定手段から使用する通信プロトコルを受け取り、前記データ通信手段に対して使用する通信プロトコルの通信プロトコル設定要求を行い、受信側計算機に使用する通信プロトコルを通知するために前記ネゴシエーション通信手段にネゴシエーション応答要求を通知し、
送信側計算機の前記ネゴシエーション通信手段は、受信側計算機の前記ネゴシエーション通信手段から送信されてくるネゴシエーション要求を受信し、当該ネゴシエーション要求を前記ネゴシエーション管理手段に通知し、前記ネゴシエーション管理手段からのネゴシエーション応答要求を受け取り、前記受信側計算機のネゴシエーション通信手段に対してネゴシエーション応答を送信し、
前記通信プロトコル判定手段は、送信側計算機の前記ネゴシエーション管理手段からネゴシエーション要求を受け取り、前記通信相手管理手段に対してネゴシエーション要求に含まれる受信側計算機の情報を通知して、当該通信相手管理手段から受信側計算機の一覧データを取得し、当該一覧データの受信側計算機の計算機台数および計算機構成によるルールに従って通信プロトコルを選択し、当該選択した通信プロトコルを前記ネゴシエーション管理手段に通知し、
前記通信相手管理手段は、前記通信プロトコル判定手段からの受信側計算機の情報を受け取って受信側計算機の一覧データを更新し、前記通信プロトコル判定手段からの受信側計算機一覧データ取得要求に対して受信側計算機の一覧データを前記通信プロトコル判定手段に渡し、
送信側計算機の前記データ通信手段は、前記アプリケーションからのデータ送信要求を受け取り、受信側計算機の前記データ通信手段に対してデータを送信し、前記ネゴシエーション管理手段からの通信プロトコル設定要求を受け取った場合、データ送信のために使用する通信プロトコルの切り替えを行い、
受信側計算機の前記データ通信手段は、送信側計算機の前記データ通信手段から送信されてきたデータを受信し、前記アプリケーションに受信データを渡し、前記ネゴシエーション管理手段からの通信プロトコル変更通知を受け取った場合、データ受信のために使用する通信プロトコルの切り替えを行うことを特徴とする複数計算機間における通信プロトコルの動的選択プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate


【公開番号】特開2007−310780(P2007−310780A)
【公開日】平成19年11月29日(2007.11.29)
【国際特許分類】
【出願番号】特願2006−141317(P2006−141317)
【出願日】平成18年5月22日(2006.5.22)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】