特許第6393475号(P6393475)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エヌ・ティ・ティ・コミュニケーションズ株式会社の特許一覧

特許6393475通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム
<>
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000002
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000003
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000004
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000005
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000006
  • 特許6393475-通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6393475
(24)【登録日】2018年8月31日
(45)【発行日】2018年9月19日
(54)【発明の名称】通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム
(51)【国際特許分類】
   G06F 13/00 20060101AFI20180910BHJP
【FI】
   G06F13/00 353C
【請求項の数】6
【全頁数】14
(21)【出願番号】特願2013-260602(P2013-260602)
(22)【出願日】2013年12月17日
(65)【公開番号】特開2015-118478(P2015-118478A)
(43)【公開日】2015年6月25日
【審査請求日】2016年7月5日
(73)【特許権者】
【識別番号】399035766
【氏名又は名称】エヌ・ティ・ティ・コミュニケーションズ株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】中蔵 聡哉
(72)【発明者】
【氏名】小松 健作
【審査官】 佐々木 洋
(56)【参考文献】
【文献】 特開2007−096826(JP,A)
【文献】 国際公開第2005/083959(WO,A1)
【文献】 特開2010−233168(JP,A)
【文献】 特表2015−520436(JP,A)
【文献】 特表2016−536696(JP,A)
【文献】 特表2015−510161(JP,A)
【文献】 特開2013−186820(JP,A)
【文献】 日紫喜徹也 他,WebRTCの標準化動向,電子情報通信学会誌 第96巻 第10号,日本,一般社団法人電子情報通信学会,2013年10月 1日,pp. 790-796
【文献】 鈴木新一 他,学校間ネットワーク上に構築した遠隔教育支援システムの接続手法の提案とその評価,情報処理学会論文誌 論文誌ジャーナル Vol.54 No.3,日本,一般社団法人情報処理学会,2013年 3月15日,pp. 1050-1060
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
通信アダプタ装置と、他の通信アダプタ装置を備える通信システムにおける前記通信アダプタ装置であって、
Webブラウザを有し、当該Webブラウザを用いて前記他の通信アダプタ装置との間でトンネル接続を行うトンネル接続手段と、
受信したパケットを前記トンネル接続手段により送受信される形式のデータに変換し、当該データを前記トンネル接続手段に渡すデータ変換手段と、を備え
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とする通信アダプタ装置。
【請求項2】
前記パケットのヘッダ情報に基づいて、当該パケットを前記データ変換手段に渡すか否かを判定する判定手段
を備えることを特徴とする請求項1に記載の通信アダプタ装置。
【請求項3】
前記トンネル接続手段は、ネットワーク上に備えられた通信管理装置にアクセスし、当該通信管理装置からWebページを受信し、当該Webページに含まれるプログラムを実行することにより、前記トンネルを確立する
ことを特徴とする請求項1又は2に記載の通信アダプタ装置。
【請求項4】
コンピュータを、請求項1ないしのうちいずれか1項に記載の通信アダプタ装置における各手段として機能させるためのプログラム。
【請求項5】
第1の通信アダプタ装置と、第2の通信アダプタ装置を備える通信システムであって、
前記第1の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネル接続を行う第1のトンネル接続手段を備え、
前記第2の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第1の通信アダプタ装置との間でトンネル接続を行う第2のトンネル接続手段を備え、
前記第1の通信アダプタ装置は、受信したパケットを、前記第1及び第2のトンネル接続手段により送受信される形式のデータに変換し、当該データを前記第1のトンネル接続手段により前記トンネルを介して送信し、
前記第2の通信アダプタ装置は、前記第2のトンネル接続手段により前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出し、
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とする通信システム。
【請求項6】
Webブラウザを備える第1の通信アダプタ装置と、Webブラウザを備える第2の通信アダプタ装置を備える通信システムにおけるトンネル通信方法であって、
前記第1の通信アダプタ装置が、前記Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネルを確立するステップと、
前記第1の通信アダプタ装置が、パケットを受信し、当該パケットを、前記トンネルを介して送受信される形式のデータに変換し、当該データを前記トンネルを介して送信するステップと、
前記第2の通信アダプタ装置が、前記トンネルにより前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出するステップとを備え
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とするトンネル通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク通信に関するものであり、特にP2P通信に関連するものである。
【背景技術】
【0002】
あるネットワークと他のネットワークとを仮想的に接続し、同一ネットワークであるかのように利用する技術として、VPNが存在する。当該技術では、事前にVPNを確立してから通信を行うことで、同一ネットワーク上と同じ実装で異なるネットワーク上の装置同士でP2P通信を実施することができる。
【0003】
なお、VPNにより仮想ネットワークを構築する技術が開示された先行技術文献として例えば特許文献1がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2013−5110号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、既存のVPN技術では、VPN機能を備えた高機能なネットワーク機器を事前に準備し、煩雑な設定を行うことが必要である。従って、既存のVPN技術では、任意の装置間でP2P通信を行うことは難しかった。
【0006】
本発明は上記の点に鑑みてなされたものであり、任意の装置間で容易にP2P通信を行うことを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の実施の形態によれば、通信アダプタ装置と、他の通信アダプタ装置を備える通信システムにおける前記通信アダプタ装置であって、
Webブラウザを有し、当該Webブラウザを用いて前記他の通信アダプタ装置との間でトンネル接続を行うトンネル接続手段と、
受信したパケットを前記トンネル接続手段により送受信される形式のデータに変換し、当該データを前記トンネル接続手段に渡すデータ変換手段と、を備え
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とする通信アダプタ装置が提供される。
【0008】
また、本発明の実施の形態によれば、第1の通信アダプタ装置と、第2の通信アダプタ装置を備える通信システムであって、
前記第1の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネル接続を行う第1のトンネル接続手段を備え、
前記第2の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第1の通信アダプタ装置との間でトンネル接続を行う第2のトンネル接続手段を備え、
前記第1の通信アダプタ装置は、受信したパケットを、前記第1及び第2のトンネル接続手段により送受信される形式のデータに変換し、当該データを前記第1のトンネル接続手段により前記トンネルを介して送信し、
前記第2の通信アダプタ装置は、前記第2のトンネル接続手段により前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出し、
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とする通信システムが提供される。
【0009】
また、本発明の実施の形態によれば、Webブラウザを備える第1の通信アダプタ装置と、Webブラウザを備える第2の通信アダプタ装置を備える通信システムにおけるトンネル通信方法であって、
前記第1の通信アダプタ装置が、前記Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネルを確立するステップと、
前記第1の通信アダプタ装置が、パケットを受信し、当該パケットを、前記トンネルを介して送受信される形式のデータに変換し、当該データを前記トンネルを介して送信するステップと、
前記第2の通信アダプタ装置が、前記トンネルにより前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出するステップとを備え
前記トンネルは、WebRTC又はWebSocketの通信手順により確立される
ことを特徴とするトンネル通信方法が提供される。
【発明の効果】
【0010】
本発明の実施の形態によれば、通信ネットワーク上で任意の装置間で容易にP2P通信を行うことが可能となる。
【図面の簡単な説明】
【0011】
図1】本発明の実施の形態に係る通信システムの全体構成図である。
図2】通信アダプタ装置10の機能構成図である。
図3】通信システムにおけるパケット転送の基本的な動作を説明するための図である。
図4】トンネル接続部をWebベース技術を用いて実現する場合における通信管理装置30の機能構成図である。
図5】トンネル接続部をWebRTCで実現する場合におけるトンネル接続時の処理シーケンスの例を示す図である。
図6】トンネル接続部をWebSocketで実現する場合におけるトンネル接続時の処理シーケンスであり、通信管理装置30を中継装置として用いる場合の例を示す図である。
【発明を実施するための形態】
【0012】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、本実施の形態では、Webベースの双方向通信技術としてWebRTCとWebSocketを挙げているが、これらは例に過ぎず、他の技術を使用することも可能である。
【0013】
(システムの全体構成)
図1に本発明の実施の形態に係る通信システムの全体構成図を示す。図1に示すように、本実施の形態に係る通信システムは、通信アダプタ装置10、通信アダプタ装置20、通信管理装置30、ユーザ端末40、ユーザ端末50を備える。また、各装置はネットワーク接続されており、ネットワーク通信可能である。
【0014】
本実施の形態では、通信アダプタ装置10と通信アダプタ装置20との間にトンネルが確立され、当該トンネルを介してユーザ端末40とユーザ端末50との間で通信を行う。ユーザ端末間での通信の種類は特定の種類に限定されず、データ、ビデオ、音声、テキスト等、どのような通信でもよい。また、ユーザ端末間の通信プロトコルも特定の種類に限定されない。なお、当該トンネルの形態は、通信アダプタ装置間でのP2P通信によるトンネルの他、中継装置を経由して通信を行うトンネルも含むものである。
【0015】
本実施の形態に係る通信管理装置30は、Webサーバ機能を含み、トンネル接続の可否判定、ユーザ端末間での通信の可否判定等を行う機能や、トンネル確立のための処理を行う機能を含む。
【0016】
図1に示す例では、通信アダプタ装置10とユーザ端末40とを別々の装置として示しているが、これらが1つの装置であってもよい。1つの装置の場合でも、この装置を「通信アダプタ装置」と呼ぶ。この場合、ユーザ端末40で動作する通信アプリケーションが通信アダプタ装置10の中に備えられる。通信アダプタ装置20とユーザ端末50に関しても同様である。また、各通信アダプタ装置の配下には、1つのユーザ端末が示されているが、複数であってもよい。また、通信アダプタ装置も3つ以上が備えられていてもよい。
【0017】
本実施の形態では、通信アダプタ装置10と通信アダプタ装置20との間のトンネルを、Webベースの技術を用いて簡易に設定することが可能である。各通信アダプタ装置のユーザは、基本的にWebサーバ機能を含む通信管理装置30にWebブラウザによりアクセスすることでトンネルを確立することができる。当該技術の具体例については後述する。本実施の形態では、このように簡易に設定されたトンネルを利用してユーザ端末40とユーザ端末50との間の通信が可能となっている。
【0018】
(通信アダプタ装置の機能構成)
図2に、通信アダプタ装置10の機能構成図を示す。図2に示すように、通信アダプタ装置10は、NW送受信部11、接続判定部12、データ変換部13、トンネル接続部14を備える。通信アダプタ装置20は、通信アダプタ装置10と同じ機能構成を持つため、代表として通信アダプタ装置10により説明を行う。なお、通信アダプタ装置20においては、NW送受信部21、接続判定部22、データ変換部23、トンネル接続部24を備える。通信アダプタ装置10の各機能部の機能概要は以下のとおりである。
【0019】
NW送受信部11は、ユーザ端末40側のネットワークに接続され、ユーザ端末40側から送出されたパケット(例:IPパケット)を受信するとともに、トンネル側から受信したパケットをユーザ端末40側へ送出する。
【0020】
接続判定部12は、NW送受信部11からパケットを受け取り、当該パケットのヘッダ情報等に基づいて、当該パケットをトンネルを介して送信するか否かを判定し、送信可である場合にのみ、当該パケットをデータ変換部13に渡す。例えば、接続判定部12は、対向側(通信アダプタ装置20)の配下のユーザ端末(アプリケーション)のアドレス情報を保持し、パケットの宛先アドレスが当該アドレス情報に含まれるアドレスである場合に送信可とする、といった動作を行うことができる。
【0021】
また、接続判定部12は、送信元アドレス、あるいは、送信元アドレスと送信先アドレスの組で、同様の判定を行ってもよい。また、接続判定部12は、パケットのヘッダ情報で判別されるプロトコルが所定のプロトコルである場合にのみ送信可とする判定を行ってもよい。
【0022】
接続判定部12は、上記の判定を自身の記憶手段に予め格納したアドレス情報やプロトコル情報に基づいて行ってもよいし、通信管理装置30に対してヘッダ情報を送信することで、通信管理装置30が判定を行い、通信管理装置30から判定結果を受信することにより、送信可否判定を行うこととしてもよい。
【0023】
また、接続判定部12は、データ変換部13から受け取るパケットについても上記と同様の判定を行い、送信可であればNW送受信部11にパケットを渡す動作を行うこともできる。なお、データ変換部13から受け取るパケットについては、対向側で既に判定がなされていることから、判定を行わずにNW送受信部11にパケットを渡すこととしてもよい。
【0024】
トンネルを経由した通信では、利用者にとって信頼できるローカルネットワークのみの接続に留まらないため、攻撃者による不正な端末やアプリケーションが対向通信アダプタ装置のネットワークに存在する可能性を考慮する必要がある。そこで、上記のような送信可否判定を行うことで、事前登録していない端末やアプリケーションを排除することが可能である。また、利用量に応じて課金を行うアプリケーションが存在する場合、通信管理装置30が利用統計を提供することも可能である。
【0025】
データ変換部13は、接続判定部12から受信したパケット(ヘッダとペイロード)を、トンネル接続部14の処理に適した形式を変換する。上述したように、本実施の形態では、Webベース技術を用いてユーザにとって簡易な操作でトンネルを設定するが、このようなWebベース技術によるトンネルで送受信できるデータの種類が、テキストである場合や、ビデオである場合がある。
【0026】
そこで、データ変換部13は、通信アダプタ装置10でトンネル設定に使用するWebベース技術で送受信できるデータの形式に適合させるようにパケットの変換を行う。例えば、トンネル接続部14がビデオデータの送受信を行うものであれば、パケットをビデオデータと同様のメディアデータ形式に変換する。また、例えば、トンネル接続部14がテキストデータの送受信を行うものであれば、データ変換部13は、入力パケットに対し、ベース64のエンコードを行う。
【0027】
データ変換部13は、トンネル接続部14からデータを受信した場合には、上記の逆の変換を行い、ユーザ端末40側に送信されるパケットを生成する。
【0028】
トンネル接続部14は、Webブラウザを備え、Webベース技術を使用して、対向の通信アダプタ装置20のトンネル接続部24とトンネル(コネクション)を設定する。本実施の形態では、当該Webベース技術として、WebRTCもしくはWebSocketを使用しているが、これらに限られるわけではない。
【0029】
WebRTCでは、トンネル接続部14は、対向のトンネル接続部24との間でP2PでUDPトンネルを確立する。
【0030】
WebSocketでは、トンネル接続部14は、中継装置(本実施の形態では通信管理装置30とする)との間で、TCPと同様のコネクションを確立するとともに、対向のトンネル接続部24も通信管理装置30との間にコネクションを確立する。また、通信管理装置30は、コネクション間でパケットを受け渡す機能を有しており、当該機能と、これらコネクションにより、トンネル接続部14とトンネル接続部24との間のトンネルが実現される。
【0031】
本実施の形態に係る通信アダプタ装置は、コンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、通信アダプタ装置が有する機能は、当該コンピュータに内蔵されるCPUやメモリ、ハードディスクなどのハードウェア資源を用いて、通信アダプタ装置で実施される処理に対応するプログラムを実行することによって実現することが可能である。また、上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【0032】
(処理の流れ)
次に、図3を参照して、ユーザ端末40からパケットが送信され、ユーザ端末50が当該パケットを受信する場合の基本的な処理の流れを説明する。図3に示す例では、既にトンネル接続部14とトンネル接続部24との間でトンネルが確立されているものとする。
【0033】
まず、NW送受信部11はユーザ端末40から送信されたパケットを受信し(ステップ1)、当該パケットを接続判定部12に渡す(ステップ2)。当該パケットの宛先アドレスはユーザ端末50のアドレスであり、送信元アドレスはユーザ端末40のアドレスである。接続判定部12は、前述したように、パケットのヘッダ情報等に基づき、必要に応じて通信管理装置30へ問い合わせを行う(ステップ3)ことにより、パケットの送信可否を判定する。ここで、送信不可である場合には、パケットは破棄される。送信可である場合、接続判定部12は、パケットをデータ変換部13に渡す。
【0034】
データ変換部13は、パケットをトンネル接続部14が送信できる形式のデータに変換し、当該データをトンネル接続部14に渡す(ステップ5)。
【0035】
トンネル接続部14は、データ変換部13から渡されたデータをトンネルを介して対向の通信アダプタ装置20のトンネル接続部24に送信する(ステップ6)。
【0036】
トンネル接続部24は、トンネルにより受信したデータをデータ変換部23に渡す(ステップ7)。データ変換部23は、トンネル送受信用の形式のデータを、通常のパケットに戻す変換を行い、当該パケットを接続判定部22に渡す(ステップ8)。ここで、接続判定を行ってもよいが、本例では、送信側で接続判定をしているので、接続判定部22は当該パケットについては接続判定を行うことなくNW送受信部21に渡し(ステップ9)、NW送受信部21がパケットを送出する。当該パケットの宛先はユーザ端末50であるから、ユーザ端末50が当該パケットを受信する。
【0037】
上記の例はユーザ端末40からユーザ端末50へのパケット通信の例であるが、ユーザ端末50からユーザ端末40へのパケット通信も同様の手順で行われる。
【0038】
上記のようなトンネル通信を行うので、ユーザ端末40とユーザ端末50間では同一のネットワーク上での通信と同様に通信を行うことができる。端末間の通信プロトコルには限定はなく、例えばTCP/IP通信やその他のプロトコルの通信を行うことが可能である。また、以下のようにして対向端末の検出を行うことも可能である。
【0039】
例えば、ユーザ端末40から探索のためのマルチキャストパケット(ブロードキャストパケットも同様)が送出された場合、当該マルチキャストパケットは通信アダプタ装置10により受信され、トンネルを経由して、通信アダプタ装置20からユーザ端末50側のネットワークにおいてマルチキャスト配信される。そして、当該マルチキャストパケットを受信したユーザ端末50が、マルチキャストパケットに対する応答パケットをユーザ端末40に向けて送信する。
【0040】
これにより、ユーザ端末40は、あたかも自身が存在するネットワークと同じネットワーク内にユーザ端末50が存在する場合と同様にして、ユーザ端末50を検出し、ユーザ端末50と通信を行うことが可能になる。
【0041】
(トンネル接続処理の例)
これまでに説明したように、本実施の形態では、WebRTC、もしくはWebSocketの技術を用いて通信アダプタ装置間でトンネルを確立することとしている。
【0042】
このようなWebベース技術を用いた場合の通信管理装置30の機能構成例を図4に示す。図4に示すように、通信管理装置30は、Web通信機能部31、認証部32、Webデータ格納部33、接続情報格納部34を含む。
【0043】
Web通信機能部31は、Webサーバ機能、WebRTC、WebSocket等のWebベースの通信処理を行うための機能を含む。本例では、トンネル確立のために、まず通信アダプタ装置10、20は、Webブラウザ(トンネル接続部14、24)からWeb通信機能部31にアクセスし、Web通信機能部31からWebページ(通信のために必要なプログラム等を含む)を取得することとしている。
【0044】
認証部32は、例えば、トンネル確立のためにトンネル接続部14、24からアクセスを受けた際、あるいはその後に接続先の指定等を受けた場合に、アクセス元(要求元)の識別情報(アドレス、ID等)に基づいて、アクセス元(要求元)が予め登録された装置か否かを判定することで認証を行い、認証に成功した場合に、トンネル接続を許可する(応答を返す)。
【0045】
Webデータ格納部33は、通信アダプタ装置10、20に送信するWebページ(HTMLデータ)、プログラム(スクリプト等)等を格納する。接続情報格納部34は、例えば、通信管理装置30にアクセスしている(通信管理装置30との間でコネクションを有している)通信アダプタ装置の情報(アドレス、名前等)が格納される。この情報は、例えば、グループ分けされていてもよい。このグループ分けはチャットルームの概念と同様である。例えば、通信アダプタ装置がWebブラウザから通信管理装置30にアクセスしたときに、既に通信管理装置30に接続している通信アダプタ装置の情報をルーム毎に表示するWebページを当該アクセスした通信アダプタ装置に返し、Webページを受信した当該通信アダプタ装置は、ルームを選択、もしくはルームの中のいずれかの通信アダプタ装置を選択することで、選択した通信アダプタ装置とトンネルを確立するといった形態を実現することが可能である。
【0046】
図5に、トンネル接続部14、24をWebRTCで実現する場合のトンネル確立までの処理シーケンス例を説明する。なお、このシーケンスは一例に過ぎず、他の処理シーケンスによりトンネルが確立されてもよい。
【0047】
図5の例では、まず、通信アダプタ装置10のトンネル接続部14(Webブラウザ)が、通信管理装置30にアクセスし、リクエストを送信する(ステップ101)。そして、通信管理装置30のWeb通信機能部31は、Webページをトンネル接続部14に送信する(ステップ102)。本例では、このWebページに、WebRTC接続処理のためのプログラム(スクリプト等)が含まれており、以降のトンネル接続のための処理は当該プログラムの機能(及びWebブラウザの機能)により実施される。なお、これは例であり、当該プログラムが予め通信アダプタ装置10に存在することとしてもよい。
【0048】
通信アダプタ装置20のトンネル接続部24も同様にして通信管理装置30にアクセスし、プログラムが含まれるWebページを受信する(ステップ103、104)。
【0049】
一例として、各Webページには、通信管理装置30にアクセスした通信アダプタ装置の情報が表示される。本例では、通信アダプタ装置10のWebページ画面に通信アダプタ装置20の情報が表示され、通信アダプタ装置20のWebページ画面に通信アダプタ装置10の情報が表示される。
【0050】
通信アダプタ装置10において、通信アダプタ装置20とトンネル接続することを希望し、例えばユーザがWebページ画面上で通信アダプタ装置20を選択したものとすると、トンネル接続部14は、接続要求を通信管理装置30に送信する(ステップ105)。本例では、この接続要求に通信アダプタ装置10の通信情報(トンネル接続部14のアドレス等)が含められる。通信管理装置30のWeb通信機能部31は、当該接続要求(通信情報)を、接続先である通信アダプタ装置20に転送する(ステップ106)。
【0051】
当該接続要求を受信した通信アダプタ装置20のトンネル接続部24は、接続要求に対する応答を通信管理装置30に送信する(ステップ107)。当該応答には、通信アダプタ装置20の通信情報(トンネル接続部24のアドレス等)が含められる。通信管理装置30のWeb通信機能部31は、当該応答(通信情報)を、通信アダプタ装置10に転送する(ステップ108)。
【0052】
そして、通信アダプタ装置10のトンネル接続部14と通信アダプタ装置20のトンネル接続部24間でネゴシエーションが行われる。このネゴシエーションは、例えば、暗号鍵、NAT通過方式等のネゴシエーションを含む(ステップ109)。
【0053】
その後、通信アダプタ装置10のトンネル接続部14と通信アダプタ装置20のトンネル接続部24間でトンネルが確立され、トンネル通信を行うことが可能となる(ステップ110)。
【0054】
図6に、トンネル接続部14、24をWebSocketで実現する場合のトンネル確立までの処理シーケンス例を説明する。なお、このシーケンスは一例に過ぎず、他の処理シーケンスによりトンネルが確立されてもよい。
【0055】
図6の例では、まず、通信アダプタ装置10のトンネル接続部14(Webブラウザ)が、通信管理装置30にアクセスし、リクエストを送信する(ステップ201)。そして、通信管理装置30のWeb通信機能部31は、Webページをトンネル接続部14に送信する(ステップ202)。本例では、このWebページに、WebSocket接続のためのプログラム(スクリプト等)が含まれており、当該プログラムの機能により、トンネル接続部14と通信管理装置30のWeb通信機能部31との間にコネクションが設定される(ステップ203)。当該コネクションにより、トンネル接続部14とWeb通信機能部31の間では、リクエスト/レスポンス等の手順なしに、自由に双方向の通信が可能になっている。なお、これは例であり、上記プログラムが予め通信アダプタ装置10に存在することとしてもよい。
【0056】
通信アダプタ装置20のトンネル接続部24も同様にして通信管理装置30にアクセスし、プログラムが含まれるWebページを受信し、コネクションを確立する(ステップ204、205、206)。
【0057】
本例では、各Webページには、参加を希望するグループ番号(ルーム番号と呼んでもよい)を指定する欄があり、本実施の形態では、同じグループ番号を指定した通信アダプタ装置間でトンネル接続がされるものとする。
【0058】
例えば、通信アダプタ装置10と通信アダプタ装置20においてグループ1を指定したものとすると、当該グループの指示が接続要求として、各トンネル接続部から通信管理装置30に送信される(ステップ207、208)。
【0059】
通信管理装置30のWeb通信機能部31は、通信アダプタ装置10と通信アダプタ装置20が同じグループに属したことを判断し、トンネル接続部14との間のコネクションと、トンネル接続部24との間のコネクションを接続する。つまり、トンネル接続部14との間のコネクションから受信したパケットはトンネル接続部24との間のコネクションに転送し、トンネル接続部24との間のコネクションから受信したパケットはトンネル接続部14との間のコネクションに転送するよう設定する。
【0060】
これにより、通信アダプタ装置10と通信アダプタ装置20間のトンネルが確立される(ステップ209)。
【0061】
(実施の形態のまとめ、効果等)
以上説明したように、本実施の形態では、通信アダプタ装置と、他の通信アダプタ装置を備える通信システムにおける前記通信アダプタ装置であって、Webブラウザを有し、当該Webブラウザを用いて前記他の通信アダプタ装置との間でトンネル接続を行うトンネル接続手段と、受信したパケットを前記トンネル接続手段により送受信される形式のデータに変換し、当該データを前記トンネル接続手段に渡すデータ変換手段と、を備える通信アダプタ装置が提供される。
【0062】
前記通信アダプタ装置は、前記パケットのヘッダ情報に基づいて、当該パケットを前記データ変換手段に渡すか否かを判定する判定手段を更に備えてもよい。また、前記トンネル接続手段は、ネットワーク上に備えられた通信管理装置にアクセスし、当該通信管理装置からWebページを受信し、当該Webページに含まれるプログラムを実行することにより、前記トンネルを確立するように構成してもよい。
【0063】
前記トンネルは、例えばWebRTC又はWebSocketの通信手順により確立されるものである。
【0064】
本実施の形態においては、例えば、前述した探索のためのパケットとしてDLNAでの探索パケットを送出することができ、通信アダプタ装置が自動的に中継を行うことで、異なるネットワーク上に存在する機器を発見することが可能になる。発見された機器間の通信もまた、通信アダプタ装置が中継を行うことで、異なるネットワーク上の機器間でDLNAで通信を行うことが可能になる。
【0065】
また、本実施の形態では、通信アダプタ装置が不正なデバイスとの接続を防ぐため、異なるネットワーク上に存在する機器との接続においても、同一家庭内と同様に安全に通信を行う事が可能になる。
【0066】
また、一般的なUDPによるP2P通信を行うアプリケーションを構築する際、本実施の形態によるトンネリングを利用して通信を行う事で、同一ネットワーク上での通信を前提とした実装のみで構築が可能になる。また、TCPによるP2P通信についても、この通信アダプタ装置を使用することで構築が可能になる。
【0067】
また、本実施の形態により、VPNにおいて必要であった高度なネットワーク機器や専門知識を要する設定は必要なく、Webサービス(通信管理装置30)へ接続し、接続先の相手を選択するだけで利用が可能である。
【0068】
また、通信アダプタ装置や通信管理装置30が提供する判定機能等を利用することにより、攻撃者による不正な接続を未然に防ぐことや、サービス利用に応じた課金等、ユーザ管理を行うことができる。
【0069】
(第1項)
通信アダプタ装置と、他の通信アダプタ装置を備える通信システムにおける前記通信アダプタ装置であって、
Webブラウザを有し、当該Webブラウザを用いて前記他の通信アダプタ装置との間でトンネル接続を行うトンネル接続手段と、
受信したパケットを前記トンネル接続手段により送受信される形式のデータに変換し、当該データを前記トンネル接続手段に渡すデータ変換手段と、
を備えることを特徴とする通信アダプタ装置。
(第2項)
前記パケットのヘッダ情報に基づいて、当該パケットを前記データ変換手段に渡すか否かを判定する判定手段
を備えることを特徴とする第1項に記載の通信アダプタ装置。
(第3項)
前記トンネル接続手段は、ネットワーク上に備えられた通信管理装置にアクセスし、当該通信管理装置からWebページを受信し、当該Webページに含まれるプログラムを実行することにより、前記トンネルを確立する
ことを特徴とする第1項又は第2項に記載の通信アダプタ装置。
(第4項)
前記トンネルは、WebRTC又はWebSocketの通信手順により確立されることを特徴とする第1項ないし第3項のうちいずれか1項に記載の通信アダプタ装置。
(第5項)
コンピュータを、第1項ないし第4項のうちいずれか1項に記載の通信アダプタ装置における各手段として機能させるためのプログラム。
(第6項)
第1の通信アダプタ装置と、第2の通信アダプタ装置を備える通信システムであって、
前記第1の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネル接続を行う第1のトンネル接続手段を備え、
前記第2の通信アダプタ装置は、
Webブラウザを有し、当該Webブラウザを用いて前記第1の通信アダプタ装置との間でトンネル接続を行う第2のトンネル接続手段を備え、
前記第1の通信アダプタ装置は、受信したパケットを、前記第1及び第2のトンネル接続手段により送受信される形式のデータに変換し、当該データを前記第1のトンネル接続手段により前記トンネルを介して送信し、
前記第2の通信アダプタ装置は、前記第2のトンネル接続手段により前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出する
ことを特徴とする通信システム。
(第7項)
Webブラウザを備える第1の通信アダプタ装置と、Webブラウザを備える第2の通信アダプタ装置を備える通信システムにおけるトンネル通信方法であって、
前記第1の通信アダプタ装置が、前記Webブラウザを用いて前記第2の通信アダプタ装置との間でトンネルを確立するステップと、
前記第1の通信アダプタ装置が、パケットを受信し、当該パケットを、前記トンネルを介して送受信される形式のデータに変換し、当該データを前記トンネルを介して送信するステップと、
前記第2の通信アダプタ装置が、前記トンネルにより前記データを受信し、当該データを元のパケットに変換し、当該パケットを送出するステップと
を備えることを特徴とするトンネル通信方法。
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【0070】
10、20 通信アダプタ装置
30 通信管理装置30
40、50 ユーザ端末
11、21 NW送受信部
12、22 接続判定部
13、23 データ変換部
14、24 トンネル接続部
31 Web通信機能部
32 認証部
33 Webデータ格納部
34 接続情報格納部
図1
図2
図3
図4
図5
図6