JP2017022631A - 通信システム、通信装置、通信方法、および、通信プログラム - Google Patents

通信システム、通信装置、通信方法、および、通信プログラム Download PDF

Info

Publication number
JP2017022631A
JP2017022631A JP2015140104A JP2015140104A JP2017022631A JP 2017022631 A JP2017022631 A JP 2017022631A JP 2015140104 A JP2015140104 A JP 2015140104A JP 2015140104 A JP2015140104 A JP 2015140104A JP 2017022631 A JP2017022631 A JP 2017022631A
Authority
JP
Japan
Prior art keywords
communication device
data
communication
reception quality
terminal
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.)
Withdrawn
Application number
JP2015140104A
Other languages
English (en)
Inventor
友将 角田
Tomoyuki Tsunoda
友将 角田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015140104A priority Critical patent/JP2017022631A/ja
Priority to US15/192,197 priority patent/US20170019463A1/en
Priority to CN201610529536.1A priority patent/CN106357533A/zh
Publication of JP2017022631A publication Critical patent/JP2017022631A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/44Star or tree networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/22Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】データの配信システム中での受信品質の低下を防止する。
【解決手段】通信システムは、第1の通信装置、複数の転送先、複数の通信装置を備える。第1の通信装置は、データの配信を受け、複数の転送先にデータを転送する。複数の通信装置は、複数の転送先のいずれかを介してデータを受信する。第1の通信装置は、複数の転送先に含まれる第2の通信装置でのデータの受信品質より、複数の通信装置に含まれる第3の通信装置でのデータの受信品質が良い場合、第2の通信装置に、第3の通信装置からデータを受信することを要求する。第2の通信装置は、第1の通信装置からの要求を受信すると、接続先を第1の通信装置から第3の通信装置に変更する。
【選択図】図2

Description

