JP2016134665A - 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム - Google Patents

通信システム、接続制御装置、仮想通信路設定方法、及びプログラム Download PDF

Info

Publication number
JP2016134665A
JP2016134665A JP2015006498A JP2015006498A JP2016134665A JP 2016134665 A JP2016134665 A JP 2016134665A JP 2015006498 A JP2015006498 A JP 2015006498A JP 2015006498 A JP2015006498 A JP 2015006498A JP 2016134665 A JP2016134665 A JP 2016134665A
Authority
JP
Japan
Prior art keywords
terminal
connection control
communication channel
control device
connection
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.)
Granted
Application number
JP2015006498A
Other languages
English (en)
Other versions
JP6478649B2 (ja
Inventor
健作 小松
Kensaku Komatsu
健作 小松
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.)
NTT Communications Corp
Original Assignee
NTT Communications 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 NTT Communications Corp filed Critical NTT Communications Corp
Priority to JP2015006498A priority Critical patent/JP6478649B2/ja
Publication of JP2016134665A publication Critical patent/JP2016134665A/ja
Application granted granted Critical
Publication of JP6478649B2 publication Critical patent/JP6478649B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】異なるネットワークに接続される複数の端末間で様々な通信を行うことを可能とする技術を提供する。
【解決手段】第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムにおいて、第1の接続制御装置が、前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成し、第2の接続制御装置が、前記第2の端末から前記識別名を指定した接続要求を受信し、前記第1の接続制御装置が、前記第2の接続制御装置との間に中継通信チャネルを生成し、前記第2の接続制御装置が、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成し、前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成される。
【選択図】図3

Description

