(57)【特許請求の範囲】
【請求項１】
複数の受信装置と、該複数の受信装置とネットワーク上で接続され、ユーザの操作部に対する操作に基づいて、前記複数の受信装置の中の所定の受信装置に所定のデータを送信する送信装置と、を有するデータ転送システムにおいて、
前記送信装置は、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを作成し、該送信要求メッセージを前記複数の受信装置に送信する送信要求部を備え、
前記複数の受信装置はそれぞれ、
前記送信装置から前記送信要求メッセージを受信する要求受信部と、
前記送信要求メッセージに含まれる前記受信装置特定情報および前記通信タスク特定情報に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択し、選択した通信タスクの動作を抑止する負荷抑止部と、を備える
データ転送システム。
【請求項２】
前記負荷抑止部は、前記受信装置特定情報で特定される前記所定の受信装置が自機である場合に、前記通信タスク特定情報で特定される通信タスク以外の自機で実行中の通信タスクの動作を抑止する
請求項１に記載のデータ転送システム。
【請求項３】
前記負荷抑止部は、前記受信装置特定情報で特定される前記所定の受信装置が自機でない場合に、自機で実行中の通信タスクの中で、前記受信装置あるいは前記送信装置と通信を行っている通信タスクの動作を抑止する
請求項１または２に記載のデータ転送システム。
【請求項４】
前記複数の受信装置は、それぞれ
前記送信装置から前記所定の受信装置に前記所定のデータが送信された後に、自機で抑止中の通信タスクの抑止を解除する負荷抑止解除部を、さらに備える
請求項１〜３のいずれかに記載のデータ転送システム。
【請求項５】
前記複数の受信装置は、それぞれ
自機で実行中の通信タスクを管理する通信タスク管理テーブルを、さらに備える
請求項１〜４のいずれかに記載のデータ転送システム。
【請求項６】
前記送信要求メッセージの内容に応じて、前記複数の受信装置で実行中の通信タスクの動作が動的に抑止される
請求項１〜５のいずれかに記載のデータ転送システム。
【請求項７】
複数の受信装置とネットワーク上で接続され、ユーザの操作部に対する操作に基づいて、前記複数の受信装置の中の所定の受信装置に所定のデータを送信する送信装置であって、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを作成し、該送信要求メッセージを前記複数の受信装置に送信して、該複数の受信装置それぞれに、実行中の通信タスクの中から動作を抑止する通信タスクを選択させる送信要求部を備える
送信装置。
【請求項８】
ネットワーク上で接続された複数の受信装置の中の所定の受信装置に所定のデータを送信する送信装置と前記ネットワーク上で接続された受信装置であって、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを、前記送信装置から受信する要求受信部と、
前記送信要求メッセージに含まれる前記受信装置特定情報および前記通信タスク特定情報に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択し、選択した通信タスクの動作を抑止する負荷抑止部と、を備える
受信装置。
【請求項９】
複数の受信装置とネットワーク上で接続された送信装置の操作部に対するユーザの操作に基づいて、前記送信装置から、前記複数の受信装置の中の所定の受信装置に所定のデータを送信するデータ転送システムによるデータ転送方法であって、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを作成し、該送信要求メッセージを前記送信装置から前記複数の受信装置に送信するステップと、
前記複数の受信装置それぞれで、前記送信要求メッセージを受信するステップと、
前記複数の受信装置それぞれで、前記送信要求メッセージに含まれる前記受信装置特定情報および前記通信タスク特定情報に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択し、選択した通信タスクの動作を抑止するステップと、を備える
データ転送方法。
【請求項１０】
複数の受信装置とネットワーク上で接続され、ユーザの操作部に対する操作に基づいて、前記複数の受信装置の中の所定の受信装置に所定のデータを送信する送信装置による送信方法であって、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを作成し、該送信要求メッセージを前記複数の受信装置に送信して、該複数の受信装置それぞれに、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択させるステップを備える
送信方法。
【請求項１１】
ネットワーク上で接続された複数の受信装置の中の所定の受信装置に所定のデータを送信する送信装置と前記ネットワーク上で接続された受信装置による受信方法であって、
前記所定の受信装置を特定するための受信装置特定情報と、前記所定のデータを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを、前記送信装置から受信するステップと、
前記送信要求メッセージに含まれる前記受信装置特定情報および前記通信タスク特定情報に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択し、選択した通信タスクの動作を抑止するステップと、を備える
受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機に格納してあるデータを、ネットワークを介して他の計算機に転送するデータ転送システム、送信装置、受信装置、データ転送方法、送信方法並びに受信方法に関する。
【背景技術】
【０００２】
ネットワークシステムにおいては、各計算機がネットワーク上で接続されていれば、当該ネットワークを介して各計算機間でデータの送受信を行うことができる。しかしながら、ネットワーク上で接続される計算機の数が多くなったり、送信するデータが大容量であったりすると、通信トラフィックが増大してしまう。この結果、ネットワークに負荷がかかり、送信データの遅延やリトライ発生による通信失敗などが発生する恐れがあった。
【０００３】
この問題を解決するために、現在では、レイヤ３スイッチ（以下、「Ｌ３スイッチ」という）やルータ等の機器あるいはソフトウェアでネットワークの帯域制御を行うことにより、各計算機間における一定時間あたりの送受信可能なデータ量（以下、「単位時間送受信可能データ量」という）を制限している。なお、帯域制御に関連する技術が開示された特許文献１〜３を以下に記す。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２０５３４３号公報
【特許文献２】特開２００３−２５８８８０号公報
【特許文献３】特開平６−１８８８９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した帯域制御を行う技術は、どれも帯域制限を予め静的に設定するものであり、この設定が再度なされない限り、各計算機間における単位時間送受信可能データ量が固定されたままである。すなわち、ネットワークが空いている状態でも帯域制限がかかっているため、各計算機間のデータのやり取りが非効率になる、という問題がある。
【０００６】
本発明は斯かる点に鑑みてなされたものであり、複数の計算機間におけるデータやり取りを効率的に行うことができるデータ転送システム、送信装置、受信装置、データ転送方法、送信方法並びに受信方法を提供する。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、複数の受信装置と、該複数の受信装置とネットワーク上で接続され、ユーザの操作部に対する操作に基づいて、複数の受信装置の中の所定の受信装置（以下、「該当受信装置」という）に所定のデータ（以下、「該当データ」という）を送信する送信装置と、を有する。送信装置は、該当受信装置を特定するための受信装置特定情報と、該当データを必要とする通信タスクを特定するための通信タスク特定情報と、を含む送信要求メッセージを作成し、送信要求メッセージを複数の受信装置に送信する送信要求部を備える。そして、複数の受信装置はそれぞれ、送信装置から送信要求メッセージを受信する要求受信部と、送信要求メッセージに含まれる受信装置特定情報および通信タスク特定情報に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択し、選択した通信タスクの動作を抑止する負荷抑止部と、を備える。
上記した構成によれば、送信装置から該当受信装置に該当データを送信する前に、該当データを必要とする通信タスク以外の各受信装置で実行中の通信タスクの動作を抑止することができる。なお、該当データが変われば、抑止される通信タスクも自動的に変更される。
【発明の効果】
【０００８】
本発明によれば、送信要求メッセージの内容に応じて、送信装置から該当受信装置への該当データの送信に影響する通信を行う通信タスクの動作を抑止することができるので、ネットワークにかかる負荷を動的に低減させることができる。この結果、送信装置から該当受信装置への該当データの送信を効率的に行うことができる、という効果がある。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係るデータ転送システムを示すブロック図である。
【図２】本発明の一実施形態に係る送信装置に記憶された転送先管理テーブルの一例を示す説明図である。
【図３】本発明の一実施形態に係る送信装置が生成する送信要求メッセージの一例を示す説明図である。
【図４】本発明の一実施形態に係る受信装置に記憶された通信タスク管理テーブルの一例を示す説明図である。
【図５】本発明の一実施形態に係るデータ転送システムの動作の流れを示すシーケンスチートである。
【図６】送信要求処理の手順を示すフローチャートである。
【図７】要求受信処理の手順を示すフローチャートである。
【図８】タスク抑止処理（その１）の手順を示すフローチャートである。
【図９】タスク抑止処理（その２）の手順を示すフローチャートである。
【図１０】データ送信処理の手順を示すフローチャートである。
【図１１】データ受信処理の手順を示すフローチャートである。
【図１２】通信タスク抑止解除処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための実施形態例について説明する。以下に述べる実施の形態例は、本発明の好適な具体例である。そのため、技術的に好ましい種々の限定が付されている。しかしながら、本発明は、下記の説明において特に本発明を限定する旨の記載がない限り、これらの形態に限られるものではない。例えば、以下の説明で挙げる各パラメータの数値的条件は好適例に過ぎず、説明に用いた各図における寸法、形状および配置関係も概略的なものである。
【００１１】
以下の手順で説明を行う。
＜一実施形態例＞
１．データ転送システムの構成
２．送信装置の構成
３．受信装置の構成
４．データ転送システムの動作
【００１２】
＜一実施形態例＞
本発明の一実施形態例を、図１〜図１２を参照して説明する。
【００１３】
［１．データ転送システムの構成］
まず、データ転送システムの構成について説明する。
図１は、本発明の一実施形態に係るデータ転送システムを示すブロック図である。
データ転送システム１００は、送信装置１１０と、送信装置１１０とネットワーク上で接続された第１から第ｎ（ｎは任意の自然数）の受信装置１５０a〜１５０ｎとで構成されるものである。このデータ転送システム１００は、第１から第ｎの受信装置１５０ａ〜１５０ｎで実行する通信タスク（ネットワークを介して各装置間でデータのやり取りを必要とするタスク）の動作（抑止または抑止解除）を制御する。そして、実行中の通信タスクに応じたデータ（以下、「該当データ」という）を、当該実行中の通信タスクを有する受信装置（以下、「該当受信装置」という）に送信する。すなわち、該当データを該当受信装置に送信する際にのみ、該当データを送信するための帯域を確保するような通信タスクの制御を行っている。
【００１４】
なお、送信装置１１０および第１から第ｎの受信装置１５０ａ〜１５０ｎは、例えばパーソナルコンピュータである。また、第１から第ｎの受信装置１５０ａ〜１５０ｎはすべて同じ構成をしているので、各受信装置を区別する必要がない場合は、「受信装置１５０」と記載する。
【００１５】
［２．送信装置の構成］
次に、送信装置１１０について説明する。
図１に示すように、送信装置１１０は、転送先管理テーブル１１１と、送信要求部１１２と、データ送信部１１３と、記憶部１１４とを備える。
【００１６】
転送先管理テーブル１１１には、第1から第ｎの受信装置１５０ａ〜１５０ｎの各ＩＰ（Internet Protocol）アドレス（以下、「アドレス」という）が予め記憶されている。この転送先管理テーブル１１１には、第１から第ｎの受信装置１５０ａ〜１５０ｎすべてから後述の抑止完了通知を受信したか否かを示す要求完了フラグを記憶する領域がさらに設けられている。転送先管理テーブル１１１の具体的一例については図２にて後述する。
【００１７】
送信要求部１１２は、操作部（不図示）に対するユーザの操作に基づいて、第１〜第ｎの受信装置１５０ａ〜１５０ｎで実行中の通信タスクの動作を制御（抑止あるいは抑止解除）するための送信要求メッセージ３００を生成する。そして、転送先管理テーブル１１１に記憶された各アドレスを利用して、生成した送信要求メッセージ３００を第１〜第ｎの受信装置１５０ａ〜１５０ｎに送信する。なお、送信要求メッセージ３００の具体的一例については図３にて後述する。
【００１８】
また、送信要求部１１２は、送信要求メッセージ３００のレスポンスとして第１から第ｎの受信装置１５０ａ〜１５０ｎから送信される抑止完了通知をすべて受信すると、転送先管理テーブル１１１内の要求完了フラグを立てる。抑止完了通知とは、受信装置１５０で実行中の通信タスクの動作の抑止が完了したことを示す情報である。
【００１９】
また、送信要求部１１２は、受信装置１５０で実行中の通信タスクの動作の抑止を解除するための送信要求メッセージ３００を作成した場合は、転送先管理テーブル１１１内の要求完了フラグを下ろす。
【００２０】
データ送信部１１３は、該当データ１１５を該当受信装置に送信するものである。このデータ送信部１１３は、転送先管理テーブル１１１内の要求完了フラグを常に監視している。そして、当該要求管理フラグが立つと、記憶部１１４から該当データ１１５を取得し、取得した該当データ１１５を該当受信装置１５０に送信する。なお、記憶部１１４は例えばハードディスク等で構成されている。
【００２１】
［３．受信装置の構成］
次に、受信装置１５０について説明する。
図１に示すように、受信装置１５０は、要求受信部１５１と、通信タスク管理テーブル１５２と、負荷抑止部１５３と、データ受信部１５４と、記憶部１５５と、負荷抑止解除部１５６とを備える。
【００２２】
要求受信部１５１は、送信装置１１０の送信要求部１１２から送信される送信要求メッセージ３００を受信する。そして、受信した送信要求メッセージ３００の内容に応じて、負荷抑止部１５３あるいは負荷抑止解除部１５６を起動させる。具体的には、送信要求メッセージ３００が通信タスクを抑止するためのものである場合は、負荷抑止部１５３が起動され、送信要求メッセージ３００が通信タスクの抑止を解除するためのものである場合は、負荷抑止解除部１５６が起動される。
【００２３】
負荷抑止部１５３は、要求受信部１５１により起動されると、要求受信部１５１が受信した送信要求メッセージ３００の内容に基づいて、自機で実行中の通信タスクの中から動作を抑止する通信タスクを選択する。そして、選択したタスクの動作を抑止する処理（以下、「通信タスク抑止処理」という）を行う。自機で実行中の通信タスクに関する情報は通信タスク管理テーブル１５２に記憶されており、負荷抑止部１５３は、この通信タスク管理テーブル１５２を参照・更新しながら通信タスク抑止処理を実行する。なお、負荷抑止部１５３で選択・抑止される通信タスクは、上述の該当データ１１５を必要とする通信タスク以外の通信タスクである。また、通信タスク管理テーブル１５２の詳細については、図４にて後述する。
【００２４】
負荷抑止解除部１５６は、要求受信部１５１により起動されると、通信タスク管理テーブル１５２を参照しながら、抑止状態の通信タスクを検索する。そして、検索した通信タスクの抑止を解除する処理（以下、「通信タスク抑止解除処理」という）を行う。
【００２５】
データ受信部１５４は、送信装置１１０のデータ送信部１１３から該当データ１１５が自機に送信された場合、該当データ１１５を受信して記憶部１５５に記憶する。なお、記憶部１５５は例えばハードディスク等で構成されている。
【００２６】
次に、送信装置１１０が備える転送先管理テーブル１１１について図２を参照して説明する。
図２は、転送先管理テーブルの一例を示す説明図である。
転送先管理テーブル１１１の「Ｎｏ」フィールドには、各レコードごとに第１から第ｎの受信装置１５０ａ〜１５０ｎに対応する１〜ｎまでの数字が書き込まれている。また、「受信装置アドレス」フィールドには、同一のレコードにある数字に対応する受信装置１５０のアドレスが書き込まれている。さらに、転送先管理テーブル１１１の最後尾のレコードには、要求完了フラグが書き込まれる。要求完了フラグは、“０”か“１”の数字で表され、初期状態ではフラグが下りた“０”となっており、第１から第ｎの受信装置１５０ａ〜１５０ｎから抑止完了通知を受信した状態ではフラグが立った“１”となっている。なお、抑止完了フラグの書き換えは、送信装置１１０の送信要求部１１２によって行われる。
【００２７】
次に、送信要求部１１２が生成する送信要求メッセージについて図３を参照して説明する。
図３は、送信要求メッセージの一例を示す説明図である。
送信要求メッセージ３００には、通信先受信装置のアドレス３０１と、通信タスク名称３０２と、要求指示フラグ３０３とが含まれている。
通信先受信装置のアドレス３０１は、該当データ１１５を送信する受信装置１５０、すなわち該当受信装置のアドレスである。
【００２８】
通信タスク名称３０２は、該当データ１１５を必要とする通信タスクの名称を示す文字列である。要求指示フラグ３０３は、例えば“１”か“２”の数字で表され、受信装置１５０に通信タスク抑制処理を実行させる場合には“１”が設定され、通信タスク抑止解除処理を実行させる場合には “２”が設定される。
【００２９】
次に、受信装置１５０が備える通信タスク管理テーブル１５２について図４を参照して説明する。
図４（ａ）は、通信タスク管理テーブルの一例を示す説明図、図４（ｂ）は、第１、第２および第ｎの受信装置が備える各通信タスク管理テーブルの通信タスクリストの一例を示す説明図である。
通信タスク管理テーブル１５２は、図４（ａ）に示すように、通信タスクリスト４０１と抑止指示フラグ４０２とを備える。
【００３０】
通信タスクリスト４０１について図４（ｂ）を参照して説明する。
通信タスクリスト４０１の「Ｎｏ」フィールドには、各レコードごとに、受信装置１５０で実行中の通信タスクに割り当てられた数字（例えば、１〜４）が予め書き込まれている。
【００３１】
「通信タスク名称」フィールドには、同一のレコードにある数字に対応する通信タスクの名称を示す文字列が予め書き込まれている。
【００３２】
「抑止状態」フィールドには、同一のレコードにある数字に対応する通信タスクが抑止されているか否かを示す情報が書き込まれる。通信タスクが抑止されている場合には、“抑止”が書き込まれており、通信タスクが抑止されていない場合には、何も書き込まれていない状態となっている。なお、「抑止状態」フィールドの書き換えは、受信装置１５０の負荷抑止部１５３あるいは負荷抑止解除部１５６によって行われる。
【００３３】
「通信先のアドレス」フィールドには、同一のレコードにある数字に対応する通信タスクが実行された際に通信を行う装置（送信装置１１０あるいは受信装置１５０）のアドレスが予め書き込まれている。
【００３４】
図４(ａ)に戻り、抑止フラグについて説明する。
抑止指示フラグ４０２は、例えば“０”、“１”あるいは“２”の数字で表される。抑止指示フラグ４０２は、初期状態では“０”となっており、通信タスク抑止処理を行う通信タスクの選択が完了した状態では“１”となっており、選択された通信タスクに対して通信タスク処理が完了した状態では“２”となっている。なお、抑止指示フラグ４０２の書き換えは、受信装置１５０の負荷抑止部１５３あるいは負荷抑止解除部１５６によって行われる。
【００３５】
［４．データ転送システムの動作］
次に、図５〜図１２を参照してデータ転送システム１００の動作について説明する。
図５は、本発明の一実施形態に係るデータ転送システムの動作の流れを示すシーケンスチャートである。
【００３６】
まず、送信装置１１０の送信要求部１１２は、当該送信装置１１０の操作部（不図示）に対するユーザの操作に応じて送信要求処理を実行する（ステップＳ１０）。ここでの送信要求処理とは、該当データ１１５を該当受信装置に送信する前準備として、第１〜第ｎの受信装置１５０ａ〜１５０ｎで実行中の所定の通信タスクの動作を抑止するための送信要求メッセージ３００を生成する処理である。ここで、図６を参照して送信要求処理の手順について説明する。
【００３７】
送信要求処理が開始されると、送信要求部１１２は、変数ｉを１に初期化する。そして、「Ｎｏ」フィールドが変数ｉに等しいレコードを転送先管理テーブル１１１から読み出し、読み出したレコードからアドレスを取得する（ステップＳ２０）。
【００３８】
続いて、送信要求部１１２は、転送先管理テーブル１１１内にまだアドレスがあるか否かを確認する（ステップＳ２１）。具体的には、変数ｉをインクリメントし、「Ｎｏ」フィールドが変数ｉに等しいレコードが転送先管理テーブル１１１内にあるか否かを確認する。
【００３９】
転送先管理テーブル１１１内にまだアドレスがある、すなわち「Ｎｏ」フィールドが変数ｉに等しいレコードが転送先管理テーブル１１１内にあるならば（ステップＳ２１のＹＥＳ）、ステップＳ２０の処理に戻る。つまり、「Ｎｏ」フィールドが変数ｉに等しいレコードを転送先管理テーブル１１１から読み出し、読み出したレコードからアドレスを取得する。
【００４０】
一方、転送先管理テーブル１１１内にアドレスがない、すなわち「Ｎｏ」フィールドが変数ｉに等しいレコードが転送先管理テーブル１１１内にないならば（ステップＳ２１のＮＯ）、送信要求部１１２は、送信要求メッセージ３００を、ユーザの操作部（不図示）に対する操作に基づいて生成し（ステップＳ２２）、送信要求処理を完了する。なお、ステップＳ２２の処理で生成される送信要求メッセージ３００が、第1から第ｎの受信装置１５０ａ〜１５０ｎで実行中の所定のタスクの動作を抑止するためのメッセージである。そのため、送信要求メッセージ３００内の通信先受信装置のアドレス３０１には“該当受信装置のアドレス”が、要求指示フラグ３０３には通信タスク抑止処理を受信装置１５０に実行させることを示す“１”がそれぞれ設定されている。
【００４１】
図５の説明に戻る。
送信要求処理が完了すると、送信装置１１０の送信要求部１１２は、ステップＳ２０（図６を参照）の処理で取得したアドレスに基づいて、ステップＳ２２（図６を参照）の処理にて生成した送信要求メッセージ３００をすべての受信装置１５０（図１に示す例では、第１から第ｎの受信装置１５０ａ〜１５０ｎ）に送信する（ステップＳ１１）。そして、すべての受信装置１５０は、送信要求メッセージ３００を受信すると、受信した送信要求メッセージ３００に基づいて要求受信処理を実行する（ステップＳ１２）。ここで、図７を参照してステップＳ１２の要求受信処理について説明する。
【００４２】
要求受信処理が開始される、すなわち受信装置１５０の要求受信部１５１が送信要求メッセージ３００を受信すると（ステップＳ３０のＹＥＳ）、要求受信部１５１は、受信した送信要求メッセージ３００内の要求指示フラグ３０３が“１”であるか否かを確認する（ステップＳ３１）。
【００４３】
受信した送信要求メッセージ３００内の要求指示フラグ３０３は“１”であるので（ステップＳ３１のＹＥＳ）、要求受信部１５１は負荷抑止部１５３を起動させる。すると、負荷抑止部１５３は、受信した送信要求メッセージ３００に基づいて通信タスク抑止処理を実行する（ステップＳ３２）。通信タスク抑止処理とは、該当データ１１５を必要とする通信タスクと、送信装置１１０および該当受信装置との通信が必要な通信タスク以外の通信タスクの動作を抑止してネットワークの帯域を確保する処理である。ここで、通信タスク抑止処理の手順について図８および図９を参照して説明する。
【００４４】
通信タスク抑止処理が開始されると、まず負荷抑止部１５３は変数ｊを１に初期化する。そして、「Ｎｏ」フィールドが変数ｊに等しいレコード（以下、「ｊ番目の通信タスクレコード」という）を通信タスクリスト４０１から読み出す（ステップＳ４０）。そして、負荷抑止部１５３は、送信要求メッセージ３００内の通信先受信装置のアドレス３０１が受信装置自身におけるアドレスと同じであるか否かを確認する（ステップＳ４１）。
【００４５】
送信要求メッセージ３００内の通信先受信装置のアドレス３０１が受信装置自身におけるアドレスと同じであるならば（ステップＳ４１のＹＥＳ）、負荷抑止部１５３は、ｊ番目の通信タスクレコードの「通信タスク名称」が送信要求メッセージ３００内の通信タスク名称３０２と同じであるか否かを確認する（ステップＳ４２）。
【００４６】
ｊ番目の通信タスクレコードおよび送信要求メッセージ３００内それぞれの通信タスク名称が同じであるならば（ステップＳ４２のＹＥＳ）、負荷抑止部１５３は、変数ｊをインクリメントし、通信タスクリスト４０１内にｊ番目の通信タスクレコードがあるか否かを確認する（ステップＳ４４）。
【００４７】
通信タスクリスト４０１内にｊ番目の通信タスクレコードがあるならば（ステップＳ４４のＹＥＳ）、ステップＳ４０の処理に戻る。すなわち、「Ｎｏ」フィールドが変数ｊに等しいレコードを通信タスクリスト４０１から読み出す
一方、通信タスクリスト４０１内にｊ番目の通信タスクレコードがないならば（ステップＳ４４のＮＯ）、負荷抑止部１５３は、通信タスク管理テーブル１５２内の抑止指示フラグ４０２に“１”を設定する（ステップＳ４５）。
【００４８】
ところで、ステップＳ４２の処理において、ｊ番目の通信タスクレコードおよび送信要求メッセージ３００内それぞれの通信タスク名称が同じでないならば（ステップＳ４２のＮＯ）、負荷抑止部１５３は、ｊ番目の通信タスクレコードの「抑止状態」フィールドに“抑止”を書き込み、上述したステップＳ４４の処理に移行する。
【００４９】
また、ステップＳ４１の処理において、送信要求メッセージ３００内の通信先受信装置のアドレス３０１が受信装置自身におけるアドレスと同じでないならば（ステップＳ４１のＮＯ）、負荷抑止部１５３は、ｊ番目の通信タスクレコードの「通信先のアドレス」が送信要求メッセージ３００内の通信先受信装置のアドレス３０１あるいは送信装置１１０のアドレスと同じであるか否かを確信する（ステップＳ４６）。
【００５０】
ｊ番目の通信タスクレコードの「通信先のアドレス」が送信要求メッセージ３００内の通信先受信装置のアドレス３０１あるいは送信装置１１０のアドレスと同じであるならば（ステップＳ４６のＹＥＳ）、上述したステップＳ４３の処理に移行する。一方、同じでないならば（ステップＳ４６のＮＯ）、上述したステップＳ４４の処理に移行する。
【００５１】
以上の処理が完了した後、通信タスク管理テーブル１５２内の抑止指示フラグ４０２が“１”であることが確認されると（ステップＳ５０のＹＥＳ）、負荷抑止部１５３は、通信タスクリスト４０１を読み込む（ステップＳ５１）。そして、変数ｋを１に初期化する。続いて、通信タスクリスト４０１の「Ｎｏ」フィールドが変数ｋに等しいレコード（以下、「ｋ番目の通信タスクレコード」という）の「抑止状態」が“抑止”であるか否かを確認する（ステップＳ５２）。
【００５２】
ｋ番目の通信タスクレコードの「抑止状態」が“抑止”でないならば（ステップＳ５２のＮＯ）、負荷抑止部１５３は、変数ｋをインクリメントし、通信タスクリスト４０１内に、ｋ番目の通信タスクレコードがあるか否かを確認する（ステップＳ５４）。
【００５３】
ところで、ステップＳ５２の処理において、ｋ番目の通信タスクレコードの「抑止状態」が“抑止”であるならば（ステップＳ５２のＹＥＳ）、負荷抑止部１５３は、当該ｋ番目の通信タスクレコードの「通信タスク名称」で表される通信タスクの動作を抑止し（ステップＳ５３）、ステップＳ５４の処理に移行する。これにより、ｋ番目の通信タスクレコードの「通信タスク名称」で表される通信タスクに関する各装置間の通信が中断される。
【００５４】
以上の処理が完了した後、通信タスクリスト４０１内に、ｋ番目の通信タスクレコードがあるならば（ステップＳ５４のＹＥＳ）、ステップＳ５２の処理に戻り、ステップＳ５２からステップＳ５４の処理を繰り返す。通信タスクリスト４０１内に、ｋ番目の通信タスクレコードがないならば（ステップＳ５４のＮＯ）、負荷抑止部１５３は、通信タスク管理テーブル１５２内の抑止指示フラグ４０２に“２”を設定し（ステップＳ５５）、通信タスク抑止処理を完了する。
【００５５】
図７の説明に戻る。
通信タスク抑止処理が完了すると、要求受信部１５１は、通信タスク管理テーブル１５２内の抑止指示フラグ４０２を確認する（ステップＳ３３）。そして、抑止指示フラグ４０２が“２”であることが確認されると（ステップＳ３３のＹＥＳ）、要求受信部１５１は、通信タスクの抑止が完了したことを示す抑止完了通知を生成し（ステップＳ３４）、要求受信処理を完了する。
【００５６】
図５の説明に戻る。
要求受信処理が完了すると、受信装置１５０の要求受信部１５１は、ステップＳ３４の処理（図７を参照）で生成した抑止完了通知を送信装置１１０に送信する（ステップＳ１３）。そして、送信装置１１０は、第１から第ｎの受信装置１５０ａ〜１５０ｎすべてからの抑止完了通知の受信を完了すると、データ送信処理を実行する（ステップＳ１４）。ここで、図１０を参照してデータ送信処理について説明する。
【００５７】
データ送信処理が開始される、すなわち送信要求部１１２がすべての受信装置１５０から抑止完了通知を受信すると（ステップＳ６０のＹＥＳ）、当該送信要求部１１２は、転送先管理テーブル１１１内の要求完了フラグに“１”を設定する（ステップＳ６１）。
【００５８】
ここで、データ送信部１１３は、転送先管理テーブル１１１内の要求完了フラグを常に監視している（ステップＳ６２）。そのため、ステップＳ６１の処理により要求完了フラグに“１”が設定されると（ステップＳ６２のＹＥＳ）、データ送信部１１３は、記憶部１１４から該当データ１１５を取得する（ステップＳ６３）。
【００５９】
このステップＳ６３の処理と平行して、送信要求部１１２は、ステップＳ６４からステップＳ６６までの処理を実行する。つまり、変数ｋを１に初期化する。そして、「Ｎｏ」フィールドが変数ｋに等しいレコードを転送先管理テーブル１１１から読み出し、読み出したレコードからアドレスを取得する（ステップＳ６４）。
【００６０】
続いて、送信要求部１１２は、転送先管理テーブル１１１内にまだアドレスがあるか否かを確認する（ステップＳ６５）。具体的には、変数ｋをインクリメントし、「Ｎｏ」フィールドが変数ｋに等しいレコードが転送先管理テーブル１１１内にあるか否かを確認する。
【００６１】
転送先管理テーブル１１１内にまだアドレスがある、すなわち現在の変数ｋに等しい「Ｎｏ」フィールドを有するレコードが転送先管理テーブル１１１内にあるならば（ステップＳ６５のＹＥＳ）、ステップＳ６４の処理に戻る。
【００６２】
一方、転送先管理テーブル１１１内にアドレスがない、すなわち現在の変数ｋに等しい「Ｎｏ」フィールドを有するレコードが転送先管理テーブル１１１内にないならば（ステップＳ６５のＮＯ）、送信要求部１１２は、通信タスク抑止解除を示す“２”が要求指示フラグ３０３に設定された送信要求メッセージ３００を作成する（ステップＳ６６）。
以上の処理が完了した後、送信要求部１１２は、転送先管理テーブル１１１内の要求完了フラグに“０”を設定し（ステップＳ６７）、データ送信処理を終了する。
【００６３】
図５の説明に戻る。
データ送信処理が完了すると、送信装置１１０のデータ送信部１１３は、ステップＳ６３（図１０を参照）の処理で取得した該当データ１１５を上述した該当受信装置に送信する。そして、該当データ１１５の送信が完了した後に、当該送信装置の送信要求部１１２は、ステップＳ６６（図１０を参照）の処理で生成した送信要求メッセージ３００を、ネットワーク上で接続されたすべての受信装置１５０に送信する（ステップＳ１５）。該当データ１１５を受信した受信装置１５０はデータ受信処理を行い（ステップＳ１６）、送信要求メッセージ３００を受信したすべての受信装置１５０は要求受信処理を行う（ステップＳ１７）。
【００６４】
ここで、図１１を参照してデータ受信処理について説明する。
データ受信処理が開始される、すなわち受信装置１５０のデータ受信部１５４が該当データ１１５を受信すると（ステップＳ７０のＹＥＳ）、データ受信部１５４は、受信した該当データ１１５を記憶部１５５に記憶し（ステップＳ７１）、データ受信処理を完了する。
【００６５】
図７および図１２を参照し要求受信処理について説明する。
要求受信処理が開始される、すなわち受信装置１５０の要求受信部１５１が送信要求メッセージ３００を受信すると（ステップＳ３０のＹＥＳ）、要求受信部１５１は、受信した送信要求メッセージ３００内の要求指示フラグ３０３が通信タスクの抑止解除を示す“２”であるか否かを確認する（ステップＳ３１）。
【００６６】
受信した送信要求メッセージ３００内の要求指示フラグ３０３が“２”であるので（ステップＳ３１のＮＯ）、要求受信部１５１は負荷抑止解除部１５６を起動させる。すると、負荷抑止解除部１５６は、受信した送信要求メッセージ３００に基づいて通信タスク抑止解除処理を実行し（ステップＳ３５）、要求受信処理を完了する。ここで、通信タスク抑止解除処理について図１２を参照して説明する。
【００６７】
通信タスク抑止処理が開始されると、負荷抑止解除部１５６は、通信タスク管理テーブル１５２内の抑止指示フラグ４０２に“２”が設定されているか否かを確認する（ステップＳ８０）。ステップＳ５５（図９を参照）にて抑止指示フラグ４０２が“２”に設定されているので（ステップＳ８０のＹＥＳ）、負荷抑止解除部１５６は変数ｌを１に初期化する。そして、「Ｎｏ」フィールドが変数ｌに等しいレコード（以下、「ｌ番目の通信タスクレコード」という）を通信タスクリスト４０１から読み出す（ステップＳ８１）。そして、負荷抑止解除部１５６は、ｌ番目の通信タスクレコードの「抑止状態」に“抑止”が設定されているか否かを確認する（ステップＳ８２）。
【００６８】
ｌ番目の通信タスクレコードの「抑止状態」に“抑止”が設定されているならば（ステップＳ８２のＹＥＳ）、負荷抑止解除部１５６は、ｌ番目の通信タスクレコードの「通信タスク名称」に書き込まれている名称で表される通信タスクの抑止を解除する（ステップＳ８３）。そして、ｌ番目の通信タスクレコードの「抑止状態」を“空”にする（ステップＳ８４）。
【００６９】
続いて、負荷抑止解除部１５６は、変数ｌをインクリメントし、通信タスクリスト４０１内にｌ番目の通信タスクレコードがあるか否かを確認する（ステップＳ８５）。通信タスクリスト４０１内にｌ番目の通信タスクレコードがあるならば（ステップＳ８５のＹＥＳ）、ステップＳ８１の処理に戻る。通信タスクリスト４０１内にｌ番目の通信タスクレコードがないならば（ステップＳ８１のＮＯ）、負荷抑止解除部１５６は、通信タスク管理テーブル１５２内の抑止指示フラグ４０２を“０”に設定し（ステップＳ８６）、通信タスク抑止解除処理を完了する。
【００７０】
ところで、ステップＳ８２の処理において、ｌ番目の通信タスクレコードの「抑止状態」に“抑止”が設定されていないならば（ステップＳ８２のＮＯ）、ステップＳ８５の処理に移行する。
【００７１】
ここで、データ転送システム１００の各受信装置１５０における通信タスク抑止処理の具体的一例について図４を参照して説明する。なお、第１、第２および第ｎの受信装置１５０ａ、１５０ｂ、１５０ｎの通信タスク管理テーブル１５２ａ、１５２ｂ、１５２ｎの通信タスクリスト４０１ａ、４０１ｂ、４０１ｎは図４（ｂ）に示したようなものであるとする。また、通信先受信のアドレス３０１が“第１の受信装置のアドレス”であり、通信タスク名称３０２が“ＳＴＡＳＫ１−１”である送信要求メッセージ３００（図３を参照）を第1から第ｎの受信装置１５０ａ〜１５０ｎが受信したとする。
【００７２】
このとき、第1の受信装置１５０は、受信した送信要求メッセージ３００内の通信先受信装置のアドレス３０１が自機のアドレスであるため、当該送信要求メッセージ３００内の通信タスク名称３０２を判定する。すなわち、通信タスクリスト４０１ａの各通信タスクレコードの通信タスク名称と、通信タスク名称３０２が同じであるか判定する。１番目の通信タスクレコードの通信タスク名称と、通信タスク名称３０２とは、両方とも“ＳＴＡＳＫ１−１”であるので、“ＳＴＡＳＫ１−１”という名称の通信タスクは抑止しない。また、第１の受信装置１５０ａが送信装置１１０の通信対象となるため、通信タスクリスト４０１内のタスク名称が“ＳＴＡＳＫ１−１”以外の名称の通信タスクがすべて抑止状態にされる。すなわち、２〜４番目の通信タスクレコードの「抑止状態」フィールドには“抑止”が設定される。
【００７３】
また、第２の受信装置１５０ｂにおいては、受信した送信要求メッセージ３００内の通信先受信装置のアドレス３０１が自機のアドレスではなく、“第１の受信装置のアドレス”であるため、自機で実行中の通信タスクの中から第１の受信装置１５０ａあるいは送信装置１１０と通信を行う通信タスクの動作を抑止する。
【００７４】
具体的には、通信タスクリスト４０１ｂの各通信タスクレコードの「通信先のアドレス」フィールドが“第１の受信装置のアドレス”あるいは“送信装置のアドレス”を含む通信タスクレコードを検索する。１および２番目の通信タスクレコードがそれに該当するので、通信タスクリスト４０１ｂの１および２番目の通信タスクレコードの「タスク名称」に書き込まれた“ＳＴＡＳＫ２−１”および“ＳＴＡＳＫ２−２”という名称で表される通信タスクが抑止される。すなわち、通信タスクリスト４０１ｂの１および２番目の通信タスクレコードの「抑止」フィールドに“抑止”が設定される。３および４番目の通信タスクレコードの「通信先のアドレス」フィールドには“第１の受信装置のアドレス”あるいは“送信装置のアドレス”が書き込まれていないので、抑止は行われない。
【００７５】
なお、第ｎの受信装置１５０ｎも第２の受信装置１５０ｂと同様の通信タスク抑止処理を行うことはいうまでもないので、詳細な説明は省略する。ここで示した具体的な一例では、該当受信装置あるいは送信装置１１０と通信を行う必要のない通信タスク（図４（ｂ）に示す‘ＳＴＡＳＫ２−３’、‘ＳＴＡＳＫ２−４’、‘ＳＴＡＳＫｎ−３’、‘ＳＴＡＳＫｎ−４’）を抑止しないようにしたが、ネットワーク全体の負荷を最小限に減らす場合は抑止するようにしてもよい。
【００７６】
なお、上述した実施形態以外でも考えられる構成例としては、送信要求メッセージ３００内に優先度を持たせる情報を含め、その優先度の度合いによって通信タスクを選別して通信タスクを抑止する方法や、通信タスクが動作できる時間を保持しておき優先度によって周期的に動作できる方法も追加可能である。
【００７７】
また、上述した一実施形態において、送信装置から該当受信装置に該当データを送信するにあたっては、ＴＣＰ（Transmission Control Protocol）やＵＤＰ（User Datagram Protocol）等どのようなプロトコルを用いて該当データを転送するようにしてもよいことはいうまでもない。
【００７８】
以上説明したように、本発明の一実施形態では、送信要求メッセージの内容に応じて、送信装置から該当受信装置への該当データの送信に影響する通信を行う通信タスクの動作を抑止することができるので、ネットワークにかかる負荷を動的に低減させることができる。この結果、送信装置から該当受信装置への該当データの送信を効率的に行うことができる、という効果がある。
【００７９】
以上、本発明の実施形態の例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことはいうまでもない。
【符号の説明】
【００８０】
１００…データ転送システム、１１０…送信装置、１１１…転送先管理テーブル、１１２…送信要求部、１１３…データ送信部、１１４…記憶部、１１５…該当データ、１５０…受信装置、１５１…要求受信部、１５２…通信タスク管理テーブル、１５３…負荷抑止部、１５４…データ受信部、１５５…記憶部、１５６…負荷抑止解除部、３００…送信要求メッセージ、３０１…通信先受信装置のアドレス、３０２…通信タスク名称、３０３…要求指示フラグ、４０１…通信タスクリスト、４０２…抑止指示フラグ
【図１】
0005429754.tif 000002
【図２】
0005429754.tif 000003
【図３】
0005429754.tif 000004
【図４】
0005429754.tif 000005
【図５】
0005429754.tif 000006
【図６】
0005429754.tif 000007
【図７】
0005429754.tif 000008
【図８】
0005429754.tif 000009
【図９】
0005429754.tif 000010
【図１０】
0005429754.tif 000011
【図１１】
0005429754.tif 000012
【図１２】
0005429754.tif 000013