本発明は、通信システムと、通信システムで行われる通信方法に関する。
通信装置間でのピアツーピア(Peer to Peer、P2P)型の通信処理により、複数の装置にデータが配信されるデータ配信システムが使用されることがある。このようなデータ配信システムでは、データの配信元を起点としたツリー状のネットワークが使用されることがある。データ配信システムに参加している通信装置は、受信品質をモニタしており、自装置での受信品質が所定の閾値を下回ると、接続先との間の通信を切断するとともに、データ配信システム中で自装置が接続可能な他の装置との間の通信を開始する。
図1は、データ配信システムの例を説明する図である。図1に示すデータ配信システムには、サーバ5と通信装置1a〜1hが含まれており、通信の開始時には、通信装置1hは、通信装置1fに接続しているとする。サーバ5は、データを通信装置1aに配信し、通信装置1aは、サーバ5から受信したデータを、通信装置1bと通信装置1cに送信する。通信装置1bは、通信装置1aから受信したデータを、通信装置1fに送信する。同様に、通信装置1cは、通信装置1aから受信したデータを、通信装置1dと通信装置1eに送信する。一方、通信装置1fは、通信装置1bから受信したデータを、通信装置1gと通信装置1hに送信する。図1において、各通信装置の近傍の数値は、サーバから配信されたデータのうち、各通信装置で正しく受信できたデータの百分率である。例えば、通信装置1a〜1dでは配信されたデータの99%、通信装置1e〜1gでは、配信されたデータの98%を正しく受信できている。一方、通信装置1hでは、配信されたデータの94%を正しく受信できている。
ここで、通信装置が接続先を変更するかを判定するための閾値(受信品質閾値)が、いずれの装置でも95%に設定されているとする。この場合、各通信装置は、配信されたデータの95%以上を正しく受信できている場合は接続先を変更しないが、正しく受信したデータが95%を下回ると、接続先を変更する。図1の例では、通信装置1hが通信装置1fに接続しているときに受信したデータは、配信されたデータの94%であるので、通信装置1hは、接続先を通信装置1fから他の装置に変更することを決定する。通信装置1hは、通信装置1dに接続可能であることを特定すると、矢印Aで示すように、接続先を通信装置1dに変更する。図1の例では、接続先を通信装置1dに変更した後では、通信装置1hは、矢印Bに示すように通信装置1dからデータを受信することにより、配信されたデータの99%を受信できている。そこで、通信装置1hは、通信装置1dを接続先としてデータを取得する。
関連する技術として、子端末との間で生成可能な通信ルートの残数が閾値K1以下になった親端末と通信している子端末は、形成可能な通信ルートの残数が閾値K2を上回っている親端末に接続先を変更する方法が提案されている(例えば特許文献1など)。また、マルチホップ無線ネットワーク中の通信装置が、アドレスを用いた所定の計算式から求めた経路から選択した経路を使って、中継先を決定する経路設定方法も提案されている(例えば、特許文献2など)。
特開2012−70368号公報 特開2009−200768号公報
通信装置が接続先を変更するかを判定する際に用いる閾値を高い値にすると、データを配信可能な通信装置の数が少なくなるので、閾値は、ユーザが快適に受信データを使用できると想定される値以下に設定されることがある。この場合、受信品質が閾値をわずかに超えているに過ぎない通信装置であっても、閾値を下回るまでは接続先を変更しない。下流側の通信装置での受信品質は接続先の通信装置よりも良くなることはないので、受信品質が閾値をわずかに上回る通信装置がデータ配信システムの上流側に存在すると、下流側の通信装置での受信品質が悪くなりやすい。
本発明は、データの配信システム中での受信品質の低下を防止することを目的とする。
1つの態様では、通信システムは、データの配信を受けている第1の通信装置と、前記第1の通信装置が前記データを転送する複数の転送先と、前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置を備える。前記第1の通信装置は、前記複数の転送先に含まれる第2の通信装置での前記データの受信品質より、第3の通信装置での前記データの受信品質が良い場合、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求する。ここで、第3の通信装置は、前記複数の通信装置に含まれる装置である。前記第2の通信装置は、前記第1の通信装置からの要求を受信すると、接続先を前記第1の通信装置から前記第3の通信装置に変更する。
1つの側面として、データの配信システム中での受信品質の低下を防止することができる。
データ配信システムの例を説明する図である。 実施形態にかかる通信方法の例を説明する図である。 通信装置の構成の例を説明する図である。 通信装置のハードウェア構成の例を説明する図である。 データの転送先からの品質情報の取得方法の例を説明する図である。 品質情報の通知方法の例を説明するフローチャートである。 受信品質の計算方法の例を説明する図である。 受信品質に有意差があるかを判定する方法の例を説明する図である。 接続先の検索方法の例を説明する図である。 接続先の検索方法の例を説明する図である。 接続先の変更処理の例を説明する図である。 接続先の検索方法の例を説明する図である。 接続先の検索方法の例を説明する図である。 接続先の検索方法の例を説明する図である。 接続先の検索方法の例を説明するフローチャートである。 接続先の検索方法の例を説明するフローチャートである。 受信品質の比較方法の例を説明するフローチャートである。 接続先の変更方法の例を説明するフローチャートである。
図2は、実施形態にかかる通信方法の例を説明する図である。ケースC1は、通信装置10A〜10Jがデータの配信を受けている配信システムの例である。各通信装置10から伸びている実線の矢印は、その通信装置10が他の通信装置10にデータを転送していることを示す。例えば、通信装置10Aは、通信装置10Bと通信装置10Cにデータを転送し、通信装置10Bは通信装置10Dと通信装置10Eにデータを転送している。以下の説明では、紙面の都合から、送信先の通信装置10を図示しないこともある。例えば、通信装置10Iから矢印が2本伸びていることは、通信装置10Iが他の2台の通信装置10にデータを転送していることを示しているが、通信装置10Iからのデータの転送先は図示していない。図2以降においても、図1と同様に、各通信装置で正しく受信できたデータの百分率を、通信装置10の近傍に示す。
ケースC1の例では、通信装置10A、通信装置10Bは、サーバ5(図示せず)から送信された全てのパケットを受信しているが、通信装置10Cは送信されたパケットのうちの90%だけを受信できている。通信装置10Cは送信されたパケットのうちの90%しか受信に成功していないため、通信装置10Cを介してパケットを受信する通信装置10では、通信装置10C以下の品質でしかデータを受信しない。例えば、通信装置10Cからパケットを受信している通信装置10Fでは、送信されたパケットの89%しか受信していない。
以下、複数の装置の接続関係を分かりやすくするために、ある通信装置10からのデータの転送先を、その装置の「子端末」と記載する。同様に、ある装置の子端末からデータを受信する通信装置10を、ある通信装置10の「孫端末」と記載する。また、子端末に対してデータを送信している通信装置10のことを、子端末にとっての「親端末」と記載することもある。さらに、ある通信装置10でのデータの転送先(子端末)を介してデータを取得する装置には、ある通信装置10にとっての孫端末や孫端末からデータを取得する装置など、子端末を経由してデータを受信する装置が含まれるものとする。
通信装置10Aは、データの転送先の通信装置10B、通信装置10Cから定期的に各装置の受信品質や新たな装置の接続の可否を表す情報を取得する。このとき、通信装置10Aは、子端末である通信装置10B、10Cから、孫端末の情報も取得してもよい。通信装置10Aは、孫端末からも、各孫端末や各孫端末を介してデータを受信している通信装置10の情報を取得できる。従って、通信装置10Aは、例えば、ケースC1に示すネットワークの状態を認識することができる。例えば、通信装置10Aは、通信装置10Aの子端末である通信装置10Cでの受信品質が90%であることを特定できる。さらに、通信装置10Aは、通信装置10Aの孫端末である通信装置10Eを介してデータを受信している通信装置10Gでは、受信品質が99%であることも特定する。すると、通信装置10Aは、子端末の通信装置10Cより下流の通信装置10Gなどの装置での受信品質の方が、通信装置10Cでの受信品質が良いことから、通信装置10Cを下流側に移動させることを決定する。通信装置10Aは、通信装置10Cに接続先を通信装置10Aから通信装置10Gに変更することを要求する。
ケースC2は、接続の切り替えの例を示している。ケースC2では、通信装置10Gから通信装置10Cに向かう破線の矢印で、通信装置10Cが通信装置10Gの下流に移動したことと、通信装置10Cへのデータの流れを示す。また、通信装置10Aから通信装置10Cに向かう実線の矢印に付した×印は、通信装置10Cが通信装置10Aとの間の接続を切断することを示す。
ケースC3は、ケースC2での処理により得られたネットワークの例である。ケースC3に示すネットワークでは、通信装置10Aには通信装置10Bが接続しているが、通信装置10Cは通信装置10Aに接続していない。通信装置10Cは、通信装置10Aの子端末よりも下流側の通信装置10Gに接続している。このため、通信装置10Cは、通信装置10B、通信装置10E、通信装置10Gの3台の通信装置10を介して、通信装置10Aに接続されており、ケースC2に比べて下流側に移動している。
このように、実施形態にかかる方法では、受信品質の悪い通信装置10が上流側から下流側に移動する。このため、通信装置10Cのように受信品質の悪い装置が上流側に接続されていることにより、データを受信している装置での受信品質が低下する可能性を低くすることができる。ここで、受信品質が低下すると、受信品質の低下による再送や通信の切断が多くなり、通信が効率的に行われない可能性もある。実施形態にかかる方法では、受信品質の悪い通信装置10が下流側に移動するので、受信品質の低下による通信効率の低下も防止している。
さらに、通信装置10Cが下流側に移動したことにより、通信装置10Aには他の通信装置10が接続可能である。このため、新たにデータ配信システムに参加する通信装置10を通信装置10Aに接続させることができる。また、既にデータ配信システムに参加している通信装置10のうちで、比較的受信品質が良い通信装置10を通信装置10Aに接続させることにより、システム内の階層を減らして、さらに通信効率をよくすることもできる。例えば、ケースC3では、通信装置10Aから末端の通信装置10Fまでは4台の通信装置10を介して接続されている。ここで、通信装置10Gを通信装置10Cの代わりに通信装置10Aに接続させることにより、通信装置10Fは通信装置10Gと通信装置10Cを介して通信装置10Aに接続できる。この場合、通信装置10Aから通信装置10Fにデータが届くまでに行われる転送処理の回数が減るため、通信装置10Fのような末端の通信装置10での受信品質の低下を防ぎやすい。
なお、図2では、通信装置10Aが他の通信装置10を移動させることや移動先を決定する場合を例として説明したが以上の説明は一例に過ぎない。ネットワーク中で子端末と孫端末が接続しているいずれの通信装置10も、通信装置10Aと同様に、自装置を介してデータを取得している装置の接続先を変更するかを決定すると共に、新たな接続先を指定することができる。
<装置構成>
図3は、通信装置10の構成の例を説明する図である。通信装置10は、送受信部13、制御部20、記憶部30を備える。記憶部30は、接続情報テーブル31を記憶する。制御部20は、取得部21、品質算出部22、切り替え要求部23、接続処理部25、データ処理部26、中継処理部27を有する。
送受信部13は、受信部11と送信部12を有する。受信部11は、サーバ5や他の通信装置10など、他の装置からパケットを受信する。送信部12は、サーバ5や他の通信装置10など、他の装置にパケットを送信する。
取得部21は、子端末や孫端末からの受信パケットを用いて、自装置の下流側に接続している通信装置10での受信品質などの情報を取得する。取得部21は、取得した情報を、適宜、接続情報テーブル31に記録する。品質算出部22は、自装置での配信データの受信品質を算出する。切り替え要求部23は、子端末の受信品質を、いずれかの子端末を介してデータを受信している通信装置10での受信品質と比較することにより、子端末を下流側に移動させるかを判定する。いずれかの子端末を介してデータを受信している通信装置10での受信品質が、子端末の受信品質よりも良い場合、切り替え要求部23は、子端末に宛てに、接続先の移動を要求するための制御パケット(切り替え要求パケット)を生成する。
接続処理部25は、他の通信装置10から接続先の変更を要求された場合、新たに指定された接続先の通信装置10との間の接続を確立する。データ処理部26は、データ配信システムに参加中に受信した配信データを処理する。中継処理部27は、配信対象のデータを自装置から取得している通信装置10に対して、配信対象のデータを中継するための処理を行う。
図4は、通信装置10のハードウェア構成の例を説明する図である。通信装置10は、プロセッサ101、メモリ102、バス103、ネットワークインタフェース104を備える。プロセッサ101は、CPU(Central Processing Unit)を含む任意の処理回路である。プロセッサ101は、メモリ102をワーキングメモリとして使用して、プログラムを実行することにより、様々な処理を実行する。メモリ102には、RAM(Random Access Memory)が含まれ、さらに、ROM(Read Only Memory)等の不揮発性のメモリも含まれる。また、メモリ102には、適宜、プログラムが格納される。バス103は、プロセッサ101、メモリ102、ネットワークインタフェース104を、互いにデータの入出力が可能になるように接続する。通信装置10において、プロセッサ101は制御部20として動作し、メモリ102は記憶部30として動作する。さらに、送受信部13は、プロセッサ101とネットワークインタフェース104により実現される。
<実施形態>
以下、実施形態にかかる通信を、配信先の情報の取得方法、各装置で行われる受信品質の計算方法、子端末の接続先を変更するかの判定、接続先の検索と接続先の変更に分けて説明する。以下、処理を行っている通信装置10を明確にするために、符号の末尾に通信装置10に割り当てられた識別子と同じアルファベットの小文字を付すことがある。例えば、取得部21aは、通信装置10Aに含まれている取得部21を指す。
(1)配信先の情報の取得
図5は、データの転送先からの品質情報の取得方法の例を説明する図である。以下、図5のネットワークN1に示すネットワークを例として説明する。ネットワークN1では、通信装置10Aは通信装置10Bと通信装置10Cにデータを配信する。通信装置10Bは、通信装置10Dと通信装置10Eへデータを配信し、通信装置10Eは通信装置10Gと通信装置10Hにデータを配信する。さらに、通信装置10Gは通信装置10I、通信装置10Hは通信装置10J、通信装置10Cは通信装置10Fにデータを配信している。
子端末が接続している通信装置10の各々では、取得部21が、自装置の子端末から子端末自身の通信の状況やその子端末に接続している孫端末などの通信情報を取得するために、定期的に制御パケットを生成する。なお、各通信装置10は、自装置の接続先や子端末のアドレスを、接続を確立する際の制御により認識しているものとする。以下、通信情報の取得の際に使用される制御パケットを「情報要求パケット」と記載することがある。ここでは、通信装置10Aの取得部21aが、通信装置10Aの孫端末までの情報を取得するための情報要求パケットを通信装置10B宛に生成したとする。
図5のP1は、情報要求パケットのフォーマットの例である。情報要求パケットは、IP(Internet Protocol)ヘッダ、情報要求パケットであることを示す情報、範囲情報を含む。ここで、範囲情報は、情報要求パケットによって情報の通知が要求されている範囲を表わす値であり、情報要求パケットを受信した装置を基準として、どの階層までの端末の情報の通知を要求するかを示す値である。以下の説明では、範囲情報は、基準とする装置との間の通信に使用される通信リンクの数を−1倍した値である。例えば、情報要求パケットが通信装置10Bに送信される場合、通信装置10Bが階層情報の基準となる。この場合、通信装置10Bの階層は0、通信装置10Bの子端末の階層は−1、通信装置10Bの孫端末の階層は−2となる。
通信装置10Bの受信部11bは、情報要求パケットを受信し、取得部21bに出力する。取得部21bは接続情報テーブル31bに記録されている情報と、品質算出部22bで計算された通信装置10Bでの受信品質を用いて、通信装置10Aに通知するデータを生成する。取得部21bが生成したデータの例をデータD1に示す。
図5のデータD1には、情報要求パケットを受信した装置自身の情報と、情報要求パケットで指定された範囲の階層の装置の情報が含まれる。また、各通信装置10について、その装置の識別情報、IPアドレス、関係、品質、接続可否が含まれる。関係は、情報要求パケットを受信した通信装置10を基準としたときの通知対象の通信装置10が属する階層を表わす値である。例えば、通信装置10Bは通信装置10Aから情報要求パケットを受信した装置であるので、通信装置10Bが通信装置10Aに通知する情報では、通信装置10Bの関係は0である。一方、通信装置10Dと通信装置10Eはいずれも通信装置10Bの子端末であるので、通信装置10Dと通信装置10Eのいずれについても関係の値は−1である。
品質は、通知対象の通信装置10での受信品質である。受信品質の計算方法の詳細については後述する(図7)。図5の例では、通信装置10Bの受信品質は100%、通信装置10Dの受信品質は99%、通信装置10Eの受信品質は98%であるものとする。接続可否は、通知対象の通信装置10が新たな接続を形成することができるかを表わす情報である。データD1では、通信装置10B、通信装置10Dでは、さらに新たな子端末との間で接続の確立が可能であるのに対し、通信装置10Eは新たな接続を形成しない場合を示している。取得部21bは、データD1に示す情報にヘッダを付して、通信装置10A宛ての応答パケットを生成する。送信部12bは、応答パケットを通信装置10Aに送信する。
通信装置10Aの受信部11aは、応答パケットを受信すると、取得部21aに出力する。取得部21aは、応答パケットに含まれているデータを接続情報テーブル31aに記録する。このとき、取得部21aは、通信装置10の識別情報、IPアドレス、品質、接続可否については、子端末から通知された情報を接続情報テーブル31aに記録するが、関係を表わす値は、通信装置10Aを基準とした値に変更する。例えば、データD1は通信装置10Bから送信されたデータであるので、データD1中の基準となっている通信装置10Bは通信装置10Aにとっての子端末である。そこで、データD1に含まれているいずれの装置についても、取得部21aは、関係を表わす値を1つ減算して得た値を、接続情報テーブル31aに記録する。すると、通信装置10Bの関係=−1、通信装置10Dの関係=−2、通信装置10Eの関係=−2となる。換言すると、接続情報テーブル31aには、通信装置10Bが通信装置10Aの子端末であることと、通信装置10Dと通信装置10Eが通信装置10Aの孫端末であることが記録される。
図5を参照しながら、通信装置10Aが子端末に情報要求パケットを送信して、子端末からデータを受信する場合を説明したが、通信装置10は、孫端末など、子端末よりも下流側の装置に対して情報要求パケットを送信することもできる。この場合も、情報要求パケットに対する応答パケットで得られたデータが接続情報テーブル31に格納されるが、応答パケット中の関係の値は、データの送信元と情報要求パケットの送信元の間の関係に応じて、修正される。
図6は、品質情報の通知方法の例を説明するフローチャートである。図6は、情報要求パケットを受信した通信装置10が、応答パケットを送信するまでに行う処理の例を示している。
品質算出部22は、自装置での受信品質を計算する(ステップS1)。取得部21は、情報要求パケットを受信するまで待機する(ステップS2でNo)。取得部21は、情報要求パケットを受信すると、自装置に子端末として接続している通信装置10があるかを判定する(ステップS2でYes、ステップS3)。自装置に子端末として接続している通信装置10がある場合、取得部21は、接続情報テーブル31に格納している子端末のデータと、品質算出部22で算出された自装置の品質に関するデータをマージする(ステップS3でYes、ステップS4)。取得部21は、情報要求パケット中の範囲フィールドの値を用いて、孫端末のデータが要求されているかを判定する(ステップS5)。孫端末のデータが要求されている場合、取得部21は、孫端末があるかを判定する(ステップS6)。ここで、孫端末の有無は、子端末からの情報の取得の際に、合わせて取得しているものとする。自装置に孫端末がある場合、取得部21は、孫端末の品質データを接続情報テーブル31から取得し、子端末と自装置のデータをマージして得られたデータに、孫端末のデータをさらにマージする(ステップS6でYes、ステップS7)。取得部21は、生成したデータにヘッダなどの情報を付加して応答パケットを生成し、送信部12を介して、情報要求パケットの送信元に送信する(ステップS8)。
一方、ステップS6において、自装置に孫端末が無いと判定した場合も、取得部21は、ステップS8の処理を行う(ステップS6でNo、ステップS8)。同様に、ステップS3において、自装置に子端末が無いと判定した場合、取得部21は、ステップS8の処理を行う(ステップS3でNo、ステップS8)。
(2)受信品質の計算方法
図7は、受信品質の計算方法の例を説明する図である。図7を参照しながら、データ配信システム中の各装置やデータ配信システムに参加しようとする装置において行われる受信品質の計算方法の例を説明する。図7の例では、配信データを配信する装置は、配信先の装置に対して、データパケットと制御パケットを送信する。なお、配信データを配信する装置は、サーバ5だけでなく、他の通信装置10に対して配信データを含むパケットを送信する通信装置10も含む。図7のP11の例では、データ配信システムで配信されるデータパケットに映像データが含まれている。データパケットは、P11に示すように、IPヘッダ、UDP(User Datagram Protocol)ヘッダ、シーケンス番号、配信対象の映像データを含む。シーケンス番号は、配信されている映像データの順序を表わす番号である。なお、シーケンス番号は、ペイロード中の情報としてパケットに含められている。
一方、制御パケットは、所定期間中に送信されたデータパケットの数を通知するために送信されるパケットであり、所定の期間(ΔT)ごとに送信される。制御パケットは、P12に示すように、IPヘッダ、TCP(Transmission Control Protocol)ヘッダ、制御データを含む。制御データは、直前の制御パケットが送信された後で送信されたデータパケットに含まれているシーケンス番号の先頭の値、送信されたデータパケットに含まれているシーケンス番号の末尾の値、送信されたパケット数が含まれる。
図7中のシーケンスSEQ1は、通信装置10Bから通信装置10Eにデータが配信される場合を例として、制御パケットとデータパケットの送信タイミングを示している。シーケンスSEQ1において、制御パケットの送信を実線の矢印で表わし、データパケットの送信を破線の矢印で表わす。
例えば、通信装置10Bの中継処理部27bが、データ配信の開始時に制御パケットを生成し、送信部12bを介して通信装置10Eに送信したとする(矢印A11)。矢印A11に示す制御パケットの送信の前には、データパケットが送信されていないので、矢印A11において通信装置10Bから送信された制御パケットには、以下の情報が含まれている。
先頭のシーケンス番号:0
末尾のシーケンス番号:0
送信パケット数 :0
その後、通信装置10Bの中継処理部27bでの処理により、通信装置10Bから通信装置10Eに向けて、シーケンス番号1〜100のデータパケットが送信されたとする。通信装置10Eの品質算出部22eは、受信部11eを介してデータパケットを取得し、取得したデータパケット中のシーケンス番号を記憶する。この例では、通信装置10Eは、シーケンス番号=1のデータパケットと、シーケンス番号=3〜100のデータパケットを受信したとする。すると、品質算出部22eは、シーケンス番号=1、3〜100を記憶し、品質算出部22eが記憶しているシーケンス番号の数は99である。
その後、前回の制御パケットの送信時刻から制御パケットの送信周期(ΔT)が経過すると、通信装置10Bは、以下の情報を含む制御パケットを生成し、通信装置10Eに送信する(矢印A12)。
先頭のシーケンス番号:1
末尾のシーケンス番号:100
送信パケット数 :100
通信装置10Eにおいて、品質算出部22eは、受信部11eを介して制御パケットを取得し、前回受信した制御パケットと今回受信した制御パケットの間に送信されたデータパケットの数とシーケンス番号を取得する。矢印A11で受信した制御パケットと矢印A12で受信した制御パケットの間で100個のデータパケットが送信されているのに対し、品質算出部22eは、99個のデータパケットのシーケンス番号しか保持していない。そこで、品質算出部22eは、送信されたデータパケットの総数に対する受信したデータパケット数の割合を受信品質として計算する。この例では、100個のデータパケットが送信されたのに対して99個のデータパケットを受信しているので、品質算出部22eは、受信品質が99%であると計算する。品質算出部22eは、受信品質を計算し終えると、受信パケット数をリセットし、その後も同様に受信品質を計算する。
例えば、矢印A12に示す制御パケットの受信の後に、通信装置10Bは通信装置10Eに向けて、シーケンス番号101〜200のデータパケットを送信したとする。また、通信装置10Eでは、シーケンス番号=101〜180のデータパケットを受信したが、シーケンス番号=181以降のパケットを受信しなかったとする。すると、品質算出部22eは、矢印A12に示す制御パケットの後に、シーケンス番号=101〜180の80個のパケットを受信したことを記憶する。
通信装置10Bは、以下の情報を含む制御パケットを生成し、通信装置10Eに送信する(矢印A13)。
先頭のシーケンス番号:101
末尾のシーケンス番号:200
送信パケット数 :100
矢印A12で受信した制御パケットと矢印A13で受信した制御パケットの間で100個のデータパケットが送信されているのに対し、品質算出部22eは、80個のデータパケットしか受信していない。そこで、品質算出部22eは、100個のデータパケットが送信されたのに対して80個のデータパケットを受信しているので、受信品質が80%であると計算する。なお、制御パケットの送信間隔ΔTは実装に応じて決定される。
(3)子端末の接続先を変更するかの判定
切り替え要求部23は、複数の子端末での受信品質に差があるかを判定することにより、自装置に接続している子端末の接続先を変更するかを判定する。
図8は、受信品質に有意差があるかを判定する方法の例を説明する図である。図8のケースC11、C12のいずれも、ネットワークN1のうちの通信装置10A〜10Cの間の接続と、通信装置10A〜10Cの各々の受信品質の例を示している。
ケースC11では、通信装置10Aでの受信品質は100%である。通信装置10Bと通信装置10Cはいずれも通信装置10Aの子端末であるが、通信装置10Bでの受信品質は92%、通信装置10Cでの受信品質は90%である。切り替え要求部23aは、例えば、式(1)に示す計算から、子端末間での受信品質に有意差があるかを判定するための指標値(X)を求める。
X=(Rpa−Rc1)/(Rpa−Rc2) ・・・(1)
ここで、Rpaは親端末での受信品質の百分率、Rc1は子端末の内で最も受信品質の良い端末での受信品質の百分率、Rc2は子端末の内で最も受信品質の悪い端末での受信品質の百分率である。換言すると、(Rpa−Rc1)は、親端末と子端末の間の受信品質の百分率の差の最小値であり、(Rpa−Rc2)は、親端末と子端末の間の受信品質の百分率の差の最大値である。指標値が所定の閾値Th未満の場合、切り替え要求部23aは、子端末の間での品質に有意差があると判定する。
例えば、閾値Th=0.75であるとする。この場合、ケースC11の状況で得られる指標値(XC11)は、XC11=(100−92)/(100−90)=8/10=0.8であり、ケースC11では、指標値は閾値Thを上回っている。このため、切り替え要求部23は、通信装置10Bと通信装置10Cの間には、有意な受信品質の差が無いと判定する。ケースC11のように、子端末の間で受信品質の有意差がなく、全部の子端末での通信品質が悪い場合は、ある特定の子端末が原因で受信品質が低下しているわけではないので、子端末の接続先を変更しても、下流側の装置の受信品質に影響しにくい。そこで、切り替え要求部23aは、自装置の子端末の接続先を変更しないことを決定して、処理を終了する。なお、ある通信装置10に接続された全ての子端末の受信品質が悪い場合でも、その通信装置10よりも上流側で接続先が変更されることにより、各通信装置10での受信品質が改善される可能性がある。
ケースC12では、通信装置10Aでの受信品質は100%であり、通信装置10Bでの受信品質は96%、通信装置10Cでの受信品質は90%である。この場合、ケースC12の状況で得られる指標値(XC12)は、XC12=(100−96)/(100−90)=4/10=0.4であり、ケースC12では、指標値は閾値Thを下回っている。このため、切り替え要求部23aは、通信装置10Bと通信装置10Cの間には、有意な受信品質の差があると判定する。子端末の間で受信品質の有意差がある場合、切り替え要求部23aは、受信品質の悪い通信装置10Cによって、他の通信装置10への受信品質が低下する可能性があると判定して、通信装置10Cを下流側に移動させることを決定する。換言すると、切り替え要求部23aは、通信装置10Cを下流側に移動することにより、通信装置10Cに起因して他の通信装置10の受信品質が低下することを防止できるか可能性があると判定している。この場合、接続先の検索処理と、子端末での接続先の変更が行われる。
(4)接続先の検索と接続先の変更
以下、接続先の検索と接続先の変更処理をいくつかのパターンに分けて説明する。
(4.1)パターン1
図9〜図11を参照しながら、親端末が子端末を孫端末よりも下流に移動させる場合に行われる処理の具体例を説明する。なお、図9〜図11は、ネットワークN1(図5)での通信処理の例を示すが、見やすさを優先させるために、一部の通信装置10を図示しない場合がある。
図9のケースC21は、通信装置10Aの切り替え要求部23aにおいて、通信装置10Bと通信装置10Cの間の受信品質に有意の差があると判定された場合の例を示す。ケースC21の例では、通信装置10Aと通信装置10Bの受信品質は100%であり、通信装置10Cと通信装置10Dの受信品質は90%である。一方、通信装置10Eの受信品質は99%、通信装置10Fの受信品質は89%である。
図9の接続情報テーブル31a−1は、ケースC21において、通信装置10Aが孫端末までの情報を保持する場合の接続情報テーブル31の例である。子端末間に受信品質の有意差があるので、切り替え要求部23aは、孫端末のうちで受信品質が子端末の受信品質を上回るものがあるかを判定する。接続情報テーブル31a−1の例では、通信装置10Aの孫端末である通信装置10Eの受信品質は、通信装置10Aの子端末である通信装置10Cの受信品質を上回っている。そこで、切り替え要求部23aは、通信装置10Eが新たな接続を確立できる場合は、通信装置10Cの接続先を通信装置10Eに変更できると判定する。しかし、接続情報テーブル31a−1の例では、通信装置10Eは、他の装置との間で新たな接続を確立しない。そこで、切り替え要求部23aは、通信装置10Eに接続している装置のうちで、通信装置10Cよりも受信品質の良い装置に、通信装置10Cを接続できるかを調べるために、通信装置10Eからの接続情報を取得することを、取得部21aに要求する。取得部21aは、切り替え要求部23aからの要求に応じて、図5等を参照しながら説明した処理と同様の処理により、通信装置10Eに向けて、情報要求パケットを送信する。なお、取得部21aは、通信装置10Eに対して、通信装置10Eの孫端末までの情報を要求したとする。
通信装置10Eの取得部21eは、受信部11eを介して情報要求パケットを取得すると、通信装置10Eの孫端末までの情報を含む応答パケットを生成し、送信部12eを介して通信装置10Aに送信する。取得部21aは、通信装置10Eから受信した応答パケット中のデータを処理することにより、接続情報テーブル31を更新する。
図10の接続情報テーブル31a−2は、取得部21aの処理により更新された接続情報テーブル31の例である。通信装置10Eから得られた情報をネットワークに図示すると、図10のケースC22に示すとおりになる。通信装置10Gおよび通信装置10Iでは受信品質は99%であるが、通信装置10Hと通信装置10Jでの受信品質は90%である。一方、通信装置10A〜10Fでの受信品質は、ケースC22でもケースC21(図9)と同様である。
接続情報テーブル31が更新されると、切り替え要求部23aは、孫端末を介してデータを受信している通信装置10のうちで受信品質が子端末の受信品質を上回るものがあるかを判定する。接続情報テーブル31a−2の例では、通信装置10Eの子端末である通信装置10Gでの受信品質と、通信装置10Eの孫端末である通信装置10Iの受信品質は、通信装置10Aの子端末である通信装置10Cの受信品質を上回っている。そこで、切り替え要求部23aは、通信装置10Gが新たな接続を確立できる場合は、通信装置10Cの接続先を通信装置10Gに変更できると判定する。接続情報テーブル31a−2には、通信装置10Gが新たな接続を確立できることが記録されている。
図11は、接続先の変更処理の例を説明する図である。ケースC23は、通信装置10Cの接続先を通信装置10Gに変更することが決定された場合に行われる処理の例を示す。切り替え要求部23aは、通信装置10C宛に、新たな接続先のIPアドレスを10.0.0.7(通信装置10G)とすることを要求する切り替え要求パケットを生成する。切り替えパケットは、送信部12aから、通信装置10Cに送信される(矢印A21)。通信装置10Cの受信部11cは、切り替え要求パケットを受信すると、接続処理部25cに出力する。接続処理部25cは、切り替え要求パケット中のデータを用いて、通信装置10Aと通信装置10Cとの間の接続を切断すると共に、通信装置10Cと通信装置10Gの間の接続を確立する(矢印A22、A23)。
このように、通信装置10Cの接続先が通信装置10Gに変更されるため、受信品質の良好でない通信装置10が配信システムの上流側に残ってしまい、配信システムでの通信が非効率的になることが防止される。
次に、図11のケースC24、C25を参照しながら、子端末の接続先の変更処理の後で、元の子端末の新たな接続先を、親端末に接続させる場合の処理の例を説明する。通信装置10Cの切り替え要求部23cは、通信装置10Gとの接続前には通信装置10A(10.0.0.1)に接続していたことを通知する通知パケットを、通信装置10Gに送信する(矢印A24)。
通信装置10G中の接続処理部25gは、受信部11gを介して、通信装置10Cからのパケットを取得する。接続処理部25gは、通知パケットを用いて、通信装置10Cでの接続先が、通信装置10Aから通信装置10Gに変更されたことを認識する。すると、接続処理部25cは、通信装置10Cと通信装置10Aとの間の接続がなくなったことで、通信装置10Aとの接続が可能であると判定する。そこで、接続処理部25gは、通信装置10Gと通信装置10Eとの間の接続を切断する(A25)。その後、接続処理部25gは、通信装置10Aに対して接続要求パケットを送信することにより、接続の確立を要求する(矢印A26)。
通信装置10Aの接続処理部25aは、受信部11aを介して、通信装置10Gからの接続要求パケットを取得する。接続処理部25aは、接続要求パケット中の情報を用いて、通信装置10Aと通信装置10Gとの間の接続を確立する。通信装置10Aと通信装置10Gが接続されている様子を、ケースC25に示す。
ケースC25に示すように、通信装置10Aと通信装置10Gの間での接続が確立されると、通信装置10A中の中継処理部27aは、通信装置10Aで取得したデータを通信装置10Gに中継する。このとき、通信装置10Aの子端末は、通信装置10Bと通信装置10Gになっており、いずれの子端末での受信品質も良好である。このため、パターン1で説明した処理により、配信システムの上流側に受信品質の悪い通信装置10があることにより、配信システム全体での通信効率が低下することを防止できる。
なお、ケースC24を参照しながら、下流側に移動した通信装置10Cが通信装置10Gに新たな接続先を通知する場合を例としたが、新たな子端末への接続先の情報は、親端末から新たな子端末となる通信装置10に通知されても良い。また、通信装置10A(親端末)は、移動させる通信装置10C(子端末)に対して送信する切り替え要求パケットに、通信装置10Cの新たな接続先となる通信装置10Gの接続の変更先の情報を含めることもできる。この場合、通信装置10Cは、切り替え要求パケットに含まれている通信装置10G向けの接続先の情報を、通信装置10Gに通知する。すると、通信装置10Gは、通信装置10Cからの通知に基づいて、接続先を変更できる。
(4.2)パターン2
パターン1では、通信装置10Aが孫端末である通信装置10Eに接続している端末に通信装置10Cを接続させることを決定したが、ネットワークによっては、孫端末の接続先では新たな接続が形成されない場合もある。このような場合に行われる処理をパターン2として、図12を参照しながら説明する
図12のケースC31には、通信装置10間の接続と、各通信装置10で得られている受信品質を示している。ケースC31の場合、通信装置10Aと通信装置10Bでは受信品質は100%であり、通信装置10Cでの受信品質は90%であり、さらに、通信装置10Dでの受信品質は98%である。通信装置10E、通信装置10G、通信装置10Iでの受信品質は、いずれも99%である。さらに、通信装置10Hと通信装置10Jでの受信品質は90%で、通信装置10Fでの受信品質は89%である。
ネットワークがケースC31に示すとおりである場合、通信装置10Aは接続情報テーブル31a−3を保持している。接続情報テーブル31a−3に示すとおり、通信装置10D、通信装置10E、通信装置10G、通信装置10Iでは、通信装置10Aの子端末である通信装置10Cよりも良い受信品質で通信している。しかし、通信装置10Aの孫端末である通信装置10Dと通信装置10Eのいずれの接続可否情報も、接続可否=NGであるので、通信装置10Dと通信装置10Eは、いずれも通信装置10Cの接続先とはならない。
次に、切り替え要求部23aは、通信装置10Eの子端末である通信装置10Gに通信装置10Cが接続可能であるかを判定する。接続情報テーブル31a−3において、通信装置10Gの接続可否情報は、接続可否=NGであるので、切り替え要求部23aは、通信装置10Cを通信装置10Gに接続させないことを決定する。
切り替え要求部23aは、通信装置10Gの子端末である通信装置10Iでの受信品質が99であり、通信装置10Cよりも良好であるので、通信装置10Iに通信装置10Cが接続可能であるかを判定する。接続情報テーブル31a−3において、通信装置10Iの接続可否情報も、接続可否=NGであるので、切り替え要求部23aは、通信装置10Cを通信装置10Iに接続させないことを決定する。
次に、切り替え要求部23aは、通信装置10Eとは異なる孫端末である通信装置10Dも通信装置10Cよりも受信品質がよいことから、通信装置10Dに対して、情報要求パケットを送信することを決定する。情報要求パケットの送信が行われ、通信装置10D中の取得部21dから通信装置10Dの子端末などの情報が通信装置10Aに通知される。ここで、通信装置10Dの子端末(通信装置10K、図示せず)が通信装置10Cよりも受信状況が良く、さらに、新たな接続の形成が可能であるとする。この場合、切り替え要求部23aは、通信装置10Kを通信装置10Cの接続先に決定する。
切り替え要求部23aが接続先を決定した後に行われる処理は、図11を参照しながら説明した処理と同様である。このため、パターン2の場合には、通信装置10Cは通信装置10Kに接続されることにより、通信装置10Aの子端末ではなくなる。また、適宜、ケースC24、C25を参照しながら説明した処理が行われることにより、通信装置10Kが通信装置10Aの新たな子端末となり得る。
なお、切り替え要求部23aが通信装置10Iに通信装置10Cを接続しないことを決定した場合、切り替え要求部23aは、通信装置10Iに、通信装置10Iの子端末などの情報を要求しても良い。その後、切り替え要求部23aは、図12などを参照しながら説明した処理と同様の処理を行うことにより、通信装置10Cの接続先を検索することができる。
(4.3)パターン3
図13を参照しながら、子端末が他の子端末に接続している孫端末に接続先を変更可能な場合の具体例を説明する。例えば、通信装置10がケースC41に示すように接続されているとする。通信装置10Aと通信装置10Bでの受信品質は100%であるとする。通信装置10Dでの受信品質は98%、通信装置10Eでの受信品質は99%である。ここで、通信装置10Dと通信装置10Eは通信装置10Aの孫端末である。また、通信装置10Aの子端末である通信装置10Cの受信品質は90%であり、通信装置10Cに接続している通信装置10Dでは受信品質が89%であるとする。
図13の接続情報テーブル31a−4は、ケースC41において、通信装置10Aが孫端末までの情報を保持している場合の接続情報テーブル31の例である。切り替え要求部23aは、孫端末のうちで受信品質が子端末の受信品質を上回るものがあるかを判定する。接続情報テーブル31a−4の例では、通信装置10Dと通信装置10Eの受信品質は、通信装置10Aの子端末である通信装置10Cの受信品質を上回っている。そこで、まず、切り替え要求部23aは、通信装置10Eが新たな接続を確立できる場合は、通信装置10Cの接続先を通信装置10Eに変更できると判定する。しかし、接続情報テーブル31a−4に示すように、図13の例では、通信装置10Eは、他の装置との間で新たな接続を確立しない。次に、切り替え要求部23aは、通信装置10Cを通信装置10Dに接続できるかを判定する。接続情報テーブル31a−4に示すように、通信装置10Dの接続可否情報は、接続可否=OKに設定されているので、通信装置10Dは、新たに他の通信装置10との接続を確立できる。そこで、切り替え要求部23aは、通信装置10Dを通信装置10Cの接続先に決定する。
切り替え要求部23aが接続先を決定した後に行われる処理は、図11を参照しながら説明した処理と同様である。このため、パターン3の場合には、通信装置10Cは通信装置10Dに接続されることにより、通信装置10Aの子端末ではなくなる。このため、配信システムの上流側に受信品質の悪い通信装置10が接続し続けることによる通信効率の低下が防止される。
(4.3)パターン4
図14を参照しながら、子端末を介してデータを受信しており、かつ、子端末よりも受信品質の良い通信装置10がない場合の例を説明する。例えば、通信装置10がケースC51に示すように接続されているとする。通信装置10Aと通信装置10Bでの受信品質は100%であるとする。通信装置10Aの子端末である通信装置10Cでの受信品質は99%である。一方、通信装置10Aの孫端末である通信装置10Dおよび通信装置10Eでの受信品質は99%、通信装置10Fでの受信品質は98%である。
図14の接続情報テーブル31a−5は、ケースC51において、通信装置10Aが孫端末までの情報を保持する場合の接続情報テーブル31の例である。切り替え要求部23aは、孫端末のうちで受信品質が子端末の受信品質を上回るものがあるかを判定する。接続情報テーブル31a−5の例では、通信装置10Dと通信装置10Eの受信品質は、通信装置10Aの子端末である通信装置10Cの受信品質以下である。この場合、切り替え要求部23aは、通信装置10Cの接続先を変更しないことを決定して処理を終了する。
図15Aと図15Bは、接続先の検索方法の例を説明するフローチャートである。図15Aと図15Bでは、接続先の変更処理に使用する情報の取得から、接続先の変更に至るまでの全体の処理の流れを時系列に沿って示す。
取得部21は、子端末での接続に関する情報を取得する定期処理のタイミングまで待機する(ステップS11でNo)。子端末での接続に関する情報を取得する定期処理のタイミングになると、取得部21は、自装置に接続している子端末があるかを判定する(ステップS12)。自装置に接続している子端末が無い場合は、ステップS11に戻る(ステップS12でNo)。自装置に接続している子端末がある場合、取得部21は、子端末の各々に対して、情報要求パケットを送信する(ステップS12でYes、ステップS13)。取得部21は、情報要求パケットを送信した全ての子端末から応答パケットを受信するまで待機する(ステップS14でNo)。取得部21は、情報要求パケットを送信した全ての子端末から応答パケットを受信すると、受信パケット中の情報を接続情報テーブル31に記録する(ステップS14でYes、ステップS15)。
切り替え要求部23は、子端末の間に有意な受信品質の差があるかを判定する(ステップS16)。子端末の間に有意な受信品質の差が無い場合、ステップS11に戻る(ステップS16でNo)。一方、子端末の間に有意な受信品質の差がある場合、切り替え要求部23は、自装置に孫端末があるかを判定する(ステップS16でYes、ステップS17)。自装置に孫端末が無い場合、ステップS11に戻る(ステップS17でNo)。
自装置に孫端末がある場合、切り替え要求部23は、子端末の最低品質よりも受信品質が高い孫端末があるかを判定する(ステップS17でYes、ステップS18)。子端末の最低品質よりも受信品質が高い孫端末が無い場合、ステップS11に戻る(ステップS18でNo)。子端末の最低品質よりも受信品質が高い孫端末がある場合、切り替え要求部23は、子端末よりも受信品質の良い孫端末のうち、新たな接続を確立可能な通信装置10があるかを判定する(ステップS18でYes、ステップS19)。子端末よりも受信品質が良く、新たな接続を確立可能な孫端末がある場合、切り替え要求部23は、それらの通信装置10の中で受信品質が高くて下流側に接続されている装置を、新たな接続先として選択する(ステップS19でYes、ステップS20)。切り替え要求部23は、受信品質の悪い子端末に、新たな接続先として選択した通信装置10への接続の切り替えを要求する(ステップS21)。
一方、子端末よりも受信品質が良く、新たな接続を確立可能な孫端末がない場合、取得部21は、子端末よりも受信品質の良い孫端末のうちで受信品質が最高の通信装置10を選択する(ステップS19でNo、ステップS22)。取得部21は、選択した通信装置10に対して、その通信装置10の子端末と孫端末の品質情報を要求するための情報要求パケットを送信する(ステップS23)。取得部21は、選択した通信装置10からの応答パケットを受信するまで待機する(ステップS24でNo)。
選択した通信装置10から応答パケットを受信すると、得られた情報に、子端末の最低品質よりも受信品質の高い通信装置10の情報が含まれているかを判定する(ステップS24でYes、ステップS25)。応答パケット中の情報に、子端末の最低品質よりも受信品質の高い通信装置10の情報が無い場合、ステップS11に戻る(ステップS25でNo)。
一方、子端末の最低品質よりも受信品質の高い通信装置10がある場合、切り替え要求部23は、子端末の最低品質よりも受信品質の良い通信装置10のうちで接続可能な装置があるかを判定する(ステップS25でYes、ステップS26)。子端末の最低品質よりも受信品質の高い通信装置10のうちで接続可能な装置がある場合、切り替え要求部23は、ステップS20以降の処理を行う(ステップS26でYes)。
子端末の最低品質よりも受信品質の高い接続先が見つからない場合、取得部21は、子端末の最低品質よりも受信品質の高い通信装置10のうちで情報要求パケットを送信していない通信装置10があるかを判定する(ステップS26でNo、ステップS27)。子端末よりも受信品質の高い通信装置10のうちで情報要求パケットを送信していない通信装置10がある場合、取得部21は、情報要求パケットの送信を行うことを決定する(ステップS27でYes)。取得部21は、子端末よりも受信品質の高く、情報要求パケットを送信していない装置のうちで品質が相対的に高い通信装置10を情報要求パケットの送信先に選択する(ステップS28)。ステップS28の処理後、ステップS23以降の処理が行われる。一方、子端末の最低品質よりも受信品質の高い通信装置10のうちで情報要求を送信していない通信装置10がない場合、ステップS11に戻る(ステップS27でNo)。
なお、図15A、図15Bは処理の一例である。例えば、ステップS14とステップS15の処理が並行して行われても良い。この場合、取得部21は、受信した応答パケット中のデータから順に接続情報テーブル31に書き込む。また、ステップS20は、接続先の通信装置10の選択方法の一例であり、実装に応じて変更されても良い。
図16は、受信品質の比較方法の例を説明するフローチャートである。図16のフローチャートは、図15AのステップS16で行われる処理を詳細に説明している。なお、図16のステップS42での判定処理に使用する計算式は実装に応じて変更され得る。例えば、ステップS42で使用している式は、図8での説明に使用した式(1)の逆数を求める式である。
切り替え要求部23は、子端末の各々について、その子端末の受信品質と自装置の受信品質の差を算出する(ステップS41)。切り替え要求部23は、子端末との間の受信品質の差の最小値を基準とした、子端末との間の受信品質の差の最大値の比率が閾値以上であるかを判定する(ステップS42)。子端末との間の受信品質の差の最小値を基準とした、子端末との間の受信品質の差の最大値の比率が閾値以上である場合、切り替え要求部23は、子端末間での受信品質に有意な差があると判定する(ステップS42でYes、ステップS43)。子端末との間の受信品質の差の最小値を基準とした、子端末との間の受信品質の差の最大値の比率が閾値未満である場合、切り替え要求部23は、子端末間での受信品質に有意な差がないと判定する(ステップS42でNo、ステップS44)。
図17は、接続先の変更方法の例を説明するフローチャートである。図17は、図15BのステップS21の処理の後に接続処理部25で行われる処理を説明している。受信部11は、切り替え要求パケットを受信するまで待機する(ステップS51でNo)。切り替え要求パケットを取得すると、接続処理部25は、新たな接続先を特定し、接続先の切り替え処理を行う(ステップS52)。切り替え要求部23は、切り替え処理が終わるまで待機する(ステップS53でNo)。
切り替え要求部23は、切り替え要求パケットに、接続先の装置に通知する通知用IPアドレスが含まれているかを判定する(ステップS53でYes、ステップS54)。接続先の装置に通知する通知用IPアドレスが含まれていない場合、ステップS51に戻る(ステップS54でNo)。一方、接続先の装置に通知する通知用IPアドレスが含まれている場合、切り替え要求部23は、新たな接続先の通信装置10に、通知用IPアドレスが割り当てられた装置への切り替えを要求する(ステップS55)。
以上説明したように、実施形態にかかる方法では、受信品質の悪い通信装置10が上流側から下流側に移動するので、受信品質が悪い通信装置10が上流にあるために他の通信装置10の通信品質が劣化することを防ぐことができる。また、実施形態にかかる方法が適用されるシステムでは、受信品質の劣化や受信品質の劣化に伴う再送、通信の切断などが起こりにくくなるので、通信効率が良くなる。
また、実施形態にかかる方法では、ツリー状の配信システムで一部の装置を介した経路での階層が深くなることにより、受信品質の低下が起こることも防ぎやすい。例えば、ある装置の子端末の一方では受信品質が悪く、他方では受信品質が良い場合、配信システムに参加する通信装置10は、受信品質を良くするために、受信品質の良い方の子端末や受信品質の良い子端末を経由してデータを受信する装置に接続することが多い。すると、配信システムのうちの一部の子端末を介して多数の通信装置10がデータを受信するため、受信品質の良い子端末を介するルートでは階層が深くなる。しかし、実施形態にかかる方法では、子端末の内で受信品質が悪い端末は下流側に移動するので、このような階層の不均衡も生じにくい。さらに、図11を参照しながら説明したように、実施形態にかかる方法によると、受信品質の悪い端末が下流に移動した後で、受信品質の良好な端末を上流側に移動させることもできる。このため、配信システムの階層が深くなることにより、転送回数が増え、受信品質が劣化しやすくなるという事態も防止される。
<変形例>
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
子端末を下流側に移動させる際に、子端末よりも下流側の通信装置10を新たな子端末にする場合、親端末は、下流側に移動させた子端末の接続先以外の装置を新たな子端末としても良い。例えば、図11のケースC24に示すように、通信装置10Aの子端末であった通信装置10Cが、接続先を通信装置10Aから下流側の通信装置10Gに変更したとする。このとき、通信装置10Aの切り替え要求部23aは、通信装置10Cよりも受信品質が良く、通信装置10Aの孫端末か孫端末よりも下流側に接続している通信装置10から、新たな子端末とする通信装置10を選択できる。例えば、ケースC24の例では、切り替え要求部23aは、通信装置10E、通信装置10G、通信装置10Iのいずれかを、新たな子端末とすることを決定することができる。この場合、切り替え要求部23aは、新たに子端末とする通信装置10に対して、通信装置10Aに接続することを要求するための切り替え要求パケットを送信する。切り替え要求パケットを受信した通信装置10では、接続処理部25が通信装置10Aに接続するための処理を行う。中継処理部27aは、新たな子端末が通信装置10Aに接続すると、新たな子端末に対しても、データの中継処理を行う。
また、子端末同士の受信品質に有意の差があるかを判定する際に使用する指標値の計算方法は、実装に応じて変更され得る。例えば、子端末間で受信品質に有意の差があるかは、子端末の受信品質同士の差でも良い。なお、指標値の計算方法に応じて、閾値の設定値も変更され得る。
以上の説明で示したパケットフォーマットやテーブル中の情報要素は一例であり、これらは実装に応じて変更され得る。
図8の例では、子端末間での受信品質の差があるかを判定する際の例として、子端末が2台の場合を用いて説明したが、子端末の数は実装に応じて任意に変更され得る。
上述の実施形態に関し、さらに以下の付記を開示する。
(付記1)
データの配信を受けている第1の通信装置と、
前記第1の通信装置が前記データを転送する複数の転送先と、
前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置
を備え、
前記第1の通信装置は、前記複数の転送先に含まれる第2の通信装置での前記データの受信品質より、前記複数の通信装置に含まれる第3の通信装置での前記データの受信品質が良い場合、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求し、
前記第2の通信装置は、前記第1の通信装置からの要求を受信すると、接続先を前記第1の通信装置から前記第3の通信装置に変更する
ことを特徴とする通信システム。
(付記2)
前記第1の通信装置は、
前記複数の通信装置のうちで前記第2の通信装置よりも良い受信品質で前記データを受信している装置から対象装置を選択し、
前記対象装置に、前記データの転送元を前記第1の通信装置に変更することを要求し、
前記対象装置が前記第1の通信装置に接続すると、前記対象装置に前記データを転送する
ことを特徴とする付記1に記載の通信システム。
(付記3)
前記第2の通信装置は、前記第3の通信装置に接続する前の前記第2の通信装置の接続先が前記第1の通信装置であることを、前記第3の通信装置に通知し、
前記第3の通信装置が前記第1の通信装置に接続し、
前記第1の通信装置は、前記第3の通信装置との接続の確立後、前記第3の通信装置に前記データを転送する
ことを特徴とする付記1に記載の通信システム。
(付記4)
前記第1の通信装置は、
前記複数の通信装置の各々について、当該通信装置が前記データを転送中の装置に加えて他の通信装置にも前記データを配信可能な装置であるかを表わす情報を取得し、
前記複数の通信装置のうちで、前記第2の通信装置よりも前記データの受信品質が良く、前記他の通信装置に前記データを配信可能な装置を、前記第3の通信装置に選択する
ことを特徴とする付記1〜3のいずれか1項に記載の通信システム。
(付記5)
前記第1の通信装置は、
前記複数の転送先の間での前記データの受信品質の違いが大きいほど大きくなるように計算される指標値が閾値以上の場合、前記第2の通信装置の前記データの転送元を前記第3の通信装置に変更し、
前記指標値が前記閾値未満の場合、前記第2の通信装置の前記データの転送元を変更しない
ことを特徴とする付記1〜4のいずれか1項に記載の通信システム。
(付記6)
配信元から送信されたデータが配信される配信システムにおいて、
第1の通信装置は、
前記データを受信し、
第2の通信装置を含む複数の転送先に前記データを転送し、
前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第2の通信装置よりも受信品質の良い第3の通信装置を検出すると、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求し、
前記第2の通信装置は、前記第1の通信装置からの要求を受信すると、接続先を前記第1の通信装置から前記第3の通信装置に変更する
ことを特徴とする通信方法。
(付記7)
前記第1の通信装置は、
前記複数の通信装置のうちで、前記第2の通信装置よりも良い受信品質で前記データを受信している装置から対象装置を選択し、
前記対象装置に、前記データの転送元を前記第1の通信装置に変更することを要求し、
前記対象装置が前記第1の通信装置に接続すると、前記対象装置に前記データを転送する
ことを特徴とする付記6に記載の通信方法。
(付記8)
前記第1の通信装置は、
前記複数の通信装置の各々について、当該通信装置が前記データを転送中の装置に加えて他の通信装置にも前記データを配信可能な装置であるかを表わす情報を取得し、
前記複数の通信装置のうちで、前記第2の通信装置よりも前記データの受信品質が良く、前記他の通信装置に前記データを配信可能な装置を、前記第3の通信装置に選択する
ことを特徴とする付記6または7に記載の通信方法。
(付記9)
前記第1の通信装置は、
前記複数の転送先の間での前記データの受信品質の違いが大きいほど大きくなるように計算される指標値が閾値以上の場合、前記第2の通信装置の前記データの転送元を前記第3の通信装置に変更し、
前記指標値が前記閾値未満の場合、前記第2の通信装置の前記データの転送元を変更しない
ことを特徴とする付記6〜8のいずれか1項に記載の通信方法。
(付記10)
配信元から送信されたデータが配信される配信システム中の通信装置であって、
前記データを受信する受信部と、
第1の通信装置を含む複数の転送先に前記データを転送する送信部と、
前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第1の通信装置よりも受信品質の良い第2の通信装置を検出すると、前記第1の通信装置に、前記第2の通信装置から前記データを受信することを要求する制御部
を備えることを特徴とする通信装置。
(付記11)
前記制御部は、
前記複数の通信装置のうちで、前記第1の通信装置よりも良い受信品質で前記データを受信している装置から対象装置を選択し、
前記対象装置に、前記データの転送が可能であることを通知する制御パケットを生成し、
前記送信部は、前記制御パケットを前記対象装置に送信すると共に、前記対象装置との接続が確立すると、前記対象装置に前記データを転送する
ことを特徴とする付記10に記載の通信装置。
(付記12)
前記制御部は、
前記複数の通信装置の各々について、当該通信装置が前記データを転送中の装置に加えて他の通信装置にも前記データを配信可能な装置であるかを表わす情報を取得し、
前記複数の通信装置のうちで、前記第1の通信装置よりも前記データの受信品質が良く、前記他の通信装置に前記データを配信可能な装置を、前記第2の通信装置に選択する
ことを特徴とする付記10または11に記載の通信装置。
(付記13)
前記制御部は、
前記複数の転送先の間での前記データの受信品質の違いが大きいほど大きくなるように計算される指標値が閾値以上の場合、前記第1の通信装置の前記データの転送元を前記第2の通信装置に変更し、
前記指標値が前記閾値未満の場合、前記第1の通信装置の前記データの転送元を変更しない
ことを特徴とする付記10〜12のいずれか1項に記載の通信装置。
(付記14)
配信元から送信されたデータが配信される配信システムに含まれる第1の通信装置に、
前記データを取得し、
第2の通信装置を含む複数の転送先に前記データを転送し、
前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第2の通信装置よりも受信品質の良い第3の通信装置を検出すると、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求する
処理を行わせることを特徴とする通信プログラム。
(付記15)
前記複数の通信装置のうちで、前記第2の通信装置よりも良い受信品質で前記データを受信している装置から対象装置を選択し、
前記対象装置に、前記データの転送が可能であることを通知する制御パケットを生成し、
前記制御パケットを前記対象装置に送信し、
前記対象装置との接続が確立すると、前記対象装置に前記データを転送する
処理を前記第1の通信装置に行わせることを特徴とする付記14に記載の通信プログラム。
1、10 通信装置
5 サーバ
11 受信部
12 送信部
13 送受信部
20 制御部
21 取得部
22 品質算出部
23 切り替え要求部
25 接続処理部
26 データ処理部
27 中継処理部
30 記憶部
31 接続情報テーブル
101 プロセッサ
102 メモリ
103 バス
104 ネットワークインタフェース

