(57)【特許請求の範囲】
【請求項１】
少なくとも一つの外部装置とネットワークを介して接続される情報処理装置であって、
他のネットワークに接続される他の情報処理装置を接続する接続手段と、
アクセスの制限対象となる機能を列挙したリストに列挙される前記機能が前記ネットワーク内において提供されるかを探索するためのメッセージを前記ネットワークに送信する送信手段と、
前記外部装置が前記メッセージに応答した場合、前記機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手段と、
前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限手段とを有することを特徴とする情報処理装置。
【請求項２】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置であって、
他のネットワークに接続される他の情報処理装置を接続する接続手段と、
前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手段と、
前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限手段とを有し、
前記取得手段は、前記ネットワーク上に前記機能を備える前記外部装置が存在することを通知するための生存情報を前記外部装置から受信し、前記生存情報に含まれる前記アクセス先情報のアドレスを示すアドレス情報に基づいて、前記アクセス先情報を取得することを特徴とする情報処理装置。
【請求項３】
前記取得手段は、アクセスの制限対象となる機能を列挙したリストに、前記生存情報により存在が通知された前記外部装置に備えられる前記機能が含まれている場合、前記アドレス情報に基づいて前記アクセス先情報を前記外部装置から取得することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置であって、
他のネットワークに接続される他の情報処理装置を接続する接続手段と、
前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手段と、
前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限手段とを有し、
前記取得手段は、前記他の情報処理装置からの接続要求を受け付けた場合、前記アクセス先情報を取得することを特徴とする情報処理装置。
【請求項５】
前記制限手段は、前記他のネットワークに接続される他の外部装置から前記アクセス先に対するアクセスを制限することを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
少なくとも一つの外部装置とネットワークを介して接続される情報処理装置による情報処理方法であって、
接続手段が、他のネットワークに接続される他の情報処理装置を接続する接続ステップと、
送信手段が、アクセスの制限対象となる機能を列挙したリストに列挙される前記機能が前記ネットワーク内において提供されるかを探索するためのメッセージを前記ネットワークに送信する送信ステップと、
取得手段が、前記メッセージに応答した場合、前記機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得ステップと、
制御手段が、前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限ステップとを含むことを特徴とする情報処理方法。
【請求項７】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置による情報処理方法であって、
接続手段が、他のネットワークに接続される他の情報処理装置を接続する接続ステップと、
取得手段が、前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得ステップと、
制限手段が、前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限ステップとを含み、
前記取得ステップでは、前記ネットワーク上に前記機能を備える前記外部装置が存在することを通知するための生存情報を前記外部装置から受信し、前記生存情報に含まれる前記アクセス先情報のアドレスを示すアドレス情報に基づいて、前記アクセス先情報を取得することを特徴とする情報処理方法。
【請求項８】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置による情報処理方法であって、
接続手段が、他のネットワークに接続される他の情報処理装置を接続する接続ステップと、
取得手段が、前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得ステップと、
制限手段が、前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限ステップとを含み、
前記取得ステップでは、前記他の情報処理装置からの接続要求を受け付けた場合、前記アクセス先情報を取得することを特徴とする情報処理方法。
【請求項９】
少なくとも一つの外部装置とネットワークを介して接続される情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、
他のネットワークに接続される他の情報処理装置を接続手段により接続する接続手順と、
アクセスの制限対象となる機能を列挙したリストに列挙される前記機能が前記ネットワーク内において提供されるかを探索するためのメッセージを前記ネットワークに送信する送信手順と、
前記メッセージに応答した場合、前記機能のアクセス先を示すアクセス先情報を取得手段により取得する取得手順と、
前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限手段により制限する制限手順とをコンピュータに実行させるためのプログラム。
【請求項１０】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、
他のネットワークに接続される他の情報処理装置を接続する接続手順と、
前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手順と、
前記アクセス先情報が示すアクセス先に対する前記接続手順を介したアクセスを制限する制限手順とを含み、
前記取得手順では、前記ネットワーク上に前記機能を備える前記外部装置が存在することを通知するための生存情報を前記外部装置から受信し、前記生存情報に含まれる前記アクセス先情報のアドレスを示すアドレス情報に基づいて、前記アクセス先情報を取得することを特徴とするプログラム。
【請求項１１】
少なくとも一つの外部装置とネットワークを介いて接続される情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、
他のネットワークに接続される他の情報処理装置を接続する接続手順と、
前記外部装置に備えられる機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手順と、
前記アクセス先情報が示すアクセス先に対する前記接続手順を介したアクセスを制限する制限手順とを含み、
前記取得手順では、前記他の情報処理装置からの接続要求を受け付けた場合、前記アクセス先情報を取得することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置内の機能毎に他の装置からのアクセスを制限することを可能とするための技術に関するものである。
【背景技術】
【０００２】
ＵＰｎＰ（Universal Plug and Play）といったネットワークに接続するだけで、複雑な操作や設定作業なしにサービスを利用可能にする技術が知られている。ＵＰｎＰを利用した場合、ネットワークに接続するだけで、他の機器から操作されてしまうため、アクセスを制限する方法が必要であった。
【０００３】
従来、ネットワークを介してアクセスを制限する方法として、ＭＡＣアドレス（Media Access Control Address）を用いたフィルタリングが一般的に挙げられる。また、ＩＰアドレス（Internet Protocol Address）とポート番号を用いたフィルタリングも挙げられる。
【０００４】
ＵＰｎＰとフィルタリングとを組み合わせた技術として、ＵＰｎＰプロトコルに従ったシーケンスを実行する機器を登録し、それ以外の機器のアクセスを制限する技術が知られている（例えば、特許文献１参照）。
【０００５】
また、ユーザやサーバからポリシーを取得し、ポリシーに合わない機器のアクセスを制限する技術も知られている（例えば、特許文献２参照）。
【０００６】
【特許文献１】特許第３８２９７９４号公報
【特許文献２】特開２００６−１７４３５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来、機器のＭＡＣアドレスを利用したフィルタリングを用いて、ＵＰｎＰにおけるアクセス制限を行っていた。しかしながら、同一の機器内に、メディアサーバ（Media Server）とメディアレンダラ（Media Renderer）といった２種類以上のＵＰｎＰデバイス（機能）が存在する場合に特に問題が発生する。即ち、メディアレンダラへのアクセスを許可したいが、メディアサーバへのアクセスを制限したい場合、メディアレンダラへのアクセスをも制限してしまうという問題があった。
【０００８】
そこで、本発明は、機能ごとにアクセス制限をかけることを可能とすることにある。
【課題を解決するための手段】
【０００９】
本発明の情報処理装置は、少なくとも一つの外部装置とネットワークを介して接続される情報処理装置であって、他のネットワークに接続される他の情報処理装置を接続する接続手段と、アクセスの制限対象となる機能を列挙したリストに列挙される前記機能が前記ネットワーク内において提供されるかを探索するためのメッセージを前記ネットワークに送信する送信手段と、前記外部装置が前記メッセージに応答した場合、前記機能のアクセス先を示すアクセス先情報を前記外部装置から取得する取得手段と、前記アクセス先情報が示すアクセス先に対する前記接続手段を介したアクセスを制限する制限手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、機能がネットワーク上に存在しているときのみアクセス制限を実行することになり、無駄なアクセス制限を実行することがなくなり、計算量を低減させることが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【００１２】
図１は、本発明の実施形態に係るネットワークシステムの構成を示す図である。図１において、１００は、インターネットである。ここでは、インターネット１００を例に挙げたが、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）及びそれらを複合した回線で代替してもよい。
【００１３】
１０１ａ及び１０１ｂは、家庭内のＬＡＮである。ここではＬＡＮを例に挙げたが、ＬＡＮであるイーサネット（登録商標）とＢｌｕｅｔｏｏｔｈとを複合した回線で代替してもよい。なお、ＬＡＮ１０１ａは、本発明のネットワークの適用例となる構成である。また、ＬＡＮ１０１ｂは、本発明の他のネットワークの適用例となる構成である。
【００１４】
１０２ａ及び１０２ｂは、ルータ装置である。ルータ装置１０２ａは、インターネット１００とＬＡＮ１０１ａとを接続し、パケットの転送及び経路制御を行う。ルータ装置１０２ｂは、インターネット１００とＬＡＮ１０１ｂとを接続し、パケットの転送及び経路制御を行う。
【００１５】
１０３ａ及び１０３ｂは、論理ネットワーク制御装置である。論理ネットワーク制御装置１０３ａは、ＬＡＮ１０１ａに接続し、レイヤ２（データリンクレイヤ）でのＶＰＮ接続を行う。論理ネットワーク制御装置１０３ｂは、ＬＡＮ１０１ｂに接続し、レイヤ２（データリンクレイヤ）でのＶＰＮ接続を行う。なお、論理ネットワーク制御装置１０３ａは、本発明の情報処理装置の適用例となる構成である。
【００１６】
１０４は、メディアサーバとメディアレンダラとの２つのＵＰｎＰデバイスを持つサービス提供装置である。サービス提供装置１０４は、ＬＡＮ１０１ａに接続し、ＬＡＮ１０１ａ上にメディアサーバとメディアレンダラとの２つのサービス（機能）を公開している。なお、サービス提供装置１０４は、本発明の外部装置の適用例となる構成である。
【００１７】
１０５は、メディアサーバとメディアレンダラとの２つのＵＰｎＰコントロールポイントを持つサービス実行装置である。サービス実行装置１０５は、ＬＡＮ１０１ｂに接続し、ＬＡＮ１０１ｂ上に接続されたメディアサーバとメディアレンダラを探索し、操作することができる。なお、サービス実行装置１０５は、本発明の他の外部装置の適用例となる構成である。
【００１８】
図２は、論理ネットワーク制御装置１０３ａ、１０３ｂの構成を示す図である。論理ネットワーク制御装置１０３ａ、１０３ｂは、ワークステーション、ノートブックＰＣ、パームトップＰＣ等のコンピュータで構成される。また、論理ネットワーク制御装置１０３ａ、１０３ｂは、コンピュータを内蔵したテレビ等の各種家電製品、通信機能を有するゲーム機、携帯電話、ＰＨＳ等を含む他のネットワーク制御装置と通信するための通信機能を有する端末によっても構成可能である。或いは、論理ネットワーク制御装置１０３ａ、１０３ｂは、これらの組合せによっても構成可能である。
【００１９】
２０１は、コンピュータシステムの制御を司る中央演算装置（以下、ＣＰＵと称す）である。
【００２０】
２０２は、ランダムアクセスメモリ（以下、ＲＡＭと称す）であり、ＣＰＵ２０１の主メモリとして、実行プログラムの格納領域、実行プログラムが処理を実行するエリア、及び、処理に必要なデータを格納するエリアとして機能する。
【００２１】
２０３は、ＣＰＵ２０１の動作処理手順を記録しているリードオンリーメモリ（以下、ＲＯＭと称す）である。ＲＯＭ２０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ）を記録したプログラムＲＯＭとシステムを稼動するために必要な情報等が記録されたデータＲＯＭとがある。ＲＯＭ２０３の代わりに後述のＨＤＤ２０９を用いる場合もある。
【００２２】
２０４は、ネットワークインタフェース（以下、ＮＥＴＩＦと称す）であり、ネットワークを介してコンピュータシステム間のデータ転送を行うための制御や接続状況の診断を行う。
【００２３】
２０５は、ビデオＲＡＭ（以下、ＶＲＡＭと称す）であり、コンピュータシステムの稼動状態を示す後述する表示装置２０６の画面に表示される画像を展開し、その表示の制御を行う。２０６は、表示装置であって、例えばＣＲＴ等のディスプレイで構成される。
【００２４】
２０７は、後述する外部入力装置２０８からの入力信号を制御する外部入力装置コントローラである。２０８は、コンピュータシステムの利用者がコンピュータシステムに対して行う操作を受け付けるための外部入力装置であり、例えば、キーボード等で構成される。
【００２５】
２０９は、記憶装置であり、例えば、ハードディスク等で構成される。記憶装置２０９は、アプリケーションプログラムや画像情報等のデータを保存するために用いられる。本実施形態におけるアプリケーションプログラムとは、図４、図９及び図１２に示す処理等を実行するためのプログラムである。
【００２６】
２１０は、外部入出力装置であって、例えばフレキシブルディスクドライブ（ＦＤＤ）、ＣＤ−ＲＯＭドライブ等の着脱可能なリムーバブルメディアからのデータやプログラムの入出力を制御する。
【００２７】
なお、記憶装置２０９に格納されるアプリケーションプログラムやデータを上記リムーバブルメディアに格納し、外部入出力装置２１０から入力して使用することも可能である。
【００２８】
２００は、上述した各ユニット間の接続するための入出力バス（アドレスバス、データバス及び制御バス）である。
【００２９】
図３は、本実施形態の論理ネットワーク制御装置１０３ａのモジュール構成を示す図である。
【００３０】
３００は、ＬＡＮ１０１ａに接続され、ＴＣＰ／ＩＰの通信処理を行うＴＣＰ／ＩＰ制御部である。
【００３１】
３０１は、ＴＣＰ／ＩＰ制御部３００に対して通信データの送受信処理を行い、論理ネットワークの接続処理及び切断処理等の制御を行う論理ネットワーク制御部である。論理ネットワーク制御部３０１は、後述するフィルタ制御部３０２にフィルタの追加・削除等の処理を依頼する。
【００３２】
３０２は、フィルタの制御を行うフィルタ制御部である。フィルタ制御部３０２は、ＴＣＰ／ＩＰ制御部３００を通じて、ｓｓｄｐを利用した通信を行う。また、フィルタ制御部３０２は、論理ネットワーク制御部３０１からフィルタの追加処理を依頼されると、フィルタ制御部３０２が保持する制限リストに含まれるフィルタＩＤに応じて、後述するフィルタ情報作成部３０３にフィルタ情報の作成を依頼する。アクセスの制限対象となるＵＰｎＰデバイスを列挙した制限リストには、フィルタＩＤとしてＵＰｎＰデバイスのＵＵＩＤ、デバイスタイプ、ＵＰｎＰデバイス名等が記述されている。また、フィルタ制御部３０２は、フィルタ情報作成部３０３で作成されたフィルタ情報をフィルタ実行部３０４に送信し、フィルタの実行を依頼する。
【００３３】
３０３は、物理ネットワークから論理ネットワークにパケットを転送する際のフィルタ情報の作成を行うフィルタ情報作成部である。フィルタ情報作成部３０３は、フィルタ制御部３０２からフィルタ情報の作成の依頼を受け付け、制限リストに応じてフィルタ情報を作成した後、フィルタ制御部３０２に作成したフィルタ情報を送る。
【００３４】
３０４は、フィルタ制御部３０２から渡される、フィルタ情報作成部３０３で作成されたフィルタ情報に応じて、フィルタの実行を行うフィルタ実行部である。フィルタ実行部３０４は、物理ネットワークから論理ネットワークにパケットを転送する際に、フィルタ情報に応じてパケットの転送を制限する。
【００３５】
論理ネットワーク制御装置１０３ａは、論理ネットワーク制御装置１０３ｂから、論理ネットワーク接続要求を受け付ける。論理ネットワーク制御装置１０３ａは、論理ネットワーク接続要求を受け付けると論理ネットワーク制御装置１０３ｂとの間に論理ネットワークを構成する。本実施形態における論理ネットワークは、レイヤ２のトンネリングであり、ＬＡＮ１０１ａ及びＬＡＮ１０１ｂが同一のリンクとなる。これにより、ＬＡＮ１０１ｂ上にある論理ネットワーク制御装置１０３ｂは、ＬＡＮ１０１ａ上にあるＵＰｎＰデバイスを発見し、操作することができる。
【００３６】
図４は、論理ネットワーク制御装置１０３ａが論理ネットワーク接続要求を受け付けた際の処理を示すフローチャートである。
【００３７】
論理ネットワーク制御部３０１は、ＴＣＰ／ＩＰ制御部３００を通じて論理ネットワーク制御装置１０３ｂから論理ネットワーク接続要求を受け付けると、フィルタ制御部３０２にフィルタの追加処理を依頼する。これにより、図４のフローチャートに示す処理が開始される。
【００３８】
ステップＳ４０１において、フィルタ制御部３０２は、制限リストを備えているか否かを判定する。制限リストを備えている場合、フィルタ制御部３０２は、フィルタ情報作成部３０３にフィルタ情報の作成を依頼し、処理はステップＳ４０２に進む。フィルタ制御部３０２が制限リストを備えていない場合、処理は終了する。
【００３９】
ステップＳ４０２において、フィルタ制御部３０２は、ＴＣＰ／ＩＰ制御部３００を通じて、制限リストに含まれるＵＰｎＰデバイス名を利用したｍ−ｓｅａｒｃｈをＬＡＮ１０１ａに送信し、処理はステップＳ４０３に進む。
【００４０】
図５は、フィルタ制御部３０２から送信されるｍ−ｓｅａｒｃｈの構成を示す図である。図５に示すように、ｍ−ｓｅａｒｃｈにはＵＰｎＰデバイス名としてメディアサーバ（Media Server）５０１が含まれているものとする。
【００４１】
サービス提供装置１０４上の対応するメディアサーバは、ｍ−ｓｅａｒｃｈを受信すると、論理ネットワーク制御装置１０３ａにｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを送信する。
【００４２】
ステップＳ４０３において、フィルタ制御部３０２は、ｍ−ｓｅａｒｃｈを送信した後、所定の時間（ｍ−ｓｅａｒｃｈに付与したＭＸ値に示す時間）待機し、処理はステップＳ４０４に進む。
【００４３】
ステップＳ４０４において、フィルタ制御部３０２は、対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを受信したか否かを判断する。
【００４４】
フィルタ制御部３０２が対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを受信した場合、処理はステップＳ４０５に進む。一方、フィルタ制御部３０２が対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを受信しなかった場合、処理は終了する。図６は、フィルタ制御部３０２が受信する、対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅの一例を示す図である。図６に示すように、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅには、ＵＰｎＰデバイス名としてメディアサーバ（Media Server）６０２が記述されている。なお、フィルタ制御部３０２が対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを受信する処理は、本発明の第２の取得手段の一処理例である。また、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅは、本発明の応答情報の適用例となる情報である。
【００４５】
ステップＳ４０５において、フィルタ制御部３０２は、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅに記述されているＵＰｎＰデバイス（Media Server）がフィルタ情報のエントリに登録済みであるか否かを判断する。
【００４６】
ＵＰｎＰデバイス（Media Server）がエントリに登録済みであると判断した場合、処理はステップＳ４０９に進む。一方、ＵＰｎＰデバイス（Media Server）がエントリに登録済みでないと判断した場合、フィルタ制御部３０２はｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅの情報をフィルタ情報作成部３０３に送信し、処理はステップＳ４０６に進む。
【００４７】
ステップＳ４０６において、フィルタ情報作成部３０３は、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅの情報からＬＯＣＡＴＩＯＮ値６０３を取得する。このＬＯＣＡＴＩＯＮ値は、ＵＰｎＰのｒｏｏｔデバイスのデバイスディスクリプション（機器情報）へのＵＲＬを示す。フィルタ情報作成部３０３は、ＴＣＰ／ＩＰ制御部３００を通じて当該ＵＲＬのデバイスディスクリプションを取得し、ステップＳ４０７に進む。ステップＳ４０６は、本発明の第１の取得手段の一処理例である。なお、ＬＯＣＡＴＩＯＮ値６０３は、本発明のアドレス情報の適用例となる情報である。
【００４８】
図７は、フィルタ情報作成部３０３が取得するデバイスディスクリプションの一例を示す図である。ステップＳ４０７において、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるiconのタグの子要素であるurlのタグ７０１から、アイコンのＵＲＬを取得する。また、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるSCPDURLのタグ７０２から、サービスディスクリプションのＵＲＬを取得する。また、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるcontrolURLのタグ７０３から、コントロールのためのＵＲＬを取得する。また、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるeventSubURLのタグ７０４から、イベンティングのためのＵＲＬを取得する。本実施形態では、ContentDirectoryとConnectionManagerとAVTransportとの３つのサービスがある。デバイスディスクリプションのＵＲＬ、アイコンのＵＲＬ、サービス毎のサービスディスクリプションのＵＲＬ、サービス毎のコントロールのＵＲＬ、サービス毎のイベンティングのＵＲＬからフィルタ情報を作成する。また、フィルタ情報作成の際には、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅに含まれるＣＡＣＨＥ−ＣＯＮＴＲＯＬ６０１も用いられる。フィルタ情報作成部３０３は、作成したフィルタ情報をフィルタ制御部３０２に送信し、処理はステップＳ４０８に進む。上述したように、図７に示すデバイスディスクリプションは、サービス提供装置１０４が備えるＵＰｎＰデバイス（機能）のアクセス先を示す情報を含む。なお、図７に示すデバイスディスクリプションは、本発明のアクセス先情報の適用例を示す情報である。また、ステップＳ４０７は、本発明の生成手段の一処理例である。
【００４９】
図８は、フィルタ情報作成部３０３が作成したフィルタ情報の一例を示す図である。図８において、８０１のレコードは、デバイスディスクリプションのＵＲＬ及びＣＡＣＨＥ−ＣＯＮＴＲＯＬ等を使用して生成される。８０２のレコードは、アイコンのＵＲＬとＣＡＣＨＥ−ＣＯＮＴＲＯＬ等を使用して生成される。８０３、８０６、８０９のレコードは、該当するサービスのサービスディスクリプションのＵＲＬとＣＡＣＨＥ−ＣＯＮＴＲＯＬ等を使用して生成される。８０４、８０７、８１０のレコードは、該当するサービスのコントロールのＵＲＬとＣＡＣＨＥ−ＣＯＮＴＲＯＬ等を使用して生成される。８０５、８０８、８１１のレコードは、該当するサービスのイベンティングのＵＲＬとＣＡＣＨＥ−ＣＯＮＴＲＯＬ等を使用して生成される。なお、図８に示すフィルタ情報は、サービス提供装置１０４が備えるＵＰｎＰデバイス（機能）へのアクセスを制限するための情報であり、本発明のフィルタ情報の適用例となる情報である。
【００５０】
ステップＳ４０８において、フィルタ制御部３０２は、フィルタ情報作成部３０３が生成したフィルタ情報のエントリを追加し、処理はステップＳ４１０に進む。
【００５１】
ステップＳ４０９において、フィルタ制御部３０２は、ｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅのＣＡＣＨＥ−ＣＯＮＴＲＯＬ６０１を利用して、該当するエントリのｌｉｆｅｔｉｍｅを更新する。フィルタ制御部３０２は、ＩＰアドレスやポート番号が変更されていた場合、エントリの該当個所を変更し、処理はステップＳ４１０に進む。
【００５２】
ステップＳ４１０において、フィルタ制御部３０２は、フィルタ情報のエントリをフィルタ実行部３０４に送信し、フィルタ開始を依頼し、処理を終了する。フィルタ実行部３０４は、フィルタ制御部３０２から受信したフィルタ情報のＵＲＬ行きのパケットを物理ネットワークに転送しないように制限する。ステップＳ４１０は、本発明のフィルタ手段の一処理例である。
【００５３】
本実施形態において、ＵＲＬに対するアクセスは、ＨＴＴＰを利用して行われる。例えば、ＨＴＴＰプロトコルにおけるＧＥＴメッセージを制限する場合について説明する。フィルタ実行部３０４は、ＩＰアドレスが１９２．１６８．０．２、ポート番号１８０８０のＨＴＴＰ通信を解析する。そして、フィルタ実行部３０４は、GET /desc/device/description.xml HTTP/1.1等のメッセージが存在した場合、図８に示すフィルタ情報とマッチングを取り、パケットを転送しないように制御する。
【００５４】
ここでは、論理ネットワーク制御装置１０３ａが論理ネットワーク接続要求を受信した際の処理を説明したが、論理ネットワーク制御装置１０３ａは論理ネットワーク接続を行う前に図４の処理を行えばよい。つまり、論理ネットワーク制御装置１０３ｂのように、論理ネットワーク接続要求を送信する際に処理してもよく、論理ネットワークの接続方法における制限はない。
【００５５】
本実施形態では、ｍ−ｓｅａｒｃｈの検索方法をＵＰｎＰデバイス名で行ったが、ＵＵＩＤ等で行っても実施することができ、ｍ−ｓｅａｒｃｈにおける検索方法の制限はない。
【００５６】
図９は、論理ネットワーク制御装置１０３ａがｓｓｄｐメッセージ（機能が存在することを通知するための広告情報）を受信した際の処理を示すフローチャートである。
【００５７】
ステップＳ９０１において、フィルタ制御部３０２は、ＴＣＰ／ＩＰ制御部３００を通じて、ＬＡＮ１０１ａ上に接続されたサービス提供装置１０４が送信したｓｓｄｐメッセージを受信し、処理はステップＳ９０２に進む。なお、ステップＳ９０１において後述するｓｓｄｐメッセージのａｌｉｖｅを受信する処理は、本発明の受信手段の一処理例である。また、ｓｓｄｐメッセージのａｌｉｖｅは、本発明の生存情報の適用例となる情報である。
【００５８】
ステップＳ９０２において、フィルタ制御部３０２は、受信したｓｓｄｐメッセージの種類の判断を行う。フィルタ制御部３０２が、受信したｓｓｄｐメッセージの種類をａｌｉｖｅであると判断すると、処理はステップＳ９０３に進む。図１０は、ｓｓｄｐメッセージのａｌｉｖｅの一例を示す図である。一方、フィルタ制御部３０２が、受信したｓｓｄｐメッセージの種類をｂｙｅｂｙｅであると判断すると、処理はステップＳ９０９に進む。図１１は、ｓｓｄｐメッセージのｂｙｅｂｙｅの一例を示す図である。
【００５９】
なお、ｓｓｄｐメッセージのａｌｉｖｅとは、ＵＰｎＰデバイスがネットワークに存在することを、ＵＰｎＰデバイス側から伝達するためのメッセージである。ｓｓｄｐメッセージのｂｙｅｂｙｅとは、ＵＰｎＰデバイスがネットワークから存在しなくなることを、ＵＰｎＰデバイス側から伝達するためのメッセージである。
【００６０】
ステップＳ９０３において、フィルタ制御部３０２は、受信したｓｓｄｐメッセージのａｌｉｖｅが制限リストにあるＵＰｎＰデバイスから送信されたａｌｉｖｅであるか否かの判断を行う。受信したｓｓｄｐメッセージのａｌｉｖｅが制限リストにあるＵＰｎＰデバイスから送信されたａｌｉｖｅであると判断されると、処理はステップＳ９０４に進む。一方、受信したｓｓｄｐメッセージのａｌｉｖｅが制限リストにあるＵＰｎＰデバイスから送信されたａｌｉｖｅでないと判断されると、処理は終了する。
【００６１】
ステップＳ９０４において、フィルタ制御部３０２は、ａｌｉｖｅに対応する情報がフィルタ情報のエントリに登録済みであるか否かの判断を行う。ａｌｉｖｅに対応する情報がフィルタ情報のエントリに登録済みであると判断されると、フィルタ制御部３０２は、ａｌｉｖｅの情報をフィルタ情報作成部３０３に送信し、処理はステップＳ９０８に進む。ａｌｉｖｅに対応する情報がフィルタ情報のエントリに登録済みでないと判断されると、フィルタ制御部３０２は、ａｌｉｖｅの情報をフィルタ情報作成部３０３に送信し、処理はステップＳ９０５に進む。
【００６２】
ステップＳ９０５において、フィルタ情報作成部３０３は、ａｌｉｖｅの情報から、ＬＯＣＡＴＩＯＮ値を取得する。このＬＯＣＡＴＩＯＮ値（図１０の１００１）は、ＵＰｎＰのｒｏｏｔデバイスのディスクリプションへのＵＲＬである。フィルタ情報作成部３０３は、ＴＣＰ／ＩＰ制御部３００を通じて、当該ＵＲＬのデバイスディスクリプションを取得し、ステップＳ９０６に進む。フィルタ情報作成部３０３が取得するデバイスディスクリプションの構成は、図７に示す構成と同様である。なお、ステップＳ９０５において、フィルタ情報作成部３０３がデバイスディスクリプションを取得する処理は、本発明の第３の取得手段の一処理例である。
【００６３】
ステップＳ９０６において、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるiconのタグの子要素であるurlのタグから、アイコンのＵＲＬを取得する。フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるSCPDURLのタグから、サービスディスクリプションのＵＲＬを取得する。また、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるcontrolURLのタグから、コントロールのためのＵＲＬを取得する。また、フィルタ情報作成部３０３は、取得したデバイスディスクリプションに含まれるserviceのタグの子要素であるeventSubURLのタグから、イベンティングのためのＵＲＬを取得する。本実施形態では、ContentDirectoryとConnectionManagerとAVTransportの３つのサービスがある。デバイスディスクリプションのＵＲＬ、アイコンのＵＲＬ、サービス毎のサービスディスクリプションのＵＲＬ、サービス毎のコントロールのＵＲＬ、サービス毎のイベンティングのＵＲＬからフィルタ情報を作成する。また、ａｌｉｖｅに含まれるＣＡＣＨＥ−ＣＯＮＴＲＯＬもフィルタ情報作成の際に用いられる。フィルタ情報作成部３０３は、作成したフィルタ情報をフィルタ制御部３０２に送信し、ステップＳ９０７に進む。フィルタ情報作成部３０３が作成したフィルタ情報の構成は、図８に示す構成と同様である。なお、ステップＳ９０６は、本発明の生成手段の一処理例である。
【００６４】
ステップＳ９０７において、フィルタ制御部３０２は、フィルタ情報作成部３０３が生成したフィルタ情報のエントリを追加し、処理を終了する。
【００６５】
ステップＳ９０８において、フィルタ制御部３０２は、ａｌｉｖｅに該当するエントリのＣＡＣＨＥ−ＣＯＮＴＲＯＬ（図１０の１００２）を利用してｌｉｆｅｔｉｍｅ（生存期間）を更新する。ＩＰアドレスやポート番号が変更されていた場合、フィルタ制御部３０２はエントリの該当個所を変更し、処理を終了する。ＩＰアドレスやポート番号が変更され、且つ、フィルタが実行されている場合、フィルタ制御部３０２は、フィルタ実行部３０４に対して変更前のフィルタの解除、及び、変更後のフィルタの実行を依頼する。ステップＳ９０８は、本発明の更新手段の一処理例である。
【００６６】
ステップＳ９０９において、フィルタ制御部３０２は、制限リストにあるＵＰｎＰデバイスから送信されたｂｙｅｂｙｅであるか否かの判断を行う。制限リストにあるＵＰｎＰデバイスから送信されたｂｙｅｂｙｅであると判断されると、処理はステップＳ９１０に進む。一方、制限リストにあるＵＰｎＰデバイスから送信されたｂｙｅｂｙｅでないと判断されると、処理は終了する。
【００６７】
ステップＳ９１０において、フィルタ制御部３０２は、ｂｙｅｂｙｅに関連する情報をフィルタ情報のエントリから削除し、処理は終了する。ｂｙｅｂｙｅは、ＵＵＩＤを含んでいるため、エントリから一意に消去することができる。
【００６８】
図１２は、フィルタ制御部３０２が起動時に開始され、処理が継続している間実行される処理を示すフローチャートである。
【００６９】
ステップＳ１２０１において、フィルタ制御部３０２は、処理の終了を受け付けたか否かの判断を行う。処理の終了を受け付けたと判断されると、処理は終了する。一方、処理の終了を受け付けていないと判断されると、処理はステップＳ１２０２に進む。
【００７０】
ステップＳ１２０２において、フィルタ制御部３０２は１秒待機し、処理はステップＳ１２０３に進む。
【００７１】
ステップＳ１２０３において、フィルタ制御部３０２は、フィルタ情報のエントリのｌｉｆｅｔｉｍｅを１減らし、処理はステップＳ１２０４に進む。
【００７２】
ステップＳ１２０４において、フィルタ制御部３０２は、フィルタ情報のエントリのｌｉｆｅｔｉｍｅが０以下のものを含むか否かを判断する。フィルタ情報のエントリのｌｉｆｅｔｉｍｅが０以下のものを含むと判断されると、処理はステップＳ１２０５に進む。一方、フィルタ情報のエントリのｌｉｆｅｔｉｍｅが０以下のものを含まないと判断されると、処理はステップＳ１２０１に進む。
【００７３】
ステップＳ１２０５において、フィルタ制御部３０２は、フィルタ情報のエントリのｌｉｆｅｔｉｍｅが０以下のものを削除し、処理はステップＳ１２０１に進む。以上のように、本実施形態においては、図９のステップＳ９０６で生成、又は、図９のステップＳ９０８で更新されたｌｉｆｅｔｉｍｅに示される時間を超過した場合、エントリを削除する。本処理は、本発明の削除手段の一処理例である。
【００７４】
以上のように、本実施形態では、アクセス制限対象となるＵＰｎＰデバイスに該当するデバイスディスクリプションを用いてフィルタ情報を生成し、ＵＰｎＰデバイス単位でアクセスを簡単に制限することができる。例えば、同一のサービス提供装置１０４内に備えられる複数のＵＰｎＰデバイスのうち、メディアサーバのみに対するアクセスを簡単に制限することができる。
【００７５】
更に本実施形態では、アクセス制限対象となるＵＰｎＰデバイスを探索し、探索の応答情報であるｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅを受信した場合に当該ＵＰｎＰデバイスへのアクセスを制限するフィルタ情報を動的に生成するように構成している。従って、本実施形態では、ＵＰｎＰデバイスがネットワーク上に存在しているときのみフィルタを実行することになる。よって、無駄なフィルタを実行することがなくなり、計算量を低減させることができる。
【００７６】
また、従来は、ＤＨＣＰ等でＩＰアドレスが割り当てられた環境において、ＩＰアドレスは変更される可能性が高く、変更される度にフィルタ設定を再設定する必要があった。しかしながら、本実施形態では、レイヤ２でのＶＰＮ接続によってＵＰｎＰを利用した通信を行う際にフィルタ制御を行うため、ＩＰアドレスが変更された場合にも対応することができる。その結果、ユーザの利便性が向上し、安全に利用することができる。
【００７７】
上述した本発明の実施形態を構成する各手段及び各ステップは、コンピュータのＲＡＭやＲＯＭ等に記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【００７８】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、一つの機器からなる装置に適用してもよい。
【００７９】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システム又は装置に直接、又は遠隔から供給する。そして、そのシステム又は装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００８０】
従って、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００８１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。更に、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ等が、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００８２】
更に、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施形態に係るネットワークシステムの構成を示す図である。
【図２】論理ネットワーク制御装置の構成を示す図である。
【図３】論理ネットワーク制御装置のモジュール構成を示す図である。
【図４】論理ネットワーク制御装置が論理ネットワーク接続要求を受け付けた際の処理を示すフローチャートである。
【図５】フィルタ制御部から送信されるｍ−ｓｅａｒｃｈの構成を示す図である。
【図６】フィルタ制御部が受信する、対応するｍ−ｓｅａｒｃｈ ｒｅｓｐｏｎｓｅの一例を示す図である。
【図７】フィルタ情報作成部が取得するデバイスディスクリプションの一例を示す図である。
【図８】フィルタ情報作成部が作成したフィルタ情報の一例を示す図である。
【図９】論理ネットワーク制御装置がｓｓｄｐメッセージ（広告情報）を受信した際の処理を示すフローチャートである。
【図１０】ｓｓｄｐメッセージのａｌｉｖｅの一例を示す図である。
【図１１】ｓｓｄｐメッセージのｂｙｅｂｙｅの一例を示す図である。
【図１２】フィルタ制御部が起動時に開始され、処理が継続している間実行される処理を示すフローチャートである。
【符号の説明】
【００８４】
１００  インターネット
１０１ａ、１０１ｂ  ＬＡＮ
１０２ａ、１０２ｂ  ルータ装置
１０３ａ、１０３ｂ  論理ネットワーク制御装置
１０４  サービス提供装置
１０５  サービス実行装置
２００  バス
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  ＮＥＴＩＦ
２０５  ＶＲＡＭ
２０６  表示装置
２０７  外部入力装置コントローラ
２０８  外部入力装置
２０９  記憶装置
２１０  外部入出力装置
３００  ＴＣＰ／ＩＰ制御部
３０１  論理ネットワーク制御部
３０２  フィルタ制御部
３０３  フィルタ情報作成部
３０４  フィルタ実行部
【図１】
0005207803.tif 000002
【図２】
0005207803.tif 000003
【図３】
0005207803.tif 000004
【図４】
0005207803.tif 000005
【図５】
0005207803.tif 000006
【図６】
0005207803.tif 000007
【図７】
0005207803.tif 000008
【図８】
0005207803.tif 000009
【図９】
0005207803.tif 000010
【図１０】
0005207803.tif 000011
【図１１】
0005207803.tif 000012
【図１２】
0005207803.tif 000013