(57)【要約】【課題】複数台のコンピュータに対するデータ通信における通信効率を向上させる。【解決手段】複数の受信側計算機２に対応する送信先アドレスに共通するセッション名を定義し、送信側計算機１のセッション管理表メモリ９ａに記憶させる。データ送信用アプリケーション７は、セッション名に係る送信要求コマンドを生成して、セッション開始要求をする。送信セッション管理部１１は、セッション開始要求にしたがって、セッション管理表メモリ９ａにアクセスし、送信要求コマンドで指定されたセッション名に対応する複数の送信先アドレスを取得し、この送信先アドレスに対応した送信側ソケット管理部５を生成し、その複数の送信先アドレスに対応した受信側計算機２にそれぞれデータを送信する。よって、複数の受信側計算機２にデータを送信する場合に、その都度送信要求コマンドを生成する必要がなくなる。【選択図】    図２
2004303041.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上に配置された複数台のコンピュータにおいて、任意の送信側コンピュータと複数台の受信側コンピュータとの間でコネクションレス型のデータ通信を行なう方法であって、
前記送信側コンピュータは、
前記複数台の各受信側コンピュータの識別情報と、これら識別情報に共通する送信先共通情報とを対応付けて記憶する送信先情報記憶手段と、
前記各受信側コンピュータに送信するデータを記憶する送信データ記憶手段とを備え、
前記送信先情報記憶手段に記憶された送信先共通情報に基づいて、前記送信データ記憶手段に記憶されたデータを、前記送信先共通情報に含まれる各識別情報に対応する受信側コンピュータに送信するデータ送信ステップ
を有することを特徴とするデータ通信方法。
【請求項２】
前記送信側コンピュータは、さらに、
前記送信側コンピュータの送信データ記憶手段に記憶されたデータに、当該データの通信開始時刻に対応する識別情報を付与する通信開始時刻識別情報付与ステップを有し、
前記データ送信ステップでは、前記通信開始時刻識別情報を付与したデータを送信し、
前記受信側コンピュータは、
前記データ送信ステップにより送信されたデータを受信するデータ受信ステップと、
前記データ受信ステップにより受信したデータに付与された通信開始時刻識別情報に対応する通信開始時刻のうち最新の通信開始時刻を管理する通信開始時刻管理ステップと、
前記データ受信ステップにより受信したデータに付与された通信開始時刻識別情報に対応した通信開始時刻が、前記通信開始時刻管理ステップにより管理された通信開始時刻以後の通信開始時刻であった場合に、前記受信したデータを記憶させる受信データ記憶ステップと
を有することを特徴とする請求項１に記載のデータ通信方法。
【請求項３】
前記送信側コンピュータにおける前記データ送信ステップでは、前記送信側コンピュータの送信データ記憶手段に記憶されたデータを多重化して送信し、
前記送信側コンピュータは、さらに、
前記多重化されて送信されたデータをそれぞれ受信するデータ受信ステップと、
このデータ受信ステップにより受信した多重化データのうち、最初に受信したデータを記憶させる受信データ記憶ステップと
を有することを特徴とする請求項１に記載のデータ通信方法。
【請求項４】
前記送信側コンピュータは、
前記送信データ記憶手段に記憶されたデータに、当該データの送信順を示す送信順識別情報を付与する送信順識別情報付与ステップを有し、
前記受信側コンピュータは、
前記送信順識別情報の所定の範囲を記憶する送信順範囲記憶手段を備え、
前記データ送信ステップにより送信されたデータを受信するデータ受信ステップと、
このデータ受信ステップにより受信したデータに付与された送信順識別情報が、前記送信順範囲記憶手段に記憶された送信順識別情報範囲に含まれる場合に、当該データを記憶させる受信データ記憶ステップと、
前記データ受信ステップにより受信したデータに付与された送信順識別情報が、前記送信順範囲記憶手段に記憶された送信順識別情報範囲の先頭に該当する場合に、前記送信順範囲記憶手段に記憶された送信順識別情報の範囲を更新するステップと
を有することを特徴とする請求項１に記載のデータ通信方法。
【請求項５】
前記受信側コンピュータは、さらに、
前記データ送信ステップにより送信されたデータを受信するデータ受信ステップと、
このデータ受信ステップにより受信したデータの容量に対応した所定の時間を設定する時間設定ステップと、
前記データ送信ステップにより送信されたデータの受信が前記データ受信ステップにより開始された場合に、計時を開始する計時ステップと、
この計時ステップにて計時された時間が前記時間設定ステップにより設定された時間に到達した場合に、前記データ受信ステップにて受信されるデータの受信が完了しない場合は、このデータの再送信を前記送信側のコンピュータに要求する再送信要求ステップと
を有し、
前記送信側コンピュータは、さらに、
前記再送信要求ステップにより再送信が要求された場合に、前記送信先情報記憶手段に記憶された送信先共通情報に基づいて、前記送信データ記憶手段に記憶されたデータを、
前記送信先共通情報に含まれる各識別情報に対応する受信側コンピュータに再送信する再送信ステップと
を有することを特徴とする請求項１に記載のデータ通信方法。
【請求項６】
前記送信側コンピュータは、さらに、
前記送信データ記憶手段に記憶されたデータが、前記データ送信ステップにより前記受信側コンピュータに送信されたか否かを判別する送信可否判別ステップと、
この送信可否判別ステップにより、前記送信データ記憶手段に記憶されたデータが送信されなかったと判別された場合に、通信状態確認用データを生成して、前記受信側コンピュータに送信する通信状態確認ステップと
を有し、
前記受信側コンピュータは、さらに、
前記データ送信ステップまたは前記通信状態確認ステップにより送信されたデータを受信するデータ受信ステップと、
前記データ受信ステップによりデータが受信されたか否かを判別する受信可否判別ステップと、
この受信可否判別ステップによる判別結果を通知する通知ステップと
を有することを特徴とする請求項１に記載のデータ通信方法。
【請求項７】
ネットワーク上に配置された複数台のコンピュータにおいて、任意の送信側コンピュータと複数台の受信側コンピュータとの間でコネクションレス型のデータ通信を行なうデータ通信システムであって、
前記送信側コンピュータは、
前記複数台の各受信側コンピュータの識別情報と、これら識別情報に共通する送信先共通情報とを対応付けて記憶する送信先情報記憶手段と、
前記受信側コンピュータに送信するデータを記憶する送信データ記憶手段と、
前記送信先情報記憶手段に記憶された送信先共通情報に基づいて、前記送信データ記憶手段に記憶されたデータを、前記送信先共通情報に含まれる各識別情報に対応する受信側コンピュータに送信するデータ送信手段と
を備えたことを特徴とするデータ通信システム。
【請求項８】
ネットワーク上に配置された複数台のコンピュータにおいて、任意の送信側コンピュータと複数台の受信側コンピュータとの間でコネクションレス型のデータ通信に用いるプログラムであって、
前記送信側コンピュータを、
前記複数台の各受信側コンピュータの識別情報と、これら識別情報に共通する送信先共通情報とを対応付けて管理する送信先情報管理手段と、
記憶媒体に記憶されたデータを、前記送信先情報管理手段により管理された送信先共通情報に基づいて、前記送信先管理手段により管理される送信先共通情報に含まれる各識別情報に対応する受信側コンピュータに送信するデータ送信手段と
して機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークで接続された複数のコンピュータ間のデータ配信方法、装置およびプログラムに関する。
【０００２】
【従来の技術】
従来、送信側および受信側のコンピュータ間で、例えばコネクションレス型によるデータ通信を行なう場合には、送信側および受信側のコンピュータにおける通信設定の各項目は、データ種別および通信対象などに関係なく、共通の通信設定管理テーブルにより一律に管理される（例えば、特許文献１参照）。
【０００３】
【特許文献１】
特許第３２６８８７５号公報
【０００４】
【発明が解決しようとする課題】
前述したデータ通信において、例えば１台のコンピュータから、複数のユニキャストアドレスに対応したコンピュータに同一のデータを送信する場合、または、１台のコンピュ一タから、複数のユニキャストアドレスおよびマルチキャストアドレスに対応したコンピュータに同一のデータを送信する場合には、送信用アプリケーションにより、送信先アドレスの数と同じ回数のデータ送信を実行しなければならず、その都度、送信用の制御コマンドを生成する必要がある。これにより送信用アプリケーションによる処理が複雑化してしまう。
【０００５】
また、重要度の異なる複数種別のデータを所定のコンピュータに送信する場合には、当該データの種別に応じて、例えば重要度の高いデータについては、これを多重化して再送回数を減らすことが望ましい。しかし、前述したデータ通信方法では、多重化等の設定をデータ毎に個別に行なうことができない。その結果、本来多重化する必要のない重要度の低いデータについても多重化させることになる。この結果、データの転送量が増加し、データ通信性能の低下およびネットワーク帯域の圧迫を引き起こす原因となっていた。
【０００６】
このように、コンピュータ同士でデータ通信を行なう場合には、信頼性および通信効率を低下させる要因が存在していた。
【０００７】
本発明は、前記のような従来技術の問題点を解決するために提案されたものであり、複数台のコンピュータに対するデータ通信における通信効率を向上させることが可能になるデータ通信方法、装置およびプログラムを提供するものである。
【０００８】
【課題を解決するための手段】
すなわち、本発明に係るデータ通信方法は、ネットワーク上に配置された複数台のコンピュータにおいて、任意の送信側コンピュータと複数台の受信側コンピュータとの間でコネクションレス型のデータ通信を行なう方法であって、前記送信側コンピュータは、前記複数台の各受信側コンピュータの識別情報と、これら識別情報に共通する送信先共通情報とを対応付けて記憶する送信先情報記憶手段と、前記各受信側コンピュータに送信するデータを記憶する送信データ記憶手段とを備え、前記送信先情報記憶手段に記憶された送信先共通情報に基づいて、前記送信データ記憶手段に記憶されたデータを、前記送信先共通情報に含まれる各識別情報に対応する受信側コンピュータに送信するデータ送信ステップを有することを特徴とする。
【０００９】
このような構成とすれば、前記複数台の各受信側コンピュータの識別情報に共通して定められる送信先共通情報にしたがって、送信対象のデータを各受信側データに送信するので、複数の送信要求コマンドを生成する必要がなくなる。よって、データ送信に係る負担を低減させることができる。
【００１０】
【発明の実施の形態】
以下、図面により本発明の実施の一形態について説明する。
【００１１】
（第１の実施形態）
まず、本発明の第１の実施形態について説明する。
図１は、本発明の第１の実施形態にしたがったデータ通信システムの全体構成図である。
図１に示すように、このデータ通信システムは、送信側計算機１に複数の受信側計算機２が接続される。送信側計算機１は、コネクションレス型通信により、複数のユニキャストアドレスおよびマルチキャストアドレスにそれぞれ対応した受信側計算機２に対して、データを送信する機能を有している。
【００１２】
図２は、図１に示した送信側計算機１および受信側計算機２の内部構成を示す図である。
図２に示すように、送信側計算機１には、送信側セッション管理部３が設けられる。送信側計算機１にはデータ送信用アプリケーション７がインストールされる。データ送信用アプリケーション７には、データ送信用のシステムプログラムおよびデータが記憶される。また、送信側計算機１において、データを送信する際に送信側ソケット管理部５が生成される。この送信側ソケット管理部５は、送信データおよび送信先アドレスを管理する。送信先アドレスとは、前述したユニキャストアドレスおよびマルチキャストアドレスを意味している。
【００１３】
送信側セッション管理部３には、送信セッション管理部１１、データ送信管理部１２、セッション管理表メモリ９ａおよび送信データ格納用バッファ１０が設けられる。セッション管理表メモリ９ａには、送信用のセッション管理表９１（図３参照）が記憶される。送信側ソケット管理部５では、データ送信部１６によるデータ送信処理を管理する。
【００１４】
受信側計算機２には、受信側セッション管理部４が設けられ、さらに、データ受信用アプリケーション８がインストールされる。また、受信側計算機２において、受信用アプリケーション８による受信要求に応じて受信側ソケット管理部６が生成される。受信側ソケット管理部６は、送信側計算機１により送信されたデータを受信し、これを管理する。データ受信用アプリケーション８には、データ受信用のシステムプログラムおよび受信済みデータが記憶される。
【００１５】
受信側セッション管理部４には、受信セッション管理部１４、データ受信管理部１５、セッション管理表メモリ９ｂおよび受信データ格納用バッファ１３が設けられる。セッション管理表メモリ９ｂには受信用のセッション管理表９２（図４参照）が記憶される。
【００１６】
ここで、セッション管理表９１の構成の一例を図３に示す。
図３に示すように、セッション管理表９１には、セッション名、送信先アドレス、ポート番号およびＩ／Ｆアドレスが定義づけられる。送信先アドレスとは、データの送信先である複数台の各受信側計算機２にそれぞれ対応した識別情報である。また、セッション名とは、複数の送信先アドレスに共通した識別情報として定義付けられた情報である。また、ポート番号とは、データ通信時に開放する通信ポート番号である。Ｉ／Ｆアドレスは、このセッション管理表９１を有する送信側計算機１の通信用インタフェースの識別情報を示す。
【００１７】
受信側のセッション管理表９２の構成の一例を図４に示す。この受信側計算機２のセッション管理表９２で定義付けられる通信設定情報は、受信側計算機２側の通信ポート番号およびＩ／Ｆアドレスである。
受信側ソケット管理部６では、データ受信部１７によるデータ受信処理を管理する。
【００１８】
送信側計算機１の送信セッション管理部１１は、データ送信用アプリケーション７からの通信開始要求および通信終了要求にしたがって、送信側ソケット管理部５の生成および破棄を行なう。送信データ格納用バッファ１０は、データ送信用アプリケーション７から、データ送信管理部１２を経由して転送された送信データを格納する。
【００１９】
データ送信管理部１２は、データ送信用アプリケーション７から出力された送信データを受け取り、この送信データを送信データ格納用バッファ１０に格納する。また、データ送信管理部１２は、データ送信用アプリケーション７からの通信開始要求に応じて、送信側ソケット管理部５に対する送信要求を行なう。
【００２０】
受信側計算機２の受信セッション管理部１４は、データ受信用アプリケーション８からの通信開始要求及び終了要求にしたがって、受信側ソケット管理部６の生成及び破棄を行なう。受信データ格納用バッファ１３は、データ受信部１７により受信したデータを格納する。
【００２１】
データ受信管理部１５は、データ受信用アプリケーション８によるデータ取得要求にしたがって、受信データ格納用バッファ１３に格納されたデータを、データ受信用アプリケーション８に転送する。
【００２２】
送信側計算機１のデータ送信部１６は、データ送信管理部１２による送信要求にしたがって、送信データ格納用バッファ１０に格納されたデータを、前述した複数の送信先アドレスにそれぞれ対応した受信側計算機２の受信側ソケット管理部６のデータ受信部１７に送信する。受信側計算機２のデータ受信部１７は、データ送信部１６から送信されたデータを受信して、これを受信データ格納用バッファ１３へ格納する。
【００２３】
次に、本発明の第１の実施形態にしたがったデータ通信システムによる処理について説明する。図５は、本発明の第１の実施形態にしたがったデータ通信システムの処理内容を示すフローチャートである。
なお、本発明において、送信側計算機１と受信側計算機２間の通信を開始することをセッションの開始と定義し、送信側計算機１と受信側計算機２間の通信を終了することをセッションの終了と定義する。
【００２４】
まず、送信側計算機１のセッション管理表９１において、複数の送信先アドレスに対する共通のセッション名、およびその他の通信設定情報を定義する（ステップＳ１）。
【００２５】
そして、受信側計算機２とのセッション開始にあたり、データ送信用アプリケーション７は、送信セッション管理部１１に対してセッション開始要求を行なう。また、データ送信用アプリケーション７は、データ送信管理部１２にデータの送信要求を行い、送信データを転送する。
【００２６】
セッション開始要求では、データ送信用アプリケーション７は、所定のセッション名に対応付けられた送信先アドレスを有する受信側計算機２への送信要求コマンドを生成する。例えば、送信セッション管理部１１は、セッション名“ｓｅｓｓｉｏｎ−ｓ１”に対応付けられた送信先アドレス、つまり“２２４．２２４．２２４．２２４”および“２２４．２００．２００．２００”を有する受信側計算機２へのデータの送信を要求する場合には、このセッション名“ｓｅｓｓｉｏｎ−ｓ１”への送信要求コマンド“ｓｅｎｄ（ｓｅｓｓｉｏｎ−ｓ１）”を生成して、これを送信セッション管理部１１に出力する。
【００２７】
送信セッション管理部１１は、データ送信用アプリケーション７からの送信要求コマンドにしたがい、セッション管理表メモリ９ａにアクセスして、あらかじめ定義した複数の送信先アドレスを取得する（ステップＳ２）。具体的には、送信セッション管理部１１は、前述したセッション名“ｓｅｓｓｉｏｎ−ｓ１”に対応する送信要求コマンドを認識すると、セッション管理表メモリ９ａから、セッション名“ｓｅｓｓｉｏｎ−ｓ１”に対応付けられる送信先アドレス“２２４．２２４．２２４．２２４”および“２２４．２００．２００．２００”を取得する。
【００２８】
そして、送信セッション管理部１１は、ステップＳ２で取得した複数の送信先アドレスに対応した、送信側ソケット管理部５を作成する（ステップＳ３）。  一方、受信側計算機２では、ポート番号などの通信設定情報をセッション管理表９２にて定義する（ステップＳ８）。
【００２９】
受信側計算機２においてデータを受信する際には、データ受信用アプリケーション８は、受信セッション管理部１４に対してセッション開始要求を行なう。このセッション開始要求にしたがって、受信セッション管理部１４は、セッション管理表メモリ９ｂのセッション管理表９２に定義付けられる通信設定情報を参照し（ステップＳ９）、受信側ソケット管理部６を生成する（ステップＳ１０）。
【００３０】
また、送信側計算機１において、データを送信する際に、データ送信用アプリケーション７は、データ送信管理部１２に対してデータ送信要求を行なう。すると、データ送信管理部１２は、送信データを送信データ格納用バッファ１０に格納する（ステップＳ４）。その後、データ送信管理部１２は、ステップＳ３で生成した送信側ソケット管理部５にデータ送信要求を行なう（ステップＳ５）。送信側ソケット管理部５は、データ送信要求にしたがって、送信データ格納用バッファ１０より送信データを読み出してデータ送信部１６に転送する。データ送信部１６は、送信データを各送信先アドレスに対応した受信側計算機２に送信する（ステップＳ６）。
【００３１】
受信側計算機２のデータ受信部１７は、送信側計算機１のデータ送信部１６により送信されたデータを受信する（ステップＳ１１）。この受信したデータは、一旦、受信データ格納用バッファ１３に格納される（ステップＳ１２）。この状態で、データ受信用アプリケーション８がデータ受信管理部１５に対してデータ取得要求を実行した場合には、データ受信管理部１５は、受信データ格納用バッファ１３より受信済みデータを読み出して、これをデータ受信用アプリケーション８に転送する（ステップＳ１３）。
【００３２】
送信側計算機１において、セッションを終了する場合には、データ送信用アプリケーション７は、送信セッション管理部１１にセッション終了要求を行なう。送信セッション管理部１１は、セッション終了要求にしたがい、ステップＳ３において生成した送信側ソケット管理部５を破棄する（ステップＳ７）。
【００３３】
一方、受信側計算機２において、セッションを終了する場合には、データ受信用アプリケーション８は、受信セッション管理部１４に対してセッション終了要求を行なう。受信セッション管理部１４は、セッション終了要求にしたがい、ステップＳ１０において生成した受信側ソケット管理部６を破棄する（ステップＳ１４）。
【００３４】
このような構成とすれば、送信側計算機１は、セッション管理表９１で複数の送信先に対する共通のセッション名、およびその他の通信設定情報を定義し、このセッション名に基づいて、該セッション名に対応する各送信先アドレスを有するそれぞれの受信側計算機２にデータを送信する。つまり、１つの送信要求コマンドに基づいて、複数の受信側計算機２に対してデータを送信することができる。これにより、データ送信用アプリケーション７では、複数の送信先にデータを送信する場合に、送信先アドレス毎に送信要求コマンドを生成する必要が無くなる。よって送信用アプリケーション７による処理を単純化して、データ通信の効率を改善することができる。
【００３５】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。
図６は、本発明の第２の実施形態にしたがったデータ通信システムの構成図である。同図において、図２に示した構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。
【００３６】
この第２の実施形態にしたがったデータ通信システムでは、送信データを所定のサイズ毎に分割して、この分割したデータを送信側計算機１から受信側計算機２に順次送信する。受信側計算機２は、受信した分割済みデータを分割前のデータに再構成する。以下、受信した分割済みデータを再構成する処理を、組立処理と称して説明する。
【００３７】
図６に示したデータ通信システムでは、図２で示した構成に加え、送信側計算機１の送信側セッション管理部３に、データ格納部１８、送信データ取得部１９およびバッファ監視部２０が設けられる。また、受信側計算機２の受信側セッション管理部４には、受信データ取得部２１およびデータ組立部２２が設けられる。
【００３８】
ここで、送信側計算機１のデータ格納部１８は、データ送信用アプリケーション７により送信要求されたデータ毎に連続したセッション同期番号を付与する。セッション同期番号とは、送信データの送信順を示す番号である。
【００３９】
また、データ格納部１８は、セッション同期番号を付与した送信データを、予め設定したサイズ毎のデータに分割して、これらを送信データ格納用バッファ１０へ格納する。
【００４０】
送信データ格納用バッファ１０に格納されたデータが送信された後、このデータが受信側計算機２にて正常に受信されなかった場合には、同一のデータを送信データ格納用バッファ１０から再び読み出して送信する必要がある。つまり、データ格納用バッファ１０では、一度データ取得部１９により読み出されたデータを残しておく必要がある。しかし、データの送信後、例えば、受信側計算機２による再送要求から所定の時間が経過しても当該データが再び読み出されない場合には、そのデータは受信側計算機２により正常に受信されたと判断できる。そこで、バッファ監視部２０は、送信データ格納用バッファ１０に格納されるデータが送信データ取得部１９により読み出された時刻を監視し、この時刻からあらかじめ設定した時間が経過しても再送信の対象とならなかったデータを、不要なデータとみなして削除する。これにより、送信データ格納用バッファ１０を有効に利用することができる。
【００４１】
送信データ取得部１９は、送信データ格納用バッファ１０に格納されたデータを読み出す。データ組立部２２は、分割されて送信されたデータがデータ受信部１７により全て受信された場合には、これらのデータを組立てて、これを受信データ格納用バッファ１３に格納する。
【００４２】
受信データ取得部２１は、受信データ格納用バッファ１３に格納されているデータを、セッション同期番号順に取り出し、これをデータ受信管理部１５に転送する。
【００４３】
次に、前記第２の実施形態にしたがったデータ通信システムによる処理を説明する。図７は、本発明の第２の実施形態にしたがったデータ通信システムの処理内容を示すフローチャートである。同図において、図５に示した処理と同一の処理には同一のステップ名を付している。
【００４４】
まず、送信側計算機１において、図３に示すように、セッション管理表９１において、複数の送信先アドレスに対する共通のセッション名、およびその他の通信設定情報を定義する（ステップＳ１）。そして、データ送信用アプリケーション７は、送信セッション管理部１１に対してセッション開始要求を行なう。送信セッション管理部１１は、図５に示したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成を行なう。
【００４５】
一方、受信側計算機２では、セッション管理表メモリ９ｂのセッション管理表９２において、通信設定情報を定義する（ステップＳ８）。すると、データ受信用アプリケーション８によるセッション開始要求後、図５に示したステップＳ９およびＳ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成がなされる。
【００４６】
そして、データ送信管理部１２は、データ送信用アプリケーション７から転送された送信データをデータ格納部１８に格納する。データ格納部１８は、データ送信管理部１２から転送されたデータにセッション同期番号を付与し、これをあらかじめ設定されたサイズに分割する（ステップＳ１５）。データ格納部１８は、この分割した送信データを送信データ格納用バッファ１０に格納する（ステップＳ４）。そして、前述したステップＳ５と同様に送信側ソケット管理部５に対する送信要求を行なう。
【００４７】
送信データ取得部１９は、送信データ格納用バッファ１０に格納された送信用分割データを順次取得して、これをデータ送信部１６に転送する（ステップＳ１６）。データ送信部１６は、データ送信管理部１２による送信要求にしたがい、分割済みデータを送信先アドレスに対応した受信側計算機２に順次送信する（ステップＳ６）。ここで、データ送信部１６は、分割した全てのデータの送信が完了するまで、処理を継続する。
【００４８】
受信側計算機２において、前述したステップＳ１１によるデータ受信後、データ組立部２２は、転送されたデータの組立処理を開始する（ステップＳ１７）。同一のセッション同期番号が付与された分割済みデータが全て受信され、これら受信したデータの組立処理が完了した場合には、これを受信データ格納用バッファ１３に格納する（ステップＳ１８→Ｓ１２）。
【００４９】
データ受信管理部１５は、前述したデータ受信要求に基づいて、受信データ取得部２１により、受信データ格納用バッファ１３から、受信済みデータをセッション同期番号順に取り出して転送させ、これらをデ一タ受信用アプリケーション８に順次転送する（ステップＳ１９）。
【００５０】
このような構成によれば、受信側計算機２は、送信側計算機１により送信されたデータを、当該送信側計算機１により送信された順に基づいて、デ一タ受信用アプリケーション８に転送することができる。これにより、送信側計算機１により送信されたデータの受信順が異なっていても、通信データの順序性を確保することができる。
【００５１】
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。
図８は、本発明の第３の実施形態にしたがったデータ通信システムの構成図である。同図において、図６までに示した構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。また、同図に示した送信側計算機１Ａの構成要素のうち、図６までに示した送信側計算機１との構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。
本実施形態にしたがったデータ通信システムは、例えば通常時に使用している送信側計算機１Ａのメンテナンスのため、この送信側計算機１Ａが送信しようとしたデータと同一のデータを、別途用意した送信側計算機１Ｂにより受信側計算機２に送信する場合を想定している。この場合、受信側計算機２では、送信元が切り替わるのにともない、メンテナンス中の送信側計算機１Ａのメンテナンスが終了して、再び使用を開始した場合には、２台の送信側計算機１Ａ，Ｂにより送信されたデータをそれぞれ受信して組立ててしまう。
【００５２】
本実施形態では、受信側計算機２において、メンテナンス前の送信側計算機１Ａから送信されたデータと、予備の送信側計算機１Ｂにより送信されたデータとの重複した組立処理を防ぐようにする。
【００５３】
図８に示したデータ通信システムの送信側計算機１Ａでは、第２の実施形態で示した送信側計算機１内の構成（図６参照）に加え、送信側セッション管理部３に、セッション番号格納用バッファ２３ａが設けられる。送信セッション管理部１１は、前述した機能に加え、セッション番号を生成する。セッション番号とは、データ送信用アプリケーション７によるセッション開始要求時の時刻に対応して決定された識別番号である。また、受信側計算機２の受信側セッション管理部４には、セッション番号格納用バッファ２３ｂが設けられる。セッション番号格納用バッファ２３ａは、送信セッション管理部１１で生成されたセッション番号を格納する場合、および、データ送信管理部１２に転送された送信データにセッション番号を付与する場合に参照される。送信セッション管理部１１には、セッション開始時刻を計測するタイマ（図示せず）が設けられる。
【００５４】
受信側計算機２において、セッション番号格納用バッファ２３ｂは、受信セッション管理部１４により生成された照合用セッション番号を格納する場合に参照される。照合用セッション番号は、受信側計算機２により受信したデータに付与されたセッション番号のうち最新のセッション番号である。また、セッション番号格納用バッファ２３ｂは、データ組立部２２により受信されたデータに付与されたセッション番号と照合用セッション番号とを比較する場合にも参照される。
【００５５】
セッション番号格納用バッファ２３ｂに格納される照合用セッション番号が受信したデータに付与されるセッション番号と比較して小さい場合には、照合用セッション番号は、このとき受信したデータに付与されたセッション番号に更新される。
【００５６】
次に、前記第３の実施形態にしたがったデータ通信システムによる処理を説明する。図９は、本発明の第３の実施形態にしたがったデータ通信システムの処理内容を示すフローチャートである。同図において、図７までに示した処理と同一の処理には同一のステップ名を付している。
まず、前記第１の実施形態と同様に、送信側計算機１Ａでは、セッション管理表メモリ９ａのセッション管理表９１にセッション名、およびその他の通信設定情報を定義し、データ送信用アプリケーション７によるセッション開始要求後に、前述したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成がなされる。また、受信側計算機２では、セッション管理表９２に対して通信設定情報を定義し、データ受信用アプリケーション８によるセッション開始要求後に、前述したステップＳ９，Ｓ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成がなされる。
【００５７】
そして、送信側計算機１Ａにおいて、送信セッション管理部１１は、データ送信用アプリケーション７によるセッション開始要求に基づいて、現在時刻に基づいたセッション番号を生成する（ステップＳ２０）。
【００５８】
また、受信側計算機２において、データ受信用アプリケーション８は、受信セッション管理部１４に対して、セッション開始要求とともに、セッション番号初期化要求を行なう。すると、受信セッション管理部１４は、セッション番号格納用バッファ２３ｂに記憶される照合用セッション番号“未設定”と設定する。（ステップＳ２２）。
【００５９】
データを送信する場合には、送信側計算機１Ａのデータ送信管理部１２は、セッション番号格納用バッファ２３ａに記憶されたセッション番号を取得する。そして、このセッション番号を、データ送信用アプリケーション７から転送された送信データに付与する（ステップＳ２１）。
【００６０】
以降は、前述したステップＳ１５，Ｓ４，Ｓ５，Ｓ１６およびＳ６と同様に、セッション同期番号付加、データ格納、送信要求、格納データ読出しおよび送信処理がなされる。
【００６１】
受信側計算機２では、ステップＳ１１により受信したデータをデータ組立部２２に転送する。データ組立部２２は、セッション番号格納用バッファ２３ｂに記憶される照合用セッション番号を取得する（ステップＳ２３）。データ組立部２２は、取得した照合用セッション番号と、受信済みデータに付与されたセッション番号とを比較する（ステップＳ２４）。この比較の結果、受信済みデータに付与されたセッション番号が、照合用セッション番号と比較して大きい場合、もしくはセッション番号格納用バッファ２３ｂに“未設定”のデータが記憶されていた場合には、データ組立部２２は、セッション番号格納用バッファ２３ｂに記憶される照合用セッション番号を、受信したデータに付与されたセッション番号に更新する（ステップＳ２５）。そして、前述したステップＳ１７，Ｓ１８，Ｓ１２およびＳ１９と同様にデータ組立、データ格納、およびデータ読出しが実行される。
【００６２】
前述した、ステップＳ２４による処理の結果、照合用セッション番号に対して、受信したデータに付与されたセッション番号が小さい場合には、データ組立部２２は、受信したデータを破棄する（ステップＳ２４→Ｓ２６）。また、データ組立部２２は、ステップＳ１８の処理によりデータの組立が完了しなかった場合に、これを破棄する（ステップＳ１８→Ｓ２６）。
【００６３】
このような構成によれば、送信側計算機１Ａは、セッション開始時刻に基づいて生成したセッション番号を送信データに付与する。そして、受信側計算機２では、古いセッション開始時刻に対応したセッション番号が付与されたデータの組立を行なわずに、最新のセッション開始時刻に対応したセッション番号が付与されたデータの組立のみを行なうので、受信側計算機２では、組立処理を行なう際に、重複したデータに対する組立処理を行なわないので、組立処理に係る効率を改善することができる。例えば、送信側計算機１Ａによる送信処理が中断して、この送信処理が再開された場合には、当該データに付与されたセッション番号に対応するセッション開始時刻が古いものとなるので、他の送信側計算機１Ｂから送信された新しいセッション番号のデータ組立が優先され、当該送信再開による古い受信データの組立を防止することができる。
【００６４】
（第４の実施形態）
次に、本発明の第４の実施形態について説明する。
図１０は、本発明の第４の実施形態にしたがったデータ通信システムの構成図である。図１０においては、前記第２の実施形態にしたがった構成に加えて、送信側計算機１に複数の送信側ソケット管理部５を生成し、受信側計算機２に複数の受信側ソケット管理部６を生成する。
【００６５】
送信セッション管理部１１は、前記第１の実施形態にしたがった構成と異なり２つの送信側ソケット管理部５に対して送信要求を行なう。送信データ取得部１９は、前記第３の実施形態にしたがった構成と異なり送信データ格納用バッファ１０から取得したデータを並列にデータ送信部１６に転送し、多重化する。
【００６６】
受信セッション管理部１４は、前記第３の実施形態にしたがった構成と異なり、多重化させるべき数に対応した受信側ソケット管理部６の生成および破棄を行なう。これらの受信側ソケット管理部６の数は、送信セッション管理部１１により生成した送信側ソケット管理部５の数に対応している。
【００６７】
データ組立部２２は、前記第１の実施形態にしたがった構成と異なり、複数のデータ受信部１７から受信したデータについて、先着か後着かの判別を行い、先着のデータを組立て、その他のデータを破棄する。
【００６８】
次に、第４の実施形態の作用を、図１１を参照して説明する。
図１１は、第４の実施形態にしたがったデータ通信システムの処理を示すフローチャートである。同図において、図９までに示した処理と同一の処理には同一のステップ名を付している。
まず、前記第１の実施形態と同様に、送信側計算機１では、セッション管理表９１によりセッション名、およびその他の通信設定情報を定義し、データ送信用アプリケーション７によるセッション開始要求後、図５に示したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成を行なう。ただし、セッション開始要求には、データの重要度の情報が含まれる。また、生成される送信側ソケット管理部５の数は、送信データの多重化数に対応する。この多重化の数はデータの重要度に対応する。
【００６９】
また、受信側計算機２では、セッション管理表９２に通信設定情報を定義し、データ受信用アプリケーション８によるセッション開始要求後、図５に示したステップＳ９，Ｓ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成を行なう。ただし、セッション開始要求には、データの重要度の情報が含まれる。また、受信セッション管理部１４は、受信側計算機２で使用できる全てのＩ／Ｆアドレスに対応した受信側ソケット管理部６を生成する。このうち使用する受信側ソケット管理部６の数は、送信データの多重化数に対応する。
【００７０】
そして、送信側計算機１において、前述したステップＳ１５，Ｓ４，Ｓ５およびＳ１６と同様にセッション同期番号付加、データ格納、送信要求、格納データ読出しおよび送信処理がなされる。ただし、送信データには、重要度の情報が含まれる。送信データ取得部１９は、送信データ格納用バッファ１０から取得した送信データを、このデータに含まれた重要度情報に基づいて所定の数に多重化し、この多重化してデータの個々のデータを、多重化数に対応して生成された各データ送信部１６にそれぞれ転送する（ステップＳ２６）。そして、各データ送信部１６は、送信データ取得部１９から転送されたデータを受信側計算機２に送信する（ステップＳ６）。
【００７１】
受信側計算機２において、複数生成された受信側ソケット管理部６のデータ受信部１７は、データ送信部１６により送信されたデータをそれぞれ受信して、これをデータ組立部２２に転送する（ステップＳ１１）。
【００７２】
データ組立部２２では、データ受信部１７から転送されたデータが、多重化されたデータのうち、先着のデータであるか否かを判別する。この先着のデータであるか否かを判別する処理とは、このデータと同一のデータが既に受信されて、組立てられたデータであるか否かを判別する処理である。送信データは、データ格納部１８により分割される際に、各分割データに組立番号が付与される。組立番号とは、各分割データの分割順を示す。データ組立部２２では、受信したデータに付与されたセッション同期番号および組立番号を管理し、これらの番号と、逐次受信したデータに付与されるセッション同期番号と組立番号とを照合する。この結果、セッション同期番号および組立番号がともに同一であるデータを既に受信したと判別された場合には、多重化されたデータのうち後着のデータであると判断できる。
【００７３】
この判別の結果、受信したデータが、多重化されたデータのうち最初に受信したデータ、つまり先着のデータである場合には、このデータは、データ組立部２２による組立処理の対象となる（ステップＳ２９→Ｓ１７）。一方、受信したデータが、多重化されたデータのうち後着のデータである場合にはこれを破棄する（ステップＳ２９→Ｓ２８）。
【００７４】
データの組立後は、前述したステップＳ１８，Ｓ１２およびＳ１９と同様にデータ組立て、データ格納およびデータ読出しがなされる。そして、セッションの終了時は、前述したステップＳ７およびＳ１４と同様に送信側ソケット管理部５および受信側ソケット管理部６の破棄がなされる。
【００７５】
このような構成とすれば、送信データの多重化数を、このデータの重要度に応じて変更して送信するので、重要度が低いデータに関しては、多重化数を減らす、または多重化させずに送信することができる。したがって、データの無駄な多重化を未然に防ぐことができるようになるので、ネットワークを有効活用することができる。
【００７６】
（第５の実施形態）
次に本発明の第５の実施形態について説明する。
図１２は、本発明の第５の実施形態にしたがったデータ通信システムの構成図である。同図において、すでに図示した構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。
受信側計算機２の受信データ取得部２１は、受信データ格納用バッファ１３に格納されたデータをセッション同期番号順にデータ受信用アプリケーション８に転送するが、例えば、ネットワークの混雑などにより特定のセッション同期番号が付与されたデータが受信データ格納用バッファ１３に格納されない場合には、この番号以後のセッション同期番号が付与されたデータが既に受信されて受信データ格納用バッファ１３に格納されている場合でも、データ受信用アプリケーション８に転送されない。
【００７７】
受信データ格納用バッファ１３に格納できるデータの数は限られるので、受信が遅延しているデータを受信次第、これを受信データ格納用バッファ１３に迅速に格納し、データ受信用アプリケーション８に対するデータ転送を再開させる必要がある。しかし、前述した遅延データを受信した際に、データ組立部２２により、別のセッション同期番号に対応したデータの組立処理を実行している場合、遅延データの組立処理が出来ない。これを改善するのが本実施形態の趣旨である。
【００７８】
本実施形態にしたがったデータ通信システムは、データに付与されたセッション同期番号に基づいて、このデータを受信データ格納用バッファ１３に格納するか否かを判別する機能を有している。
【００７９】
図１２に示したデータ通信システムでは、図６で示した構成要素に加えて、受信側計算機２の受信側セッション管理部４に、組立ウィンドウ枠バッファ２４が設けられる。組立ウィンドウ枠バッファ２４では、開始点２５および終了点２６が記憶される。また、受信側セッション管理部４には、ウィンドウ枠管理部２７が設けられる。開始点２５は、セッション同期番号の所定の範囲における先頭の値である。終了点２６は、セッション同期番号の所定の範囲における末尾の値である。
【００８０】
ここで、ウィンドウ枠管理部２７は、データ受信部１７により転送されたデータに付与されたセッション同期番号が、組立ウィンドウ枠バッファ２４の開始点開始点２５から終了点２６までの値である場合には、受信済みデータをデータ組立部２２に転送する。一方、ウィンドウ枠管理部２７は、セッション同期番号が組立ウィンドウ枠バッファ２４の開始点２５と終了点２６の範囲内に含まれていない場合には、データを破棄する。データ組立部２２では、開始点２５に対応したセッション同期番号が付与されたデータを組立てた場合には、この組立てたデータに付与されたセッション同期番号に合わせて、開始点２５および終了点２６にセットするセッション同期番号の値を順次更新する。
【００８１】
次に、前記第５の実施形態にしたがったデータ通信システムによる動作について説明する。
図１３は、第５の実施形態にしたがったデータ通信システムによる動作の内容を示すフローチャートである。同図において、図１１までに示した処理と同一の処理には同一のステップ名を付している。
【００８２】
まず、前記第１の実施形態と同様に、送信側計算機１では、セッション管理表９１によりセッション名、およびその他の通信設定情報を定義し、データ送信用アプリケーション７によるセッション開始要求後、図５に示したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成を行なう。また、受信側計算機２では、セッション管理表９２により通信設定情報を定義し、データ受信用アプリケーション８によるセッション開始要求後、図５に示したステップＳ９，Ｓ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成を行なう。
【００８３】
送信側計算機１では、図５に示したステップＳ１５，Ｓ４，Ｓ５，Ｓ１６およびＳ６と同様にセッション同期番号付加、データ格納、送信要求、格納データ読出しおよび送信処理を行なう。
【００８４】
そして、受信側計算機２において、データ受信部１７は、送信データを受信し、これをウィンドウ枠管理部２７に転送する（ステップＳ１１）。ウィンドウ枠管理部２７は、組立ウィンドウ枠バッファ２４から、開始点２５と終了点２６の値を読出し、受信済みデータに付与されたセッション同期番号が、開始点２５から終了点２６とまでの値であるか否かを判定する（ステップＳ３０）。
【００８５】
セッション同期番号が、開始点２５と終了点２６の範囲内に含まれていると判別された場合には、ウィンドウ枠管理部２７は、判別を行ったセッション同期番号が付与されたデータをデータ組立部２２に転送する。一方、セッション同期番号が開始点と終了点の範囲内に含まれていない場合には、このデータのデータ組立部２２への転送を保留する（ステップＳ３１）。
【００８６】
そして、データ組立部２２では、図５に示したステップＳ１７と同様にデータの組立てを行い、特定のセッション同期番号に係るデータの組立処理が終了した場合には（ステップＳ１８のＹＥＳ）、この組立てたデータに付与されたセッション同期番号が、開始点２５の値と同一であった場合には、開始点２５および終了点２６に記憶される値にそれぞれ１を加算する（ステップＳ３２→Ｓ３３）。これにより、セッション同期番号の範囲を更新する。
【００８７】
そして、データ組立部２２は、組立てたデータを受信データ格納用バッファ１３に格納する。以後の、送信側計算機１および受信側計算機２における処理は、前述した第２の実施形態で説明した処理と同様である。
【００８８】
このような構成とすれば、受信したデータに付与されたセッション同期番号が、予め設定された範囲内に含まれている場合のみに、組立処理がなされて、受信データ格納用バッファ１３に格納されるので、データの組立に係る効率を上げることができ、この組立てたデータを受信用アプリケーション８に転送するまでの処理時間を短縮することができるようになる。
【００８９】
（第６の実施形態）
次に本発明の第６の実施形態について説明する。
受信側計算機２によりデータを受信した場合、例えば分割されたデータの一部が、通信エラー等の原因により通信回線で欠損してしまい、受信されない場合がある。この対策として、一定のタイムアウト時間が経過しても、分割された全データの受信が確認できない場合には、データの欠損が発生したと判断し、データの再送を送信側計算機１に要求する。
【００９０】
分割済みの送信データが全て揃うまでの時間は、分割データの数に比例して長くなるが、タイムアウト時間は、任意に設定した時間に固定されている。つまり、設定したタイムアウトが長い場合には、データの欠損の可能性が高い場合でも、前述したタイムアウト時間に達するまでデータの再送要求が実行されない。これを改善するのが本実施形態の趣旨である。本実施形態にしたがったデータ通信システムは、データの容量に応じてタイムアウト時間を決定する機能を有している。
【００９１】
図１４は、本発明の第６の実施形態を示すデータ通信システムの構成図である。同図において、図１２までに示した構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。
【００９２】
図１４に示したデータ通信システムでは、図１２に示した構成に加えて、送信側計算機１の送信側ソケット管理部５にデータ再送部２８と再送要求受信部２９が設けられる。また、受信側計算機２の受信側セッション管理部４に組立監視部３０が設けられ、受信側ソケット管理部６には、再送要求送信部３１が設けられる。
【００９３】
ここで、データ組立部２２は、特定のセッション同期番号が付与された最初の分割データを受信してから、組立処理が完了して分割前のデータに変換されるまでの時間をカウントする。
【００９４】
組立監視部３０は、前述した分割済みデータの組立処理が所定の時間内に完了しなかった場合には、再送要求送信部３１を経由して、データの再送要求を行なう。再送要求送信部３１は、送信側計算機１への再送要求を示す制御信号を出力する。この制御信号には、組立てが完了しなかったデータに付与されたセッション同期番号が含まれる。送信側計算機１において、再送要求受信部２９は、受信側計算機２の再送要求送信部３１からの制御信号に基づいて、制御信号をデータ再送部２８に出力する。データ再送部２８は、送信データ格納用バッファ１０に格納されているデータから、再送対象のデータを送信データ取得部１９より取得させて再送する。
【００９５】
次に、前記第６の実施形態にしたがったデータ通信システムによる動作を、図１５を参照して説明する。同図において、図１３までに示した処理と同一の処理には同一のステップ名を付している。
【００９６】
まず、前記第１の実施形態と同様に、送信側計算機１では、セッション管理表９１によりセッション名、およびその他の通信設定情報を定義し、データ送信用アプリケーション７によるセッション開始要求後、図５に示したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成を行なう。また、受信側計算機２では、セッション管理表９２により通信設定情報を定義し、データ受信用アプリケーション８によるセッション開始要求後、図５に示したステップＳ９，Ｓ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成を行なう。
【００９７】
送信側計算機１では、図５に示したステップＳ１５，Ｓ４，Ｓ５，Ｓ１６およびＳ６と同様にセッション同期番号付加、データ格納、送信要求、格納データ読出しおよび送信処理処理を行なう。
【００９８】
受信側計算機２では、図１３に示したステップＳ１１およびＳ３０と同様にデータ受信および組立ウィンドウ枠バッファ２４の参照を実行する。データ組立部２２では、既に受信したデータに付与されたセッション同期番号を管理しており、データ組立部２２は、分割済み送信データが転送された場合、前述した、管理中のセッション同期番号を読み出して、受信済みデータに付与されたセッション同期番号が、管理中のセッション同期番号と一致しない場合には、セッション同期番号に係る最初の分割データであると判断し、このセッション同期番号を管理対象に加えた上で、所定のタイムアウト時間のカウントを開始する（ステップＳ３４→Ｓ３５）。
【００９９】
タイムアウト時間は、データのサイズに比例した時間である。送信側計算機１では、データを分割する際にデータ分割数の情報を、各分割データに付与する。つまり、受信側計算機２では、この分割データに付与された分割数に基づいて、この分割データの分割前のデータサイズを算出することができる。
【０１００】
そして、設定したタイムアウト時間が経過しても、組立処理に必要なデータが全て揃わなかった場合には、組立監視部３０は、再送要求送信部３１に対して再送要求通知を行なう（ステップＳ３７→Ｓ３８）。再送要求送信部３１は、組立監視部３０からの再送要求通知にしたがって、送信側計算機１に制御信号を出力する（ステップＳ３９，Ｓ４０）。
【０１０１】
送信側計算機１の再送要求受信部２９は、受信側計算機２の再送要求送信部３１からの再送要求にしたがって、データ再送部２８に対する再送依頼通知を行なう（ステップＳ４１，Ｓ４２）。
【０１０２】
データ再送部２８は、再送依頼にしたがって、再送対象であるセッション同期番号が付与されたデータを、送信データ取得部１９により送信データ格納用バッファ１０から読み出させて、これを受信側計算機２に対して再送する（ステップＳ４３，Ｓ４４，４５）。再送されたデータは、受信側計算機２のデータ受信部１７において受信される（ステップＳ１１）。
【０１０３】
このような構成とすれば、受信側計算機２によるデータの受信後、このデータのサイズに応じたタイムアウト時間が経過しても組立処理対象のデータが全て揃わない場合には、送信側計算機１に再送を要求する。これにより、データ毎に適した再送要求を実行することができるので、通信効率を改善することができる。
【０１０４】
（第７の実施形態）
次に、本発明の第７の実施形態について説明する。
図１６は、本発明の第７の実施形態にしたがったデータ通信システムの構成図である。同図において、図１４までに示した構成要素と同一の構成要素には同一の符号を付しており、ここではその説明を省略する。
【０１０５】
図１６に示したデータ通信システムでは、第１の実施形態での構成（図２参照）に加え、送信側計算機１の送信側セッション管理部３に、データ送信有無バッファ３２が設けられる。また、受信側計算機２の受信側セッション管理部４には、データ受信有無バッファ３３および通信状態バッファ３４が設けられる。
【０１０６】
図１７は、本実施形態で用いるセッション管理表９１の一例である。このセッション管理表９１は、図３に示したセッション管理表９１と比較して、セッション監視用タイムアウト時間が新たに定義付けられる。これは、データ送信に係るタイムアウト時間である。
【０１０７】
図１８は、本実施形態にしたがったセッション管理表メモリ９ｂに記憶されるセッション管理表９２の一例である。このセッション管理表９２において定義付けられる監視タイムアウト時間は、データ受信に係るタイムアウト時間である。
【０１０８】
送信側計算機１のデータ送信管理部１２は、データ送信を行なうとデータ送信有無バッファ３２に対して“データ送信あり”の情報を書き込む。送信セッション管理部１１は、データ送信有無バッファ３２を参照し、セッション管理表９１で定義されるセッション監視用タイムアウト時間の間に、データ送信管理部１２がデータ送信要求を行ったか否かを監視する。
【０１０９】
送信セッション管理部１１は、監視用タイムアウト時間が経過しても、データ送信管理部１２によるデータ送信要求がされないと判断した場合には、データ送信管理部１２に対して通信確認データの送信要求を行なう。通信確認データとは、送信側計算機１と受信側計算機２との間で正常にデータ通信がなされているか否かを確認するために用いられるデータである。
【０１１０】
送信側計算機１から送信されたデータは、受信側セッション管理部４に設けられる受信データ判別部３５により、その種別が識別される。データの種別とは、通常のデータまたは通信確認データである。
【０１１１】
データ受信管理部１５は、受信したデータが通常のデータであると判別した場合には、データ受信有無バッファ３３に“データ受信あり”の情報を書き込み、データをデータ受信用アプリケーション８に転送する。データ受信管理部１５は、データが、通信確認データであると判別した場合には、データ受信有無バッファ３３に“データ受信あり”の情報を書き込み、通信確認データを破棄する。
【０１１２】
受信セッション管理部１４は、データ受信用アプリケーション８によるセッション開始要求にしたがって、セッション管理表９２で定義されるセッション監視用タイムアウト時間を読出した後に、データ受信有無バッファ３３を参照して、監視用タイムアウト時間内にデータ受信管理部１５がデータを受信したかどうかを監視する。
【０１１３】
監視タイムアウト時間内にデータの受信がなされたと判別された場合には、通信状態バッファ３４に“通信継続”の情報を書き込み、時間内にデータの受信がなさなかったと判別された場合には、通信状態バッファ３４に“通信中断”の情報を書き込む。
【０１１４】
次に、前記第７の実施の形態にしたがったデータ通信システムによる動作を、図１９を参照して説明する。同図において、図５に示した処理と同一の処理には同一のステップ名を付している。
まず、前記第１の実施形態と同様に、送信側計算機１では、セッション管理表９１によりセッション名、およびその他の通信設定情報を定義し、データ送信用アプリケーション７によるセッション開始要求後、図５に示したステップＳ２，Ｓ３と同様にセッション管理表９１の参照および送信側ソケット管理部５の生成を行なう。ただし、送信セッション管理部１１は、セッション開始要求にしたがって、セッション管理表９１から、監視用タイムアウト時間を読み出して、カウントを開始する。
【０１１５】
また、受信側計算機２では、セッション管理表９２を参照して通信ポート番号を決定し、データ受信用アプリケーション８によるセッション開始要求後、図５に示したステップＳ９，Ｓ１０と同様にセッション管理表９２の参照および受信側ソケット管理部６の生成を行なう。ただし、受信セッション管理部１４は、セッション開始要求にしたがって、セッション管理表９２から、監視用タイムアウト時間を読み出して、カウントを開始する。
【０１１６】
送信側計算機１では、前述したステップＳ４，Ｓ５と同様に送信データ格納および送信要求を実行し、データ送信管理部１２は、データ送信を行なうと（ステップＳ６）、“データ送信あり”の情報を、データ送信有無バッファ３２に書き込む（ステップＳ４６）。送信セッション管理部１１は、監視用タイムアウト時間のカウントと並行して、データ送信有無バッファ３２を監視し、データ送信管理部１２が、監視用タイムアウト時間内にデータ送信を行ったか否かを判別する。この判別は、データ送信有無バッファ３２に、“データ送信あり”の情報が記憶されているか否かにより判別する。
【０１１７】
この判別の結果、監視用タイムアウト時間が経過してもデータが送信されていないと判別された場合には、送信セッション管理部１１は、データ送信管理部１２に対して、通信確認データの送信を要求する（ステップＳ４７→Ｓ４８）。データ送信管理部１２は、この要求にしたがって、通信確認データを生成し、これを送信側ソケット管理部５に転送する。すると、データ送信管理部１２は、“データ送信あり”の情報を、データ送信有無バッファ３２に書き込む（ステップＳ４９，Ｓ５０）。
【０１１８】
データ受信部１７によりデータが受信されると、このデータが受信データ判別部３５に転送される。受信データ判別部３５は、このデータのデータ種別を判別する。この結果、データが通常データであった場合には、これを受信データ格納用バッファ１３に格納し、データ受信管理部１５に制御信号を出力する（ステップＳ５１のＹＥＳ）。一方、データが通信確認データであった場合には、データを破棄し、データ受信管理部１５に制御信号を出力する（ステップＳ５１→Ｓ１２）。
【０１１９】
データ受信管理部１５は、受信データ判別部３５による制御信号にしたがって、データ通信有無バッファ３３に“データ受信有り”の情報を書き込む（ステップＳ５３）。
【０１２０】
受信セッション管理部１４は、データ受信有無バッファ３３を参照し、この結果、“データ受信あり”の情報が書き込まれていた場合には、通信状態バッファ３４に“通信継続”の情報を書き込む（ステップＳ５６→Ｓ５７）。一方、“データ受信あり”の情報が書き込まれていない場合には、受信セッション管理部１４は、通信状態バッファ３４に“通信中断”の情報を書き込む（ステップＳ５６→Ｓ５８）。
【０１２１】
データ受信管理部１５は、通信状態バッファ３４を参照し、この結果“通信継続”の情報が書き込まれている場合には、受信されたデータを受信格納用バッファ１３より取り出して、これをデータ受信用アプリケーション８に転送する（ステップＳ５４→Ｓ１３）。一方、通信状態バッファ３４を参照して、“通信中断”の情報が書き込まれている場合には、データ受信用アプリケーション８に“通信中断”の情報を転送する（ステップＳ５４→Ｓ５５）
このような構成によれば、送信側計算機１および受信側計算機２により、データの送信または受信が正常になされているか否かの判別を行なうことができるので、送受信状態の確認情報の送受信を行なわないコネクションレス型通信においても、データの受信状態を把握することができる。
【０１２２】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【０１２３】
【発明の効果】
以上説明したように、本発明によれば、データ送信用のアプリケーションは、複数の送信先に共通したセッション名に係る送信要求コマンドを生成し、このコマンドに基づいて複数の送信先に対するデータ送信が行なわれるようにしたので、一度の送信要求コマンド生成により、複数のコンピュータにデータを送信することができるので、アプリケーションの処理を簡略化して、高信頼なデータ配信を行なうことができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態にしたがったデータ通信システムの全体構成図。
【図２】図１に示した送信側計算機１および受信側計算機２の内部構成を示す図。
【図３】図１に示した送信側計算機１で用いられるセッション管理表９１の一例を示す図。
【図４】図１に示した受信側計算機２で用いられるセッション管理表９２の一例を示す図。
【図５】本発明の第１の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図６】本発明の第２の実施形態にしたがったデータ通信システムの送信側計算機１および受信側計算機２の内部構成を示す図。
【図７】本発明の第２の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図８】本発明の第３の実施形態にしたがったデータ通信システムの送信側計算機１Ａおよび受信側計算機２の内部構成を示す図。
【図９】本発明の第３の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図１０】本発明の第４の実施形態にしたがったデータ通信システムの送信側計算機１および受信側計算機２の内部構成を示す図。
【図１１】本発明の第４の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図１２】本発明の第５の実施形態にしたがったデータ通信システムの送信側計算機１および受信側計算機２の内部構成を示す図。
【図１３】本発明の第５の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図１４】本発明の第６の実施形態にしたがったデータ通信システムの送信側計算機１および受信側計算機２の内部構成を示す図。
【図１５】本発明の第６の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【図１６】本発明の第７の実施形態にしたがったデータ通信システムの送信側計算機１および受信側計算機２の内部構成を示す図。
【図１７】図１６に示した送信側計算機１で用いられるセッション管理表９１の一例を示す図。
【図１８】図１６に示した受信側計算機２で用いられるセッション管理表９２の一例を示す図。
【図１９】本発明の第７の実施形態にしたがったデータ通信システムの処理内容を示すフローチャート。
【符号の説明】
１，１Ａ，１Ｂ…送信側計算機、２…受信側計算機、３…送信側セッション管理部、４…受信側セッション管理部、５…送信側ソケット管理部、６…受信側ソケット管理部、７…データ送信用アプリケーション、８…データ受信用アプリケーション、９ａ，９ｂ…セッション管理表メモリ、９１，９２…セッション管理表、１０…送信データ格納用バッファ、１１…送信セッション管理部、１２…データ送信管理部、１３…受信データ格納用バッファ、１４…受信セッション管理部、１５…データ受信管理部、１６…データ送信部、１７…データ受信部、１８…データ格納部、１９…送信データ取得部、２０…バッファ監視部、２１…受信データ取得部、２２…データ組立部、２３ａ，２３ｂ…セッション番号格納用バッファ、２４…組立ウィンドウ枠バッファ、２５…開始点、２６…終了点、２７…ウィンドウ枠管理部、２８…データ再送部、２９…再送要求受信部、３０…組立監視部、３１…再送要求送信部、３２…データ送信有無バッファ、３３…データ受信有無バッファ、３４…通信状態バッファ、３５…受信データ判別部。
【図１】
2004303041.tif 000003
【図２】
2004303041.tif 000004
【図３】
2004303041.tif 000005
【図４】
2004303041.tif 000006
【図５】
2004303041.tif 000007
【図６】
2004303041.tif 000008
【図７】
2004303041.tif 000009
【図８】
2004303041.tif 000010
【図９】
2004303041.tif 000011
【図１０】
2004303041.tif 000012
【図１１】
2004303041.tif 000013
【図１２】
2004303041.tif 000014
【図１３】
2004303041.tif 000015
【図１４】
2004303041.tif 000016
【図１５】
2004303041.tif 000017
【図１６】
2004303041.tif 000018
【図１７】
2004303041.tif 000019
【図１８】
2004303041.tif 000020
【図１９】
2004303041.tif 000021