Claims (8)

  1. データの配信を受けている第1の通信装置と、
    前記第1の通信装置が前記データを転送する複数の転送先と、
    前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置
    を備え、
    前記第1の通信装置は、前記複数の転送先に含まれる第2の通信装置での前記データの受信品質より、前記複数の通信装置に含まれる第3の通信装置での前記データの受信品質が良い場合、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求し、
    前記第2の通信装置は、前記第1の通信装置からの要求を受信すると、接続先を前記第1の通信装置から前記第3の通信装置に変更する
    ことを特徴とする通信システム。
  2. 前記第1の通信装置は、
    前記複数の通信装置のうちで前記第2の通信装置よりも良い受信品質で前記データを受信している装置から対象装置を選択し、
    前記対象装置に、前記データの転送元を前記第1の通信装置に変更することを要求し、
    前記対象装置が前記第1の通信装置に接続すると、前記対象装置に前記データを転送する
    ことを特徴とする請求項1に記載の通信システム。
  3. 前記第2の通信装置は、前記第3の通信装置に接続する前の前記第2の通信装置の接続先が前記第1の通信装置であることを、前記第3の通信装置に通知し、
    前記第3の通信装置が前記第1の通信装置に接続し、
    前記第1の通信装置は、前記第3の通信装置との接続の確立後、前記第3の通信装置に前記データを転送する
    ことを特徴とする請求項1に記載の通信システム。
  4. 前記第1の通信装置は、
    前記複数の通信装置の各々について、当該通信装置が前記データを転送中の装置に加えて他の通信装置にも前記データを配信可能な装置であるかを表わす情報を取得し、
    前記複数の通信装置のうちで、前記第2の通信装置よりも前記データの受信品質が良く、前記他の通信装置に前記データを配信可能な装置を、前記第3の通信装置に選択する
    ことを特徴とする請求項1〜3のいずれか1項に記載の通信システム。
  5. 前記第1の通信装置は、
    前記複数の転送先の間での前記データの受信品質の違いが大きいほど大きくなるように計算される指標値が閾値以上の場合、前記第2の通信装置の前記データの転送元を前記第3の通信装置に変更し、
    前記指標値が前記閾値未満の場合、前記第2の通信装置の前記データの転送元を変更しない
    ことを特徴とする請求項1〜4のいずれか1項に記載の通信システム。
  6. 配信元から送信されたデータが配信される配信システムにおいて、
    第1の通信装置は、
    前記データを受信し、
    第2の通信装置を含む複数の転送先に前記データを転送し、
    前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第2の通信装置よりも受信品質の良い第3の通信装置を検出すると、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求し、
    前記第2の通信装置は、前記第1の通信装置からの要求を受信すると、接続先を前記第1の通信装置から前記第3の通信装置に変更する
    ことを特徴とする通信方法。
  7. 配信元から送信されたデータが配信される配信システム中の通信装置であって、
    前記データを受信する受信部と、
    第1の通信装置を含む複数の転送先に前記データを転送する送信部と、
    前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第1の通信装置よりも受信品質の良い第2の通信装置を検出すると、前記第1の通信装置に、前記第2の通信装置から前記データを受信することを要求する制御部
    を備えることを特徴とする通信装置。
  8. 配信元から送信されたデータが配信される配信システムに含まれる第1の通信装置に、
    前記データを取得し、
    第2の通信装置を含む複数の転送先に前記データを転送し、
    前記複数の転送先のいずれかを介して前記データを受信する複数の通信装置のうちで、前記第2の通信装置よりも受信品質の良い第3の通信装置を検出すると、前記第2の通信装置に、前記第3の通信装置から前記データを受信することを要求する
    処理を行わせることを特徴とする通信プログラム。