本発明は、プライバシーセパレーターが適用された公衆無線LAN環境下や、異なるネットワークに属するなど機器端末が不能な環境において、複数の端末間で通信を行うための技術に関連するものである。
端末が連携可能な近隣デバイスを発見し、当該近隣デバイスにより提供されるサービスを利用するための様々な技術がある。近隣デバイスを発見する技術としては、例えば、IPマルチキャストを用いたSSDP(Simple Service Discovery. Protocol)やm−DNS(Multicast DNS)等がある。図1に、近隣デバイスがサイネージSである場合における近隣デバイス発見手順の例を示す。
図1に示すように、ここでは、ユーザーAの端末TA、ユーザーBの端末TB、及びサイネージS(端末の1つ)が存在し、端末TAがサイネージSを発見する動作を行うこととする。なお、サイネージSは、例えば、Webサーバ機能を含み、電子掲示板サービス等を提供する装置である。
図1に示すように、端末TAが、IPマルチキャストで発見要求パケットを送信し、発見要求パケットを受信した各端末から応答を受信することで、連携可能な近隣デバイスを探す(ステップ1)。端末TAは、連携可能な近隣デバイスとしてサイネージSを選択し、ユニキャストでサイネージSと通信を行う(ステップ2)。
特許3806082
上記のサイネージのような近隣デバイスは、様々なネットワーク環境で使用できるが、特に、パブリックかつ多数の人々が集まる公衆無線LAN環境で使用されることが想定される。
しかし、公衆無線LAN環境では、プライバシーセパレーター機能によりIPマルチキャストや端末間の直接通信が禁止されていることが多く、上記のサービスを行うことは困難である。また、同じく公衆無線LAN環境では、物理的な距離が近い同一ロケーションにある複数の端末間で、接続される公衆無線LANのプロバイダが異なる場合があるため、先と同様にデバイス発見が不能となる場合があるという問題がある。すなわち、公衆無線LAN環境では、同一ロケーションでも複数のプロバイダ(ISP:Internet Service Provider)がサービスを提供している場合が多く、この場合、複数端末が異なるプロバイダにより提供される異なるネットワークに属する場合が多く発生することが考えられる。異なるネットワーク間では、IPマルチキャストを用いた発見機構が動作しないため、異なるネットワークに接続する複数端末間では他の端末を発見することができない。
本発明は上記の点に鑑みてなされたものであり、異なるネットワークに接続される複数の端末間で仮想通信路を設定し、当該複数の端末間において、IPマルチキャストを含む様々な通信を行うことを可能とする技術を提供することを目的とする。
本発明の実施の形態によれば、第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムであって、
前記通信システムは、第1の接続制御装置と第2の接続制御装置を有し、
前記第1の接続制御装置は、
前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成する手段と、
前記第2の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成する手段と、を備え、
前記第2の接続制御装置は、前記第2の端末から前記識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成する手段を備え、
前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成される
ことを特徴とする通信システムが提供される。
また、本発明の実施の形態によれば、第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムにおいて使用される接続制御装置であって、
前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する通信チャネルを生成する手段と、
当該他の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成する手段と、を備え、
前記通信チャネル、前記中継通信チャネル、及び前記他の接続制御装置と前記第2の端末との間に構築される通信チャネルにより前記仮想通信路が形成される
ことを特徴とする接続制御装置が提供される。
また、本発明の実施の形態によれば、第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムにおいて実行される仮想通信路設定方法であって、
前記通信システムは、第1の接続制御装置と第2の接続制御装置を有し、
前記仮想通信路設定方法は、
前記第1の接続制御装置が、前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成するステップと、
前記第2の接続制御装置が、前記第2の端末から前記識別名を指定した接続要求を受信するステップと、
前記第1の接続制御装置が、前記第2の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成するステップと、
前記第2の接続制御装置が、前記第2の端末から受信した接続要求に基づいて、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成するステップと、を備え、
前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成される
ことを特徴とする仮想通信路設定方法が提供される。
本発明の実施の形態によれば、異なるネットワークに接続される複数の端末間で仮想通信路を設定し、当該複数の端末間において、IPマルチキャストを含む様々な通信を行うことを可能とする技術が提供される。
近隣デバイスとの連携サービスを実現する際の一般的な端末発見手法の例を説明するための図である。 本発明の実施の形態に係る通信システムの全体構成図である。 本実施の形態における通信システムの動作の概要を説明するための図である。 公衆無線LANシステム200の構成例を示す図である。緑と紫の部分は不要です 公衆無線LANシステム200における端末間の接続方法を説明するための図である。 接続制御装置100の機能構成図である。 データベース130に格納されるテーブルの例を示す図である。 接続シーケンス例1−1を示す図である。 接続シーケンス例1−2を示す図である。 接続シーケンス例2−1を示す図である。 接続シーケンス例2−2を示す図である。 本実施の形態における具体例を説明するための図である。 具体例におけるシステム構成例を示す図である。 接続シーケンス例3を示す図である。 具体例において、接続制御装置間を接続する場合のシステム構成例を示す図である。
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、本実施の形態では接続制御装置を公衆無線LANで使用することを想定しているが、本発明に係る接続制御装置は、公衆無線LANに限らず、有線ネットワークを含む様々なネットワークにおいて使用できる。また、本実施の形態では、「Named WebSockets」及び「WebRTC」の技術を使用しているが、これらは例に過ぎず、本発明は、「Named WebSockets」及び「WebRTC」に限定されずに実施可能である。
(システム全体構成、動作概要)
図2に、本発明の実施の形態に係る通信システムの全体構成図を示す。図2に示すように、本実施の形態に係る通信システムにおいて、公衆無線LAN−A10、B10が、通信ネットワーク20に接続されている。公衆無線LAN−A10、B10のシステムには、それぞれ接続制御装置A100、B100が備えられている。また、通信ネットワーク20には、中継制御装置30が備えられている。
プロバイダAにより提供される公衆無線LAN−A10には端末A1〜A3が接続され、プロバイダBにより提供される公衆無線LAN−B10には端末B1〜B3が接続されている。
各端末は、Webブラウザ(以下、ブラウザと呼ぶ)を備えるスマートフォン、ブラウザを備えるサイネージ、ブラウザを備えるサービスサーバ等であるが、これらに限られない。
本実施の形態における各接続制御装置は、Named WebSocketsにより各端末との間で通信チャネル(コネクション)を生成することで、当該通信チャネルを介して複数の端末間におけるVPN(仮想通信路)を構築し、当該仮想通信路により当該複数端末間でIPマルチキャストの発見通信を含む様々な通信を可能とする機能を有する。また、各接続制御装置は、WebRTCを用いて、他の接続制御装置との間で通信チャネルを生成し、当該通信チャネルと、端末との間の通信チャネルとにより、異なるネットワークにおける複数端末間の仮想通信路を構築し、当該複数端末間でIPマルチキャストの発見通信を含む様々な通信を可能とする機能を有する。接続制御装置の詳細については後述する。
通信ネットワーク20は、本実施の形態では、IPv6をサポートした地域IP網(アクセス網と呼んでもよい)であることを想定しているが、これに限られない。例えば、通信ネットワーク20は地域IP網とインターネットからなる網であってもよいし、インターネットであってもよい。
中継制御装置30は、WebRTCのプログラム等を各接続制御装置に提供するWebRTCサーバの機能、及び、接続制御装置間接続のためのシグナリングを中継する機能、STUNサーバ、TURNサーバ等の機能を含み、これらの機能により、WebRTCによる接続制御装置間での通信チャネルの構築を可能としている。
図3に示すように、本実施の形態のシステムにおいては、各端末はNamed WebSocketsの機能により、自身が参加を希望するネットワーク(以下、仮想通信路)に相当する名前を指定することで当該仮想通信路に接続し、当該仮想通信路に参加している他の端末との間で通信を行う。例えば、図3において、端末A2、B1、B3は同じVPNに接続し、通信を行っている。また、端末A1、A3、B2は同じ仮想通信路に接続し、通信を行っている。また、図3の例では、接続制御装置間でも通信チャネルが生成され、複数の接続制御装置を跨いだ仮想通信路が構築されている。
また、特に通信ネットワーク20として、IPv6をサポートする地域IP網を使用する場合、異公衆無線LAN間で、インターネットでのトラフィックを浪費しない端末間連携が可能となる。
なお、図3の例では、複数の公衆無線LANシステム間で仮想通信路が構築される例を示すが、単独のプロバイダの公衆無線LAN内で接続制御装置により複数端末間での仮想通信路を構築してもよい(この場合は、プライバシーセパレーター機能により、端末間通信が不能となる課題が解決される)。以下、本実施の形態の技術をより詳細に説明する。
(公衆無線LANシステムの構成例)
図4に、本実施の形態における公衆無線LANシステム200の構成例を示す。当該公衆無線LANシステム200は、図2に示した各公衆無線LANに対応するものである。図4に示すように、公衆無線LANシステム200は、無線LANのアクセスポイント40と接続制御装置100(図2に示した接続制御装置A100、B100に相当)がバックプレーンのネットワークで接続される構成を有する。また、図4の例においては、端末1〜4がアクセスポイント40に無線LAN接続されている。
(Named WebSocketsを用いた接続例)
図5は、図4に示した構成における実際の利用イメージを示す。図5では、端末4としてサイネージが使用されている。図5は、単独の公衆無線LANシステム200内で接続制御装置100により端末間で仮想通信路が構築される例を示している。前述したように、端末と接続制御装置100間でNamed WebSocketsによる通信チャネルが構築されるとともに、同じ名前を指定した端末間において当該通信チャネル及び接続制御装置100を介した仮想通信路が構築されている。
なお、端末と接続制御装置100との接続においては、例えばBluetooth(登録商標)等で利用されているdigit共有を識別子として用いることで、プライバシーセパレートを実現することができる。また、各端末では、接続制御装置100から取得されるプログラム(JavaScript(登録商標)等)により、Named WebSocketsクライアント機能を実現できるため、ブラウザがあればよく、特別なソフトウェアをインストールすることなく、手軽に公衆無線LAN環境下での安全な通信を実現することが可能である。
Named WebSocketsについてより詳細に説明する。Named WebSocketsは、WebSocketを用いたプロトコルであり、WebSocket URLのディレクトリ(「ws://{end−point−address}/{name}/」内の{name})ごとに仮想NWを作る機能を持つ。これにより、同一NW(ブロードキャストセグメント)内を、仮想的に分割することができ、図3、図5等に示したような端末間での仮想通信路を構築することが可能である。
各端末は、所定の名前を指定した接続要求を接続制御装置100に送信することで、接続制御装置100との間で通信チャネル(図5ではパイプで示す)を構築する。接続制御装置100においては、同じ名前の指定により構築された通信チャネルが接続され、同じ名前を指定した端末間で仮想通信路が形成される。
図5の例において、例えば、公共的な装置であるサイネージ4と接続制御装置100との間は、名前/public/により通信チャネルが生成され、更に、当該名前/public/がサイネージ4に接続できる名前であることを知っているユーザーの端末1が名前/public/を指定して接続制御装置100に接続することにより、端末1とサイネージ4との間に当該名前/public/に対応する仮想通信路が構築され、通信可能な状態となり、端末1はサイネージ4のサービスを利用することができる。
また、ユーザー間でのプライベートな個別の通信である端末2と端末3との間の通信に関しては、例えば、一方の端末の画面に乱数ID(図5に示す827490)を表示し、当該端末は、当該乱数IDを指定して接続制御装置100に対して接続要求を行い、他方の端末も当該乱数IDを指定して接続制御装置100に対して接続要求を行う。これにより、2ユーザーのみが知る名前に対応する仮想通信路が構築され、プライベート通信可能な環境が作られる。
(接続制御装置100の構成例)
図6に、本実施の形態における接続制御装置100の構成例を示す。図2に示した接続制御装置A100、B100も、図6に示す接続制御装置100と同様の構成を有する。
図6に示すように、接続制御装置100は、対端末接続処理部110、対装置接続処理部120、及びデータベース130を有する。
対端末接続処理部110は、Named WebSocketsのサーバの機能を含む。また、処理区分に着目した機能部として、対端末接続処理部110は、要求処理部111、通信処理部112を含む。
要求処理部111は、端末からの各種要求を受信し、要求に応じた処理を行う。通信処理部112は、端末との間で通信チャネルを生成し、当該チャネルを用いて通信を実行する。
対装置接続処理部120は、WebRTCにより他の接続制御装置と接続する機能を含む。なお、ブラウザで中継制御装置30(WebRTCサーバ機能を含む)にアクセスすることで、WebRTC用のプログラム(スクリプト)を取得できるため、対装置接続処理部120はブラウザを備えることでWebRTCにより他の接続制御装置と接続することもできる。
また、処理区分に着目した機能部として、対装置接続処理部120は、要求処理部121、通信処理部122を含む。要求処理部121は、他の接続制御装置との間の通信のための各種要求に関する処理を行う。また、通信処理部122は、他の接続制御装置との間で通信チャネルを生成し、当該通信チャネルを用いて通信を実行する。
データベース130は、メモリやハードディクス等のデータ格納手段、及びテーブル管理等を行うデータベースソフトウェア等から構成される機能部である。なお、接続制御装置100が1つのサーバ(コンピュータ)により構成される場合において、データベース130は、当該サーバの外部に備えられたデータベースサーバであってもよい。また、これら複数のサーバからなる構成を接続制御装置100と称してもよい。
図7に、データベース130に格納されるテーブルの例を示す。図7に示すように、データベース130には、通信チャネル識別名、接続端末ID、接続している接続制御装置のIDが対応付けて格納される。通信チャネル識別名は、前述した「名前」に相当し、仮想通信路の識別名でもある。接続端末IDは、対応する通信チャネル識別名を指定して接続された端末のIDである。当該IDは例えば端末のIPアドレスである。接続している接続制御装置のIDは、対応する通信チャネル識別名に対応して、複数の接続制御装置間での仮想通信路を構築するために接続される他の接続制御装置のIDである。当該IDは例えば接続制御装置のIPアドレスである。
本実施の形態に係る接続制御装置100は、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、接続制御装置100が有する機能は、当該コンピュータに内蔵されるCPUやメモリ、ハードディスクなどのハードウェア資源を用いて、接続制御装置100で実施される処理に対応するプログラムを実行することによって実現することが可能である。また、上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
以下、上記の構成を有する接続制御装置100が備えられた通信システムにおいて、端末から名前/1234に対応する仮想通信路への接続を行う場合の接続シーケンスの各種の例を説明する。
(接続シーケンス例1−1)
まず、1つの接続制御装置100を介して接続を行う場合(例:図5)における接続シーケンス例1−1について、図8を参照して説明する。図8では、接続制御装置100における名前登録等の処理を分かり易くするために、データベース130を接続制御装置100の外に記載している。他のシーケンス図でも同様である。
まず、端末1(具体的にはブラウザ)が、/1234への接続要求を接続制御装置100に送信する(ステップ101)。当該接続要求を受信した接続制御装置100において、要求処理部111が、/1234の登録要求をデータベース130に送信する(ステップ102)。データベース130は、/1234のエントリ(レコード)を生成し、当該エントリに端末1のIDを登録して(ステップ103)、登録完了を要求処理部111に返す(ステップ104)。
その後、端末1と接続制御装置100(具体的には通信処理部112)との間で、/1234に対応する通信チャネルの生成がなされる(ステップ105)。本実施の形態では、WebSocketプロトコルの通信チャネルが生成される。ステップ105においては、最初に端末1と接続制御装置100との間でTCPコネクションの生成がなされ、次に、WebSocketプロトコルの通信を開始するためのメッセージの送受信(ハンドシェイク)がなされることで当該通信チャネルが生成される。なお、この手順は一例である。
ステップ105の後、要求処理部111は、ステップ101の接続要求に対する応答として、接続完了を端末1に送信する。
次に、端末2が、/1234への接続要求を接続制御装置100に送信する(ステップ107)。当該接続要求を受信した接続制御装置100において、要求処理部111が、/1234の登録要求をデータベース130に送信する(ステップ108)。データベース130は、既に生成されている/1234のエントリに端末2のIDを登録して(ステップ109)、登録完了を要求処理部111に返す(ステップ110)。
その後、端末2と接続制御装置100(具体的には通信処理部112)との間で、/1234に対応する通信チャネルの生成がなされ(ステップ111)、要求処理部111は、ステップ107の接続要求に対する応答として、接続完了を端末2に送信する。
その後は、上記のようにして生成された2つの通信チャネルにより形成される仮想通信路を介して端末1と端末2間での通信がなされる。ここでは、例えば、通信処理部112は、データベース130に登録された名前/1234と端末1、2のIDに基づいて、当該2つの通信チャネルが同じ名前/1234に対応することを識別し、一方の通信チャネルから他方の通信チャネルへのデータの受け渡し等の通信チャネル間接続処理を行う。
(接続シーケンス例1−2)
次に、図8に示す手順で生成された/1234に対応する接続を切断する場合における接続シーケンス例1−2について、図9を参照して説明する。
まず、端末1が、/1234からの切断要求を接続制御装置100に送信する(ステップ201)。当該切断要求を受信した接続制御装置100において、要求処理部111が、/1234の削除要求をデータベース130に送信する(ステップ202)。データベース130は、/1234のエントリから端末1のIDを削除して(ステップ203)、削除完了を要求処理部111に返す(ステップ204)。
その後、端末1と接続制御装置100(具体的には通信処理部112)との間で、/1234に対応する通信チャネルの解放がなされる(ステップ205)。ステップ205の後、要求処理部111は、ステップ201の切断要求に対する応答として、切断完了を端末1に送信する(ステップ206)。
次に、端末2が、/1234からの切断要求を接続制御装置100に送信する(ステップ207)。当該切断要求を受信した接続制御装置100において、要求処理部111が、/1234の削除要求をデータベース130に送信する(ステップ208)。データベース130は、/1234のエントリから端末2のIDを削除する(ステップ209)。端末2のIDを削除することで、接続している端末数が0になるため、/1234のエントリも削除される。要求処理部111は、削除完了を要求処理部111に返す(ステップ210)。
その後、端末2と接続制御装置100(具体的には通信処理部112)との間で、/1234に対応する通信チャネルの解放がなされる(ステップ211)。ステップ211の後、要求処理部111は、ステップ207の切断要求に対する応答として、切断完了を端末1に送信する(ステップ212)。
(接続シーケンス例2−1)
続いて、2つの接続制御装置A100、B100を介して接続を行う場合(例:図3)における接続シーケンス例2−1について、図10を参照して説明する。図10に示す接続制御装置A100、B100は、図6、図7を参照して説明した接続制御装置100と同様の構成を有している。以下では、接続制御装置A100、B100内の機能部を示す場合には、例えば「要求処理部A111」のように、接続制御装置A100、B100に対応するA、Bの符号を付けて示す。
また、以下の例では、接続制御装置A100と通信する他の接続制御装置は接続制御装置B100であることが接続制御装置A100に予め設定され、接続制御装置B100と通信する他の接続制御装置は接続制御装置A100であることが接続制御装置B100に予め設定されているものとする。
まず、端末1が、/1234への接続要求を接続制御装置A100に送信する(ステップ301)。当該接続要求を受信した接続制御装置A100において、当該接続要求を受信したことが要求処理部A111から要求処理部A121に通知され、当該通知を受けた要求処理部A121が、/1234の登録がされているかどうかを確認するための登録確認を接続制御装置B100に送信する(ステップ302)。
接続制御装置B100における要求処理部B121は、/1234のエントリが登録されているかを確認する登録確認をデータベースB130に送信する(ステップ303)。現時点では、データベースB130に/1234のエントリは存在しないため、データベースB130は未登録(を示す応答)を返し(ステップ304)、要求処理部B121は未登録を接続制御装置A100に返す(ステップ305)。接続制御装置A100における要求処理部A121は、接続制御装置B100において/1234が未登録であることを要求処理部A111に通知する。
続いて、要求処理部A111は、/1234の登録要求をデータベースA130に送信する(ステップ306)。データベースA130は、/1234のエントリを生成し、当該エントリに端末1のIDを登録して、登録完了を要求処理部A111に返す(ステップ307)。
その後、端末1と接続制御装置A100(具体的には通信処理部A112)との間で、/1234に対応する通信チャネルの生成がなされる(ステップ308)。ステップ308の後、要求処理部A111は、ステップ301の接続要求に対する応答として、接続完了を端末1に送信する(ステップ309)。
次に、端末2が、/1234への接続要求を接続制御装置B100に送信する(ステップ310)。当該接続要求を受信した接続制御装置B100において、当該接続要求を受信したことが要求処理部B111から要求処理部B121に通知され、当該通知を受けた要求処理部B121が、/1234の登録確認を接続制御装置A100に送信する(ステップ311)。
接続制御装置A100における要求処理部A121は、/1234のエントリが登録されているかを確認する登録確認をデータベースA130に送信する(ステップ312)。現時点でデータベースA130に/1234のエントリが存在するため、データベースA130は登録済み(を示す応答)を返す(ステップ312)。
その後、WebRTCのプロトコルに従って、例えば、接続制御装置A100における通信処理部A122が、中継制御装置30に対するシグナリングメッセージの送信を行う等の動作を行うことで、接続制御装置A100における通信処理部A122と接続制御装置B100における通信処理部B122との間でIPアドレスやコーデック等の通信情報の交換がなされ、接続制御装置A100における通信処理部A122と接続制御装置B100における通信処理部B122との間で、/1234に対応する通信チャネルが生成される(ステップ314)。また、このとき、データベースA130の/1234のエントリに、接続している他の接続制御装置の情報として接続制御装置B100のIDが登録される。なお、この登録は、例えばステップ306もしくはステップ312で行ってもよい。
次に、接続制御装置A100の要求処理部A121は、登録済みを示す応答を接続制御装置B100に返す(ステップ315)。当該登録済みを示す応答を受信した接続制御装置B100において、例えば要求処理部B111が、/1234の登録要求をデータベースB130に送信する(ステップ316)。データベースB130は、/1234のエントリを生成し、端末2のID及び接続制御装置AのIDを登録して、登録完了を要求処理部B111に返す(ステップ317)。
その後、端末2と接続制御装置B100(具体的には通信処理部B112)との間で、/1234に対応する通信チャネルの生成がなされ(ステップ318)、要求処理部B111は、ステップ310の接続要求に対する応答として、接続完了を端末2に送信する(ステップ319)。
その後は、上記のようにして生成された3つの通信チャネルにより形成される仮想通信路を介して端末1と端末2間での通信がなされる。ここでは、例えば、接続制御装置A100における通信処理部A112及び通信処理部A122は、データベースA130に登録された名前/1234と端末1のIDと接続制御装置BのIDに基づいて、端末1との間の通信チャネルと、接続制御装置Bとの間の通信チャネルとが同じ名前/1234に対応することを識別し、一方の通信チャネルから他方の通信チャネルへのデータの受け渡し等の通信チャネル間接続処理を行う。また、接続制御装置B100における通信処理部B112及び通信処理部B122は、データベースB130に登録された名前/1234と端末2のIDと接続制御装置AのIDに基づいて、端末2との間の通信チャネルと、接続制御装置Aとの間の通信チャネルとが同じ名前/1234に対応することを識別し、一方の通信チャネルから他方の通信チャネルへのデータの受け渡し等の通信チャネル間接続処理を行う。
(接続シーケンス例2−2)
次に、図10に示す手順で生成された/1234に対応する接続を切断する場合における接続シーケンス例2−2について、図11を参照して説明する。
まず、端末1が、/1234からの切断要求を接続制御装置A100に送信する(ステップ401)。当該切断要求を受信した接続制御装置A100において、当該切断要求を受信したことが要求処理部A111から要求処理部A121に通知され、当該通知を受けた要求処理部A121が、/1234の解放要求を接続制御装置B100に送信する(ステップ402)。
接続制御装置B100における要求処理部B121は、/1234の解放要求をデータベースB130に送信し(ステップ403)、データベースB130は、/1234のエントリにおける接続制御装置A100のIDを削除し、解放完了を要求処理部B121に返す(ステップ404)。
続いて、接続制御装置B100における通信処理部B122と接続制御装置A100における通信処理部A122との間で、/1234の通信チャネルの解放がなされ(ステップ405)、接続制御装置B100における要求処理部B121から解放完了が接続制御装置A100に通知される。
次に、接続制御装置A100の要求処理部A111は、/1234の解放要求をデータベースA130に送信する(ステップ407)。データベースA130は、/1234のエントリを削除し、削除完了を要求処理部A111に返す(ステップ408)。
その後、端末1と接続制御装置A100(具体的には通信処理部A112)との間で、/1234に対応する通信チャネルの解放がなされる(ステップ409)。ステップ409の後、要求処理部A111は、ステップ401の切断要求に対する応答として、切断完了を端末1に送信する(ステップ410)。
次に、端末2が、/1234への切断要求を接続制御装置B100に送信する(ステップ411)。接続制御装置B100の要求処理部B111は、/1234の解放要求をデータベースB130に送信する(ステップ412)。データベースB130は、/1234のエントリを削除し、解放完了を要求処理部B111に返す(ステップ413)。
その後、端末2と接続制御装置B100(具体的には通信処理部B112)との間で、/1234に対応する通信チャネルの解放がなされる(ステップ414)。ステップ414の後、要求処理部B111は、ステップ411の切断要求に対する応答として、切断完了を端末2に送信する(ステップ415)。
(具体例)
次に、これまでに説明した機構を適用した具体例として、端末とDLNAサーバ(例:DMS)との通信の例について説明する。
DLNAはNamedWebSockets上で直接通信できないことから、本具体例では、図12に示すように、DLNAプロキシを使用しDLNAメッセージをやりとりすることとしている。
すなわち、図12に示すように、端末50内に、ブラウザ51と通信するDLNAプロキシ52(例:ソフトウェア)を備えるとともに、DLNAサーバ70と端末50との間にもDLNAプロキシ60(例:サーバ、又は、接続制御装置100内のソフトウェア)を備え、DLNAプロキシ52とDLNAプロキシ60間でWebSocketの通信チャネルを生成し、当該通信チャネルでDLNAメッセージの送受信を行う。
本具体例では、図13に示すように、これまでに説明した手順を用いて、所定の名前により、端末50と接続制御装置100間に通信チャネルが生成され、DLNAプロキシ60と接続制御装置100間に通信チャネルが生成されることにより、仮想通信路が形成され、DLNAプロキシ52、60を経由して、ブラウザ51とDLNAサーバ70−1、70−2との間でDLNAメッセージの送受信を行う。なお、DLNAプロキシ52、60は、SOAPやM−SEARCH等のプロトコルとWebSocketプロトコルとの間の変換を行う機能を含む。
図14に、具体例において、DLNAプロキシ間でWebSocketの通信チャネルにより仮想通信路が構築された後に実行されるDLNAデバイス発見手順を接続シーケンス例3として示す。接続シーケンス例3では、端末50内のブラウザ51とDLNAプロキシ52が示されている。
ブラウザ51がDLNAサーバ発見要求をDLNAプロキシ52に送信する(ステップ501)。DLNAプロキシ52は、DLNAサーバ発見要求をWebSocketの通信チャネルで接続制御装置100に送信し(ステップ502)、接続制御装置100は、DLNAサーバ発見要求をWebSocketの通信チャネルでDLNAプロキシ60に送信する。そして、DLNAサーバ発見要求は、DLNAプロキシ60からDLNAサーバ70に届く(ステップ504)。
DLNAサーバ70は、DLNA応答をDLNAプロキシ60に返す(ステップ505)。DLNAプロキシ60は、DLNA応答をWebSocketの通信チャネルで接続制御装置100に送信し(ステップ506)、接続制御装置100は、DLNA応答をWebSocketの通信チャネルでDLNAプロキシ52に送信する(ステップ507)。そして、DLNA応答は、DLNAプロキシ52からブラウザ51に届く(ステップ508)。
なお、図13、図14は、1つの接続制御装置100を経由した通信の例を示すが、複数の接続制御装置を経由する通信の場合についても、図15に例示するように、これまでに図10等に示した手順で通信チャネルを構築することで、図14に示した手順と同様のDLNAメッセージの送受信が可能である。
(実施の形態のまとめ、効果等)
以上、説明したように、本実施の形態により、第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムであって、前記通信システムは、第1の接続制御装置と第2の接続制御装置を有し、前記第1の接続制御装置は、前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成する手段と、前記第2の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成する手段と、を備え、前記第2の接続制御装置は、前記第2の端末から前記識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成する手段を備え、前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成されることを特徴とする通信システムが提供される。
なお、第1のネットワークと第2のネットワークは、例えば、異なる通信事業者により提供されるネットワークである。
前記第1の通信チャネルを生成する手段は、前記第1の端末からの接続要求に基づいて、前記識別名をデータベースに登録し、前記中継通信チャネルを生成する手段は、前記第2の端末からの接続要求を受信した前記第2の接続制御装置から前記識別名の登録確認を受信し、前記データベースに当該識別名が登録されていることを確認した後に、前記中継通信チャネルを生成する。
前記中継通信チャネルは、例えばWebRTCのプロトコルにより生成され、前記第1の通信チャネル及び前記第2の通信チャネルは、例えばNamed WebSocketsのプロトコルにより生成される。
本実施の形態における技術により、プライバシーセパレーター機能が施された公衆無線LAN環境や、異なるネットワークに接続される複数の端末間で仮想通信路を設定し、当該複数の端末間において、IPマルチキャストを含む様々な通信を行うことを可能とする技術が提供される。
また、従来技術における公衆無線LAN等のパブリックな環境において、IPマルチキャスト等を使用した近隣デバイスの発見を行う場合、発見されるデバイスが多数となってしまい、実効的に選択不可能となってしまうという問題があるが、本実施の形態で説明した仮想通信路を構築する技術を採用することで、このような問題が解消される。
また、従来技術における公衆無線LAN等のパブリックな環境において、IPマルチキャスト等を使用した近隣デバイスの発見を行う場合、プライバシー侵害や情報流出が起こりうるという問題もある。例えば、このような環境で、近隣デバイスとして、アクセス制限の機構を持たないDLNAのストレージ機構であるDMS(Digital Media Server)を用いると、第三者が自由にストレージ内のデータにアクセスできてしまうため、プライバシー侵害や情報流出が発生してしまうことが懸念されるが、本実施の形態で説明した仮想通信路を構築する技術を採用することで、このような問題が解消される。つまり、本実施の形態では、名前を知っているユーザーのみがその仮想通信路に接続できる。このため、第三者が勝手に連携対象デバイス等を利用するリスクを減らすことができる。
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
A1〜A3、B1〜B3 端末
A10 公衆無線LAN(プロバイダA)
B10 公衆無線LAN(プロバイダB)
20 通信ネットワーク
30 中継制御装置
40 アクセスポイント
50 端末
51 ブラウザ
52 DLNAプロキシ
60 DLNAプロキシ
70 DLNAサーバ
A100、B100 接続制御装置
100 接続制御装置
110 対端末接続処理部
111 要求処理部
112 通信処理部
120 対装置接続処理部
121 要求処理部
122 通信チャネル生成処理部
130 データベース

Claims (7)

  1. 第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムであって、
    前記通信システムは、第1の接続制御装置と第2の接続制御装置を有し、
    前記第1の接続制御装置は、
    前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成する手段と、
    前記第2の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成する手段と、を備え、
    前記第2の接続制御装置は、前記第2の端末から前記識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成する手段を備え、
    前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成される
    ことを特徴とする通信システム。
  2. 前記第1の通信チャネルを生成する手段は、前記第1の端末からの接続要求に基づいて、前記識別名をデータベースに登録し、
    前記中継通信チャネルを生成する手段は、前記第2の端末からの接続要求を受信した前記第2の接続制御装置から前記識別名の登録確認を受信し、前記データベースに当該識別名が登録されていることを確認した後に、前記中継通信チャネルを生成する
    ことを特徴とする請求項1に記載の通信システム。
  3. 前記中継通信チャネルは、WebRTCのプロトコルにより生成され、前記第1の通信チャネル及び前記第2の通信チャネルは、Named WebSocketsのプロトコルにより生成される
    ことを特徴とする請求項1又は2に記載の通信システム。
  4. 第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムにおいて使用される接続制御装置であって、
    前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する通信チャネルを生成する手段と、
    他の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成する手段と、を備え、
    前記通信チャネル、前記中継通信チャネル、及び前記他の接続制御装置と前記第2の端末との間に構築される通信チャネルにより前記仮想通信路が形成される
    ことを特徴とする接続制御装置。
  5. 前記通信チャネルを生成する手段は、前記第1の端末からの接続要求に基づいて、前記識別名をデータベースに登録し、
    前記中継通信チャネルを生成する手段は、前記第2の端末からの接続要求を受信した前記他の接続制御装置から前記識別名の登録確認を受信し、前記データベースに当該識別名が登録されていることを確認した後に、前記中継通信チャネルを生成する
    ことを特徴とする請求項4に記載の接続制御装置。
  6. 第1のネットワークに接続する第1の端末と第2のネットワークに接続する第2の端末との間に仮想通信路を設定する通信システムにおいて実行される仮想通信路設定方法であって、
    前記通信システムは、第1の接続制御装置と第2の接続制御装置を有し、
    前記仮想通信路設定方法は、
    前記第1の接続制御装置が、前記第1の端末から、前記仮想通信路の識別名を指定した接続要求を受信し、当該接続要求に基づいて、前記第1の端末との間に前記識別名に対応する第1の通信チャネルを生成するステップと、
    前記第2の接続制御装置が、前記第2の端末から前記識別名を指定した接続要求を受信するステップと、
    前記第1の接続制御装置が、前記第2の接続制御装置との間に前記識別名に対応する中継通信チャネルを生成するステップと、
    前記第2の接続制御装置が、前記第2の端末から受信した接続要求に基づいて、前記第2の端末との間に前記識別名に対応する第2の通信チャネルを生成するステップと、を備え、
    前記第1の通信チャネル、前記中継通信チャネル、及び前記第2の通信チャネルにより前記仮想通信路が形成される
    ことを特徴とする仮想通信路設定方法。
  7. コンピュータを、請求項4又は5に記載の接続制御装置における各手段として機能させるためのプログラム。
JP2015006498A 2015-01-16 2015-01-16 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム Active JP6478649B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015006498A JP6478649B2 (ja) 2015-01-16 2015-01-16 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015006498A JP6478649B2 (ja) 2015-01-16 2015-01-16 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2016134665A true JP2016134665A (ja) 2016-07-25
JP6478649B2 JP6478649B2 (ja) 2019-03-06

Family

ID=56434635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015006498A Active JP6478649B2 (ja) 2015-01-16 2015-01-16 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6478649B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060130135A1 (en) * 2004-12-10 2006-06-15 Alcatel Virtual private network connection methods and systems
JP2008283495A (ja) * 2007-05-10 2008-11-20 Nippon Telegr & Teleph Corp <Ntt> パケット転送システムおよびパケット転送方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060130135A1 (en) * 2004-12-10 2006-06-15 Alcatel Virtual private network connection methods and systems
JP2008283495A (ja) * 2007-05-10 2008-11-20 Nippon Telegr & Teleph Corp <Ntt> パケット転送システムおよびパケット転送方法

Also Published As

Publication number Publication date
JP6478649B2 (ja) 2019-03-06

Similar Documents

Publication Publication Date Title
US11516077B2 (en) Deployment of network-related features over cloud network
US20200059976A1 (en) IoT DEVICE CONNECTIVITY, DISCOVERY, AND NETWORKING
US11394570B1 (en) Communication bridging among disparate platforms
US20230147498A1 (en) Connecting a cloud network to the internet
CN101595688B (zh) 跨越公共网络以连接任意主机的虚拟专用lan
EP2930913B1 (en) System and method for simple service discovery in content-centric networks
CN102238226A (zh) 在以内容为中心的网络上的会话迁移
GB2469468A (en) Identifying recipient nodes in P2P communications
JP5847185B2 (ja) コンテンツ中心のネットワーク環境でグループ変更に関する情報を用いるコンテンツ共有方法及び装置
WO2015065210A1 (en) Secure mobile access to resources within a private network
US10880162B1 (en) Linking logical broadcast domains
JP6511624B2 (ja) マルチメディア共有方法、登録方法、サーバー及びプロキシサーバー
JP2007158594A (ja) データ通信システム、端末装置およびvpn設定更新方法
JP2017201776A (ja) 不均一ネットワークにまたがるコンテンツ配送
US20120243536A1 (en) Method and apparatus for transmitting and receiving multicast data in social networks
JP6393475B2 (ja) 通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム
CN104168302B (zh) 设备操控实现方法、系统和代理网关
JP6478649B2 (ja) 通信システム、接続制御装置、仮想通信路設定方法、及びプログラム
CN101309154B (zh) 报文的发送方法、发送装置和传输系统
JP2010212749A (ja) 情報処理システム及びパケット転送方法
JP2008098937A (ja) 仮想ネットワーク通信システムおよび通信端末
JP2009206876A (ja) サービス公開システム、通信中継装置、およびサービス公開装置
US11943132B2 (en) Cross-LAN communication and group member contact synchronization
JP4470641B2 (ja) Vpn管理サーバ、vpn設定システム、方法及びvpn管理サーバ用プログラム
KR20150066240A (ko) 알림 메시지 전달의 동기화를 위한 중간 노드

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181105

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: 20190115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190205

R150 Certificate of patent or registration of utility model

Ref document number: 6478649

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250