(57)【要約】【課題】異なるネットワークに存在する機器間でのデータ処理を、それらのネットワーク外からのリモートコントロールにより実現すること。【解決手段】情報処理装置は、通信部と制御部とを有する。上記通信部は、第１のネットワークに存在する第１のサーバ及び第１のデバイスと、第２のネットワークに存在する第２のサーバ及び第２のデバイスと、第３のネットワークに存在し上記第１及び第２のサーバへの接続情報を記憶した中継サーバとに、第４のネットワークを介して接続可能である。  上記制御部は、上記中継サーバから上記接続情報を受信するように上記通信部を制御し、当該接続情報を用いて、上記第１及び第２のサーバを介して上記第１及び第２のデバイス間のデータ伝送処理を制御することが可能である。【選択図】図１
2015023438.tif 000002
【特許請求の範囲】
【請求項１】
第１のネットワークに存在する第１のサーバ及び第１のデバイスと、第２のネットワークに存在する第２のサーバ及び第２のデバイスと、第３のネットワークに存在し前記第１及び第２のサーバへの接続情報を記憶した中継サーバとに、第４のネットワークを介して接続可能な通信部と、
前記中継サーバから前記接続情報を受信するように前記通信部を制御し、当該接続情報を用いて、前記第１及び第２のサーバを介して前記第１及び第２のデバイス間のデータ伝送処理を制御することが可能な制御部と
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記第１のネットワークには複数の第１のデバイスが存在し、
前記第２のネットワークには複数の第２のデバイスが存在し、
前記中継サーバは、前記複数の第１のデバイス及び前記複数の第２のデバイスへの接続情報を含むデバイスリストを記憶し、
前記制御部は、前記中継サーバから前記デバイスリストを受信し、当該デバイスリストを基に、前記第１のデバイス宛または前記第２のデバイス宛のメッセージをそれぞれ生成し、当該メッセージを前記第１のサーバまたは前記第２のサーバへ送信するように前記通信部を制御可能である
情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
表示部を更に具備し、
前記制御部は、前記デバイスリストとして、前記第１のデバイス及び前記第２のデバイスの各属性情報を、当該第１のデバイス及び第２のデバイスが前記第１のネットワークと前記第２のネットワークのいずれに属するかを区別可能に表示するように前記表示部を制御可能であり、当該デバイスリスト上からユーザにより選択された前記第１のデバイス宛または前記第２のデバイス宛の前記メッセージを生成可能である
情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記第１のネットワークは第１の施設内に構築され、
前記第２のネットワークは第２の施設内に構築され、
前記制御部は、前記属性情報として、前記第１の施設内で前記第１のデバイスが存在する位置及び前記第２の施設内で前記第２のデバイスが存在する位置をそれぞれ示す位置情報を前記デバイスリストに含めるように前記表示部を制御可能である
情報処理装置。
【請求項５】
請求項１に記載の情報処理装置であって、
前記第１のネットワークには第１のルータが存在し、
前記第２のネットワークには第２のルータが存在し、
前記制御部は、前記第１のデバイスが前記第２のデバイスへアクセス可能となるように、前記第２のルータにポートの開放を要求する開放要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
【請求項６】
請求項５に記載の情報処理装置であって、
前記第２のデバイスはコンテンツを記憶し、
前記制御部は、前記第２のデバイスから前記コンテンツを前記第１のデバイスへストリーミングするための前記第１のデバイスと前記第２のデバイス間のメッセージの送信が開始されるときに前記開放要求を送信し、前記ストリーミングが終了したときに、前記第２のルータに前記ポートの閉鎖を要求する閉鎖要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
【請求項７】
請求項５に記載の情報処理装置であって、
前記制御部は、前記受信された接続情報を用いた前記第１のサーバまたは前記第２のサーバへのアクセスを開始するときに前記開放要求を送信し、前記第１のサーバまたは前記第２のサーバへのアクセスを終了するときに、前記第２のルータに前記ポートの閉鎖を要求する閉鎖要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
【請求項８】
請求項１に記載の情報処理装置であって、
前記制御部は、
前記第１のサーバまたは前記第２のサーバへ、前記第１のデバイスまたは前記第２のデバイスの検索要求を送信するように前記通信部を制御可能であり、
前記検索要求信号に対する発見通知を受信したときに、サーバソケットを生成し、ローカルホスト上に仮想デバイスをエミュレートし、
前記第１のデバイスまたは前記第２のデバイスから前記第１のサーバまたは前記第２のサーバを介して送信され前記サーバソケットを介して受信されたメッセージに、前記仮想デバイスを用いて、前記第１のサーバまたは前記第２のサーバを介して応答するように前記通信部を制御可能である
情報処理装置。
【請求項９】
第１のネットワークに存在する第１のサーバ及び第２のネットワークに存在する第２のサーバへの接続情報を記憶した、第３のネットワークに存在する中継サーバから、前記接続情報を受信し、
前記受信された接続情報を用いて、前記第１の及び第２のサーバを介して、前記第１のネットワークに存在する第１のデバイスと、前記第２のネットワークに存在する第２のデバイスとの間のデータ伝送処理を制御する
情報処理方法。
【請求項１０】
情報処理装置に、
第１のネットワークに存在する第１のサーバ及び第２のネットワークに存在する第２のサーバへの接続情報を記憶した、第３のネットワークに存在する中継サーバから、前記接続情報を受信するステップと、
前記受信された接続情報を用いて、前記第１の及び第２のサーバを介して、前記第１のネットワークに存在する第１のデバイスと、前記第２のネットワークに存在する第２のデバイスとの間のデータ伝送処理を制御するステップと
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、他の情報処理装置へリモートアクセスが可能な情報処理装置、当該情報処理装置における情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、自宅にあるＢＤＲ（Blu-ray（登録商標） Recorder）等で録画されたデジタル放送番組や、ＰＣ（Personal Computer）に保存された画像を、自宅外からスマートフォン等のモバイル機器を用いて視聴する、リモートアクセスの機会が増えてきている。
【０００３】
これに関連して、ＤＬＮＡ（Digital Living Network Alliance）１．０では、ＢＤＲやＰＣ等のサーバ（ＤＭＳ：Digital Media Server）に保存されているコンテンツがスマートフォン等のクライアント（ＤＭＰ：Digital Media Player）で再生される2Box Pullのシナリオが想定されている。
【０００４】
一方、ＤＬＮＡ１．５では、ＤＭＳに保存されたコンテンツが、コントローラ（ＤＭＣ：Digital Media Controller）によるリモート指示によってプレイヤー（ＤＭＲ：Digital Media Renderer）で再生される3Boxモデルも可能となっている（例えば、下記特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２３１９７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載の技術では、ＤＭＣとＤＭＲが同一ＬＡＮ（Local Area Network）に存在し、ＤＭＳはＬＡＮ外に存在することが前提となっている。したがって、例えばＤＭＳが自宅（ＬＡＮ）、ＤＭＲが他人の自宅（ＬＡＮ）、ＤＭＣが自宅外（３Ｇ（3rd Generation）／ＬＴＥ（Long Term Evolution））、というように、三者がそれぞれ物理的に異なるネットワークに属している環境下で3 Boxモデルのような処理を実現することはできない。特に、ＤＭＣとして機能するスマートフォンのような３Ｇ回線やＬＴＥ回線に接続可能なモバイル機器が普及している近年においては、それがネットワークの制約を受けるのは利便性に欠ける。
【０００７】
以上のような事情に鑑み、本技術の目的は、異なるネットワークに存在する機器間でのデータ伝送処理を、それらのネットワーク外からのリモートコントロールにより実現可能な情報処理装置、情報処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上述の課題を解決するため、本技術の一形態に係る情報処理装置は、通信部と制御部とを有する。
上記通信部は、第１のネットワークに存在する第１のサーバ及び第１のデバイスと、第２のネットワークに存在する第２のサーバ及び第２のデバイスと、第３のネットワークに存在し上記第１及び第２のサーバへの接続情報を記憶した中継サーバとに、第４のネットワークを介して接続可能である。
上記制御部は、上記中継サーバから上記接続情報を受信するように上記通信部を制御し、当該接続情報を用いて、上記第１及び第２のサーバを介して上記第１及び第２のデバイス間のデータ伝送処理を制御することが可能である。
【０００９】
この構成により情報処理装置は、異なるネットワークに存在する機器間でのデータ伝送処理を、それらのネットワーク外（例えばモバイルネットワーク等）からのリモートコントロールにより実現することができる。
【００１０】
上記第１のネットワークには複数の第１のデバイスが存在し、上記第２のネットワークには複数の第２のデバイスが存在してもよい。この場合上記中継サーバは、上記複数の第１のデバイス及び上記複数の第２のデバイスへの接続情報を含むデバイスリストを記憶してもよい。またこの場合上記制御部は、上記中継サーバから上記デバイスリストを受信し、当該デバイスリストを基に、上記第１のデバイス宛または上記第２のデバイス宛のメッセージをそれぞれ生成し、当該メッセージを上記第１のサーバまたは上記第２のサーバへ送信するように上記通信部を制御可能であってもよい。
【００１１】
これにより情報処理装置は、デバイスリストを用いて、第１のデバイス宛及び第２のデバイス宛のメッセージを第１のサーバ及び第２のサーバを介して送信することができる。
【００１２】
上記情報処理装置は、表示部を更に具備してもよい。この場合上記制御部は、上記デバイスリストとして、上記第１のデバイス及び上記第２のデバイスの各属性情報を、当該第１のデバイス及び第２のデバイスが上記第１のネットワークと上記第２のネットワークのいずれに属するかを区別可能に表示するように上記表示部を制御可能であってもよい。さらに制御部は、当該デバイスリスト上からユーザにより選択された上記第１のデバイス宛または上記第２のデバイス宛の上記メッセージを生成可能であってもよい。
【００１３】
これにより情報処理装置は、デバイスリスト上で、各ネットワークに属するデバイスの属性情報をネットワーク毎に区別して表示することで、ユーザによるデバイスの選択をより容易にすることができる。
【００１４】
上記第１のネットワークは第１の施設内に構築され、上記第２のネットワークは第２の施設内に構築されていてもよい。この場合上記制御部は、上記属性情報として、上記第１の施設内で上記第１のデバイスが存在する位置及び上記第２の施設内で上記第２のデバイスが存在する位置をそれぞれ示す位置情報を上記デバイスリストに含めるように上記表示部を制御可能であってもよい。
【００１５】
これにより情報処理装置は、デバイスリストにデバイスの施設内での位置情報も含ませることで、同一ネットワーク内に同種のデバイスが存在する場合でも、当該デバイスをユーザに識別させることができる。
【００１６】
上記第１のネットワークには第１のルータが存在し、上記第２のネットワークには第２のルータが存在していてもよい。この場合上記制御部は、上記第１のデバイスが上記第２のデバイスへアクセス可能となるように、上記第２のルータにポートの開放を要求する開放要求を、上記第２のサーバを介して送信するように上記通信部を制御可能であってもよい。
【００１７】
これにより情報処理装置は、第１のネットワークと第２のネットワークとの間のいわゆるルータの穴あけ処理を、リモートコントロールにより実現することができる。
【００１８】
上記第２のデバイスはコンテンツを記憶してもよい。この場合上記制御部は、上記第２のデバイスから上記コンテンツを上記第１のデバイスへストリーミングするための上記第１のデバイスと上記第２のデバイス間のメッセージの送信が開始されるときに上記開放要求を送信し、上記ストリーミングが終了したときに、上記第２のルータに上記ポートの閉鎖を要求する閉鎖要求を、上記第２のサーバを介して送信するように上記通信部を制御可能であってもよい。
【００１９】
これにより情報処理装置は、ストリーミングの開始から終了までの最低限の時間だけポートを開放することで、極力セキュリティを確保することができる。
【００２０】
上記制御部は、上記受信された接続情報を用いた上記第１のサーバまたは上記第２のサーバへのアクセスを開始するときに上記開放要求を送信し、上記第１のサーバまたは上記第２のサーバへのアクセスを終了するときに、上記第２のルータに上記ポートの閉鎖を要求する閉鎖要求を、上記第２のサーバを介して送信するように上記通信部を制御可能であってもよい。
【００２１】
これにより情報処理装置は、第１または第２のサーバへのリモートアクセスの開始するタイミングでポート開放を要求し、リモートアクセスを終了するタイミングでポート閉鎖を要求することで、リモートアクセスのパフォーマンスを最大限に発揮することができる。
【００２２】
上記制御部は、上記第１のサーバまたは上記第２のサーバへ、上記第１のデバイスまたは上記第２のデバイスの検索要求を送信するように上記通信部を制御可能であってもよい。この場合制御部は、上記検索要求信号に対する発見通知を受信したときに、サーバソケットを生成し、ローカルデバイス上に仮想デバイスをエミュレートしてもよい。さらに制御部は、上記第１のデバイスまたは上記第２のデバイスから上記第１のサーバまたは上記第２のサーバを介して送信され上記サーバソケットを介して受信されたメッセージに、上記仮想デバイスを用いて、上記第１のサーバまたは上記第２のサーバを介して応答するように上記通信部を制御可能であってもよい。
【００２３】
これにより情報処理装置は、仮想デバイスをエミュレートすることで、異なるネットワークに存在する第１のデバイスまたは第２のデバイスと、例えばＵＰｎＰ（Universal Plug and Play）等の共通のプロトコルでメッセージのやり取りを行うことができる。
【００２４】
本技術の他の形態に係る情報処理方法は、第１のネットワークに存在する第１のサーバ及び第２のネットワークに存在する第２のサーバへの接続情報を記憶した、第３のネットワークに存在する中継サーバから、上記接続情報を受信すること、及び、上記受信された接続情報を用いて、上記第１の及び第２のサーバを介して、上記第１のネットワークに存在する第１のデバイスと、上記第２のネットワークに存在する第２のデバイスとの間のデータ伝送処理を制御することを含む。
【００２５】
本技術のまた別の形態に係るプログラムは、情報処理装置に、受信ステップと制御ステップとを実行させる。上記受信ステップでは、第１のネットワークに存在する第１のサーバ及び第２のネットワークに存在する第２のサーバへの接続情報を記憶した、第３のネットワークに存在する中継サーバから、上記接続情報が受信される。上記制御ステップでは、上記受信された接続情報により、上記第１の及び第２のサーバを介して、上記第１のネットワークに存在する第１のデバイスと、上記第２のネットワークに存在する第２のデバイスとの間のデータ伝送処理が制御される。
【発明の効果】
【００２６】
以上のように、本技術によれば、異なるネットワークに存在する機器間でのデータ処理を、それらのネットワーク外からのリモートコントロールにより実現することができる。
【図面の簡単な説明】
【００２７】
【図１】本技術の第１の実施形態に係るリモートアクセスシステムの概要を示した図である。
【図２】本技術の第１の実施形態に係るシステムを構成するスマートフォンのハードウェア構成を示した図である。
【図３】本技術の第１の実施形態に係るシステムを構成するプロキシサーバのハードウェア構成を示した図である。
【図４】本技術の第１の実施形態に係るシステムを構成するＤＬＮＡプロキシクライアント、ＤＬＮＡプロキシサーバ及び中継サーバが有するソフトウェア（モジュール）の構成を示した図である。
【図５】本技術の第１の実施形態に係るプロキシサーバによるＬＡＮ内のデバイスに関する情報の設定処理と、当該情報を中継サーバに記憶させる処理の流れを示したシーケンス図である。
【図６】本技術の第１の実施形態に係るプロキシクライアントのリモートアクセスによるデバイスリスト取得処理の流れを示したシーケンス図である。
【図７】本技術の第１の実施形態に係るプロキシクライアント（スマートフォン）の表示部に表示される当該リモートアクセス接続リスト（デバイスリスト）の例を示した図である。
【図８】本技術の第１の実施形態に係るプロキシクライアントによる仮想デバイスのエミュレート処理の流れを示したシーケンス図である。
【図９】本技術の第１の実施形態におけるDevice Description及びコンテンツリストの取得処理の流れを示したシーケンス図である。
【図１０】本技術の第１の実施形態におけるプロキシクライアントによるリモート再生処理の流れを示したシーケンス図である。
【図１１】本技術の第２の実施形態におけるプロキシクライアントによるリモート再生処理の流れを示したシーケンス図である。
【図１２】本技術の第３の実施形態におけるポート設定処理の流れを示したシーケンス図である。
【図１３】本技術の第４の実施形態におけるシステムの構成を示した図である。
【図１４】本技術の第４の実施形態におけるDevice Description及びコンテンツリストの取得処理の流れを示したシーケンス図である。
【発明を実施するための形態】
【００２８】
以下、本技術に係る実施形態を、図面を参照しながら説明する。
【００２９】
＜第１の実施形態＞
まず、本技術の第１の実施形態について説明する。
【００３０】
［システムの概要］
図１は、本実施形態に係るリモートアクセスシステムの概要を示した図である。
【００３１】
同図に示すように、本システムでは、Ｈｏｍｅ−ａにＬＡＮ−ａが構築され、Ｈｏｍｅ−ａとは物理的に離れたＨｏｍｅ−ｂにＬＡＮ−ｂが構築されている。ＬＡＮ−ａとＬＡＮ−ｂとは、クラウド（インターネット）上の中継サーバ３００に接続可能とされている。これらＬＡＮ−ａ及びＬＡＮ−ｂは、それぞれＤＬＮＡ（ＤＬＮＡ１．５）に準拠したホームネットワークである。
【００３２】
Ｈｏｍｅ−ａとＨｏｍｅ−ｂの外には、スマートフォン１００が存在し、例えば３ＧネットワークまたはＬＴＥネットワークを介して、ＬＡＮ−ａとＬＡＮ−ｂに接続可能とされている。このスマートフォン１００は、ＤＬＮＡにおけるＤＭＣとして機能する。
【００３３】
Ｈｏｍｅ−ａのＬＡＮ−ａでは、ルータ７００の配下に、ＤＬＮＡにおけるＤＭＲとして機能するＴＶ５００のほか、ＤＭＳとして機能するＢＤＲ及びノートブックＰＣ等のＤＬＮＡデバイスが接続されている。
【００３４】
Ｈｏｍｅ−ｂのＬＡＮ−ｂでは、ルータ６００の配下に、ＤＭＳとして機能するネットワークストレージ４００のほか、同じくＤＭＳとして機能するシステムステレオやＤＭＲとして機能するＴＶ等のＤＬＮＡデバイスが接続されている。
【００３５】
また本実施形態では、ＤＬＮＡが採用するＵＰｎＰによるメッセージ伝送処理を異なるネットワーク間で実現するため、ＤＬＮＡプロキシの概念が採用されている。すなわち、ＬＡＮ−ａ及びＬＡＮ−ｂのホームゲートウェイにはそれぞれＤＬＮＡプロキシサーバ２００（以下、単にプロキシサーバとも称する）が設置されている。また、上記スマートフォン１００は、ＤＬＮＡプロキシクライアント（以下、単にプロキシクライアントとも称する）として機能する。
【００３６】
同図では、プロキシサーバ２００は２台、プロキシクライアント１００は１台が示されているが、それぞれ３台以上存在しても構わない。プロキシサーバ２００及びプロキシクライアント１００は、中継サーバ３００への接続情報を事前に通知されているものとする。
【００３７】
以下の説明では、上記各デバイスを、ＤＬＮＡ上の称呼によって、すなわちＤＭＳ，ＤＭＲ，ＤＭＣと称呼する場合もある。
【００３８】
［スマートフォンのハードウェア構成］
図２は、上記スマートフォン１００のハードウェア構成を示した図である。同図に示すように、スマートフォン１００は、ＣＰＵ（Central Processing Unit）１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、入出力インタフェース１５、及び、これらを互いに接続するバス１４を備える。
【００３９】
ＣＰＵ１１は、必要に応じてＲＡＭ１３等に適宜アクセスし、各種演算処理を行いながら中継サーバ３００の各ブロック全体を統括的に制御する。ＲＯＭ１２は、ＣＰＵ１１に実行させるＯＳ、プログラムや各種パラメータなどのファームウェアが固定的に記憶されている不揮発性のメモリである。ＲＡＭ１３は、ＣＰＵ１１の作業用領域等として用いられ、ＯＳ、実行中の各種アプリケーション、処理中の各種データを一時的に保持する。
【００４０】
入出力インタフェース１５には、表示部１６、操作受付部１７、記憶部１８、通信部１９等が接続される。
【００４１】
表示部１６は、例えばＬＣＤ（Liquid Crystal Display）、ＯＥＬＤ（Organic ElectroLuminescence Display）、ＣＲＴ（Cathode Ray Tube）等を用いた表示デバイスである。
【００４２】
操作受付部１７は、例えばタッチパネルやボタン等の入力装置であり、表示部１６と一体化されている。
【００４３】
記憶部１８は、例えばフラッシュメモリ（ＳＳＤ；Solid State Drive）、その他の固体メモリ等の不揮発性メモリである。当該記憶部１８には、ＯＳや、本実施形態におけるリモートアクセスによるＵＰｎＰに基づくメッセージ伝送処理に必要な各種ソフトウェアや、中継サーバの所在場所情報等の各種データが記憶される。
【００４４】
通信部１９は、モバイルネットワークに接続するためのモジュールであり、上記プロキシサーバ２００及び中継サーバ３００との間の通信処理を担う。
【００４５】
［プロキシサーバのハードウェア構成］
図３は、上記プロキシサーバ２００のハードウェア構成を示した図である。同図に示すように、プロキシサーバ２００のハードウェア構成も、上記スマートフォン１００のハードウェア構成と基本的に同様である。すなわち、プロキシサーバ２００は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、入出力インタフェース２５、及び、これらを互いに接続するバス２４、表示部２６、操作受付部２７、記憶部２８、通信部２９を備える。ここで表示部は、プロキシサーバ２００に外部接続されていてもよい。また記憶部２８としては、ＨＤＤ（Hard Disk Drive）が用いられてもよい。
【００４６】
ＣＰＵ２１は、記憶部２８や通信部２９等の各ブロックを制御して、スマートフォン１００及び中継サーバ３００との通信処理や、各種データ処理を実行する。
【００４７】
記憶部２８には、スマートフォン１００からのリモートアクセスを受け付けてＵＰｎＰに基づくメッセージ伝送処理を実行するための各種ソフトウェアや、中継サーバの所在場所情報等のデータが記憶される。
【００４８】
通信部２９は、例えばEthernet（登録商標）用のＮＩＣ（Network Interface Card）であり、上記スマートフォン１００及び中継サーバ３００との間の通信処理を担う。
【００４９】
［システムのソフトウェア構成］
図４は、上記システムを構成するプロキシクライアント１００、プロキシサーバ２００及び中継サーバ３００が有するソフトウェア（モジュール）構成を示した図である。
【００５０】
同図に示すように、プロキシクライアント（スマートフォン）１００は、入力部１１０、通信部１２０、データ受信部１３０、データ変換部１４０、データ送信部１５０、仮想デバイス管理部１６０及びデータ記憶部１７０の各ソフトウェアモジュールを有する。
【００５１】
入力部１１０は、ユーザからの入力操作を検出する。
【００５２】
通信部１２０は、プロキシサーバ２００及び中継サーバ３００との間の通信処理を担う。
【００５３】
仮想デバイス管理部１６０は、後述するプロキシサーバ２００からＬＡＮ内のＤＬＮＡデバイスの発見通知に基づいて、サーバソケットを生成して待ち受けを開始する。さらに仮想デバイス管理部１６０は、ローカルデバイス上に仮想デバイスをエミュレートして、ＵＰｎＰにおけるNotifyメッセージやM-SEARCHレスポンスメッセージの送信を開始する。
【００５４】
データ受信部１３０は、上記メッセージを受信して上記仮想デバイスにアクセスしてきたＤＭＰから、プロキシサーバ２００を介してデータを受信するまたデータ受信部１３０は上記中継サーバ３００からもデータを受信する。
【００５５】
データ変換部１４０は、上記データ受信部１３０で受信されたデータのＩＰアドレスとポート番号とを、仮想デバイスのものからプロキシクライアント１００自身のものへ書き換える。
【００５６】
データ送信部１５０は、上記データ変換部１４０で変換されたデータをプロキシサーバ２００へ送信する。
【００５７】
データ記憶部１７０は、上記中継サーバ３００やプロキシサーバ２００から受信したデータ等を記憶する。
【００５８】
プロキシサーバ２００は、入力部２１０、通信部２２０、データ送信部２３０、データ変換部２４０、データ受信部２５０、デバイス検索部２６０及びデータ記憶部２７０の各ソフトウェアモジュールを有する。
【００５９】
入力部２１０は、ユーザからの入力操作を検出する。
【００６０】
通信部２２０は、プロキシクライアント１００及び中継サーバ３００との間の通信処理を担う。
【００６１】
データ送信部２３０は、プロキシクライアント１００や、他のプロキシサーバ２００、ＬＡＮ内のデバイスへメッセージやデータを送信する。データ送信部２３０は、プロキシクライアント１００に対しては、上記デバイス検索結果データ等を送信する。またデータ送信部２３０は、上記プロキシクライアント１００から受信した変換後のデータを、本来の宛先（プロキシクライアント１００ではなく）である自身のＬＡＮ内のＤＬＮＡデバイスへ送信する。
【００６２】
データ変換部２４０は、異なるＬＡＮ上のプロキシサーバとの、ＵＰｎＰに基づくメッセージのやり取りに際して必要なＩＰアドレス及びポート番号の変換処理を実行する。
【００６３】
データ受信部２５０は、プロキシクライアント１００や、他のプロキシサーバ２００、ＬＡＮ内のデバイスから上記メッセージやデータを受信する。
【００６４】
デバイス検索部２６０は、プロキシクライアント１００からの依頼を受けて、プロキシクライアント１００の代理として、M-SEARCHメッセージにより自身が属するＬＡＮ内のＤＬＮＡデバイスを検索し、デバイスを発見するとその旨をプロキシクライアント１００へ通知する。
【００６５】
データ記憶部２７０は、上記中継サーバ３００やプロキシクライアント１００、他のプロキシサーバ及びＬＡＮ内のデバイスから受信したデータ等を記憶する。
【００６６】
中継サーバ３００は、デバイス管理部３１０及び通信部３２０の各ソフトウェアモジュールを有する。
【００６７】
デバイス管理部３１０は、各プロキシサーバ２００から、各ＬＡＮの所在情報、ＬＡＮ内のデバイスの所有者及び所在情報等の情報を受信し、データ記憶部３３０を用いてそれらの情報をリスト上で管理する。
【００６８】
通信部３２０は、プロキシクライアント１００及びプロキシサーバ２００とのメッセージやデータの通信処理を担う。
【００６９】
データ記憶部３３０は、上記ＬＡＮの所在情報やＬＡＮ内の各デバイスに関する情報を記憶する。
【００７０】
［システムの動作］
次に、以上のように構成システムの動作について説明する。本実施形態及び他の実施形態において、システムを構成するプロキシクライアント１００、プロキシサーバ２００、中継サーバ３００及びデバイスの動作は、ＣＰＵと、その制御下において実行されるソフトウェアとで協働して行われる。
【００７１】
（デバイス情報設定と中継サーバへの接続）
まず、デバイス情報と中継サーバへの接続処理について説明する。図５は、プロキシサーバ２００によるＬＡＮ内のデバイスに関する情報の設定処理と、当該情報を中継サーバ３００に記憶させる処理の流れを示したシーケンス図である。
【００７２】
同図では、ソフトウェアとしての動作を説明する便宜上、プロキシサーバ２００とアプリケーションとが別個に図示されているが、両者は同一のハードウェア内に存在する。
【００７３】
同図に示すように、まず、プロキシサーバ２００のユーザが、プロキシサーバ２００上のアプリケーションの初期設定画面を起動し（ステップ５１）、当該ＬＡＮの所在情報（例えば自宅、祖父宅、友達宅等）を入力する（ステップ５２）。
【００７４】
プロキシサーバ２００は、上記入力に基づいてＬＡＮの所在情報をデータ記憶部２７０に保存する（ステップ５３）。
【００７５】
続いてユーザは、アプリケーションを用いてデバイス情報を入力する（ステップ５４）。これに応じてプロキシサーバ２００は自身のＬＡＮ内のデバイス検索を実行し（ステップ５５、５６）、各デバイスからの応答を受けて（ステップ５７、６０）、ユーザが各デバイスの所在者情報（ユーザ名）及び所在情報（例えば自宅内の１階のリビング等）を入力する（ステップ５８、６１）。プロキシサーバ２００は、当該入力された情報をデータ記憶部２７０に保存する（ステップ５９、６３）。
【００７６】
上記入力処理が完了すると、プロキシサーバ２００は、中継サーバ３００に接続し、自身のＩＤと各デバイスの所有者及び所在情報を中継サーバ３００へ通知する（ステップ６４）。中継サーバ３００は、当該デバイス情報をデータ記憶部３３０へ記憶し（ステップ６５）、その旨をプロキシサーバ２００へ通知し（ステップ６６）、プロキシサーバ２００はその旨をユーザに通知する（ステップ６７）。
【００７７】
（リモートアクセスによるデバイスリスト取得）
次に、プロキシクライアント１００のリモートアクセスによるデバイスリスト取得処理について説明する。図６は、当該デバイスリスト取得処理の流れを示したシーケンス図である。
【００７８】
同図においても、ソフトウェアとしての動作を説明する便宜上、プロキシクライアント１００とアプリケーションとが別個に図示されているが、両者は同一のハードウェア内に存在する。
【００７９】
また、プロキシクライアント１００は、事前に接続対象のプロキシサーバ２００のＩＤ及びその認証情報（パスフレーズ等）を入手しておくものとする。
【００８０】
同図に示すように、まずプロキシクライアント１００のユーザは、外出先からアプリケーションを用いて、プロキシクライアント１００にリモートアクセスの開始を指示する（ステップ７１）。
【００８１】
続いてプロキシクライアント１００は、中継サーバ３００へリモートアクセス（ＲＡ）接続リストを要求し（ステップ７２）、中継サーバ３００から当該リモートアクセス接続リストを取得して（ステップ７３）、ユーザに提示する（ステップ７４）。
【００８２】
図７は、プロキシクライアント（スマートフォン）１００の表示部１６に表示される当該リモートアクセス接続リスト（デバイスリスト）の例を示した図である。
【００８３】
同図に示すように、当該デバイスリストでは、中継サーバ３００が保存している各ＬＡＮの所在情報（Ｈｏｍｅ−ｂ，Ｈｏｍｅ−ａ（実際には自宅、祖父宅等））と、そのＬＡＮに属するＤＬＮＡデバイスの一覧（所在地及び所在者情報を含む）がカテゴライズされて表示される。すなわち、当該デバイスリストでは、各ＤＬＮＡデバイスがどのＬＡＮに属するかが区別可能に表示され、またそれらが各ＬＡＮが構築された施設（自宅、祖父宅等）内で存在する位置を示す情報（リビング、寝室等）及び所有者情報も表示される。
【００８４】
同図の例では、中継サーバ３００に記憶された全てのＬＡＮの所在情報及びデバイス情報が表示されている。しかし、例えば各ＬＡＮに割り当てられるグループＩＤ等によって、当該グループに属するＬＡＮの情報のみが表示されるように、リモートアクセス接続リスト上に表示されるＬＡＮ及びデバイス情報が制限されても構わない。
【００８５】
ユーザが、当該リスト中から、接続先のデバイスとそのパスフレーズを入力すると（ステップ７５）、プロキシクライアント１００は、中継サーバ３００に当該デバイスへのリモートアクセスを要求する（ステップ７６）。
【００８６】
中継サーバ３００は、プロキシクライアント１００の認証情報（ＩＤ）を確認し（ステップ７７）、それが正しければプロキシサーバ２００へリモートアクセスの開始を要求し（ステップ７８）、プロキシサーバ２００への接続情報を取得する（ステップ７９）。そして中継サーバ３００はその接続情報をプロキシクライアント１００へ通知し（ステップ８０）、プロキシクライアント１００はそれをユーザに通知する（ステップ８１）。
【００８７】
この処理以降、プロキシクライアント１００とプロキシサーバ２００とは中継サーバ３００を介さずに直接やり取りするようになる。すなわち、プロキシクライアント１００は、上記接続情報を用いて、プロキシサーバ２００を介して、異なるＬＡＮ内のＤＬＮＡデバイス間のデータ伝送処理を制御する。
【００８８】
プロキシクライアント１００のユーザは、リモートアクセス用のアプリケーションを介して、接続先のデバイスを選択すると、プロキシクライアント１００は、プロキシサーバ２００に接続して、リモートアクセスを開始する。
【００８９】
さらに、ユーザがリモートアクセス用のアプリケーション上のリモートデバイスリストを更新すると（ステップ８２）、プロキシクライアント１００は、プロキシサーバ２００に対してデバイス検索を要求する（ステップ８３）。
【００９０】
プロキシサーバ２００は、プロキシクライアント１００の代理として、M-SEARCHメッセージを自身が属するＬＡＮ内のＤＬＮＡデバイスと送受信し（ステップ８４、８５）、その応答結果をプロキシクライアント１００へ通知する（ステップ８６）。
【００９１】
プロキシクライアント１００の仮想デバイス管理部１６０は、上記通知を受けると、ローカルデバイス上にサーバソケットを生成してListenを開始し（ステップ８７）、さらに仮想デバイスをエミュレートしてNotifyメッセージやM-SEARCHレスポンスメッセージを送信し始める（ステップ８８、８９）。
【００９２】
（仮想デバイスエミュレート処理）
ここで、上記仮想デバイスのエミュレート処理についてより詳細に説明する。図８は、当該処理の流れを示したシーケンス図である。
【００９３】
同図に示すように、プロキシサーバ２００が属するＬＡＮ内のＤＬＮＡデバイス（ＤＭＳ／ＤＭＲ）がオンライン（電源ＯＮ）になると、Notifyメッセージ（ssdp:alive）をマルチキャストする（ステップ９１）。
【００９４】
それを受け取ってＤＬＮＡデバイスを発見したプロキシサーバ２００は、その旨をプロキシクライアント１００へ通知する（ステップ９２）。
【００９５】
この通知に基づいて、プロキシクライアント１００の仮想デバイス管理部１６０は、上記と同様にサーバソケットを作成して（ステップ９３）Listenを開始し、さらにローカルデバイス上に仮想デバイスをエミュレートする（ステップ９４）。上記ＤＬＮＡデバイスからのssdp:aliveはユーザにも通知される（ステップ９５）。
【００９６】
さらに、プロキシクライアント１００が属するネットワーク上のＤＭＰアプリケーションがデバイス検索（M-SEARCH）メッセージを送信してくると（ステップ９６）、仮想デバイスがデバイス検索（M-SEARCH）メッセージを受信して、その応答メッセージ（M-SEARCH Response）を作成し返す（ステップ９７、９８）。
【００９７】
プロキシクライアント１００は、プロキシサーバ２００から直接通知を受け取るのみで、それらのメッセージをプロキシサーバ２００へ送信することはしない。これにより、Ｐ２Ｐ通信のデータ転送負荷が軽減される。
【００９８】
プロキシサーバ２００が属するＬＡＮ上のデバイス（ＤＭＳ／ＤＭＲ）は、オフライン(電源がＯＦＦ)になると、Notifyメッセージ(ssdp:byebye)を送信する。この場合も、プロキシサーバ２００からその旨がプロキシクライアント１００へ通知され、これ受けて仮想デバイスはssdp:byebyeメッセージを送信する。
【００９９】
そして、仮想デバイス管理部１６０は、該当する仮想デバイスを削除するとともに、サーバソケットをクローズする。
【０１００】
プロキシサーバ２００が属するＬＡＮ上のデバイス（ＤＭＳ／ＤＭＲ）が何も通知せずに突然いなくなってしまった(例えばネットワークケーブルが抜けてしまった)場合、プロキシサーバ２００は、最後のssdp:aliveメッセージを受け取ってからmax-ageが経過すると、デバイスがいなくなったものとみなして、それをプロキシクライアント１００に通知する。それを受けてプロキシクライアント１００は、ssdp:byebyeメッセージを受信した時と同様の処理を行う。これにより、仮想デバイスが無駄にいつまでも存在し続けることが防止される。
【０１０１】
（Device Description及びコンテンツリスト取得処理）
次に、ssdp:aliveを受信したＤＭＣのアプリケーションがDevice Description及びコンテンツリストを取得するために、プロキシクライアントにアクセスする際の処理の流れを説明する。図９は、当該処理の流れを示したフローチャートである。
【０１０２】
同図に示すように、ＤＭＣのアプリケーションは、プロキシクライアント１００からssdp:aliveを受信すると（ステップ１０１）、Device Description（以下、ＤＤ）の取得をプロキシクライアント１００へリクエストする（ステップ１０２）。
【０１０３】
プロキシクライアント１００は、上記リクエストをアクセプトし、ＩＰアドレス及びポート番号を宛先のＤＬＮＡデバイス（ＤＭＳ４００）のものに書き換えた後（ステップ１０３）、ＤＭＳ４００が属するＬＡＮ−ｂ内のプロキシサーバ２００ｂへ転送する（ステップ１０４）。
【０１０４】
プロキシサーバ２００ｂは、データを実際の宛先であるＤＭＳ４００にHTTP GETにより送信して（ステップ１０５）、レスポンスとしてＤＤを受信し（ステップ１０６）、それをプロキシクライアント１００へ返信する（ステップ１０７）。
【０１０５】
プロキシクライアント１００は、上記返信されたＤＤのアドレスを自身のアドレスに書き換えた上で（ステップ１０８）、ＤＭＣへそれを返信する（ステップ１０８）。
【０１０６】
上記ＤＭＳ４００に記憶されたコンテンツ（動画像コンテンツ、音声コンテンツ等）のコンテンツリストの取得処理（CDS;Browse()）についても、上記ＤＤの取得処理と同様の処理が実行される。すなわち、ＤＭＣからのリクエスト（ステップ１１０）を、プロキシクライアント１００がデータ変換した上で（ステップ１１１）プロキシサーバ２００ｂへ転送し（ステップ１１２）、ＤＭＳ４００へ送信して（ステップ１１３）コンテンツリストを取得し（ステップ１１４）、プロキシクライアント１００へ返信する（ステップ１１５）。当該コンテンツリストはデータ変換され（ステップ１１６）、ＤＭＣへ返信され（ステップ１１７）、表示される（ステップ１１８）。
【０１０７】
（リモート再生処理）
次に、上記取得したコンテンツリストに基づくリモート再生処理について説明する。図１０は、当該リモート再生処理の流れを示したシーケンス図である。
【０１０８】
同図に示すように、ＤＭＣのユーザがアプリケーションを介してコンテンツのリモート再生を指示すると（ステップ１２１）、プロキシクライアント１００は、ＤＭＳ４００が属するＬＡＮ内のプロキシサーバ２００ｂに対して、リモートアクセスの開始を要求する（ステップ１２２）。
【０１０９】
上記要求を受けたプロキシサーバ２００ｂは、UPnP IGDを用いて、ルータ６００のポートを開放して（ポートマッピング、いわゆるルータの穴あけ）、ストリーミング用のポートを設定し（ステップ１２３）、ＤＭＳ４００に対応するＷＡＮ上のＩＰアドレス及びポート番号をプロキシクライアント１００へ通知する（ステップ１２４）。
【０１１０】
プロキシクライアント１００は、再生対象コンテンツのＵＲＬのアドレスをそれらに書き換えた上で（ステップ１２５）、ＤＭＲ５００が属するプロキシサーバ２００ａ経由で、ＤＭＲ５００に対してAVT:SetAVTransportURI()メッセージを送信して、再生対象コンテンツを設定する（ステップ１２６〜１２９）。
【０１１１】
続いてプロキシクライアント１００は、プロキシサーバ２００ａ経由でＤＭＲ５００に対してAVT:Play()を送信して、ＤＭＲ５００にコンテンツの再生を開始させる（ステップ１３０〜１３５）。
【０１１２】
ＤＭＣアプリケーションがコンテンツの再生状況を確認するためにAVT:GetAVTransportInfo()メッセージやAVT:GetPositionInfo()メッセージを送信すると、プロキシクライアントはCDS:Browse()と同様にＵＲＬの書き換えを行った上で、プロキシサーバ２００ａへ転送する。
【０１１３】
ＤＭＣのアプリケーションがコンテンツの再生終了をプロキシクライアント１００へ通知すると（ステップ１３６）、プロキシクライアント１００は、プロキシサーバ２００ｂに対してリモートアクセスの終了を要求する（ステップ１３７）。
【０１１４】
当該要求を受けて、プロキシサーバ２００ｂは、UPnP IGDを用いて上記ポートを閉鎖し（ステップ１３８）、その旨をプロキシクライアント１００へ通知する（ステップ１３９、１４０）。当該ポートの開閉状態は、例えばＧＥＮＡ(General Event Notification Architecture)のイベントで判別されてもよい。
【０１１５】
［まとめ］
以上説明したように、本実施形態によれば、ユーザに余計な手間をかけることなく、また既存のＤＭＰに手を加えることなく、ＤＬＮＡの3Boxモデルによるリモート再生システムが実現される。
【０１１６】
また、デバイスリストには、ＤＬＮＡデバイスが属するネットワークの所在情報が表示されるだけでなく、ネット―ワーク毎にデバイスがカテゴライズして表示されるため、ユーザはどこの家にどんなデバイスがあるかを容易に知ることができる。
【０１１７】
さらに、デバイスリストにデバイスの所在情報と所有者が表示されるため、同一ＬＡＮ上に同じ型番のデバイスが複数存在していても、ユーザは容易に区別がつく。
【０１１８】
＜第２の実施形態＞
次に、本技術の第２の実施形態について説明する。以下の説明において、上記第１の実施形態と同様の構成となる箇所については説明を省略する。
【０１１９】
上述の第１の実施形態では、図１０に示したように、プロキシクライアント１００がＤＭＳ４００側のプロキシサーバ２００ｂへリモートアクセス開始要求を送信した。しかし、本実施形態では、ＤＭＲ５００側のプロキシサーバ２００ａが直接、プロキシサーバ２００ｂへリモートアクセスの開始を要求し、ストリーミング用のポートの設定を依頼してもよい。
【０１２０】
図１１は、この場合のリモート再生処理の流れを示したシーケンス図である。
【０１２１】
同図に示すように、ユーザがＤＭＣアプリケーションを用いてリモート再生を指示すると（ステップ１４１）、プロキシクライアント１００は、必要なアドレス変換処理を行う（ステップ１４２）。そしてプロキシクライアント１００は、プロキシサーバ２００ｂにストリーミング用のポートを設定するために必要なトークンを発行してもらい、AVT:SetAVTransportURI()のＵＲＬの一部にそのトークンとプロキシサーバ２００ｂのＩＤを含めてプロキシサーバ２００ａへ送信する（ステップ１４３）。
【０１２２】
プロキシサーバ２００ａは、それらの情報をもとにプロキシサーバ２００ｂにリモートアクセスの開始を要求する（ステップ１４４）。トークンは、リモートアクセスを開始する際に発行されてもよいし、リモート再生のたびに発行されてもよい。
【０１２３】
ポートが開放されると（ステップ１４５）、ＤＭＳ４００に対応するＷＡＮ上のＩＰアドレス及びポート番号がプロキシサーバ２００ａへ通知される（ステップ１４６）。
【０１２４】
プロキシサーバ２００ａは、必要なアドレス変換処理を行い（ステップ１４６）、AVT:SetAVTransportURI()を、自身が属するＬＡＮ内のＤＭＲ５００へ転送する（ステップ１４７）。
【０１２５】
再生対象コンテンツの設定が完了すると（ステップ１４８，１４９）、プロキシクライアント１００は、プロキシサーバ２００ａ経由でＤＭＲ５００に対してAVT:Play()を送信して、ＤＭＲ５００にコンテンツの再生を開始させる（ステップ１５０〜１５５）。その後の処理は上記図１０で示したのと同様である。
【０１２６】
＜第３の実施形態＞
次に、本技術の第３の実施形態について説明する。以下の説明において、上記第１及び第２の実施形態と同様の構成となる箇所については説明を省略する。
【０１２７】
上述の第１及び第２の実施形態では、リモート再生を行うタイミングで、UPnP IGDを使ったルータの穴あけが実行された。このように必要時のみポートを開放することで、セキュリティが極力確保されることになる。しかし、セキュリティよりもパフォーマンスを重視する場合は、リモートアクセスが開始されるタイミングでストリーミング用のポートが設定されてもよい。
【０１２８】
図１２は、この場合のポート設定処理の流れを示したシーケンス図である。
【０１２９】
同図に示すように、ステップ１６１〜ステップ１６６までの処理は、上記図６におけるステップ７１〜ステップ７６までの処理と同様である。
【０１３０】
プロキシクライアント１００は、中継サーバ３００へリモートアクセスを要求し（ステップ１６６）、プロキシサーバ２００への接続情報を取得する（ステップ１６７，１６８）。
【０１３１】
プロキシクライアント１００は、当該接続情報を用いて、プロキシサーバ２００に対してリモートアクセスの開始を要求するとともに、ポートの開放も要求する（ステップ１６９）。
【０１３２】
当該要求を受けて、プロキシサーバ２００はルータのポートを開放し（ステップ１７０）、ＷＮ用のＩＰアドレス及びポート番号をプロキシクライアント１００へ返信する（ステップ１７１，１７２）。
【０１３３】
そして、リモート再生処理等、種々のリモートコントロール処理を経て、ユーザがリモートアクセスの終了を指示すると（ステップ１７３）、プロキシクライアント１００は、プロキシサーバ２００にリモートアクセスの終了を要求するとともに、ルータのポート閉鎖も要求する（ステップ１７４）。
【０１３４】
当該要求を受けて、プロキシサーバ２００はポートを閉鎖し（ステップ１７５）、それをプロキシクライアント１００側へ通知する（ステップ１７８，１７９）。
【０１３５】
このような処理により、リモートアクセス中は常にポートが開放されることで、リモートアクセスによるパフォーマンスが最大限に発揮される。
【０１３６】
＜第４の実施形態＞
次に、本技術の第３の実施形態について説明する。以下の説明において、上記第１乃至第３の実施形態と同様の構成となる箇所については説明を省略する。
【０１３７】
上述の第１乃至第３の実施形態では、プロキシサーバ２００が属するホームネットワーク上のＤＭＳからＤＭＲ間のリモート再生を実行する例が示された。しかし、ＤＭＳはクラウド上のコンテンツサーバでも構わない。
【０１３８】
図１３は、本実施形態におけるシステムの構成を示した図である。同図に示すように、プロキシクライアント１００、プロキシサーバ２００及び中継サーバ３００の構成は上記図４で示したのと同様であるため、説明を省略する。
【０１３９】
上記図４で示した構成に加えて、本実施形態では、クラウド上にＤＭＳとしてのコンテンツサーバ８００が設けられる。同図では当該コンテンツサーバ８００は１台のみ図示されているが、複数台設けられていてもよい。
【０１４０】
コンテンツサーバ８００は、コンテンツ管理部８１０、通信部８２０及びデータ記憶部８３０を有する。
【０１４１】
コンテンツ管理部８１０は、コンテンツ（動画像コンテンツや音声コンテンツ）を逐次データ記憶部８３０へ保存し、それらを管理する。
【０１４２】
通信部８２０は、プロキシクライアント１００及びプロキシサーバ２００との通信処理を担う。
【０１４３】
図１４は、本実施形態におけるDevice Description及びコンテンツリストの取得処理の流れを示したシーケンス図である。
【０１４４】
同図に示すように、まずユーザは、アプリの設定メニューから、プロキシサーバ２００にクラウド連携設定を指示する（ステップ１８１）。
【０１４５】
まず、コンテンツサーバ８００をＤＭＳとして機能させる場合のデバイス名、所有者、所在情報等のサーバ情報が入力される（ステップ１８２）。プロキシサーバ２００は当該サーバ情報を保存する（ステップ１８３）。
【０１４６】
続いて、リモート再生対象のコンテンツの情報が追加される（ステップ１８５）。この場合ユーザは、クラウド（コンテンツサーバ８００）上のコンテンツのＵＲＬを入力する。登録されるコンテンツはクラウド上の複数のコンテンツサーバ８００に跨っていてもよい。
【０１４７】
ＵＲＬが入力されるとプロキシサーバ２００は当該ＵＲＬからコンテンツを取得し（ステップ１８６，１８７）、さらにそのメタ情報（ＣＤＳ（Contents Directory Service）情報）を取得してデータ記憶部２７０に保存する（ステップ１８８，１８９）。
【０１４８】
ユーザがクラウド設定情報を確認するためにクラウド連携情報取得を選択すると（ステップ１９０）、プロキシサーバ２００は、作成したDevice Descriptionとツリーのルート(id=0)を指定したCDS:Browse()の結果のコンテンツリストを取得して（ステップ１９１，１９２）、それらをユーザに返す（ステップ１９３）。ここで、ユーザは設定アプリケーションを使ってさらにCDS:Browse()を実行し、階層を掘り進んで、子や孫のディレクトリのコンテンツリストを取得し、設定内容を確認することも可能である。
【０１４９】
最後に、ユーザがクラウド連携情報を更新すると（ステップ１９４）、新しく追加されたＤＬＮＡデバイス、すなわちコンテンツサーバ８００に関する情報が中継サーバ３００に通知される（ステップ１９５）。
【０１５０】
中継サーバ３００は、当該デバイス情報をデータ記憶部３３０に保存し（ステップ１９８）、その旨がプロキシサーバ２００側へ通知される（ステップ１９７，１９８）
【０１５１】
これにより、クラウド連携で登録されたデバイス（コンテンツサーバ８００）は、プロキシサーバ２００によって、あたかもホームネットワーク上に存在するかのようにふるまう。プロキシサーバが生存している限り、これらのデバイスは常に生存し続けることになる。
【０１５２】
これ以降の処理は、上記第１の実施形態とほぼ同様になるが、コンテンツ自体はクラウド上にあるため、リモート再生の際、ルータのポート開放／閉鎖の設定は不要である。
【０１５３】
［変形例］
本技術は上述の実施形態にのみ限定されるものではなく、本技術の要旨を逸脱しない範囲内において種々変更され得る。
【０１５４】
上述の各実施形態では、リモートコントロール処理の具体例として、ＤＭＳに記憶されたコンテンツのリモート再生処理が示された。しかし、リモートアクセスによって可能な処理はコンテンツ再生処理に限られない。例えば、一方のＬＡＮに属するＤＭＳから他方のＬＡＮに属するＤＭＳへのコンテンツ（動画像、静止画像、音楽等）の転送（コピー）処理が、上記と同様のリモートコントロール処理によって実行されてもよい。また、一方のＬＡＮに属するＤＭＲと、他方のＬＡＮに属するＤＭＲにおいて、コンテンツの同期再生処理が実行されてもよい。
【０１５５】
上述の実施形態では、屋外に位置し３Ｇ／ＬＴＥネットワークに接続したスマートフォンがＤＭＣとして機能したが、例えばＰＣやタブレット等の他のデバイス（携帯型、据置型を問わない）がＬＡＮ等の他のネットワークからリモートコントロール処理を実行しても構わない。
【０１５６】
上述の実施形態では、ＤＬＮＡによるホームネットワークシステムが前提とされていたが、ＤＬＮＡ以外のプロトコルによって本技術のリモートコントロール処理が実行されても構わない。
【０１５７】
上述の各実施形態では、上記図２及び図３で説明した各ハードウェアと図４で示したソフトウェアモジュールとによって本技術が実施されたが、当該ソフトウェアモジュールに代わる専用回路等の他のハードウェアによって実施されても構わない。
【０１５８】
［その他］
本技術は以下のような構成も採ることができる。
（１）
第１のネットワークに存在する第１のサーバ及び第１のデバイスと、第２のネットワークに存在する第２のサーバ及び第２のデバイスと、第３のネットワークに存在し前記第１及び第２のサーバへの接続情報を記憶した中継サーバとに、第４のネットワークを介して接続可能な通信部と、
前記中継サーバから前記接続情報を受信するように前記通信部を制御し、当該接続情報を用いて、前記第１及び第２のサーバを介して前記第１及び第２のデバイス間のデータ伝送処理を制御することが可能な制御部と
を具備する情報処理装置。
（２）
上記（１）に記載の情報処理装置であって、
前記第１のネットワークには複数の第１のデバイスが存在し、
前記第２のネットワークには複数の第２のデバイスが存在し、
前記中継サーバは、前記複数の第１のデバイス及び前記複数の第２のデバイスへの接続情報を含むデバイスリストを記憶し、
前記制御部は、前記中継サーバから前記デバイスリストを受信し、当該デバイスリストを基に、前記第１のデバイス宛または前記第２のデバイス宛のメッセージをそれぞれ生成し、当該メッセージを前記第１のサーバまたは前記第２のサーバへ送信するように前記通信部を制御可能である
情報処理装置。
（３）
上記（２）に記載の情報処理装置であって、
表示部を更に具備し、
前記制御部は、前記デバイスリストとして、前記第１のデバイス及び前記第２のデバイスの各属性情報を、当該第１のデバイス及び第２のデバイスが前記第１のネットワークと前記第２のネットワークのいずれに属するかを区別可能に表示するように前記表示部を制御可能であり、当該デバイスリスト上からユーザにより選択された前記第１のデバイス宛または前記第２のデバイス宛の前記メッセージを生成可能である
情報処理装置。
（４）
上記（３）に記載の情報処理装置であって、
前記第１のネットワークは第１の施設内に構築され、
前記第２のネットワークは第２の施設内に構築され、
前記制御部は、前記属性情報として、前記第１の施設内で前記第１のデバイスが存在する位置及び前記第２の施設内で前記第２のデバイスが存在する位置をそれぞれ示す位置情報を前記デバイスリストに含めるように前記表示部を制御可能である
情報処理装置。
（５）
上記（１）〜（４）のいずれかに記載の情報処理装置であって、
前記第１のネットワークには第１のルータが存在し、
前記第２のネットワークには第２のルータが存在し、
前記制御部は、前記第１のデバイスが前記第２のデバイスへアクセス可能となるように、前記第２のルータにポートの開放を要求する開放要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
（６）
上記（５）に記載の情報処理装置であって、
前記第２のデバイスはコンテンツを記憶し、
前記制御部は、前記第２のデバイスから前記コンテンツを前記第１のデバイスへストリーミングするための前記第１のデバイスと前記第２のデバイス間のメッセージの送信が開始されるときに前記開放要求を送信し、前記ストリーミングが終了したときに、前記第２のルータに前記ポートの閉鎖を要求する閉鎖要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
（７）
上記（５）に記載の情報処理装置であって、
前記制御部は、前記受信された接続情報を用いた前記第１のサーバまたは前記第２のサーバへのアクセスを開始するときに前記開放要求を送信し、前記第１のサーバまたは前記第２のサーバへのアクセスを終了するときに、前記第２のルータに前記ポートの閉鎖を要求する閉鎖要求を、前記第２のサーバを介して送信するように前記通信部を制御可能である
情報処理装置。
（８）
上記（１）〜（７）のいずれかに記載の情報処理装置であって、
前記制御部は、
前記第１のサーバまたは前記第２のサーバへ、前記第１のデバイスまたは前記第２のデバイスの検索要求を送信するように前記通信部を制御可能であり、
前記検索要求信号に対する発見通知を受信したときに、サーバソケットを生成し、ローカルホスト上に仮想デバイスをエミュレートし、
前記第１のデバイスまたは前記第２のデバイスから前記第１のサーバまたは前記第２のサーバを介して送信され前記サーバソケットを介して受信されたメッセージに、前記仮想デバイスを用いて、前記第１のサーバまたは前記第２のサーバを介して応答するように前記通信部を制御可能である
情報処理装置。
【符号の説明】
【０１５９】
１１…ＣＰＵ
１３…ＲＡＭ
１７…操作受付部
１８…記憶部
１９…通信部
１００…スマートフォン（ＤＬＮＡプロキシクライアント）
１１０…入力部
１２０…通信部
１３０…データ受信部
１４０…データ変換部
１５０…データ送信部
１６０…仮想デバイス管理部
１７０…データ記憶部
２００（２００ａ，２００ｂ）…ＤＬＮＡプロキシサーバ
２６０…デバイス検索部
３００…中継サーバ
３１０…デバイス管理部
４００…ＤＭＳ
５００…ＴＶ（ＤＭＲ）
４００…ネットワークストレージ（ＤＭＳ）
６００，７００…ルータ
８００…コンテンツサーバ
８１０…コンテンツ管理部
【図１】
2015023438.tif 000003
【図２】
2015023438.tif 000004
【図３】
2015023438.tif 000005
【図４】
2015023438.tif 000006
【図５】
2015023438.tif 000007
【図６】
2015023438.tif 000008
【図７】
2015023438.tif 000009
【図８】
2015023438.tif 000010
【図９】
2015023438.tif 000011
【図１０】
2015023438.tif 000012
【図１１】
2015023438.tif 000013
【図１２】
2015023438.tif 000014
【図１３】
2015023438.tif 000015
【図１４】
2015023438.tif 000016