JP2015140104A 2015-07-14 2015-07-14 通信システム、通信装置、通信方法、および、通信プログラム Withdrawn JP2017022631A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015140104A JP2017022631A (ja) 2015-07-14 2015-07-14 通信システム、通信装置、通信方法、および、通信プログラム
US15/192,197 US20170019463A1 (en) 2015-07-14 2016-06-24 Communication system, communication device and communication method
CN201610529536.1A CN106357533A (zh) 2015-07-14 2016-07-06 通信***、通信设备及通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015140104A JP2017022631A (ja) 2015-07-14 2015-07-14 通信システム、通信装置、通信方法、および、通信プログラム

Publications (1)

Publication Number Publication Date
JP2017022631A true JP2017022631A (ja) 2017-01-26

Family

ID=57776527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015140104A Withdrawn JP2017022631A (ja) 2015-07-14 2015-07-14 通信システム、通信装置、通信方法、および、通信プログラム

Country Status (3)

Country Link
US (1) US20170019463A1 (ja)
JP (1) JP2017022631A (ja)
CN (1) CN106357533A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10560407B2 (en) * 2016-10-06 2020-02-11 Sap Se Payload description for computer messaging
US11973184B2 (en) 2018-08-03 2024-04-30 Kaneka Corporation Garnet-type composite metal oxide and method for producing same
CN111262749B (zh) * 2018-11-30 2023-05-23 华为技术有限公司 一种检测网络可靠性的方法及设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7864715B2 (en) * 2005-03-28 2011-01-04 Kyocera Corporation Data communication method, communication server system, and communication terminal
US8116216B2 (en) * 2005-09-22 2012-02-14 Sharp Kabushiki Kaisha Communication terminal apparatus, communication control apparatus, communication system, and communication method
WO2011104874A1 (ja) * 2010-02-26 2011-09-01 富士通株式会社 無線通信ネットワークシステム,無線通信装置,移動端末,接続先切替判定方法,および接続先変更判定方法
JP5482366B2 (ja) * 2010-03-29 2014-05-07 ソニー株式会社 通信制御方法、通信システム、および管理サーバ
US9451415B2 (en) * 2011-06-17 2016-09-20 Qualcomm Incorporated Cooperative data transport
GB2520451B (en) * 2012-03-20 2015-09-30 Media Network Services As Data distribution system
CN104412655B (zh) * 2013-09-27 2018-10-02 华为技术有限公司 小区切换的控制设备及方法
US9270529B2 (en) * 2013-10-22 2016-02-23 Landis+Gyr Innovations, Inc. Distributed data transmission in data networks

