(57)【要約】送受信装置及びネットワークに高い負荷をかけることなく再送制御を実行可能とするために、通信装置は、伝送遅延の増加の抑制の対象となる通信データを、送信データとして出力する送信データ生成部と、送信データの出力後、再送確認データを、第１の送信間隔で所定の回数出力する再送確認データ生成部と、送信データ及び再送確認データに送信順序を示す順序情報を付与し、送信データを送信した後に再送確認データを送信する通信インタフェースと、を備える。
2015040833.tif 000002
【特許請求の範囲】
【請求項１】
伝送遅延の増加の抑制の対象となる通信データを、送信データとして出力する送信データ生成手段と、
前記送信データの出力後、再送確認データを、第１の送信間隔で第１の回数出力する再送確認データ生成手段と、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する通信インタフェースと、
を備える通信装置。
【請求項２】
前記送信データ生成手段から出力される前記送信データの間隔である第２の送信間隔を取得する送信間隔取得手段と、
前記第２の送信間隔に基づいて、新たな前記第１の送信間隔及び新たな前記第１の回数を求める送信制御手段と、をさらに備える、請求項１に記載された通信装置。
【請求項３】
前記送信制御手段は、
ｎ番目（ｎは自然数）の前記送信データの送信時刻をＴ（ｎ）、
ｎ番目の前記送信データに対応する前記再送確認データの送信間隔をＲＤ（ｎ）、
ｎ番目の前記送信データに対応する前記再送確認データの送信回数をＲＮ（ｎ）、
前記第１の送信間隔の既定値をＲＤ、
前記第１の回数の既定値をＲＮ、とした場合に、前記ＲＮ（ｎ）及び前記ＲＤ（ｎ）を、
ＲＮ（ｎ）＝ｍｉｎ（Ｆｌｏｏｒ（（Ｔ（ｎ＋１）−Ｔ（ｎ））／ＲＤ），  ＲＮ）、及び、
ＲＤ（ｎ）＝（Ｔ（ｎ＋１）−Ｔ（ｎ））／（ＲＮ（ｎ）＋１）、により求め（ｍｉｎ（Ａ，Ｂ）は数値Ａ、Ｂのうち小さい方の値を示し、Ｆｌｏｏｒ（Ａ）は、Ａを超えない最大の整数を示す）、ＲＤ（ｎ）を新たな前記第１の送信間隔とし、ＲＮ（ｎ）を新たな前記第１の回数とする、請求項２に記載された通信装置。
【請求項４】
前記送信間隔取得手段は、過去の前記送信データの送信時刻に基づいて前記送信データの送信間隔を（Ｔ（ｎ＋１）−Ｔ（ｎ））として取得する、請求項３に記載された通信装置。
【請求項５】
前記送信制御手段は、前記通信インタフェースの負荷を取得し、さらに、前記負荷に基づいて前記ＲＮ（ｎ）及び前記ＲＤ（ｎ）の少なくとも一方を求める、請求項１乃至４のいずれかに記載された通信装置。
【請求項６】
前記通信データから、前記送信データ以外の前記通信データと前記送信データとを判別してその結果を判別結果として出力する上層通信プロトコル手段をさらに備える、請求項１乃至５のいずれかに記載された通信装置。
【請求項７】
前記判別結果を前記上層通信プロトコル手段から受信し、前記判別結果が、前記通信データが前記送信データであることを示す場合には前記再送確認データ生成手段に前記再送確認データを生成する指示を行うデータ判別手段をさらに備える、請求項６に記載された通信装置。
【請求項８】
請求項１乃至７のいずれかに記載された通信装置と、
前記通信装置から前記送信データ及び前記再送確認データを受信データとして受信し、順序が誤って受信された前記受信データの数が所定の数以上となったことを前記順序情報に基づいて検出した場合には前記通信装置へ前記送信データの再送を要求する受信装置と、を備えた通信システム。
【請求項９】
伝送遅延の増加の抑制の対象となる通信データを送信データとして出力し、
前記送信データの出力後、再送確認データを第１の送信間隔で第１の回数出力し、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与しし、前記送信データを送信した後に前記再送確認データを送信する、通信装置の制御方法。
【請求項１０】
伝送遅延の増加の抑制の対象となる通信データを送信データとして出力する手順、
前記送信データの出力後、再送確認データを第１の送信間隔で第１の回数出力する手順、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する手順、を通信装置のコンピュータに実行させるための通信装置の制御プログラムを記録した、一時的でない、プログラムの記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置及び通信装置の制御方法に関し、特に、再送に起因して生じる遅延時間を短縮するための構成を備える通信装置及び通信装置の制御方法に関する。
【背景技術】
【０００２】
データ通信ネットワークにおいて、データの欠落等により順序が誤って受信されたデータが一定数以上となると、データの受信側から送信側に対してデータの再送が指示される場合がある。【０００３】
パケット通信で広く用いられるＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）では、誤った順序で受信されたＴＣＰセグメントが所定の数以上あることが重複確認応答により判明すると、高速再転送が行われる。ＴＣＰの高速再転送では、受信側は、ＴＣＰセグメントの抜けを検出すると同一の確認応答（ＡＣＫ）を３回連続して送信側に送信する。送信側は、このような確認応答を受信側から受信すると、確認応答に記載されているシーケンス番号に基づいて、ＴＣＰセグメントを再送する。受信側からデータの再送の指示を行うために必要な、誤った順序で受信されたセグメントの個数は、受信器のＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や設定により異なる。【０００４】
また、モバイル通信で利用されるＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）で用いられる再送制御では、受信バッファに一定以上のデータが蓄積された場合に、受信側は未受信のデータを送信側に報告する。受信側から未受信のデータの報告を受けた送信側はデータを再送する。【０００５】
このように、一般的な再送制御では、誤った順序のデータが一定数以上受信された後にデータの再送が行われる。このため、一般的な再送制御には、データの伝送遅延時間が大きくなるという課題がある。データの再送による伝送遅延時間を短縮するための技術に関連して、特許文献１には、送信データ及び送信データを復元可能な再送データを送信する送信装置、並びに、送信データ及び再送データのいずれかから送信データを取得することで、遅延時間の短縮を可能とする受信装置が記載されている。また、特許文献２には、送信データの送信の成否にかかわらず、同一の送信データが複数回送信される中継装置が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第２００７／００７３８３号（［００６７］、［００８３］段落）
【特許文献２】特開２００８−１９９４３１号公報（［００４９］段落）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１及び２に記載された技術には、再送データの送信により、送受信装置及びネットワークに高い負荷がかかる場合があるという課題がある。【０００８】
その理由は、特許文献１及び２に記載された技術では、全ての送信データに対して再送データが送信されるからである。すなわち、特許文献１及び２に記載された技術では、再送による遅延の増加が問題とされないデータに対しても再送制御が行われるため、必ずしも必要でない再送制御により、送受信装置及びネットワークの負荷が高くなる場合がある。【０００９】
［発明の目的］
本発明の目的は、送受信装置及びネットワークに高い負荷をかけることなく再送制御を実行可能な通信装置及び通信装置の制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の通信装置は、伝送遅延の増加の抑制の対象となる通信データを、送信データとして出力する送信データ生成部と、前記送信データの出力後、再送確認データを、第１の送信間隔で所定の回数出力する再送確認データ生成部と、前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する通信インタフェースと、を備える。【００１１】
本発明の通信装置の制御方法は、伝送遅延の増加の抑制の対象となる通信データを送信データとして出力し、前記送信データの出力後、再送確認データを第１の送信間隔で所定の回数出力し、前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する、手順を含む。【００１２】
本発明の通信装置の制御プログラムは、伝送遅延の増加の抑制の対象となる通信データを送信データとして出力する手順、前記送信データの出力後、再送確認データを第１の送信間隔で所定の回数出力する手順、前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する手順、を通信装置のコンピュータに実行させる。
【発明の効果】
【００１３】
本発明の通信装置及び通信装置の制御方法は、送受信装置及びネットワークに高い負荷をかけることなく、再送制御を実行することを可能とする。
【図面の簡単な説明】
【００１４】
【図１】第１の実施形態の通信システムの構成を示すブロック図である。
【図２】通信システムの通信シーケンスを示す図である。
【図３】第２の実施形態の通信システムの構成を示すブロック図である。
【図４】送信制御部における、再送確認データの送信間隔と送信回数との決定方法を説明するための図である。
【図５】第１及び第２の実施形態の変形例における、端末の構成を示す図である。
【図６】第３の実施形態の通信システムの構成を示すブロック図である。
【図７】第４の実施形態の通信装置の構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
次に、発明を実施するための形態について図面を参照して詳細に説明する。図１は、本発明の第１の実施形態の通信システム１０の構成を示すブロック図である。通信システム１０は、端末１及びサーバ２を備える。端末１とサーバ２とは互いに通信データを送受信する。図１においては、端末１とサーバ２とは直接接続されている。しかし、端末１は、ネットワークを介してサーバ２と接続されてもよい。
【００１６】
端末１は、上層通信プロトコル部１１０と、下層通信プロトコル部１２０とを備える。上層通信プロトコル部１１０は、送信データ生成部１１１と、再送確認データ生成部１１２と、受信部１１３とを備える。
【００１７】
サーバ２は、上層通信プロトコル部２１０と下層通信プロトコル部２２０とを備える。上層通信プロトコル部２１０は、送信データ生成部２１１と、再送確認データ生成部２１２と、受信部２１３とを備える。
【００１８】
端末１の各部は、以下のように動作する。送信データ生成部１１１は、伝送遅延時間（以下、単に「遅延」という。）の増加を抑制する処理（以下、「遅延抑制処理」という。）が必要な送信データを生成して下層通信プロトコル部１２０へ出力する。送信データ生成部１１１で生成されたデータは、サーバ２へ送信される。再送確認データ生成部１１２は、送信データ生成部１１１が送信データを下層通信プロトコル部１２０へ送信した後、所定の時間間隔で、所定の数の再送確認データを生成して、下層通信プロトコル部１２０へ出力する。受信部１１３は、下層通信プロトコル１２０で受信された、サーバ２から送信された送信データを受信する。
【００１９】
ここで、「送信データ」は、本来、端末１がサーバ２へ（あるいは、サーバ２が端末１へ）送信する通信データのうち、遅延抑制処理が必要とされるデータである。また、「再送確認データ」は、送信データの再送に起因して生じる遅延の増加を抑制するために、送信データに対応して生成されるデータである。このように、上層通信プロトコル部１１０は、送信データ及び再送確認データを生成して、下層通信プロトコル部１２０へ出力する。
【００２０】
なお、上層通信プロトコル部１１０は、遅延抑制処理が不要な送信データを、送信データ生成部１１１以外の図示されない機能部から下層通信プロトコル部１２０へ出力してもよい。遅延抑制処理が不要な送信データとは、通信データのうち、送信データ以外のデータである。上層通信プロトコル部１１０が、遅延抑制処理が不要な通信データを下層通信プロトコル部１２０へ出力する場合には、再送確認データ生成部１１２は、再送確認データを下層通信プロトコル部１２０へ出力しない。
【００２１】
再送確認データは、受信側で受信パケットの順序の確認に用いられる。従って、再送確認データの内容は、送信データの内容（文字、音声、画像等）と無関係な、小さいデータとすることができる。例えば、再送確認データのパケットサイズは、受信側で送信データと再送確認データとが区別可能であり、かつ、送信データを含めた受信順序が確認可能な最低限の大きさでもよい。
下層通信プロトコル部１２０は、上層通信プロトコル部１１０から入力された送信データと再送確認データとを、下層通信プロトコル部１２０及び２２０の間で用いられるプロトコルに沿った形式に変換する。下層通信プロトコル部１２０は、送信データ及び再送確認データに、パケット毎にシーケンス番号を付与する。下層通信プロトコル部１２０は、送信データ及び再送確認データを、サーバ２と接続された伝送路３へ順次直列に送出する。すなわち、下層通信プロトコル部１２０は、伝送路３との間の通信インタフェースである。なお、下層通信プロトコル部１２０は、送信データが遅延抑制処理の対象であるかどうかを判別する機能は備えない。すなわち、下層通信プロトコル部１２０は、上層通信プロトコル部１１０からの制御を受けることなく、送信データ及び再送確認データを、受信した順序及びタイミングでそのまま伝送路３へパケットとして送出する。
【００２２】
伝送路３へ送出されたデータの順序の確認は、送信データ及び再送確認データの各パケットに付与されたシーケンス番号によって行われる。
【００２３】
端末１の下層通信プロトコル部１２０は、さらに、受信データ（サーバ２から送信された、送信データ及び再送確認データ）を、上層通信プロトコル部１１０で用いられるプロトコルに沿った形式に変換する。そして、下層通信プロトコル部１２０は、プロトコルが変換された受信データを受信部１１３へ出力する。また、下層通信プロトコル部１２０は、再送制御機能を備える。すなわち、下層通信プロトコル部１２０は、サーバ２から、シーケンス番号の順序に異常があるデータを一定量以上受信すると、再送を要求する通知をサーバ２に送信する。
【００２４】
以上に説明した端末１の各部の動作は、図１に示すサーバ２の同一名称の各部についても同様である。このような構成により、端末１の上層通信プロトコル部１１０から送信された送信データは、下層通信プロトコル部１２０及び２２０を経由して、サーバ２の上層通信プロトコル部２１０の受信部２１３で受信される。また、サーバ２の上層通信プロトコル部２１０から送信された送信データは、下層通信プロトコル部２２０及び１２０を経由して、端末１の上層通信プロトコル部１１０の受信部１１３で受信される。
【００２５】
なお、通信システム１０は、端末１からサーバ２へのみ通信データを送信してもよい。このような場合には、受信部１１３、再送確認データ生成部２１２及び送信データ生成部２１１は必要とされない。同様に、サーバ２から端末１へのみ通信データが送信される場合には、受信部２１３、再送確認データ生成部１１２及び送信データ生成部１１１は必要とされない。
【００２６】
次に、図２のシーケンスを参照して第１の実施形態の通信システム１０の動作について説明する。図２は、通信システム１０の通信シーケンスを示す図である。図２は、端末１からサーバ２へ送信データが伝送される場合について示す。サーバ２から端末１へ送信データが伝送される場合には、各ステップの向きが逆となる。
【００２７】
まず、端末１において、上層通信プロトコル部１１０は、送信データ生成部１１１を用いて、送信データを下層通信プロトコル部１２０へ出力する（図２のステップＳ１０１）。送信データは、下層通信プロトコル部１２０においてプロトコル変換され、パケットとして端末１からサーバ２へ送信されるが、伝送路上の障害により送信データが消失する場合がある（Ｓ１０２）。このような場合には、下層通信プロトコル部２２０ではステップＳ１０２に相当するシーケンス番号のデータが欠落し、以降に下層通信プロトコル部２２０で受信されるデータは、シーケンス番号の順序に誤りがあるデータとして受信される。
【００２８】
上層通信プロトコル部１１０は、ステップＳ１０１で送信データが送信された後、一定時間経過すると再送確認データ生成部１１２を用いて再送確認データを所定の送信間隔で所定の回数出力する（Ｓ１０３−１〜Ｓ１０３−３）。これらの再送確認データは、送信データと同様に、下層通信プロトコル部１２０においてプロトコル変換される。プロトコル変換されたデータは、端末１からサーバ２へ送信される（Ｓ１０４−１〜Ｓ１０４−３）。
【００２９】
ここで、サーバ２の下層通信プロトコル部２２０は、受信データのシーケンス番号に欠落がある状態で一定数の再送確認データを受信すると、受信されたデータの順序に異常があると判断する。そして、下層通信プロトコル部２２０は、ステップＳ１０２のシーケンス番号に相当する送信データを再送するように、端末１の下層通信プロトコル部１２０へ要求する（Ｓ１０５）。再送の要求により、下層通信プロトコル部１２０は送信データを下層通信プロトコル部２２０へ再送する（Ｓ１０６）。送信データの再送によりサーバ２の上層通信プロトコル部２１０に送信データが到着する（Ｓ１０７）と、送信データの再送が完了する。
【００３０】
図２のステップＳ１０５では、下層通信プロトコル部２２０は、送信データが欠落したまま再送確認データを３回受信すると（Ｓ１０４−１〜３）、サーバ２が端末１に送信データの再送を要求する。しかし、これは例であり、端末１からの再送確認データの送信回数及びサーバ２の再送要求に必要な再送確認データの受信数は３回に限定されない。また、再送確認データ以外のデータを含めて受信数が所定の回数となった場合に再送要求が行われてもよい。
【００３１】
なお、再送確認データの送信回数及びその送信間隔は、下層通信プロトコル部１２０における設定値、または過去の送信データの送信履歴から決定されてもよい。さらに、サーバ２の下層通信プロトコル部２２０は、送信データが正しい順序で受信された場合には、受信された再送確認データを削除してもよい。
【００３２】
図２に記載された、再送確認データを用いた再送手順は、端末１からサーバ２へ送信される通信データが、遅延抑制処理が必要とされる送信データである場合にのみ実行される。端末１からサーバ２へ送信される通信データに遅延抑制処理が必要とされない場合は、再送確認データ生成部１１２は再送確認データを生成しない。従って、遅延抑制処理が必要とされない通信データが送信される際には、再送確認データは送受信されない。その結果、通信システム１０では、全ての通信データに対して再送確認データを送信する構成と比較して、端末１及びサーバ２における通信処理の負荷が小さくなる。なお、遅延抑制処理が必要とされないデータに対しては、下層通信プロトコル部１２０及び２２０に通常備えられている再送制御が行われてもよい。
【００３３】
このような構成を備える第１の実施形態の通信システム１０は、送受信装置及びネットワークに高い負荷をかけることなく再送に伴う遅延を抑えることができる、という効果を奏する。その理由は、端末１は、遅延を短縮すべき送信データに対してのみ、再送確認データを送信するからである。
【００３４】
（第２の実施形態）
次に、本発明の第２の実施形態について、図面を参照して第１の実施形態との差分を中心に説明する。
【００３５】
端末１からサーバ２へ送信データを送信中に何らかの理由により送信データの送信間隔が短くなった場合には、再送確認データの送信回数及びその送信間隔が固定されていると、全ての再送確認データの送信が終了する前に次の送信データが送信される可能性がある。
【００３６】
再送確認データが送信される期間内に、さらに、次の送信データが送信されることにより、端末１の送信処理の負荷及びサーバ２の受信処理の負荷が一時的に増加する可能性がある。このような一時的な負荷の増加量は、再送確認データの送信タイミングと次の送信データの送信タイミングとが近いほど大きい。さらに、最悪の場合として、再送確認データ及び送信データの送信タイミングが一致すると、一方のデータが他方のデータの送信を待つ必要が生じ、その結果、再送確認データあるいは送信データの送信に遅延が生じる可能性もある。すなわち、再送確認データ及び送信データの送信タイミングが一致した場合は、一時的な負荷の増加に加えて、送信データの再送の開始が遅れたり、送信データの遅延が増大したりする可能性もある。
【００３７】
第２の実施形態では、再送確認データが送信される期間内に次の送信データが送信されることによる端末１及びサーバ２の負荷の一時的な増加を防止するために、再送確認データを送信データの送信間隔内で送信するための手順について説明する。
【００３８】
図３は、第２の実施形態の通信システム１０Ａの構成を示すブロック図である。通信システム１０Ａは、端末１Ａ及びサーバ２を備える。図３において、図１と同様の要素には同様の名称及び参照符号を付して、図１と重複する説明は省略する。
【００３９】
端末１Ａは、第１の実施形態の端末１の構成に加えて、再送管理部１３０をさらに備える。再送管理部１３０は、送信間隔取得部１３１と、送信制御部１３２とを備える。第２の実施形態において、通信システム１０Ａが備えるサーバ２は、第１の実施形態のサーバ２と同様の構成を備える。しかし、第２の実施形態におけるサーバ２は、端末１Ａの再送管理部１３０と同様な再送管理部をさらに備えていてもよい。
【００４０】
端末１Ａ及びサーバ２の各部は、以下のように動作する。第２の実施形態では、送信データの送信間隔がより短くなった場合にも、送信データの送信間隔内で再送確認データの送信が完了するように、再送確認データの送信回数及び送信間隔が制御される。
【００４１】
送信間隔取得部１３１は、送信データ生成部１１１が送信データを下層通信プロトコル部１２０へ出力する間隔である送信間隔を取得する。送信制御部１３２は、現状で設定されている再送確認データの送信回数及びその送信間隔と、送信間隔取得部１３１が取得した送信データの送信間隔とに基づいて、再送確認データ生成部１１２から出力される再送確認データの出力回数と送信間隔とを決定する。ここで、下層通信プロトコル部１２０は、送信データ生成部１１１及び再送確認データ生成部１１２から入力されたデータを、そのまま伝送路３に送出する。従って、送信データ生成部１１１及び再送確認データ生成部１１２から出力される送信データ及び再送確認データのそれぞれの送信間隔は、通常は、下層通信プロトコル部１２０から伝送路３へ送出される送信データ及び再送確認データの間隔と同一である。
【００４２】
送信間隔取得部１３１が取得した送信データの送信間隔を用いて再送確認データの送信回数と送信間隔とを決定する手順の例を、図４を用いて以下に説明する。図４は、送信制御部１３２における、再送確認データの送信間隔と送信回数との決定方法を説明するための図である。
【００４３】
ｎ番目（ｎは自然数）の送信データの送信時刻をＴ（ｎ）、ｎ番目の送信データに対する再送確認データの送信間隔をＲＤ（ｎ）、再送確認データの送信回数をＲＮ（ｎ）、再送確認データの現在の送信間隔の既定値をＲＤ、再送確認データの現在の送信回数の既定値をＲＮとする。第２の実施形態においては、ＲＤ（ｎ）及びＲＮ（ｎ）は、以下の式（１）及び式（２）により求められる。
【００４４】
ＲＮ（ｎ）＝ｍｉｎ（Ｆｌｏｏｒ（（Ｔ（ｎ＋１）−Ｔ（ｎ））／ＲＤ），  ＲＮ）  ・・・（１）
ＲＤ（ｎ）＝（Ｔ（ｎ＋１）−Ｔ（ｎ））／（ＲＮ（ｎ）＋１）  ・・・（２）
ここで、ｍｉｎ（Ａ，Ｂ）は数値Ａ、Ｂのうち小さい方の値を示す。また、Ｆｌｏｏｒ（Ａ）は、Ａを超えない最大の整数を示す。例えば、Ｆｌｏｏｒ（５．３）＝５である。
【００４５】
式（１）では、送信データの送信時刻から取得された送信間隔（Ｔ（ｎ＋１）−Ｔ（ｎ））において再送確認データの送信間隔が既定値（ＲＤ）であった場合の再送確認データの送信回数と、再送確認データの既定の送信回数とが比較され、より小さい方の送信回数が新たな送信回数ＲＮ（ｎ）として求められる。式（２）では、取得された送信間隔（Ｔ（ｎ＋１）−Ｔ（ｎ））において再送確認データをＲＮ（ｎ）回送信するための再送確認データの新たな送信間隔が、ＲＤ（ｎ）として求められる。ここで、ＲＤ（ｎ）は送信間隔であるので整数である必要はない。しかし、式（２）の計算結果の小数点を切り捨てるなどの手順により、式（２）の計算結果よりも小さい値をＲＤ（ｎ）としてもよい。
【００４６】
なお、送信間隔取得部１３１は、送信データ生成部１１１から、これから送信しようとするｎ番目及びｎ＋１番目の送信データの送信時刻Ｔ（ｎ）及びＴ（ｎ＋１）を取得してもよい。あるいは、送信データ生成部１１１に過去の送信データの送信時刻を記録する機能を持たせ、送信間隔取得部１３１は、過去の送信時刻の差分から求めた送信データの送信間隔を、式（１）及び（２）において送信間隔（Ｔ（ｎ＋１）−Ｔ（ｎ））として用いてもよい。
【００４７】
端末１Ａの送信データ生成部１１１は、送信間隔（Ｔ（ｎ＋１）−Ｔ（ｎ））で送信データを下層通信プロトコル部１２０へ送信する。再送確認データ生成部１１２は、式（１）、（２）で算出された送信回数ＲＮ（ｎ）と送信間隔ＲＤ（ｎ）に従って、再送確認データを下層通信プロトコル部１２０へ送信する。
【００４８】
下層通信プロトコル部１２０から送信された送信データ及び再送確認データは、サーバ２の下層通信プロトコル部２２０で受信される。下層通信プロトコル部２２０において送信データ及び再送確認データが正しい順序で受信されると、下層通信プロトコル部２２０は、送信データを上層通信プロトコル部２１０の受信部２１３に送信する。送信データが正常に受信された場合には、下層通信プロトコル部２２０は、再送確認データを破棄してもよい。受信部２１３は、下層通信プロトコル部２２０から、送信データを受信する。
【００４９】
一方、下層通信プロトコル部２２０は、送信データの欠落等の原因により、送信データ及び再送確認データの順序が誤った状態で受信された場合には、図２に示した手順によって、端末１Ａに対して送信データの再送を要求する。
【００５０】
第２の実施形態の通信システム１０Ａでは、送信間隔取得部１３１が送信データの実際の送信間隔を取得し、送信制御部１３２は、取得された送信間隔に基づいて、再送確認データの送信回数及び送信間隔を算出する。すなわち、第２の実施形態では、式（１）及び（２）を用いて再送確認データの数及び送信間隔を送信データの送信間隔に基づいて補正することによって、送信データの送信間隔の間に再送確認データの送信を終了させることができる。
【００５１】
このように、第２の実施形態の通信システム１０Ａは、送信データの送信間隔が短くなった場合には、再送確認データの送信数及び送信間隔を変更する。その結果、第２の実施形態の通信システム１０Ａは、第１の実施形態の効果に加えて、次の送信データの送信に起因する端末１Ａ及びサーバ２の負荷の一時的な増加を防止できるという効果を奏する。
【００５２】
なお、図４では端末１Ａからサーバ２へのデータ送信について説明した。しかし、通信システム１０Ａは、サーバ２から端末１Ａへのデータ送信も図４と同様の手順で行うことができる。
【００５３】
（第１及び第２の実施形態の変形例）
第１の実施形態及び第２の実施形態では、端末１及び１Ａにおいて、再送確認データ生成部１１２や再送管理部１３０が上層通信プロトコル部１１０及び１１０Ａに含まれていた。しかし、送信データ生成部１１１や再送確認データ生成部１１２は、上層通信プロトコル部１１０と下層通信プロトコル部１２０との間、あるいは、下層通信プロトコル部１２０の内部にあってもよい。
【００５４】
再送確認データ生成部１１２が上層通信プロトコル部１１０の外部にある場合、再送確認データ生成部１１２は、上層通信プロトコル部１１０から出力される通信データが、遅延抑制処理を必要とするデータかどうか（すなわち、再送確認データを生成する必要があるかどうか）、を知る必要がある。
【００５５】
図５は、第１及び第２の実施形態の変形例における、端末１Ｂの構成を示す図である。図５における端末１Ｂは、図１及び図３で説明した端末１及び１Ａと比較して、送信データ生成部１１１及び再送確認データ生成部１１２が上層通信プロトコル部１１０Ｂの外部にあり、さらに、データ判別部１４０を備える点で相違している。上層通信プロトコル部１１０Ｂは、第１の実施形態の上層通信プロトコル部１１０、あるいは第２の実施形態の上層通信プロトコル部１１０Ａから、送信データ生成部１１１及び再送確認データ生成部１１２を除いた構成に対応する。
【００５６】
データ判別部１４０は、上層通信プロトコル部１１０Ａから送信データ生成部１１１へ出力される通信データが遅延抑制処理の対象となるデータ（送信データ）であるかどうかを示す情報を、送信データとは別に上層通信プロトコル部１１０Ｂから取得する。そして、データ判別部１４０は、取得した情報を再送確認データ生成部１１２に通知する。再送確認データ生成部１１２は、データ判別部１４０から取得した当該情報に基づいて再送確認データを生成する。
【００５７】
例えば、再送確認データ生成部１１２は、データ判別部１４０経由で上層通信プロトコル部１１０Ｂから取得した情報が、上層通信プロトコル部１１０Ｂから送信データ生成部１１１へ出力された通信データが送信データであることを示している場合には、送信データが送信データ生成部１１１から下層通信プロトコル部１２０へ出力された後に、所定の数及び間隔で送信データに対応する再送確認データを下層通信プロトコル部１２０へ送信する。再送確認データの数及び間隔は、式（１）及び（２）により求められてもよい。
【００５８】
一方、再送確認データ生成部１１２が上層通信プロトコル部１１０Ｂから取得した情報が、上層通信プロトコル部１１０Ｂから出力された通信データが送信データではないことを示している場合には、通信データは遅延抑制処理の対象とならない。従って、通信データが送信データではない場合には、再送確認データ生成部１１２は、通信データに対応する再送確認データを下層通信プロトコル部１２０へ出力しない。
【００５９】
このような構成を備える端末１Ｂも、送信データに対してのみ、再送確認データを送信できる。従って、端末１Ｂを、第１の実施形態の通信システム１０や第２の実施形態の通信システム１０Ｂに適用しても、同様に、送受信装置及びネットワークに高い負荷をかけることなく再送に伴う遅延を抑えることができる。
【００６０】
（第２の実施形態のさらに別の変形例）
さらに、第２の実施形態において、再送確認データ生成部１１２や再送管理部１３０は、下層通信プロトコル部１２０における送信処理に要する負荷の状態を取得する機能を備えていてもよい。下層通信プロトコル部１２０における負荷の例としては、端末１、１Ａ、１Ｂが備えるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の使用率や、下層通信プロトコル部１２０で入出力されるデータの量があるが、これらには限定されない。下層通信プロトコル部１２０の負荷の状態に応じて、式（１）及び（２）で求められた再送確認データの送信回数ＲＮ（ｎ）や送信間隔ＲＤ（ｎ）を補正してもよい。例えば、下層通信プロトコル部１２０の送信処理の負荷が高い場合にはＲＮ（ｎ）を小さくするとともにＲＤ（ｎ）を大きくすることで、下層通信プロトコル部１２０の送信処理の負荷を下げることができる。
【００６１】
また、下層通信プロトコル部１２０の送信処理の負荷が低い場合にはＲＮ（ｎ）を大きくするとともにＲＤ（ｎ）を小さくしてもよい。すなわち、下層通信プロトコル部１２０の送信処理の負荷が低い場合には、再送確認データの送信回数ＲＮ（ｎ）を大きくし、再送確認データの送信間隔ＲＤ（ｎ）を小さくすることで、再送確認データの送信が促進され、再送による遅延の増大を抑制できる。このように、下層通信プロトコル部１２０における再送確認データの送信処理の負荷の状況に応じて、再送確認データの送信回数及び送信間隔を変更することにより、下層通信プロトコル部１２０の負荷に適応させた再送確認データの送信が可能になる。
【００６２】
（第３の実施形態）
第３の実施形態として、具体的な数値を用いて第２の実施形態の動作を説明する。図６は、第３の実施形態の通信システム１０Ｂの構成を示すブロック図である。通信システム１０Ｂは、端末１Ｃ及びサーバ２を備える。端末１Ｃは、さらに、ＣＰＵ１６１及びメモリ１６２を備える。サーバ２は、さらに、ＣＰＵ２６１及びメモリ２６２を備える。ＣＰＵ１６１及び２６１は、それぞれ、メモリ１６２または２６２に記憶されたプログラムによって、端末１Ｃあるいはサーバ２の各部を制御する。
【００６３】
端末１Ｃとサーバ２とのそれぞれの上層通信プロトコル部１１０Ａ及び２１０Ａには、アプリケーションソフトウエアがインストールされている。下層通信プロトコル部１２０及び２２０には、無線プロトコルの制御ソフトウエアがインストールされている。端末１Ｃのアプリケーションソフトウエア及び無線プロトコルの機能は、ＣＰＵ１６１及び２６１が実行するプログラムによって実現されてもよい。端末１の上層通信プロトコル部１１０Ａで実行されるアプリケーションソフトウエアは、下層通信プロトコル部１２０及び２２０が備える無線プロトコルを通じてサーバ２の上層通信プロトコル部２１０Ａで実行されるアプリケーションとの間で通信データを送受信する。
【００６４】
通信システム１０Ｂで用いられる無線プロトコルは、シーケンス番号に欠落がある状態で３つ以上のデータを伝送路３から受信すると、シーケンス番号が欠落した送信データの再送を、送信データの送信元の無線プロトコルへ要求する。第３の実施形態において、端末１Ｃのアプリケーションがサーバ２へ送信データを送信する間隔（Ｔ（ｎ＋１）−Ｔ（ｎ））は１０であり、再送確認データの既定の送信回数ＲＮは３回であり、再送確認データの既定の送信間隔ＲＤは４であるとする。
【００６５】
端末１Ｃの上層通信プロトコル部１１０Ａのアプリケーションがｎ番目の送信データｎを送信すると、送信データｎは、下層通信プロトコル部１２０において、無線プロトコルで用いられる形式に変換されて、端末１Ｃからサーバ２へ送信される。
【００６６】
端末１Ｃは、送信データの送信間隔（＝１０）、再送確認データの既定の送信回数ＲＮ＝３及び再送確認データの既定の時間間隔ＲＮ＝４から、式（１）、（２）を用いて、再送確認データの送信回数及び送信間隔を求める。再送確認データの送信回数ＲＮ（ｎ）は、式（１）から、ＲＮ（ｎ）＝ｍｉｎ（Ｆｌｏｏｒ（１０／４），  ３）＝ｍｉｎ（２，３）＝２である。また、送信間隔ＲＤ（ｎ）は、式（２）から、ＲＤ（ｎ）＝１０／（２＋１）＝３．３となる。第３の実施形態では、ＲＤ（ｎ）＝３とする。
【００６７】
端末１Ｃは、送信データｎを送信後、送信間隔（＝３）の時間が経過すると、１番目の再送確認データを送信する。端末１は、さらに送信間隔ＲＤ（ｎ）＝３の時間が経過すると、２番目の再送確認データを送信する。送信回数ＲＮ（ｎ）＝２であるので、再送確認データの送信は２回で終了する。端末１は、２番目の再送確認データの送信後、時間が４だけ経過すると、データｎの送信後の経過時間が送信データの送信間隔１０（＝３＋３＋４）となるため、送信データｎ＋１を送信する。送信データｎ＋１の送信後、次の送信データｎ＋２を送信するまでの間に送信される再送確認データの送信回数及び時間間隔は、上記と同様の手順で計算される。
【００６８】
ここで、この送信データｎが損失し、送信データｎがサーバ２に到着しない場合を考える。サーバ２の下層通信プロトコル部２２０は、受信された通信データのシーケンス番号を確認する。そして、下層通信プロトコル部２２０は、データｎが受信されないまま、２回の再送確認データ及び次の送信データであるデータｎ＋１を受信する。すなわち、下層通信プロトコル部２２０は、シーケンス番号に異常がある状態で３つのデータを受信する。その結果、下層通信プロトコル部２２０は、端末１Ｃの下層通信プロトコル部１２０に対してデータｎの再送を要求する。そして、データｎは、端末１Ｃの無線プロトコルの再送によって、サーバ２で受信される。
【００６９】
一方、端末１Ｃが再送確認データを送信する機能を持たない場合には、サーバ２において順序が誤ったデータが３個受信されるのは、ｎ＋３番目の送信データｎ＋３がサーバ２で受信された後になる。従って、第３の実施形態の通信システム１０Ｂも、再送確認データを送信することにより、再送による伝送遅延の増加を抑制できる。
【００７０】
さらに、第３の実施形態の通信システム１０Ｂでは、再送確認データの既定の送信回数ＲＮ＝３及び再送確認データの既定の時間間隔ＲＮ＝４では、送信データの送信後、再送確認データの送信が終了するまでの時間は４×３＝１２となる。送信データの送信間隔は１０であるので、この既定値では、再送確認データの送信が終了する前に次の送信データが送信される可能性がある。しかしながら、第３の実施形態では、式（１）及び（２）を用いて再送確認データの数及び送信間隔を送信データの送信間隔に基づいて変更することによって、送信データの送信間隔の間に再送確認データの送信を終了させることができる。
【００７１】
上述した第２の実施形態の変形例及び第３の実施形態では端末１Ｂ、１Ｃからサーバ２へのデータ送信について説明した。しかし、端末１Ｂ、１Ｃの構成をサーバ２に適用することにより、サーバ２から端末１Ｂ、１Ｃへのデータ送信においても、各実施形態と同様の効果が得られる。
【００７２】
（第４の実施形態）
図７は、本発明の第４の実施形態の通信装置３００の構成を示すブロック図である。通信装置３００は、送信データ生成部３０１と、再送確認データ生成部３０２と、通信インタフェース３０３と、を備える。
【００７３】
送信データ生成部３０１は、遅延抑制処理の対象となるデータを送信データとして通信インタフェース３０３へ出力する。再送確認データ生成部３０２は、送信データの出力後、再送確認データを、通信インタフェース３０３へ、所定の送信間隔で所定の回数出力する。
【００７４】
通信インタフェース３０３には、送信データ及び再送確認データが入力される。そして、通信インタフェース３０３は、送信データ及び再送確認データに順序情報を付与し、送信データを外部へ送信した後に再送確認データを外部へ送信する。
【００７５】
このような構成を備える通信装置は、遅延抑制処理の対象となる送信データに対して、送信データに続いて再送確認データを送信する。その結果、遅延抑制処理の対象となる送信データが伝送途中で喪失すると、送信データの送信先は、順序情報に基づいて、再送確認データを含むデータが誤った順序で受信されたことを検出できる。その結果、送信データの送信先は、遅延抑制処理の対象となる送信データに対して、早期に通信装置に対して再送を要求できる。
【００７６】
すなわち、第４の実施形態の通信装置は、遅延抑制処理の対象となる送信データに対して再送確認データを送信することにより、再送による遅延を、送受信装置及びネットワークに高い負荷をかけることなく抑制することを可能とする。
【産業上の利用可能性】
【００７７】
本発明は、音声通信など通信品質が遅延による影響を受けやすいシステムで用いられる通信装置に適用できる。
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
この出願は、２０１３年９月１９日に出願された日本出願特願２０１３−１９４３６４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００７８】
１、１Ａ、１Ｂ、１Ｃ  端末、
２  サーバ
３  伝送路
１０、１０Ａ、１０Ｂ  通信システム
１１０、１１０Ａ、１１０Ｂ、２１０、２１０Ａ  上層通信プロトコル部
１１１、２１１、３０１  送信データ生成部
１１２、２１２、３０２  再送確認データ生成部
１１３、２１３  受信部
１２０、２２０  下層通信プロトコル部
１３０、２３０  再送管理部
１３１、２３１  送信間隔取得部
１３２、２３２  送信制御部
１４０  データ判別部
１６１、２６１  ＣＰＵ
１６２、２６１  メモリ
３００  通信装置
３０３  通信インタフェース
【図１】
2015040833.tif 000003
【図２】
2015040833.tif 000004
【図３】
2015040833.tif 000005
【図４】
2015040833.tif 000006
【図５】
2015040833.tif 000007
【図６】
2015040833.tif 000008
【図７】
2015040833.tif 000009
【手続補正書】
【提出日】平成27年1月8日(2015.1.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
伝送遅延の増加の抑制の対象となる通信データを、送信データとして出力する送信データ生成手段と、
前記送信データの出力後、再送確認データを、第１の送信間隔で第１の回数出力する再送確認データ生成手段と、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する通信インタフェースと、
を備える通信装置。
【請求項２】
前記送信データ生成手段から出力される前記送信データの間隔である第２の送信間隔を取得する送信間隔取得手段と、
前記第２の送信間隔に基づいて、新たな前記第１の送信間隔及び新たな前記第１の回数を求める送信制御手段と、をさらに備える、請求項１に記載された通信装置。
【請求項３】
前記送信制御手段は、
ｎ番目（ｎは自然数）の前記送信データの送信時刻をＴ（ｎ）、
ｎ番目の前記送信データに対応する前記再送確認データの送信間隔をＲＤ（ｎ）、
ｎ番目の前記送信データに対応する前記再送確認データの送信回数をＲＮ（ｎ）、
前記第１の送信間隔の既定値をＲＤ、
前記第１の回数の既定値をＲＮ、とした場合に、前記ＲＮ（ｎ）及び前記ＲＤ（ｎ）を、
ＲＮ（ｎ）＝ｍｉｎ（Ｆｌｏｏｒ（（Ｔ（ｎ＋１）−Ｔ（ｎ））／ＲＤ），  ＲＮ）、及び、
ＲＤ（ｎ）＝（Ｔ（ｎ＋１）−Ｔ（ｎ））／（ＲＮ（ｎ）＋１）、により求め（ｍｉｎ（Ａ，Ｂ）は数値Ａ、Ｂのうち小さい方の値を示し、Ｆｌｏｏｒ（Ａ）は、Ａを超えない最大の整数を示す）、ＲＤ（ｎ）を新たな前記第１の送信間隔とし、ＲＮ（ｎ）を新たな前記第１の回数とする、請求項２に記載された通信装置。
【請求項４】
前記送信間隔取得手段は、過去の前記送信データの送信時刻に基づいて前記送信データの送信間隔を（Ｔ（ｎ＋１）−Ｔ（ｎ））として取得する、請求項３に記載された通信装置。
【請求項５】
前記送信制御手段は、前記通信インタフェースの負荷を取得し、さらに、前記負荷に基づいて前記ＲＮ（ｎ）及び前記ＲＤ（ｎ）の少なくとも一方を求める、請求項３又は４に記載された通信装置。
【請求項６】
前記通信データから、前記送信データ以外の前記通信データと前記送信データとを判別してその結果を判別結果として出力する上層通信プロトコル手段をさらに備える、請求項１乃至５のいずれかに記載された通信装置。
【請求項７】
前記判別結果を前記上層通信プロトコル手段から受信し、前記判別結果が、前記通信データが前記送信データであることを示す場合には前記再送確認データ生成手段に前記再送確認データを生成する指示を行うデータ判別手段をさらに備える、請求項６に記載された通信装置。
【請求項８】
請求項１乃至７のいずれかに記載された通信装置と、
前記通信装置から前記送信データ及び前記再送確認データを受信データとして受信し、順序が誤って受信された前記受信データの数が所定の数以上となったことを前記順序情報に基づいて検出した場合には前記通信装置へ前記送信データの再送を要求する受信装置と、を備えた通信システム。
【請求項９】
伝送遅延の増加の抑制の対象となる通信データを送信データとして出力し、
前記送信データの出力後、再送確認データを第１の送信間隔で第１の回数出力し、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する、通信装置の制御方法。
【請求項１０】
伝送遅延の増加の抑制の対象となる通信データを送信データとして出力する手順、
前記送信データの出力後、再送確認データを第１の送信間隔で第１の回数出力する手順、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する手順、を通信装置のコンピュータに実行させるための通信装置の制御プログラムを記録した、一時的でない、プログラムの記録媒体。
【手続補正書】
【提出日】平成28年3月10日(2016.3.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１０
【補正方法】変更
【補正の内容】
【請求項１０】
伝送遅延の増加の抑制の対象となる通信データを送信データとして出力する手順、
前記送信データの出力後、再送確認データを第１の送信間隔で第１の回数出力する手順、
前記送信データ及び前記再送確認データに送信順序を示す順序情報を付与し、前記送信データを送信した後に前記再送確認データを送信する手順、を通信装置のコンピュータに実行させるための通信装置の制御プログラム。
【国際調査報告】
2015040833.tif 000010
2015040833.tif 000011
2015040833.tif 000012
2015040833.tif 000013