(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
第１通信方式により他の情報処理装置と通信する第１通信手段と、
前記第１通信方式と異なる第２通信方式により前記他の情報処理装置と通信する第２通信手段と、
前記他の情報処理装置との間でサービスの情報を前記第１通信手段による通信により共有する第１共有手段と、
前記他の情報処理装置との間で前記第２通信手段により接続するための通信パラメータを前記第１通信手段による通信により共有する第２共有手段と、
を有し、
前記第２通信手段は、前記第２共有手段による前記通信パラメータの共有に応じて、前記他の情報処理装置と接続する
ことを特徴とする情報処理装置。
【請求項２】
前記第２通信手段は、前記他の情報処理装置がサービスを制御装置に提供する提供装置として動作している場合、該他の情報処理装置に接続する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１通信手段を介して接続する別の情報処理装置と、前記第２通信手段を介して接続する前記他の情報処理装置との間のサービスを代理する代理手段を更に有し、
前記代理手段は、前記他の通信装置が、前記第１通信手段が接続する第１ネットワークにおいてサービスの提供を停止した場合、前記代理を開始することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記第２共有手段は、前記通信パラメータを前記他の通信装置に送信することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
当該情報処理装置が前記サービスを代理する代理機能を有することを前記第１通信手段を介して公開する公開手段を更に備えることを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記代理手段は、前記公開手段が前記代理機能を公開したことに応じて前記他の情報処理装置から前記代理の要求がなされた場合に、前記サービスを代理することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記サービスはＵＰｎＰサービスであることを特徴とする請求項１乃至６のいずれか１項に記載の情報処理装置。
【請求項８】
前記サービスはコンテンツ配信サービスであり、
前記代理手段は、
前記別の情報処理装置から前記第１通信手段を介してコンテンツ配信要求を受信した場合、コンテンツ配信先が前記情報処理装置となるように前記コンテンツ配信要求を書き換える書換手段と、
前記書き換えたコンテンツ配信要求を前記第２通信路を介して前記提供装置へ出力する出力手段と、
前記書き換えたコンテンツ配信要求を出力したことに応じて前記提供装置から配信されたコンテンツを受信する受信手段と、
前記受信したコンテンツを前記制御装置へ配信する配信手段と、
を備える
ことを特徴とする請求項３に記載の情報処理装置。
【請求項９】
前記第２通信手段により前記他の情報処理装置と接続した後に前記第１の通信手段を介したサービスの提供を停止した場合、前記第２通信手段を介してサービスの提供を開始することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項１０】
前記第１共有手段によって共有された情報が示すサービスを提供するための信号を、前記第２通信手段により前記他の情報処理装置と接続した後に、前記第２通信手段を介して通信することを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記第２通信手段により前記他の情報処理装置と接続した後に、前記第１通信手段によってサービスの終了の通知を通信することを特徴とする請求項１乃至１０のいずれか１項に記載の情報処理装置。
【請求項１２】
第１情報処理装置と第２情報処理装置とを備える情報処理システムであって、
前記第１情報処理装置は、
第１通信方式により前記第２情報処理装置と通信する第１通信手段と、
前記第１通信方式と異なる第２通信方式により前記第２情報処理装置と通信する第２通信手段と、
前記第２情報処理装置との間でサービスの情報を前記第１通信手段による通信により共有する第１共有手段と、
前記第２情報処理装置との間で前記第２通信手段により接続するための通信パラメータを前記第１通信手段による通信により共有する第２共有手段と、
を有し、
前記第２通信手段は、前記第２共有手段による前記通信パラメータの共有に応じて、前記第２情報処理装置と接続する
ことを特徴とする情報処理システム。
【請求項１３】
情報処理装置の制御方法であって、
第１通信方式により通信する第１通信手段により、他の情報処理装置との間でサービスの情報を共有する第１共有工程と、
前記第１通信方式と異なる第２通信方式により通信する第２通信手段により前記他の情報処理装置との間で接続するための通信パラメータを、前記第１通信手段による該他の情報処理装置との間の通信により共有する第２共有工程と、
前記第２共有手段による前記通信パラメータの共有に応じて、前記第２通信手段により前記他の情報処理装置に接続する接続工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項１４】
コンピュータを、請求項１乃至１１のいずれか１項に記載の情報処理装置が備える各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、情報処理システム、及び、プログラムに関する。
【背景技術】
【０００２】
近年、宅内の機器を発見し、プラグアンドプレイで利用することができるＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ Ｐｌｕｇ ａｎｄ Ｐｌａｙ）が注目されている。このＵＰｎＰにおいて、サービスを提供するＵＰｎＰサービスとサービスを利用するＵＰｎＰコントロールポイントが存在する。
【０００３】
ネットワークに接続している場合、ＵＰｎＰサービスはネットワーク上にサービス内容の公開し、常にＵＰｎＰコントロールポイントからの処理を受け付けなくてはならなかった。そこで、利用されない期間はＵＰｎＰサービスをスリープさせるＵＰｎＰ Ｌｏｗ Ｐｏｗｅｒ Ｄｅｖｉｃｅという技術が知られている。
【０００４】
また、ＵＰｎＰコントロールポイントは、既にスリープしているＵＰｎＰサービスを発見できないことに鑑み、ＵＰｎＰサービスのディスクリプションを代理で送信する構成が知られている（特許文献１）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２６０４２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来技術では、ＵＰｎＰサービスは、ネットワーク的に接続されているため、ＵＰｎＰコントロールポイント以外のノードから発見されてしまうという問題点があった。更に、ＵＰｎＰサービスは、どのＵＰｎＰコントロールポイントからでもスリープ状態を解除する起動メッセージを受け付け、実行してしまうので、安全でなかった。
【０００７】
本発明は上記課題に鑑みなされたものであり、サービスを提供する際の安全性を高める技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
かかる課題を達成するため、例えば本発明の情報処理装置は以下の構成を有する。すなわち、
第１通信方式により他の情報処理装置と通信する第１通信手段と、
前記第１通信方式と異なる第２通信方式により前記他の情報処理装置と通信する第２通信手段と、
前記他の情報処理装置との間でサービスの情報を前記第１通信手段による通信により共有する第１共有手段と、
前記他の情報処理装置との間で前記第２通信手段により接続するための通信パラメータを前記第１通信手段による通信により共有する第２共有手段と、
を有し、
前記第２通信手段は、前記第２共有手段による前記通信パラメータの共有に応じて、前記他の情報処理装置と接続する。
【発明の効果】
【０００９】
本発明によれば、サービスを提供する際の安全性を高める技術を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】ネットワークシステムの構成図である。
【図２】代理サービス装置１０１のハードウェア構成図である。
【図３】ＵＰｎＰサービス提供装置１０２の構成図である。
【図４】代理サービス装置１０１のモジュール構成図である。
【図５】ＵＰｎＰサービス提供装置１０２のモジュール構成図である。
【図６】代理サービス装置１０１における代理サービスの開始処理の流れを示すフローチャートである。
【図７】ＵＵＩＤ記憶部４０９のエントリを例示する図である。
【図８】ＵＰｎＰサービス提供装置１０２における代理サービスの開始処理の流れを示すフローチャートである。
【図９】代理サービス装置１０１における代理サービスの終了処理の流れを示すフローチャートである。
【図１０】ＵＵＩＤ記憶部４０９のエントリを例示する図である。
【図１１】ＵＰｎＰコントロールポイント装置１０３が、ＵＰｎＰサービス提供装置１０２を利用する際の動作概略を示す図である。
【図１２】代理サービス開始処理のシーケンスを示すシーケンスチャートである。
【図１３】ＵＰｎＰサービス提供装置１０２におけるサービス提供の終了処理の流れを示すフローチャートである
【図１４】代理サービス終了処理のシーケンスを示すシーケンスチャートである。
【図１５】代理サービス装置１０１における代理サービスの開始処理の流れを示すフローチャートである。
【図１６】サービス提供装置１０２における代理サービスの開始処理の流れを示すフローチャートである。
【図１７】代理サービス開始処理のシーケンスを示すシーケンスチャートである。
【図１８】コンテンツ提供処理のシーケンスを示すシーケンスチャートである。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明に係る実施の形態を詳細に説明する。ただし、この実施の形態に記載されている構成要素はあくまでも例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。また、本実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１２】
＜＜実施形態１＞＞
（ネットワーク構成）
本発明の第１の実施形態（実施形態１）について、図面を参照して説明する。図１は、本実施形態に係る情報処理システム（ネットワークシステム）のネットワーク構成図である。
【００１３】
ＬＡＮ１００は、情報の転送経路となるネットワークであり、第１通信路としてのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。ＬＡＮ１００は、ＬＡＮに限らず、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、それらの複合でもよい。本実施形態では、ＬＡＮ１００は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ（無線ＬＡＮ）を利用しているが、これに限られない。例えば、アドホックネットワーク、有線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｚｉｇｂｅｅ、ＵＷＢなどでもよい。
【００１４】
代理サービス装置１０１は、ＬＡＮ１００に接続したＵＰｎＰのサービスを代理（中継）する代理機能を持つ情報処理装置である。本実施形態では、サービスとしてＵＰｎＰを挙げたが、同様に遠隔操作を行うサービスおよびそれらの複合のサービスについても適用できることは、言うまでもない。
【００１５】
ＵＰｎＰサービス提供装置１０２は、ＬＡＮ１００に接続し、ＵＰｎＰのサービスを提供する機能を持つ装置である。ＵＰｎＰコントロールポイント装置１０３は、ＬＡＮ１００に接続し、ＵＰｎＰのサービスを受け取って操作する機能を持つ制御装置である。
【００１６】
Ｂｌｕｅｔｏｏｔｈ１０４は、代理サービス装置１０１とＵＰｎＰサービス提供装置１０２のＢｌｕｅｔｏｏｔｈ接続のネットワークであり、本実施形態では第２通信路として機能する。Ｂｌｕｅｔｏｏｔｈ１０４は、Ｂｌｕｅｔｏｏｔｈを利用しているがこれに限らず、例えば、アドホックネットワーク、有線ＬＡＮ、Ｗｉｒｅｌｅｓｓ  ＬＡＮ、Ｚｉｇｂｅｅ、ＵＷＢなどで構成してもよい。
【００１７】
本実施形態では、ＬＡＮ１００とＢｌｕｅｔｏｏｔｈ１０４は、異なる通信手段を用いているがこれに限られない。すなわち、同一の通信手段の異なるパラメータ、および、モードなどでも実施できることは言うまでもない。
【００１８】
本実施形態では、ＵＰｎＰサービス提供装置１０２からＬＡＮ１００経由でＵＰｎＰコントロールポイント装置１０３に直接提供していたＵＰｎＰサービスを、Ｂｌｕｅｔｏｏｔｈ１０４と代理サービス装置１０１経由で提供するように切り替える。これにより、ＬＡＮ１００に接続された悪意のある装置からのＵＰｎＰサービス提供装置１０２に対する不正操作（スリープ解除など）を排除することができる。
【００１９】
（代理サービス装置のハードウェア構成）
図２は、本実施形態に係る代理サービス装置１０１のハードウェア構成図である。本実施形態では、代理サービス装置１０１は、ＰＣ（パーソナルコンピュータ）、ワークステーション、ノートブックＰＣ、パームトップＰＣなどのコンピュータシステムにより実現される。ただし、代理サービス装置１０１は、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機、携帯電話、ＰＨＳ等を含む他のネットワーク制御装置と通信するための通信機能を有する端末、または、これらの組合せによっても実現できる。
【００２０】
２０１はコンピュータシステムの制御をつかさどる中央演算装置（以下ＣＰＵと記す）である。２０２はランダムアクセスメモリ（書き込み可能メモリ、以下ＲＡＭと記す）であり、ＣＰＵ２０１の主メモリ、実行プログラムの領域や該プログラムの実行エリア、並びにデータエリアとして機能する。
【００２１】
２０３は、ＣＰＵ２０１の動作処理手順を記録しているリードオンリーメモリー（読み出し専用メモリ、以下ＲＯＭと記す）である。ＲＯＭ２０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ）を記録したプログラムＲＯＭとシステムを稼動するために必要な情報などが記録されたデータＲＯＭがある。なお、ＲＡＭ２０２やＲＯＭ２０３の代わりに後述のＨＤＤ２０９を用いてもよい。後述する各種動作は、ＲＯＭ２０３等のコンピュータ読取可能な記録媒体に格納されたプログラムをＣＰＵ２０１が実行することにより実行される。
【００２２】
２０４は、ネットワークインタフェース（以下ＮＥＴＩＦと記す）である。ＮＥＴＩＦ２０４は、ネットワークを介してコンピュータシステム間のデータ転送を行うための制御や接続状況の診断を行う。ＮＥＴＩＦはＬＡＮ１００（第１通信路）に接続するための第１通信手段と、Ｂｌｕｅｔｏｏｔｈ（第２通信路）に接続するための第２通信手段として機能する。
【００２３】
２０５は、ビデオＲＡＭ（以下ＶＲＡＭと記す）であり、コンピュータシステムの稼動状態を示す後述するＣＲＴ２０６の画面に表示される画像を展開し、その表示の制御を行う。２０６は、コンピュータシステムの処理結果などを表示する表示装置であって、例えば、ＣＲＴ（陰極線管）ディスプレイや液晶パネルディスプレイ等のディスプレイである。以下、ＣＲＴと記す。
【００２４】
２０７は、外部入力装置２０８からの入力信号を制御するコントローラである。以下、ＫＢＣ（キーボードコントローラ）と記す。２０８は、コンピュータシステムの利用者がコンピュータシステムに対して行う操作を受け付けるための外部入力装置であり、例えば、キーボードなどである。以下、ＫＢと記す。
【００２５】
２０９は、記憶装置を示し、例えば、ハードディスクなどである。アプリケーションプログラムや、画像情報などのデータ保存用に用いられる。以下、ＨＤＤ２０９と記す。２１０は、外部入出力装置であって、例えばフレキシブルディスクドライブ（ＦＤＤ）、ＣＤ−ＲＯＭドライブなどのリムーバブルを入出力するものであり、上述したアプリケーションプログラムの媒体からの読み出しなどに用いられる。以下、ＦＤＤと記す。なお、ＨＤＤ２０９に格納するアプリケーションプログラムやデータをＦＤＤ２１０に格納して使用することも可能である。２００は、上述した各ユニット間の接続するための入出力バス（アドレスバス、データバス、及び制御バス）である。
【００２６】
（ＵＰｎＰサービス提供装置）
本実施形態では、ＵＰｎＰサービス提供装置１０２をデジタルカメラとして説明する。図３は、ＵＰｎＰサービス提供装置１０２の構成図を表している。ＵＰｎＰサービス提供装置１０２は、デジタルカメラ以外に限られず、ネットワーク制御装置と通信するための通信機能を有するどのような端末でも実現可能である。例えば、ＰＣ、ワークステーション、ノートブックＰＣ、パームトップＰＣ、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機、携帯電話、ＰＨＳ、または、これらの組合せによっても実現可能である。
【００２７】
ＵＰｎＰサービス提供装置１０２において、３００は被写体の光学像を撮像する撮像部である。３０１は画像処理部であり、撮像部３００から出力された撮像画像を所定フォーマットの画像データに変換し、画像データに透かしデータを付与する。
【００２８】
３０２は符号化／復号化部であり、画像処理部３０１から出力された画像データに対して所定の高能率符号化（例えば、ＤＣＴ変換、量子化後に可変長符号化）を行う。符号化／復号化部３０２はまた、記録再生部３０３から再生された圧縮画像データを伸長復号化し、その画像データを画像処理部３０１に供給する。
【００２９】
また、３０３は圧縮符号化された画像データを不図示の記録媒体に記録再生する記録再生部であり、３０４はＵＰｎＰサービス提供装置１０２における処理動作を指示する操作部である。３０５は制御部であり、ＵＰｎＰサービス提供装置１０２を構成する各処理部の動作を制御する。制御部３０５は、マイクロコンピュータと所定のプログラムコードを記憶可能なメモリとを具備し、ＵＰｎＰサービスに関する処理、後述の各種動作なども行う。
【００３０】
３０６は撮像部３００にて撮像された画像をＥＶＦ（Electric View Finder）や液晶パネル等を用いて表示する表示部である。３０７は撮像部３００にて撮像された画像データなどを通信するインタフェースである。
【００３１】
更に、３０８はＵＰｎＰサービス提供装置１０２の機能に関する情報が格納されているＲＯＭである。本実施形態のＵＰｎＰサービス提供装置１０２は、画像データを符号化する技術として、例えば、ＪＰＥＧ(Joint Photographic Experts Group)方式を用いて圧縮符号化する。
【００３２】
３０９はネットワークインタフェース（ＮＥＴＩＦ）である。ＮＥＴＩＦ３０９は、ネットワークを介して情報処理装置間のデータ転送を行うための制御や接続状況の診断を行う。
【００３３】
（代理サービス装置のモジュール構成）
図４（a）は、本実施形態の代理サービス装置１０１のモジュール構成図である。４０１は第１通信手段としてのＷｉｒｅｌｅｓｓ  ＬＡＮ制御部であり、ＬＡＮ１００に接続され、Ｗｉｒｅｌｅｓｓ  ＬＡＮの通信処理、および、ＴＣＰ／ＩＰの通信処理を行う。４０２は第２通信手段としてのＢｌｕｅｔｏｏｔｈ制御部であり、Ｂｌｕｅｔｏｏｔｈ１０４に接続され、Ｂｌｕｅｔｏｏｔｈの通信処理、および、ＴＣＰ／ＩＰ通信処理を行う。
【００３４】
４０３はＳＳＤＰ処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１、および、Ｂｌｕｅｔｏｏｔｈ制御部４０２から、対応するパケットを受信し、ＳＳＤＰの処理を行う。ここで、ＳＳＤＰはSimple Service Discovery Protocolの略語であり、ネットワーク上のＵＰｎＰデバイスを探索・発見するプロトコルである。ＳＳＤＰ処理部４０３はまた、ＳＳＤＰを利用して、サービスの発見、サービスの発見に対する応答、サービスの広告などを行う。本実施形態では、ＳＳＤＰを利用しているが、これに限らず、ウェブサービスのＷＳ−Ｄｉｓｃｏｖｅｒｙなどの別の手段を利用しても実現できることは言うまでもない。
【００３５】
４０４はＳＯＡＰ処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１、および、Ｂｌｕｅｔｏｏｔｈ制御部４０２から、対応するパケットを受信し、ＳＯＡＰの処理を行う。ここで、ＳＯＡＰはSimple Object Access Protoclの略語であり、ソフトウェア同士がメッセージ（オブジェクト）を交換するためのプロトコルである。ＳＯＡＰ処理部４０４はまた、ＳＯＡＰを利用して、サービスの実行、サービスの受け付けなどを行う。本実施形態では、ＳＯＡＰを利用しているが、これに限らず、リモートプロシージャコール（ＲＰＣ）など遠隔のオブジェクトを実行する別の手段を利用してもよいことは言うまでもない。
【００３６】
４０５は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１、および、Ｂｌｕｅｔｏｏｔｈ制御部４０２から、対応するパケットを受信し、ＧＥＮＡの処理を行うＧＥＮＡ処理部である。ここで、ＧＥＮＡはGeneral Event Notification Architectureの略語であり、イベント情報のコントロールを行うためのプロトコルである。ＧＥＮＡを利用して、イベントの通知、イベントのサブスクライブなどを行う。本実施形態では、ＧＥＮＡを利用しているが、これに限らず、ＷＳ−Ｅｖｅｎｔｉｎｇ、ＷＳ−Ｎｏｔｉｆｉｃａｔｉｏｎなどの別の手段を利用しても実現できることは言うまでもない。
【００３７】
４０６は代理制御部である。代理制御部４０６は、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、および、ＧＥＮＡ処理部４０５を管理して、サービスを代理するかの判断を行う。
【００３８】
４０７は代理処理部であり、発見したサービスを代理するためのメッセージ作成などを行う。本実施形態における代理処理部４０７はＵＰｎＰ処理の代理を行うが、これに限らず、これまでに説明した様々な機能の複合の代理を行ってもよい。本実施形態における代理処理部４０７は、ＵＰｎＰサービスを一度全て受信してから、再度送信する代理の方法であるが、これに限らず、メッセージの書き換え（ＩＰアドレスなど）によって代理を行っても良い。また、代理処理部４０７は、ＵＰｎＰサービス提供装置１０２のサービスの情報に関するキャッシュを保持しても良い。
【００３９】
４０８はＵＵＩＤ判断部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部を通じて発見したサービスのＵＵＩＤが、Ｂｌｕｅｔｏｏｔｈ制御部を通じて発見したサービスのＵＵＩＤと一致しているか判断する。なお、ＵＵＩＤはUniversal Unique Identifier（汎用一意識別子）の略語である。本実施形態ではＵＰｎＰサービスを代理する構成を説明しているため、ＵＵＩＤ判断部４０８はＵＵＩＤを判断しているが、これに限らず、他の一意の識別子でもよい。
【００４０】
４０９はＵＵＩＤ記憶部である。ＵＵＩＤ記憶部４０９は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部を通じて発見したサービスのＵＵＩＤ、および、Ｂｌｕｅｔｏｏｔｈ制御部を通じて発見したサービスのＵＵＩＤを管理する。
【００４１】
（ＵＰｎＰサービス提供装置のモジュール構成）
図５(a)は、本実施形態のＵＰｎＰサービス提供装置１０２のモジュール構成図である。５０１はＷｉｒｅｌｅｓｓ  ＬＡＮ制御部であり、ＬＡＮ１００に接続され、Ｗｉｒｅｌｅｓｓ  ＬＡＮの通信処理、および、ＴＣＰ／ＩＰの通信処理を行う。５０２はＢｌｕｅｔｏｏｔｈ制御部であり、Ｂｌｕｅｔｏｏｔｈ１０４に接続され、Ｂｌｕｅｔｏｏｔｈの通信処理、および、ＴＣＰ／ＩＰ通信処理を行う。
【００４２】
５０３はＳＳＤＰ処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１、および、Ｂｌｕｅｔｏｏｔｈ制御部５０２から、対応するパケットを受信し、ＳＳＤＰの処理を行う。ＳＳＤＰ処理部５０３はまた、ＳＳＤＰを利用して、サービスの発見、サービスの発見に対する応答、サービスの広告などを行う。本実施形態では、ＳＳＤＰを利用しているが、これに限らず、ＷＳ−Ｄｉｓｃｏｖｅｒｙなどの別の手段を利用しても実現できることは言うまでもない。
【００４３】
５０４はＳＯＡＰ処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１、および、Ｂｌｕｅｔｏｏｔｈ制御部５０２から、対応するパケットを受信し、ＳＯＡＰの処理を行う。ＳＯＡＰ処理部５０４は、ＳＯＡＰを利用して、サービスの実行、サービスの受け付けなどを行う。本実施形態では、ＳＯＡＰを利用しているが、これに限らず、リモートプロシージャコールなど遠隔のオブジェクトを実行する別の手段を利用しても実現できることは言うまでもない。
【００４４】
５０５はＧＥＮＡ処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１およびＢｌｕｅｔｏｏｔｈ制御部５０２から対応するパケットを受信し、ＧＥＮＡの処理を行う。ＧＥＮＡ処理部５０５はまた、ＧＥＮＡを利用して、イベントの通知、イベントのサブスクライブなどを行う。本実施形態では、ＧＥＮＡを利用しているが、これに限らず、ＷＳ−Ｅｖｅｎｔｉｎｇ、ＷＳ−Ｎｏｔｉｆｉｃａｔｉｏｎなどの別の手段を利用しても実現できることは言うまでもない。
【００４５】
５０６はサービス制御部である。サービス制御部５０６は、ＳＳＤＰ処理部５０３、および、ＳＯＡＰ処理部５０４、および、ＧＥＮＡ処理部５０５を管理して、ＵＰｎＰ処理を行う。
【００４６】
（代理サービス装置におけるサービス提供開始処理）
図６は、代理サービス装置１０１における代理サービスの開始処理の流れを示すフローチャートである。代理サービス装置１０１、および、ＵＰｎＰサービス提供装置は、ＬＡＮ１００のみに接続している。
【００４７】
ステップＳ６０１において、代理制御部４０６は、ＵＰｎＰサービス提供装置１０２を探索することを決定する。代理制御部４０６は、ＳＳＤＰ処理部４０３に対して、ＬＡＮ１００上で、ＵＰｎＰサービス提供装置１０２を探索するように依頼する。ＳＳＤＰ処理部４０３は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ処理部４０１を通じて、ＬＡＮ１００上に、ＵＰｎＰサービス提供装置１０２を探索するＳＳＤＰのｍ−ｓｅａｒｃｈメッセージを送信する。ＵＰｎＰサービス提供装置１０２は、ＳＳＤＰのｍ−ｓｅａｒｃｈメッセージを受け取ると、代理サービス装置１０１にＳＳＤＰのｒｅｓｐｏｎｓｅメッセージを返信する。ＳＳＤＰ処理部４０３は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じて、ＵＰｎＰサービス提供装置１０２からＳＳＤＰのｒｅｓｐｏｎｓｅメッセージを受信する。これにより、ＳＳＤＰ処理部４０３は、ＵＰｎＰサービス提供装置１０２を発見できる。ＳＳＤＰ処理部４０３は、ＵＰｎＰサービス提供装置１０２の探索の結果を代理制御部４０６に送信する。代理制御部４０６が、ＵＰｎＰサービス提供装置１０２の探索の結果から、発見したと判断すると（ステップＳ６０１でＹＥＳ）、ＵＵＩＤ記憶部４０９にＵＰｎＰサービス提供装置１０２のＵＵＩＤを保存し、ステップＳ６０２に進む。代理制御部４０６が、ＵＰｎＰサービス提供装置１０２の探索の結果から、未発見と判断すると（ステップＳ６０１でＮＯ）、処理を終了する。ＳＳＤＰ処理部４０３は、ＵＰｎＰサービス提供装置１０２から、ＳＳＤＰのａｌｉｖｅメッセージを受信することで、ＵＰｎＰサービス提供装置１０２を発見してもよい。
【００４８】
ステップＳ６０２において、代理制御部４０６は、ＳＯＡＰ処理部４０４に、ＵＰｎＰサービス提供装置１０２宛にＵＰｎＰサービスの代理が必要か否かの確認メッセージの送信を依頼する。ＳＯＡＰ処理部４０４は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じて、ＬＡＮ１００上のＵＰｎＰサービス提供装置１０２に確認メッセージを送信する。ＵＰｎＰサービス提供装置１０２は、代理の必要があるか否かの判断を行い、結果を返信する。ＳＯＡＰ処理部４０４は、ＵＰｎＰサービス提供装置１０２の結果を受信し、代理制御部４０６に送信する。代理制御部４０６は、結果に応じて、ＵＰｎＰサービス提供装置１０２の代理が必要か否かの判断を行う。代理制御部４０６が、ＵＰｎＰサービス提供装置１０２の代理が必要であると判断した場合（ステップＳ６０２でＹＥＳ）、ステップＳ６０３に進む。代理制御部４０６が、ＵＰｎＰサービス提供装置１０２の代理が必要でないと判断した場合（ステップＳ６０２でＮＯ）、処理を終了する。
【００４９】
ステップＳ６０３において、代理制御部４０６は、ＳＯＡＰ処理部４０４にＢｌｕｅｔｏｏｔｈ１０４へ接続するためのパラメータを送信する。ＳＯＡＰ処理部４０４は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じて、ＵＰｎＰサービス提供装置１０２にパラメータを送信し、ステップＳ６０４に進む。
【００５０】
ステップＳ６０４において、代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈ制御部４０２を利用して、Ｂｌｕｅｔｏｏｔｈ１０４の接続開始処理を行う。そしてステップＳ６０５に進む。
【００５１】
ステップＳ６０５において、代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、ＵＰｎＰサービス提供装置１０２と接続できたか否かの判断を行う。代理制御部４０６は、接続できたと判断すると（ステップＳ６０５でＹＥＳ）ステップＳ６０６に進む。代理制御部４０６は、接続できなかったと判断すると（ステップＳ６０５でＮＯ）処理を終了する。
【００５２】
ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈによる接続が確立すると、ＷｉｒｅｌｅｓｓＬＡＮによる接続に対しては通信終了（ＬＡＮ１００からの離脱）を示すｂｙｅｂｙｅメッセージを送信する。そこで、ステップＳ６０６において、代理サービス装置１０１の代理制御部４０６は、ＬＡＮ１００からＷｉｒｅｌｅｓｓ  ＬＡＮ制御部１０１を通じて、ＳＳＤＰ処理部４０３で受信したＳＳＤＰのｂｙｅｂｙｅメッセージの判断を行う。代理制御部４０６は、ＵＵＩＤ記憶部４０９に記憶されているＵＰｎＰサービス提供装置１０２のＵＵＩＤと合致するＳＳＤＰのｂｙｅｂｙｅメッセージを受信したかの判断を行う。代理制御部４０６は、ＵＰｎＰサービス提供装置１０２のｂｙｅｂｙｅメッセージであると判断すると（ステップＳ６０６でＹＥＳ）、ステップＳ６０７に進む。代理制御部４０６は、ＵＰｎＰサービス提供装置１０２のｂｙｅｂｙｅメッセージでないと判断すると（ステップＳ６０６でＮＯ）、処理を終了する。なお、代理制御部４０６が処理を実行する前に、ｂｙｅｂｙｅメッセージを受信している場合について説明する。この場合、ＳＳＤＰ処理部４０３は、ＵＰｎＰサービス提供装置１０２のＳＳＤＰのａｌｉｖｅ／ｂｙｅｂｙｅを管理しているので、ｂｙｅｂｙｅメッセージを受信していることを判断することができる。
【００５３】
ステップＳ６０７において、代理制御部４０６は、ＳＳＤＰ処理部４０３に、Ｂｌｕｅｔｏｏｔｈ１０４上でＵＰｎＰサービス提供装置１０２を探索するように依頼する。ＳＳＤＰ処理部４０３は、Ｂｌｕｅｔｏｏｔｈ制御部１０２を通じて、ＳＳＤＰのｍ−ｓｅａｒｃｈメッセージを利用して、ＵＰｎＰサービス提供装置１０２を探索する。ＳＳＤＰ処理部４０３は、探索結果を代理制御部４０６に送信する。代理制御部４０６は、ＵＵＩＤ判断部４０８を利用して、ＵＵＩＤ記憶部４０９に記憶されたＵＵＩＤと同一のものがあるかの判断を行う。代理制御部４０６は、同一のものがあると判断すると、ＵＰｎＰサービス提供装置１０２を発見したと判断する。代理制御部４０６は、ＵＰｎＰサービス提供装置１０２を発見したと判断すると（ステップＳ６０７でＹＥＳ）、ステップＳ６０８に進む。代理制御部４０６は、ＵＰｎＰサービス提供装置１０２を発見できなかったと判断すると（ステップＳ６０７でＮＯ）、処理を終了する。なお、ＳＳＤＰ処理部４０３は、ＵＰｎＰサービス提供装置１０２から、ＳＳＤＰのａｌｉｖｅメッセージを受信することで、ＵＰｎＰサービス提供装置１０２を発見してもよい。また、代理制御部４０６は、ＳＳＤＰ処理部４０３にＵＵＩＤ記憶部４０９に記憶されたＵＵＩＤを鍵にＳＳＤＰのｍ−ｓｅａｒｃｈを実行させることで発見してもよい。
【００５４】
ステップＳ６０８において、代理制御部４０６は、代理処理部４０７にＵＰｎＰサービス提供装置１０２のＵＰｎＰサービスの代理を依頼し、処理を終了する。代理処理部４０７は、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、ＧＥＮＡ処理部４０５を利用し、ＵＵＩＤ記憶部４０９に記憶された代理がyesのもののみ、ＵＰｎＰサービスの代理を実行する。この時のＵＵＩＤは、ＵＰｎＰサービス提供装置のＵＵＩＤと同じものを利用する。代理処理部４０７は、Ｂｌｕｅｔｏｏｔｈ１０４側にはＵＰｎＰのコントロールポイントとして、ＬＡＮ１００側にはＵＰｎＰサービスとして処理を行う。
【００５５】
なお、図６では、ＵＰｎＰサービスの代理処理を行う際に、同じＵＵＩＤを使用する場合を説明したがこれに限られない。例えば、代理サービス装置１０１がマッピングを持つことで、異なるＵＵＩＤを利用することもできる。
【００５６】
図７（a）は、図６におけるステップＳ６０１におけるＵＵＩＤ記憶部４０９のエントリを例示する図である。図７（a）において、７０１は装置やサービスのＵＵＩＤであり、７０２は接続中のネットワークである。７０３はＵＵＩＤ７０１で識別される装置やサービスの状態であり、７０４は代理サービスをするか否かに関する情報である。図７（a）の例では、uuid:98765432-1234-abcd-1234-000011112222は、ＬＡＮ１００に接続されたＵＰｎＰ機器であり、代理サービスを実行しない状態である。uuid:816c5df0-c2ed-11da-9216-0008741e9395は、ＵＰｎＰサービス提供装置１０２であり、代理サービスをするか否か未定の状態である。
【００５７】
図７（ｂ）は、図６におけるステップＳ６０２において、代理の必要がある場合のＵＵＩＤ記憶部４０９のエントリを例示する図である。ＵＰｎＰサービス提供装置１０２を示すuuid:816c5df0-c2ed-11da-9216-0008741e9395の代理サービスの項目がyesになり、代理サービスを行う状態になる。
【００５８】
図７（c）は、図６におけるステップＳ６０６において、ＵＰｎＰサービス提供装置１０２のｂｙｅｂｙｅを受信した場合のＵＵＩＤ記憶部４０９のエントリを例示する図である。ＵＰｎＰサービス提供装置１０２を示すuuid:816c5df0-c2ed-11da-9216-0008741e9395の状態の項目７０３がbyebyeになり、ＬＡＮ１００から離脱した状態になる。
【００５９】
図７（d）は、図６におけるステップＳ６０７において、ＵＰｎＰサービス提供装置１０２のａｌｉｖｅを受信した場合のＵＵＩＤ記憶部４０９のエントリを例示する図である。ＵＰｎＰサービス提供装置１０２を示すuuid:816c5df0-c2ed-11da-9216-0008741e9395が、Ｂｌｕｅｔｏｏｔｈ１０４上で発見され、エントリに追加された状態になる（１００１）。
【００６０】
このように、エントリを管理することで、ＬＡＮ１００に接続したＵＰｎＰサービス提供装置１０２とＢｌｕｅｔｏｏｔｈ１０４に接続したＵＰｎＰサービス提供装置１０２が同じものであることがわかる。ｂｙｅｂｙｅ状態になったエントリは、一定時間後消去されても良い。
【００６１】
（ＵＰｎＰサービス提供装置におけるサービス提供開始処理）
次に、ＵＰｎＰサービス提供装置１０２におけるサービス提供開始処理について図８を参照して説明する。図８は、ＵＰｎＰサービス提供装置１０２におけるサービス提供の開始処理の流れを示すフローチャートである。
【００６２】
ステップＳ１１０１において、サービス制御部５０６は、ＳＯＡＰ制御部５０３を利用し、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、代理サービス装置１０１からＵＰｎＰサービスの代理の提案を受信する。ＵＰｎＰサービスの代理の提案は、代理サービス装置１０１におけるステップＳ６０２で送信されたものである。サービス制御部５０６は、代理サービス装置１０１にＵＰｎＰサービスの代理を依頼すると判断した場合（ステップＳ１１０１でＹＥＳ）、ステップＳ１１０２に進む。サービス制御部５０６は、代理サービス装置１０１にＵＰｎＰサービスの代理を依頼しないと判断した場合（ステップＳ１１０１でＮＯ）、処理を終了する。
【００６３】
ステップＳ１１０２において、サービス制御部５０６は、ＳＯＡＰ制御部５０３を利用し、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部を通じて、代理サービス装置１０１からＢｌｕｔｏｏｔｈ１０４のパラメータを受信する。サービス制御部５０６はＢｌｕｅｔｏｏｔｈ１０４のパラメータを記憶領域に保存し、ステップＳ１１０３に進む。Ｂｌｕｅｔｏｏｔｈ１０４のパラメータは、図６のステップＳ６０３で代理サービス装置１０１により送信されたものである。
【００６４】
ステップＳ１１０３において、サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を利用して、Ｂｌｕｅｔｏｏｔｈ１０４へ接続を開始する。そして、ステップＳ１１０４に進む。
【００６５】
ステップＳ１１０４において、サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を利用して、ＵＰｎＰサービス提供装置１０２が代理サービス装置１０１とＢｌｕｅｔｏｏｔｈ１０４で接続されたか否かの確認を行う。サービス制御部５０６は、代理サービス装置１０１とＢｌｕｅｔｏｏｔｈ１０４で接続されたと判断すると（ステップＳ１１０４でＹＥＳ）、ステップＳ１１０５に進む。サービス制御部５０６は、代理サービス装置１０１とＢｌｕｅｔｏｏｔｈ１０４で接続されていないと判断すると（ステップＳ１１０４でＮＯ）処理を終了する。
【００６６】
ステップＳ１１０５において、サービス制御部５０６は、ＳＳＤＰ処理部５０３、ＳＯＡＰ処理部５０４、および、ＧＥＮＡ処理部５０５に対して、ＬＡＮ１００に公開しているＵＰｎＰサービスに関連する機能の停止を要求する。ＳＳＤＰ処理部５０３は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００にＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。ＳＯＡＰ処理部５０６は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じたＬＡＮ１００に対するＳＯＡＰ処理を停止する。ＧＥＮＡ処理部５０７は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じたＬＡＮ１００に対するＧＥＮＡ処理を停止する。サービス制御部５０６は、ＬＡＮ１００に公開しているＵＰｎＰサービスに関連する機能が停止したと判断すると、ステップＳ１１０６に進む。
【００６７】
ステップＳ１１０６において、サービス制御部５０６は、ＳＳＤＰ処理部５０３、ＳＯＡＰ処理部５０４、および、ＧＥＮＡ処理部５０５に対して、Ｂｌｕｅｔｏｏｔｈ１０４にＵＰｎＰサービスを公開するように要求する。要求を受けたＳＳＤＰ処理部５０３は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４にＳＳＤＰのａｌｉｖｅメッセージを送信する。ＳＯＡＰ処理部５０４は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４にＳＯＡＰ処理を開始する。ＧＥＮＡ処理部５０５は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４にＧＥＮＡ処理を開始する。サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ１０４上でＵＰｎＰサービスが起動したと判断すると、ステップＳ１１０７に進む。
【００６８】
ステップＳ１１０７において、サービス制御部５０６は、ＳＳＤＰ処理部５０３を利用し、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部１０１を通じて、ＬＡＮ１００上でＳＳＤＰのａｌｉｖｅメッセージを取得する。サービス制御部５０６は、取得したａｌｉｖｅメッセージに含まれるＵＵＩＤが、ＵＰｎＰサービス提供装置１０２のＵＵＩＤと同一であるかの確認を行う。サービス制御部５０６が、一定時間内に同一のＵＵＩＤを確認できたと判断すると（ステップＳ１１０７でＹＥＳ）、ステップＳ１１０８に進む。サービス制御部５０６が、一定時間内に同一のＵＵＩＤを確認できなかったと判断すると（ステップＳ１１０７でＮＯ）、ステップＳ１１０９に進む。
【００６９】
ステップＳ１１０８において、サービス制御部５０６は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を利用して、ＬＡＮ１００の切断を行う。そして、処理を終了する。
【００７０】
ステップＳ１１０９において、サービス制御部５０６は、ＳＳＤＰ処理部５０３、ＳＯＡＰ処理部５０４、および、ＧＥＮＡ処理部５０５に対して、Ｂｌｕｅｔｏｏｔｈ１０４に公開しているＵＰｎＰサービスに関連する機能の停止を要求する。ＳＳＤＰ処理部５０３は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４にＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。ＳＯＡＰ処理部５０６は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じたＢｌｕｅｔｏｏｔｈ１０４に対するＳＯＡＰ処理を停止する。ＧＥＮＡ処理部５０７は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じたＢｌｕｅｔｏｏｔｈ１０４に対するＧＥＮＡ処理を停止する。サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ１０４に公開しているＵＰｎＰサービスに関連する機能が停止したと判断すると、ステップＳ１１１０に進む。
【００７１】
ステップＳ１１１０において、サービス制御部５０６は、ＳＳＤＰ処理部５０３、ＳＯＡＰ処理部５０４、および、ＧＥＮＡ処理部５０５に対して、ＬＡＮ１００にＵＰｎＰサービスを公開するように要求する。要求を受けたＳＳＤＰ処理部５０３は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００にＳＳＤＰのａｌｉｖｅメッセージを送信する。ＳＯＡＰ処理部５０４は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００にＳＯＡＰ処理を開始する。ＧＥＮＡ処理部５０５は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００にＧＥＮＡ処理を開始する。サービス制御部５０６は、ＬＡＮ１００上でＵＰｎＰサービスが起動したと判断すると、ステップＳ１１１１に進む。
【００７２】
ステップＳ１１１１において、サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ制御部５０２を利用して、Ｂｌｕｅｔｏｏｔｈ１０４の切断を行う。そして、処理を終了する。
【００７３】
（サービス提供開始処理のシーケンス）
次に、図６，図８のフローチャートを参照して説明した処理のシーケンスについて、図１２を参照して説明する。図１２は、実施形態１に係る代理サービス装置１０１とＵＰｎＰサービス提供装置１０２における代理サービス開始処理のシーケンスを示すシーケンスチャートである。
【００７４】
Ｆ１７０１において、代理サービス装置１０１がＵＰｎＰサービス提供装置１０２を発見する。Ｆ１７０２において、代理サービス装置１０１がＵＰｎＰサービス提供装置１０２にＵＰｎＰサービスの代理を行うかの確認を行う。Ｆ１７０３において、代理サービス装置１０１がＵＰｎＰサービス提供装置１０２にＢｌｕｅｔｏｏｔｈ１０４のパラメータを送信する。
【００７５】
Ｆ１７０４において、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２に送信したパラメータに応じて、Ｂｌｕｅｔｏｏｔｈ１０４への接続を開始する。Ｆ１７０５において、ＵＰｎＰサービス提供装置１０２は、代理サービス装置１０１から受信したパラメータに応じて、Ｂｌｕｅｔｏｏｔｈ１０４への接続を開始する。Ｆ１７０６において、代理サービス装置１０１、および、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４への接続を確認する。
【００７６】
Ｆ１７０７において、ＵＰｎＰサービス提供装置１０２は、ＬＡＮ１００上のＵＰｎＰサービスを停止する。Ｆ１７０８において、ＵＰｎＰサービス提供装置１０２は、ＬＡＮ１００上にＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。
【００７７】
Ｆ１７０９において、代理サービス装置１０１は、ＬＡＮ１００から受信したｂｙｅｂｙｅメッセージがＵＰｎＰサービス提供装置１０２のＵＵＩＤを含むｂｙｅｂｙｅメッセージであることを確認する。Ｆ１７１０において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４上で、ＵＰｎＰサービスを起動する。Ｆ１７１１において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４上にＳＳＤＰのａｌｉｖｅメッセージを送信する。
【００７８】
Ｆ１７１２において、代理サービス装置１０１が、Ｂｌｕｅｔｏｏｔｈ１０４から受信したａｌｉｖｅメッセージがＵＰｎＰサービス提供装置１０２のＵＵＩＤを含むｂｙｅｂｙｅメッセージであることを確認する。Ｆ１７１３において、代理サービス装置１０１は、ＬＡＮ１００でＵＰｎＰサービス提供装置１０２の代理を行う代理サービスを開始する。
【００７９】
Ｆ１７１４において、代理サービス装置１０１は、ＬＡＮ１００上に、ＵＰｎＰサービス提供装置１０２のＵＵＩＤを含むａｌｉｖｅメッセージを送信する。Ｆ１７１５において、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２は、ＬＡＮ１００上で、ＵＰｎＰサービス提供装置１０２のＵＵＩＤを含むａｌｉｖｅメッセージを受信した事を確認する。Ｆ１７１６において、ＵＰｎＰサービス提供装置１０２は、ＬＡＮ１００の切断を行う。
【００８０】
（代理サービス装置におけるサービス提供終了処理）
次に、代理サービス提供１０１におけるサービス提供の終了処理について図９を参照して説明する。図９は、代理サービス提供１０１におけるサービス提供の終了処理の流れを示すフローチャートである。
【００８１】
ステップＳ１２０１において、代理制御部４０６は、ＳＳＤＰ処理部４０３を利用して、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、ＳＳＤＰのｂｙｅｂｙｅメッセージを受信し、ステップＳ１２０２に進む。
【００８２】
ステップＳ１２０２において、代理制御部４０６は、ｂｙｅｂｙｅメッセージからＵＵＩＤを取り出し、取り出したＵＵＩＤをＵＵＩＤ判断部４０８に送信する。ＵＵＩＤ判断部４０８は、ＵＵＩＤ記憶部４０９と受信したＵＵＩＤの比較を行い、対応するＵＰｎＰサービスがあるかの判断を行う。ＵＵＩＤ判断部４０８は、判断の結果を代理制御部４０６に送信する。代理制御部４０６が、受信した判断の結果から、ＵＰｎＰサービスがあると判断する場合（ステップＳ１２０２でＹＥＳ）、ＵＵＩＤ記憶部４０９のエントリをｂｙｅｂｙｅに変更し、ステップＳ１２０３に進む。代理制御部４０６が、受信した判断の結果から、ＵＰｎＰサービスがないと判断すると（ステップＳ１２０２でＮＯ）処理を終了する。
【００８３】
ステップＳ１２０３において、代理制御部４０６は、ＳＳＤＰ処理部４０３を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じて、ＳＳＤＰのｂｙｅｂｙｅメッセージを送信し、ＵＰｎＰサービスを終了する。ＳＳＤＰのｂｙｅｂｙｅメッセージに含まれるＵＵＩＤは、サービス提供装置１０２のＵＵＩＤと同じである。
【００８４】
ステップＳ１２０４において、代理制御部４０６は、代理処理部４０７にＵＰｎＰサービス提供装置１０２のＵＰｎＰサービスの代理終了を指示し、ステップＳ１２０５に進む。代理制御部４０６は、ＵＵＩＤ記憶部４０９に記憶されるＵＰｎＰサービス提供装置１０２に関連する情報を消去する。
【００８５】
ステップＳ１２０５において、代理制御部４０６は、ＵＵＩＤ記憶部４０９からエントリを取得し、Ｂｌｕｅｔｏｏｔｈ１０４のネットワークでａｌｉｖｅのものがあるかの判断を行う。代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈ制御部４０２から、Ｂｌｕｅｔｏｏｔｈ接続された機器があるかの情報を取得してもよい。代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈに接続された機器があると判断すると（ステップＳ１２０５でＹＥＳ）、処理を終了する。代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈに接続された機器がないと判断すると（ステップＳ１２０５でＮＯ）、ステップＳ１２０６に進む。
【００８６】
ステップＳ１２０６において、代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈ制御部４０２にＢｌｕｅｔｏｏｔｈ１０４からの切断を指示する。Ｂｌｕｅｔｏｏｔｈ制御部４０２は、Ｂｌｕｅｔｏｏｔｈ１０４からの切断を行い、処理を終了する。
【００８７】
図１０（a）は、ステップＳ１２０３におけてＵＰｎＰサービス提供装置１０２のｂｙｅｂｙｅを受信した場合のＵＵＩＤ記憶部４０９のエントリを例示する図である。ＵＰｎＰサービス提供装置１０２を示すuuid:816c5df0-c2ed-11da-9216-0008741e9395の状態の項目がbyebyeになり（１３０１）、Ｂｌｕｅｔｏｏｔｈ１０４から離脱した状態になる。
【００８８】
図１０（b）は、ステップＳ１２０４において、ＵＵＩＤ記憶部４０９のエントリを例示する図である。ＵＰｎＰサービス提供装置１０２（uuid:816c5df0-c2ed-11da-9216-0008741e9395）に関連する情報が消去された状態になる。
【００８９】
代理サービス装置１０１が、ＵＰｎＰサービス提供装置１０２を再びＬＡＮ１００に接続すると図６の処理を開始する。また、本実施形態において、ＵＰｎＰサービス提供装置１０２に関連する情報を消去したが、ＵＵＩＤ記憶部４０９に記憶されたままの状態にしてもよい。その場合、図９で示した状態からスタートすることもできることは言うまでもない。
【００９０】
（ＵＰｎＰサービス提供装置におけるサービス提供終了処理）
次に、ＵＰｎＰサービス提供装置１０２におけるサービス提供の終了処理について、図１３を参照して説明する。図１３は、ＵＰｎＰサービス提供装置１０２におけるサービス提供の終了処理の流れを示すフローチャートである。
【００９１】
ステップＳ１８０１において、サービス制御部５０６は、ＳＳＤＰ処理部５０３を利用して、Ｂｌｕｅｔｏｏｔｈ制御部５０２を通じてＢｌｕｅｔｏｏｔｈ１０４にＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。サービス制御部５０６は、ＵＰｎＰサービスを停止するために、ＳＳＤＰ処理部５０３、ＳＯＡＰ処理部５０４、ＧＥＮＡ処理部５０５に対して、処理の終了を指示し、ステップＳ１８０２に進む。
【００９２】
ステップＳ１８０２において、サービス制御部５０６は、Ｂｌｕｅｔｏｏｔｈ制御部５０６にＢｌｕｅｔｏｏｔｈ１０４からの切断を指示する。Ｂｌｕｅｔｏｏｔｈ制御部５０６は、Ｂｌｕｅｔｏｏｔｈ１０４から切断し、処理を終了する。
【００９３】
（代理サービス提供終了処理のシーケンス）
次に、図９，図１３のフローチャートを参照して説明した処理のシーケンスについて、図１４を参照して説明する。図１４は、代理サービス装置１０１とＵＰｎＰサービス提供装置１０２における代理サービス終了処理のシーケンスを示すシーケンスチャートである。
【００９４】
Ｆ１９０１において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４上に、ＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。Ｆ１９０２において、代理サービス装置１０１は、受信したｂｙｅｂｙｅメッセージに含まれるＵＵＩＤが代理を行っているＵＰｎＰサービスのＵＵＩＤのものであるかの判断を行う。Ｆ１９０３において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４上のＵＰｎＰサービスを停止する。Ｆ１９０４において、代理サービス装置１０１は、ＬＡＮ１００に、受信したＵＵＩＤを含むｂｙｅｂｙｅメッセージを送信する。
【００９５】
Ｆ１９０５において、代理サービス装置１０１は、代理サービスを終了する。Ｆ１９０６において、代理サービス装置は、他の機器がＢｌｕｅｔｏｏｔｈ１０４に接続していないことを確認する。Ｆ１９０７において、代理サービス装置は、Ｂｌｕｅｔｏｏｔｈ１０４から切断する。Ｆ１９０８において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４から切断する。
【００９６】
（通常のＵＰｎＰサービス）
次に、ＵＰｎＰコントロールポイント装置１０３が、直接ＵＰｎＰサービス提供装置１０２を利用する際の動作について図１１(a)を参照して説明する。図１１(a)は、ＵＰｎＰコントロールポイント装置１０３が、直接ＵＰｎＰサービス提供装置１０２を利用する際の動作概略を示す図である。
【００９７】
Ｍ１５０１において、ＵＰｎＰコントロールポイント装置１０３は、ＵＰｎＰサービス提供装置１０２にＵＰｎＰのＳＳＤＰ、ＳＯＡＰ、ＧＥＮＡのメッセージを送信することができる。Ｍ１５０２において、ＵＰｎＰコントロールポイント装置１０３は、ＵＰｎＰサービス提供装置１０２からＵＰｎＰのＳＳＤＰ、ＳＯＡＰ、ＧＥＮＡのメッセージを受信することができる。このように、ＵＰｎＰサービス提供装置１０２が、ＬＡＮ１００し、代理サービス装置１０１を利用しない場合、ＵＰｎＰの動作と同様になる。
【００９８】
（代理サービス装置を介したＵＰｎＰサービス）
次に、ＵＰｎＰコントロールポイント装置１０３が、代理サービス装置１０１を介して、ＵＰｎＰサービス装置１０２を利用する際の動作について図１１(b)を参照して説明する。図１１(b)は、ＵＰｎＰコントロールポイント装置１０３が、代理サービス装置１０１を介して、ＵＰｎＰサービス装置１０２を利用する際の動作概略を示す図である。
【００９９】
Ｍ１６０１において、ＵＰｎＰコントロールポイント装置１０３は、代理サービス装置１０１にＵＰｎＰのＳＳＤＰ、ＳＯＡＰ、ＧＥＮＡのメッセージを送信することができる。
【０１００】
Ｍ１６０２において、代理サービス装置１０１は、各種メッセージを受け取ると、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、ＧＥＮＡ処理部４０５が処理を行い、代理処理部４０７が代理処理を行う。代理処理部４０７は、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、ＧＥＮＡ処理部４０５を利用して、新たにＵＰｎＰサービス提供装置１０２宛てのＳＳＤＰ、ＳＯＡＰ、ＧＥＮＡのメッセージを作成し、送信する。
【０１０１】
Ｍ１６０３において、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２からＳＳＤＰ、ＳＯＡＰ、ＧＥＮＡのメッセージを受信することができる。
【０１０２】
Ｍ１６０４において、代理サービス装置１０１は、各種メッセージを受け取ると、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、ＧＥＮＡ処理部４０５が処理を行い、代理処理部４０７が代理処理を行う。代理処理部４０７は、ＳＳＤＰ処理部４０３、ＳＯＡＰ処理部４０４、ＧＥＮＡ処理部４０５を利用して、新たにＵＰｎＰコントロールポイント装置１０３に宛てたメッセージを作成し、送信する。
【０１０３】
ここで、代理サービス装置１０１が、ＵＰｎＰサービス提供装置１０２の代理を行う間の処理について説明する。これは、ＵＰｎＰサービス提供装置１０２は、代理サービス１０１とＢｌｕｅｔｏｏｔｈ１０４によって接続している状態である。ＵＰｎＰサービス提供装置１０２において、アクセスがないとき、サービス制御部５０６は、ＵＰｎＰ  Ｌｏｗ  Ｐｏｗｅｒ  Ｄｅｖｉｃｅサービスなどの公知のスリープする機構を用いて、スリープすることができる。
【０１０４】
代理サービス装置１０１において、ＵＰｎＰサービス提供装置１０２へのアクセスがあった場合について説明する。この場合、代理制御部４０６は、ＵＰｎＰ  Ｌｏｗ  Ｐｏｗｅｒ  Ｄｅｖｉｃｅコントロールポイントなどの公知のスリープを解除する機構を用いて、ＵＰｎＰサービス提供装置１０２を起動させることができる。ＵＰｎＰ  Ｌｏｗ  Ｐｏｗｅｒ  Ｄｅｖｉｃｅに限らず、ＷＯＬ（Ｗａｋｅ  Ｏｎ  ＬＡＮ）と、それを広告、および、操作するメッセージの複合でも実現できる。
【０１０５】
このように、ＵＰｎＰサービス提供装置１０２は、スリープした際に代理サービス装置１０１とＢｌｕｅｔｏｏｔｈ１０４でのみ接続しているので、ＬＡＮ１００と隔離されている。そのため、ＬＡＮ１００に接続する悪意のあるＵＰｎＰ  Ｌｏｗ  Ｐｏｗｅｒ  Ｄｅｖｉｃｅコントロールポイントなどからのアクセスをネットワーク的に受け付けなくなり、安全になる。例えば、スリープへの移行やスリープの解除を悪意のある装置から受け付けることがなくなる。
【０１０６】
更に、代理サービス装置１０１は、代理処理を行う際に、必要に応じてアクセス制限をしても良い。これにより、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２へのアクセスの種類を限定することができる。
【０１０７】
以上のように、本実施形態の代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２がＬＡＮ１００に存在するか否かを判定し（第１判定）、存在する場合、Ｂｌｕｅｔｏｏｔｈ１０４を介して該ＵＰｎＰサービス提供装置１０２に接続する。そして、代理サービス装置１０１は、ＬＡＮ１００を介してＵＰｎＰコントロールポイント装置１０３と接続し、ＵＰｎＰサービス提供装置１０２とＵＰｎＰコントロールポイント装置１０３との間のサービスを中継する。
【０１０８】
従って、代理サービス装置１０１は、ＵＰｎＰサービス提供装置をＢｌｕｅｔｏｏｔｈ１０４のネットワークに収容することができる。これにより、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２をＬＡＮ１００から隠蔽することができる。このため、ＵＰｎＰサービス提供装置１０２は、代理サービス装置１０１が代理したアクセスのみを受け付ければよくなり、安全になる。更に、本実施形態のように、Ｗｉｒｅｌｅｓｓ  ＬＡＮからＢｌｕｅｔｏｏｔｈに移動すると、電力消費を低減できる。
【０１０９】
本実施形態の構成を利用することにより、代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２がＢｌｕｅｔｏｏｔｈ１０４ネットワークに接続したことを確認してから、サービスを開始できる。ＵＰｎＰサービス提供装置１０２は、途中でエラーが発生した場合、ＬＡＮ１００でサービスを再開することができる。ＵＰｎＰコントロールポイント装置は、ＵＰｎＰサービス提供装置１０２が一度ネットワークから離脱して、新たに参加したように見える。本実施形態によれば、ＵＰｎＰコントロールポイント装置に既存のＵＰｎＰコントロールポイントの機能だけで、ＵＰｎＰサービス提供装置１０２を隠蔽することができる。
【０１１０】
また、本実施形態の代理サービス装置１０１は、ＵＰｎＰサービス提供装置１０２がＢｌｕｅｔｏｏｔｈ１０４に存在するか否かを判定し（第２判定）、存在する場合に、Ｂｌｕｅｔｏｏｔｈ１０４経由で該ＵＰｎＰサービス提供装置１０２に接続する。このため、通信路を切り替えるべき状況を適切に判定して、代理サービスを提供することができる。
【０１１１】
また、本実施形態の代理サービス装置１０１は、ＬＡＮ１００を介したサービスの提供をＵＰｎＰサービス提供装置１０２が停止したことを確認した後に、サービスを中継する。このため、ＬＡＮ１００を介したサービスの提供とＢｌｕｅｔｏｏｔｈ１０４を介したサービスの中継とが重複することを防止することができる。
【０１１２】
また、本実施形態の代理サービス装置１０１は、Ｂｌｕｅｔｏｏｔｈ１０４でＵＰｎＰサービス提供装置１０２に接続するために必要なパラメータを、ＬＡＮ１００を介してＵＰｎＰサービス提供装置１０２に送信する。このため、ＵＰｎＰサービス提供装置１０２はＢｌｕｅｔｏｏｔｈ１０４に接続して代理サービスを利用するか否かを適切に決定することができる。
【０１１３】
＜＜実施形態２＞＞
次に本発明の第２の実施形態（実施形態２）について、実施形態１との相違点を中心に図面を参照して説明する。実施形態２における代理サービス装置１０１は、ＵＰｎＰサービスの代理を行う代理サービスを持っていることをＬＡＮ１００上にＵＰｎＰを利用して公開する。本実施形態において、代理サービスの公開、および、利用はＵＰｎＰを利用して行うが、ＵＰｎＰに限らず、ＷＳ−ＤｉｓｃｏｖｅｒｙとＳＯＡＰといった別のプロトコルを利用してもよい。
【０１１４】
実施形態２におけるＵＰｎＰサービス提供装置１０２は、ＵＰｎＰサービスの代理を行う代理サービスをＬＡＮ１００上でＵＰｎＰを利用して探索、利用する。代理サービス装置１０１において、代理制御部４０６は、代理サービスが可能だと判断すると、ＳＳＤＰ制御部４０３を利用して、ＬＡＮ１００上に代理サービスに関連するＳＳＤＰのａｌｉｖｅメッセージを送信する。更に、代理制御部４０６は、ＳＳＤＰ制御部４０３を利用して、ＬＡＮ１００に対し、代理サービスに関連するＳＳＤＰ処理を開始する。なお、代理サービスの可否は、例えばＢｌｕｅｔｏｏｔｈ１０４のようなＬＡＮ１００以外の通信経路を用いてＵＰｎＰサービス提供装置１０２と通信可能であるかに基づいて判断することができる。
【０１１５】
代理制御部４０６は、代理サービスが不可能だと判断すると、ＳＳＤＰ制御部４０３を利用して、ＬＡＮ１００上に代理サービスに関連するＳＳＤＰのｂｙｅｂｙｅメッセージを送信する。更に、代理制御部４０６は、ＳＳＤＰ制御部４０３を利用して、代理サービスに関連するＳＳＤＰ処理を終了する。これにより、ＵＰｎＰ提供装置１０２は、代理サービスを利用可能な期間のみ、代理サービスを発見することが可能になる。
【０１１６】
（代理サービス装置における代理サービス開始処理）
図１５は、実施形態２に係る代理サービス装置１０１における代理サービスの開始処理の流れを示すフローチャートである。図６との差異は、ステップＳ６０１、ステップＳ６０２、ステップＳ６０３が削除され、ステップＳ２００１、ステップＳ２００２が追加されている点である。
【０１１７】
ステップＳ２００１において、代理制御部４０６は、ＳＯＡＰ制御部４０４を利用して、ＬＡＮ１００上のＵＰｎＰサービス提供装置１０２から、ＵＰｎＰサービスの代理依頼を受け付ける。この代理依頼には、ＵＰｎＰサービス提供装置１０２のＵＵＩＤが含まれている。代理制御部４０６は、ＵＵＩＤ記憶部４０９にＵＰｎＰサービス提供装置１０２のＵＵＩＤを保存し、ステップＳ２００２に進む。代理サービス装置１０１が既に別のＵＰｎＰサービス提供装置の代理サービスを行っている場合、代理サービスを拒否してもよい。
【０１１８】
ステップＳ２００２において、代理制御部４０６は、ＳＯＡＰ制御部４０４を利用して、ＬＡＮ１００上のＵＰｎＰサービス提供装置１０２から、Ｂｌｕｅｔｏｏｔｈ１０４のパラメータの要求を受け付ける。代理制御部４０６は、Ｂｌｕｅｔｏｏｔｈ制御部４０２からＢｌｕｅｔｏｏｔｈ１０４のパラメータを取得する。代理制御部４０４は、ＳＯＡＰ制御部４０４を利用して、Ｂｌｕｅｔｏｏｔｈ１０４のパラメータをＵＰｎＰサービス提供装置１０２に返信し、ステップＳ６０４に進む。ステップＳ６０４以後の動作は、図６を参照して説明した実施形態１と同様であるため、説明を省略する。
【０１１９】
（サービス提供装置における代理サービス開始処理）
図１６は、実施形態２に係るサービス提供装置１０２における代理サービスの開始処理の流れを示すフローチャートである。図８との差異は、ステップＳ１１０１、ステップＳ１１０２が削除され、ステップＳ２１０１、ステップＳ２１０２、ステップＳ２１０３、ステップＳ２１０４が追加されている点である。
【０１２０】
ステップＳ２１０１において、サービス制御部５０６は、代理サービスを利用するか否かの判断を行う。サービス制御部５０６が、代理サービスを利用すると判断すると（ステップＳ２１０１でＹＥＳ）、ステップＳ２１０２に進む。サービス制御部５０６が、代理サービスを利用しないと判断すると（ステップＳ２１０１でＮＯ）、処理を終了する。
【０１２１】
ステップＳ２１０２において、サービス制御部５０６は、ＳＳＤＰ処理部５０３を利用して、ＬＡＮ１００上の代理サービスを探索する。ＳＳＤＰ処理部５０３は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００上に、代理サービスを探索するためにｍ−ｓｅａｒｃｈメッセージを送信する。ＳＳＤＰ処理部５０３は、代理サービスからのｒｅｓｐｏｎｓｅがあるか、または、一定時間内にａｌｉｖｅを受信したかの結果をサービス制御部５０６に返信する。サービス制御部５０６が代理サービスを発見したと判断すると（ステップＳ２１０２でＹＥＳ）、ステップＳ２１０３に進む。サービス制御部５０６が代理サービスを発見しなかったと判断すると（ステップＳ２１０２でＮＯ）、処理を終了する。
【０１２２】
ステップＳ２１０３において、サービス制御部５０６は、ＳＯＡＰ処理部５０４を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００上の代理サービス装置１０１に代理の依頼を行い、ステップＳ２１０４に進む。代理依頼には、ＵＰｎＰサービス提供装置１０２のＵＵＩＤが含まれる。
【０１２３】
ステップＳ２１０４において、サービス制御部５０６は、ＳＯＡＰ処理部５０４を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１を通じて、ＬＡＮ１００上の代理サービス装置１０１にＬＡＮ１００以外の通信パラメータを要求する。代理サービス装置１０１から通信パラメータを取得すると、サービス制御部５０６はこの通信パラメータからＢｌｕｅｔｏｏｔｈ１０４のパラメータを取得し、ステップＳ１１０３に進む。ステップＳ１１０３以降の動作は、図８を参照して説明した実施形態１と同様であるため、説明を省略する。
【０１２４】
（代理サービス装置とＵＰｎＰサービス提供装置における代理サービス開始処理）
図１７は、実施形態２に係る代理サービス装置１０１とＵＰｎＰサービス提供装置１０２における代理サービス開始処理のシーケンスを示すシーケンスチャートである。図１２との差異は、Ｆ１７０１、Ｆ１７０２、Ｆ１７０３が削除され、Ｆ２２０１、Ｆ２２０２、Ｆ２２０３が追加されている点である。
【０１２５】
Ｆ２２０１において、ＵＰｎＰサービス提供装置１０２が代理サービス装置１０１を発見する。Ｆ２２０２において、ＵＰｎＰサービス提供装置１０２が代理サービス装置１０１にＵＰｎＰサービスの代理を依頼する。Ｆ２２０３において、ＵＰｎＰサービス提供装置１０２がＵＰｎＰサービス提供装置１０２に通信パラメータを要求する。Ｆ１７０４以降の動作は、実施形態１と同様であるため説明を省略する。
【０１２６】
上記のように、本実施形態の代理サービス装置１０１は、当該代理サービス装置１０１がサービスを中継する中継機能を有することをＬＡＮ１００に対して公開する。また、ＵＰｎＰサービス提供装置１０２は、中継機能が公開された場合、ＵＰｎＰコントロールポイント装置１０３に対する直接のサービス提供をＢｌｕｅｔｏｏｔｈ１０４を介した代理サービス装置１０１に対するサービス提供に切り替える切替処理を行う。
【０１２７】
このため、ＵＰｎＰサービス提供装置１０２は、複数の代理サービス装置を発見し、その中から最も適した代理サービス装置を利用することができる。例えば、Ｂｌｕｅｔｏｏｔｈをサポートする通信手段の代理サービスでない場合、別の代理サービスを利用するといったことが可能になる。
【０１２８】
また、本実施形態の代理サービス装置１０１は、中継機能を公開したことに応じてＵＰｎＰサービス提供装置１０２から中継の要求がなされた場合に、サービスを中継する。このため、サービスの中継（代理）を適切なタイミングで開始することができる。
【０１２９】
＜＜実施形態３＞＞
以下に本発明の第３の実施形態（実施形態３）について、実施形態１、および、実施形態２との相違点を中心に図面を参照して説明する。ＤＬＮＡ（Ｄｉｇｉｔａｌ  Ｌｉｖｉｎｇ  Ｎｅｔｗｏｒｋ  Ａｌｌｉａｎｃｅ）で規定されたＤＭＳ（Ｄｉｇｉｔａｌ  Ｍｅｄｉａ  Ｓｅｒｖｅｒ）は、ＵＰｎＰをベースに規定されている。本実施形態における代理サービス装置１０１は、ＤＭＳの代理を行う機能を持つ。本実施形態におけるＵＰｎＰサービス提供装置１０２は、ＤＭＳを行う機能を持つ。本実施形態におけるＵＰｎＰコントロールポイント装置１０３は、ＤＭＰ（Ｄｉｇｉｔａｌ  Ｍｅｄｉａ  Ｐｌａｙｅｒ）の機能を持つ。
【０１３０】
（代理サービス装置のモジュール構成）
図４（ｂ）は、本実施形態の代理サービス装置１０１のモジュール構成図である。２３０１は、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１からのコンテンツ要求に応じて、Ｂｌｕｅｔｏｏｔｈ制御部４０２から、コンテンツを受信する機能を持つコンテンツ処理部である。コンテンツ要求の際に、常にオンデマンドで取得しても良いし、コンテンツ処理部が持つキャッシュを利用してもよい。
【０１３１】
代理処理部４０７は、ＵＰｎＰサービス提供装置１０２から提供されたＤＩＤＬ−Ｌｉｔｅに含まれるＵＲＬを、代理サービス装置１０１を表すＵＲＬに、書き換える機能を持つ。代理処理部４０７は、要求があった場合、ＵＲＬを書き換えたＤＩＤＬ−Ｌｉｔｅを提供する。また、代理処理部４０７は、代理サービス装置１０１のコンテンツのＵＲＬを対応するＵＰｎＰサービス提供装置１０２のＵＲＬに書き換えて提供する。本実施形態では、ＤＩＤＬ−ＬｉｔｅのＵＲＬの書き換えを挙げたが、これに限らず、ＤＩＤＬ−Ｌｉｔｅ以外のメタデータのＵＲＬを書き換えても良い。
【０１３２】
（サービス提供装置のモジュール構成）
図５（ｂ）は、本実施形態のサービス提供装置１０２のモジュール構成図である。２４０１はコンテンツ提供処理部であり、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部５０１、および、Ｂｌｕｅｔｏｏｔｈ制御部５０２からのコンテンツの要求に応じて、コンテンツを提供する機能を持つ。
【０１３３】
実施形態３において、代理サービス装置１０１がＵＰｎＰサービス装置１０２の代理サービスを行っている場合の例を説明する。代理制御部４０６は、ＳＯＡＰ処理部４０４を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ４０１を通じて、ＬＡＮ１００上のＵＰｎＰコントロールポイント装置１０３から、コンテンツの一覧の要求（Ｂｒｏｗｓｅ）を受信する。これに応じて代理制御部４０６は、ＳＯＡＰ処理部４０４を利用し、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４上のＵＰｎＰサービス提供装置１０２に、コンテンツ一覧の要求（Ｂｒｏｗｓｅ）を行い、ＤＩＤＬ−Ｌｉｔｅを取得する。代理制御部４０６は、取得したＤＩＤＬ−Ｌｉｔｅを代理処理部４０７に送信し、ＤＩＤＬ−Ｌｉｔｅの書き換えを依頼する。代理制御部４０６は、ＳＯＡＰ処理部４０４を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ４０１を通じて、ＬＡＮ１００上のＵＰｎＰコントロールポイント装置１０３へ、コンテンツ一覧であるＤＩＤＬ−Ｌｉｔｅを返信する。
【０１３４】
代理制御装置４０６は、コンテンツ処理部２３０１を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じて、ＬＡＮ１００上のＵＰｎＰコントロールポイント装置１０３から、コンテンツの取得要求を受け付ける。本実施形態における、コンテンツ取得要求は、ＨＴＴＰ  ＧＥＴである。代理制御部４０６は、代理処理部４０７にコンテンツのＵＲＬの変換を依頼する。代理処理部４０７は、代理サービス装置１０１のコンテンツのＵＲＬをＵＰｎＰサービス提供装置１０２のコンテンツのＵＲＬに変換し、代理制御部４０６に返信する。代理制御部４０６は、コンテンツ処理部２３０１を利用して、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４上のＵＰｎＰサービス提供装置１０２にコンテンツの取得要求を送信する。代理制御装置４０６はＵＰｎＰサービス提供装置１０２からコンテンツを取得すると、コンテンツ処理部２３０１を利用して、Ｗｉｒｅｌｅｓｓ  ＬＡＮ制御部４０１を通じてＬＡＮ１００上のＵＰｎＰコントロールポイント装置１０３にコンテンツを返信する。
【０１３５】
ＵＰｎＰサービス提供装置１０２は、代理サービス装置１０１からコンテンツの取得要求を受信する。サービス制御部５０６は、コンテンツ提供部２４０１を利用して、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４上の代理サービス装置１０２からのコンテンツの取得要求を受け付ける。サービス制御部５０６は、コンテンツ提供部２４０１を利用して、Ｂｌｕｅｔｏｏｔｈ制御部４０２を通じて、Ｂｌｕｅｔｏｏｔｈ１０４上の代理サービス装置１０１にコンテンツを返信する。
【０１３６】
（コンテンツ提供処理）
図１８は、実施形態３に係る代理サービス装置１０１とＵＰｎＰサービス提供装置１０２におけるコンテンツ提供処理のシーケンスを示すシーケンスチャートである。Ｆ２５０１において、ＵＰｎＰコントロールポイント装置１０３は、ＬＡＮ１００を通じて、代理サービス装置１０１に、コンテンツ取得を要求する。Ｆ２５０２において、代理サービス装置１０１は、ＬＡＮ１００を通じて受信したコンテンツ取得に応じて、ＵＲＬの書き換えなどの代理処理を実行する。Ｆ２５０３において、代理サービス装置１０１は、Ｂｌｕｅｔｏｏｔｈ１０４を通じて、ＵＰｎＰサービス装置１０２にコンテンツ取得を送信する。
【０１３７】
Ｆ２５０４において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４を通じて、代理サービス装置１０１から、コンテンツ取得の要求を受信する。ＵＰｎＰサービス提供装置１０２は、コンテンツ取得の要求に対応するコンテンツを提供する。Ｆ２５０５において、ＵＰｎＰサービス提供装置１０２は、Ｂｌｕｅｔｏｏｔｈ１０４を通じて、代理サービス装置１０１に、コンテンツを送信する。Ｆ２５０６において、代理サービス装置１０１は、Ｂｌｕｅｔｏｏｔｈ１０４を通じて受信したコンテンツに応じて、ＵＲＬの書き換えなどの代理処理を実行する。Ｆ２５０７において、代理サービス装置１０１は、ＬＡＮ１００を通じて、ＵＰｎＰコントロールポイント装置１０３に、コンテンツを送信する。
【０１３８】
なお、本実施形態における転送プロトコルは、ＨＴＴＰによらず、例えばＲＴＰ等でもよい。その場合、代理サービス装置１０１におけるコンテンツ処理部２３０１がＲＴＰプロキシの機能、および、ＵＰｎＰサービス提供装置１０２におけるコンテンツ提供部２４０１がＲＴＰ配信機能を持つことで実現できる。
【０１３９】
上記のように、本実施形態では、ＵＰｎＰ代理サービス装置１０１が中継（代理）するサービスが、ＵＰｎＰサービスではなくコンテンツ配信サービスである場合の例を説明した。代理サービス装置１０１は、ＵＰｎＰコントロールポイント装置１０３からＬＡＮ１００を介してコンテンツ配信要求を受信した場合、コンテンツ配信先が代理サービス装置１０１となるようにこのコンテンツ配信要求を書き換える書換処理を行う。そして、書き換えたコンテンツ配信要求をＢｌｕｅｔｏｏｔｈ１０４を介してＵＰｎＰサービス提供装置１０２へ出力する。書き換えたコンテンツ配信要求を出力したことに応じてＵＰｎＰサービス提供装置１０２から配信されたコンテンツを受信すると、受信したコンテンツをＵＰｎＰコントロールポイント装置１０３へ配信する。
【０１４０】
このため、コンテンツ配信のようなサービスであっても、ＵＰｎＰサービス提供装置１０２とＵＰｎＰコントロールポイント装置１０３との間で提供されるサービスを適切に中継することができる。以上のように、本実施形態の構成は、サービスの提供、および、サービスで提供されているコンテンツの提供を行う事ができる。なお、本実施形態ではコンテンツの要求を転送する例を説明したが、転送に限らない。例えば、予めコンテンツのコピーを取得し、提供することで実施できることは言うまでもない。
【０１４１】
上記構成によれば、代理サービス装置がサービス提供装置のネットワーク接続を変更させることによって、サービス提供装置を隠蔽することができる。更に、サービス提供装置は、代理サービス装置からのみのメッセージを受け付けるので安全になる。ＵＰｎＰを利用すると、どのネットワークにおいても一様にサービスを公開するので、特に自宅外のネットワーク（例えば、友人宅のネットワーク）に接続した際に効果がある。
【図１】
0005448489.tif 000002
【図２】
0005448489.tif 000003
【図３】
0005448489.tif 000004
【図４】
0005448489.tif 000005
【図５】
0005448489.tif 000006
【図６】
0005448489.tif 000007
【図７】
0005448489.tif 000008
【図８】
0005448489.tif 000009
【図９】
0005448489.tif 000010
【図１０】
0005448489.tif 000011
【図１１】
0005448489.tif 000012
【図１２】
0005448489.tif 000013
【図１３】
0005448489.tif 000014
【図１４】
0005448489.tif 000015
【図１５】
0005448489.tif 000016
【図１６】
0005448489.tif 000017
【図１７】
0005448489.tif 000018
【図１８】
0005448489.tif 000019