Also Published As

Publication number Publication date
CN106357533A (zh) 2017-01-25
US20170019463A1 (en) 2017-01-19

Similar Documents

Publication Publication Date Title
CN107852362B (zh) 网格网络***和方法
KR101739436B1 (ko) 멀티-홉 무선 홈 네트워크에서 대역폭 인식 라우팅을 채널 선택 및 채널 스위칭과 결합
JP4807701B2 (ja) 移動端末装置、制御方法及び移動通信システム
US20090073893A1 (en) Routing Method in an Ad Hoc Network
WO2005091576A1 (ja) 無線通信装置および経路探索方法
JP6183373B2 (ja) 配信装置、通信システム、負荷分散方法および負荷分散プログラム
JP5400630B2 (ja) 無線マルチホップ通信装置及びその送信電力制御方法
US8406138B2 (en) Wireless communication terminal and QoS information collection method
JP7003539B2 (ja) アドホックネットワーク経路構築システム、ノード、センターノード及びアドホックネットワーク経路構築方法
JP2017022631A (ja) 通信システム、通信装置、通信方法、および、通信プログラム
JP5958293B2 (ja) 通信方法、通信プログラム、および、ノード装置
JP6665793B2 (ja) アドホックネットワーク経路構築システム、ノード、センターノード及びアドホックネットワーク経路構築方法
JP6264856B2 (ja) ノード装置、制御プログラム、無線通信システム、及びデータ通信方法
JP4394537B2 (ja) アドホックネットワークにおけるデータ送信方法および端末装置
JP2017017630A (ja) 接続方法、通信装置、通信システム、および、通信プログラム
WO2018150514A1 (ja) 無線アドホックネットワークにおける通信端末、通信方法及び通信プログラム
CN113055945A (zh) 负载均衡方法及移动自组织网络
KR20130116472A (ko) 양방향 트래픽을 위한 물리 계층 네트워크 코딩에 기반한 스케줄링 방법 및 장치
KR101473868B1 (ko) 컨텐츠 중심 네트워킹 환경에서 노드들 사이의 통신 방법 및 노드
JP2007243932A (ja) 無線データ通信システム
US9749815B2 (en) Node and a method of communicating among a plurality of nodes in content-centric networking environment
US20150256637A1 (en) Terminal, message distribution system, message distribution method, and computer-readable medium
CN103701952A (zh) 一种业务数据的下行传输方法及分组数据网关
US7870292B2 (en) Network node and associated methodology of expanding a network topology through peer selection
JP6665697B2 (ja) 過去情報提供プログラム、過去情報提供方法及び過去情報提供装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180413

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20190121