(57)【要約】【課題】  データ伝送効率に優れたデータ伝送システムを提供する。【解決手段】  データ送信装置２１０はパケットの送信に所定の第２時間以上を費やした場合，上記パケットの再送信を中止し，所定の処理により上記データ受信装置に再送信の中止を伝達する中止処理手段２６６を備え，データ受信装置２２０は，データ送信装置における上記所定の処理に応じて，パケットが欠落した状態でデータの処理を進めるデータ処理手段３６０を備えるデータ伝送システムが提供される。かかる構成によりパケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく，データ再生のリアルタイム性を維持することができる。【選択図】    図４
2006020130.tif 000002
【特許請求の範囲】
【請求項１】
データを複数のパケットに分割して各々固有のシーケンス番号を付与し，当該シーケンス番号に応じて前記パケットを送信するデータ送信装置と，前記データ送信装置から送信された前記パケットを受信して前記データ送信装置に受信完了信号を送信し，前記シーケンス番号順に並べられる所定数のパケット群を受信した後，前記パケット群をデータに復号して当該データの処理を開始するデータ受信装置と，からなるデータ伝送システムにおいて：
前記データ送信装置は，
受信完了信号を受信しないシーケンス番号のパケットを所定の第１時間間隔で再送信するパケット再送信手段と；
所定の第２時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理手段と；
を備え，
前記データ受信装置は，
前記所定の処理に応じて，前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と；
を備えることを特徴とする，データ伝送システム。
【請求項２】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値変位させる処理であり，
前記データ処理手段は，前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする，請求項１に記載のデータ伝送システム。
【請求項３】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値にリセットする処理であり，
前記データ処理手段は，前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする，請求項１に記載のデータ伝送システム。
【請求項４】
データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と；
パケットの前記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と；
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；
受信完了信号を受信しないシーケンス番号のパケットを，前記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；
所定の第２時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理手段と；
を備えることを特徴とする，データ送信装置。
【請求項５】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値変位させる処理であることを特徴とする，請求項４に記載のデータ送信装置。
【請求項６】
前記所定値は，前記シーケンス番号の最大値の略半分の値であることを特徴とする，請求項５に記載のデータ送信装置。
【請求項７】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値にリセットする処理であることを特徴とする，請求項４に記載のデータ送信装置。
【請求項８】
前記所定値は，０（ゼロ）であることを特徴とする，請求項７に記載のデータ送信装置。
【請求項９】
前記所定の処理は，前記第２時間後に送信するパケットに再送信の中止を示すフラグを立てることを特徴とする，請求項４に記載のデータ送信装置。
【請求項１０】
前記所定の処理は，前記第２時間後に再送信の中止を示す別のパケットを送信することを特徴とする，請求項４に記載のデータ送信装置。
【請求項１１】
前記中止処理手段は，パケットの伝送レートを落として前記別のパケットを送信することを特徴とする，請求項１０に記載のデータ送信装置。
【請求項１２】
前記所定の処理は，前記第２時間後に，再送信の中止を示すビーコンを打つことを特徴とする，請求項４に記載のデータ送信装置。
【請求項１３】
前記所定の処理は，前記第２時間後に，次以降のパケットの送信を一時停止し，一定期間後に送信再開することを特徴とする，請求項４に記載のデータ送信装置。
【請求項１４】
前記データは，リアルタイムな画像の動作を表現する動画データであることを特徴とする，請求項４に記載のデータ送信装置。
【請求項１５】
コンピュータを，
データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と；
パケットの前記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と；
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；
受信完了信号を受信しないシーケンス番号のパケットを，前記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；
所定の第２時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理手段と；
して機能させることを特徴とする，コンピュータプログラム。
【請求項１６】
データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と；
パケットの前記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と；
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；
受信完了信号を受信しないシーケンス番号のパケットを，前記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；
前記パケットの送信時に利用されるバッファが所定容量を超えたとき，次以降のパケットの送信を中止し，送信の中止を示す所定の処理を行う中止処理手段と；
を備えることを特徴とする，データ送信装置。
【請求項１７】
前記中止処理手段は，さらに前記バッファの入力データをクリアすることを特徴とする，請求項１６に記載のデータ送信装置。
【請求項１８】
コンピュータを，
データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；
前記シーケンス番号に応じて前記パケットの送信順を決定する送信決定手段と；
パケットの前記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；
前記パケットを最初に送信してからの経過時間を前記パケット毎にカウントするカウント手段と；
前記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；
受信完了信号を受信しないシーケンス番号のパケットを，前記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；
前記パケットの送信時に利用されるバッファが所定容量を超えたとき，次以降のパケットの送信を中止し，送信の中止を示す所定の処理を行う中止処理手段と；
して機能させることを特徴とする，コンピュータプログラム。
【請求項１９】
データ送信装置から送信されたパケットを受信するパケット受信手段と；
前記パケットの受信に応じて前記データ送信装置に受信完了信号を送信する受信応答手段と；
シーケンス番号順に並べられる所定数のパケット群を受信した後，前記パケット群をデータに復号して当該データの処理を開始する処理開始手段と；
前記データ送信装置における所定の処理に応じて，前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と；
とを備えることを特徴とする，データ受信装置。
【請求項２０】
前記所定の処理は，パケットのシーケンス番号を所定値変位させる処理であり，
前記データ処理手段は，前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２１】
前記データ処理手段は，前記所定値が前記シーケンス番号の最大値の略４分の１の値以上変移していることを検知して前記所定のデータ処理を行うことを特徴とする，請求項２０に記載のデータ受信装置。
【請求項２２】
前記所定の処理は，パケットのシーケンス番号を所定値にリセットする処理であり，
前記データ処理手段は，前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２３】
前記データ処理手段は，前記シーケンス番号が０（ゼロ）であることを検知して前記所定のデータ処理を行うことを特徴とする，請求項２２に記載のデータ受信装置。
【請求項２４】
前記所定の処理は，次に送信されるパケットの再送信の中止を示すフラグを立てる処理であり，
前記データ処理手段は，受信したパケットに前記フラグが立っていた場合，前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２５】
前記所定の処理は，フレームの相違する別のパケットを送信する処理であり，
前記データ処理手段は，前記別のパケットを受信して前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２６】
前記所定の処理は，再送信の中止を示すビーコンを打つ処理であり，
前記データ処理手段は，前記ビーコンを受信して前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２７】
前記所定の処理は，前記パケットの送信を一定期間停止する処理であり，
前記データ処理手段は，前記一定期間パケットが受信されないことを検知して前記所定のデータ処理を行うことを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２８】
前記データは，リアルタイムな画像の動作を表現する動画データであることを特徴とする，請求項１９に記載のデータ受信装置。
【請求項２９】
コンピュータを，
データ送信装置から送信されたパケットを受信するパケット受信手段と；
前記パケットの受信に応じて前記データ送信装置に受信完了信号を送信する受信応答手段と；
シーケンス番号順に並べられる所定数のパケット群を受信した後，前記パケット群をデータに復号して当該データの処理を開始する処理開始手段と；
前記データ送信装置における所定の処理に応じて，前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と；
として機能させることを特徴とする，コンピュータプログラム。
【請求項３０】
データを複数のパケットに分割して各々固有のシーケンス番号を付与し，当該シーケンス番号に応じて前記パケットを送信するデータ送信装置と，前記データ送信装置から送信された前記パケットを受信して前記データ送信装置に受信完了信号を送信し，前記シーケンス番号順に並べられる所定数のパケット群を受信した後，前記パケット群をデータに復号して当該データの処理を開始するデータ受信装置と，を利用したデータ伝送方法であって：
前記データ送信装置が，
受信完了信号を受信しないシーケンス番号のパケットを所定の第１時間間隔で再送信するパケット再送信工程と；
所定の第２時間内に前記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理工程と；
前記データ受信装置が，
前記所定の処理に応じて，前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理工程と；
を含むことを特徴とする，データ伝送システム。
【請求項３１】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値変位させる処理であり，
前記データ処理工程は，前記所定値の変移を検知して前記所定のデータ処理を行うことを特徴とする，請求項３０に記載のデータ伝送方法。
【請求項３２】
前記所定の処理は，前記第２時間後に送信するパケットのシーケンス番号を所定値にリセットする処理であり，
前記データ処理工程は，前記所定値へのリセットを検知して前記所定のデータ処理を行うことを特徴とする，請求項３０に記載のデータ伝送方法。
【請求項３３】
データを複数のパケットに分割して各々固有のシーケンス番号を付与し，当該シーケンス番号に応じて前記パケットを送信するデータ送信装置と，前記データ送信装置から送信された前記パケットを受信して前記データ送信装置に受信完了信号を送信し，前記シーケンス番号順に並べられる所定数のパケット群を受信した後，前記パケット群をデータに復号して当該データの処理を開始するデータ受信装置と，を利用したデータ伝送方法であって：
前記データ送信装置が，
受信完了信号を受信しないシーケンス番号のパケットを所定の第１時間間隔で再送信するパケット再送信工程と；
前記パケットの送信時に利用されるバッファが所定容量を超えたとき，次以降のパケットの送信を中止し，送信の中止を示す所定の処理を行う中止処理工程と；
前記データ受信装置が，
前記所定の処理に応じて，前記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理工程と；
を含むことを特徴とする，データ伝送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，データ伝送システムおよび方法，データ送信装置，データ受信装置，並びに，そのコンピュータプログラムに関する。
【背景技術】
【０００２】
無線ネットワークに関する標準的な規格の一例として米国電子技術者協会ＩＥＥＥ（Ｔｈｅ  Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）８０２．１１，ＨｉｐｅｒＬＡＮ／２，ＩＥＥＥ３０２．１５．３，Ｂｌｕｅｔｏｏｔｈなどが挙げられる。
【０００３】
上記ＩＥＥＥ８０２．１１規格には，無線通信方式や使用する周波数帯域の違いなどにより，ＩＥＥＥ８０２．１１ａ規格，ＩＥＥＥ８０２．１１ｂ規格などの各種無線通信プロトコルが存在する。
【０００４】
従来から知られているこのような無線通信プロトコルでは，データを送信する側でデータ列をパケットに分割し，かかるパケットを送信単位にしてデータの伝送を行っている。上記の通信が正常に行われているかどうかを認識するため，データの受信側ではパケットの受信に応じて受信完了信号（ＡＣＫ）を送信側に送信し，送信側ではその応答を受けてパケットの送信が確実に行われたことを確認している。また，上記受信完了信号（ＡＣＫ）が確認されない場合，パケットは正しく伝送されなかったものとみなされ同パケットを再送する処理が行われていた。
【０００５】
しかし，上記の受信完了信号（ＡＣＫ）の応答が無い場合，何回も同パケットの再送が行われ，その間，次のパケットを送信できずデータの伝送が進まない等の問題があった。
【０００６】
この問題を解決するために，ＩＥＥＥ８０２．１１ｅ等の通信プロトコルでは，送信側において受信完了信号（ＡＣＫ）を待つことなく，複数のパケットを送信し，後からまとめて受信完了信号（ＡＣＫ）の応答があったかを判断するグループＡＣＫなどの方法がとられている。しかし，かかる技術も，ＡＣＫが返信されないパケットに関しては何回もの再送が行われ，通信状況によってデータの伝送速度が変化してしまう事情は変わっていない。
【０００７】
また，再送が必要なパケットを細かく分割し，繰り返し分割パケットを送信することによってエラー数の期待値を低減するデータ送信技術も知られている（例えば，特許文献１）。しかし，かかる送信技術も完璧なデータ通信を目的とするものであって，パケットが完全に伝達されるまでパケットの分割が繰り返されることに変わりはない。
【０００８】
【特許文献１】特開２００４−４０４９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
例えば，ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のメディアを取り上げてみると動画データの再生にはリアルタイム性が最優先に要求され，エラーが無い完全な動画を表示するより多少画像の乱れがあったとしても遅延のない動画が必要とされる。即ち，欠落したパケットを時間をかけて埋めるより，むしろ欠落したままでも良いから動画再生の流れに影響しないデータ通信を行うことが課題となる。
【００１０】
本発明は，従来のデータ伝送システムが有する上記問題点に鑑みてなされたものであり，本発明の目的は，パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく，データ再生のリアルタイム性を維持することが可能な，新規かつ改良されたデータ伝送システムおよび方法，データ送信装置，データ受信装置，並びに，そのコンピュータプログラムを提供することである。
【課題を解決するための手段】
【００１１】
上記課題を解決するために，本発明の第１の観点によれば，データを複数のパケットに分割して各々固有のシーケンス番号を付与し，当該シーケンス番号に応じて上記パケットを送信するデータ送信装置と，上記データ送信装置から送信された上記パケットを受信して上記データ送信装置に受信完了信号を送信し，上記シーケンス番号順に並べられる所定数のパケット群を受信した後，上記パケット群をデータに復号して当該データの処理を開始するデータ受信装置と，からなるデータ伝送システムにおいて：上記データ送信装置は，受信完了信号を受信しないシーケンス番号のパケットを所定の第１時間間隔で再送信するパケット再送信手段と；所定の第２時間内に上記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理手段と；を備え，上記データ受信装置は，上記所定の処理に応じて，上記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と；を備えることを特徴とする，データ伝送システムが提供される。かかるデータ伝送システムは無線通信によるパケットの伝送を目的とするとしても良い。
【００１２】
上記データ送信装置は，データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；上記シーケンス番号に応じて上記パケットの送信順を決定する送信決定手段と；パケットの上記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；上記パケットを最初に送信してからの経過時間を上記パケット毎にカウントするカウント手段と；上記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；受信完了信号を受信しないシーケンス番号のパケットを，上記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；所定の第２時間内に上記受信完了信号を受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う中止処理手段と；を備えるとしても良く，上記データ受信装置は，データ送信装置から送信されたパケットを受信するパケット受信手段と；上記パケットの受信に応じて上記データ送信装置に受信完了信号を送信する受信応答手段と；シーケンス番号順に並べられる所定数のパケット群を受信した後，上記パケット群をデータに復号して当該データの処理を開始する処理開始手段と；上記データ送信装置における所定の処理に応じて，上記所定数のパケット群が揃わない状態で所定のデータ処理を行うデータ処理手段と；を備えるとしても良い。
【００１３】
上記データ送信装置やデータ受信装置は，パーソナルコンピュータ，ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ），携帯電話，テレビ会議システムやこれらの機器に内蔵または接続されて動作する通信機器を含む。
【００１４】
本発明は，上記データ送信装置において，ある程度再送信を繰り返したパケットのさらなる再送信を中止（断念）し，データ受信装置において，データを形成するパケット群が完全に揃っていない（欠落している）にも拘わらずデータ処理をすることを特徴としている。また，以下に示すように，データ送信装置においてパケットの再送信を中止したことをデータ受信装置が容易に判断することができ，両装置において有効なデータと無効なデータの同期を確実にとることが可能となる。即ち，データ送信装置で無効としたデータはデータ受信装置においても無効データとして扱われ，データ送信装置で有効としたデータはデータ受信装置においても誤った判断をすることなく有効データとして取り扱われる。また，かかる再送信の中止により，データ再送信のためのメモリ容量を削減できる。
【００１５】
上記データ送信装置がパケットの再送信を中止（断念）するということは，パケットの確実な伝送より，データ受信装置側におけるデータ処理のリアルタイム性を優先したものであり，「パケットが完全に送信されるのを待たなくて良い。」ということをデータ受信装置に意図的に伝達していると考えることができる。
【００１６】
このような伝達を受けたデータ受信装置では，かかるパケット群が揃っていないデータを処理し，データ送信装置と同期を保ちながら，通常の通信を再開する。このとき上記データ処理手段では，かかるパケット群が揃っていないデータを放棄するとしても良いし，残ったパケット（欠落した状態のパケット）を利用して何らかの処理を行うとしても良い。
【００１７】
また，上記シーケンス番号は，データ列を含むデータを複数のパケットに分割した後，一応送信する順を定めるために付与される番号である。ここで一応と述べたのは，パケットの送信には，上記パケット再送信手段により，過去に送信したパケットの再送信が割り込んでくるので，上記パケット送信手段によるシーケンス番号順にパケットが送信されるとは限らないからである。かかるシーケンス番号は，一定の値（例えば，１）をインクリメントして付与される。データ受信装置では，かかるシーケンス番号順に所定数のパケット群として並べ，データに復号する。従って，たとえデータ受信装置で受信するパケットの順番が変わったとしても，シーケンス番号を昇順または降順に並び替えることによって，確実にデータへと復元することができる。また，データ受信装置で同じパケットを重複して受信した場合でも，シーケンス番号により正しいデータへの復号が実行される。
【００１８】
また，上記第１時間はパケットの再送信間隔を示し，上記第２時間はパケットの再送信を中止（断念）するまでの有効期限を示す。両時間は，データの利用用途に応じて任意に設定することができる。通常，第２時間は第１時間より長く，第１時間の整数倍，例えば，２，３，４倍とすることができる。ここでは，上記第１時間や第２時間とカウント手段によるカウント値（カウント時間）とを比較している。時間は割り込み毎にインクリメントされるカウント値で表すことができ，カウント値は割り込み間隔との積によって時間で表現することができるので上記の比較が可能となる。
【００１９】
上記所定の処理は，上記第２時間後に送信するパケットのシーケンス番号を所定値変位させる処理であり，上記データ処理手段は，上記所定値の変移を検知して上記所定のデータ処理を行うとしても良い。
【００２０】
かかる構成により，データ送信装置は，別途の手段を利用することなく，シーケンス番号を変更するといった簡単かつ単純な処理によってデータ受信装置にパケット再送信の中止を伝達することが可能となる。
【００２１】
ここで，上記所定値は，上記シーケンス番号の最大値の略半分の値としても良く，上記データ処理手段は，上記所定値が上記シーケンス番号の最大値の略４分の１の値以上変移していることを検知して上記所定のデータ処理を行うとしても良い。
【００２２】
所定値をシーケンス番号の最大値の略半分としたのは，巡回するシーケンス番号において，かかる数値が最大の距離（偏差）を示すからである。また，上記所定値の変移を判断するため，さらに所定値の略半分を閾値としている。いずれの数値も実施の一例であって，計算がし易いあらゆる数値等を選択することができる。
【００２３】
上記所定の処理は，上記第２時間後に送信するパケットのシーケンス番号を所定値にリセットする処理であり，上記データ処理手段は，上記所定値へのリセットを検知して上記所定のデータ処理を行うとしても良い。
【００２４】
かかる構成においても，データ送信装置は，別途の手段を利用することなく，シーケンス番号をある値にリセットするといった簡単かつ単純な処理によってデータ受信装置にパケット再送信の中止を伝達することが可能となる。
【００２５】
ここで，上記所定値は，０（ゼロ）としても良く，上記データ処理手段は，上記シーケンス番号が０（ゼロ）であることを検知して上記所定のデータ処理を行うとしても良い。所謂ＮＵＬＬで表される所定値０は，カウント値をハードウェア的にリセットすることで得られ，利用し易い。
【００２６】
上記所定の処理は，上記第２時間後に送信する次のパケットに再送信の中止を示すフラグを立てるとしても良く，上記データ処理手段は，受信したパケットに上記フラグが立っていた場合，上記所定のデータ処理を行うとしても良い。
【００２７】
かかる構成により，データ送信装置は，別途の手段を利用することなく，引き続きパケットの送信を行うという簡単かつ単純な処理のみをもってデータ受信装置にパケット再送信の中止を伝達することが可能となる。
【００２８】
上記所定の処理は，上記第２時間後に再送信の中止を示し，フレームが相違する別のパケットを送信する処理であっても良く，上記データ処理手段は，上記別のパケットを受信して上記所定のデータ処理を行うとしても良い。
【００２９】
かかる構成により，送信すべきパケットとは別パケットでパケット再送信の中止をデータ受信装置に伝達することができる。
【００３０】
ここで，上記中止処理手段は，パケットの伝送レートを落として上記別のパケットを送信するとしても良い。かかる構成により，データ送信装置は，パケット再送信の中止を確実にデータ受信装置に伝送することができる。
【００３１】
上記所定の処理は，上記第２時間後に，再送信の中止を示すビーコンを打つことであるとしても良く，上記データ処理手段は，上記ビーコンを受信して上記所定のデータ処理を行うとしても良い。
【００３２】
上記ビーコンは，互いに優劣がない通信機器同士のネットワークにおいて，データ送信装置やデータ受信装置からその装置がどういった装置であり，どの装置と通信を希望しているか，また，どういった状況下にあるかを他の装置に知らしめるために一定期間毎もしくは常時発信する情報伝達フレームを含む。
【００３３】
また，上記ビーコンは，データ送信装置のデータの送信処理の有無に拘わらず発信されている。従って，かかる既存の発信手段を利用して，別途新たな手段を設けることなくパケット再送信の中止をデータ受信装置に伝達することができる。
【００３４】
上記所定の処理は，上記パケットの送信を一定期間停止する処理であっても良く，上記データ処理手段は，上記一定期間パケットが受信されないことを検知して上記所定のデータ処理を行うとしても良い。
【００３５】
上記中止処理手段が一定期間送信を中止するのは，データ受信装置に再送信の中止を意図的に示すためであり，送信エラーによるタイムアウトの構成とは相違している。これはパケットの再送信を中止する決定権がデータ送信装置側にあることを示す。
【００３６】
かかる構成により，データ送信装置は，特別な情報を送信することなく，データ受信装置にパケットの再送信の中止を伝達することができる。この場合，上記一定期間は，予めデータ受信装置に定められるとしても良いが，初期化時にデータ送信装置から指定されるとしても良い。いずれの場合も，データ送信装置は，上記一定期間が経過した後，パケットの送信を再開する。
【００３７】
また，上記のデータ伝送システムを構成するデータ送信装置やデータ受信装置，コンピュータを上記データ送信装置やデータ受信装置として機能させるコンピュータプログラム，さらには，上記データ送信装置と上記データ受信装置とを利用してデータを伝送するデータ伝送方法も提供される。
【００３８】
上記課題を解決するために，本発明の第２の観点によれば，データを複数のパケットに分割し，各々固有のシーケンス番号を付与するシーケンス付与手段と；上記シーケンス番号に応じて上記パケットの送信順を決定する送信決定手段と；パケットの上記送信順に従って，データ受信装置にパケットを送信するパケット送信手段と；上記パケットを最初に送信してからの経過時間を上記パケット毎にカウントするカウント手段と；上記データ受信装置から受信した受信完了信号に対応するパケットのカウントを停止するカウント停止手段と；受信完了信号を受信しないシーケンス番号のパケットを，上記カウント手段を用いて所定の第１時間間隔で再送信するパケット再送信手段と；上記パケットの送信時に利用されるバッファが所定容量を超えたとき，次以降のパケットの送信を中止し，送信の中止を示す所定の処理を行う中止処理手段と；を備えることを特徴とする，データ送信装置が提供される。
【００３９】
第１の観点で説明した第２時間との比較によってパケットの再送信が中止される頻度より，再送信によるバッファのオーバーフローが生じる頻度が大きい場合，バッファのオーバーフローによりデータが無効になる確率が高くなる。かかる構成により，バッファのオーバーフローをも防止することができる。
【００４０】
上記中止処理手段は，上記バッファが所定容量を超えたとき，さらに上記バッファの入力データをクリアするとしても良い。上記オーバーフローによりパケットが廃棄される構成で，バッファ内に依然として残っているパケットはデータ受信装置において無効データとして取り扱われる。従って，バッファに蓄積されたパケットは無効なパケットとしてクリアしても良い。また，かかるクリアを行わずにデータの処理を継続すると，すぐさま同様のオーバーフローが起こりうる。
【００４１】
第１および第２の観点におけるデータの伝送は，互いに優劣がない通信機器同士のネットワークであるＣＷネットで利用されるとしても良い。かかるＣＷネットワークでは，特定の制御局が無く，各通信機器がそれぞれ自身を管理して優劣の関係を有していない。従って，各通信機器は自律分散的に動作し，アドホック・ネットワークを形成する。
【００４２】
上記データは，リアルタイムな画像の動作を表現する動画データであるとしても良い。本発明は，例えば，ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のようなリアルタイム性が最優先に要求される動画データの再生に主に利用でき，欠落したパケットの確実な復帰より，動画再生の流れが変化しない，即ち，多少の画像の乱れを許容するデータ通信に適している。
【００４３】
また，コンピュータを上記データ送信装置として機能させるコンピュータプログラム，さらには，上記データ送信装置と上記データ受信装置とを利用してデータを伝送するデータ伝送方法も提供される。
【００４４】
また，上記データ送信装置と上記データ受信装置は１つの装置として構成することもできる。
【発明の効果】
【００４５】
以上説明したように本発明によれば，パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく，データ再生のリアルタイム性を維持することが可能となる。従って，連続して高速にパケットを伝送する場合においても，データの重複や順序の入れ替え等が生じることなく，伝送エラーから強制的に復帰することが可能な高速無線ネットワークを実現することができる
【発明を実施するための最良の形態】
【００４６】
以下に添付図面を参照しながら，本発明の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００４７】
（第１の実施形態：データ伝送システム）
本実施形態では，様々な通信経路を利用してデータの交換が可能な複数の通信機器によるデータの伝送システムを提供する。また，かかる通信経路の中でも，特に無線の伝送路による通信を想定し，複数の通信機器間で相互にデータの交換を行っている。各通信機器はそれぞれ無線通信のための通信局を有す。各通信局は単一のチャネルまたは複数の周波数チャネル（マルチチャネル）からなる伝送媒体を用いて無線通信を行う。
【００４８】
図１は，データ伝送システムにおける通信機器の配置例を示した概略図である。このデータ伝送システムでは通信局としての特定の制御局が無く，各通信機器が自律分散的に動作し，アドホック・ネットワークが形成される。ここでは，４つの通信機器１０２，１０４，１０６，１０８が示され，各通信機器１０２，１０４，１０６，１０８は，それぞれ自己の通信可能範囲１２０内にある他の通信機器１０２，１０４，１０６，１０８と無線による通信を行う。例えば，通信機器１０２は通信機器１０４，１０６と，通信機器１０４は通信機器１０２，１０６と，通信機器１０６は通信機器１０２，１０４，１０８と，通信機器１０８は通信機器１０６と無線による通信伝送路を形成する。ここで各通信機器１０２，１０４，１０６，１０８は，通信可能範囲１２０内にある通信機器を通信可能な通信機器として，また，自己の通信データが干渉する可能性がある通信機器として認識する。
【００４９】
また，本実施形態は上記の自律分散型の無線通信に限られず，制御局を有する無線通信や有線による通信にも適応可能である。
【００５０】
図２は，本実施形態の他の通信経路を説明するためのブロック図である。かかる通信機器１０２と通信機器１０４は，上記で示した自律分散型の無線通信を形成している。通信機器１０２，１０４はさらに制御局１５０と無線による通信を行うこともできる。この場合，通信機器１０２，１０４は制御局１５０からの制御信号に従ってデータの送受信を行う。また，通信網１５２等の有線の伝送路を介してユーザ端末１５４に接続し，通信を行うことも可能である。このように本実施形態は無線有線を問わずあらゆる通信網に適応可能である。
【００５１】
図３Ａ，Ｂは，図１や図２で表したデータ伝送システムの個々の装置構成を示すブロック図である。図３Ａによると上記データ伝送システムは，データを送信するデータ送信装置２１０と，データ送信装置２１０から送信されたデータを受信するデータ受信装置２２０とからなる。また，図３Ｂに示すように，データ送信装置２１０として機能するデータ送信部２３０と，データ受信装置２２０として機能するデータ受信部２３２とを１つの通信機器２３４に備えることもできる。かかる通信機器２３４では，一方のデータ送信部２３０から他方のデータ受信部２３２に対してデータを送信することができ（図中矢印で示す。），相互のデータ交換が可能になる。
【００５２】
ここでは，理解を容易にするため図３Ａに示すデータ送信装置２１０とデータ受信装置２２０をとりあげ，詳細に説明する。
【００５３】
本実施形態は，データ送信装置２１０において，ある程度再送信を繰り返したパケットのさらなる再送信を中止（断念）し，データ受信装置２２０において，このようなパケットの欠落に拘わらず上記再送信の中止（断念）を受けてデータ処理することを特徴としている。また，以下に示すように，パケットが再送信されないことをデータ受信装置２２０が容易に判断することができ，両装置で有効なデータと無効なデータの同期を確実にとることが可能となる。即ち，データ送信装置２１０で無効としたデータはデータ受信装置２２０においても無効データとして扱われ，データ送信装置２１０で有効としたデータはデータ受信装置２２０においても誤った判断がなされることなく有効データとして取り扱われる。
【００５４】
上記データ送信装置２１０がパケットの再送信を中止するということは，パケットの確実な伝送より，データ受信装置側におけるデータ処理のリアルタイム性を優先したものであり，「パケットが完全に送信されるのを待たなくて良い。」ということをデータ受信装置２２０に伝達していると考えることができる。
【００５５】
このような伝達を受けたデータ受信装置２２０では，かかるパケットが欠落したデータを処理し，データ送信装置と同期を保ちながら，通常の通信を再開する。このとき上記データ受信装置２２０では，かかるパケットが欠落したデータを放棄するとしても良いし，残ったパケット（欠落した状態のパケット）を利用して何らかの処理を行うとしても良い。
【００５６】
（データ送信装置２１０）
図４は，データ送信装置２１０の構成を示すブロック図である。上記データ送信装置２１０は，データ送信制御部２５０と，シーケンス付与手段２５２と，送信決定手段２５４と，パケット送信手段２５６と，アンテナ部２５８と，カウント手段２６０と，カウント停止手段２６２と，パケット再送信手段２６４と，中止処理手段２６６とを含んで構成される。
【００５７】
上記データ送信制御部２５０は，中央処理装置（ＣＰＵ）を含む制御装置によりデータ送信装置２１０における一連の処理を一元的に管理および制御する。
【００５８】
上記シーケンス付与手段２５２は，データ送信装置２１０における送信すべきデータを所定のフレームで表される複数のパケットに分割し，この複数のパケットを送信する順に並べ，各パケットに，例えば連続する数字で表される固有のシーケンス番号を付与する。
【００５９】
上記送信決定手段２５４は，シーケンス付与手段２５２で付与されたシーケンス番号に応じてパケットの一応の送信順を決定する。ここで一応と述べたのは，後述するパケット再送信手段２６４により，過去に送信したパケットが再度送信パケットとして割り込むので，パケット送信手段２５６によるシーケンス番号順にパケットが送信されるとは限らないからである。かかるシーケンス番号は，一定の値（例えば，１）をインクリメントして付与される。このようなシーケンス番号により，たとえデータ受信装置で受信するパケットの順番が前後したとしても確実に分割前のデータへと復元することができる。
【００６０】
上記パケット送信手段２５６は，送信決定手段２５４で決定された送信順に従って，データ受信装置２２０にパケットを送信する。また，パケット送信手段２５６もしくは上記送信決定手段２５４は，送信決定手段２５４やパケット再送信手段２６４からのパケットを一時的に格納するデータバッファを有すとしても良く，かかるバッファに入力されたパケットを，バッファに入力された順にアンテナ部２５８を介して送出する。
【００６１】
上記アンテナ部２５８は，データ受信装置２２０に対して電磁波による信号を所定の周波数チャネル上で無線送信し，データ受信装置２２０から送られる受信完了信号（以下，ＡＣＫという。）を受信する。また，後述する別パケットやビーコン等も送信することができる。
【００６２】
上記カウント手段２６０は，パケット送信手段２５６がパケットを最初に送信した時（同パケットの再送信時は含まない），このパケットの送信をトリガにして経過時間をカウントする。かかるカウントは，各パケット毎に設けられたカウンタを利用して行われるとしても良いが，１つのカウンタを利用して全てのパケットの送信経過時間をカウントするとしても良い。
【００６３】
図５は，１つのカウンタを利用して全ての送信経過時間をカウントする一例を示した説明図である。カウント手段２６０のカウンタ２８０は，例えば１ｍｓｅｃの割り込みに応じて０〜９９９９の数字をカウントしている。従って，カウント値は０，１，２，３，…といった具合に進み，０〜９９９９を繰り返す。かかるカウント値が「１０２」になった時，上記パケット送信手段２５６によってパケットＡが送信された場合，パケットＡの送信時のカウント値２８２は「１０２」となる。同様にカウント値が「２０３」の時パケットＢが，カウント値が「４０５」の時パケットＣが送信された場合，パケットＢの送信時のカウント値２８４は「２０３」にパケットＣの送信時のカウント値２８６は「４０５」になる。
【００６４】
ある時点の経過時間を算出する場合，その時点のカウント値と送信時のカウント値との差をとる。例えば，ある時点のカウント値２９０が「１０１０」であった場合，この時点での経過時間は，かかるカウント値２９０と送信時のカウント値との差をとることによって計算される。従って，パケットＡの経過時間２９２は「９０８」，パケットＢの経過時間２９４は「８０７」，パケットＣの経過時間２９６は「６０５」となる。このときの経過時間はカウント値として表されているが，実際の経過時間を計算する場合，割り込み間隔である１ｍｓｅｃとの積をとって計算する。このようにして，１つのカウンタにより全てのパケットの送信からの経過時間をカウントすることができる。
【００６５】
上記カウント停止手段２６２は，データ受信装置２２０からのＡＣＫの返信があった場合，そのＡＣＫに対応するパケットのカウント手段２６０によるカウントを停止する。例えば，上記図５に示した例では，経過時間のインクリメントを停止するか，カウント対象パケットからそのパケットを削除することによってカウントを停止することができる。
【００６６】
上記パケット再送信手段２６４は，データ受信装置２２０からのＡＣＫを受信していないシーケンス番号のパケットを，上記カウント手段２６０を用いて所定の第１時間間隔で再送信する。即ち，カウント手段２６０のカウントが継続中であり，かつカウント値が所定の第２時間を超えていない場合，所定の第１時間毎に，送信決定手段２５４に送信順を変更させパケットを再送信させる。上記第２時間はカウント値で表すと例えば「３０００」（３秒）であり，上記第１時間はカウント値で表すと例えば「１０００」（１秒）である。上記の条件で経過時間を示すカウント値が「１０００」を越えた場合，対象となるパケットは正しく伝送されなかったものとみなされ，通常シーケンス番号に従って並べられているパケットに，かかる再送信するパケットを割り込ませる。このパケットの再送信からさらに第１時間が経過してもデータ受信装置２２０からＡＣＫの返信が無い場合，パケット再送信手段２６４は再びパケットの再送信を行う。
【００６７】
図６は，送信決定手段２５４によるパケットの送信順の決定を説明するための説明図である。通常，送信決定手段２５４では，シーケンス付与手段２５２内でパケット３１０毎に付与されたシーケンス番号３１２に従って送信順３１４が設定される。しかし，過去に送信されたシーケンス番号「１」のパケット３１６に関して，第１時間を経過してもデータ受信装置２２０からのＡＣＫ返信がない場合，かかるシーケンス番号「１」のパケット３１６が送信すべきパケットの最後尾３１８に追加される。このシーケンス番号「１」のパケット３１６の位置に本来並べられるべきシーケンス番号「１２」のパケットは１回分追加が待たされ，送信決定手段２５４によって決定された送信順は，「９」，「１０」，「１１」，「１」，「１２」，…となる。
【００６８】
ここでシーケンス番号「１」のパケット３１６は，送信決定手段２５４で送信すべきパケットの最後尾３１８に追加されるとしたが，最前列であるシーケンス番号「９」のパケットの前に強制的に追加されるとしても良い。
【００６９】
上記中止処理手段２６６は，所定の第２時間内にＡＣＫを受信しないシーケンス番号のパケットの再送信を中止し，再送信の中止を示す所定の処理を行う。即ち，カウントが継続中であり，かつカウント値が所定の第２時間を超えた場合，上記パケットの再送信を中止し，所定の処理によりデータ受信装置２２０に再送信の中止を伝達する。かかる中止処理手段２６６については，後で詳細に説明する。
【００７０】
また，中止処理手段２６６は，カウント値が所定の第２時間を超えたかどうかの判断によりパケットの再送信を中止する代わりに，パケット再送信手段２６４によってパケットの送信に利用されるバッファが所定容量を超えたときパケットの再送信を中止する構成をとることもできる。この再送信の中止においては，上述した所定の処理が行われるとしても良い。
【００７１】
上述した第２時間との比較によってパケットの再送信が中止される頻度より，再送信によるバッファのオーバーフローが生じる頻度が大きい場合，バッファのオーバーフローによりデータが無効になる確率が高くなる。このときパケットの再送信を中止することによって伝送効率の高い通信を再開できる。オーバーフローによる中止処理手段２６６は単独に構成されるとしても良いし，第２時間とカウント値を比較してパケットの再送信を中止する構成と併用されるとしても良い。
【００７２】
また，中止処理手段２６６は，バッファが所定容量を超えたとき，さらにバッファの入力データをクリアするとしても良い。上記のオーバーフローによりパケットが廃棄される構成で，バッファ内に依然として残っているパケットはデータ受信装置において無効データとして取り扱われる。従って，バッファに蓄積されたパケットは無効なパケットとしてクリアするとしても良い。
【００７３】
（データ受信装置２２０）
図７は，データ送信装置２２０の構成を示すブロック図である。上記データ受信装置２２０は，データ受信制御部３５０と，アンテナ部３５２と，パケット受信手段３５４と，受信応答手段３５６と，処理開始手段３５８と，データ処理手段３６０とを含んで構成される。
【００７４】
上記データ受信制御部３５０は，中央処理装置（ＣＰＵ）を含む制御装置によりデータ受信装置２２０における一連の処理を一元的に管理および制御する。
【００７５】
上記アンテナ部３５２は，データ送信装置２１０からの電磁波による信号を受信し，データ送信装置２１０に対してＡＣＫ信号を送信する。また，後述する相違するフレームから成る別パケットやビーコン等も受信することができる。
【００７６】
上記パケット受信手段３５４は，データ送信装置２１０から送信されたパケットをアンテナ部３５２を介して受信する。
【００７７】
上記受信応答手段３５６は，パケット受信手段３５４が受信したパケットに応じてデータ送信装置２１０にＡＣＫの応答を行う。ここで，受信したパケットのエラーチェック，例えば，ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）チェック等が行われ，そのチェックによりエラーが検出されなかったパケットのみＡＣＫを返信するとしても良い。
【００７８】
上記処理開始手段３５８は，シーケンス番号順に並べられる所定数のパケット群を受信した後，上記パケット群をデータ受信装置２２０で処理可能なデータに復号し，データ受信装置２２０は，当該データの処理を開始する。
【００７９】
上記データ処理手段３６０は，データ送信装置２１０における上記パケットの再送信を中止する所定の処理に応じて，現在処理しようとしているパケットの完全な復元をあきらめ，パケット群が完全に揃っていない状態（パケットが欠落した状態）のデータをそのまま処理し，データ送信装置と同期を保ちながら，通常の通信を再開する。このときデータ処理手段３６０では，かかるパケットが欠落したデータを放棄するとしても良いし，残ったパケットを利用して強制的に処理する等何らかの処理を行うとしても良い。かかるデータ処理手段３６０については，中止処理手段２６６と共に後で詳細に説明する。
【００８０】
（データ伝送システム）
上記データ伝送システムについて理解を深めるため，データ伝送システムにおけるデータ送信の基本的な流れを説明する。
【００８１】
図８は，データ伝送システムにおけるデータの流れを説明した図である。ここでは，データ送信装置２１０からデータ受信装置２２０へデータ４１０が伝送される。
【００８２】
まず，データ送信装置２１０では，シーケンス付与手段２５２によって送信すべきデータ４１０が，同じ構成のフレームから形成される複数のパケット４１２に分割され，かかるパケット４１２にシーケンス番号４１４として「１」，「２」，「３」，…が付与される。本実施形態における通信は上記のパケット単位で行われる。その後，送信決定手段２５４によりパケットの送信順が決定されるが，ここでは，簡単のためシーケンス番号順に送信されるとする。
【００８３】
図８において，シーケンス番号「１」，「２」のパケット４１２は，既にデータ受信装置に送信され，データ受信装置２２０では，受信した順に拘わらず，パケットをシーケンス番号順に並べ直す。ここで，受信した順に拘わらずとしたのは，送信されたパケットが何らかの原因でデータ受信装置２２０に届かない場合があり，例えデータ送信装置２１０がシーケンス番号順にパケットを送信したとしても必ずしもその順番にデータ受信装置２２０で受信されるとは限らないからである。
【００８４】
このようにして受信されたパケットは，シーケンス番号順４１６に並べられ，パケット群として所定数のパケットが揃った時点で元のデータ４１０に復元される。
【００８５】
図９は，データ伝送システムにおいて伝送されるパケットのフレームを示した説明図である。上記フレームは，ＰＨＹヘッダ４５０，宛先アドレス４５２，送信元アドレス４５４，フレーム長４５６，シーケンス番号４５８，分割データ４６０，ＣＲＣ４６２を含んで構成される。
【００８６】
上記ＰＨＹヘッダ４５０には本フレームのヘッダ情報が記載され，上記宛先アドレス４５２には本パケットの送信先のアドレス，即ちデータ受信装置２２０のアドレスが記載される。上記送信元アドレス４５４には当該データ送信装置２１０のアドレスが記載される。上記フレーム長４５６には当該パケットのフレームの長さが示される。上記シーケンス番号４５８はシーケンス付与手段２５２によって各パケットに付与さえたシーケンス番号が記載される。上記分割データ４６０には元となるデータをパケット単位に分割した後の所定長のデータが記載される。上記ＣＲＣ４６２にはデータの伝送エラーをチェックするための巡回符号（Ｃｙｃｌｉｃ  ｃｏｄｅ）が記載される。
【００８７】
次に本実施形態によるパケットの伝送を，ＡＣＫが返信されるまで何回も同パケットを再送信する従来のＩＥＥＥ８０２．１１ａ規格による伝送と比較する。
【００８８】
図１０は，ＩＥＥＥ８０２．１１ａ規格による送信側通信機器４７０と受信側通信機器４７２との通信を示したフローチャートである。かかるＩＥＥＥ８０２．１１ａ規格による無線通信プロトコルでは，送信側通信機器でデータをパケットに分割し，かかるパケットを受信側通信機器に送信する。図１０においては，分割したパケットの内，１番目に送信したシーケンス番号「１」のパケット４８０に関するＡＣＫ応答が得られず，複数回，かかるパケット４８０を再送している。この場合，次に送信すべきシーケンス番号「２」のパケット４８６は，シーケンス番号「１」のパケットの送信が完了するまで待たされ，データ受信装置からのＡＣＫ４８８があって初めて送信処理が行われる。このような伝送システムでは，ＡＣＫ信号の応答が無い場合何回も同パケットの再送が行われ，その間，次のパケットを送信することができず，データの伝送が遅延する等の問題があった。
【００８９】
続いて，本実施形態によるデータ伝送システムの流れを説明する。ここでは，本実施形態の特徴として挙げられる中止処理手段２６６，データ処理手段３６０を中心に説明する。
【００９０】
図１１は，本実施形態におけるデータ送信装置２１０とデータ受信装置２２０との通信を示したフローチャートである。ここでは，分割したパケットをＡＣＫを待つことなく，順次送信する。例えば，送信するデータを分割してシーケンス番号を「１」から付与したとすると，シーケンス番号「１」のパケット５１０を送信した後，かかるパケットに関するＡＣＫを待たずして，次のシーケンス番号「２」，「３」，「４」のパケット５１２が送信される。
【００９１】
この連続するパケットの送信に対して，データ受信装置２２０では，受信を完了したパケットに関するＡＣＫを返信する。このＡＣＫ信号は，パケット毎に送信されるとしても良いが，複数のパケットに対してまとめて送信（グループＡＣＫ５１４）されるとしても良い。
【００９２】
シーケンス番号が「４」のパケット５１２を送信し終えたとき，シーケンス番号「１」のパケット５１０のカウンタが所定の第１時間５１６経過したとすると，パケット再送信手段２６４によってパケット５１０と同一のパケット５２０が再送信される。送信済みの「２」，「３」，「４」のシーケンス番号を有する他のパケット５１２に関してはデータ受信装置２２０からＡＣＫが返信されているので，次に送信されるパケットは通常の送信順によるシーケンス番号「５」のパケット５２２となる。また，パケット５２０に対しても同様にＡＣＫが返信されない場合，上記パケット５２０の送信時からさらに第１時間５１６経過後にパケット５１０と同一のパケット５２４が送信される。
【００９３】
このようにしてシーケンス番号「１」のパケット５１０の再送信が繰り返され，一定の第２時間５３０が経過した場合，中止処理手段２６６によってかかるパケット５１０の再送信をあきらめる合図がなされる。ここでは，次に送信すべきパケットのシーケンス番号を所定値である「１２８」ほど変移する。従って，次に送信すべきパケット５３２のシーケンス番号「１１」は，「１２８」との和をとって「１３９」に書き換えられ，新たなシーケンス番号が付与された状態でデータ受信装置２２０に送信される。同様にして，パケット５３６のシーケンス番号「１２」は「１４０」に，パケット５４０のシーケンス番号「１３」は「１４１」に書き換えられてデータ受信装置２２０に送信される。
【００９４】
上記シーケンス付与手段２５２によるシーケンス番号の付与は「０」〜「２５５」の番号を巡回しており，上記所定値「１２８」はシーケンス番号の巡回数（または最大値）である「２５６」を等分したものである。
【００９５】
データ受信装置２２０のデータ処理手段３６０では所定値の変移を検知して処理を進める。データ処理手段３６０では，かかる所定値の変移を判断するため，さらに所定値「１２８」の半分である「６４」を閾値としている。従って，データ処理手段３６０は，少し前に受信したパケット５４４のシーケンス番号「１０」と次に受信したパケット５３２のシーケンス番号「１３９」との差が「６４」以上であることを判断し，受信してはいるがデータとして復元されていないパケット群，例えば，シーケンス番号が「２」，「３」，「４」，「５」，「６」，「７」，「８」，「９」，「１０」からなるパケット群を無効データとして廃棄する。
【００９６】
このとき，上記の通信データが動画データ等の多少画像の乱れがあったとしても許されるデータであった場合，上述のようにパケット群を廃棄せず，パケットが欠落したままで強制的に元のデータに復元するとすることもできる。もちろんこの場合，かかるデータが表示されるときに，完全な画像が表示されることを期待することはできない。
【００９７】
続いて，中止処理手段２６６が上記と相違する処理でパケットの再送信を中止する場合を説明する。
【００９８】
図１２は，本実施形態におけるデータ送信装置２１０とデータ受信装置２２０との通信を示したフローチャートである。ここでは，上述した通信と同様に，分割したパケットをＡＣＫを待つことなく順次送信する。図１１で示した実施形態における構成要素として既に述べた通信手順については図１２においても実質的に機能が同一なので重複説明を省略し，図１１と図１２とで相違するシーケンス番号のリセットについて詳細に述べる。
【００９９】
図１１同様に，シーケンス番号「１」のパケット５１０に対するＡＣＫが返信されず，一定の第２時間５３０が経過した場合，中止処理手段２６６によってかかるパケット５１０の再送信をあきらめる合図がなされる。ここでは，次に送信すべきパケットのシーケンス番号を所定値である「０」にリセットしている。従って，次に送信すべきパケット５３２のシーケンス番号「１１」は「０」となり，新たなシーケンス番号が付与された状態でデータ受信装置２２０に送信される。同様にして，パケット５３６のシーケンス番号「１２」は「１」に，パケット５４０のシーケンス番号「１３」は「２」に書き換えられデータ受信装置２２０に送信される。
【０１００】
上記所定値「０」は，所謂ＮＵＬＬで表され，カウント値をハードウェア的にリセットすることで簡単にセットできる。
【０１０１】
パケットの送信後，データ受信装置２２０のデータ処理手段３６０では所定値「０」へのリセットを検知して処理を進める。従って，データ受信装置２２０のデータ処理手段３６０は，受信したパケット５３２のシーケンス番号が「０」であり，かつ，その前に受信したパケット５４４のシーケンス番号「１０」がシーケンス番号の最大値「２５５」では無いことを判断し，受信してはいるがデータとして復元されていないパケット群，例えば，シーケンス番号が「２」，「３」，「４」，「５」，「６」，「７」，「８」，「９」，「１０」からなるパケット群を無効データとして廃棄する。ここでも，上記の通信データが動画データ等の多少画像の乱れがあったとしても許されるデータであった場合，上述のようにパケット群を廃棄せず，パケットが欠落したままで強制的に元のデータに復元するとすることもできる。
【０１０２】
また，中止処理手段２６６は，フラグを立てる処理によりパケット再送信の中止を表現することができる。カウントが継続中であり，かつカウント値が所定の第２時間を超えた場合，中止手段２６６は，次にデータ受信装置２２０に送信されるパケットに設けられた再送信の中止を示すフラグを立てる。また，データ受信装置２２０のデータ処理手段３６０は，受信したパケットに再送信の中止を示すフラグが立っているか判断して処理を進める。
【０１０３】
図１３は，フラグ５７０を追加した場合のパケットのフレームを示した説明図である。上記フラグ５７０はフレーム長４５６とシーケンス番号４５８との間に配され，少なくともパケット再送信の中止に関する１ビットの情報を有している。また，フラグ５７０の配置は，上記の場合に限られず，フレーム中のどこに配置しても良い。
【０１０４】
また，中止処理手段２６６は，データを分割した本パケットとは別のパケットによりパケット再送信の中止を表現することができる。カウントが継続中であり，かつカウント値が所定の第２時間を超えた場合，上記パケットの再送信の中止をデータとして含む上記別のパケットを送信する。これに対してデータ処理手段３６０は，受信したパケットが上記別のパケットであることを判断して次の処理を進める。この場合，別パケットも受信できない状態を回避するため伝送レートを落として別パケットを送信することもできる。
【０１０５】
図１４は，このような別パケットのフレームの一例を示した説明図である。かかる別パケットのフレーム内では，当該フレームが，前述したデータフレームではなく制御用のフレームであることを示すフレーム種別５８０のフィールドを持ち，制御内容を示す制御データ５８２のフィールドにシーケンス番号の不整合が発生したことを示すシーケンス番号エラーを示す。データ処理手段３６０は，上記別パケットを受信すると，それがパケット再送信を中止する合図であることを認識し，パケットが欠落した状態でデータの処理を進める。
【０１０６】
また，中止処理手段２６６は，ビーコンにパケット再送信の中止を示す信号を乗せて表現することもできる。このビーコンは，データ送信装置２１０のデータの送信処理の有無に拘わらず，特にＣＷネットにおいては，全てのデータ送信装置２１０から発信されている。従って，かかる既存の発信手段を利用して，別途新たな手段を設けることなくパケット再送信の中止をデータ受信装置２２０に伝達することができる。
【０１０７】
上記ビーコンは，互いに優劣がない通信機器同士のネットワークにおいて，データ送信装置やデータ受信装置からその装置がどういった装置であり，どの装置と通信を希望しているか，また，どういった状況下にあるかを他の装置に知らしめるために一定期間毎もしくは常時発信する情報伝達フレームを含んでいる。
【０１０８】
図１５は，このようなビーコンのフレームの一例を示した説明図である。かかるビーコンのフレーム内では，当該フレームが，前述したデータフレームではなくビーコンであることを示すビーコン種別５９０を示すフィールドを有し，同一のネットワーク内の無線局を制御する制御フィールド５９２を有す。かかる制御フィールド５９２は，さらに制御種別，第１対象局，第２対象局のフィールドを有し，例えば，シーケンス番号エラー，第１対象局のＭＡＣアドレス，第２対象局のＭＡＣアドレスが記されている。このようなビーコンにより，データストリームの送信局と受信局に対してシーケンス番号を初期化することを伝達し，ビーコンを受信した無線局のデータ処理手段３６０は，自局のデータ通信にシーケンス番号エラーが発生していることを把握して，パケットが欠落した状態でデータの処理を進める。このようにして各局の同期が確立される。
【０１０９】
また，中止処理手段２６６は，パケットの送信時間を変化させることによってパケット再送信の中止を表現することもできる。カウントが継続中であり，かつカウント値が所定の第２時間を超えた場合，パケット送信手段２５６によるパケットの送信を一時停止し，一定期間後，例えば１秒後に送信再開する。データ処理手段３６０は，一定期間パケットが受信されないことを検知して処理を進める。
【０１１０】
（第２の実施形態：データ伝送方法）
次に，上述したデータ送信装置２１０とデータ受信装置２２０とを利用してデータを伝送するデータ伝送方法を説明する。
【０１１１】
図１６は，データ伝送方法の概念的な流れを説明したフローチャート図である。上記伝送方法では，先ず，データ送信装置２１０が，送信対象としてのデータを同フレームからなる複数のパケットに分割し，昇順または降順で表されるシーケンス番号をこの複数のパケットに順次付与する（Ｓ７００）。そして，このシーケンス番号に応じて実際に送信するパケットの送信順を決定する（Ｓ７０２）。このとき，後述するパケット再送信工程（Ｓ７２２）によるパケットの再送信が要求されていなかったら，送信順はシーケンス番号と同じ順番とすることができる。続いて，データ送信装置２１０は，送信決定工程（Ｓ７０２）によるパケットの送信順に従って，データ受信装置２２０に対し，無線もしくは有線の伝送経路を経由してパケットを送信し（Ｓ７０４），当該パケットを送信した直後から経過時間のカウントを開始する（Ｓ７０６）。かかるカウントは，パケット毎に管理される。
【０１１２】
次に，データ受信装置２２０は，データ送信装置２１０から送信されたパケットを受信し（Ｓ７１０），このパケットがエラーを伴わない正常なパケットであることを，ＣＲＣチェック等を用いて確認し，データ送信装置２１０に受信完了信号であるＡＣＫを送信する（Ｓ７１２）。そして，シーケンス番号順に並べられる所定数のパケット群を形成するパケットが全て受信されると，このパケット群をデータに復号して当該データの処理を開始する（Ｓ７１４）。
【０１１３】
続いて，データ送信装置２１０は，データ受信装置２２０からＡＣＫを受信した場合，そのＡＣＫに関するパケットのカウントのみを中止する（Ｓ７２０）。かかるＡＣＫが受信されないまま，即ち，特定のパケットに関するカウントが継続中でさらに所定の第１時間を経過した場合，送信決定工程（Ｓ７０２）で決定された送信順を変更し，ＡＣＫの返信が無いパケットを再送信させる（Ｓ７２２）。また，ＡＣＫが受信されないままさらにカウントが継続され，所定の第２時間をも経過すると，データ送信装置２１０は，パケットの再送信を中止（断念）し，所定の処理によりデータ受信装置２２０に再送信の中止を伝達する（Ｓ７２４）。
【０１１４】
データ受信装置２２０は，データ送信装置２１０における所定の処理に応じて，パケットが完全に揃っていない状態（パケットが欠落した状態）でデータの処理もしくは次の処理を進める（Ｓ７３０）。
【０１１５】
ここで記載される所定の処理は，第１の実施形態におけるデータ伝送システムで説明した所定の処理と実質的に機能が同一なので重複説明を省略する。
【０１１６】
このようにデータ伝送方法は，大きく，シーケンス付与工程（Ｓ７００），送信決定工程（Ｓ７０２），パケット送信工程（Ｓ７０４），カウント工程（Ｓ７０６），パケット受信工程（Ｓ７１０），受信応答工程（Ｓ７１２），処理開始工程（Ｓ７１４），カウント停止工程（Ｓ７２０），パケット再送信工程（Ｓ７２２），中止処理工程（Ｓ７２４），データ処理工程（Ｓ７３０）を含んで構成される。以下に，かかる工程を詳細に説明する。
【０１１７】
上記データ伝送方法は，所定のサンプリングタイム毎に割り込みを発生させ，その割り込み毎に以下の処理を行うことで実現される。ここでは，データ送信装置２１０における処理と，データ受信装置２２０における処理とに分けて説明する。
【０１１８】
図１７は，シーケンス付与工程（Ｓ７００）の流れを示したフローチャートである。図１７〜図２１は，データ送信装置２１０における処理を説明している。上記シーケンス付与工程（Ｓ７００）では，割り込みを受けて（Ｓ７５０），送信すべくデータを入力する（Ｓ７５２）。この入力されたデータを同フレームに形成される複数のパケットに分割し（Ｓ７５４），かかる分割されたパケットを１つずつ入力する（Ｓ７５６）。このとき再送信の断念，即ち，パケットに対するＡＣＫが所定の第２時間を過ぎても返信されないことによる再送信の中止が示されると（Ｓ７５８），シーケンス番号を新たに設定する（Ｓ７６０）。この新たなシーケンス番号は，元のシーケンス番号にシーケンス番号の最大値の略半分の値を追加した値であっても良いし，所定値，例えば，ゼロ（０）であっても良い。このようにシーケンス番号が決定すると，上記分割されたパケットに，かかる新たなシーケンス番号が付与される（Ｓ７６２）。
【０１１９】
シーケンス番号が付与されると，同シーケンス番号を他のパケットに振らないため，かつ，パケット送信工程（Ｓ７０４）によるパケットの送信順を規定するためにデータ送信装置２１０で保持しているシーケンス番号を更新，即ち，所定値分だけインクリメントする（Ｓ７６４）。そして，分割されたパケットがまだ残っているかどうか判断し（Ｓ７６６），残っていれば，パケット入力工程（Ｓ７５６）から繰り返し，残っていなければ，一旦，シーケンス付与工程（Ｓ７００）を終了する。
【０１２０】
図１８は，送信決定工程（Ｓ７０２）の流れを示したフローチャートである。上記送信決定工程（Ｓ７０２）では，データ送信装置２１０内に設けられ，パケットを一時的に保持するバッファ（ＦＩＦＯ等）が空いているかどうか，即ち，バッファの容量に余裕があって，入力が可能な状態であるかどうかが確認される（Ｓ７７０）。かかるバッファが空いていることが確認されると，後述するパケット再送信工程（Ｓ７２２）による再送信されるパケットがあるかどうか確認される（Ｓ７７２）。この確認工程（Ｓ７７２）で再送信パケットがあることが分かると，かかるパケットがバッファにロードされる（Ｓ７７４）。また，再送信パケットがない場合，上記シーケンス付与工程（Ｓ７００）で付与されたシーケンス番号に従って，新たに送信すべきパケットがバッファにロードされる（Ｓ７７６）。
【０１２１】
図１９は，パケット送信工程（Ｓ７０４）およびカウント工程（Ｓ７０６）の流れを示したフローチャートである。上記パケット送信工程（Ｓ７０４）では，送信デバイスの送信準備ができているかどうか確認し（Ｓ７８０），送信できる状態であれば，バッファに入力された送信順に従って，データ受信装置２２０に対してパケットの送信を行う（Ｓ７８２）。このパケットの送信と同時に，上記カウント工程（Ｓ７０６）の一環として，かかるパケットに関するカウントが開始される（Ｓ７８４）。このカウントは，上述した割り込み単位でインクリメントされる。
【０１２２】
図２０は，カウント停止工程（Ｓ７２０）の流れを示したフローチャートである。上記カウント停止工程（Ｓ７２０）は，上記パケット送信工程（Ｓ７０４）で送信されたパケットに対するデータ受信装置２２０のＡＣＫを確認している（Ｓ８００）。ここで，ＡＣＫが受信されるとそのＡＣＫに関するカウント工程（Ｓ７０６）のカウントが中止され，そのパケットの送信は完了する（Ｓ８０２）。
【０１２３】
図２１は，パケット再送信工程（Ｓ７２２）および中止処理工程（Ｓ７２４）の流れを示したフローチャートである。上記パケット再送信工程（Ｓ７２２）では，カウント工程（Ｓ７０６）によるカウント値が第２時間を越しているかどうか比較され（Ｓ８１０），カウント値が第２時間に満たない場合，続いて第１時間と比較される（Ｓ８１２）。ここでカウント値が上記第１時間を越している場合，かかるパケットの再送信が指令され，送信決定工程（Ｓ７０２）で決定された送信順が変更される（Ｓ８１４）。このパケットの再送信（Ｓ８１４）は，第１時間経過毎に行われる。また，カウント値と第２時間との比較（Ｓ８１０）においてカウント値が第２時間を超過すると，パケットの再送信を中止（断念）し，所定の処理によりデータ受信装置２２０に再送信の中止を伝達する（Ｓ８１６）。こうして割り込み処理が終了する（Ｓ８１８）。
【０１２４】
図２２は，パケット受信工程（Ｓ７１０），受信応答工程（Ｓ７１２）および処理開始工程（Ｓ７１４）の流れを示したフローチャートである。図２２，図２３は，データ受信装置２２０における処理を説明している。上記パケット受信工程（Ｓ７１０）では，割り込みを受けて（Ｓ８３０）繰り返される処理の中で，データ送信装置２１０からのパケットの受信があったかどうか確認する（Ｓ８３２）。ここでパケットの受信が確認されると，かかるパケットは，そのパケット長やパリティ，ＣＲＣ等の演算によりそのパケットが正常なパケットであるかどうか確認される（Ｓ８３４）。ここでパケットが正常であると判断された場合，かかる受信パケットを保存し，データ送信装置２１０に対し上記受信応答工程（Ｓ７１２）としてＡＣＫが返信される（Ｓ８３６）。続いて，受信したパケットによりシーケンス番号順に並べられる所定数のパケット群が揃っていか確認され（Ｓ８３８），パケット群が揃っていれば上記処理開始工程（Ｓ７１４）として，このパケット群をデータに復号し，当該データの処理を開始する（Ｓ８４０）。
【０１２５】
図２３は，データ処理工程（Ｓ７３０）の流れを示したフローチャートである。上述したパケット受信工程（Ｓ７１０）では，データ送信装置２１０から送信される複数のパケットを受信し，規定のパケットが揃うと所定の処理単位を形成するデータに復元される。しかし，データ送信装置２１０の所定の処理により再送信の中止が行われると，上記データ処理工程（Ｓ７３０）を遂行する。先ず，データ送信装置２１０において再送信の中止があったかどうかを検知し（Ｓ８５０），再送信中止が検知されると，受信完了し，データに復元されていないパケットの欠落が確定する。データ受信装置２２０は，パケットが欠落した状態のままでデータを処理，または，その欠落データを無視してデータ処理を進める（Ｓ８５２）。こうして割り込み処理が終了する（Ｓ８５４）。
【０１２６】
このようなデータ伝送方法により，パケットの伝送エラーがあったとしてもデータ伝送効率を変化させることなく，データ再生のリアルタイム性を維持することが可能となる。
【０１２７】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明は係る例に限定されないことは言うまでもない。当業者であれば，特許請求の範囲に記載された範疇内において，各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１２８】
例えば，上記の実施形態において，数点の例を挙げてパケットの再送信中止の伝達を説明したが，データ送信装置が意図的にパケットの送信を中止し，それをデータ受信装置に確実に伝達できるものであれば，本実施形態の例に限らず，データフレームの長さを変化させて伝達するなど様々な実施手段が考えられる。
【０１２９】
また，上記実施の形態においては，データ送信装置からデータ受信装置に対して，所定の処理による再送信の中止を伝達しているが，かかる場合に限らず，データ送信装置が意図的にデータ受信装置のパケットまたはデータを初期化する場合等にも本実施形態の所定の処理を利用することができる。
【産業上の利用可能性】
【０１３０】
本発明は，データ伝送システムおよび方法，データ送信装置，データ受信装置，並びに，そのコンピュータプログラムに適用可能である。
【図面の簡単な説明】
【０１３１】
【図１】データ伝送システムにおける通信機器の配置例を示した概略図である。
【図２】第１の実施形態の他の通信経路を説明するためのブロック図である。
【図３Ａ】データ伝送システムの個々の装置構成を示すブロック図である。
【図３Ｂ】データ伝送システムの個々の装置構成を示すブロック図である。
【図４】データ送信装置の構成を示すブロック図である。
【図５】１つのカウンタを利用して全ての送信経過時間をカウントする一例を示した説明図である。
【図６】送信決定手段によるパケットの送信順の決定を説明するための説明図である。
【図７】データ送信装置の構成を示すブロック図である。
【図８】データ伝送システムにおけるデータの流れを説明した図である。
【図９】データ伝送システムにおいて伝送されるパケットのフレームを示した説明図である。
【図１０】ＩＥＥＥ８０２．１１ａ規格による送信側通信機器と受信側通信機器との通信を示したフローチャートである。
【図１１】第１の実施形態におけるデータ送信装置とデータ受信装置との通信を示したフローチャートである。
【図１２】第１の実施形態におけるデータ送信装置とデータ受信装置との通信を示したフローチャートである。
【図１３】フラグを追加した場合のパケットのフレームを示した説明図である。
【図１４】別パケットのフレームの一例を示した説明図である。
【図１５】ビーコンのフレームの一例を示した説明図である。
【図１６】データ伝送方法の大まかな流れを説明したフローチャート図である。
【図１７】シーケンス付与工程の流れを示したフローチャートである。
【図１８】送信決定工程の流れを示したフローチャートである。
【図１９】パケット送信工程およびカウント工程の流れを示したフローチャートである。
【図２０】カウント停止工程の流れを示したフローチャートである。
【図２１】パケット再送信工程および中止処理工程の流れを示したフローチャートである。
【図２２】パケット受信工程および受信応答工程の流れを示したフローチャートである。
【図２３】データ処理工程の流れを示したフローチャートである。
【符号の説明】
【０１３２】
２１０  データ送信装置
２２０  データ受信装置
２５２  シーケンス付与手段
２５４  送信決定手段
２５６  パケット送信手段
２６０  カウント手段
２６２  カウント停止手段
２６４  パケット再送信手段
２６６  中止処理手段
３５４  パケット受信手段
３５６  受信応答手段
３５８  処理開始手段
３６０  データ処理手段
Ｓ７２２  パケット再送信工程
Ｓ７２４  中止処理工程
Ｓ７３０  データ処理工程
【図１】
2006020130.tif 000003
【図２】
2006020130.tif 000004
【図３Ａ】
2006020130.tif 000005
【図３Ｂ】
2006020130.tif 000006
【図４】
2006020130.tif 000007
【図５】
2006020130.tif 000008
【図６】
2006020130.tif 000009
【図７】
2006020130.tif 000010
【図８】
2006020130.tif 000011
【図９】
2006020130.tif 000012
【図１０】
2006020130.tif 000013
【図１１】
2006020130.tif 000014
【図１２】
2006020130.tif 000015
【図１３】
2006020130.tif 000016
【図１４】
2006020130.tif 000017
【図１５】
2006020130.tif 000018
【図１６】
2006020130.tif 000019
【図１７】
2006020130.tif 000020
【図１８】
2006020130.tif 000021
【図１９】
2006020130.tif 000022
【図２０】
2006020130.tif 000023
【図２１】
2006020130.tif 000024
【図２２】
2006020130.tif 000025
【図２３】
2006020130.tif 000026