JP2009246533A - 通信端末、通信方法、データ通信システム、およびプログラム - Google Patents
通信端末、通信方法、データ通信システム、およびプログラム Download PDFInfo
- Publication number
- JP2009246533A JP2009246533A JP2008088536A JP2008088536A JP2009246533A JP 2009246533 A JP2009246533 A JP 2009246533A JP 2008088536 A JP2008088536 A JP 2008088536A JP 2008088536 A JP2008088536 A JP 2008088536A JP 2009246533 A JP2009246533 A JP 2009246533A
- Authority
- JP
- Japan
- Prior art keywords
- data
- terminal
- communication
- retransmission
- delivery confirmation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 203
- 238000000034 method Methods 0.000 title claims description 69
- 238000012790 confirmation Methods 0.000 claims abstract description 224
- 230000005540 biological transmission Effects 0.000 claims abstract description 180
- 230000004044 response Effects 0.000 claims description 69
- 230000008569 process Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 abstract description 66
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 16
- 230000008859 change Effects 0.000 description 6
- 230000007423 decrease Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000005316 response function Methods 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
【課題】ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行う。
【解決手段】送達確認処理部14において、通信制御部13によりデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定し、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する。
【選択図】 図1
【解決手段】送達確認処理部14において、通信制御部13によりデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定し、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する。
【選択図】 図1
Description
本発明は、データ通信技術に関し、特に送信端末から受信端末へデータを再送するデータ再送制御技術に関する。
データ通信において、データ到達性を保証するプロトコルとして、TCPが広く利用されている(例えば、非特許文献1など参照)。このようなプロトコルでは、各パケットにシーケンス番号を付与し、送信端末から受信端末へ送信する。受信端末では、受信したデータのシーケンス番号を参照して、確認応答パケットに次に受信を期待するシーケンス番号を付与して送信端末へ送信する。
また、上記確認応答の動作において、1パケットごとに確認応答を返信する場合、その確認応答によるオーバーヘッドが大きいため、複数のパケットに関する確認応答を1つにまとめて返信するdelayed ACKが提案されている(例えば、非特許文献2など参照)。
また、上記確認応答の動作において、1パケットごとに確認応答を返信する場合、その確認応答によるオーバーヘッドが大きいため、複数のパケットに関する確認応答を1つにまとめて返信するdelayed ACKが提案されている(例えば、非特許文献2など参照)。
TCPでは、一定時間以上確認応答パケットを受信しない場合、データが廃棄されたと判断してデータの再送を実施する。したがって、データが廃棄されていないにもかかわらず、確認応答が廃棄されることにより、特に、大量の再送が発生する場合、ネットワーク、送受信端末に負荷をかけると同時に、通信効率が低下する。
これに対する関連技術として、上記データ破棄が確認されてデータ再送を行う際、そのデータ再送前に、送信端末から受信端末に対してプローブパケットを送信し、これに対する受信端末からの応答に応じて、それまでに送信端末から受信端末へ送信したデータに関する送達確認を行う技術が提案されている(例えば、特許文献1など参照)。これにより、データ再送前に、送信端末から再送しなくてもよいデータを確認でき、冗長な再送を防ぐことができる。
特開2005−173961号公報
RFC793, "TRANSMISSION CONTROL PROTOCOL," http://www.ietf.org/rfc/rfc0793.txt, pp.8-9, "2.6 Reliable Communication."
RFC1122, "Requirements for Internet Hosts -- Communication Layers," http://www.ietf.org/rfc/rfc1122.txt, pp.95-96, "4.2.3.2 When to Send an ACK Segment."
しかしながら、このような関連技術では、データ再送時には、送信端末と受信端末との間で、必ずプローブパケットとその応答をやり取りして送達確認が行われるため、これら送達確認手順によるオーバーヘッドが大きくなり、通信エラー発生時にもかかわらず、ネットワークおよび送受信端末での負荷が増大するとともに、通信効率が低下するという問題点があった。
本発明はこのような課題を解決するためのものであり、ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行うことができる通信端末、通信方法、データ通信システム、およびプログラムを提供することを目的としている。
本発明はこのような課題を解決するためのものであり、ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行うことができる通信端末、通信方法、データ通信システム、およびプログラムを提供することを目的としている。
このような目的を達成するために、本発明にかかる通信端末は、受信端末とのデータ通信時、受信端末に対してデータを再送する前に受信端末に対してデータの送達確認要求を行う通信端末であって、送達確認要求を行う際、受信端末に対するデータ再送に関する履歴情報に基づいて送達確認の要否を判定する。
また、本発明にかかる通信方法は、送信端末と受信端末との間のデータ通信時、送信端末から受信端末に対してデータを再送する前に送信端末から受信端末に対してデータの送達確認を行う通信方法であって、送信端末が、送達確認要求を行う際、受信端末に対するデータ再送に関する履歴情報に基づいて送達確認の要否を判定する。
また、本発明にかかるデータ通信システムは、送信端末と受信端末との間のデータ通信時、送信端末から受信端末に対してデータを再送する前に送信端末から受信端末に対してデータの送達確認を行うデータ通信システムであって、送信端末として、上記通信端末を備えている。
また、本発明にかかるプログラムは、受信端末との間のデータ通信時に発生した通信エラーに応じてデータを再送する際、当該データ再送前に受信端末に対してデータの送達確認を行う通信端末のコンピュータに、上記通信方法における送信端末の処理を実行させる。
本発明によれば、データ再送時に合わせて送達確認が必ず行われる、ということがなくなるため、これら送達確認手順によるオーバーヘッドを抑制でき、ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行うことができる。
次に、本発明の実施形態について図面を参照して説明する。
[第1の実施形態]
まず、図1を参照して、本発明の第1の実施形態にかかるデータ通信システムについて説明する。図1は、本発明の第1の実施形態にかかるデータ通信システムの構成を示すブロック図である。
このデータ通信システムは、通信ネットワーク30を介して接続された送信端末(通信端末)10と受信端末20とを含んでいる。
送信端末10および受信端末20は、パソコンやサーバ、あるいは携帯電話端末やPDAなど、データ通信機能を有する情報処理装置から構成されている。
[第1の実施形態]
まず、図1を参照して、本発明の第1の実施形態にかかるデータ通信システムについて説明する。図1は、本発明の第1の実施形態にかかるデータ通信システムの構成を示すブロック図である。
このデータ通信システムは、通信ネットワーク30を介して接続された送信端末(通信端末)10と受信端末20とを含んでいる。
送信端末10および受信端末20は、パソコンやサーバ、あるいは携帯電話端末やPDAなど、データ通信機能を有する情報処理装置から構成されている。
送信端末10は、受信端末20とのデータ通信時、受信端末20に対してデータを再送する前に、受信端末20に対してデータの送達確認要求を行う機能を有している。
本実施形態は、送信端末10において、送達確認要求を行う際、データ再送に関する履歴情報に基づいて送達確認の要否を判定するようにしたものである。
本実施形態は、送信端末10において、送達確認要求を行う際、データ再送に関する履歴情報に基づいて送達確認の要否を判定するようにしたものである。
送信端末(通信端末)10には、主な機能部として、通信処理部11、記憶部12、通信制御部13、および送達確認処理部14が設けられており、データバスBを介して相互にデータ通信可能に接続されている。
通信処理部11は、専用の通信回路から構成され、通信ネットワーク30を介して受信端末20の間でデータを送受信する機能を有している。
記憶部12は、ハードディスクやメモリなどの記憶装置から構成され、送信データ12Aや再送履歴情報12Bなど、受信端末20とのデータ通信に関する各種情報を記憶する機能を有している。
通信処理部11は、専用の通信回路から構成され、通信ネットワーク30を介して受信端末20の間でデータを送受信する機能を有している。
記憶部12は、ハードディスクやメモリなどの記憶装置から構成され、送信データ12Aや再送履歴情報12Bなど、受信端末20とのデータ通信に関する各種情報を記憶する機能を有している。
通信制御部13は、TCPやUDPなどの通信プロトコルに基づいて、通信処理部11を介して受信端末20との間でデータ通信用のチャネルを形成する機能と、このチャネルを介してデータを送受信する機能と、通信エラー発生時にはデータを再送する機能と、データ再送に関する再送履歴情報12Bを記録する機能とを有している。
送達確認処理部14は、通信制御部13においてデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定する機能と、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する機能とを有している。
送達確認処理部14は、通信制御部13においてデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定する機能と、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する機能とを有している。
通信制御部13および送達確認処理部14は、CPUとその周辺回路とを有する演算処理部からなり、記憶部12に予め格納されているプログラムを読み込んで演算処理部で実行することにより、上記した各種機能が実現される。
次に、図2を参照して、再送履歴情報12Bについて説明する。図2は、再送履歴情報の構成例である。
再送履歴情報12Bは、データ再送に関する履歴情報であり、受信端末20とのデータ通信におけるデータ再送処理ごとに、通信制御部13により記録される。ここでは、データ再送処理を行ったラウンド番号とその再送データ量とが組として、データ再送処理ごとに記録され、再送履歴情報12Bとして記憶部12に保存されている。
再送履歴情報12Bは、データ再送に関する履歴情報であり、受信端末20とのデータ通信におけるデータ再送処理ごとに、通信制御部13により記録される。ここでは、データ再送処理を行ったラウンド番号とその再送データ量とが組として、データ再送処理ごとに記録され、再送履歴情報12Bとして記憶部12に保存されている。
ラウンドとは、後述の図4に示すように、送信端末10から受信端末20へ送信データ(DT)を送信する処理と、これに応じて受信端末20から送信端末10へ受信確認応答(ACK)を返送する処理との組から構成される、一連のデータ転送手順である。複数のデータを一括して送信し、これに対して1つの受信確認応答が返送される場合にも、1ラウンドとして計数される。
送達確認処理部14は、記憶部12から再送履歴情報12Bを読み出し、送達確認要否の判定に用いる判定対象値としきい値とを算出する。判定対象値は、最新のデータ再送状況を示す評価値であり、再送履歴情報12Bのうち送達確認要否判定時に近い時点に割り当てられた対象期間に属するデータから算出される。一方、しきい値は、判定対象値を判定するための基準値であり、再送履歴情報12Bのうち対象期間より過去の期間を含む基準期間に属するデータから算出される。この際、対象期間の一部またはすべてを基準期間に含んでもよい。
これら対象期間および基準期間は、データ送信手順のラウンド回数を基準として予め設定される。また、判定対象値としきい値は、対象期間や基準期間における再送データ量の平均値、すなわち1ラウンドあたりの平均再送データ量が用いられる。
図2の例では、送達確認要否判定時から過去10ラウンド分が対象期間として割り当てられ、対象期間より過去100ラウンド分が基準期間として割り当てられている。これらラウンド数についてあくまでも例であり、この例に限定されるものではない。
図2のように、対象期間や基準期間をラウンド数で規定する場合、判定対象値については、対象期間におけるラウンドごとの再送データ量の平均値、すなわち対象期間における1ラウンドあたりの平均再送データ量を算出して用いればよい。また、しきい値については、基準期間におけるラウンドごとの再送データ量の平均値、すなわち基準期間における1ラウンドあたりの平均再送データ量を算出して用いればよい。また、対象期間や基準期間をラウンド数で規定する場合、送達確認要否判定時に再送バッファ13Bに残っているデータ量を判定対象値として用いてもよい。
図2のように、対象期間や基準期間をラウンド数で規定する場合、判定対象値については、対象期間におけるラウンドごとの再送データ量の平均値、すなわち対象期間における1ラウンドあたりの平均再送データ量を算出して用いればよい。また、しきい値については、基準期間におけるラウンドごとの再送データ量の平均値、すなわち基準期間における1ラウンドあたりの平均再送データ量を算出して用いればよい。また、対象期間や基準期間をラウンド数で規定する場合、送達確認要否判定時に再送バッファ13Bに残っているデータ量を判定対象値として用いてもよい。
また、対象期間や基準期間として、ラウンド回数ではなく時間長を用いてもよい。この場合には、ラウンド番号に代えて再送時刻を再送履歴情報12Bに記録すればよい。
対象期間や基準期間を時間長で規定する場合、判定対象値については、対象期間における個々の単位時間ごとの再送データ量の平均値、すなわち対象期間における単位時間あたりの平均再送データ量を算して用いればよい。また、しきい値については、基準期間における単位時間ごとの再送データ量の平均値、すなわち基準期間における単位時間あたりの平均再送データ量を算出して用いればよい。
対象期間や基準期間を時間長で規定する場合、判定対象値については、対象期間における個々の単位時間ごとの再送データ量の平均値、すなわち対象期間における単位時間あたりの平均再送データ量を算して用いればよい。また、しきい値については、基準期間における単位時間ごとの再送データ量の平均値、すなわち基準期間における単位時間あたりの平均再送データ量を算出して用いればよい。
しきい値については、平均再送データ量に代えて、最大再送データ量を用いてもよい。例えば、対象期間や基準期間をラウンド数で規定する場合、基準期間におけるラウンドごとの再送データ量の最大値、すなわち基準期間における1ラウンドあたりの最大再送データ量を算出して用いればよい。また、対象期間や基準期間を時間長で規定する場合、基準期間における単位時間ごとの再送データ量の最大値、すなわち基準期間における単位時間あたりの最大再送データ量を算出し、しきい値として用いればよい。
また、しきい値としては、送信したデータ量に対する、送達確認せずにデータ再送をしてもよい割合、すなわち許容データ再送率、に基づき算出した固定値を用いてもよい。例えば、再送データ量が、1ラウンドあるいは単位時間に送信する単位データ送信量の80%に満たない場合、データ再送前に送達確認せずにデータ再送を行い、再送データ量が単位データ送信量の80%以上の場合、当該データ通信に対する許容データ再送率は80%と表される。したがって、例えば、1ラウンドごとに10KBずつデータを送信する場合、この1ラウンドごとの単位データ送信量である10KBの80%に相当する8KBを、しきい値とすればよい。
[第1の実施形態の動作]
次に、図3を参照して、本発明の第1の実施形態にかかる送信端末(通信端末)の動作について説明する。図3は、本発明の第1の実施形態にかかる送信端末の送達確認処理を示すフローチャートである。
次に、図3を参照して、本発明の第1の実施形態にかかる送信端末(通信端末)の動作について説明する。図3は、本発明の第1の実施形態にかかる送信端末の送達確認処理を示すフローチャートである。
通信制御部13は、受信端末20との間でデータ通信のために形成されている1つのセッション上に1つのチャネルを形成し、記憶部12の送信データ12Aからその一部のデータ(DT)を順次読み出し、当該チャネルを介して受信端末20へ送信する。また、これに応じて、上記送信データに対する受信確認応答(ACK)を受信端末20から受信し、この内容に応じて、あるいは受信確認応答の破棄に応じてデータ再送する。これらデータ送信処理は、一般的な通信プロトコルに基づき行われる。
送達確認処理部14は、通信制御部13においてデータ(DT)を送信するごとに、当該データ送信からの経過時間などに基づいて、送達確認タイミングの到来を確認し、送達確認タイミングの到来に応じて、図3の送達確認処理を実行する。
まず、送達確認処理部14は、記憶部12の再送履歴情報12Bに基づいて、前述した判定対象値を算出し(ステップ100)。この場合、しきい値の更新が必要であれば、このステップで新たなしきい値を算出すればよい。
まず、送達確認処理部14は、記憶部12の再送履歴情報12Bに基づいて、前述した判定対象値を算出し(ステップ100)。この場合、しきい値の更新が必要であれば、このステップで新たなしきい値を算出すればよい。
次に、送達確認処理部14は、判定対象値としきい値とを比較することにより、送達確認の要否を判定する(ステップ101)。ここで、判定対象値がしきい値以下の場合、送達確認不要と判定して(ステップ102:NO)、一連の処理を終了する。
一方、判定対象値がしきい値を上回った場合、送達確認要と判定して(ステップ102:YES)、送達確認処理部14は、上記データ送信で送信したデータ(DT)に関する送達確認要求を、通信処理部11から受信端末20へ送信する(ステップ103)。
一方、判定対象値がしきい値を上回った場合、送達確認要と判定して(ステップ102:YES)、送達確認処理部14は、上記データ送信で送信したデータ(DT)に関する送達確認要求を、通信処理部11から受信端末20へ送信する(ステップ103)。
この後、受信端末20から通信処理部11を介して、上記送達確認要求に対する送達確認応答を受信する(ステップ104)。
ここで、この送達確認応答により未送達データが通知された場合、通信制御部13は、通信処理部11から受信端末20へ当該未送達データを再送する(ステップ105)。その後、これら通信制御部13は、再送したデータに関する履歴を記憶部12の再送履歴情報12Bへそれぞれ記録し(ステップ106)、一連の処理を終了する。
ここで、この送達確認応答により未送達データが通知された場合、通信制御部13は、通信処理部11から受信端末20へ当該未送達データを再送する(ステップ105)。その後、これら通信制御部13は、再送したデータに関する履歴を記憶部12の再送履歴情報12Bへそれぞれ記録し(ステップ106)、一連の処理を終了する。
次に、図4を参照して、本発明の第1の実施形態にかかる送信端末の動作例について説明する。図4は、本発明の第1の実施形態にかかる送信端末の動作例を示すシーケンス図である。
まず、時刻T1において、送信端末10は、シーケンス番号SN1〜SN3のデータ(DT)を一括して送信し、この送信に合わせて、送達確認タイミングを計時するための送達確認タイマを起動する。
続く時刻T2において、上記データに対する受信確認応答(ACK)を受信し、送達確認が不要となったことから送達確認タイマを停止する。この受信確認応答には、受信したデータのうち最もシーケンス番号の大きいSN3が記述されており、送信端末10は、受信端末20において、SN1〜SN3のデータがすべて受信されたことを確認する。
続く時刻T2において、上記データに対する受信確認応答(ACK)を受信し、送達確認が不要となったことから送達確認タイマを停止する。この受信確認応答には、受信したデータのうち最もシーケンス番号の大きいSN3が記述されており、送信端末10は、受信端末20において、SN1〜SN3のデータがすべて受信されたことを確認する。
この後の時刻T3において、送信端末10は、シーケンス番号SN4〜SN6のデータを一括して送信し、この送信に合わせて、送達確認タイミングを計時するための送達確認タイマを起動する。
ここで、上記データに対する受信確認応答が途中で破棄された場合、その後の時刻T4において、送達確認タイマがタイムアップする。これにより、送達確認タイミングが到来し、送信端末10において、前述した図3の送達確認処理が実行される。
ここで、上記データに対する受信確認応答が途中で破棄された場合、その後の時刻T4において、送達確認タイマがタイムアップする。これにより、送達確認タイミングが到来し、送信端末10において、前述した図3の送達確認処理が実行される。
ここで、送達確認要と判定した場合、送信端末10は、時刻T5に、受信端末20に対して送達確認要求を送信し、これに応じた受信端末20からの送達確認応答を時刻T6に受信する。
この送達確認応答には、受信したデータのうち最もシーケンス番号の大きいSN5が記述されており、送信端末10は、受信端末20において、上記データのうちSN6のデータを受信していないことを確認する。
この送達確認応答には、受信したデータのうち最もシーケンス番号の大きいSN5が記述されており、送信端末10は、受信端末20において、上記データのうちSN6のデータを受信していないことを確認する。
送信端末10は、これに応じて、時刻T7に、シーケンス番号SN6のデータを受信端末20へ再送するとともに、送達確認タイマを起動する。続く時刻T8において、上記データに対する受信確認応答を受信し、送達確認タイマを停止する。送信端末10は、この受信確認応答により、シーケンス番号SN6のデータの受信を確認する。
一方、送達確認処理において、送達確認不要と判定した場合、送信端末10は、例えば時刻T3からの経過時間に応じて、シーケンス番号SN4〜SN6のデータを一括して再送する。これ以降、前述した処理を繰り返し実行することになる。
一方、送達確認処理において、送達確認不要と判定した場合、送信端末10は、例えば時刻T3からの経過時間に応じて、シーケンス番号SN4〜SN6のデータを一括して再送する。これ以降、前述した処理を繰り返し実行することになる。
[第1の実施形態の効果]
このように、本実施形態によれば、送信端末10から受信端末20に対して送達確認要求を行う際、データ再送に関する再送履歴情報12Bに基づいて送達確認の要否を判定する。
このため、データ再送時に合わせて送達確認が必ず行われる、ということがなくなるため、これら送達確認手順によるオーバーヘッドを抑制でき、ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行うことができる。
このように、本実施形態によれば、送信端末10から受信端末20に対して送達確認要求を行う際、データ再送に関する再送履歴情報12Bに基づいて送達確認の要否を判定する。
このため、データ再送時に合わせて送達確認が必ず行われる、ということがなくなるため、これら送達確認手順によるオーバーヘッドを抑制でき、ネットワークおよび送受信端末での負荷増大を抑制しつつ、送信データの送達確認を行うことができる。
また、本実施形態では、任意の対象期間におけるデータ再送量に関する統計量を履歴情報から判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に送達確認要求を行うようにしている。これにより、データ再送量が増加傾向あり、データ通信状況の悪化が推定される場合にのみ送達確認要求が行われることになる。このため、増大しているデータ再送量を、この送達確認により削減することが可能となり、データ通信状況のさらなる悪化を抑制できるとともに、データ通信状況の早期改善を導くことも可能となる。
また、本実施形態では、対象期間における、送信端末と受信端末との間で行われるデータ送信とこれに応じた受信確認通知との組からなる1ラウンド動作あたりのデータ再送量を、判定対象値として算出するようにしたので、ラウンドに応じたデータ再送状況の変化を詳細に確認することができ、送達確認の要否をより正確に判定することが可能となる。
また、本実施形態では、対象期間における単位時間あたりの平均データ再送量を、判定対象値として算出するようにしたので、通信時刻に応じたデータ再送状況の変化を詳細に確認することができ、送達確認の要否をより正確に判定することが可能となる。
また、本実施形態では、対象期間における単位時間あたりの平均データ再送量を、判定対象値として算出するようにしたので、通信時刻に応じたデータ再送状況の変化を詳細に確認することができ、送達確認の要否をより正確に判定することが可能となる。
また、本実施形態では、対象期間より過去の期間を含む基準期間におけるデータ再送量に関する統計量を、履歴情報からしきい値として算出するようにしたので、データ再送状況の変化を詳細に確認することができ、送達確認の要否をより正確に判定することが可能となる。
また、本実施形態では、基準期間のうちの任意の単位時間で発生した最大データ再送量を、しきい値として算出してもよく、極めて簡単な処理でしきい値を算出することが可能となる。
また、本実施形態では、基準期間のうちの任意の単位時間で発生した最大データ再送量を、しきい値として算出してもよく、極めて簡単な処理でしきい値を算出することが可能となる。
[第2の実施形態]
次に、図5を参照して、本発明の第2の実施形態にかかる送信端末(通信端末)について説明する。図5は、本発明の第2の実施形態にかかる送信端末の構成を示すブロック図である。
本実施形態では、送信端末10の通信処理部11、通信制御部13、および送達確認処理部14の具体的構成について説明する。
次に、図5を参照して、本発明の第2の実施形態にかかる送信端末(通信端末)について説明する。図5は、本発明の第2の実施形態にかかる送信端末の構成を示すブロック図である。
本実施形態では、送信端末10の通信処理部11、通信制御部13、および送達確認処理部14の具体的構成について説明する。
通信処理部11には、主な機能部として、通信インターフェース部(以下、通信I/F部という)11A、データ送信部11B、データ受信部11Cが設けられている。
通信I/F部11Aは、データ送信部11Bから出力された各種データを通信ネットワーク30側へ送信する機能と、通信ネットワーク30から受信した各種データをデータ受信部11Cへ出力する機能とを有している。
通信I/F部11Aは、データ送信部11Bから出力された各種データを通信ネットワーク30側へ送信する機能と、通信ネットワーク30から受信した各種データをデータ受信部11Cへ出力する機能とを有している。
データ送信部11Bは、通信制御部13から読み出したデータや送達確認処理部14から出力された送達確認要求などの各種データを通信I/F部11Aから送信する機能を有している。
データ受信部11Cは、通信I/F部11Aを介して受信した、受信端末20からの受信確認応答や送達確認応答などの各種データを通信制御部13や送達確認処理部14へ出力する機能を有している。
データ受信部11Cは、通信I/F部11Aを介して受信した、受信端末20からの受信確認応答や送達確認応答などの各種データを通信制御部13や送達確認処理部14へ出力する機能を有している。
通信制御部13には、主な機能部として、データ入出力部13A、送信バッファ13B、再送バッファ13C、再送制御部13D、および確認応答処理部13Eが設けられている。
データ入出力部13Aは、データ送信時に、記憶部12の送信データ12Aから送信すべきデータを読み出して送信バッファ13Bへ格納する機能を有している。
データ入出力部13Aは、データ送信時に、記憶部12の送信データ12Aから送信すべきデータを読み出して送信バッファ13Bへ格納する機能を有している。
再送制御部13Dは、データ送信からの経過時間を再送タイマで計時して再送タイミングを監視し、再送タイミングの到来に応じて再送バッファに保存されているデータの再送をデータ送信部11Bへ指示する機能と、受信端末20から受信確認応答や送達確認応答で確認した未受信データの再送をデータ送信部11Bへ指示する機能と、これらデータ再送に関する履歴を記憶部12の再送履歴情報12Bへ記録する機能とを有している。
確認応答処理部13Eは、データ送信後に受信端末20から返送される受信確認応答を受信して、受信確認されたデータを再送バッファ13Cから削除する機能を有している。
確認応答処理部13Eは、データ送信後に受信端末20から返送される受信確認応答を受信して、受信確認されたデータを再送バッファ13Cから削除する機能を有している。
送達確認処理部14には、主な機能部として、送達確認部14Aとしきい値決定部14Bが設けられている。
送達確認部14Aは、データ送信からの経過時間を再送タイマで計時して送達確認タイミングの到来を監視し、送達確認タイミングの到来に応じて送達確認要求の送信をデータ送信部11Bへ指示する機能を有している。
しきい値決定部14Bは、再送制御部13Dでのデータ再送に応じて、記憶部12の再送履歴情報12Bに基づきしきい値を算出する機能を有している。
送達確認部14Aは、データ送信からの経過時間を再送タイマで計時して送達確認タイミングの到来を監視し、送達確認タイミングの到来に応じて送達確認要求の送信をデータ送信部11Bへ指示する機能を有している。
しきい値決定部14Bは、再送制御部13Dでのデータ再送に応じて、記憶部12の再送履歴情報12Bに基づきしきい値を算出する機能を有している。
[第2の実施形態の動作]
次に、図6〜図10を参照して、本発明の第2の実施形態にかかる送信端末(通信端末)の動作について説明する。図6は、本発明の第2の実施形態にかかる送信端末のデータ送信動作を示すシーケンス図である。図7は、本発明の第2の実施形態にかかる送信端末の確認応答処理動作を示すシーケンス図である。図8は、本発明の第2の実施形態にかかる送信端末の送達確認送信動作を示すシーケンス図である。図9は、本発明の第2の実施形態にかかる送信端末のデータ再送動作を示すシーケンス図である。
次に、図6〜図10を参照して、本発明の第2の実施形態にかかる送信端末(通信端末)の動作について説明する。図6は、本発明の第2の実施形態にかかる送信端末のデータ送信動作を示すシーケンス図である。図7は、本発明の第2の実施形態にかかる送信端末の確認応答処理動作を示すシーケンス図である。図8は、本発明の第2の実施形態にかかる送信端末の送達確認送信動作を示すシーケンス図である。図9は、本発明の第2の実施形態にかかる送信端末のデータ再送動作を示すシーケンス図である。
まず、図6を参照して、送信端末10でのデータ送信動作について説明する。
送信バッファ13Bが空になったことなどを条件として、データ入出力部13Aにより送信すべきデータ(DT)が送信バッファ13Bに格納された場合、データ送信部11Bは、送信バッファ13Bからデータを読み込み(ステップ200)、通信I/F部11Aから受信端末20へデータを送信する(ステップ201)。
送信バッファ13Bが空になったことなどを条件として、データ入出力部13Aにより送信すべきデータ(DT)が送信バッファ13Bに格納された場合、データ送信部11Bは、送信バッファ13Bからデータを読み込み(ステップ200)、通信I/F部11Aから受信端末20へデータを送信する(ステップ201)。
その後、データ送信部11Bは、再送制御部13Dおよび送達確認部14Aへ、上記データ送信に関する送信状況を通知する(ステップ202)。また、データ送信部11Bは、上記データ送信で送信した送信バッファ13B内のデータを再送バッファ13Cへ格納し(ステップ203)、送信バッファ13B内のデータを削除する。
再送制御部13Dは、データ送信部11Bからの送信状況通知に応じて、再送タイマを起動する(ステップ205)。また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ206)。
このようにして、一連のデータ送信動作が終了する。
再送制御部13Dは、データ送信部11Bからの送信状況通知に応じて、再送タイマを起動する(ステップ205)。また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ206)。
このようにして、一連のデータ送信動作が終了する。
次に、図7を参照して、送信端末10での受信確認処理について説明する。
データ受信部11Cは、通信I/F部11Aを介して受信端末20からの受信確認応答(ACK)を受信した場合(ステップ300)、この受信確認応答に関する受信状況を確認応答処理部13E、再送制御部13D、および送達確認部14Aへ通知する(ステップ301)。
確認応答処理部13Eは、データ受信部11Cからの受信状況通知に応じて、再送バッファ13C内のデータから受信確認されたデータを削除する(ステップ302)。また再送制御部13Dは、データ受信部11Cからの受信状況通知に応じて、再送タイマを停止する(ステップ303)。また、送達確認部14Aは、データ受信部11Cからの受信状況通知に応じて、送達確認タイマを停止する(ステップ304)。
データ受信部11Cは、通信I/F部11Aを介して受信端末20からの受信確認応答(ACK)を受信した場合(ステップ300)、この受信確認応答に関する受信状況を確認応答処理部13E、再送制御部13D、および送達確認部14Aへ通知する(ステップ301)。
確認応答処理部13Eは、データ受信部11Cからの受信状況通知に応じて、再送バッファ13C内のデータから受信確認されたデータを削除する(ステップ302)。また再送制御部13Dは、データ受信部11Cからの受信状況通知に応じて、再送タイマを停止する(ステップ303)。また、送達確認部14Aは、データ受信部11Cからの受信状況通知に応じて、送達確認タイマを停止する(ステップ304)。
再送制御部13Dは、再送タイマ停止後、再送バッファ13Cを確認し(ステップ310)、未送達データが残っている場合には(ステップ311)、この未送達データの再送をデータ送信部11Bへ指示する(ステップ312)。
データ送信部11Bは、再送制御部13Dからの再送指示に応じて、再送バッファ13Cからデータを読み込み(ステップ320)、通信I/F部11Aから受信端末20へデータを再送する(ステップ321)。そして、このデータ再送に関する送信状況を再送制御部13Dと送達確認部14Aに通知する(ステップ322)。
データ送信部11Bは、再送制御部13Dからの再送指示に応じて、再送バッファ13Cからデータを読み込み(ステップ320)、通信I/F部11Aから受信端末20へデータを再送する(ステップ321)。そして、このデータ再送に関する送信状況を再送制御部13Dと送達確認部14Aに通知する(ステップ322)。
再送制御部13Dは、データ送信部11Bからの送信状況通知に応じて、再送タイマを起動する(ステップ323)。また、このデータ再送に関する履歴を記憶部12の再送履歴情報12Bへ記録し(ステップ324)、しきい値決定部14Bに対してしきい値更新を指示する(ステップ325)。これに応じて、しきい値決定部14Bは、再送履歴情報12Bを読み出して新たなしきい値を算出する(ステップ326)。
また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ327)。
このようにして、一連の受信確認動作が終了する。
また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ327)。
このようにして、一連の受信確認動作が終了する。
次に、図8を参照して、送信端末10での送達確認送信動作について説明する。
送達確認部14Aは、送達確認タイマがタイムアップした場合(ステップ400)、記憶部12から再送履歴情報12Bを読み込んで(ステップ401)、判定対象値を算出する(ステップ402)。この後、しきい値決定部14Bからしきい値を取得し(ステップ403)、判定対象値としきい値とを比較する(ステップ404)。
ここで、判定対象値がしきい値を上回っている場合(ステップ405)、送達確認部14Aは、送達確認要求の送信を、データ送信部11Bへ指示する(ステップ406)。
送達確認部14Aは、送達確認タイマがタイムアップした場合(ステップ400)、記憶部12から再送履歴情報12Bを読み込んで(ステップ401)、判定対象値を算出する(ステップ402)。この後、しきい値決定部14Bからしきい値を取得し(ステップ403)、判定対象値としきい値とを比較する(ステップ404)。
ここで、判定対象値がしきい値を上回っている場合(ステップ405)、送達確認部14Aは、送達確認要求の送信を、データ送信部11Bへ指示する(ステップ406)。
データ送信部11Bは、送達確認部14Aからの送達確認要求送信指示に応じて、再送バッファ13C内のデータを確認し(ステップ407)、このデータに関する送達確認要求を通信I/F部11Aから受信端末20へ送信する(ステップ408)。そして、この送達確認要求の送信に関する送信状況を送達確認部14Aに通知する(ステップ409)。
送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ410)。
このようにして、一連の送達確認送信動作が終了する。
送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ410)。
このようにして、一連の送達確認送信動作が終了する。
送達確認要求の具体例としては、再送バッファ13C内のデータのうち最も大きいシーケンス番号のデータを再送してもよい。これにより、受信端末20では通常のデータ受信時と同じ処理で、自端末での受信状況を確認し、受信確認応答により送信端末10へ通知することになる。また、送信端末10では、受信端末20からの受信確認応答に応じて、通常のデータ送信時と同じ処理動作、例えば前述した図7の確認応答処理動作で対応することができる。したがって、受信端末20において、新たな処理を追加することなく、送達確認要求に対応することが可能となる。また送信端末10において、新たな処理を別途設けることなく送達確認応答に対応することが可能となる。
また、送達確認要求および送達確認応答として特別なメッセージを用いる場合には、受信端末20において、当該メッセージを解析する処理必要となるが、解析処理以降の送達確認応答処理としては、データ受信時の受信確認応答処理と同様であり、この処理を利用すれば、処理の追加変更分を削減することも可能である。また、送信端末10では、受信端末20からの送達確認応答を解析する処理が必要となるが、解析処理以降の送達確認応答処理としては、例えば前述した図7の確認応答処理動作で対応することができ、この処理を利用すれば、処理の追加変更分を削減することも可能である。
次に、図9を参照して、送信端末10でのデータ再送動作について説明する。
再送制御部13Dは、再送タイマがタイムアップした場合(ステップ500)、再送バッファ13Cに残っている未送達データの再送をデータ送信部11Bへ指示する(ステップ501)。
データ送信部11Bは、再送制御部13Dからの再送指示に応じて、再送バッファ13Cからデータを読み込み(ステップ510)、通信I/F部11Aから受信端末20へデータを再送する(ステップ511)。そして、このデータ再送に関する送信状況を再送制御部13Dと送達確認部14Aに通知する(ステップ512)。
再送制御部13Dは、再送タイマがタイムアップした場合(ステップ500)、再送バッファ13Cに残っている未送達データの再送をデータ送信部11Bへ指示する(ステップ501)。
データ送信部11Bは、再送制御部13Dからの再送指示に応じて、再送バッファ13Cからデータを読み込み(ステップ510)、通信I/F部11Aから受信端末20へデータを再送する(ステップ511)。そして、このデータ再送に関する送信状況を再送制御部13Dと送達確認部14Aに通知する(ステップ512)。
再送制御部13Dは、データ送信部11Bからの送信状況通知に応じて、再送タイマを起動する(ステップ513)。また、このデータ再送に関する履歴を記憶部12の再送履歴情報12Bへ記録し(ステップ514)、しきい値決定部14Bに対してしきい値更新を指示する(ステップ515)。これに応じて、しきい値決定部14Bは、再送履歴情報12Bを読み出して新たなしきい値を算出する(ステップ516)。
また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ517)。
このようにして、一連の受信確認動作が終了する。
また、送達確認部14Aは、データ送信部11Bからの送信状況通知に応じて、送達確認タイマを起動する(ステップ517)。
このようにして、一連の受信確認動作が終了する。
[第3の実施形態]
次に、図10を参照して、本発明の第3の実施形態にかかるデータ通信システムについて説明する。図10は、本発明の第3の実施形態にかかるデータ通信システムを示すブロック図である。
次に、図10を参照して、本発明の第3の実施形態にかかるデータ通信システムについて説明する。図10は、本発明の第3の実施形態にかかるデータ通信システムを示すブロック図である。
第1の実施形態では、送信端末10と受信端末20との間で1つのセッション上に1つのチャネルを形成してデータ通信を行う場合を例として説明した。本実施形態では、送信端末10と受信端末20との間で1つのセッションを形成するとともに、このセッション上に複数のチャネルを形成し、これらチャネルを並列的に用いてデータ通信を行う場合について説明する。
本実施形態にかかる送信端末10には、主な機能部として、通信処理部11、記憶部12、複数の通信制御部13、および送達確認処理部14が設けられている。
通信処理部11は、専用の通信回路から構成され、通信ネットワーク30を介して受信端末20の間でデータを送受信する機能を有している。
記憶部12は、ハードディスクやメモリなどの記憶装置から構成され、送信データ12Aや再送履歴情報12Bなど、受信端末20とのデータ通信に関する各種情報を記憶する機能を有している。
通信処理部11は、専用の通信回路から構成され、通信ネットワーク30を介して受信端末20の間でデータを送受信する機能を有している。
記憶部12は、ハードディスクやメモリなどの記憶装置から構成され、送信データ12Aや再送履歴情報12Bなど、受信端末20とのデータ通信に関する各種情報を記憶する機能を有している。
通信制御部13は、UDPやTCPなどの通信プロトコルに基づいて、通信処理部11を介して受信端末20との間でデータ通信用のチャネルを形成する機能と、このチャネルを介してデータを送受信する機能と、通信エラー発生時にはデータを再送する機能と、データ再送に関する再送履歴情報12Bを記録する機能とを有している。
送達確認処理部14は、通信制御部13においてデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定する機能と、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する機能とを有している。
送達確認処理部14は、通信制御部13においてデータを再送する前に、記憶部12の再送履歴情報12Bに基づいて送達確認の要否を判定する機能と、送達確認が必要と判定した場合に通信処理部11を介して受信端末20へ送達確認要求を送信する機能とを有している。
通信制御部13および送達確認処理部14は、CPUとその周辺回路とを有する演算処理部からなり、記憶部12に予め格納されているプログラムを読み込んで演算処理部で実行することにより、上記した各種機能が実現される。
本実施形態では、通信制御部13が、受信端末20との間で形成したチャネルごとに並列して設けられており、これら通信制御部13は、対応する1つのチャネルを用いたデータ通信についての通信制御を行う。
また、送達確認処理部14は、各チャネルに共通して1つ設けられており、各チャネルのデータ送信状況に応じて、受信端末20へ送達確認を行う。
また、送達確認処理部14は、各チャネルに共通して1つ設けられており、各チャネルのデータ送信状況に応じて、受信端末20へ送達確認を行う。
次に、図11を参照して、再送履歴情報12Bについて説明する。図11は、再送履歴情報の他の構成例である。
再送履歴情報12Bは、データ再送に関する履歴情報であり、受信端末20とのデータ通信におけるデータ再送処理ごとに、各通信制御部13により記録される。ここでは、データ再送処理を行ったラウンド番号がデータ再送処理ごとに記録され、再送履歴情報12Bとして記憶部12に保存されている。この際、再送履歴情報12Bには、各通信制御部13から、チャネルの区別なく共通して再送履歴が記録される。
再送履歴情報12Bは、データ再送に関する履歴情報であり、受信端末20とのデータ通信におけるデータ再送処理ごとに、各通信制御部13により記録される。ここでは、データ再送処理を行ったラウンド番号がデータ再送処理ごとに記録され、再送履歴情報12Bとして記憶部12に保存されている。この際、再送履歴情報12Bには、各通信制御部13から、チャネルの区別なく共通して再送履歴が記録される。
送達確認処理部14は、記憶部12から再送履歴情報12Bを読み出し、送達確認要否の判定に用いる判定対象値としきい値とを算出する。判定対象値は、最新のデータ再送状況を示す評価値であり、再送履歴情報12Bのうち送達確認要否判定時に近い時点に割り当てられた対象期間に属するデータから算出される。一方、しきい値は、判定対象値を判定するための基準値であり、再送履歴情報12Bのうち対象期間より過去の期間を含む基準期間に属するデータから算出される。この際、対象期間の一部またはすべてを基準期間に含んでもよい。
これら対象期間および基準期間は、データ送信手順のラウンド回数を基準として予め設定される。また、判定対象値としきい値は、対象期間や基準期間における再送チャネル数の平均値、すなわち1ラウンドあたりの再送チャネル数が用いられる。
この際、再送チャネル数については、対象期間および基準期間にデータ再送が発生したチャネル数をすべて計数してもよいが、例えば数ラウンド分の平均再送データ量が所定値を越えるチャネル数を計数してもよく、これにより突発的なデータ再送を除外することが可能となり、より安定した送達確認要否判定を実現できる。また、再送チャネル数の計数対象としては、送達確認要否判定時に接続されているチャネルのみとしてもよく、これにより現在の通信状況に即した再送チャネル数を得ることが可能となり、より正確な送達確認要否判定を実現できる。
この際、再送チャネル数については、対象期間および基準期間にデータ再送が発生したチャネル数をすべて計数してもよいが、例えば数ラウンド分の平均再送データ量が所定値を越えるチャネル数を計数してもよく、これにより突発的なデータ再送を除外することが可能となり、より安定した送達確認要否判定を実現できる。また、再送チャネル数の計数対象としては、送達確認要否判定時に接続されているチャネルのみとしてもよく、これにより現在の通信状況に即した再送チャネル数を得ることが可能となり、より正確な送達確認要否判定を実現できる。
図2の例では、送達確認要否判定時から過去10ラウンド分が対象期間として割り当てられ、対象期間より過去100ラウンド分が基準期間として割り当てられている。したがって、判定対象値は、送達確認要否判定時から過去10ラウンド分の再送チャネル数の平均値から算出され、しきい値は、対象期間より過去100ラウンド分の再送チャネル数の平均値から算出されている。これらラウンド数についてあくまでも例であり、この数値に限定されるものではない。
なお、対象期間や基準期間として、ラウンド回数ではなく時間長を用いてもよい。この場合には、ラウンド番号に代えて再送時刻を再送履歴情報12Bに記録すればよい。これにより、判定対象値およびしきい値として、単位時間あたりの再送チャネル数を用いることになる。
また、判定対象値やしきい値については、平均再送チャネル数ではなく、対象期間や基準期間における最大再送チャネル数を用いてもよい。また、しきい値については、固定値を用いてもよい。
また、判定対象値やしきい値については、平均再送チャネル数ではなく、対象期間や基準期間における最大再送チャネル数を用いてもよい。また、しきい値については、固定値を用いてもよい。
また、達確認要求や送達確認応答をやり取りするチャネルとしては、データ送信に用いているいずれかのチャネルを利用してもよく、データ送信用とは別個に設けた送達確認用のチャネルを利用してもよい。
本実施形態については、前述した送信端末10における、再送履歴情報12Bの構成、および送達確認処理部14での判定対象値およびしきい値の算出方法が異なるものの、その他の構成については、第1の実施形態と同様であり、ここでの詳細な説明は省略する。
[第3の実施形態の動作]
次に、本発明の第3の実施形態にかかる送信端末(通信端末)の動作について説明する。
本実施形態にかかる送信端末の送達確認処理は、前述した図3とほぼ同様である。ここでは、図3を参照して、送信端末10の送達確認処理について説明する。
次に、本発明の第3の実施形態にかかる送信端末(通信端末)の動作について説明する。
本実施形態にかかる送信端末の送達確認処理は、前述した図3とほぼ同様である。ここでは、図3を参照して、送信端末10の送達確認処理について説明する。
各通信制御部13は、受信端末20との間でデータ通信のために形成されている1つのセッション上に、それぞれ対応するチャネルを形成し、記憶部12の送信データ12Aからその一部のデータ(DT)を順次読み出し、当該チャネルを介して受信端末20へ送信する。
また、各通信制御部13において、上記送信データに対する受信確認応答(ACK)を受信端末20から受信し、この内容に応じて、あるいは受信確認応答の破棄に応じてデータ再送する。これらデータ送信処理は、一般的な通信プロトコルに基づき行われる。
また、各通信制御部13において、上記送信データに対する受信確認応答(ACK)を受信端末20から受信し、この内容に応じて、あるいは受信確認応答の破棄に応じてデータ再送する。これらデータ送信処理は、一般的な通信プロトコルに基づき行われる。
送達確認処理部14は、各通信制御部13においてデータ(DT)を送信するごとに、当該データ送信からの経過時間などに基づいて、送達確認タイミングの到来を確認し、送達確認タイミングの到来に応じて、図3の送達確認処理を実行する。
まず、送達確認処理部14は、記憶部12の再送履歴情報12Bに基づいて、前述した判定対象値を算出し(ステップ100)。この場合、しきい値の更新が必要であれば、このステップで新たなしきい値を算出すればよい。
まず、送達確認処理部14は、記憶部12の再送履歴情報12Bに基づいて、前述した判定対象値を算出し(ステップ100)。この場合、しきい値の更新が必要であれば、このステップで新たなしきい値を算出すればよい。
次に、送達確認処理部14は、判定対象値としきい値とを比較することにより、送達確認の要否を判定する(ステップ101)。ここで、判定対象値がしきい値以下の場合、送達確認不要と判定して(ステップ102:NO)、一連の処理を終了する。
一方、判定対象値がしきい値を上回った場合、送達確認要と判定して(ステップ102:YES)、送達確認処理部14は、上記データ送信で送信したデータ(DT)に関する送達確認要求を、通信処理部11から受信端末20へ送信する(ステップ103)。
一方、判定対象値がしきい値を上回った場合、送達確認要と判定して(ステップ102:YES)、送達確認処理部14は、上記データ送信で送信したデータ(DT)に関する送達確認要求を、通信処理部11から受信端末20へ送信する(ステップ103)。
この後、受信端末20から通信処理部11を介して、上記送達確認要求に対する送達確認応答を受信する(ステップ104)。
ここで、この送達確認応答により未送達データが通知された場合、これら未送達データに対応する通信制御部13において、通信処理部11から受信端末20へ当該未送達データをそれぞれ再送する(ステップ105)。その後、これら通信制御部13は、再送したデータに関する履歴を記憶部12の再送履歴情報12Bへそれぞれ記録し(ステップ106)、一連の処理を終了する。
ここで、この送達確認応答により未送達データが通知された場合、これら未送達データに対応する通信制御部13において、通信処理部11から受信端末20へ当該未送達データをそれぞれ再送する(ステップ105)。その後、これら通信制御部13は、再送したデータに関する履歴を記憶部12の再送履歴情報12Bへそれぞれ記録し(ステップ106)、一連の処理を終了する。
[第3の実施形態の効果]
このように、本実施形態では、任意の対象期間において各チャネルのうちデータ再送が発生した再送チャネル数を、履歴情報から判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に送達確認を送信するようにしたので、送信端末と受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行う場合でも、個々のチャネルでのデータ再送状況を総合的に判断して、送達確認の要否を判定することが可能となる。
このように、本実施形態では、任意の対象期間において各チャネルのうちデータ再送が発生した再送チャネル数を、履歴情報から判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に送達確認を送信するようにしたので、送信端末と受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行う場合でも、個々のチャネルでのデータ再送状況を総合的に判断して、送達確認の要否を判定することが可能となる。
また、本実施形態では、対象期間における単位時間あたりの平均再送チャネル数を、判定対象値として算出するようにしたので、各チャネルにおける通信時刻に応じたデータ再送状況の変化を詳細かつ総合的に確認することができ、送達確認の要否をより正確に判定することが可能となる。
また、本実施形態では、基準期間のうちの任意の単位時間で発生した最大再送チャネル数を、しきい値として算出してもよく、極めて簡単な処理でしきい値を算出することが可能となる。
また、本実施形態では、基準期間のうちの任意の単位時間で発生した最大再送チャネル数を、しきい値として算出してもよく、極めて簡単な処理でしきい値を算出することが可能となる。
また、本実施形態において、各チャネルでのデータ再送ごとに、その再送データ量を再送履歴情報12Bに記録しておき、全チャネル分に関する対象期間における単位時間あたりの平均再送データ量を、判定対象値として算出してもよく、各チャネルにおけるデータ再送状況の変化を詳細かつ総合的に確認することができ、送達確認の要否をより正確に判定することが可能となる。
[実施形態の拡張]
以上の各実施形態については、TCPだけでなくUDPなど、他の通信プロトコルについても適用可能である。特に、UDPなどのように、受信確認応答機能が標準仕様として規定されていない通信プロトコルについては、例えばTCP相当の受信確認応答機能を追加すればよい。
また、各実施形態については、受信確認応答として、受信端末で先頭から連続して受信確認できているデータの最後のデータを示すシーケンス番号を返答する場合(ACK)を例として説明したが、受信端末で受信確認できたデータのうち受信できたシーケンス番号を返答する場合(SACK)を用いる場合にも、前述と同様にして適用可能である。
以上の各実施形態については、TCPだけでなくUDPなど、他の通信プロトコルについても適用可能である。特に、UDPなどのように、受信確認応答機能が標準仕様として規定されていない通信プロトコルについては、例えばTCP相当の受信確認応答機能を追加すればよい。
また、各実施形態については、受信確認応答として、受信端末で先頭から連続して受信確認できているデータの最後のデータを示すシーケンス番号を返答する場合(ACK)を例として説明したが、受信端末で受信確認できたデータのうち受信できたシーケンス番号を返答する場合(SACK)を用いる場合にも、前述と同様にして適用可能である。
また、各実施形態では、データ送信から所定時間経過時点に送達確認要否を判定する場合を例として説明したが、これに限定されるものではない。例えば、送達確認要否の判定処理をデータ送信動作とは同期させずに、送達確認処理部14で計時した所定周期で、送達確認要否を判定してもよい。また、通信制御部13における再送タイマがタイムアップした時点で、送達確認処理部14により送達確認要否を判定し、送達確認要の場合には、受信端末20との間で送達確認を行った後、必要に応じて、通信制御部13によりデータ再送を行い、送達確認不要の場合は、通信制御部13により直ちにデータ再送を行うようにしてもよい。
また、各実施形態では、送信端末10と受信端末20との間のデータ通信に用いているセッションおよびチャネルでのデータ再送状況に応じて送達確認の要否を判定する場合について説明したが、送信端末10と受信端末20との間で異なるセッションが形成されている場合には、このような異なるセッションでのデータ再送状況に応じて送達確認の要否を判定してもよい。
また、各実施形態では、判定対象値として、平均再送データ量や平均再送チャネル数を用いた場合を例として説明したが、これに限定されるものではなく、データ再送状況を示す他の指標を判定対象値として用いてもよい。例えば、送信端末10から受信端末20に対して送信した送信データ量に対する再送データ量の割合、すなわち送信データのロス率を判定対象値として用いてもよい。
10…送信端末(通信端末)、11…通信処理部、11A…通信I/F部、11B…データ送信部、11C…データ受信部、12…記憶部、12A…送信データ、12B…再送履歴情報、13…通信制御部、13A…データ入出力部、13B…送信バッファ、13C…再送バッファ、13D…再送制御部、13E…確認応答処理部、14…送達確認処理部、14A…送達確認部、14B…しきい値決定部、20…受信端末、30…通信ネットワーク。
Claims (24)
- 受信端末とのデータ通信時、受信端末に対してデータを再送する前に受信端末に対してデータの送達確認要求を行う通信端末であって、
前記送達確認要求を行う際、前記受信端末に対するデータ再送に関する履歴情報に基づいて送達確認の要否を判定することを特徴とする通信端末。 - 請求項1に記載の通信端末において、
任意の対象期間におけるデータ再送量に関する統計量を前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認要求を行うことを特徴とする通信端末。 - 請求項2に記載の通信端末において、
前記対象期間における、前記送信端末と前記受信端末との間で行われるデータ送信とこれに応じた受信確認通知との組からなる1ラウンド動作あたりのデータ再送量を、前記判定対象値として算出することを特徴とする通信端末。 - 請求項2に記載の通信端末において、
前記対象期間における、単位時間あたりのデータ再送量を、前記判定対象値として算出することを特徴とする通信端末。 - 請求項2に記載の通信端末において、
前記対象期間より過去の期間を含む基準期間におけるデータ再送量に関する統計量を、前記履歴情報から前記しきい値として算出することを特徴とする通信端末。 - 請求項5に記載の通信端末において、
前記基準期間のうちの任意の単位時間で発生した最大データ再送量を、前記しきい値として算出することを特徴とする通信端末。 - 請求項5に記載の通信端末において、
前記基準期間のうちの、前記送信端末と前記受信端末との間で行われるデータ送信とこれに応じた受信確認通知との組からなる、任意の1ラウンド動作あたりに発生した最大データ再送量を、前記しきい値として算出することを特徴とする通信端末。 - 請求項1に記載の通信端末において、
前記受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行っている場合、任意の対象期間においてこれらチャネルのうちデータ再送が発生した再送チャネル数を、前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認を行うことを特徴とする通信端末。 - 請求項8に記載の通信端末において、
前記対象期間より過去の期間を含む基準期間における再送チャネル数を、前記履歴情報から前記しきい値として算出することを特徴とする通信端末。 - 請求項1に記載の通信端末において、
前記受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行っている場合、任意の対象期間におけるこれらチャネルでのデータ再送量に関する統計量を、前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認を送信することを特徴とする通信端末。 - 請求項10に記載の通信端末において、
前記対象期間より過去の期間を含む基準期間における、これらチャネルでのデータ再送量に関する統計量を、前記履歴情報から前記しきい値として算出することを特徴とする通信端末。 - 送信端末と受信端末との間のデータ通信時、送信端末から受信端末に対してデータを再送する前に送信端末から受信端末に対してデータの送達確認を行う通信方法であって、
前記送信端末が、前記送達確認要求を行う際、前記受信端末に対するデータ再送に関する履歴情報に基づいて送達確認の要否を判定することを特徴とする通信方法。 - 請求項12に記載の通信方法において、
前記送信端末が、任意の対象期間におけるデータ再送量に関する統計量を前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認要求を行うことを特徴とする通信方法。 - 請求項13に記載の通信方法において、
前記送信端末が、前記対象期間における、前記送信端末と前記受信端末との間で行われるデータ送信とこれに応じた受信確認通知との組からなる1ラウンド動作あたりのデータ再送量を、前記判定対象値として算出することを特徴とする通信方法。 - 請求項13に記載の通信方法において、
前記送信端末が、前記対象期間における、単位時間あたりのデータ再送量を、前記判定対象値として算出することを特徴とする通信方法。 - 請求項12に記載の通信方法において、
前記送信端末が、前記対象期間より過去の期間を含む基準期間におけるデータ再送量に関する統計量を、前記履歴情報から前記しきい値として算出することを特徴とする通信方法。 - 請求項16に記載の通信方法において、
前記送信端末が、前記基準期間のうちの任意の単位時間で発生した最大データ再送量を、前記しきい値として算出することを特徴とする通信方法。 - 請求項16に記載の通信方法において、
前記送信端末が、前記基準期間のうちの、前記送信端末と前記受信端末との間で行われるデータ送信とこれに応じた受信確認通知との組からなる、任意の1ラウンド動作あたりに発生した最大データ再送量を、前記しきい値として算出することを特徴とする通信方法。 - 請求項12に記載の通信方法において、
前記受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行っている場合、任意の対象期間においてこれらチャネルのうちデータ再送が発生した再送チャネル数を、前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認を行うことを特徴とする通信方法。 - 請求項19に記載の通信方法において、
前記送信端末が、前記対象期間より過去の期間を含む基準期間における再送チャネル数を、前記履歴情報から前記しきい値として算出することを特徴とする通信方法。 - 請求項12に記載の通信方法において、
前記送信端末が、前記受信端末との間で接続した複数のチャネルを並列的に用いてデータ通信を行っている場合、任意の対象期間におけるこれらチャネルでのデータ再送量に関する統計量を、前記履歴情報から前記判定対象値として算出し、この判定対象値が所定のしきい値を上回った場合に前記送達確認を送信することを特徴とする通信方法。 - 請求項21に記載の通信方法において、
前記送信端末が、前記対象期間より過去の期間を含む基準期間における、これらチャネルでのデータ再送量に関する統計量を、前記履歴情報から前記しきい値として算出することを特徴とする通信方法。 - 送信端末と受信端末との間のデータ通信時、送信端末から受信端末に対してデータを再送する前に送信端末から受信端末に対してデータの送達確認を行う通信システムであって、
前記送信端末として、請求項1〜請求項11のいずれか1つに記載のデータ通信端末を備えることを特徴とするデータ通信システム。 - 受信端末との間のデータ通信時に発生した通信エラーに応じてデータを再送する際、当該データ再送前に受信端末に対してデータの送達確認を行う通信端末のコンピュータに、
請求項12〜請求項22のいずれか1つに記載の通信方法における送信端末の処理を実行させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008088536A JP2009246533A (ja) | 2008-03-28 | 2008-03-28 | 通信端末、通信方法、データ通信システム、およびプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008088536A JP2009246533A (ja) | 2008-03-28 | 2008-03-28 | 通信端末、通信方法、データ通信システム、およびプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2009246533A true JP2009246533A (ja) | 2009-10-22 |
Family
ID=41307993
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008088536A Pending JP2009246533A (ja) | 2008-03-28 | 2008-03-28 | 通信端末、通信方法、データ通信システム、およびプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2009246533A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011100285A (ja) * | 2009-11-05 | 2011-05-19 | Canon Inc | Usbホスト装置、制御方法、及びプログラム |
| JP2021090185A (ja) * | 2019-12-04 | 2021-06-10 | 奇邑科技股▲ふん▼有限公司 | データ伝送方法及び通信システム |
-
2008
- 2008-03-28 JP JP2008088536A patent/JP2009246533A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2011100285A (ja) * | 2009-11-05 | 2011-05-19 | Canon Inc | Usbホスト装置、制御方法、及びプログラム |
| JP2021090185A (ja) * | 2019-12-04 | 2021-06-10 | 奇邑科技股▲ふん▼有限公司 | データ伝送方法及び通信システム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4214793B2 (ja) | 無線通信システム、サーバ、基地局、移動端末及びそれらに用いる再送タイムアウト時間決定方法 | |
| EP2978171B1 (en) | Communication method, communication device, and communication program | |
| JP4147534B2 (ja) | 通信装置および通信方法 | |
| US9037935B2 (en) | Apparatus and method for retransmitting message in message transmission system | |
| CN103986548B (zh) | 一种确定丢包原因的方法和终端 | |
| CN112436924B (zh) | 一种数据传输方法及电子设备 | |
| US9674101B2 (en) | Communication device, transmission data output control method, and program for same | |
| JP7327730B2 (ja) | パケット処理方法および装置 | |
| JP2016213811A (ja) | インタラクティブなリアルタイムメディアの転送プロトコル | |
| JPWO2008023656A1 (ja) | 通信装置 | |
| JP2014524092A (ja) | 単一ソケットポイントツーマルチポイント性能による高信頼性仮想双方向データストリーム通信のためのシステムおよび方法 | |
| JP2014143760A (ja) | 通信装置、通信システム、およびデータ通信の中継方法 | |
| JPWO2005027456A1 (ja) | 通信システム、通信装置、およびデータの再送制御方法 | |
| EP3461044B1 (en) | Method and apparatus for data transmission | |
| CN109981385B (zh) | 一种实现丢包检测的方法、装置和系统 | |
| WO2016045332A1 (zh) | 编码参数的调整、反馈信息的处理方法及装置 | |
| JP5170798B2 (ja) | 伝送レート制御装置及び伝送レート制御方法 | |
| JP5941853B2 (ja) | パケット通信方法及び装置 | |
| CN115276916A (zh) | 一种丢弃数据的确定方法、装置、电子设备及存储介质 | |
| US11405148B2 (en) | Communication system, communication device, method, and recording medium of program | |
| US11962517B2 (en) | Communications method, apparatus, and system for recovering lost packets | |
| JP2009246533A (ja) | 通信端末、通信方法、データ通信システム、およびプログラム | |
| JP2012014452A (ja) | 情報処理装置、情報処理プログラム、情報処理方法 | |
| CN118802081B (zh) | 数据重传方法、装置、设备、存储介质以及程序产品 | |
| JP2009273094A (ja) | データ通信システム、データ通信端末、データ通信方法、およびプログラム |