JP2023042744A - 中継サーバを用いたピア・ツー・ピア通信システム - Google Patents
中継サーバを用いたピア・ツー・ピア通信システム Download PDFInfo
- Publication number
- JP2023042744A JP2023042744A JP2021150045A JP2021150045A JP2023042744A JP 2023042744 A JP2023042744 A JP 2023042744A JP 2021150045 A JP2021150045 A JP 2021150045A JP 2021150045 A JP2021150045 A JP 2021150045A JP 2023042744 A JP2023042744 A JP 2023042744A
- Authority
- JP
- Japan
- Prior art keywords
- communication
- terminal
- turn server
- data
- relay
- 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 369
- 230000005540 biological transmission Effects 0.000 description 36
- 238000000034 method Methods 0.000 description 36
- 238000012217 deletion Methods 0.000 description 10
- 230000037430 deletion Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000007850 degeneration Effects 0.000 description 5
- 230000006866 deterioration Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
Images
Landscapes
- Communication Control (AREA)
Abstract
【課題】 インターネットを介してTURNサーバを用いてピア・ツー・ピア通信を実行するシステムに於いて、端末とTURNサーバとの間を複数のアクセス回線にて通信可能とし、通信状態の安定化を図る。【解決手段】 インターネットを介してTURNサーバを用いたピア・ツー・ピア方式の端末間通信を実行するシステムは、端末Tr1、Tr2がインターネットへ接続する通信手段CM101、102、201、202を少なくとも二つ有し、端末が少なくとも二つの通信手段のそれぞれを用いた別々の通信回線を介してインターネットへ接続され、通信回線のそれぞれを介してTURNサーバ(TURN-S)と通信可能に接続される。【選択図】 図1
Description
本発明は、インターネットを介してピア・ツー・ピア(P2P)方式にて端末間の通信を行うための技術に係り、より詳細には、ピア・ツー・ピア方式の端末間の通信を中継サーバとしてTURN(Traversal Using Relay around NAT)サーバを通じて実行する技術に係る。
インターネットを介して高品質・低遅延のメディア伝送を行うP2P方式の通信(P2P通信)に於いて、NAT(Network Address Translation:ネットワークアドレス変換)の制約を越えて端末間の通信を確立する一つの方法として、中継サーバ(TURNサーバ)を用いたプロトコルが広く利用されている。例えば、特許文献1に於いては、P2P通信を伴うアプリケーション、サービス、システム等の構築を容易にするための技術として、ネットワーク事業者により運営されるSTUNサーバ、TURNサーバ及び認証サーバを介しWebRTC(Web Real-Time Communication)を利用してP2P通信を実行する通信システムであって、STUNサーバ及びTURNサーバにアクセス可能であると判断した認証サーバにより発行された認証キーを管理する認証機能と、WebRTCに実装されたNAT/FW(Network Address Translation/Firewall)を通過するためのICE(Interactive Connectivity Establishment)を実行することによって、P2P通信のためのIPアドレスを取得するICE機能とを有するシステムが提案されている。また、通信における可用性を向上し、品質劣化を低減してレジリエンスを高めるために、複数の通信手段・回線を活用するマルチパストランスポート技術が提案され、実用化されている。
上記の如きTURNサーバを中継サーバとして用いたP2P方式の通信プロトコル(「TURN」と称される通信プロトコル)に於いては、端的に述べれば、インターネットに接続されたTURNサーバに於いて、P2P通信を行う端末の一方から他方へ送るデータ(パケット)を受容する領域(リレー用領域)が割り当てられ、端末のそれぞれは、ルータ及びISPゲートウェイを通じて、インターネットを介して、TURNサーバのリレー用領域にデータを送り、TURNサーバがリレー用領域のデータを宛先の端末へ(宛先のルータ及びISPゲートウェイを通じて)送信することにより、端末間のP2P通信が達成される(図6参照)。P2P通信に於いては、本来であれば、通信を実行する端末同士で直接にデータの送受信が実行されればよいところ、現在普及しているインターネットプロトコルのIPv4に従ったネットワークシステムに於いては、端的に述べれば、端末が接続されるルータのインターネット側のネットワークでは、ルータを識別するためにグローバルIPアドレスが使用され、ルータの端末側のネットワークでは、端末を識別するためにプライベートIPアドレスが使用され、端末がインターネットを介してデータの送受信を行う際には、ルータにて、グローバルIPアドレスとプライベートIPアドレスとを、端末に於いてプログラムが使用するポート番号も含めて変換するNAT(又はNAPT)が実行されるため、インターネットを介して端末同士が、相手の端末を直接にIPアドレスにより識別して、P2P方式にてデータを送受信することが困難となっている。上記のTURNサーバを用いたプロトコルは、上記の如きそのままでは困難なインターネットを介した端末同士のP2P通信を可能にする一つの手法として用いられている。
上記のTURNサーバを介したP2P通信を実際に確立する手順に於いては、先ず、端末の一方(クライアント端末)が、インターネットへの通信回線(アクセス回線)を通じて、TURNサーバへP2P通信の中継の要求を出し、そうすると、TURNサーバは、要求が送られてきた回線を通じて送受信されるデータを保存するリレー用領域を割り当て、クライアント端末に対し、中継の許可と、送受信されるデータのリレー用領域を識別するアドレス情報(中継識別子:トランスポートアドレス)とを送信する。これにより、クライアント端末は、中継識別子を用いてTURNサーバのリレー用領域へデータを送ることが可能となり、クライアント端末がTURNサーバへデータを送ると、そのデータは、TURNサーバによって、宛先の端末へ送信される。そして、TURNサーバから宛先の端末に送られたデータには、TURNサーバのリレー用領域のアドレスが含まれているので、宛先の端末がリレー用領域のアドレスを用いてTURNサーバのリレー用領域へデータを送信すると、そのデータはリレー用領域に保存され、そこからTURNサーバによってクライアント端末へ転送されることとなる。
かかるTURNサーバを介したP2P通信に於いては、上記の如く、端末とTURNサーバとの間の通信は、端末がTURNサーバへ中継要求を送信した際に用いた単一の通信回線を通じて実行される。この点に関し、一般に、通信回線は通信状況が変化することがあるので、端末とTURNサーバとの間の通信回線が一つの場合には、その回線の状態が不安定になると、通信品質が低下することとなり、良好なP2P通信が達成できなくなり得る。そのような状況を回避し、P2P通信の安定性を維持できるようにする一つの手法としては、端末とTURNサーバとの間に於いて複数の通信回線を通じて通信が確立しておくことが考えられる。
かくして、本発明の一つの課題は、インターネットを介してTURNサーバを用いてP2P通信を実行するシステムに於いて、端末とTURNサーバとの間を複数の通信回線にて通信可能とし、通信状態の安定化を図ることである。
また、本発明のもう一つの課題は、上記の如くP2P通信を実行するシステムに於いて、端末とTURNサーバとの間を複数の通信回線にて通信可能にする構成を提供することである。
本発明によれば、上記の課題は、インターネットを介してTURNサーバを用いたピア・ツー・ピア方式の端末間通信を実行するシステムであって、端末が前記インターネットへ接続する通信手段を少なくとも二つ有し、前記端末が前記少なくとも二つの通信手段のそれぞれを用いた別々の通信回線を介してインターネットへ接続され、前記通信回線のそれぞれを介して前記TURNサーバと通信可能に接続されるシステムによって達成される。
上記の構成に於いて、「端末」は、有線通信、無線通信又はその両方により、ルータを介して、インターネットへ通信可能に接続される任意の通信端末であってよく、パーソナルコンピュータ、タブレット端末、スマートフォン端末、携帯電話端末などであってよい。端末は、通常、ルータとISPのゲートウェイを通じてインターネットへ接続される(「インターネットへ接続」とは、インターネットに対してデータの送受信が可能な状態となることである。)。「ピア・ツー・ピア方式の端末間通信」とは、複数の対等な端末同士の間でデータの送受信が実行される通信である。「TURNサーバ」とは、上記の如き「TURN」と称される通信プロトコルに於いて、端末からのデータを受容するために割り当てられるリレー用領域を有し、端末からのデータをリレー用領域にて受信して宛先へ送信する機能を果たす中継サーバである。「TURNサーバ」は、インターネットに接続可能なコンピュータ装置であってよい(通常、ISPのゲートウェイを介してインターネットへ接続される。)。端末の通信手段とは、ネットワーク通信のための通信プロトコル及びその通信プロトコルに従って作動する通信機器(又は通信装置)の組み合わせである。「通信回線」とは、端末がインターネットへ接続されるための有線又は無線の通信路(アクセス回線)であり、個々の通信回線に於いてルータとISPのゲートウェイが設けられ、それらを介して、端末がインターネットへ接続される。なお、本発明に於いては、端末は、少なくとも二つの通信手段を有し、それぞれの通信手段が別々の通信回線を通じて(同時に又は時分割にて)インターネットへ接続される。「前記通信回線のそれぞれを介して前記TURNサーバと通信可能に接続される」状態とは、TURNサーバが、端末をインターネットに接続する通信回線のそれぞれを通じて、端末からのデータをリレー用領域へ受信できるよう設定され、リレー用領域から端末へデータを送信できるよう設定されている状態である。
上記の本発明のシステムに於いては、TURNサーバを用いたピア・ツー・ピア通信を実行する端末は、TURNサーバに対して、少なくとも二つの通信経路を通じてデータの送受信が可能となる。かかる構成によれば、端末からTURNサーバの間でデータの送受信が可能な回線が複数併用されることとなり、それらのうちのいずれかの回線の通信状況が不安定になったとしても、その他の回線にて安定なピア・ツー・ピア通信が維持されることが期待される。即ち、複数の回線の併用によって、通信品質の劣化が低減され、通信が途絶したとしても、復帰まで時間の短縮が期待される。例えば、端末の移動に伴って、通信手段の変化や接続するネットワークの変化が発生した場合においても、1つ以上の通信回線にてTURNサーバによる中継が継続できる間は、中継セッションが継続されるので、モビリティ(移動体)に於いても有利にピア・ツー・ピア通信を維持できることが期待される。また、複数回線の併用により、通信可能な帯域の増大と冗長利用によって、通信品質劣化の低減が期待される。
上記の本発明のシステムに於いて、端末とTURNサーバとの間に於ける少なくとも二つの通信手段のそれぞれに用いている通信回線は、種々の態様にて、データの送受信に使用されてよい。一つの態様に於いては、同じ通信内容(データ)が複数の通信回線を用いて伝送されてよく、その場合には、ネットワークにおけるパケットロスが低減され、ネットワークの可用性も向上されることが期待される。或いは、別の態様に於いては、複数の通信回線に於いて互いに異なる通信内容(データ)が伝送されてよく、その場合には、通信帯域が増大し、通信速度の高速化が期待される。また、通信回線と通信手段の特性並びに通信内容の性質等に応じて、利用する通信手段と通信回線の選択が制御されてもよい。
更に、上記の本発明のシステムに於いて、端末及びTURNサーバが、それらの間の通信回線の通信状況に基づいて、データの送受信に於ける通信回線の利用の態様を選択又は制御できるようになっていてよい。即ち、端末は、TURNサーバとの通信に於いて、端末に於ける通信手段の利用状況の情報をTURNサーバへ伝達し、TURNサーバは、かかる端末からの通信手段の利用状況の情報に基づいて端末へのデータ送信に於いて使用する通信回線を選択でき、或いは、各通信回線の利用度合を調節できるようになっていてよい。また、同様に、TURNサーバは、端末との通信に於いて、TURNサーバに於ける通信手段の利用状況の情報を端末へ伝達し、端末は、かかるTURNサーバからの通信手段の利用状況の情報に基づいてTURNサーバへのデータ送信に於いて使用する通信回線を選択でき、或いは、各通信回線の利用度合を調節できるようになっていてよい。各通信回線の利用度合の調節に於いては、例えば、各通信回線の時々刻々の回線負荷に応じて通信に於ける優先度を決定し(優先度は、回線負荷が大きいほど、小さくなるように決定されてよい。)、優先度に応じて、データの送信時の通信回線の利用比率が制御されてよい(通信回線の優先度が高いほど、利用比率が増大されてよい。)。
なお、上記の本発明のシステムに於いて、端末とTURNサーバとの間にて各通信回線を通信可能な状態とするか否かは、適時、制御されてよい。即ち、端末とTURNサーバとの間にて通信可能な状態にされる通信回線及びその数は、任意に選択又は制御されてよい。端末とTURNサーバとの間にて各通信回線を通信可能な状態にする処理(通信を開通する処理)又は通信を遮断する処理は、端末からTURNサーバへ中継要求又は中継削除要求を送信し、TURNサーバから端末へ中継許可又は削除確認を送信することにより達成されてよい。
かくして、上記の本発明の構成に於いては、TURNサーバを用いたP2P通信に於いて、端末とTURNサーバとの間に於いて、複数の通信経路を設定し、それらを併用可能とすることにより、通信状況の安定化が図られる。また、本発明のシステムによれば、端末とTURNサーバとの間に複数の通信回線が併用されることで、通信の冗長化を通した品質の向上や可用帯域の向上を図ることが可能となる。
本発明のその他の目的及び利点は、以下の本発明の好ましい実施形態の説明により明らかになるであろう。
Tr1、2…端末1、2
r1~r4…ルータ
GW1~GW4…ゲートウェイ
CM…通信手段
TURN-S…TURNサーバ(中継器)
RS…リレー用領域
r1~r4…ルータ
GW1~GW4…ゲートウェイ
CM…通信手段
TURN-S…TURNサーバ(中継器)
RS…リレー用領域
本実施形態に於けるTURNサーバを用いたP2P通信の基本構成
本実施形態は、インターネットに接続された端末間に於いてTURNサーバ(TURN-S)を用いてP2P通信を実行する通信システムに適用される。図6を参照して、発明の概要の欄に於いて既に簡単に説明された如く、現在普及しているIPv4のインターネットでは、端末Tr1、Tr2は、それぞれ、ルータr1、r3とゲートウェイGW1、GW3を通じてインターネットに接続され、インターネットに於いて、ルータr1、r3がグローバルIPアドレスにより識別され、端末Tr1、Tr2がルータの接続されたLANに於いてプライベートIPアドレスにより識別され、端末Tr1、Tr2がインターネットにてデータの送受信を行う場合には、端末を識別するためにルータr1、r3のNAT機能によりプライベートIPアドレスとグローバルIPアドレスとの変換が為される。そのために、或るルータr1に接続された端末Tr1が、インターネットを介して別のルータr3に接続された端末Tr2との間で直接にデータの送受信を実行するには、互いにルータr1、r3に於けるNAT機能に於けるIPアドレスの変換を越えて相手を識別できるようになっていること(NAT越え)が必要となるところ、通常、直接に相手の端末のプライベートIPアドレスを知ることは困難であるので、各端末Tr1、Tr2が直接に相手の端末のIPアドレスを指定してP2P方式にてデータの送受信を行うことは困難となっている。そこで、インターネットを介した端末間のP2P通信にてデータの送受信を行う手法の一つとして、上記の如きTURNサーバにより端末間に送受信されるデータを中継させる技術が実用化されている。TURNサーバを用いた端末間のP2P通信に於いては、TURNサーバに、そのリソースから、端末間にて送受信されるデータを保存する領域(リレー用領域RS)が割り当てられ、一方の端末から他方の端末にデータ(パケット)が送信されるときには、一方の端末からリレー用領域RSへデータが送信され、TURNサーバがリレー用領域RSに送信されたデータを他方の端末へ転送することとなる(端的に述べれば、TURNサーバは、P2P通信する各端末からアクセスされることで各端末へデータを伝送するためのIPアドレスとポート番号を知ることができるので、端末間にてデータ伝送の中継ができることとなる。)。
本実施形態は、インターネットに接続された端末間に於いてTURNサーバ(TURN-S)を用いてP2P通信を実行する通信システムに適用される。図6を参照して、発明の概要の欄に於いて既に簡単に説明された如く、現在普及しているIPv4のインターネットでは、端末Tr1、Tr2は、それぞれ、ルータr1、r3とゲートウェイGW1、GW3を通じてインターネットに接続され、インターネットに於いて、ルータr1、r3がグローバルIPアドレスにより識別され、端末Tr1、Tr2がルータの接続されたLANに於いてプライベートIPアドレスにより識別され、端末Tr1、Tr2がインターネットにてデータの送受信を行う場合には、端末を識別するためにルータr1、r3のNAT機能によりプライベートIPアドレスとグローバルIPアドレスとの変換が為される。そのために、或るルータr1に接続された端末Tr1が、インターネットを介して別のルータr3に接続された端末Tr2との間で直接にデータの送受信を実行するには、互いにルータr1、r3に於けるNAT機能に於けるIPアドレスの変換を越えて相手を識別できるようになっていること(NAT越え)が必要となるところ、通常、直接に相手の端末のプライベートIPアドレスを知ることは困難であるので、各端末Tr1、Tr2が直接に相手の端末のIPアドレスを指定してP2P方式にてデータの送受信を行うことは困難となっている。そこで、インターネットを介した端末間のP2P通信にてデータの送受信を行う手法の一つとして、上記の如きTURNサーバにより端末間に送受信されるデータを中継させる技術が実用化されている。TURNサーバを用いた端末間のP2P通信に於いては、TURNサーバに、そのリソースから、端末間にて送受信されるデータを保存する領域(リレー用領域RS)が割り当てられ、一方の端末から他方の端末にデータ(パケット)が送信されるときには、一方の端末からリレー用領域RSへデータが送信され、TURNサーバがリレー用領域RSに送信されたデータを他方の端末へ転送することとなる(端的に述べれば、TURNサーバは、P2P通信する各端末からアクセスされることで各端末へデータを伝送するためのIPアドレスとポート番号を知ることができるので、端末間にてデータ伝送の中継ができることとなる。)。
図6に模式的に描かれているTURNサーバを用いたP2P通信を行うシステムに於いては、従前に於いて、各端末は、TURNサーバに対して、一つのルータとゲートウェイを介した一つの通信回線(アクセス回線)を通じて、インターネットを経由してデータの送受信が実行されるよう構成されている。即ち、TURNサーバは、各端末から一つの通信回線を通って送られてきたデータを受信し、宛先の端末へ(その宛先のための)一つの通信回線を通ってデータを送信するよう構成されている。かかる構成の場合、各端末のTURNサーバへのデータの送受信に使用しているインターネットへの通信回線の通信状況が不安定化すると、P2P通信の品質劣化、通信の途絶、通信途絶から復帰までの時間の長期化などの不具合が生ずる場合がある。
ところで、一つの端末は、インターネットに対して、単一の通信回線のみにて接続されている場合もあるが、一つの端末に複数の通信手段を搭載し、同時に、複数の通信回線を通じて、インターネットへ接続可能な構成が提案されている(マルチパストランスポート技術)。即ち、図1に模式的に描かれている如く、一つの端末Tr1が、同時に複数の、それぞれ別々のグローバルIPアドレスが割り当てされたルータr1、r2及びゲートウェイGW1、GW2を介した通信回線を通じてインターネットに接続され、これにより、複数の通信回線のうちのいずれかが不安定化しても、インターネットへの良好な接続が維持できるようなり、通信に於ける可用性の向上と共に、通信の品質劣化を低減し、レジリエンスが高められることが期待される。
端末が、上記の如きマルチパストランスポート技術に従って、複数の通信回線を通じてインターネットに接続されているのであれば、そのような端末に於いてTURNサーバを用いたP2P通信を実行する場合、図1に描かれている如く、TURNサーバのリレー用領域RSが、端末から、その端末をインターネットに接続している複数の通信回線のそれぞれを通じてデータを受信でき、また、端末へ、かかる複数の通信回線のそれぞれを通じてデータを送信できるようにすることで、P2P通信に於いてもマルチパストランスポート技術による恩恵を享受でき、可用性の向上、通信の品質劣化の低減及びレジリエンスの改善が達成できると考えられる。そこで、本実施形態に於いては、図1に描かれている如く、P2P通信に参加する各端末Tr1、Tr2に於いて、複数の通信手段CM101、102、CM201、202を設け、それぞれの通信手段が、別々のルータr1~4、ゲートウェイGW1~4を介した通信回線を通じてインターネットに接続され、TURNサーバに於いて、そのリレー用領域RSは、端末Tr1、Tr2からの及び端末Tr1、Tr2へのデータパケットを、それぞれの通信手段の接続された通信回線を介して、送受信するよう設定される。かかる構成により、複数回線を併用して、端末間のP2P通信が達成され、通信の冗長化を通した品質の向上や可用帯域の向上を図ることが可能となる。
端末とTURNサーバの構成
(a)端末の構成
本実施形態のシステムに於いて用いられる端末は、有線通信、無線通信又はその両方により、ルータを介して、インターネットへ通信可能に接続される任意の通信端末であってよく、パーソナルコンピュータ、タブレット端末、スマートフォン端末、携帯電話端末などであってよい。図2(A)を参照して、本実施形態のシステムに於ける端末は、基本的には、P2P通信を実行できる構成の端末であってよいところ、本実施形態の場合には、特に、端末は、複数の通信回線によりインターネットへ接続されるので、少なくとも二つの通信手段101、102等を有する。各通信手段は、通信機器a、b(有線通信器、WiFi通信器、携帯電話通信器など)、と通信手順A(又はB)(トランスポート層のプロトコルTCP、UDP等、インターネット層のプロトコルIP)とから構成される。そして、端末に於いては、アプリ部、通信制御部及びメモリが設けられ、アプリ部に於いては、WebRTC等に対応した種々のアプリケーションプログラムが実行され、そこで処理されてP2P通信の相手の端末へ送られるデータが通信制御部に於いて送信用のデータ(パケット)に変換されて、通信手段から送信される一方、相手の端末からのデータが通信手段にて受信された後、通信制御部にて、アプリ部で処理可能な状態に変換されて、アプリ部に与えられる。なお、インターネットとの間のデータの送受信は、予め定められた通信プロトコルに従って実行される。また、特に、TURNサーバを介したP2P通信に於けるデータの送受信に於いては、TURNサーバのリレー用領域RSを識別するためのトランスポートアドレス等などの情報及び相手の端末との間でP2P方式のセッションを実行するための情報(中継器セッション情報)、データを読み込む端末が正しい端末であることを保証し認証するための認証情報(鍵情報、乱数情報等)が送受信されるデータに付加されるので、そのための情報がメモリ部に保存され、通信制御部は、適時、それらの情報を参照して、データの送受信を実行する。更に、後に説明される如く、本実施形態に於いては、複数の通信回線を介してデータの送受信が実行されるところ、いずれの通信回線にてどのようにデータを送信するかを決定するために参照される情報(「通信制御ポリシ」と称する。)が送受信されるデータに付加されてよく、通信制御ポリシを保存する領域がメモリ部に設けられ、通信制御部は、データの送信を実行する際に、通信制御ポリシを参照するように構成されていてよい。
(a)端末の構成
本実施形態のシステムに於いて用いられる端末は、有線通信、無線通信又はその両方により、ルータを介して、インターネットへ通信可能に接続される任意の通信端末であってよく、パーソナルコンピュータ、タブレット端末、スマートフォン端末、携帯電話端末などであってよい。図2(A)を参照して、本実施形態のシステムに於ける端末は、基本的には、P2P通信を実行できる構成の端末であってよいところ、本実施形態の場合には、特に、端末は、複数の通信回線によりインターネットへ接続されるので、少なくとも二つの通信手段101、102等を有する。各通信手段は、通信機器a、b(有線通信器、WiFi通信器、携帯電話通信器など)、と通信手順A(又はB)(トランスポート層のプロトコルTCP、UDP等、インターネット層のプロトコルIP)とから構成される。そして、端末に於いては、アプリ部、通信制御部及びメモリが設けられ、アプリ部に於いては、WebRTC等に対応した種々のアプリケーションプログラムが実行され、そこで処理されてP2P通信の相手の端末へ送られるデータが通信制御部に於いて送信用のデータ(パケット)に変換されて、通信手段から送信される一方、相手の端末からのデータが通信手段にて受信された後、通信制御部にて、アプリ部で処理可能な状態に変換されて、アプリ部に与えられる。なお、インターネットとの間のデータの送受信は、予め定められた通信プロトコルに従って実行される。また、特に、TURNサーバを介したP2P通信に於けるデータの送受信に於いては、TURNサーバのリレー用領域RSを識別するためのトランスポートアドレス等などの情報及び相手の端末との間でP2P方式のセッションを実行するための情報(中継器セッション情報)、データを読み込む端末が正しい端末であることを保証し認証するための認証情報(鍵情報、乱数情報等)が送受信されるデータに付加されるので、そのための情報がメモリ部に保存され、通信制御部は、適時、それらの情報を参照して、データの送受信を実行する。更に、後に説明される如く、本実施形態に於いては、複数の通信回線を介してデータの送受信が実行されるところ、いずれの通信回線にてどのようにデータを送信するかを決定するために参照される情報(「通信制御ポリシ」と称する。)が送受信されるデータに付加されてよく、通信制御ポリシを保存する領域がメモリ部に設けられ、通信制御部は、データの送信を実行する際に、通信制御ポリシを参照するように構成されていてよい。
(b)TURNサーバの構成
本実施形態のシステムに於いて用いられるTURNサーバは、基本的な構成に於いては、通常のTURNプロトコルが実行可能なサーバコンピュータ装置であってよい。一つの態様に於いては、図2(B)を参照して、TURNサーバは、通信機器eと通信手順Aとから構成される通信手段501と、通信制御部と、中継制御部と、メモリ部とを有する。通信手段501は、インターネットに接続され、P2P通信を実行する端末からデータを受信し、そのデータを相手の端末に送信する。通信制御部は、インターネットを経由して端末から送られてきたデータを受信するための処理と端末へ送るデータを送信するための処理とを実行し、中継制御部は、一方の端末から他方の端末へ送信するデータを保存するリレー用領域を有し、リレー用領域にて一方の端末からのデータを受容し、リレー用領域から宛先の端末へデータを送出する処理を実行する。また、かかる通信制御部及び中継制御部によるデータの送受信に於いても、端末の場合と同様に、メモリ部に記憶された中継器セッション情報、認証情報及び通信制御ポリシが適時参照される。
本実施形態のシステムに於いて用いられるTURNサーバは、基本的な構成に於いては、通常のTURNプロトコルが実行可能なサーバコンピュータ装置であってよい。一つの態様に於いては、図2(B)を参照して、TURNサーバは、通信機器eと通信手順Aとから構成される通信手段501と、通信制御部と、中継制御部と、メモリ部とを有する。通信手段501は、インターネットに接続され、P2P通信を実行する端末からデータを受信し、そのデータを相手の端末に送信する。通信制御部は、インターネットを経由して端末から送られてきたデータを受信するための処理と端末へ送るデータを送信するための処理とを実行し、中継制御部は、一方の端末から他方の端末へ送信するデータを保存するリレー用領域を有し、リレー用領域にて一方の端末からのデータを受容し、リレー用領域から宛先の端末へデータを送出する処理を実行する。また、かかる通信制御部及び中継制御部によるデータの送受信に於いても、端末の場合と同様に、メモリ部に記憶された中継器セッション情報、認証情報及び通信制御ポリシが適時参照される。
上記のTURNサーバの構成に関して、TURNサーバとインターネットとの間の通信品質が十分に高い場合には、図2(B)に例示にされている如く、TURNサーバが一つの通信手段501によってインターネットに接続され、端末がP2P通信に於いて使用するインターネットへの複数の回線にて送受信されるデータを一つの通信手段501にて送受するようになっていてよい。また、TURNサーバとインターネットとの間の通信品質が十分に高い場合の別の態様として、図2(C)に例示されている如く、TURNサーバは、一つの通信機器eによりインターネットに接続されるが、端末側の複数の回線に於ける通信手順A、Bに対応して通信手順A、Bを用いた通信手段501、502が構成され、端末がP2P通信に於いて使用するインターネットへの複数の回線のうちで通信手順Aを用いた回線との間のデータの送受信は、それと同じ通信手順Aを用いた通信手段501にて実行され、通信手順Bを用いた回線との間のデータの送受信は、それと同じ通信手順Bを用いた通信手段502にて実行される、というように、TURNサーバに於いて、複数の通信手段のうちから、端末の通信手順、通信機器の特性に適合して使用される通信手順が選択可能であってよい。更に、TURNサーバとインターネットとの間の通信品質が十分に高くない場合には、図2(D)に例示されている如く、TURNサーバに於いて、複数の通信手段501、502が別々の通信機器e、dを用いて、別々にインターネットに接続されてよい。そして、P2P通信の中継に於いては、端末の複数の通信手段101、102に対してTURNサーバの別々の通信手段501、502が割り当てられ、データの送受信の中継に於いて使用されてよい。例えば、端末の通信手段101を通じたデータの送受信は、TURNサーバ通信手段501を用いて行われ、端末の通信手段102を通じたデータの送受信は、TURNサーバ通信手段502を用いて行われるというように設定されてよい。
複数の通信回線の併用の態様
図1に描かれている如く、本実施形態のTURNサーバを用いたP2P通信を実行するシステムに於いては、端末は、複数の通信回線にてインターネットに接続され、それら複数の通信回線を通じて、端末とTURNサーバのリレー用領域RSとの間にてデータの送受信が実行される。即ち、本実施形態の構成に於いては、端末とTURNサーバとの間のデータの伝送に、端末をインターネットに接続する複数の通信回線が併用されることなる。かかる構成に於いて、複数の通信回線を種々の態様にて併用されてよい。
図1に描かれている如く、本実施形態のTURNサーバを用いたP2P通信を実行するシステムに於いては、端末は、複数の通信回線にてインターネットに接続され、それら複数の通信回線を通じて、端末とTURNサーバのリレー用領域RSとの間にてデータの送受信が実行される。即ち、本実施形態の構成に於いては、端末とTURNサーバとの間のデータの伝送に、端末をインターネットに接続する複数の通信回線が併用されることなる。かかる構成に於いて、複数の通信回線を種々の態様にて併用されてよい。
具体的には、一つの態様に於いては、複数の回線に於いて、同じ通信内容、即ち、同じデータが伝送されてよい。この場合、一方の回線に於いて不具合が生じるなどしてパケットロスがあっても、別の回線にてパケットが伝送されることとなるので、データの完全性が維持され、ネットワークにおけるパケットロスに対する可用性の向上が期待される。また、別の態様に於いては、複数の回線に於いて、異なる通信内容、即ち、データが伝送されてよく、この場合、通信可能な帯域幅が広がることとなり、データ伝送の高速化が期待されることになる。また、通信回線と通信手段の特性と、通信内容の性質に応じて、適当な通信手順(TCP、UDP、SCTP、DCCP)を選択し、又は、組み合わせることにより、利用可能な通信手段と通信回線の特性に合った通信制御が達成可能となる。
更に、端末から複数の通信回線を介してインターネットに接続され、それらの複数の回線を通じて端末とTURNサーバとの間にてデータ伝送が可能となっている状態に於いて、いずれの回線にてデータの伝送を実行するかは、端末とTURNサーバとのいずれに於いても、各回線の通信状況を考慮して、選択できるようになっていてよい。より具体的には、端末とTURNサーバとは、それぞれ、複数の通信回線のそれぞれの回線負荷を参照する手段を有していてよく、回線負荷の軽い回線を優先的にデータ伝送に使用するよう構成されていてよい。一つの実施態様に於いては、例えば、端末から又はTURNサーバから見た複数回線のそれぞれの回線負荷に応じて、優先度が決定され(優先度は、回線負荷が小さいほど大きく設定されてよい。)、その優先度の情報が、端末からTURNサーバへ又はTURNサーバから端末へ伝達され、TURNサーバ又は端末は、与えられた各回線の優先度情報を参照し、優先度の高い回線をデータの送信に利用するように構成されていてよい。その場合、具体的には、データの伝送に際して、優先度の高い回線を選択する、或いは、優先度が高いほど、データの伝送量の比率を高くするなどの態様が実行されてよい。
或いはまた、本実施形態のシステムに於いて、上記の如き端末とTURNサーバとの間のデータの送受信に際して、如何なる態様に複数の通信回線を使用するかは、端末とTURNサーバとが、それぞれから送信されてくる情報に従って制御するようになっていてよい。例えば、後に説明されるように、端末がP2P通信を実行するために、TURNサーバに中継の要求を送信する際に、これと共に、TURNサーバから端末へデータを送信する際に使用するべき回線の情報又は設定されるべき回線毎のデータ量の比率を指定した情報を、通信制御ポリシとして、送信すると、TURNサーバは、端末へのデータ送信時には、かかる通信制御ポリシに従って回線を使用するようになっていてよい。同様に、TURNサーバがP2P通信の要求された中継の許可を端末へ送信する際に、これと共に、端末からTURNサーバへデータを送信する際に使用するべき回線の情報又は設定されるべき回線毎のデータ量の比率を指定した情報を、通信制御ポリシとして、送信すると、端末は、TURNサーバへのデータ送信時には、かかる通信制御ポリシに従って回線を使用するようになっていてよい。かかる構成により、通信品質の劣化や中継途絶による中継伝送への影響をできるだけ低減するよう、複数の通信回線を好適に利用することが可能となる。また、利用可能な回線が複数存在することにより、通信が途絶しても、いずれかの回線にて通信が復帰すれば、通信状態が回復されることとなるので、通信途絶からの復帰時間の短縮が期待される。
TURNサーバによる中継の開始手順
端末とTURNサーバとの間の複数回線を介したP2P通信の中継は、図3に示されている手順により開始されてよい。まず、端末1の通信制御部が通信手段101でのTURNサーバによる中継の交渉の開始を指示すると、通信手段101からの通信回線を通じてTURNサーバへ中継要求を示すデータが送信される。その際、送信される中継要求には、中継の開始要求、データ送信をしている端末が端末1であることを保証するための認証情報、通信手段が101であることを表わす通信手段識別子が含まれる。なお、図1に示されている如く、通信手段101は、ルータr1を通じてインターネットへ接続されているので、通信手段101は、TURNサーバ側からは、ルータr1のグローバルIPアドレスを用いて識別されることとなる。また、端末及びサーバの認証には、任意の暗号鍵技術を用いた認証方法が用いられてよい。そして、TURNサーバは、通信手段101からの中継要求を受信すると、そのリソースに於いて、端末1と端末2とのP2P通信にて、一方の端末から送信されるデータを受容し、他方へ転送するためのリレー用領域を割り当て、しかる後に、通信手段101に対して、中継許可と、リレー用領域を識別するアドレス情報(中継識別子)とが送信される。かかる中継許可には、中継の開始許可、TURNサーバの認証情報、通信手段が101であることを表わす通信手段識別子が含まれ、更に、端末1からTURNサーバへデータを送信する際の回線の利用方法に関する情報である通信制御ポリシ1が含まれていてよい。通信制御ポリシ1は、TURNサーバから見た通信回線の回線負荷等を参照して任意の手法にて決定されてよい。次いで、通信手段101は、TURNサーバの中継の開始許可を受信すると、その情報が端末1の通信制御部へ(認証情報と共に)送信され、これにより、端末1とTURNサーバとの間に於いて、通信手段101を用いてデータ伝送が可能な状態となる。即ち、TURNサーバは、端末1の通信手段101から端末2宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末2(のいずれかの通信手段)へ転送し、端末2から端末1宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末1の通信手段101へ転送できる状態となる。
端末とTURNサーバとの間の複数回線を介したP2P通信の中継は、図3に示されている手順により開始されてよい。まず、端末1の通信制御部が通信手段101でのTURNサーバによる中継の交渉の開始を指示すると、通信手段101からの通信回線を通じてTURNサーバへ中継要求を示すデータが送信される。その際、送信される中継要求には、中継の開始要求、データ送信をしている端末が端末1であることを保証するための認証情報、通信手段が101であることを表わす通信手段識別子が含まれる。なお、図1に示されている如く、通信手段101は、ルータr1を通じてインターネットへ接続されているので、通信手段101は、TURNサーバ側からは、ルータr1のグローバルIPアドレスを用いて識別されることとなる。また、端末及びサーバの認証には、任意の暗号鍵技術を用いた認証方法が用いられてよい。そして、TURNサーバは、通信手段101からの中継要求を受信すると、そのリソースに於いて、端末1と端末2とのP2P通信にて、一方の端末から送信されるデータを受容し、他方へ転送するためのリレー用領域を割り当て、しかる後に、通信手段101に対して、中継許可と、リレー用領域を識別するアドレス情報(中継識別子)とが送信される。かかる中継許可には、中継の開始許可、TURNサーバの認証情報、通信手段が101であることを表わす通信手段識別子が含まれ、更に、端末1からTURNサーバへデータを送信する際の回線の利用方法に関する情報である通信制御ポリシ1が含まれていてよい。通信制御ポリシ1は、TURNサーバから見た通信回線の回線負荷等を参照して任意の手法にて決定されてよい。次いで、通信手段101は、TURNサーバの中継の開始許可を受信すると、その情報が端末1の通信制御部へ(認証情報と共に)送信され、これにより、端末1とTURNサーバとの間に於いて、通信手段101を用いてデータ伝送が可能な状態となる。即ち、TURNサーバは、端末1の通信手段101から端末2宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末2(のいずれかの通信手段)へ転送し、端末2から端末1宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末1の通信手段101へ転送できる状態となる。
かくして、端末1とTURNサーバとの間に一つ目の回線を通じたデータ伝送が可能な状態が確立すると、端末1の通信制御部は、通信手段102でのTURNサーバによる中継の交渉の開始を指示し、通信手段102からの通信回線を通じてTURNサーバへ中継要求を表わすデータが送信される。なお、図1に示されている如く、通信手段102は、ルータr2を通じてインターネットへ接続されているので、通信手段102は、TURNサーバ側からは、ルータr2のグローバルIPアドレスを用いて識別されることとなる。また、中継要求と共に、TURNサーバに於いて既に割り当てられたリレー用領域のアドレス情報(中継識別子)も送信される。そして、中継要求に於いては、P2P通信に於いて利用する通信回線の追加の要求と、端末1を認証する認証情報と、通信手段が102であることを表わす通信手段識別子とが含まれ、更に、TURNサーバから端末1へデータを送信する際の回線の利用方法に関する情報である通信制御ポリシ2が含まれていてよい。通信制御ポリシ2は、端末1から見た通信回線の回線負荷等を参照して任意の手法にて決定されてよい。
TURNサーバは、端末1の通信手段102からルータr2を通じて中継の追加要求を受けると、それに伴って送信されてきた中継識別子を参照して、通信手段102からの中継の要求が、端末1からの通信手段101に追加した回線の接続の要求であることを認識し、中継識別子のリレー用領域を、通信手段102との間で伝送されるデータのリレー用領域としても割り当て、しかる後に、通信手段102に対して、中継許可と、リレー用領域を識別するアドレス情報(中継識別子)とが送信される。ここでの中継許可には、通信路追加の許可、TURNサーバの認証情報、通信手段が102であることを表わす通信手段識別子、端末1からTURNサーバへデータを送信する際の回線の利用方法に関する情報である通信制御ポリシ1が含まれていてよい。そして、通信手段102は、TURNサーバの中継許可を受信すると、その情報が端末1の通信制御部へ(認証情報と共に)送信され、これにより、端末1とTURNサーバとの間に於いて、通信手段102を用いてもデータ伝送が可能な状態となる。即ち、TURNサーバは、端末1の通信手段102から端末2宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末2(のいずれかの通信手段)へ転送し、端末2から端末1宛てのデータを受信すると、そのデータをリレー用領域RSへ一旦保存し、端末1の通信手段102へ転送できる状態となる。
上記の一連の処理は、端末2に於いても同様に実行されてよい。その場合、端末2は、端末1とP2P通信によるセッションを実行するので、端末1に対して割り当てられたリレー用領域にアクセスするための情報が何等かの方法により与えられ、その情報を用いてTURNサーバに対して中継要求を送信することとなる(具体的な手順は、任意の態様にて実現されてよい。)。
かくして、TURNサーバのリレー用領域に対して端末1及び端末2からデータが送信でき、そこから宛先の端末へのデータの転送が可能となると、端末1、2間のP2P通信が、TURNサーバにより中継されて実行されることとなる。その際、既に説明されている如く、端末1は(更に端末2も)、複数の通信回線にてインターネットに接続され、TURNサーバは、それらの複数の通信回線を通じて、端末2との間の、データ伝送を中継するように設定されるので、端末1とTURNサーバとは、複数の通信回線を、上記の如く、回線負荷などの通信状況や、通信内容等に応じて、任意の態様にてP2P通信のためのデータ伝送に利用できるよう構成される。
通信回線の縮退手順
上記の如く、端末1とTURNサーバとの間にて複数の通信回線による接続を確立した状態に於いて、適時、いずれかの通信回線による接続が遮断可能となっていてよく(通信回線の縮退)、同時に接続される通信回線の数が適時選択できるようになっていてよい。通信回線の縮退は、以下の如き手順により実行されてよい。
上記の如く、端末1とTURNサーバとの間にて複数の通信回線による接続を確立した状態に於いて、適時、いずれかの通信回線による接続が遮断可能となっていてよく(通信回線の縮退)、同時に接続される通信回線の数が適時選択できるようになっていてよい。通信回線の縮退は、以下の如き手順により実行されてよい。
通信回線の縮退の第一の態様に於いては、遮断される通信回線を通じて、接続の削除が実行される。図4を参照して、例えば、端末1の通信手段1の接続を削除する場合には、まず、端末1の通信制御部から通信手段101へ中継停止処理の開始の指示が(認証情報と共に)与えられ、通信手段101は、TURNサーバに対して、削除要求と中継識別子の情報を送信する。削除要求には、削除要求の情報、認証情報、削除すべき通信手段101の識別子が含まれる。そうすると、TURNサーバは、通信手段101の接続の遮断を了解する旨の削除了解と中継識別子の情報を通信手段101へ送信し、更に、その情報が通信手段101から通信制御部へ伝達される。その後、TURNサーバは、通信手段101との接続を解除し、端末1とTURNサーバとの間のデータ伝送は、通信手段102を通じて実行されることとなる。
通信回線の縮退の第二の態様に於いては、維持される通信回線を通じて、別の通信回線の接続の削除が実行される。図5を参照して、例えば、端末1の通信手段1の接続を削除する場合には、まず、端末1の通信制御部から通信手段102へ通信手段101に於ける中継停止処理の開始の指示が(認証情報と共に)与えられ、通信手段102は、TURNサーバに対して、通信手段101の接続の削除要求と中継識別子の情報を送信する。削除要求には、削除要求の情報、認証情報、削除すべき通信手段101の識別子が含まれる。そうすると、TURNサーバは、通信手段101の接続の遮断を了解する旨の削除了解と中継識別子の情報を通信手段102へ送信し、更に、その情報が通信手段102から通信制御部へ伝達される。その後、TURNサーバは、通信手段101との接続を解除し、端末1とTURNサーバとの間のデータ伝送は、通信手段102を通じて実行されることとなる。
かくして、上記の本実施形態によるTURNサーバを用いたP2P通信を実行するシステムに於いては、端末とTURNサーバとの間に於いて、複数の通信回線にてデータ伝送が実行可能な状態が確立され、それらの複数の通信回線を併用可能とすることにより、P2P通信の安定化が図られる。また、端末とTURNサーバとの間に複数の通信回線が併用されることで、通信の冗長化を通したP2P通信の品質の向上や可用帯域の向上を図ることが可能となる。
以上の説明は、本発明の実施の形態に関連してなされているが、当業者にとつて多くの修正及び変更が容易に可能であり、本発明は、上記に例示された実施形態のみに限定されるものではなく、本発明の概念から逸脱することなく種々の装置に適用されることは明らかであろう。
Claims (1)
- インターネットを介してTURNサーバを用いたピア・ツー・ピア方式の端末間通信を実行するシステムであって、端末が前記インターネットへ接続する通信手段を少なくとも二つ有し、前記端末が前記少なくとも二つの通信手段のそれぞれを用いた別々の通信回線を介してインターネットへ接続され、前記通信回線のそれぞれを介して前記TURNサーバと通信可能に接続されるシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021150045A JP2023042744A (ja) | 2021-09-15 | 2021-09-15 | 中継サーバを用いたピア・ツー・ピア通信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021150045A JP2023042744A (ja) | 2021-09-15 | 2021-09-15 | 中継サーバを用いたピア・ツー・ピア通信システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023042744A true JP2023042744A (ja) | 2023-03-28 |
Family
ID=85724144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021150045A Pending JP2023042744A (ja) | 2021-09-15 | 2021-09-15 | 中継サーバを用いたピア・ツー・ピア通信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023042744A (ja) |
-
2021
- 2021-09-15 JP JP2021150045A patent/JP2023042744A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10855654B2 (en) | Session identifier for a communication session | |
US10630813B2 (en) | Transporting UDP packets over an MPTCP connection | |
US20160380966A1 (en) | Media Relay Server | |
JP4961368B2 (ja) | 端末装置、nat越え方法、及びプログラム | |
US9699237B2 (en) | Managed media relay selection for real-time communications | |
US20160380789A1 (en) | Media Relay Server | |
JP2015070616A (ja) | 接続方法及び中継モジュール | |
US10356013B2 (en) | Method of emulating a multipath connection | |
JP2006086800A (ja) | ソースアドレスを選択する通信装置 | |
US20110145426A1 (en) | Networking method of communication apparatus, communication apparatus and storage medium | |
JP5988407B1 (ja) | 通信経路制御装置、通信経路制御システム、通信経路制御方法及び通信経路制御プログラム | |
JP2014528183A (ja) | リアルタイム通信セッションを確立する通信システム | |
JP2023042744A (ja) | 中継サーバを用いたピア・ツー・ピア通信システム | |
US11356296B1 (en) | System and method for independent binding of virtual networks overlay using a physical network topology | |
KR20190129652A (ko) | 비프록시 기반 다중 경로 전송 시스템, 그리고 이의 세션 연결을 위한 시그널링 방법 | |
JP2012099961A (ja) | ゲートウェイ装置およびsip応答経路確立方法 | |
Brennan et al. | Improving communication through overlay detours: Pipe dream or actionable insight? | |
JP7031842B2 (ja) | 無線通信システム及び方法 | |
CN114424599B (zh) | 用于传输基于会话的包的方法和系统 | |
JP7370066B2 (ja) | 通信方法 | |
JP2018157258A (ja) | ネットワークシステム、ネットワークシステムのアドレス解決方法、および、拠点側接続装置 | |
JP6755171B2 (ja) | 接続切り替えシステム、接続切り替え方法、および、接続先装置 | |
JP2007049498A (ja) | 通信方法及び通信装置 | |
JP5768550B2 (ja) | 通信端末および通信制御方法 | |
JP2006094105A (ja) | トンネリング方法および装置、ならびにそのプログラムと記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240212 |