JP6528768B2 - 通信制御装置、通信制御方法及び通信制御プログラム - Google Patents

通信制御装置、通信制御方法及び通信制御プログラム Download PDF

Info

Publication number
JP6528768B2
JP6528768B2 JP2016512608A JP2016512608A JP6528768B2 JP 6528768 B2 JP6528768 B2 JP 6528768B2 JP 2016512608 A JP2016512608 A JP 2016512608A JP 2016512608 A JP2016512608 A JP 2016512608A JP 6528768 B2 JP6528768 B2 JP 6528768B2
Authority
JP
Japan
Prior art keywords
data
unit
communication
switching
notification
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.)
Active
Application number
JP2016512608A
Other languages
English (en)
Other versions
JPWO2015155996A1 (ja
Inventor
由明 西川
由明 西川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2015155996A1 publication Critical patent/JPWO2015155996A1/ja
Application granted granted Critical
Publication of JP6528768B2 publication Critical patent/JP6528768B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、通信を制御する技術に関する。
インターネットの通信において一般的に用いられているパケット交換方式による通信では、経路上でパケットロスや経路変更が発生する。そのため、パケット交換方式による通信では、送信したデータを、送信した順番で受信側の端末に届けるために、再送制御や順序制御が必要である。
再送制御では、例えば、送信側が受信側にデータが送達されたことを示す送達確認応答(ACK;Acknowledgement)を一定期間受信しない場合、そのデータの再送が開始される。あるいは、再送制御では、例えば、送信側が受信側にデータが送達されていないことを示す非送達確認応答(NACK;Negative Acknowledgement)を受信した場合、そのデータの再送が開始される。あるいは、再送制御では、例えば、受信側において順序が入れ替わって受信されたデータ数が一定以上貯まった場合、順序が入れ替わったデータの再送が開始される。
例えばTCP(Transmission Control Protocol)では、送信側がセグメント送信後に一定期間ACKを受信しない場合にそのセグメントの再送が行われる。セグメントは、TCPにおける通信単位である。さらに、TCPでは、順序が入れ替わって受信されたセグメントの個数が閾値以上であることが重複ACKにより判明した場合にも、そのセグメントが生成されたデータの再送が行われる。その閾値の具体的な個数はOS(Operating System)や設定により異なる。
順序制御では、受信側で送信順序と異なる順番でデータが受信された場合、受信されたデータが送信順に整列される。
例えば、TCPでは、送信されたセグメントが受信側に到着したときに、そのセグメントより先に送信されたセグメントが受信側に到着していない場合、到着していない先に送信されたセグメントの受信側への到着が待機される。そして、セグメントは、送信順に並べ替えられてから、上位のプロトコルやアプリケーションに渡される。
通信路においてデータの損失(すなわち、ロス)が発生した場合、再送制御と再送待ちの順序制御とが行われる。再送制御と再送待ちの順序制御とによって、通信に大きな遅延が発生する。パケット交換方式による通信には、そのような遅延が発生するという問題がある。この順序制御を回避するデータ通信方法の一例が、特許文献1に記載されている。
特許文献1には、複数のコネクション毎に異なるデータを順番に送信することによって、順序制御を回避する巡回送信方式が記載されている。上述のように、特許文献1に記載されている巡回送信方式では、順序制御を回避することによって、低遅延な通信を実現する。この方式では、送信側の装置は、確立しておいた複数のコネクション毎に異なるデータを順番に送信する。受信側の装置は、実行中のアプリケーションプログラムにおいて、到着したデータを随時利用できる。特許文献1に記載の送信側の装置は、いずれかのコネクションを介して送信中である各セグメントに、送信の順番に従って付与された番号のうち、最大の番号と最小の番号との差を特定する。特定された差が所定値以上である場合、送信側の装置は、最も早く送信されたセグメントを、他のコネクションを介して再送する。従って、セグメントの送信中に偶発的なロスが発生したとしても、再送待ちの順序制御を回避することができる。
特許文献2には、現用通信路と予備通信路とによって接続されている中継ノード及び着ノードが記載されている。現用通信路の通信リンクにおいて障害が発生した場合、中継ノードは、使用する通信路を予備通信路に切り替える。そして、中継ノードは、障害の発生から通信路の切替が完了するまでの間に送信されたデータを再送する。
特開2010−056990号公報 特開平11−308233号公報
例えば、モバイル網におけるハンドオーバなどの通信路の切替えによって、断続的に送信されるデータの送信間隔よりも十分長い期間にわたって、各通信路に送信されたデータが全てロスする状況が生じることがある。その場合、特許文献1に記載されているような、巡回送信方式に従ったデータの送信では、その期間において確立されている全てのコネクションにおいて再送制御が行われる。従って、上述の場合、特許文献1に記載されているような、巡回送信方式に従ったデータの通信では、順序制御を回避できない。従って、特許文献1の技術では、断続的に送信されるデータの送信間隔より十分長い期間、通信路の切り替えによって送信されたデータが全てロスする場合、通信の遅延を短縮することはできない。
特許文献2に記載されている中継ノードは、2つの通信路のうち現用通信路に障害が発生した場合、使用する通信路を、他方の通信路である予備通信路に切り替える。従って、断続的に送信されるデータの送信間隔より十分長い期間内に送信されたデータが全てロスする状況が生じた場合、現用通信路を介する通信リンクだけでなく、予備通信路を介する通信リンクにおいても障害が発生する。従って、その場合、全ての通信において障害が発生するので、全ての通信路を介する通信リンクにおいて再送制御が行われる。このように、特許文献2の技術では、断続的に送信されるデータの送信間隔より十分長い期間、通信路の切り替えによって送信されたデータが全てロスする場合、通信の遅延を短縮することはできない。
本発明の目的の一つは、断続的に送信されるデータの送信間隔より十分長い期間、通信路の切り替えによって送信されたデータが全てロスする場合でも、通信の遅延を短縮することができる通信制御装置等を提供することにある。
本発明の一態様に係る通信制御装置は、送信先装置に対する複数のコネクションを維持する管理手段と、前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更手段と、を備える。
本発明の一態様に係る通信制御方法は、送信先装置に対する複数のコネクションを維持し、前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する。
本発明の一態様に係る通信制御プログラムは、コンピュータを、送信先装置に対する複数のコネクションを維持する管理手段と、前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更手段と、して動作させる
断続的に送信されるデータの送信間隔より十分長い期間、通信路の切り替えによって送信されたデータが全てロスする場合でも、通信の遅延を短縮することができるという効果がある。
図1は、本発明の第1、第2の実施形態の通信システム10の構成の例を表す図である。 図2は、第1、第2の実施形態の第2の通信装置2の、一時断の発生を検出する動作の例を表すフローチャートである。 図3は、第1、第2の実施形態の通信制御装置3の、一時断通知を受信した場合の動作の例を表すフローチャートである。 図4は、本発明の第3の実施形態の通信システム10Bの構成の例を表すブロック図である。 図5は、第3の実施形態の第2の通信装置2Bの動作の例を表すブロック図である。 図6は、第3の実施形態の通信制御装置3Bの動作の例を表すフローチャートである。 図7は、第1の実施形態の変形例に係る通信システム10Aの構成の例を表すブロック図である。 図8は、本発明の第4の本実施形態の通信制御装置3Cの構成の例を表す図である。 図9は、本発明に係る通信制御装置及び通信装置を実現することができる、コンピュータ1000の構成の一例を表す図である。
次に、本発明の実施の形態について図面を参照して詳細に説明する。
<第1の実施形態>
図1は、本実施形態の通信システム10の構成の例を表す図である。図1を参照すると、通信システム10は、第1の通信装置1と第2の通信装置2とを含む。第1の通信装置1及び第2の通信装置2は、通信可能に接続されている。第1の通信装置1及び第2の通信装置2を接続する通信路は、例えば不定期に切り替えられる。例えば、第1の通信装置1及び第2の通信装置2が、基地局を介した無線通信によって接続されている。そして、第1の通信装置1又は第2の通信装置2の移動によってハンドオーバが行われた場合に、第1の通信装置1及び第2の通信装置2を接続する通信路の切り替えが行われる。第1の通信装置1及び第2の通信装置2は、仮想的な専用通信路であるコネクションが確立された状態で行われる通信である、コネクション型通信を行う。第1の通信装置1及び第2の通信装置2の間で行われるコネクション型通信の一例として、TCPによる通信がある。第1の通信装置1及び第2の通信装置2の間で行われる通信は、TCPによる通信でなくてもよい。本実施形態及び本発明の他の実施形態において、第1の通信装置1は、送信装置とも表記される。さらに、第2の通信装置2は、送信先装置とも表記される。
第1の通信装置1は、データ送信部101と、通信制御装置3とを含む。通信制御装置3は、管理部102と、変更部103と、通知受信部104と、切替検知部105とを含む。管理部102と、変更部103と、通知受信部104と、切替検知部105とは、第1の通信装置1の構成要素であってもよい。そして、管理部102と、変更部103と、通知受信部104と、切替検知部105とは、通信制御装置3として動作してもよい。
第2の通信装置2は、データ受信部201と、判定部202と、通知送信部203とを含む。
データ送信部101は、あらかじめ決められたタイミングでデータを送信する。データ送信部101は、例えば、あらかじめ決められた一定の間隔で、データを送信してもよい。
管理部102は、第1の通信装置1において確立されている複数のコネクションを管理する。管理部102は、データ送信に使用しているコネクションを含めて、複数のコネクションを管理する。コネクションの管理は、例えば、そのコネクションが切断されないように、確立状態を維持する処理を行うことである。
データ受信部201は、第1の通信装置1のデータ送信部101が送信するデータを受信する。
判定部202は、データ受信部201がデータを受信した時刻の間隔が、所定の閾値を超えた場合に、通信路が一時的に切断された状態である、「通信路一時断」が発生したと判定する。本実施形態及び他の実施形態の説明において、通信路一時断は、「一時断」とも表記される。
通知送信部203は、判定部202が、通信路一時断が発生したと判定した場合、通信路一時断が発生したと判定されたことを表す通知である、「通信路一時断通知」を、第1の通信装置1に送信する。本実施形態及び他の実施形態の説明において、通信路一時断通知を、「一時断通知」とも表記する。
通知受信部104は第2の通信装置2の通知送信部203から、通信路一時断通知を受信する。
切替検知部105は、通信路の切り替えを監視する。切替検知部105は、例えば常時、通信路の切り替えを監視してもよい。そして、切替検知部105は、通信路の切り替えの完了を検知する。
変更部103は、通知受信部104が一時断通知を受信し、切替検知部105が通信路の切り替えの完了を検知した場合、管理部102が管理する複数のコネクションから、データの送信に使用されていないコネクションを選択する。本実施形態の説明において、選択されたコネクションを、選択コネクションとも表記する。変更部103は、選択したコネクションを、データの送信に使用するコネクションに指定する。変更部103は、例えば、選択したコネクションの識別子をデータ送信部101に送信することによって、選択したコネクションを、データの送信に使用するコネクションに指定すればよい。その場合、データ送信部101は、例えば、コネクションの識別子を受信した場合、データの送信に使用するコネクションを、受信した識別子によって特定されるコネクションに変更するように設計されていればよい。以下の説明において、データ送信部101が、データの送信に使用するコネクションを、送信コネクションとも表記する。
次に、本実施形態の第1の通信装置1及び第2の通信装置2の動作について、図面を参照して詳細に説明する。
図2は、本実施形態の第2の通信装置2の、一時断の発生を検出する動作の例を表すフローチャートである。図2に示す動作の開始時において、第1の通信装置1のデータ送信部101が、データを送信する。データ送信部101がデータを送信する方法は、例えば、TCPに基づく送信方法であればよい。データ送信部101は、例えば、あらかじめ定められた一定の時間間隔で、データを送信する。
データがデータ受信部201に送信された場合(ステップS101においてYes)、まず、データ受信部201は、データ送信部101が送信したデータを受信する(ステップS102)。データ受信部201がデータを受信する方法は、データ送信部101が送信するデータを受信可能な方法であればよい。例えば、データ送信部101がTCPに基づいてデータを送信する場合、データ受信部201は、同様にTCPに基づいて、送信されたデータを受信すればよい。データ受信部201は、データを受信した時刻を、判定部202に送信してもよい。データ受信部201は、データを受信した場合、例えば、データを受信したことを表す通知を判定部202に送信してもよい。その場合、判定部202は、データを受信したことを表す通知を受信した時刻を、データ受信部201がデータを受信した時刻と見なせばよい。データが送信されない場合(ステップS101においてNo)、通信制御装置3はステップS103の動作を行う。
判定部202は、データ受信部201がデータを受信した時刻の間隔である、データの受信間隔が、閾値を超えているか否かを判定する(ステップS103)。判定部202は、データ受信部201が最後にデータを受信した時刻を記憶していればよい。そして、判定部202は、データ受信部201が最後にデータを受信した時刻から経過した時間を特定すればよい。データ受信部201が最後にデータを受信した時刻から経過した時間が閾値を越えている場合、判定部202は、データの受信間隔が閾値を越えていると判定すればよい。上述のように、データの受信間隔が閾値を越えていると判定した場合、判定部202は、一時断が発生したと判定する。データ受信部201が最後にデータを受信した時刻から経過した時間が閾値を越えていない場合、判定部202は、データの受信間隔が閾値を越えていないと判定すればよい。データの受信間隔が閾値を越えていないと判定した場合、判定部202は、一時断が発生していないと判定する。判定部202は、記憶している時刻と、データ受信部201が新たにデータを受信した時刻とに基づき、データの受信間隔が所定の閾値を超えているか否かを判定してもよい。上述の閾値は、あらかじめ与えられていてもよい。あるいは、例えば、判定部202が、所定期間内において、データ受信部201がデータを受信した間隔に基づき、上述の閾値を決定してもよい。
データの受信間隔が所定の閾値を超えていない場合(ステップS103においてNo)、第2の通信装置2は、次に、ステップS101の動作を行う。データ受信部201は、第1の通信装置1から送信される次のデータを待つ。
データの受信間隔が所定の閾値を超えている場合(ステップS103においてYes)、通知送信部203は、一時断通知を、通知受信部104に送信する(ステップS104)。そして、第2の通信装置2は、図2に示す動作を終了する。ステップS104の動作の後、第2の通信装置2の動作は、ステップS102に戻ってもよい。
次に、通信制御装置3の、一時断通知を受信した場合の動作について説明する。
図3は、本実施形態の通信制御装置3の、一時断通知を受信した場合の動作の例を表すフローチャートである。第2の通信装置2の通知送信部203が一時断通知を送信した場合に、通信制御装置3は、図3に示す動作を行う。また、通信制御装置3の切替検知部105は、第1の通信装置1と第2の通信装置2との間の通信において使用される通信路を監視している。そして、第1の通信装置1と第2の通信装置2との間の通信において使用される通信路の切り替えが発生した場合、切替検知部105は、その切り替えの完了を検知する。
通知送信部203が一時断通知を送信した場合、通知受信部104は、一時断通知を受信する(ステップS111)。通知受信部104は、受信した一時断通知を、変更部103に送信すればよい。
一時断通知を受信した変更部103は、一時断通知に基づく時刻を特定し、特定した時刻を基準時刻にする。一時断通知に基づく時刻は、例えば、変更部103が一時断通知を受信した時刻であってもよい。一時断通知に基づく時刻は、例えば、通知受信部104が一時断通知を受信した時刻であってもよい。一時断通知に基づく時刻は、その一時断通知が送信された時刻であってもよい。その場合、通知送信部203は、一時断通知に加えて、その一時断通知の送信時刻を通知受信部104に送信すればよい。一時断通知に基づく時刻は、判定部202が一時断が生じたことを判定した時刻であってもよい。その場合、判定部202は一時断が生じたことを判定した時刻を表すデータ値を通知送信部203に送信すればよい。そして、通知送信部203は、一時断通知に加えて、一時断が生じたことが判定された時刻を表すデータ値を、通知受信部104に送信すればよい。
さらに、変更部103は、基準時刻に基づき、検出期間を設定する。そして、変更部103は、検出期間内に、通信路の切り替えが検出されたか否かを判定する(ステップS112)。
検出期間は、例えば、基準時刻に基づいて定まる期間である。検出期間の長さは、あらかじめ定められた長さの期間であっていてもよい。その場合、変更部103は、例えば、基準時刻、又は、基準時刻よりも、あらかじめ定められた時間前の時刻を、検出期間の開始時刻として設定すればよい。そして、変更部103は、例えば、基準時刻、又は、基準時刻よりも、あらかじめ定められた時間後の時刻を、検出期間の終了時刻として設定すればよい。検出期間の長さは、定まっていなくてもよい。その場合、変更部103は、例えば、基準時刻、又は、基準時刻よりも、あらかじめ定められた時間前の時刻を、検出期間の開始時刻として設定すればよい。そして、変更部103は、時刻として設定可能な最大値を、検出期間の終了時刻にしてもよい。変更部103は、検出期間の終了時刻を定めなくてもよい。基準時刻は一時断通知に基づく時刻であるので、検出期間は一時断通知に基づいて定まる期間であると見なすことができる。
例えば、第1の通信装置1が無線によって第2の通信装置2と通信を行っている場合、通信路の切り替えは、例えば、無線による通信を中継する無線基地局が切り替わることによっても生じる。一般に、無線によって通信する装置は、通信を中継する無線基地局を特定する情報を有する。切替検知部105は、例えば、第1の通信装置1が行う無線による通信を中継する無線基地局の変更を検知することによって、通信路の切り替えを検知すればよい。切替検知部105は、第1の通信装置1が接続されている通信回線の種類に応じた方法によって、通信路の切り替えを検知すればよい。
検出期間内に通信路の切り替えが検出されなかった場合(ステップS112においてNo)、通信制御装置3は、次に、ステップS111の動作を行う。すなわち、通知受信部104は、次に送信される一時断通知を待つ。
一時断通知の受信に応じた検出期間に終了時刻が定められており、その検出期間内に通信路の切り替えが検知されなかった場合、通信制御装置3は、その一時断通知に基づく処理を行わない。すなわち、一時断通知の受信に応じた検出期間内に通信路の切り替えが検知されなかった場合、通信制御装置3は、その一時断通知を無視する。
検出期間内に通信路の切り替えが検出された場合(ステップS112においてYes)、変更部103は、データ送信部101が第2の通信装置2へのデータの送信に使用するコネクションである、送信コネクションを変更する(ステップS113)。そして、通信制御装置3は、図3に示す動作を終了する。ステップS113の後、通信制御装置3の動作は、ステップS111に戻ってもよい。
上述のように、検出期間の終了時刻が定められていない場合、変更部103は、切替検知部105による通信路の切り替えの検知を待つ。その場合、変更部103は、一時断通知の受信後であればいつでも、通信路の切り替えが検出された場合に、通信路の切り替えを行う。
本実施形態には、断続的に送信されるデータの送信間隔より十分長い期間、通信路の切り替えによってデータが全てロスする場合でも、通信の遅延を短縮することができるという効果がある。
その理由は、通信路一時断の発生が判定されたことが通知された場合、変更部103が、切替検知部105によって通信路の切り替えの完了が検知された後、送信コネクションを変更するからである。
通信路の切り替えが行われている場合、通信路の切り替えが完了する前にデータが送信されたコネクションでは、送信されたデータがロスするので、順序制御が実施される。通信路の切り替えが完了する前に送信コネクションが切り替えられた場合、切り替え後の送信コネクションを介してデータが送信され、送信されたデータは全てロスする。そのため、切り替え後の送信コネクションにおいても順序制御が実施される。通信路の切り替えが完了する前に、複数のコネクションのそれぞれが、順次送信コネクションに切り替えられた場合、それらの複数のコネクションの全てにおいて、順序制御が実施される。従って、通信路の切り替えが完了しても、複数のコネクションの全てにおいて順序制御が実施されているので、通信にさらに遅延が生じる。
一方、本実施形態では、通信路の切り替えの完了が検知された後、送信コネクションが変更されるので、通信路の切り替えが行われた時送信コネクションとして設定されていたコネクション以外で、順序制御は実施されない。従って、通信路の切り替えの完了が検知された後に、変更された送信コネクションでは順序制御は実施されない。そのため、順序制御が実施されるために生じる通信の遅延は生じない。従って、本実施形態では、通信の遅延を短縮することができる。
<第2の実施形態>
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
図1は、本実施形態の通信システム10の構成を表す図である。本実施形態の通信システム10の構成は、第1の実施形態の通信システム10の構成と同じである。以下では、本実施形態と第1の実施形態との相違点を中心に説明を行う。
本実施形態では、データ送信部101は、送信されるデータに加えて、そのデータが送信された時刻である送信時刻を送信する。データ送信部101は、送信されるデータである送信データに、そのデータの送信時刻を表すデータである送信時刻データを付加すればよい。そして、データ送信部101は、送信時刻データが付加された送信データを、第2の通信装置2に送信すればよい。
第2の通信装置2のデータ受信部201は、受信した送信データに付加されている送信時刻データを、判定部202に送信する。
判定部202は、データ受信部201が最後に受信した送信データに付加されていた送信時刻データを記憶する。判定部202は、データ受信部201が新しく送信データを受信した場合、第1の実施形態の判定部202と同様に、データの受信間隔が閾値を超えているか否かを判断する。データの受信間隔が閾値を超えていない場合、判定部202は、新しく受信した送信データに加えて送信された送信時刻データを、最後に受信した送信データとして記憶する。データの受信間隔が閾値を超えている場合、判定部202は、記憶している、最後に受信した送信データに付加されていた送信時刻データを、通知送信部203に送信する。
通知送信部203は、データの受信間隔が閾値を超えている場合、一時断通知に加えて、判定部202が記憶している送信時刻データを送信する。その場合、通知送信部203は、一時断通知に送信時刻データを付加すればよい。そして、通知送信部203は、送信時刻データが付加された一時断通知を送信すればよい。
通知受信部104は、一時断通知に加えて、送信時刻データを、通知送信部203から受信する。通知受信部104は、上述のように送信時刻データが付加された、一時断通知を受信すればよい。
変更部103は、通知受信部104が受信した送信時刻データが表す時刻を、検出期間の開始時刻に設定する。
なお、送信時刻データは、送信時刻を表すデータ値であってもよい。送信時刻データは、例えば、送信されたデータのそれぞれに付与された、送信の順番を特定することができる、シーケンス番号あるいはID(Identifier)であってもよい。送信時刻データは、例えば、データ受信部201がデータを受信した時刻である、データ受信時刻であってもよい。
送信時刻データがシーケンス番号である場合、変更部103は、例えば、送信時刻が特定されているデータの送信時刻及びシーケンス番号と、送信間隔とを、あらかじめ保持していればよい。以下の説明において、変更部103が保持する、送信時刻が特定されているデータの送信時刻を、基準送信時刻と表記する。さらに、変更部103が保持する、送信時刻が特定されているデータのシーケンス番号を、基準シーケンス番号と表記する。基準シーケンス番号は、シーケンス番号の初期値であってもよい。その場合、基準送信時刻は、初期値であるシーケンス番号が付与されたデータが送信された時刻であればよい。変更部103は、例えば、シーケンス番号の初期値と、初期値であるシーケンス番号が付与されたデータの送信時刻と、送信間隔とを、あらかじめデータ送信部101から取得しておけばよい。変更部103は、通知受信部104が受信したシーケンス番号と、基準シーケンス番号との差によって、基準時刻以降にデータが送信された回数を特定すればよい。変更部103は、基準時刻以降にデータが更新された回数と、データが送信される送信間隔とに基づき、基準時刻から、通知受信部104が受信したシーケンス番号が付与されたデータが送信された時刻までに経過した時間を推定すればよい。このように、変更部103は、通知受信部104が送信時刻データとして受信したシーケンス番号と、基準送信時刻及び基準シーケンス番号と、送信間隔とに基づき、通知受信部104が受信したシーケンス番号が付与されたデータが送信された時刻を推定する。
通知送信部203が、送信時刻データとして、データ受信部201がデータを受信した時刻である受信時刻を表すデータ値を送信する場合、変更部103は、受信した送信時刻データが表す時刻よりも、遅延時間前の時刻を、送信時刻として推定すればよい。その遅延時間は、第1の通信装置1から第2の通信装置2へのデータの送信に要する時間の代表値であればよい。代表値は、例えば、実験的に導出された、平均値、中間値、あるいは他の統計値であればよい。
次に、本実施形態の第1の通信装置1及び第2の通信装置2の動作について、図面を参照して詳細に説明する。以下では、データ送信部101が、データ送信時刻を表す送信時刻データが付加されたデータを送信する場合の説明を行う。
図2は、本実施形態の第2の通信装置2の、一時断の発生を検出する動作の例を表すフローチャートである。
データ受信部201にデータが送信された場合(ステップS101においてYes)、データ受信部201は、送信時刻データが付加されたデータを受信する(ステップS102)。データ受信部201にデータが送信されない場合(ステップS101においてNo)、通信制御装置3は、次に、ステップS103の動作を行う。
ステップS103における判定部202の動作は、第1の実施形態の判定部202のステップS103における動作と同じである。前述のように、判定部202は、データ受信部201が最後にデータを受信した時刻を記憶していればよい。そして、ステップS103において、判定部202は、データ受信部201が最後にデータを受信した時刻から経過した時間と閾値とを比較することによって、データの受信間隔が閾値を越えているか否かを判定すればよい。判定部202は、記憶している時刻から、新たにデータ受信部201がデータを受信した時刻までに経過した時間と、閾値とを比較することによって、データの受信間隔が閾値を越えているか否かを判定してもよい。
データの受信間隔が所定の閾値を超えていない場合(ステップS103においてNo)、通信制御装置3は、次に、ステップS101の動作を行う。そしてデータ受信部201は、データの受信を継続する。
判定部202による判定の結果、データの受信間隔が所定の閾値を超えている場合(ステップS103においてYes)、通知送信部203は、一時断通知に加えて、送信時刻データを送信する(ステップS104)。
図3は、本実施形態の通信制御装置3の、一時断通知を受信した場合の動作の例を表すフローチャートである。
まず、通知受信部104は、例えば、一時断通知と、その一時断通知に付加された送信時刻データを受信する。(ステップS111)。
通知受信部104が、一時断通知と、その一時断通知に付加された送信時刻データを受信した場合、切替検知部105は、検出期間を決定する。切替検知部105は、まず、通知受信部104が受信した送信時刻データが表す時刻を特定する。切替検知部105は、特定した時刻を、検出期間の開始時刻に設定する。切替検知部105は、検出期間の終了時刻を、あらかじめ定められた決定方法に従って、決定する。切替検知部105は、例えば、第1の実施形態における検出期間の終了時刻の決定方法のいずれかによって、検出期間の終了時刻を決定すればよい。
切替検知部105が検出期間内に通信路の切り替えを検出した場合(ステップS112においてYes)、変更部103は、第1の実施形態の変更部103と同様に、送信コネクションを変更する(ステップS113)。切替検知部105が検出期間内に通信路の切り替えを検出した場合(ステップS112においてNo)、通信制御装置3は、次に、例えばステップS111の動作を行う。
本実施形態には、第1の実施形態と同じ効果がある。その理由は、第1の実施形態の効果が生じる理由と同じである。
本実施形態には、さらに通信の遅延を短縮することができるという第2の効果がある。
その理由は、最後に送信されたデータの送信時刻又はその送信時刻の推定時刻が開始時刻である検知期間において、通信路の切り替えが検出された場合に、変更部103が送信コネクションを変更するからである。従って、送信されたデータが全てロスする期間の変動が大きい場合においても、その期間を更に正確に特定することができる。従って、さらに確実に順序制御を回避することができるので、通信の遅延を短縮することができる。また、ロスしたデータを正確に把握することができるので、ロスしたデータだけを変更後の送信コネクションを介して送信することができる。そのため、さらに通信の遅延を短縮することができる。
<第3の実施形態>
次に、本発明の第3の実施形態について、図面を参照して詳細に説明する。
図4は、本実施形態の通信システム10Bの構成の例を表すブロック図である。
図4を参照すると、通信システム10Bは、第1の通信装置1Bと、第2の通信装置2Bとを含む。第1の通信装置1Bと、第2の通信装置2Bは、互いに通信することができる。
第1の通信装置1Bは、データ送信部101と、通信制御装置3Bとを含む。
通信制御装置3Bは、管理部102と、変更部103と、送達確認受信部106と、判定部107と、切替受信部108とを含む。
第2の通信装置2Bは、データ受信部201と、送達確認送信部204と、切替検知部205と、切替送信部206とを含む。
データ送信部101及びデータ受信部201は、それぞれ、第1の実施形態のデータ送信部101及びデータ受信部201と同様に動作する。
管理部102は、第1の実施形態の管理部102と同様に、第1の通信装置1Bと第2の通信装置2Bとの間に確立されている複数のコネクションを管理する。
送達確認送信部204は、データ受信部201がデータを受信すると、そのデータに関する送達確認を第1の通信装置1Bに送信する。送達確認は、例えば、あらかじめ定められたデータ値又は信号であればよい。
送達確認受信部106は、第2の通信装置2Bの送達確認送信部204から、送達確認を受信する。送達確認を受信した場合、送達確認受信部106は、例えば、送達確認を受信した時刻を、判定部107に送信する。
判定部107は、送達確認受信部106が送達確認を最後に受信した時刻を記憶している。判定部107は、送達確認受信部106から、新たに送達確認を受信した時刻を受信した場合、記憶している時刻と新たに受信した時刻とに基づき、送達確認受信部106が送達確認を受信する間隔を導出する。判定部107は、送達確認受信部106が送達確認を受信する間隔が、所定の閾値を超えているか否かを判定する。判定部107は、送達確認受信部106が送達確認を受信する間隔が所定の閾値を超えている場合、通信路一時断が発生したと判定する。そして、判定部107は、送達確認受信部106が送達確認を受信する間隔が所定の閾値を超えている場合、一時断通知を変更部103に送信する。
切替検知部205は、第1の実施形態の切替検知部105と同様に、第1の通信装置1Bと第2の通信装置2Bとの間においてデータの送信に使用される通信路の切り替えを監視する。そして、切替検知部205は、通信路の切り替えの完了を検知する。
切替送信部206は、切替検知部205が通信路の切り替えの完了を検知した場合、切替通知を第1の通信装置1Bに送信する。切替通知は、例えば、あらかじめ定められたデータ値又は信号であればよい。
切替受信部108は、第2の通信装置2Bから、切替通知を受信する。
変更部103は、判定部107から一時断通知を受信する。変更部103は、例えば、一時断通知を受信した時刻を基準時刻にする。変更部103は、判定部107が、通信路一時断が発生したと判定した時刻を、基準時刻にしてもよい。その場合、変更部103は、判定部107が、通信路一時断が発生したと判定した時刻を、判定部107から受信すればよい。そして、変更部103は、第1の実施形態の変更部103と同様に、基準時刻に基づき検出期間を設定する。変更部103は、設定した検出期間内に切替受信部108が切替通知を受信した場合、第1の実施形態の変更部103と同様に、送信コネクションを変更する。
次に、本実施形態の第2の通信装置2Bの動作について、図面を参照して詳細に説明する。
図5は、本実施形態の第2の通信装置2Bの動作の例を表すブロック図である。図5に示す動作の開始時において、第1の通信装置1Bのデータ送信部101が第2の通信装置2Bにデータを送信する。
データ受信部201はデータを受信する(ステップS201)。
データ受信部201がデータを受信するのに応じて、送達確認送信部204が第1の通信装置1Bに対して送達確認を送信する(ステップS202)。
前述のように、切替検知部205は、第1の通信装置1Bと第2の通信装置2Bとの間の通信路の切り替えを監視する。そして、切替検知部205は、通信路の切り替えの完了を検出する。切替検知部205によって通信路の切り替えが検出されない場合(ステップS203においてNo)、第2の通信装置2Bは、次に、例えばステップS201の動作を行う。そして、データ受信部201は、次のデータが送られるまで待機する。切替検知部205によって通信路の切り替えが検出された場合(ステップS203においてYes)、切替検知部205は、第1の通信装置1Bに切替通知を送信する(ステップS204)。
次に、本実施形態の通信制御装置3Bの動作について、図面を参照して詳細に説明する。
図6は、本実施形態の通信制御装置3Bの動作の例を表すフローチャートである。図6に示す動作の開始時において、データ送信部101が第2の通信装置2Bにデータを送信する。そして、データを受信した第2の通信装置2Bは、受信したデータの送達確認を、第1の通信装置1Bに返信する。
データの送達確認が送達確認受信部106に送信された場合(ステップS211においてYes)、送達確認受信部106は、第2の通信装置2Bから送達確認を受信する(ステップS212)。送達確認受信部106は、送達確認を受信した時刻を判定部107に送信する。データの送達確認が送達確認受信部106に送信されない場合(ステップS211においてNo)、通信制御装置3Bは、次に、ステップS213の動作を行う。
前述のように、判定部107は、送達確認受信部106が最後に送達確認を受信した時刻を記憶している。判定部107は、例えば、送達確認受信部106が最後に送達確認を受信した時刻から経過した時間を特定すればよい。そして、判定部107は、送達確認受信部106が最後に送達確認を受信した時刻から経過した時間と、所定の閾値とを比較すればよい。送達確認受信部106が最後に送達確認を受信した時刻から経過した時間がその閾値を越えている場合、判定部107は、送達確認の受信の間隔が閾値を超えていると判定すればよい。送達確認受信部106が最後に送達確認を受信した時刻から経過した時間がその閾値を越えていない場合、判定部107は、送達確認の受信の間隔が閾値を超えていないと判定すればよい。判定部107は、新しく送達確認受信部106から受信した送達確認を受信した場合、その送達確認を受信した時刻と、記憶している、送達確認を受信した時刻と差である、送達確認の受信の間隔を導出してもよい。判定部107は、導出された送達確認の受信の間隔が、所定の閾値を越えているか否かを判定してもよい。
送達確認の受信の間隔が、所定の閾値を超えていない場合(ステップS213においてNo)、通信制御装置3Bは、次に、ステップS211の動作を行う。送達確認受信部106は、次の送達確認が送信されるまで待機する。
送達確認の受信の間隔が、所定の閾値を超えている場合(ステップS213においてYes)、判定部107は、通信路一時断が発生したと判定する(ステップS214)。
通信路一時断が発生したと判定された場合、変更部103は、上述のように、検出期間を設定する。そして、変更部103は、検出期間内に通信路の切り替えが検知されたか否かを判定する(ステップS215)。変更部103は、例えば、検出期間内に切替受信部108が切替通知を受信した場合、検出期間内に通信路の切り替えが検知されたと判定すればよい。変更部103は、例えば、検出期間内に切替受信部108が切替通知を受信しなかった場合、検出期間内に通信路の切り替えが検知されなかったと判定すればよい。
検出期間内に通信路の切り替えが検知されなかった場合(ステップS215においてNo)、通信制御装置3Bは、次に、例えばステップS211の動作を行う。
検出期間内に通信路の切り替えが検知された場合(ステップS215においてYes)、変更部103は、第1の実施形態と同様に、送信コネクションを変更する(ステップS216)。
本実施形態には、データを受信する第2の通信装置2Bが、通信一時断の判定を行えない場合であっても、第1の実施形態と同じ効果がある。
その理由は、データ受信部201によるデータの受信に応じて、送達確認送信部204が送達確認を第1の通信装置1Bに送信するからである。そして、変更部103が、送達確認送信部204が送信する送達確認の受信の間隔に基づいて、通信一時断が発生したか否かを判定するからである。
本実施形態には、さらに、データを送信する第1の通信装置1Bが通信路の切り替えの完了を検知できない場合であっても、第1の実施形態と同じ効果がある。
その理由は、データを受信する第2の通信装置2Bが含む切替検知部205によって通信路の切り替えの完了が検知された場合、切替送信部206が切替通知を第1の通信装置1Bに送信するからである。そして、変更部103は、検出期間内に切替受信部108が切替通知を受信した場合、検出期間内に通信路の切り替えが行われたと判定するからである。
<変形例>
第1〜第3の実施形態において、切替検知部205は、図1及び図4において図示されない、切替検知装置に含まれていてもよい。第1及び第2の実施形態では、切替検知装置の切替検知部205は、第1の通信装置1に切替通知を送信すればよい。その場合、通信制御装置3は、さらに、第3の実施形態の通信制御装置3Bと同様に、切替受信部108を含んでいればよい。第3の実施形態では、切替検知装置の切替検知部205は、第1の通信装置1Bに切替通知を送信すればよい。
第1及び第2の実施形態において、通信制御装置3は第1の通信装置1に含まれている。しかし、通信制御装置3は、第2の通信装置2に含まれていてもよい。あるいは、通信制御装置3の構成要素の一部が第1の通信装置1に含まれていてもよい。そして、第1の通信装置1に含まれる構成要素を除く、通信制御装置3の構成要素が、第2の通信装置2に含まれていてもよい。
第3の実施形態においても同様に、通信制御装置3Bは、第1の通信装置1Bに含まれている。しかし、通信制御装置3Bは、第2の通信装置2Bに含まれていてもよい。あるいは、通信制御装置3Bの構成要素の一部が第1の通信装置1Bに含まれていてもよい。そして、第1の通信装置1Bに含まれる構成要素を除く、通信制御装置3Bの構成要素が、第2の通信装置2Bに含まれていてもよい。
第1の実施形態において、例えば、第1の通信装置1ではなく、第2の通信装置2が、管理部102と変更部103とを含んでいてもよい。その場合、通知送信部203と通知受信部104は必要ない。そして、第1の通信装置1は、後述の切替送信部109を含んでいればよい。そして、第2の通信装置2は、後述の切替受信部207を含んでいればよい。切替検知部105が通信路の切替の完了を検知した場合、切替送信部109は、通信路の切替が完了したことを表す切替通知を送信する。切替受信部207は、切替送信部109が送信した切替通知を受信する。第2の通信装置2に含まれる変更部103は、第1の実施形態の変更部103と同様に設定された検出期間内に、切替送信部109が切替通知を受信した場合、新しく送信コネクションとして使用するコネクションを決定する。第2の通信装置2は、さらに、決定された送信コネクションを送信に使用する指示を第1の通信装置1に送信する変更指示部208を含んでいればよい。データ送信部101は、変更指示部208から受信した指示に従って送信コネクションを変更すればよい。
図7は、第1の実施形態の変形例に係る通信システム10Aの構成の例を表すブロック図である。図7に示す例では、第1の通信装置1Aではなく、第2の通信装置2Aが、通信制御装置3Aを含む。
本変形例では、第1の通信装置1Aは、データ送信部101と、切替検知部105と、切替送信部109とを含む。第2の通信装置2Aは、データ受信部201と、通信制御装置3Aとを含む。通信制御装置3Aは、管理部102と、変更部103と、判定部202と、切替受信部207と、変更指示部208とを含む。
また、第1及び第2の実施形態では、通知送信部203は、一時断通知を、1回ではなく、所定の送信期間内に複数回送信してもよい。送信期間は、あらかじめ決められている固定的な期間であってもよい。送信期間は、判定部202が通信路一時断が発生したと判定した後、データ受信部201がデータを受信するまでの期間であってもよい。送信期間は、あらかじめ計測された、第1の通信装置1と第2の通信装置2との間の往復の遅延時間や、過去に計測されたその往復の遅延時間から導出された統計量であってもよい。統計量は、例えば、平均値、中間値、あるいは中央値などである。通知送信部203が、一時断通知を複数回送信する場合、通知送信部203は、一時断通知に、その一時断通知が基づく通信路一時断の発生の判定を特定する識別子を含めてもよい。
第3の実施形態において、例えば、通信に使用される通信プロトコルのうち、下層の通信プロトコルにおいて送達確認がなされている場合、送達確認受信部106は、その下層の通信プロトコルに基づき送達確認を検出してもよい。あるいは、第1の通信装置1Bは送達確認受信部106を含んでいなくてもよい。そして、第2の通信装置2は、送達確認送信部204を含んでいなくてもよい。そして、第1の通信装置1は、送達確認が行われる下層の通信プロトコルにおける送達確認を検出する送達確認部を含んでいてもよい。TCPは、上述のような、送達確認がなされる通信プロトコルの例である。
<第1の実装例>
次に、第1の実施形態に基づく実装例である、第1の実装例について説明する。
本実装例では、第1の通信装置1及び第2の通信装置2は、中央演算装置、メモリ、記憶装置、及びネットワーク接続機能を持つ通信端末である。
第1の通信装置1は、例えば、インターネットと通信可能に接続されているモバイル網に、基地局を介して接続されている、可搬な通信端末装置である。第1の通信装置1は、第1の通信装置1を保持するユーザの移動によって、移動する。第1の通信装置1が移動することによって、第1の通信装置1が接続している基地局が切り替えられる。切替検知部105は、モバイル網において第1の通信装置1が接続している基地局の切り替えを、通信路の切り替えとして検知する。
第2の通信装置2は、例えば、インターネットに配置されたサーバである。第2の通信装置2は、移動しない。第2の通信装置2は、通信網の切り替えを検知しない。
第1の通信装置1及び第2の通信装置2は、互いを通信可能に接続する2つのTCPコネクションを維持している。第1の通信装置1と第2の通信装置2との間において、データの転送はTCPコネクションを使用して直接行われる。本変形例の以下の説明において、それらの2つのTCPコネクションのうちの一つを、TCPコネクションAと表記する。さらに、それらの2つのTCPコネクションのうちの他の一つを、TCPコネクションBと表記する。
第1の通信装置1は、例えば100ミリ秒間隔で、TCPコネクションAを用いて、第2の通信装置2に対してデータを送信し続けている。第1の通信装置1は、データの送信に使用していないTCPコネクションBが確立されている状態を維持するために、コネクション管理処理を行う。第1の通信装置1は、コネクション管理処理として、例えば、300ミリ秒毎に、TCPコネクションを使用してキープアライブメッセージを送信する。キープアライブメッセージは、通信装置間においてデータを交換することを目的とするデータではなく、コネクションが確立された状態を維持することを目的とするデータである。
第2の通信装置2は、例えば、データの受信する間隔が5秒を越えた場合、通信路が一時的に断絶した状態である通信一時断が発生したと判定するように設定されている。例えば、第2の通信装置2がn番目のデータであるデータnを受信した後、5秒経過しても、(n+1)番目のデータであるデータ(n+1)が第2の通信装置2に到着しなかった場合、第2の通信装置2は、通信路一時断が発生したと判定する。第2の通信装置2は、通信路一時断が発生したと判定した場合、一時断通知として、例えば、“Ichijidan”というテキストデータを第1の通信装置1に送信する。一時断通知は、前述のテキストデータに限られない。一時断通知は、あらかじめ定められているデータであればよい。
第1の通信装置1は、例えば、一時断通知を受信した時刻と通信路の切り替えの完了が検知された時刻との差が1秒以内である場合、送信コネクションを変更するように設定されている。例えば、第1の通信装置1は、通信路の切り替えの完了を検知し、その検知の100ミリ秒後に一時断通知を受信した場合、送信コネクションとして、TCPコネクションAの代わりにTCPコネクションBを使用するよう決定する。
<第2の実装例>
次に、第3の実施形態に基づく実装例である、第2の実装例について説明する。
本実装例では、第1の実装例と同様に、第1の通信装置1B及び第2の通信装置2Bは、中央演算装置、メモリ、記憶装置、及びネットワーク接続機能を持つ通信端末である。
本実装例では、第1の通信装置1Bは、インターネット上に配置されたサーバである。第1の通信装置1Bは、移動しない。そして、第1の通信装置1Bは、通信路の切り替えを検知することができない。
第2の通信装置2Bは、インターネットと通信可能に接続されているモバイル網に、基地局を介して接続されている可搬な通信端末装置である。第2の通信装置2Bの移動に応じて、第2の通信装置2Bが接続される、モバイル網の基地局は切り替わる。第2の通信装置2Bは、モバイル網の基地局の切り替えを、通信路の切り替えとして検知する。
第1の通信装置1B及び第2の通信装置2Bの間において、例えば2つのTCPコネクションが維持されている。第1の通信装置1Bと第2の通信装置2Bとの間におけるデータの転送は、TCPコネクションを介して、直接行われる。本実装例でも、それらの2つのTCPコネクションのうち、一方を、TCPコネクションAと表記する。また、それらの2つのTCPコネクションのうち、他方を、TCPコネクションBと表記する。
第1の通信装置1Bは、あらかじめ決められた間隔で、TCPコネクションAを用いて、第2の通信装置2Bにデータを送信し続けている。本実装例では、そのあらかじめ決められた間隔は100ミリ秒である。第2の通信装置2Bは、第1の通信装置1Bから、例えば1番目のデータであるデータ1を受信した場合、データ1が送達されたことを表す送達確認1を、第1の通信装置1Bに返信する。第1の通信装置1Bは、返信された送達確認1を受信する。第1の通信装置1B及び第2の通信装置2Bの間において、2番目のデータを表すデータ2以降のデータに対しても同様に、データの送信と送達確認の返信が行われる。
第1の通信装置1Bは、データの送信に使用されていないTCPコネクションBが確立されている状態を維持するために、コネクション管理処理を行う。第1の通信装置1Bは、コネクション管理処理として、例えば、300ミリ秒毎にTCPコネクションBを使用してキープアライブメッセージを第2の通信装置2Bに送信する。
第1の通信装置1Bは、送信されているn番目のデータであるデータnの送達確認nを受信してから所定時間内に、同様に送信されている(n+1)番目のデータであるデータ(n+1)の送達確認(n+1)が到着しない場合、通信路一時断が発生したと判定する。その所定時間は、例えば5秒である。その場合、第1の通信装置1Bは、データnの送達確認nを受信してから5秒が経過しても、データ(n+1)の送達確認(n+1)が到着しない場合、通信路一時断が発生したと判定する。
第2の通信装置2Bは、通信路の切り替えの完了を検知した場合、切替通知を、第1の通信装置1Bに送信する。切替通知は、例えば、“Tsushinrokirikae”等のテキストデータであってもよい。切替通知は、あらかじめ定められているデータであればよい。
第1の通信装置1Bは、例えば、通信路一時断が発生したと判定した時刻と切替通知を受信した時刻との差が所定時間以内である場合、送信コネクションを変更する。その所定時間は、例えば1秒である。その場合、例えば、第1の通信装置1Bが通信路一時断が発生したと判定してから100ミリ秒後に切替通知を受信した場合、第1の通信装置1Bは、送信コネクションを変更する。第1の通信装置1Bは、2つのTCPコネクションのうち、送信コネクションではないTCPコネクションBを、新しい送信コネクションに決定する。すなわち第1の通信装置1Bは、データを送信するために、TCPコネクションBを使用するよう決定する。
<第4の実施形態>
次に、本発明の第4の実施形態について、図面を参照して詳細に説明する。
図8は、本実施形態の通信制御装置3Cの構成の例を表す図である。
図8を参照すると、本実施形態の通信制御装置3Cは、管理部102と、変更部103と、を備える。管理部102は、送信先装置に対する複数のコネクションを維持する。変更部103は、判定部202から、一時断通知を受信するのに加えて、切替検知部105から、前記一時断通知に基づく所定期間内に切替通知を受信した場合、選択コネクション以外の複数のコネクションから新たな選択コネクションを選択する。そして、変更部103は、選択した選択コネクションの識別子をデータ送信部101に送信する。判定部202は、複数のコネクションから選択された選択コネクションを介してデータ送信部101が行う送信先装置に対する通信が中断された状態である一時断を検出し、その一時断を検出するのに応じて一時断通知を送信する。切替検知部105は、データ送信部101と送信先装置との間の通信路の切り替えを検出し、その切り替えの完了が検出された場合に切替通知を送信する。
本実施形態には、第1の実施形態と同じ効果がある。その理由は、第1の実施形態の効果が生じる理由と同じである。
本発明の実施形態に係る通信装置は、それぞれ、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。本発明の実施形態に係る通信装置は、第1の通信装置1、第1の通信装置1A、第1の通信装置1B、第2の通信装置2、第2の通信装置2A、第2の通信装置2B、通信制御装置3、通信制御装置3A、通信制御装置3B、及び通信制御装置3Cである。
図9は、本発明の実施形態に係る通信装置を実現することができる、コンピュータ1000の構成の一例を表す図である。図9を参照すると、コンピュータ1000は、プロセッサ1001と、メモリ1002と、記憶装置1003と、I/O(Input/Output)インタフェース1004とを含む。また、コンピュータ1000は、記録媒体1005にアクセスすることができる。メモリ1002と記憶装置1003は、例えば、RAM(Random Access Memory)、ハードディスクなどの記憶装置である。記録媒体1005は、例えば、RAM、ハードディスクなどの記憶装置、ROM(Read Only Memory)、可搬記録媒体である。記憶装置1003が記録媒体1005であってもよい。プロセッサ1001は、メモリ1002と、記憶装置1003に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ1001は、I/Oインタフェース1004を介して、例えば、他の装置にアクセスすることができる。プロセッサ1001は、記録媒体1005にアクセスすることができる。記録媒体1005には、コンピュータ1000を、本発明の実施形態に係る通信装置のいずれかとして動作させるプログラムが格納されている。
プロセッサ1001は、記録媒体1005に格納されている、コンピュータ1000を、本発明の実施形態に係る通信装置のいずれかとして動作させるプログラムを、メモリ1002にロードする。そして、プロセッサ1001が、メモリ1002にロードされたプログラムを実行することにより、コンピュータ1000は、本発明の実施形態に係る通信装置のいずれかとして動作する。
下記の第1のグループに含まれる部は、例えば、プログラムを記憶する記録媒体1005からメモリ1002に読み込まれた、各部の機能を実現することができる専用のプログラムと、そのプログラムを実行するプロセッサ1001により実現することができる。下記の第2のグループに含まれる部は、例えば、プログラムを記憶する記録媒体1005からメモリ1002に読み込まれた、各部の機能を実現することができる専用のプログラムと、そのプログラムを実行するプロセッサ1001により実現することができる。第1のグループは、データ送信部101、管理部102、変更部103、通知受信部104、切替検知部105、送達確認受信部106、判定部107、切替受信部108、及び、切替送信部109である。第2のグループは、データ受信部201、判定部202、通知送信部203、送達確認送信部204、切替検知部205、切替送信部206、切替受信部207、及び、変更指示部208である。
あるいは、第1のグループに含まれる部及び第2のグループに含まれる部の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
また、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
送信先装置に対する複数のコネクションを維持する管理手段と、
前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、
前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更手段と、
を備える通信制御装置。
(付記2)
前記データ送信手段は、前記データに当該データの送信時刻を関連付けて送信し、
前記判定手段は、前記一時断の発生前に最後に送信された前記データに関連付けられている送信時刻を、前記一時断通知に関連付けて送信し、
前記変更手段は、前記一時断通知に関連付けられている送信時刻を、前記所定期間の開始時刻に設定する
付記1に記載の通信制御装置。
(付記3)
前記判定手段は、前記送信先装置が前記データ送信手段から最後にデータを受信してから経過した時間に基づき、前記一時断を検出する
付記1又は2に記載の通信制御装置。
(付記4)
前記データ送信手段は、所定間隔で前記データを送信し、
前記判定手段は、前記データを受信する間隔の前記所定間隔に対するずれの大きさが所定閾値を超える場合、前記一時断の発生を判定する
付記1乃至3のいずれかに記載の通信制御装置。
(付記5)
前記所定期間の開始時刻は、前記一時断通知に基づく時刻である確定時刻より第1の所定時間前の時刻、又は前記一時断の発生前における前記データの最後の送信時刻であり、前記所定期間の終了時刻は、前記一時断通知に基づく時刻である確定時刻より第2の所定時間後の時刻、又は前記切替通知の受信時刻である
付記1乃至4のいずれかに記載の通信制御装置。
(付記6)
前記データ送信手段を含む送信装置と、
前記データを受信するのに応じて、前記データの受信を前記判定手段に通知するデータ受信手段を含む前記送信先装置と、
付記1乃至5のいずれかに記載の通信制御装置と、
を含む通信システム。
(付記7)
前記送信装置は、前記切替検知手段と、前記通信制御装置とを更に含み、
前記送信先装置は、前記判定手段を更に含む、
付記6に記載の通信システム。
(付記8)
前記送信先装置は、前記データ受信手段が前記データを受信したことを表す送達確認を送信する確認送信手段と、前記切替検知手段とを更に含み、
前記送信装置は、前記送達確認を受信するのに応じて、当該送達確認の受信時刻を、前記データの受信時刻として、前記判定手段に通知する確認受信手段と、前記判定手段とを更に含む、
付記6に記載の通信システム。
(付記9)
送信先装置に対する複数のコネクションを維持し、
前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、
前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する
通信制御方法。
(付記10)
前記データに当該データの送信時刻を関連付けて送信し、
前記一時断の発生前に最後に送信された前記データに関連付けられている送信時刻を、前記一時断通知に関連付けて送信し、
前記一時断通知に関連付けられている送信時刻を、前記所定期間の開始時刻に設定する
付記9に記載の通信制御方法。
(付記11)
前記送信先装置が前記データ送信手段から最後にデータを受信してから経過した時間に基づき、前記一時断を検出する
付記9又は10に記載の通信制御方法。
(付記12)
所定間隔で前記データを送信し、
前記データを受信する間隔の前記所定間隔に対するずれの大きさが所定閾値を超える場合、前記一時断の発生を判定する
付記9乃至11のいずれかに記載の通信制御方法。
(付記13)
前記所定期間の開始時刻は、前記一時断通知に基づく時刻である確定時刻より第1の所定時間前の時刻、又は前記一時断の発生前における前記データの最後の送信時刻であり、前記所定期間の終了時刻は、前記一時断通知に基づく時刻である確定時刻より第2の所定時間後の時刻、又は前記切替通知の受信時刻である
付記9乃至12のいずれかに記載の通信制御方法。
(付記14)
コンピュータを、
送信先装置に対する複数のコネクションを維持する管理手段と、
前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、
前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更手段と、
して動作させる通信制御プログラム。
(付記15)
コンピュータを、
前記データに当該データの送信時刻を関連付けて送信する前記データ送信手段と、
前記一時断の発生前に最後に送信された前記データに関連付けられている送信時刻を、前記一時断通知に関連付けて送信する前記判定手段と、
前記一時断通知に関連付けられている送信時刻を、前記所定期間の開始時刻に設定する前記変更手段と、
して動作させる付記14に記載の通信制御プログラム。
(付記16)
コンピュータを、
前記送信先装置が前記データ送信手段から最後にデータを受信してから経過した時間に基づき、前記一時断を検出する前記判定手段と、
して動作させる付記14又は15に記載の通信制御プログラム。
(付記17)
コンピュータを、
所定間隔で前記データを送信する前記データ送信手段と、
前記データを受信する間隔の前記所定間隔に対するずれの大きさが所定閾値を超える場合、前記一時断の発生を判定する前記判定手段と、
して動作させる付記14乃至16のいずれかに記載の通信制御プログラム。
(付記18)
前記所定期間の開始時刻は、前記一時断通知に基づく時刻である確定時刻より第1の所定時間前の時刻、又は前記一時断の発生前における前記データの最後の送信時刻であり、前記所定期間の終了時刻は、前記一時断通知に基づく時刻である確定時刻より第2の所定時間後の時刻、又は前記切替通知の受信時刻である
付記14乃至17のいずれかに記載の通信制御プログラム。
この出願は、2014年4月10日に出願された日本出願特願2014−0081114を基礎とする優先権を主張し、その開示の全てをここに取り込む。
本発明は、音声やインタラクティブなサービスなどの、通信遅延に厳しいシステムに適用できる。
1 第1の通信装置
1A 第1の通信装置
1B 第1の通信装置
2 第2の通信装置
2A 第2の通信装置
2B 第2の通信装置
3 通信制御装置
3A 通信制御装置
3B 通信制御装置
3C 通信制御装置
10 通信システム
10A 通信システム
10B 通信システム
101 データ送信部
102 管理部
103 変更部
104 通知受信部
105 切替検知部
106 送達確認受信部
107 判定部
108 切替受信部
109 切替送信部
201 データ受信部
202 判定部
203 通知送信部
204 送達確認送信部
205 切替検知部
206 切替送信部
207 切替受信部
208 変更指示部
1000 コンピュータ
1001 プロセッサ
1002 メモリ
1003 記憶装置
1004 I/Oインタフェース
1005 記録媒体

Claims (10)

  1. 送信先装置に対する複数のコネクションを維持する管理手段と、
    前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対してデータを送信する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、
    前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
    前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更手段と、
    を備える通信制御装置。
  2. 前記データ送信手段は、前記データに当該データの送信時刻を関連付けて送信し、
    前記判定手段は、前記一時断の発生前に最後に送信された前記データに関連付けられている送信時刻を、前記一時断通知に関連付けて送信する
    求項1に記載の通信制御装置。
  3. 前記判定手段は、前記送信先装置が前記データ送信手段から最後にデータを受信してから経過した時間に基づき、前記一時断を検出する
    請求項1又は2に記載の通信制御装置。
  4. 前記データ送信手段は、所定間隔で前記データを送信し、
    前記判定手段は、前記データを受信する間隔の前記所定間隔に対するずれの大きさが所定閾値を超える場合、前記一時断の発生を判定する
    請求項1乃至3のいずれか1項に記載の通信制御装置。
  5. 前記所定期間の開始時刻は、前記一時断通知に基づく時刻である基準時刻、当該基準時刻よりも第1の所定時間前の時刻、又は前記一時断の発生前における前記データの最後の送信時刻であり、前記所定期間の終了時刻は、前記基準時刻よりも第2の所定時間後の時刻、又は前記切替通知の受信時刻である
    請求項1乃至4のいずれか1項に記載の通信制御装置。
  6. 前記データ送信手段を含む送信装置と、
    前記データを受信するのに応じて、前記データの受信を前記判定手段に通知するデータ受信手段を含む前記送信先装置と、
    請求項1乃至5のいずれか1項に記載の通信制御装置と、
    を含む通信システム。
  7. 前記送信装置は、前記切替検知手段と、前記通信制御装置とを更に含み、
    前記送信先装置は、前記判定手段を更に含む、
    請求項6に記載の通信システム。
  8. 前記送信先装置は、前記データ受信手段が前記データを受信したことを表す送達確認を送信する確認送信手段と、前記切替検知手段とを更に含み、
    前記送信装置は、前記送達確認を受信するのに応じて、当該送達確認の受信時刻を、前記データの受信時刻として、前記判定手段に通知する確認受信手段と、前記判定手段とを更に含む、
    請求項6に記載の通信システム。
  9. 送信先装置に対する複数のコネクションを維持し、
    前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加えて、
    前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
    前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する
    通信制御方法。
  10. コンピュータ
    送信先装置に対する複数のコネクションを維持する管理処理と、
    前記複数のコネクションから選択された選択コネクションを介してデータ送信手段が行う前記送信先装置に対する通信が中断された状態である一時断を検出し、当該一時断を検出するのに応じて一時断通知を送信する判定手段から、前記一時断通知を受信するのに加
    えて、
    前記データ送信手段と前記送信先装置との間の通信路の切り替えを検出し、当該切り替えの完了が検出された場合に切替通知を送信する切替検知手段から、前記一時断通知に基づく所定期間内に前記切替通知を受信した場合、
    前記選択コネクション以外の前記複数のコネクションから新たな前記選択コネクションを選択し、選択した前記選択コネクションの識別子を前記データ送信手段に送信する変更処理と、
    を実行させる通信制御プログラム。
JP2016512608A 2014-04-10 2015-04-10 通信制御装置、通信制御方法及び通信制御プログラム Active JP6528768B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014081114 2014-04-10
JP2014081114 2014-04-10
PCT/JP2015/002018 WO2015155996A1 (ja) 2014-04-10 2015-04-10 通信制御装置、通信制御方法及び通信制御プログラムを記憶する記録媒体

Publications (2)

Publication Number Publication Date
JPWO2015155996A1 JPWO2015155996A1 (ja) 2017-04-13
JP6528768B2 true JP6528768B2 (ja) 2019-06-12

Family

ID=54287580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016512608A Active JP6528768B2 (ja) 2014-04-10 2015-04-10 通信制御装置、通信制御方法及び通信制御プログラム

Country Status (2)

Country Link
JP (1) JP6528768B2 (ja)
WO (1) WO2015155996A1 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4292884B2 (ja) * 2003-06-20 2009-07-08 ソニー株式会社 リアルタイムデータ通信システム、リアルタイムデータ通信装置およびリアルタイムデータ通信方法
JP2013121028A (ja) * 2011-12-07 2013-06-17 Nippon Telegr & Teleph Corp <Ntt> データパケット伝送方法及びシステム

Also Published As

Publication number Publication date
JPWO2015155996A1 (ja) 2017-04-13
WO2015155996A1 (ja) 2015-10-15

Similar Documents

Publication Publication Date Title
JP4509545B2 (ja) 設定変更可能な信頼性の高いメッセージ通信システム
JP4748086B2 (ja) 通信中継装置、リソース解放方法および通信中継装置のプログラム
JP2008547329A (ja) 無線ネットワークにおけるセッションの保持
JP5867188B2 (ja) 情報処理装置、輻輳制御方法および輻輳制御プログラム
US9037935B2 (en) Apparatus and method for retransmitting message in message transmission system
JP5784139B2 (ja) 通信システム
US20190245735A1 (en) Server apparatus, cluster system, cluster control method and program
EP3205054B1 (en) Method, traffic monitor (tm), request router (rr) and system for monitoring a content delivery network (cdn)
TWI254524B (en) Distributed router application serialization
US8060628B2 (en) Technique for realizing high reliability in inter-application communication
JP6408580B2 (ja) ネットワーク内のノードを動作させる方法及びノード装置
EP3979588A1 (en) Improved error handling for media access control security
JP6528768B2 (ja) 通信制御装置、通信制御方法及び通信制御プログラム
JP6117345B2 (ja) 処理性能低下を回避するメッセージシステム
US20110238819A1 (en) Apparatus and method for transmitting information on an operational state of the same
US20170118072A1 (en) Communication control method, network system, and communication control device
WO2015194134A1 (ja) 通信状態推定装置、通信状態推定方法及び通信状態推定プログラムを記憶する記録媒体
US9319266B2 (en) Method and apparatus for managing diameter routing
JP4818338B2 (ja) 監視サーバ、ネットワーク監視方法
CN110601972A (zh) 一种报文传输方法、装置及智能弹性架构系统
JP6146409B2 (ja) 通信装置および通信方法
KR101933175B1 (ko) 서버와 클라이언트간 통신을 중개하는 중개장치
JP5884918B2 (ja) ネットワーク管理装置、システム、および方法
JP2004235883A (ja) ハンドオーバー方法、無線通信システム及び基地局
WO2013047339A1 (ja) 負荷分散装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190416

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190429

R150 Certificate of patent or registration of utility model

Ref document number: 6528768

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150