(57)【特許請求の範囲】
【請求項１】
ローカルエリアネットワークにおいてファイルを発見する方法であって、
前記ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを前記ローカルエリアネットワークのネットワークトラフィック管理ノードによって発見することと、
前記複数のファイルに関連する情報に少なくとも部分的に基づいて前記複数のファイルのカタログを作成することと、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージをワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログを前記ネットワークトラフィック管理ノードから前記リモートネットワークノードに前記ネットワークトラフィック管理ノードによって、供給することと、
前記複数のファイルの前記カタログから１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信することと、
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に少なくとも部分的に基づいて、前記要求するメッセージに含まれる情報を前記カタログの情報と比較することによって、前記複数のファイルの前記カタログから前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することと、
前記リモートネットワークノードによって要求された前記１つまたは複数のファイルが記憶されている前記複数の前記ネットワークデバイスのうちの１つまたは複数を判定することと、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給することと、
を備え、
前記方法は、前記ネットワークトラフィック管理ノードによる発見手順の実行に基づいて前記複数のファイルの前記カタログを更新することをさらに備える、方法。
【請求項２】
前記ネットワークトラフィック管理ノードは、ルータ、アクセスポイント、ケーブルモデム、およびネットワークスイッチのうちの１つまたは複数を含むシステムを備える、請求項１に記載の方法。
【請求項３】
前記複数のファイルの前記カタログから前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを前記識別することは、
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定することと、
前記１つまたは複数のカタログエントリ識別子に少なくとも部分的に基づいて前記１つまたは複数のファイルを識別することと、
を備える、請求項１に記載の方法。
【請求項４】
前記発見することは、前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を判定することを備え、
前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を前記判定することは、前記複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を判定することを備え、
前記複数のファイルのカタログを前記作成することは、前記複数のファイルに関連する前記ファイル名、前記ファイル拡張子、および前記メタデータのうちの１つまたは複数に応じて前記複数のファイルの前記カタログを構成することをさらに備える、請求項１に記載の方法。
【請求項５】
前記発見することは、前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を判定することを備え、
前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を前記判定することは、前記複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を判定することを備え、
前記複数のファイルに関連する前記情報に少なくとも部分的に基づいて前記複数のファイルのカタログを前記作成することは、前記複数のファイルに関連する前記メタデータを解析して前記複数のファイルの各々に関連するさらなる情報を判定することと、前記ファイル名、前記ファイル拡張子、および前記メタデータから解析された前記さらなる情報のうちの１つまたは複数に応じて構成された前記複数のファイルの前記カタログを作成することとを備える、請求項１に記載の方法。
【請求項６】
前記発見することは、前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を判定することを備え、
前記複数のネットワークデバイスに記憶されている前記複数のファイルに関連する情報を前記判定することは、前記複数のファイルの各々に関連するファイルの種類を判定することおよび前記複数のファイルの各々のコンテンツに関連する情報を判定することのうちの１つまたは複数を備える、請求項１に記載の方法。
【請求項７】
前記複数のファイルの前記カタログから１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して、各ファイルのコピーを前記リモートネットワークノードに送ること、各ファイルを前記リモートネットワークノードにストリーミングすること、または前記ローカルエリアネットワークの前記ネットワークトラフィック管理ノードに記憶されている前記ファイルに前記リモートネットワークノードがアクセスするのを可能にすることのうちの１つまたは複数によって前記リモートネットワークノードに前記１つまたは複数のファイルを供給することをさらに備える、請求項１に記載の方法。
【請求項８】
前記ネットワークトラフィック管理ノードによる前記発見手順の実行に基づいて前記複数のファイルの前記カタログを前記更新することは、
前記発見手順を周期的に実行して前記ローカルエリアネットワークの前記ネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新すること、
前記ローカルエリアネットワークに１つまたは複数の新しいネットワークデバイスが追加されたことを検出したことに応答して前記発見手順を実行して前記ネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新すること、および
前記ローカルエリアネットワークに１つまたは複数の新しいファイルが記憶されたことを検出したことに応答して前記発見手順を実行して前記ネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新すること
のうちの少なくとも１つを備える、請求項１に記載の方法。
【請求項９】
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルは少なくとも複数のメディアファイルを含み、前記ローカルエリアネットワークの前記複数のネットワークデバイスは、ノートブックコンピュータ、タブレットコンピュータ、モバイル電話、デスクトップコンピュータ、ゲームコンソール、デジタルカメラ、テレビジョン、スマート機器のうちの少なくとも１つまたは複数を備え、および前記ワイドエリアネットワークの前記リモートネットワークノードは、インターネットに通信可能に結合されたリモートコンピュータシステムを備える、請求項１に記載の方法。
【請求項１０】
プロセッサと、
前記プロセッサに結合され、
ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見し、
前記複数のファイルに関連する情報に少なくとも部分的に基づいて前記複数のファイルのカタログを作成する
ように構成された、
メディア発見ユニットと、
前記プロセッサに結合され、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージをワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログをネットワークトラフィック管理デバイスから前記リモートネットワークノードに供給し、
前記複数のファイルの前記カタログから１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して前記１つまたは複数のファイルを前記リモートネットワークノードに供給し、
前記ネットワークトラフィック管理デバイスにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に少なくとも部分的に基づいて、前記要求するメッセージに含まれる情報を前記カタログの情報と比較することによって、前記複数のファイルの前記カタログから前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別し、
前記１つまたは複数のファイルが記憶されている前記ローカルエリアネットワークの前記複数の前記ネットワークデバイスのうちの１つまたは複数を判定し、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給する、
ように構成された、
リモートメディアアクセスユニットと、
を備え、
前記リモートメディアアクセスユニットはさらに、前記メディア発見ユニットによる発見手順の実行に基づいて前記複数のファイルの前記カタログを更新するように構成される、ネットワークトラフィック管理デバイス。
【請求項１１】
前記複数のファイルの前記カタログから前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別するように構成された前記リモートメディアアクセスユニットは、
前記ネットワークトラフィック管理デバイスにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定し、
前記１つまたは複数のカタログエントリ識別子に少なくとも部分的に基づいて前記１つまたは複数のファイルを識別する
ように構成された前記リモートメディアアクセスユニットを備える、請求項１０に記載のネットワークトラフィック管理デバイス。
【請求項１２】
ローカルエリアネットワークのネットワークトラフィック管理デバイスであって、
プロセッサによって実行されたときに、前記ネットワークトラフィック管理デバイスに、実行された時に請求項１乃至９のうちのいずれか１つにしたがった方法を実行させる命令を記憶するためのメモリおよび前記プロセッサを備える、ネットワークトラフィック管理デバイス。
【請求項１３】
少なくとも１つのコンピュータに、実行された時に請求項１乃至９のうちのいずれか一つにしたがった方法を実行させるために実行可能な命令を備えるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
[0001]本出願は、２０１１年１０月２１日に出願された米国仮出願第６１／５５０，３３５号および２０１２年１０月１８日に出願された米国出願第１３／６５５，３９５号の優先権の利益を主張する。
【０００２】
[0002]本発明の主題の実施形態は、一般に通信ネットワークの分野に関し、より詳細には、通信ネットワーク用のネットワーク接続されたメディアゲートウェイに関する。
【背景技術】
【０００３】
[0003]ホームネットワークまたはオフィスネットワークなどのローカルエリアネットワーク（ＬＡＮ）は通常、ＬＡＮをワイドエリアネットワーク（ＷＡＮ）に接続し、２つのネットワーク間でパケットを経路指定するルータ（またはゲートウェイ）を含む。ＬＡＮ内の様々なネットワークデバイスは、ルータを介してインターネットからの情報にアクセスしかつそのような情報をダウンロードすることができ、ルータは、インターネットにアクセスする様々なネットワークデバイスからの様々なパケットストリームを管理することができる。ＬＡＮのルータは、ファイアウォールなどの様々なセキュリティ機能を実現し、ＬＡＮにリモートにアクセスする許可されていない試みまたは悪意のある試みを防止することができる。
【発明の概要】
【０００４】
[0004]いくつかの実施形態では、ローカルエリアネットワークにおいてファイルを発見するための方法は、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見することと、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを作成することと、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルへのアクセスを要求するメッセージをリモートネットワークノードから受信したことに応答して複数のファイルのカタログをワイドエリアネットワークのリモートネットワークノードに供給することとを備える。
【０００５】
[0005]いくつかの実施形態では、この方法は、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答して１つまたは複数のファイルをリモートネットワークノードに供給することをさらに備える。
【０００６】
[0006]いくつかの実施形態では、前記発見すること、作成すること、および供給することは、ローカルエリアネットワークのネットワークトラフィック管理ノードによって実行される。
【０００７】
[0007]いくつかの実施形態では、ネットワークトラフィック管理ノードは、ローカルエリアネットワークのルータを備える。
【０００８】
[0008]いくつかの実施形態では、ネットワークトラフィック管理ノードは、ローカルエリアネットワークのルータ、アクセスポイント、ケーブルモデム、およびネットワークスイッチのうちの１つまたは複数を含むコンピュータシステムを備える。
【０００９】
[0009]いくつかの実施形態では、この方法は、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信することと、リモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別することと、１つまたは複数のファイルをリモートネットワークノードに供給することとをさらに備える。
【００１０】
[0010]いくつかの実施形態では、リモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを前記識別することは、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを示すようにリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を求めることと、１つまたは複数のカタログエントリ識別子に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別することとを備える。
【００１１】
[0011]いくつかの実施形態では、この方法は、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別したことに応答してさらに、リモートネットワークノードによって要求された１つまたは複数のファイルが記憶されている複数のネットワークデバイスのうちの１つまたは複数を判定することをさらに備える。
【００１２】
[0012]いくつかの実施形態では、この方法は、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別したことに応答してさらに、ネットワークトラフィック管理ノードからローカルエリアネットワークの複数のネットワークデバイスのうちの１つまたは複数に、複数のネットワークデバイスのうちの１つまたは複数にローカルエリアネットワークのネットワークトラフィック管理ノードを介してリモートネットワークノードに１つまたは複数のファイルを供給するように要求するメッセージを送ること、あるいはネットワークトラフィック管理ノードにおいてローカルエリアネットワークの複数のネットワークデバイスのうちの１つまたは複数から１つまたは複数のファイルを取り出して１つまたは複数のファイルをネットワークトラフィック管理ノードからリモートネットワークノードに供給することのうちの１つをさらに備える。
【００１３】
[0013]いくつかの実施形態では、この方法は、複数のネットワークデバイスからの複数のファイルに関連する情報を求めることをさらに備える。
【００１４】
[0014]いくつかの実施形態では、複数のネットワークデバイスからの複数のファイルに関連する情報を前記求めることは、複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めることを備え、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを前記作成することは、複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数に応じて構成された複数のファイルのカタログを作成することを備える。
【００１５】
[0015]いくつかの実施形態では、複数のネットワークデバイスからの複数のファイルに関連する情報を前記求めることは、複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めることを備え、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを前記作成することは、複数のファイルに関連するメタデータを解析して複数のファイルの各々に関連するさらなる情報を求めることと、複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータから解析されたさらなる情報のうちの１つまたは複数に応じて構成された複数のファイルのカタログを作成することを備える。
【００１６】
[0016]いくつかの実施形態では、複数のネットワークデバイスからの複数のファイルに関連する情報を前記求めることは、複数のファイルの各々に関連するファイルの種類を判定することおよび複数のファイルの各々のコンテンツに関連する情報を求めることのうちの１つまたは複数を備える。
【００１７】
[0017]いくつかの実施形態では、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを前記作成することは、複数のファイルの各々に関連するファイルの種類および複数のファイルの各々のコンテンツに関連する情報に応じて構成された複数のファイルのカタログを作成することを備える。
【００１８】
[0018]いくつかの実施形態では、この方法は、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答して、各ファイルのコピーをリモートネットワークノードに送ること、各ファイルをリモートネットワークノードにストリーミングすること、またはローカルエリアネットワークのネットワークトラフィック管理ノードに記憶されているファイルにリモートネットワークノードがアクセスするのを可能にすることのうちの１つまたは複数によってリモートネットワークノードに１つまたは複数のファイルを供給することをさらに備える。
【００１９】
[0019]いくつかの実施形態では、この方法は、発見手順を周期的に実行してローカルエリアネットワークのネットワークトラフィック管理ノードにおいて複数のファイルのカタログを更新すること、１つまたは複数の新しいネットワークデバイスがローカルエリアネットワークに追加されたことを検出したことに応答して発見手順を実行し、ネットワークトラフィック管理ノードにおいて複数のファイルのカタログを更新すること、１つまたは複数の新しいファイルがローカルエリアネットワークに記憶されたことを検出したことに応答して発見手順を実行し、ネットワークトラフィック管理ノードにおいて複数のファイルのカタログを更新することのうちの少なくとも１つをさらに備える。
【００２０】
[0020]いくつかの実施形態では、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルは少なくとも複数のメディアファイルを含む。
【００２１】
[0021]いくつかの実施形態では、ローカルエリアネットワークの複数のネットワークデバイスは、ノートブックコンピュータ、タブレットコンピュータ、モバイル電話、デスクトップコンピュータ、ゲームコンソール、デジタルカメラ、テレビジョン、スマート機器のうちの少なくとも１つまたは複数を備える。
【００２２】
[0022]いくつかの実施形態では、ワイドエリアネットワークのリモートネットワークノードは、インターネットに通信可能に結合されたリモートコンピュータシステムを備える。
【００２３】
[0023]いくつかの実施形態では、ネットワークトラフィック管理デバイスは、プロセッサと、プロセッサに結合され、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見し、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを作成するように構成されたメディア発見ユニットと、プロセッサに結合され、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルへのアクセスを要求するメッセージをリモートネットワークノードから受信したことに応答して複数のファイルのカタログをネットワークトラフィック管理デバイスからワイドエリアネットワークのリモートネットワークノードに供給し、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答してリモートネットワークノードに１つまたは複数のファイルを供給するように構成されたリモートメディアアクセスユニットとを備える。
【００２４】
[0024]いくつかの実施形態では、ネットワークトラフィック管理デバイスは、ローカルエリアネットワークのルータを備える。
【００２５】
[0025]いくつかの実施形態では、ネットワークトラフィック管理デバイスは、ローカルエリアネットワークのルータ、アクセスポイント、ケーブルモデム、およびネットワークスイッチのうちの１つまたは複数を含むコンピュータシステムを備える。
【００２６】
[0026]いくつかの実施形態では、リモートメディアアクセスユニットは、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答して、ネットワークトラフィック管理デバイスにおいてリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別し、リモートネットワークノードによって要求された１つまたは複数のファイルが記憶されているローカルエリアネットワークの複数のネットワークデバイスのうちの１つまたは複数を判定し、１つまたは複数のファイルをリモートネットワークノードに供給するようにさらに構成される。
【００２７】
[0027]いくつかの実施形態では、ネットワークトラフィック管理デバイスにおいてリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別するように構成されたリモートメディアアクセスユニットは、ネットワークトラフィック管理デバイスにおいてリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する１つまたは複数のカタログエントリ識別子を求めて、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを示し、１つまたは複数のカタログエントリ識別子に基づいてリモートネットワークノードによって要求された１つまたは複数のファイルを複数のファイルのカタログにおいて識別するように構成されたリモートメディアアクセスユニットを備える。
【００２８】
[0028]いくつかの実施形態では、複数のネットワークデバイスからの複数のファイルに関連する情報を求めるように構成されたメディア発見ユニットは、複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めるように構成されたメディア発見ユニットを備える。
【００２９】
[0029]いくつかの実施形態では、複数のネットワークデバイスからの複数のファイルに関連する情報を求めるように構成されたメディア発見ユニットは、複数のファイルの各々に関連するファイルの種類を判定し、複数のファイルの各々のコンテンツに関連する情報を求めるように構成されたメディア発見ユニットを備える。
【００３０】
[0030]いくつかの実施形態では、ネットワークルータは、１つまたは複数のプロセッサと、１つまたは複数のプロセッサによって実行されたときに、ネットワークルータに、複数のファイルに関連する情報に少なくとも部分的に基づいてローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルのカタログを作成することと、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルへのアクセスを要求するメッセージをネットワークルータにおいてリモートネットワークノードから受信したことに応答して複数のファイルのカタログをネットワークルータからワイドエリアネットワークのリモートネットワークノードに供給することと、１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答して複数のファイルのカタログにおけるリモートネットワークノードの１つまたは複数のファイルを識別することと、１つまたは複数のファイルをリモートネットワークノードに供給することとを備える動作を実行させる１つまたは複数の命令を記憶するように構成された１つまたは複数のメモリユニットとを備える。
【００３１】
[0031]いくつかの実施形態では、１つまたは複数のプロセッサによって実行される１つまたは複数の命令は、ネットワークルータに、発見手順を実行してローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを検出することと、複数のネットワークデバイスからの複数のファイルに関連する情報を求めることとをさらに備える動作を実行させる。
【００３２】
[0032]いくつかの実施形態では、１つまたは複数のプロセッサによって実行される１つまたは複数の命令は、ネットワークルータにおいてリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連付けられ、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを示す、１つまたは複数のカタログエントリ識別子を求めることと、１つまたは複数のカタログエントリ識別子に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別することとをさらに備える動作を実行させる。
【００３３】
[0033]いくつかの実施形態では、１つまたは複数のプロセッサによって実行されたときに、１つまたは複数のプロセッサに、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見することと、複数のファイルに関連する情報に少なくとも部分的に基づいて複数のファイルのカタログを作成することと、ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルへのアクセスを要求するメッセージをリモートネットワークノードから受信したことに応答して複数のファイルのカタログをワイドエリアネットワークのリモートネットワークノードに供給することとを備える動作を実行させる命令が記憶されている１つまたは複数の機械可読記憶媒体。
【００３４】
[0034]いくつかの実施形態では、動作は、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信したことに応答して１つまたは複数のファイルをリモートネットワークノードに供給することをさらに備える。
【００３５】
[0035]いくつかの実施形態では、動作は、複数のファイルのカタログにおける１つまたは複数のファイルを要求するメッセージをリモートネットワークノードから受信することと、リモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別することと、１つまたは複数のファイルをリモートネットワークノードに供給することとをさらに備える。
【００３６】
[0036]いくつかの実施形態では、リモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連する情報に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別する前記動作は、複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを示すようにリモートネットワークノードから受信されたメッセージに含まれる１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を求めることと、１つまたは複数のカタログエントリ識別子に基づいて複数のファイルのカタログにおいてリモートネットワークノードによって要求された１つまたは複数のファイルを識別することとを備える。
【００３７】
[0037]いくつかの実施形態では、前記動作は、複数のネットワークデバイスからの複数のファイルに関連する情報を求めることをさらに備える。
【００３８】
[0038]添付の図面を参照することによって、本実施形態はより良く理解され、多数の目的、特徴および利点が当業者に明らかになろう。
【図面の簡単な説明】
【００３９】
【図１】[0039]いくつかの実施形態による、ローカルエリアネットワークのためのネットワークメディア発見およびリモートアクセスを実現するためのワイドエリアネットワークに接続されたメディアゲートウェイを示す例示的なブロック図。
【図２】[0040]いくつかの実施形態による、ワイドエリアネットワークに接続されたメディアゲートウェイにおいてネットワークメディア発見およびリモートアクセス機構を実現するための例示的な動作を示す流れ図。
【図３】[0041]いくつかの実施形態による、ワイドエリアネットワークに接続されたメディアゲートウェイにおいてネットワークメディア発見およびリモートアクセス機構を実現するためのさらなる例示的な動作を示す図２の流れ図に続く流れ図。
【図４】[0042]いくつかの実施形態による、ネットワークメディア発見およびリモートアクセス機構を実現するためにネットワークデバイスによって交換される例示的な通信を示すメッセージ図。
【図５】[0043]いくつかの実施形態による、ワイドエリアネットワークにおけるネットワークメディア発見およびリモートアクセスのための機構を含むネットワークデバイスの一実施形態のブロック図。
【発明を実施するための形態】
【００４０】
[0044]以下の説明は、本発明の主題の技法を実施する例示的なシステム、方法、技法、命令シーケンス、および／またはコンピュータプログラム製品を含む。ただし、説明する実施形態は、これらの具体的な詳細なしに実施され得ることを理解されたい。たとえば、いくつかの例は、ホームネットワークのルータを使用してホームネットワークのネットワークデバイスに記憶されているメディアファイルを発見（discover）しカタログ化するための機構を対象としているが、他の実装形態では、本明細書で説明するルータ（または他の種類のネットワークトラフィック管理ノード）が他の種類のネットワーク（たとえば、オフィスネットワークなどの他の種類のＬＡＮ）のネットワークデバイスに記憶されているテキストファイルおよび他の適切な種類のデータファイルを発見しカタログ化するように構成されてもよい。他の場合では、説明を不明瞭にしないために、よく知られている命令インスタンス、プロトコル、構造、および技法は詳細に示されていない。
【００４１】
[0045]ホームネットワークまたはオフィスネットワークなどの、ＬＡＮにおける様々なネットワークデバイスは、ワイヤレス通信プロトコル（たとえば、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎ）、電力線通信プロトコル（たとえば、ＨｏｍｅＰｌｕｇ  ＡＶ）、および／または他の種類の有線／ワイヤレス通信プロトコル（たとえば、イーサネット（登録商標））を使用することによってルータ（またはゲートウェイ）を介してインターネットにアクセスしてもよい。各ネットワークデバイスはデジタルメディアファイルおよびテキストファイルを記憶してもよい。たとえば、ノートブックコンピュータは、インターネットからダウンロードされた１つまたは複数の映像ファイルまたは音楽ファイルを記憶してもよく、モバイル電話は、ユーザが内蔵デジタルカメラによって写真をとった後で１つまたは複数の画像ファイルを記憶してもよく、デスクトップコンピュータは様々なテキストファイルを記憶してもよい、などである。１つのネットワークデバイス（有線またはワイヤレス）のユーザからＬＡＮがアクセス可能であるとき、ユーザは通常、ＬＡＮ内の他のネットワークデバイスのうちの大部分またはすべてのネットワークデバイスに記憶されているメディアファイルにアクセスすることができる（たとえば、各デバイスがネットワーク互換性を有し、記憶されているファイルを共用するように構成されている場合）。たとえば、ユーザはピアツーピアワイヤレス接続を使用したり、ＬＡＮのルータを介してワイヤレス接続を使用したり、イーサネットなどの有線接続を使用したりすることなどによってファイルにアクセスするかまたはファイルを送ることができる。しかしながら、ユーザは、リモートに位置するときには通常、ＬＡＮ内のネットワークデバイスに記憶されているメディアファイルにリモートにアクセスすることはできない。
【００４２】
[0046]いくつかの実施形態では、ＬＡＮ内のルータ（または他の種類のネットワークトラフィック管理ノード）は、ネットワークメディア発見およびリモートアクセス機構を実現してユーザがＬＡＮの様々なネットワークデバイスに記憶されているメディアファイル（およびテキストファイルなどの他の種類のファイル）にリモートにアクセスするのを可能にするように構成することができる。以下でさらに説明するように、ルータはまず、ＬＡＮの様々なネットワークデバイスに記憶されているメディアファイルを発見し、メディアファイルに関連する情報を得てもよい。ルータは、発見プロセス中に得られた情報に基づいてメディアファイルのカタログを作成してもよい。ルータは次いで、メディアファイルのカタログをユーザに提示されるようにＷＡＮ内のリモートノードに送ってもよい。ユーザは、以下に図１〜図５を参照してさらに説明するように、ルータから受信されたメディアファイルのカタログから１つまたは複数のメディアファイルを選択することによって、ＬＡＮに記憶されているメディアファイルにリモートにアクセスすることができる。
【００４３】
[0047]図１は、いくつかの実施形態による、ローカルエリアネットワークのためのネットワークメディア発見およびリモートアクセスを実現するためのワイドエリアネットワークに接続されたメディアゲートウェイを示す例示的なブロック図である。図１に示すように、ＬＡＮ１００は、複数のネットワークデバイス１０２とルータ１１０とを備える。複数のネットワークデバイス１０２は、ノートブックコンピュータ、タブレットコンピュータ、モバイル電話、デスクトップコンピュータ、デジタルカメラ、テレビジョン、ゲームコンソール、スマート機器、およびその他の適切なネットワークデバイスなど、様々な種類の有線ネットワーキングデバイスおよびワイヤレスネットワーキングデバイスを含んでもよい。ルータ１１０（またはゲートウェイ）は、パケットを通信ネットワークから受信しかつ通信ネットワークに経路指定する通信ネットワーク内のノードである。ルータ１１０は、ネットワークに関連するパケットを受信し、処理し、経路指定する２つ以上のネットワーク間のネットワークトラフィック管理ノードである。しかし、他の実施形態では、ＬＡＮ１００が、他の種類のネットワークトラフィック管理ノード、および／または１つまたは複数のネットワークのための様々な機能を実行するように構成されたネットワークトラフィック管理ノード、たとえば、本明細書において図１〜図５を参照して説明する機能を実現することもできる、ケーブルモデム、ゲートウェイ／ルータ、ワイヤレスアクセスポイント、ブリッジ、スイッチ、および／またはストレージのうちの１つまたは複数を組み込んだサーバコンピュータシステムを含んでもよいことに留意されたい。図１に示すように、ルータ１１０は、ＬＡＮ１００のネットワークデバイス１０２がＷＡＮ１４０にアクセスしＷＡＮ１４０からコンテンツを受信するのを可能にする。ＬＡＮ１００は、一般にインターネット１２０と呼ばれることもあるＷＡＮ１４０を形成する多数のＬＡＮのうちの１つである。図示のように、ＷＡＮ１４０は、サーバ（ならびに他のネットワークデバイスおよびソフトウェア）の様々なネットワークを含んでもよい。一例では、サーバのネットワークのうちの１つは、インターネット１２０上でクラウドコンピューティングを実現してもよく、本明細書では、クラウドコンピューティングネットワーク１５０（またはクラウド１５０）と呼ばれる。
【００４４】
[0048]いくつかの実施形態では、ルータ１１０は、メディア発見ユニット１１２と、リモートメディアアクセスユニット１１４と、１つまたは複数のプロセッサ１１５と、メモリユニット１１８とを含む。ルータ１１０のメディア発見ユニット１１２、リモートメディアアクセスユニット１１４と、１つまたは複数のプロセッサ１１５と、メモリユニット１１８は、ユーザがＬＡＮ１００内のメディアファイル（および他の種類のファイル）にリモートアクセスするのを可能にするようにネットワークメディア発見およびリモートアクセス機構を実現するように構成される。たとえば、メディア発見ユニット１１２は、ＬＡＮ１００の様々なネットワークデバイス１０２に記憶されているメディアファイルを発見するための機能およびネットワーキングプロトコルを実現するように構成されてもよい。メディア発見ユニット１１２は、以下でさらに説明するように、メディアファイルに関連する情報を得て分析してメディアファイルのカタログを作成するように構成されてもよい。いくつかの実施形態では、ルータ１１０の１つまたは複数のプロセッサ１１５は、メディア発見ユニット１１２に関連する（たとえばメモリユニット１１８に記憶されている）プログラム命令を実行して本明細書において説明するメディア発見技術および情報分析技術を実現してもよい。リモートメディアアクセスユニット１１４は、ＷＡＮ１４０内のリモートネットワークノードから通信を受信し、通信が許可されたユーザ、エンティティ、またはサーバからの通信であることを検証／認証するように構成されてもよい。リモートメディアアクセスユニット１１４は、以下でさらに説明するように、ルータ１１０用のリモートアクセス機構を実現してリモートネットワークノードにおけるユーザがＬＡＮに記憶されているメディアファイルにアクセスするのを可能にするように構成されてもよい。いくつかの実施形態では、ルータ１１０の１つまたは複数のプロセッサ１１５は、リモートメディアアクセスユニット１１４に関連する（たとえば、メモリユニット１１８に記憶されている）プログラム命令を実行し、ＬＡＮ１００において発見されたメディアファイルへのリモートアクセスを可能にするための本明細書において説明する機構をルータ１１０において実現してもよい。
【００４５】
[0049]図１に示すように、いくつかの実装形態では、ルータ１１０はネットワークインターフェースカード（またはモジュール）１１１を含んでもよい。ネットワークインターフェースカード１１１は、メディア発見ユニット１１２、リモートメディアアクセスユニット１１４、１つまたは複数のプロセッサ１１５、および（たとえば、１つもしくは複数の集積回路内の）メモリユニット１１８を実装してもよい。他の実装形態では、ルータ１１０は（ネットワークインターフェースカード１１１を含む）複数のネットワークインターフェースカードおよび回路板を含んでもよく、複数のネットワークインターフェースカードはメディア発見ユニット１１２、リモートメディアアクセスユニット１１４、１つまたは複数のプロセッサ１１５、およびメモリユニット１１８を実装してもよい。図１には示していないが、いくつかの実装形態では、ルータ１１０は、１つまたは複数のプロセッサ１１５およびメモリユニット１１８の他に１つまたは複数の追加のプロセッサおよびメモリユニット（およびその他の構成要素）を含んでよい。たとえば、ルータ１１０は、１つまたは複数の追加の回路板に１つまたは複数のプロセッサおよび１つまたは複数のメモリユニットを含んでもよい。
【００４６】
[0050]図２および図３は、いくつかの実施形態による、ワイドエリアネットワークに接続されたメディアゲートウェイにおいてネットワークメディア発見およびリモートアクセス機構を実現するための例示的な動作２００を示す流れ図（「フロー」）である。フローは、図２のブロック２０２から始まり、図３のブロック２１２に続く。図４は、いくつかの実施形態による、ネットワークメディア発見およびリモートアクセス機構を実現するためにネットワークデバイスによって交換される例示的な通信を示すメッセージ図である。このメッセージ図を図２および図３の説明内で参照する。
【００４７】
[0051]ブロック２０２において、ＬＡＮ１００の複数のネットワークデバイス１０２に記憶されているメディアファイルがルータ１１０において発見される。たとえば、ルータ１１０のメディア発見ユニット１１２は、複数のネットワークデバイス１０２に記憶されているデジタル音声ファイル、映像ファイル、および／または画像ファイルなどのデジタルメディアファイルを発見する。メディア発見ユニット１１２がメディアファイルに加えて、テキストファイルまたは他の種類のデータファイルなどの他の種類のファイルを発見してもよいことに留意されたい。いくつかの実装形態では、ルータ１１０は、ＬＡＮ１００のデジタルリビングネットワークアライアンス（ＤＬＮＡ）適合ネットワークデバイス１０２に記憶されているメディアファイルを発見するためのＤＬＮＡ準拠プロトコルを実装するＤＬＮＡ適合ネットワークデバイスであってもよい。たとえば、ルータ１１０は、Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ（ＵＰｎＰ）プロトコルを実装してＬＡＮ１００内のメディアファイルを発見してもよい。しかしながら、他の実装形態では、ルータ１１０が他の適切なネットワーキングプロトコルまたはネットワーキングプロトコルの組合せを実装してＬＡＮ１００のネットワークデバイス１０２に記憶されているメディアファイルを発見してもよいことに留意されたい。
【００４８】
[0052]発見プロセスの一部として、ルータ１１０のメディア発見ユニット１１２は、ネットワークデバイス１０２に記憶されているメディアファイルおよびテキストファイルに関連する情報を得る。たとえば、メディア発見ユニット１１２は、各メディアファイルに関連するファイル拡張子、ファイル名、および／またはメタデータを得て、メディアファイルの種類（たとえば、音声ファイル、映像ファイル、または画像ファイルの種類）およびメディアファイルのコンテンツに関連する情報（たとえば、映画／楽曲のタイトル、映画／楽曲の長さ、アーチスト／俳優名、画像の日時スタンプ、ファイルサイズなど）を判定してもよい。メディア発見ユニット１１２は、メディアファイルに関連する情報およびメディアファイルのコンテンツに関連する情報を得ることに加えて、対応するメディアファイルが記憶されている各ネットワークデバイス１０２に関連する情報を得てもよい。たとえば、メディア発見ユニット１１２は、デバイスＩＤ（たとえば、製造業者モデルおよび／またはシリアル番号）、デバイスアドレス（たとえば、媒体アクセス制御（ＭＡＣ）アドレス、ＩＰアドレスなど）、デバイスタイプ（たとえば、ノートブックコンピュータ、テレビジョン、ＤＶＲなど）、および／またはデバイスリソース／機能（たとえば、ＩＥＥＥ８０２．１１ｎ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、およびイーサネット通信機能）を得てもよい。
【００４９】
[0053]いくつかの実装形態では、メディア発見ユニット１１２は、ネットワークデバイスに発見要求メッセージを周期的に送り、要求した情報をネットワークデバイス１０２から発見応答メッセージ（たとえば、図４に示す発見メッセージ４０２を参照されたい）で受信することによって、メディアファイルに関連する情報、メディアファイルのコンテンツに関連する情報、および対応するネットワークデバイス１０２に関連する情報を得てもよい。いくつかの実装形態では、メディア発見ユニット１１２は、ネットワークデバイス１０２からメッセージを受信することによって情報を得てもよい。たとえば、ネットワークデバイス１０２は、記憶されているメディアファイルが修正される（たとえば、新しいメディアファイルが追加されたり、メディアファイルが削除されたりする、など）ときに更新済みの情報を自動的に送信してもよく、ならびに／あるいはネットワークデバイス１０２は、情報が更新されたか否かに関わらず、情報を周期的に送信してもよい。しかし、他の実装形態では、いくつかのデバイスに要求を送り、他のデバイスから情報を自動的に受信することによって情報を得ても、または特定のネットワーキングプロトコルを利用する様々な他の技術によって情報を得てもよいことに留意されたい。ブロック２０２の後で、フローはブロック２０４に進む。
【００５０】
[0054]ブロック２０４において、発見プロセス中に得られたメディアファイルに関連する情報に基づいて複数のネットワークデバイス１０２に記憶されている複数のメディアファイルのカタログを作成する。たとえば、ルータ１１０のメディア発見ユニット１１２は、メディアファイルに関連する情報、メディアファイルのコンテンツに関連する情報、および対応するネットワークデバイス１０２に関連する情報に基づいてＬＡＮ１００内で発見されたメディアファイルのカタログを作成する。上述のように、いくつかの実装形態では、メディア発見ユニット１１２はＬＡＮ１００のネットワークデバイス１０２に記憶されているメディアファイルおよびテキストファイルに関連するファイル拡張子、ファイル名、および／またはメタデータ、ならびに対応するネットワークデバイス１０２に関連する情報を得る。メディア発見ユニット１１２は、ネットワークデバイス１０２から得られたファイル関連情報を利用してルータ１１０においてメディアファイルのカタログを作成する。たとえば、ファイル拡張子（たとえば、ｍｐｅｇ、ｍｐ３、ｊｐｇ、ｔｘｔなど）は、ファイルの範疇（たとえば、映像、音声、画像、テキストなど）を示すことができ、かつファイルのフォーマットを示すこともできる。メディア発見ユニット１１２は、ファイル関連情報に基づき、映像ファイル、音声ファイル、画像ファイル、およびテキストファイルなどのメディアファイルの範疇に基づいてメディアファイルをカタログ化してもよい。さらに、カタログは、各範疇内にサブカテゴリーまたはメディアファイルの種類を含んでもよい。たとえば、各範疇内で、カタログをファイル拡張子またはファイルフォーマットによって構成してもよい。メディア発見ユニット１１２は、映像範疇内で映像ファイルを、たとえば映画およびビデオクリップへと構成してもよく、かつ／または映像ファイル拡張子によって構成してもよい。
【００５１】
[0055]さらに、メディアファイルおよびテキストファイルに関連するメタデータは、メディアファイルコンテンツに関連する情報（たとえば、映画／楽曲のタイトル、映画／楽曲の長さ、アーチスト／俳優名、画像の日時スタンプ、ファイルサイズなど）を示すことができる。一例では、メディア発見ユニット１１２は、ファイルに関連するメタデータを解析してこの情報を求めてもよい。メタデータおよび他の関連情報に基づいて、各範疇内で、カタログをメタデータに応じてタイトルなどによってアルファベット順に構成してもよい。別の例では、デジタル映像ファイルおよびデジタル音楽ファイルを映画または音楽のジャンルによって構成してもよい。しかし、メディア発見ユニット１１２が、メディアファイルおよびテキストファイルを様々な方法で構成してもよく、利用可能な情報に基づいてカタログを構成する方法を設定するオプションをユーザに提供してもよいことに留意されたい。メディア発見ユニット１１２は、メディアファイルに関連するカタログエントリごとに、メディアファイルが記憶されているネットワークデバイス１０２に関連する位置およびその他の情報を含んでもよい。たとえば、上述のように、メディア発見ユニット１１２はデバイスＩＤ（たとえば、製造業者モデルおよび／またはシリアル番号）ならびにデバイスアドレス（たとえば、媒体アクセス制御（ＭＡＣ）アドレス、ＩＰアドレスなど）をメディアファイルに関連する各カタログエントリに関連付けてメディアファイルへのアクセスを可能にしてもよい。上述のように、いくつかの例ではメディアファイルのカタログを作成することについて説明するが、いくつかの実装形態では、ルータ１１０がメディアファイルに加えてテキストファイルおよび他の種類のデータファイルをカタログ化してもよいことに留意されたい。ブロック２０４の後で、フローはブロック２０６に進む。
【００５２】
[0056]ブロック２０６において、ＷＡＮ１４０内のリモートネットワークノードにおけるユーザがＬＡＮ１００のネットワークデバイス１０２に記憶されている１つまたは複数のメディアファイルへのアクセスを要求していることを示すメッセージをルータ１１０において受信する。たとえば、ユーザは、ネットワークデバイス１２２において運営されているクライアントアプリケーション（たとえば、ウェブブラウザまたはウェブベースのルータインターフェース）を使用してインターネット１２０を介してルータ１１０にリモートに直接アクセスし、ＬＡＮ１００において利用可能なメディアファイルのカタログを要求するメッセージ（たとえば、１つまたは複数のＩＰパケット）を（たとえば、ルータのＩＰアドレスおよび／または他のネットワークアドレスを使用して）ルータ１１０に送ってもよい。別の例では、ネットワークデバイス１２２のユーザがクラウドコンピューティングネットワーク１５０によって提供されるサービスを使用してルータ１１０にリモートにアクセスしてもよい。クラウドコンピューティングネットワーク１５０は、ユーザがログインしてルータ１１０にリモートにアクセスし、ＬＡＮ１００において発見されたメディアファイルのカタログを送るようルータ１１０に求める要求メッセージを送ることのできるウェブサイトあるいは他の種類のウェブインターフェースまたはクラウドインターフェースをホストしてもよい。一実装形態では、ユーザがクライアントアプリケーションまたはクラウドコンピューティングネットワーク１５０を介して（または他のリモートアクセス手段を介して）ルータ１１０にアクセスするためにログインすると、ユーザの証明書が検証され認証されたことに応答して、メディアファイルのカタログを求める要求メッセージ（たとえば、図４に示すアクセス要求４０４）がクライアントアプリケーションまたはクラウド１５０から自動的に送られる。別の実装形態では、ユーザがログインした後にユーザインターフェースにおけるオプションを選択したことに応答して、クライアントアプリケーションまたはクラウド１５０を使用してメディアファイルのカタログを求める要求メッセージが送られる。いくつかの実装形態では、メディアファイルのカタログがクライアントアプリケーションまたはクラウド１５０で受信された後、ユーザはユーザインターフェースにおける更新オプションを選択することによっていつでもメディアファイルの更新済みカタログを要求することができる。しかしながら、他の実施形態では、ユーザは、ルータ１１０にアクセスし、他のウェブベースリモートアクセス機構またはモバイルブロードバンドリモートアクセス機構を介してメディアファイルのカタログを得てもよいことに留意されたい。ブロック２０６の後で、フローはブロック２０８に進む。
【００５３】
[0057]ブロック２０８において、リモートネットワークノードからルータ１１０において受信された送信が許可されているかどうかを判定する。一実装形態では、ルータ１１０のリモートメディアアクセスユニット１１４は、（たとえば、クライアントアプリケーションまたはクラウド１５０を介して）ＷＡＮ１４０内のリモートノードにおいて入力されたユーザの証明書を検証し認証する。リモートメディアアクセスユニット１１４は、メディアファイルのカタログを要求するメッセージを送信したサービスまたはアプリケーションを検証し認証してもよく、たとえば、リモートメディアアクセスユニット１１４は、ネットワークデバイス１２２内で運営されているクライアントアプリケーションまたはクラウド１５０によって提供されるサービスを検証し認証してもよい。いくつかの実装形態では、リモートメディアアクセスユニット１１４およびリモートネットワークノードは、ユーザの証明書および／またはリモートネットワークノードに関連するサービス／アプリケーションを検証し認証することに加えて、データおよびその他のメッセージの送信のための暗号化技術およびその他のセキュリティ技術を実施してもよい。リモートネットワークノードからの送信が許可されていないと判定された場合、送信は破棄され、フローは終了する。リモートネットワークノードからの送信が許可されていると判定された場合、フローはブロック２１０に進む。
【００５４】
[0058]ブロック２１０において、カタログ情報がルータ１１０からＷＡＮ１４０に送られ、複数のメディアファイルのカタログがユーザに提示される。たとえば、リモートメディアアクセスユニット１１４はカタログ情報をルータ１１０からネットワークデバイス１２２に直接送ってもよく（たとえば、図４に示すカタログ情報４０６を参照されたい）、カタログ情報は、ネットワークデバイス１２２に記憶され、次いで、クライアントアプリケーション（たとえば、ウェブブラウザまたはルータ１１０との他のユーザインターフェース）を使用して複数のメディアファイルのカタログがネットワークデバイス１２２のディスプレイ上に提示される。別の例では、リモートメディアアクセスユニット１１４は、カタログ情報をルータ１１０からクラウドコンピューティングネットワーク１５０に送ってもよく、カタログ情報はクラウド１５０に記憶され、次いでクラウド１５０内のサーバのうちの１つが、ユーザがログインされたウェブサイトまたはクラウドインターフェース（あるいは他のウェブベースのリモートアクセスサービス）上でメディアファイルのカタログを提示してもよい。たとえば、ユーザは、ユーザがルータ１１０にリモートにアクセスし、カタログ情報を受信し、メディアファイルのカタログをユーザに提示することを可能にするクラウド１５０のサーバのうちの１つまたは複数において運営されているウェブサイトまたはクラウドインターフェースにログインしてもよい。図１に示すように、いくつかの実施形態では、ルータ１１０のリモートメディアアクセスユニット１１４は、ＷＡＮ１４０を介してクライアントデバイス１２２および／またはクラウド１５０と通信するためのネットワーキングプロトコル（たとえば、ＴＣＰ／ＩＰ）を実装してもよい。
【００５５】
[0059]いくつかの実装形態では、ルータ１１０のリモートメディアアクセスユニット１１４は、ルータ１１０において作成されたメディアファイルのカタログをネットワークデバイス１２２、クラウドコンピューティングネットワーク１５０の１つまたは複数のサーバ、あるいはインターネット１２０における１つまたは複数の他のサーバに直接送り、メディアファイルのカタログをユーザに提示してもよい。一例では、メディアファイルのカタログは、各メディアファイルのコンテンツに関連する名前（たとえば、映画、楽曲、画像のタイトルなど）および／または他の情報（たとえば、メディアファイルに関連するファイル拡張子、ファイルサイズなど）が表示される、様々な範疇（たとえば、映像、音声、画像、その他（テキスト）など）のメディアファイルのリストとしてユーザに提示されてもよい。メディアファイルのカタログを様々な方法でユーザに提示できることに留意されたい。一例では、様々な範疇によって構成されたメディアファイルの完全なリストをユーザに提示してもよい。別の例では、メディアファイルの様々な範疇を表すそれぞれに異なるアイコンを提示してもよく、ユーザは、ユーザがメディアファイルのどの範疇を見たいかを選択してもよい。
【００５６】
[0060]いくつかの実装形態では、ルータ１１０は、ルータ１１０がメディアファイルを発見し、メディアファイルに関連するファイル名、ファイル拡張子、およびメタデータを得たことに応答して、各メディアファイルのコンテンツに関連する種類、タイトル、およびその他の情報を求めてもよい。たとえば、ルータ１１０は、各メディアファイルの名前および／またはメタデータを解析してタイトル（たとえば、映画、楽曲、画像のタイトルなど）および／または各メディアファイルのコンテンツに関連する他の情報（たとえば、ジャンル、１人または複数のアーチスト、アルバム名など）を求めてもよい。いくつかの実装形態では、ルータ１１０は、メディアファイルの種類およびメディアファイルのコンテンツに関連するタイトルを判定した後、ファイルコンテンツに関連するさらなる情報（たとえば、ファイルコンテンツのタイトルに一致する情報）を求めてインターネットを探索してもよい。たとえば、ルータ１１０は、メディアファイルが映画であると判定し、かつ映画のタイトルを判定した場合、映画のテキスト説明、映画の批判的な批評、および／または映画のプレビューを求めてインターネットを探索してもよい。別の例では、ルータ１１０は、メディアファイルが楽曲であると判定し、かつ楽曲の名前を判定した場合、アルバムカバーの画像、歌詞、および／または楽曲のプレビューを求めてインターネットを探索してもよい。ルータ１１０は、ルータ１１０がネットワークデバイス１２２またはウェブサーバに送出するカタログ情報／ファイル内のファイルコンテンツに関連するこのさらなる情報（および／またはさらなる情報へのリンク）を含んでもよい。この場合、メディアファイルのカタログがユーザに提示されるときに、さらなる情報（たとえば、コンテンツの説明、批評、サムネイル画像など）もユーザに（たとえば、ユーザが１つまたは複数のメディアファイルを選択したときに）提示されてもよい。たとえば、音声ファイルの場合、アルバムカバーのサムネイル画像を楽曲の名前の隣に表示してもよい。さらに、ユーザインターフェースは、ユーザが情報と対話するのを可能にし、たとえばユーザが映画のタイトルをダブルクリックした場合、映画の説明または批評を表示することができる。いくつかの実装形態では、ルータ１１０は、ファイルコンテンツに関連するさらなる情報を求めてインターネットまたはデータベースの探索を実行するのではなく、カタログ情報（たとえば、種類／範疇、ファイル名、ファイル拡張子、ファイルサイズ、コンテンツタイトル、コンテンツジャンル、コンテンツアーチストなど）をウェブサーバに送り、（たとえば、クラウド１５０における）ウェブサーバは、インターネット探索を実行し、さらなる情報／ファイルをユーザに提示できるようにカタログに追加してもよい。いくつかの実装形態では、ルータ１１０は各メディアファイルのコンテンツに関連するメタデータをカタログ情報と一緒に（またはカタログ情報の一部として）送ってもよい。ブロック２１０の後、フローは、いくつかの実施形態によるネットワークメディア発見およびリモートアクセス機構を実現するためのさらなる例示的な動作を示す図２の流れ図の続きである図３のブロック２１２に進む。
【００５７】
[0061]ブロック２１２において、ユーザに提示されているメディアファイルのカタログに含まれるメディア画像ファイルのうちの１つまたは複数を要求するメッセージがルータ１１０においてリモートネットワークノードから受信される。たとえば、ユーザがユーザインターフェースを介して１つまたは複数のメディアファイルをダブルクリックするかまたは他の方法で選択すると、１つまたは複数のメディアファイルを要求するメッセージがネットワークデバイス１２２からルータ１１０に送られるかまたはネットワークデバイス１２２からクラウド１５０（または他のウェブサーバ）に送られ、次いでルータ１１０に送られる（たとえば、図４に示すファイル要求４０８を参照されたい）。一実装形態では、ルータ１１０において受信される要求メッセージは、１つまたは複数の要求されたメディアファイルに関連する名前、タイトル、種類、および／またはその他の情報を含んでもよい。たとえば、要求メッセージは、メディアファイル（たとえば、音楽ファイル）の種類ならびにメディアファイルのタイトルおよび／または名前（たとえば、楽曲のタイトル）を示してもよい。別の実装形態では、メディア発見ユニット１１２は、カタログを作成する際にカタログ内の各メディアファイル（たとえば、各カタログエントリ）をカタログエントリＩＤに関連付けておいてもよく、カタログエントリＩＤはカタログ情報の一部として含められてもよい。この実装形態では、ルータ１１０において受信される要求メッセージは、１つまたは複数の要求されたメディアファイルに関連する１つまたは複数のカタログエントリＩＤを示してもよい。ブロック２１２の後で、フローはブロック２１４に進む。
【００５８】
[0062]ブロック２１４において、要求メッセージに含まれる情報に基づいて１つまたは複数の要求されたメディアファイルを識別する。一実装形態では、メディア発見ユニット１１２は、要求メッセージに含まれる情報に基づいて１つまたは複数の要求されたメディアファイルを識別する。たとえば、メディア発見ユニット１１２は、要求メッセージに含まれる名前、タイトル、種類、カタログエントリＩＤ、および／または他の情報に基づいて１つまたは複数の要求されたメディアファイルを識別する。メディア発見ユニット１１２は、要求メッセージに含まれる情報に基づいて、要求メッセージに含まれる情報にアクセスしてその情報をルータ１１０に記憶されているメディアファイルのカタログの情報と比較することによって１つまたは複数の要求されたメディアファイルを識別してもよい。さらに、メディアファイルのカタログにおいて１つまたは複数の要求されたメディアファイルが識別された後、メディア発見ユニット１１２は、１つまたは複数の要求されたメディアファイルに関連するカタログ情報から、ＬＡＮ１００内において１つまたは複数の要求されたファイルが記憶されている位置を判定してもよい。たとえば、メディア発見ユニット１１２は、ＬＡＮ１００のネットワーク１０２のうちでどの１つまたは複数のネットワークデバイス１０２が１つまたは複数の要求されたメディアファイルを記憶しているか（たとえば、１つまたは複数の要求されたメディアファイルが記憶されている１つまたは複数のネットワークデバイス１０２に関連するアドレス）を判定してもよい。いくつかの実施形態では、リモートメディアアクセスユニット１１４は、メディア発見ユニット１１２と協働して、要求メッセージに含まれる情報に基づいて１つまたは複数の要求されたメディアファイルを識別してもよいことに留意されたい。たとえば、リモートメディアアクセスユニット１１４は、ルータ１１０において受信された要求メッセージを検出し、次いでメディア発見ユニット１１２と協働して１つまたは複数の要求されたメディアファイルを識別してもよい。ブロック２１４の後で、フローはブロック２１６に進む。
【００５９】
[0063]ブロック２１６において、１つまたは複数の要求されたメディアファイルをユーザに提示できるようにルータ１１０からリモートネットワークノードに送る。いくつかの実装形態では、１つまたは複数の要求されたメディアファイルは、ＬＡＮ内の対応するネットワークデバイス１０２から送られ、ルータ１１０を通して（たとえば、リモートメディアアクセスユニット１１４を介して）ＷＡＮ１４０に転送される。場合によっては、要求されたメディアファイルが一時的にルータ１１０に記憶されても、および／またはＷＡＮ１４０内のネットワークデバイス１２２もしくはウェブサーバに一時的に記憶されてもよい。たとえば、映像ファイルまたは音楽ファイルが、ユーザに提示できるようにＬＡＮ１００からネットワークデバイス１２２またはクラウド１５０に（たとえば、ネットワークデバイス１２２上のブラウザまたはその他のアプリケーションを介して）ストリーミングされてもよい。送信されて一時的に記憶されたメディアファイルは、ユーザがコンテンツを閉じたとき、コンテンツが再生を停止したとき、ユーザがログオフするかまたはセッションを終了したときなどに自動的に削除されてもよい。いくつかの実装形態では、メディア発見ユニット１１２が（たとえばカタログ情報から）１つまたは複数の要求されたメディアファイルの位置を判定した後、メディア発見ユニット１１２および／またはリモートメディアアクセスユニット１１４は、リモートメディアアクセスユニット１１４がメディアファイルをＷＡＮ１４０に転送することができるように、ＬＡＮ１００内の対応する１つまたは複数のネットワークデバイス１０２から１つまたは複数の要求されたメディアファイルを取り出してもよい。一例では、メディア発見ユニット１１２が（たとえばカタログ情報から）１つまたは複数の要求されたメディアファイルの位置を判定した後、メディア発見ユニット１１２および／またはリモートメディアアクセスユニット１１４は、対応する１つまたは複数のネットワークデバイス１０２に１つまたは複数の要求されたメディアファイル（たとえば、図４に示す１つまたは複数の要求されたファイル４１２）をルータ１１０に送るように求める要求メッセージ（たとえば、図４に示すファイル要求４１０）を送ってもよい。リモートメディアアクセスユニット１１４は次いで、メディアファイル（たとえば、図４に示す１つまたは複数の要求されたファイル４１４）をＷＡＮ１４０内のリモートネットワークデバイス１２２に転送してもよい。いくつかの実装形態では、ルータ１１０のメディア発見ユニット１１２および／またはリモートメディアアクセスユニット１１４は、リモートネットワークノード（たとえば、ネットワークデバイス１２２またはクラウド１５０）に関連する１つまたは複数の宛先アドレス（たとえば、ＩＰアドレス）にメディアファイルを転送してもよい。ブロック２１６の後で、フローはブロック２１８に進む。
【００６０】
[0064]ブロック２１８において、リモートネットワークノードに１つまたは複数のメディアファイルを要求するさらなる要求メッセージがルータ１１０において受信されたかどうかを判定する。さらなる要求メッセージが受信されたと判定された場合、フローはループしてブロック２１４に戻り、そこで１つまたは複数のさらなる要求されたメディアファイルが識別される。さらなる要求メッセージは受信されてないと判定された場合、フローはブロック２２０に進む。
【００６１】
[0065]ブロック２２０において、ユーザがリモートネットワークノードにおいてログアウトしたかどうかを判定する。ユーザがログアウトしていると判定された場合、フローは終了する。ユーザがログアウトしていないと判定された場合、フローはループしてブロック２１８に戻り、そこで、ルータ１１０においてリモートネットワークノードからさらなる要求メッセージが受信されたかどうかが判定される。
【００６２】
[0066]図１〜図３および本明細書において説明する動作は、実施形態の理解を助けることを意図する例であり、実施形態を限定するため、または特許請求の範囲を限定するために使用されるべきではないことを理解されたい。実施形態は、追加の動作を実行すること、より少ない動作を実行すること、各動作を異なる順序で実行すること、各動作を並行して実行すること、およびいくつかの動作を異なるように実行することが可能である。いくつかの実装形態では、ルータ１１０は、ＬＡＮ１００の様々なネットワークデバイス１０２においていつでもメディアファイルの更新済みカタログが利用できるように、ＬＡＮ１００において発見手順を連続的または周期的に実行してもよい。さらに、ルータ１１０は、（たとえば、新しいネットワークデバイス１０２がネットワークに加入した場合、または既存のネットワークデバイス１０２がネットワークから離脱した場合）ＬＡＮ１００において検出される１つまたは複数のイベントに基づいて発見手順を実行してもよい。一例では、ルータ１１０は、新しいネットワークデバイス１０２を示すネットワークイベントを検出したことに応答して、新しいネットワークデバイス１０２に記憶されているメディアファイルおよびテキストファイルのみを発見する（かつ次の予定された時間まで待機し、その時点で全発見手順を実行する）ことができる。別の例では、ルータ１１０は、既存のネットワークデバイス１０２がＬＡＮ１００から離脱した（あるいはネットワークデバイス１０２が利用不能であるかまたは誤動作している）ことを示すネットワークイベントを検出したことに応答して、ファイルのカタログからその特定のネットワークデバイス１０２に関連するメディアファイルおよびテキストファイルを検出する（かつ次の予定された時間まで待機し、その時点で全発見手順を実行する）ことのみが可能である。いくつかの実装形態では、ルータ１１０は、ＬＡＮ１００のネットワークデバイス１０２において発見されるメディアファイルのカタログ（たとえば、メディアファイルおよびメタデータのリスト）を作成して記憶し、実際の（または完全な）メディアファイルは記憶しないので、ルータ／ゲートウェイの通常の量のメモリおよびストレージによって設計されてもよい。ルータ１１０は、完全なメディアファイルをルータ１１０に記憶する必要なしに、かつ変更が検出されたときに完全なメディアファイルを更新する必要なしに、ＬＡＮ１００の様々なネットワークデバイス１０２に記憶されているメディアファイルのうちの大部分またはすべてのメディアファイルの完全な更新済みリストへのリモートユーザアクセスを可能にしてもよい。
【００６３】
[0067]いくつかの実施形態では、ルータ１１０のメディア発見ユニット１１２は、ＬＡＮ１００のネットワークデバイス１０２において利用可能なメディアファイルを発見したことに加えて、発見技術を実施して、ＬＡＮ１００のユーザ／所有者に関連するウェブベースまたはクラウドベースのストレージアカウント（以下ではＷＡＮベースのストレージアカウントと呼ぶ）に記憶されているメディアファイル（および他の種類のファイル）を見出す。ＷＡＮベースのストレージアカウントに記憶されているメディアファイルを発見した後、このようなメディアファイルに関連するカタログエントリを上記に図２〜図３を参照して説明したのと同じメディアファイルのカタログに含めてもよい。たとえば、いくつかの実装形態では、ＬＡＮ１００のユーザ／所有者はユーザ名／パスワードおよびその他のログイン証明書をルータ１１０に供給してもよく、ルータ１１０は、ログイン証明書を後で発見プロセス時に使用できるように記憶してもよい。ルータ１１０は、発見プロセス時に、ログイン証明書を使用してＷＡＮベースのストレージアカウントにアクセスしてもよい。同様に、上述のように、ログイン後に、ルータ１１０はＷＡＮベースのストレージアカウントに記憶されているメディアファイルおよびテキストファイルに関連する情報（たとえば、ファイル名、ファイル拡張子、および／またはメタデータ）を得て、ファイルに関連するカタログエントリを作成してもよい。同様に、いくつかの実装形態では、ルータ１１０は発見技術を実施して、ソーシャルメディアアカウント、ウェブベースのｅメールアカウントなどの他の種類のＷＡＮベースのアカウントに関連するファイルを検出し、このようなファイルのカタログエントリを作成してもよい。
【００６４】
[0068]いくつかの実施形態では、ルータ１１０は、ユーザがルータ１１０の設定をリモートに管理しかつ／またはルータ１１０に対して診断分析をリモートに実行するのを可能にしてもよい。一例では、ルータ１１０は、ユーザがルータ１１０のペアレンタル（parental）制御設定を管理し更新するのを可能にしてもよい。いくつかの実施形態では、ルータ１１０は、ＬＡＮ１００内のメディアファイル、テキストファイル、およびその他のデータファイルへのアクセスを可能にすることに加えて、ユーザが、構成ファイル、あるいはスマート機器、デジタルサーモスタット、デジタルビデオレコーダ（ＤＶＲ）などのＬＡＮ１００内のいくつかのデバイスのリモートな管理、プログラム、および／または制御を行うのを可能にするＬＡＮ１００内の他の種類のファイルを発見してもよい。ＬＡＮ１００内のこれらの種類のデバイスへのリモートアクセスは、ルータ１１０において作成されＷＡＮ１４０内のリモートノード（たとえば、ウェブサーバまたはリモートクライアントコンピュータ）に送られるカタログを使用して可能にされてもよい。たとえば、カタログは、構成ファイル、アドレス情報、セキュリティ情報、ユーザ証明書、および／またはＬＡＮ１００内のいくつかのデバイスのリモートな管理、プログラム、および／または制御を行うのを可能にする他の種類のファイル／情報を含んでもよい。
【００６５】
[0069]当業者によって諒解されるように、本発明の主題の態様は、システム、方法、またはコンピュータプログラム製品として具現化することができる。したがって、本発明の主題の態様は、完全にハードウェア実施形態、ソフトウェア実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、または本明細書ではすべて一般に「回路」、「モジュール」もしくは「システム」と呼ばれ得るソフトウェア態様とハードウェア態様とを結合する一実施形態の形態をとることができる。さらに、本発明の主題の態様は、媒体上でコンピュータ可読プログラムコードが具現化される１つまたは複数のコンピュータ可読媒体内で具現化されるコンピュータプログラム製品の形態をとることができる。
【００６６】
[0070]１つまたは複数のコンピュータ可読媒体の任意の組合せを利用することができる。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、限定はしないが、たとえば、電子、磁気、光、電磁、赤外線、もしくは半導体のシステム、装置、もしくはデバイス、または上記の任意の適切な組合せであり得る。コンピュータ可読記憶媒体のより具体的な例（非網羅的なリスト）には、１つもしくは複数の有線を有する電気接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、ポータブルコンパクトディスク読取り専用メモリ（ＣＤ−ＲＯＭ）、光記憶デバイス、磁気記憶デバイス、または上記の任意の適切な組合せが含まれるはずである。この文書の文脈では、コンピュータ可読記憶媒体は、命令を実行するシステム、装置、もしくはデバイスにより、またはそれらとともに使用するためのプログラムを包含または記憶できる、任意の有形媒体であり得る。コンピュータ可読信号媒体は、たとえば、帯域内で、または搬送波の一部として、その中に具現化されたコンピュータ可読プログラムコードを有する、伝搬されるデータ信号を含むことができる。そのような伝搬信号は、限定はしないが、電磁気、光、またはそれらの任意の適切な組合せを含む、様々な形態のうちのいずれかをとることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、命令を実行するシステム、装置、もしくはデバイスにより、またはそれらとともに使用するためのプログラムを通信、伝搬、または転送できる、任意のコンピュータ可読媒体であり得る。コンピュータ可読媒体上で具現化されるプログラムコードは、限定はしないが、ワイヤレス、有線、光ファイバケーブル、ＲＦなど、または上記の任意の適切な組合せを含む、任意の適切な媒体を使用して送信することができる。
【００６７】
[0071]本発明の主題の態様のための動作を実行するためのコンピュータプログラムコードは、オブジェクト指向プログラミング言語、たとえばＪａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ、Ｃ＋＋など、および従来の手続き型プログラミング言語、たとえば「Ｃ」プログラミング言語または類似のプログラミング言語を含めて、１つまたは複数のプログラミング言語の任意の組合せで書くことができる。プログラムコードは、完全にユーザのコンピュータ上で実行されても、または部分的にユーザのコンピュータ上で実行されても、またはスタンドアロンのソフトウェアパッケージとして実行されても、または部分的にユーザのコンピュータにおいて、また部分的にリモートコンピュータ上で実行されても、または完全にリモートコンピュータもしくはサーバ上で実行されてもよい。最後のシナリオでは、リモートコンピュータが、ローカルエリアネットワーク（ＬＡＮ）もしくはワイドエリアネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または、接続が（たとえば、インターネットサービスプロバイダを使用してインターネットを介して）外部コンピュータに対して行われてもよい。
【００６８】
[0072]本発明の主題の態様は、本発明の主題の実施形態による方法、装置（システム）およびコンピュータプログラム製品の流れ図および／またはブロック図を参照して記載されている。流れ図および／またはブロック図の各ブロック、ならびに流れ図および／またはブロック図内のブロックの組合せは、コンピュータプログラム命令によって実装されてもよいことが理解されよう。これらのコンピュータプログラム命令は、機械を製造するために、汎用コンピュータ、専用コンピュータ、または他のプログラマブルデータ処理装置のプロセッサに提供することができ、その結果、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令は、流れ図および／またはブロック図の１つまたは複数のブロック内で指定された機能／動作を実装するための手段を作成する。
【００６９】
[0073]これらのコンピュータプログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスに、特定の方式で機能するように命令できるコンピュータ可読媒体に記憶することができ、その結果、コンピュータ可読媒体に記憶された命令は、流れ図および／またはブロック図の１つまたは複数のブロック内で指定された機能／動作を実装する命令を含む製品を製造する。
【００７０】
[0074]コンピュータプログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスにロードされて、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他のデバイス上で実行させて、コンピュータ実装プロセスを作成し、その結果、コンピュータまたは他のプログラマブル装置上で実行される命令は、流れ図および／またはブロック図の１つまたは複数のブロック内で指定された機能／動作を実装するためのプロセスを実現する。
【００７１】
[0075]図５は、いくつかの実施形態による、ワイドエリアネットワークにおけるネットワークメディア発見およびリモートアクセスのための機構を含むネットワークデバイス５００の一実施形態のブロック図である。いくつかの実施形態では、ネットワークデバイス５００は、ネットワークに関連するパケットを受信し、処理し、経路指定する２つ以上のネットワーク（たとえば、ＬＡＮおよびＷＡＮ）間のネットワークトラフィック管理ノードであり、たとえば、ネットワークトラフィック管理ノードはＬＡＮ（たとえば、図１に示すＬＡＮ１００）のルータ／ゲートウェイであってもよい。しかしながら、他の実装形態では、ネットワークデバイス５００が、たとえばケーブルモデム、ワイヤレスアクセスポイント、ネットワークブリッジ、ネットワークスイッチ、デスクトップコンピュータ、ゲームコンソール、モバイルコンピューティングデバイスなどの、上記に図１〜図４を参照して説明した機能を実施するように構成することのできる他の適切な種類のネットワークデバイスであってもよいことに留意されたい。ネットワークデバイス５００は、（場合によっては、たとえば、複数のプロセッサ、複数のコア、複数のノードを含み、かつ／またはマルチスレッドを実装する）プロセッサユニット５０２を含む。ネットワークデバイス５００は、メモリユニット５０６を含む。メモリユニット５０６は、システムメモリ（たとえば、キャッシュ、ＳＲＡＭ、ＤＲＡＭ、ゼロキャパシタＲＡＭ、ツイントランジスタＲＡＭ、ｅＤＲＡＭ、ＥＤＯ  ＲＡＭ、ＤＤＲ  ＲＡＭ、ＥＥＰＲＯＭ（登録商標）、ＮＲＡＭ、ＲＲＡＭ（登録商標）、ＳＯＮＯＳ、ＰＲＡＭなどのうちの１つもしくは複数）または機械可読記憶媒体の上述の考えられる実現形態のうちの任意の１つもしくは複数とすることができる。ネットワークデバイス５００はまた、バス５１０（たとえば、ＰＣＩ、ＩＳＡ、ＰＣＩ−Ｅｘｐｒｅｓｓ、ＨｙｐｅｒＴｒａｎｓｐｏｒｔ（登録商標）、ＩｎｆｉｎｉＢａｎｄ（登録商標）、ＮｕＢｕｓ、ＡＨＢ、ＡＸＩなど）と、ワイヤレスネットワークインターフェース（たとえば、Ｂｌｕｅｔｏｏｔｈインターフェース、ＷＬＡＮ８０２．１１インターフェース、ＷｉＭＡＸ（登録商標）インターフェース、ＺｉｇＢｅｅ（登録商標）インターフェース、ワイヤレスＵＳＢインターフェースなど）、および有線ネットワークインターフェース（たとえば、Ｅｔｈｅｒｎｅｔ（登録商標）インターフェース、電力線通信インターフェースなど）のうちの少なくとも１つを含む、１つまたは複数のネットワークインターフェース５０８とを含む。図示のように、１つまたは複数のネットワークインターフェース５０８はメディア発見ユニット５１２とリモートメディアアクセスユニット５１４とをさらに含む。たとえば、メディア発見ユニット５１２およびリモートメディアアクセスユニット５１４は、１つまたは複数のネットワークインターフェース５０８のネットワークインターフェースカードまたはネットワークインターフェースモジュール内に実装されてもよい。メディア発見ユニット５１２およびリモートメディアアクセスユニット５１４は、上記に図１〜図４を参照して説明したようにネットワークデバイス５０��のネットワークメディア発見およびリモートアクセス機構を実現するように動作可能であってもよい。
【００７２】
[0076]これらの機能のいずれも、ハードウェア内に部分的に（または全体が）実装され、ならびに／あるいはプロセッサユニット５０２上に部分的に（または全体が）実装されてもよい。たとえば、この機能は、１つまたは複数の特定用途向け集積回路、１つまたは複数のシステムオンチップ（ＳｏＣ）、あるいは他の種類の１つまたは複数の集積回路によって、プロセッサユニット５０２内に実装される論理回路、周辺デバイスまたは周辺カード上のコプロセッサ、ネットワークインターフェース５０８内に実装される別個のプロセッサおよび／またはメモリなどにおいて実現されてもよい。さらに、実現形態は、より少ない構成要素、または図５に示されていない追加の構成要素（たとえば、ビデオカード、オーディオカード、追加のネットワークインターフェース、周辺デバイスなど）を含み得る。プロセッサユニット５０２、メモリユニット５０６、およびネットワークインターフェース５０８は、バス５１０に結合される。メモリユニット５０６は、バス５１０に結合されるものとして示されているが、プロセッサユニット５０２に結合され得る。
【００７３】
[0077]実施形態は様々な実装および利用に関して記載されているが、これらの実施形態が例示的であり、本発明の主題の範囲がそれらに限定されないことを理解されよう。一般に、本明細書で説明するネットワークに接続されたメディアゲートウェイを実装するための技法は、任意の１つまたは複数のハードウェアシステムに適応する設備によって実施されてもよい。多くの変形、修正、追加、および改善が可能である。
【００７４】
[0078]単一の例として本明細書で説明した構成要素、動作または構造について複数の例が提供され得る。最後に、様々な構成要素、動作およびデータストア間の境界は、どちらかと言えば任意のものであり、特定の動作は特定の例示的な構成の文脈で示されている。機能の他の割当てが想定され、それらは本発明の主題の範囲内に入り得る。一般に、例示的な構成の別個の構成要素として提示される構造および機能は、結合された構造または構成要素として実施され得る。同様に、単一の構成要素として提示される構造および機能は、別個の構成要素として実施され得る。これらおよび他の変形、修正、追加、および改善は、本発明の主題の範囲内に入り得る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ローカルエリアネットワークにおいてファイルを発見する方法であって、
前記ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見することと、
前記複数のファイルに関連する情報に少なくとも部分的に基づいて前記複数のファイルのカタログを作成することと、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージをワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログをリモートネットワークノードに供給することとを備える方法。
［Ｃ２］
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して１つまたは複数のファイルを前記リモートネットワークノードに供給することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ３］
前記発見すること、作成すること、および供給することは、前記ローカルエリアネットワークのネットワークトラフィック管理ノードによって実行される、［Ｃ１］に記載の方法。
［Ｃ４］
前記ネットワークトラフィック管理ノードは、前記ローカルエリアネットワークのルータを備える、［Ｃ３］に記載の方法。
［Ｃ５］
前記ネットワークトラフィック管理ノードは、前記ローカルエリアネットワークのルータ、アクセスポイント、ケーブルモデム、およびネットワークスイッチのうちの１つまたは複数を含むコンピュータシステムを備える、［Ｃ３］に記載の方法。
［Ｃ６］
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信することと、
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することと、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給することとをさらに備える、［Ｃ１］に記載の方法。
［Ｃ７］
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを前記識別することは、
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを示すように前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定することと、
前記１つまたは複数のカタログエントリ識別子に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することとを備える、［Ｃ６］に記載の方法。
［Ｃ８］
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別したことに応答してさらに、
前記リモートネットワークノードによって要求された前記１つまたは複数のファイルが記憶されている前記複数の前記ネットワークデバイスのうちの１つまたは複数を判定することをさらに備える、［Ｃ６］に記載の方法。
［Ｃ９］
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別したことに応答してさらに、
前記複数のネットワークデバイスのうちの前記１つまたは複数に前記１つまたは複数のファイルを前記ローカルエリアネットワークのネットワークトラフィック管理ノードを介して前記リモートネットワークノードに供給するよう要求するメッセージを前記ネットワークトラフィック管理ノードから前記ローカルエリアネットワークの前記複数のネットワークデバイスのうちの前記１つまたは複数に送ること、または
前記ネットワークトラフィック管理ノードにおいて、前記ローカルエリアネットワークの前記複数のネットワークデバイスの前記１つまたは複数から前記１つまたは複数のファイルを取り出し、前記１つまたは複数のファイルを前記ネットワークトラフィック管理ノードから前記リモートネットワークノードに供給することの一方をさらに備える、［Ｃ８］に記載の方法。
［Ｃ１０］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を求めることをさらに備える、［Ｃ１］に記載の方法。
［Ｃ１１］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を前記求めることは、前記複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めることを備え、
前記複数のファイルに関連する前記情報に少なくとも部分的に基づいて前記複数のファイルのカタログを前記作成することは、前記複数のファイルに関連する前記ファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数に応じて構成された前記複数のファイルの前記カタログを作成することを備える、［Ｃ１０］に記載の方法。
［Ｃ１２］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を前記求めることは、前記複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めることを備え、
前記複数のファイルに関連する前記情報に少なくとも部分的に基づいて前記複数のファイルのカタログを前記作成することは、前記複数のファイルに関連する前記メタデータを解析して前記複数のファイルの各々に関連するさらなる情報を求めることと、前記複数のファイルに関連する前記ファイル名、前記ファイル拡張子、および前記メタデータから解析された前記さらなる情報のうちの１つまたは複数に応じて構成された前記複数のファイルの前記カタログを作成することとを備える、［Ｃ１０］に記載の方法。
［Ｃ１３］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を前記求めることは、前記複数のファイルの各々に関連するファイルの種類を判定することおよび前記複数のファイルの各々のコンテンツに関連する情報を求めることのうちの１つまたは複数を備える、［Ｃ１０］に記載の方法。
［Ｃ１４］
前記複数のファイルに関連する前記情報に少なくとも部分的に基づいて前記複数のファイルのカタログを前記作成することは、前記複数のファイルの各々に関連するファイルの前記種類および前記複数のファイルの各々の前記コンテンツに関連する前記情報に応じて構成された前記複数のファイルの前記カタログを作成することを備える、［Ｃ１３］に記載の方法。
［Ｃ１５］
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して、各ファイルのコピーを前記リモートネットワークノードに送ること、各ファイルを前記リモートネットワークノードにストリーミングすること、または前記ローカルエリアネットワークのネットワークトラフィック管理ノードに記憶されている前記ファイルに前記リモートネットワークノードがアクセスするのを可能にすることのうちの１つまたは複数によって前記リモートネットワークノードに前記１つまたは複数のファイルを供給することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ１６］
発見手順を周期的に実行して前記ローカルエリアネットワークのネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新すること、
ローカルエリアネットワークに１つまたは複数の新しいネットワークデバイスが追加されたことを検出したことに応答して前記発見手順を実行して前記ネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新すること、および
前記ローカルエリアネットワークに１つまたは複数の新しいファイルが記憶されたことを検出したことに応答して前記発見手順を実行して前記ネットワークトラフィック管理ノードにおける前記複数のファイルの前記カタログを更新することのうちの少なくとも１つをさらに備える、［Ｃ１］に記載の方法。
［Ｃ１７］
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルは少なくとも複数のメディアファイルを含む、［Ｃ１］に記載の方法。
［Ｃ１８］
前記ローカルエリアネットワークの前記複数のネットワークデバイスは、ノートブックコンピュータ、タブレットコンピュータ、モバイル電話、デスクトップコンピュータ、ゲームコンソール、デジタルカメラ、テレビジョン、スマート機器のうちの少なくとも１つまたは複数を備える、［Ｃ１］に記載の方法。
［Ｃ１９］
前記ワイドエリアネットワークの前記リモートネットワークノードは、インターネットに通信可能に結合されたリモートコンピュータシステムを備える、［Ｃ１］に記載の方法。
［Ｃ２０］
プロセッサと、
前記プロセッサに結合され、
ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見し、
前記複数のファイルに関連する情報に少なくとも部分的に基づいて前記複数のファイルのカタログを作成するように構成されたメディア発見ユニットと、
前記プロセッサに結合され、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージをワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログをネットワークトラフィック管理デバイスから前記リモートネットワークノードに供給し、
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して前記１つまたは複数のファイルを前記リモートネットワークノードに供給するように構成されたリモートメディアアクセスユニットとを備えるネットワークトラフィック管理デバイス。
［Ｃ２１］
前記ローカルエリアネットワークのルータを備える、［Ｃ２０］に記載のネットワークトラフィック管理デバイス。
［Ｃ２２］
前記ローカルエリアネットワークのルータ、アクセスポイント、ケーブルモデム、およびネットワークスイッチのうちの１つまたは複数を含むコンピュータシステムを備える、［Ｃ２０］に記載のネットワークトラフィック管理デバイス。
［Ｃ２３］
前記リモートメディアアクセスユニットは、前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して、
前記ネットワークトラフィック管理デバイスにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別し、
前記リモートネットワークノードによって要求された前記１つまたは複数のファイルが記憶されている前記ローカルエリアネットワークの前記複数の前記ネットワークデバイスのうちの１つまたは複数を判定し、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給するようにさらに構成される、［Ｃ２０］に記載のネットワークトラフィック管理デバイス。
［Ｃ２４］
前記ネットワークトラフィック管理デバイスにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別するように構成された前記リモートメディアアクセスユニットは、
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを示すように前記ネットワークトラフィック管理デバイスにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定し、
前記１つまたは複数のカタログエントリ識別子に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別するように構成された前記リモートメディアアクセスユニットを備える、［Ｃ２３］に記載のネットワークトラフィック管理デバイス。
［Ｃ２５］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を求めるように構成された前記メディア発見ユニットは、前記複数のファイルに関連するファイル名、ファイル拡張子、およびメタデータのうちの１つまたは複数を求めるように構成された前記メディア発見ユニットを備える、［Ｃ２０］に記載のネットワークトラフィック管理デバイス。
［Ｃ２６］
前記複数のネットワークデバイスからの前記複数のファイルに関連する情報を求めるように構成された前記メディア発見ユニットは、前記複数のファイルの各々に関連するファイルの種類を判定し、前記複数のファイルの各々のコンテンツに関連する情報を求めるように構成された前記メディア発見ユニットを備える、［Ｃ２０］に記載のネットワークトラフィック管理デバイス。
［Ｃ２７］
１つまたは複数のプロセッサと、
前記１つまたは複数のプロセッサによって実行されたときに、ネットワークルータに、
複数のファイルに関連する情報に少なくとも部分的に基づいてローカルエリアネットワークの複数のネットワークデバイスに記憶されている前記複数のファイルのカタログを作成することと、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージを前記ネットワークルータにおいてワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログを前記ネットワークルータから前記リモートネットワークノードに供給することと、
１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して前記リモートネットワークノードのための前記複数のファイルの前記カタログにおいて前記１つまたは複数のファイルを識別することと、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給することとを備える動作を実行させる１つまたは複数の命令を記憶するように構成された１つまたは複数のメモリユニットとを備えるネットワークルータ。
［Ｃ２８］
前記１つまたは複数のプロセッサによって実行される前記１つまたは複数の命令は、前記ネットワークルータに、
発見手順を実行して前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルを検出することと、
前記複数のネットワークデバイスから前記複数のファイルに関連する前記情報を求めることとをさらに備える動作を実行させる、［Ｃ２７］に記載のネットワークルータ。
［Ｃ２９］
前記１つまたは複数のプロセッサによって実行される前記１つまたは複数の命令は、前記ネットワークルータに、
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを示す、前記ネットワークルータにおいて前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定することと、
前記１つまたは複数のカタログエントリ識別子に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することとをさらに備える動作を実行させる、［Ｃ２７］に記載のネットワークルータ。
［Ｃ３０］
１つまたは複数のプロセッサによって実行されたときに、前記１つまたは複数のプロセッサに、
ローカルエリアネットワークの複数のネットワークデバイスに記憶されている複数のファイルを発見することと、
前記複数のファイルに関連する情報に少なくとも部分的に基づいて前記複数のファイルのカタログを作成することと、
前記ローカルエリアネットワークの前記複数のネットワークデバイスに記憶されている前記複数のファイルへのアクセスを要求するメッセージをワイドエリアネットワークのリモートネットワークノードから受信したことに応答して前記複数のファイルの前記カタログを前記リモートネットワークノードに供給することとを備える動作を実行させる命令が記憶された１つまたは複数の機械可読記憶媒体。
［Ｃ３１］
前記動作は、
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信したことに応答して１つまたは複数のファイルを前記リモートネットワークノードに供給することをさらに備える、［Ｃ３０］に記載の機械可読記憶媒体。
［Ｃ３２］
前記動作は、
前記複数のファイルの前記カタログにおける１つまたは複数のファイルを要求するメッセージを前記リモートネットワークノードから受信することと、
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することと、
前記１つまたは複数のファイルを前記リモートネットワークノードに供給することとをさらに備える、［Ｃ３０］に記載の機械可読記憶媒体。
［Ｃ３３］
前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連する情報に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別する前記動作は、
前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを示すように前記リモートネットワークノードから受信された前記メッセージに含まれる前記１つまたは複数のファイルに関連付けられた１つまたは複数のカタログエントリ識別子を判定することと、
前記１つまたは複数のカタログエントリ識別子に基づいて前記複数のファイルの前記カタログにおいて前記リモートネットワークノードによって要求された前記１つまたは複数のファイルを識別することとを備える、［Ｃ３２］に記載の機械可読記憶媒体。
［Ｃ３４］
前記動作は、複数のネットワークデバイスからの前記複数のファイルに関連する前記情報を求めることをさらに備える、［Ｃ３０］に記載の機械可読記憶媒体。
【図１】
0006430251.tif 000002
【図２】
0006430251.tif 000003
【図３】
0006430251.tif 000004
【図４】
0006430251.tif 000005
【図５】
0006430251.tif 000006