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

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

▶ オンカム グローバル,インコーポレイテッドの特許一覧

特許6473166データをリモートサイトに提供する方法及びシステム
<>
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000003
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000004
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000005
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000006
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000007
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000008
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000009
  • 特許6473166-データをリモートサイトに提供する方法及びシステム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6473166
(24)【登録日】2019年2月1日
(45)【発行日】2019年2月20日
(54)【発明の名称】データをリモートサイトに提供する方法及びシステム
(51)【国際特許分類】
   H04L 12/66 20060101AFI20190207BHJP
   H04L 12/46 20060101ALI20190207BHJP
【FI】
   H04L12/66 B
   H04L12/46 E
【請求項の数】26
【全頁数】22
(21)【出願番号】特願2016-551258(P2016-551258)
(86)(22)【出願日】2015年2月19日
(65)【公表番号】特表2017-513269(P2017-513269A)
(43)【公表日】2017年5月25日
(86)【国際出願番号】US2015016516
(87)【国際公開番号】WO2015138099
(87)【国際公開日】20150917
【審査請求日】2017年11月22日
(31)【優先権主張番号】14/208,723
(32)【優先日】2014年3月13日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】512217499
【氏名又は名称】オンカム グローバル,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】アディル,ザヒール
(72)【発明者】
【氏名】ピノー,リチャード
(72)【発明者】
【氏名】ピノー,アダム
【審査官】 松崎 孝大
(56)【参考文献】
【文献】 特開2000−349821(JP,A)
【文献】 特開2009−147900(JP,A)
【文献】 特許第4718122(JP,B2)
【文献】 米国特許出願公開第2011/0231652(US,A1)
【文献】 米国特許第07069434(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/66
H04L 12/46
(57)【特許請求の範囲】
【請求項1】
要求データを提供する方法であって、
第1のサーバにおいて、データへの要求を受信することであって、前記データへの要求はゲートウェイを指定し、前記ゲートウェイはローカルサイトをネットワークに相互接続し、データ生成装置が前記ローカルサイトに設置され、前記ゲートウェイは、ネットワークを介して前記第1のサーバに動作可能に接続され、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであり、前記データへの要求は、第2のサーバでの所定のポート番号を含み、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記第2のサーバは前記データへの要求を前記第1のサーバに直接提供する、受信することと、
前記第1のサーバから、前記データへの要求を前記ゲートウェイに送信することであって、前記ゲートウェイは前記ネットワークを介して前記第2のサーバに直接接続され、前記ゲートウェイは前記データ生成装置にも直接接続され、前記データは、前記ゲートウェイによって検索され、前記ネットワークを介して前記第2のサーバの前記所定のポート番号に提供される、送信することと
を含む、方法。
【請求項2】
前記ゲートウェイの構成を変更又は更新するために、前記第1のサーバから前記ゲートウェイに構成データを提供することを更に含む、請求項1に記載の方法。
【請求項3】
前記第1のサーバから前記ゲートウェイに、構成要素の動作を開始又は停止する命令を提供することを更に含む、請求項1に記載の方法。
【請求項4】
前記第1のサーバにおいて、前記ゲートウェイから前記ゲートウェイに動作可能に接続される構成要素を特徴付ける構成要素データを受信することと、
前記第1のサーバにおいて、前記構成要素の仮想表現を取得することであって、前記仮想表現は、仮想制御インターフェースを含み、前記仮想制御インターフェースは、前記構成要素へのコマンド/命令の提供を可能にする、取得することと
を更に含む、請求項1に記載の方法。
【請求項5】
前記第1のサーバから、前記ゲートウェイに動作可能に接続された前記構成要素にコマンド/命令を提供することを更に含む、請求項4に記載の方法。
【請求項6】
要求データを提供する方法であって、
第2のサーバから第1のサーバに、データへの要求を送信することであって、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記データへの要求はゲートウェイを指定し、前記ゲートウェイはローカルサイトをネットワークに相互接続し、データ生成装置が前記ローカルサイトに設置され、前記ゲートウェイは、ネットワークを介して前記第1のサーバに動作可能に接続され、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであり、前記ゲートウェイは前記データ生成装置にも直接接続され、前記データへの要求は、前記第2のサーバでの所定のポート番号を含み、前記第1のサーバは、前記データへの要求を前記ゲートウェイに送信し、
前記データは前記ゲートウェイによって検索される、送信することと、
前記第2のサーバにおいて前記ネットワークを介して、前記所定のポート番号で前記データを受信することであって、前記データは前記ゲートウェイによって提供される、受信することと
を含む、方法。
【請求項7】
前記第2のサーバは、データレート測定構成要素を含み、前記方法は、
データレート測定テストを開始して、前記第2のサーバと前記ゲートウェイとの間のデータレートを測定するために、前記ネットワークを介して前記第2のサーバから前記ゲートウェイに開始信号を送信することであって、前記データレート測定テストの開始後、テストデータが前記ゲートウェイにより前記第2のサーバに提供される、送信することと、
前記データレート測定構成要素を使用して、前記第2のサーバと前記ゲートウェイとの間のデータレートを特定することと、
前記第2のサーバから前記データレートを前記ゲートウェイに提供することであって、所定のデータブロックレートを実質的に保証するために、データブロックサイズが、前記ゲートウェイにおいて計算される、提供することと
を更に含む、請求項6に記載の方法。
【請求項8】
要求データを提供する方法であって、
ネットワークを介してゲートウェイを第1のサーバに動作可能に接続することであって、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであることと、
前記ゲートウェイにおいて、データへの要求を受信することであって、前記データへの要求は、第2のサーバでの所定のポート番号を含み、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記第2のサーバは前記データへの要求を前記第1のサーバに直接提供する、受信することと、
前記ゲートウェイにおいて、前記データをデータソースから検索することと、
前記ネットワークを介して前記ゲートウェイを前記第2のサーバにおけるポートに動作可能に接続することであって、前記ポートは前記所定のポート番号に対応する、動作可能に接続することと、
前記ゲートウェイから前記データを前記第2のサーバに送信し、前記第2のサーバは前記データを前記リモートサイトに送信すること
を含む、方法。
【請求項9】
前記第2のサーバは、データレート測定構成要素を含み、前記方法は、
データレート測定テストを開始して、前記第2のサーバ間のデータレートを測定するために、前記ゲートウェイにおいて、前記ネットワークを介して前記第2のサーバから開始信号を受信することと、
前記データレート測定テストの開始後、前記ゲートウェイからテストデータを前記第2のサーバにテストデータを提供することであって、前記第2のサーバと前記ゲートウェイとの間のデータレートは、前記データレート測定構成要素を使用して特定され、前記ネットワークを介して前記ゲートウェイに提供される、提供することと、
所定のデータブロックレートを実質的に保証するために、前記ゲートウェイにおいて、データブロックサイズを計算することと
を更に含む、請求項8に記載の方法。
【請求項10】
前記ゲートウェイの構成を変更又は更新するために、前記ゲートウェイにおいて前記第1のサーバから、構成データを受信することを更に含む、請求項8に記載の方法。
【請求項11】
前記ゲートウェイにおいて前記第1のサーバから、構成要素の動作を開始又は停止する命令を受信することを更に含む、請求項8に記載の方法。
【請求項12】
前記ゲートウェイから前記第1のサーバにおいて、前記ゲートウェイに動作可能に接続された構成要素を特徴付ける構成要素データを送信することであって、前記構成要素の仮想表現が、前記第1のサーバにおいて取得され、前記仮想表現は、仮想制御インターフェースを含み、前記仮想制御インターフェースは、コマンド/命令を前記構成要素に提供できるようにする、送信することを更に含む、請求項8に記載の方法。
【請求項13】
前記ゲートウェイにおいて、前記ゲートウェイに動作可能に接続された前記構成要素へのコマンド/命令を受信することを更に含む、請求項12に記載の方法。
【請求項14】
第1のサーバと、
ネットワークを介して前記第1のサーバに動作可能に接続される第2のサーバと、
前記ネットワークを介して前記第1のサーバ及び前記第2のサーバに動作可能に接続されるゲートウェイ構成要素であって、前記ゲートウェイ構成要素と前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイ構成要素の電源が入っている限り、開いた状態のままであり、前記ゲートウェイ構成要素は前記ネットワークを介して前記第2のサーバに直接接続され、前記ゲートウェイ構成要素はデータ生成装置にも直接接続される、ゲートウェイ構成要素
を含み、
前記第1のサーバは、
データへの要求を受信することであって、前記データへの要求は、前記ゲートウェイ構成要素を指定し、前記データへの要求は、前記第2のサーバでの所定のポート番号を含む、受信すること、及び
前記データへの要求を前記ゲートウェイ構成要素に送信すること
を実行するように構成され、
前記第2のサーバは、
前記データへの要求をリモートサイトから受信すること、及び
前記所定のポート番号において前記データを受信することであって、前記データは前記ゲートウェイ構成要素によって提供される、受信すること
を実行するように構成され、
前記ゲートウェイ構成要素は、
前記データへの要求を受信すること、
前記データをデータソースから検索すること、
前記ネットワークを介して前記第2のサーバのポートに動作可能に接続することであって、前記ポートは前記所定のポート番号に対応する、動作可能に接続すること、及び
前記データを前記第2のサーバに送信すること
を実行するように構成される、システム。
【請求項15】
前記第2のサーバは、前記第1のサーバに前記データへの要求を送信するようにも構成される、請求項14に記載のシステム。
【請求項16】
前記第2のサーバは、
記データを受信した後、前記データを前記リモートサイトに送信することと
を実行するようにも構成される、請求項15に記載のシステム。
【請求項17】
前記第2のサーバは、データレート測定サブシステムを含み、前記第2のサーバは、
データレート測定テストを開始して、前記第2のサーバと前記ゲートウェイ構成要素との間のデータレートを測定するために、前記ネットワークを介して、開始信号を前記ゲートウェイ構成要素に送信することを実行するようにも構成され、前記ゲートウェイ構成要素は、前記データレート測定テストの開始後、テストデータを前記第2のサーバに提供するようにも構成され、前記第2のサーバは、
前記データレート測定サブシステムを使用して、前記第2のサーバと前記ゲートウェイ構成要素との間のデータレートを特定することと、
前記データレートを前記ゲートウェイ構成要素に提供することと
を実行するように更に構成され、
前記ゲートウェイ構成要素は、所定のデータブロックレートを実質的に保証するために、データブロックサイズを計算するように更に構成される、請求項14に記載のシステム。
【請求項18】
前記第1のサーバは、
前記ゲートウェイ構成要素の構成を変更又は更新するために、前記ゲートウェイ構成要素に構成データを提供するようにも構成される、請求項14に記載のシステム。
【請求項19】
前記第1のサーバは、
前記ゲートウェイに、構成要素の動作を開始又は停止する命令を提供するようにも構成される、請求項14に記載のシステム。
【請求項20】
前記第1のサーバは、
前記ゲートウェイから、前記ゲートウェイ構成要素に動作可能に接続された構成要素を特徴付ける構成要素データを受信することと、
前記構成要素の仮想表現を取得することであって、前記仮想表現は仮想制御インターフェースを含み、前記仮想制御インターフェースは、前記構成要素へのコマンド/命令の提供を可能にする、取得することと
を実行するようにも構成される、請求項14に記載のシステム。
【請求項21】
前記第1のサーバは、
前記ゲートウェイ構成要素に動作可能に接続された前記構成要素にコマンド/命令を提供するようにも構成される、請求項20に記載のシステム。
【請求項22】
前記第1のサーバは、
少なくとも1つの第1のプロセッサと、
第1のコンピュータ使用可能媒体であって、前記第1のコンピュータ使用可能媒体及び前記少なくとも1つの第1のプロセッサは、動作可能に接続される、第1のコンピュータ使用可能媒体と
を含み、
前記第2のサーバは、
少なくとも1つの第2のプロセッサと、
第2のコンピュータ使用可能媒体であって、前記第2のコンピュータ使用可能媒体及び前記少なくとも1つの第2のプロセッサは、動作可能に接続される、第2のコンピュータ使用可能媒体と
を含み、
前記第1のコンピュータ使用可能媒体は、内部に具現される第1のコンピュータ可読コードを有し、前記第1のコンピュータ可読コードは、前記少なくとも1つの第1のプロセッサに、
データへの要求を受信することであって、前記データへの要求は前記ゲートウェイ構成要素を指定し、前記データへの要求は、前記第2のサーバでの所定のポート番号を含む、受信することと、
前記データへの要求を前記ゲートウェイ構成要素に送信することと
を実行させ、
前記第2のコンピュータ使用可能媒体は、内部に具現される第2のコンピュータ可読コードを有し、前記第2のコンピュータ可読コードは、前記少なくとも1つの第2のプロセッサに、
前記所定のポート番号において前記データを受信することであって、前記データは前記ゲートウェイ構成要素によって提供される、受信すること
を実行させる、請求項14に記載のシステム。
【請求項23】
前記ゲートウェイ構成要素は、
少なくとも1つの第3のプロセッサと、
内部に具現される第3のコンピュータ可読コードを有する第3のコンピュータ使用可能媒体と
を含み、
前記第3のコンピュータ可読コードは、前記少なくとも1つの第3のプロセッサに、
前記データへの要求を受信することと、
前記データをデータソースから検索することと、
前記ネットワークを介して前記第2のサーバでのポートに動作可能に接続することであって、前記ポートは前記所定のポート番号に対応する、動作可能に接続することと、
前記データを前記第2のサーバに送信することと
を実行させ、
前記第3のコンピュータ使用可能媒体及び前記少なくとも1つの第3のプロセッサは、動作可能に接続される、請求項22に記載のシステム。
【請求項24】
コンピュータプログラム製品であって、
内部に具現されるコンピュータ可読コードを有する非一時的なコンピュータ使用可能媒体を含み、前記コンピュータ可読コードは、少なくとも1つのプロセッサに、
第1のサーバにおいてデータへの要求を受信することであって、前記データへの要求はゲートウェイを指定し、前記ゲートウェイは、ネットワークを介して前記第1のサーバに動作可能に接続され、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであり、前記データへの要求は、第2のサーバでの所定のポート番号を含み、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記データへの要求は、データ生成装置に対するデータへの要求であり、前記データ生成装置は、前記ゲートウェイに動作可能に接続される、受信することと、
前記第1のサーバから前記ゲートウェイに前記データへの要求を送信することであって、前記データは、前記ゲートウェイによって検索され、前記ネットワークを介して、前記第2のサーバに対して前記所定のポート番号において提供される、送信することと
を実行させる、コンピュータプログラム製品。
【請求項25】
コンピュータプログラム製品であって、
内部に具現されるコンピュータ可読コードを有する非一時的なコンピュータ使用可能媒体を含み、前記コンピュータ可読コードは、少なくとも1つのプロセッサに、
第2のサーバから、第1のサーバにデータへの要求を送信することであって、前記データへの要求はゲートウェイを指定し、前記ゲートウェイは、ネットワークを介して前記第1のサーバに動作可能に接続され、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであり、前記データへの要求は、前記第2のサーバでの所定のポート番号を含み、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記データへの要求は、データ生成装置に対するデータへの要求であり、前記データ生成装置は、前記ゲートウェイに動作可能に接続され、前記第1のサーバは、前記データへの要求を前記ゲートウェイに送信し、前記データは前記ゲートウェイによって検索される、送信することと、
前記第2のサーバにおいて前記ネットワークを介して、前記所定のポート番号で前記データを受信することであって、前記データは前記ゲートウェイによって提供される、受信することと
を実行させる、コンピュータプログラム製品。
【請求項26】
コンピュータプログラム製品であって、
内部に具現されるコンピュータ可読コードを有する非一時的なコンピュータ使用可能媒体を含み、前記コンピュータ可読コードは、少なくとも1つのプロセッサに、
ネットワークを介してゲートウェイを第1のサーバに動作可能に接続することであって、前記ゲートウェイと前記第1のサーバとの間の動作可能な接続は、前記ゲートウェイの電源が入っている限り、開いた状態のままであることと、
前記ゲートウェイにおいて、データへの要求を受信することであって、前記データへの要求は、第2のサーバでの所定のポート番号を含み、前記データへの要求はリモートサイトにおいて発せられ、前記データへの要求は前記リモートサイトから前記第2のサーバに提供され、前記データへの要求は、データ生成装置に対するデータへの要求であり、前記データ生成装置は、前記ゲートウェイに動作可能に接続される、受信することと、
前記ゲートウェイにおいて、データソースから前記データを検索することと、
前記ネットワークを介して前記ゲートウェイを前記第2のサーバでのポートに動作可能に接続することであって、前記ポートは、前記所定のポート番号に対応する、動作可能に接続することと、
前記ゲートウェイから前記データを前記第2のサーバに送信することと
を実行させる、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
背景
これらの教示は、概してデータをリモートサイトに提供することに関し、より詳細には、ゲートウェイを使用してデータをリモートサイトに提供する方法及びシステムに関する。
【背景技術】
【0002】
インターネットを介する通信では、2つのマシン間でのデータ転送が必要とされる。ローカルマシンは、リモートマシン上の指定されたポート番号での接続を要求する。次に、ローカルマシン上の動的に割り振られたポートが、リモートマシン上の指定されたポートに接続し、通信を進めることができる。
【0003】
通信自体は、2つのマシンが特に、専用チャネル(電話呼等)を介して接続されるTCPベースであってもよく、又は1つのマシンがデータを送信し、他のマシンがそれを受信するかどうかは気付かない(郵便サービスに類似)UDP転送であってもよい。これらの方法の何れも、「ポート」と呼ばれるものを利用し、ポートを介して、データ転送は単一の共有される物理的ネットワーク回線上で行われる。
【0004】
ローカルエンドでは、通常、マシンはルータを介して接続する。このルータは複数の機能を実行するが、1つの機能は、内部ローカルネットワークをネットワークスヌーパー及びハッカーから保護することであり得る。ルータは、外部世界からローカルネットワークにアクセス可能なポートを選択的に開閉することによってこれを行う。
【0005】
ハッカーは、開いているポートを利用して、ローカルネットワーク内のマシンへのアクセスを獲得し得る。しかし、ルータが、幾つかのポート番号への入力要求を許可しないようにセットアップされる場合、ハッカーはアクセスを得ることができない。そのような構成は、ファイアウォールを介する接続と呼ばれる。
【0006】
このため、ローカルネットワークへの、要求される最小の数の入力ポートが、許可されることが望ましい。他方、出力ポートは、転送中のデータがローカルエンドから開始され、外部に送信しているため、安全である。
【0007】
リモート側では、洗練されたセキュリティ解決策を使用して、システムへの不正アクセスの影響を減らすことができ、より洗練されたファイアウォール及びヒューリスティック規則を利用して、要求されたアクセスが正当か否かを判断する。このレベル機器設置は、ホームオーナー及び小規模ビジネスオーナーがローカルエンドで使用するには非実用的である。
【0008】
データソース、例えばカメラが、ローカルサイトに配置される場合、データソースの出力、例えば、リモートサイトからのカメラからのビデオを監視可能であることが望ましい。通常、ポートが、ローカルファイアウォールで開かれる必要があり、これにより、リモートモニタリング要求をデータソースに渡せるようにし、データソースからの出力をデータソースから検索できるようにする。これは、不安、すなわち、ファイアウォール/ルータでローカルポートを開くことを生じさせる。
【発明の概要】
【発明が解決しようとする課題】
【0009】
ファイアウォール/ルータでローカルポートを開くことを必要としない、リモートサイトにデータを提供する方法及びシステムが必要とされる。
【課題を解決するための手段】
【0010】
概要
本明細書において、ファイアウォール/ルータでローカルポートを開くことを必要としない、リモートサイトにデータを提供する方法及びシステムを以下に提示する。
【0011】
1つ又は複数の実施形態では、これらの教示のシステムは、第1のサーバと、ネットワークを介して第1のサーバに動作可能に接続される第2のサーバと、ネットワークを介して第1のサーバ及び第2のサーバに動作可能に接続されるゲートウェイ構成要素とを含む。第1のサーバは、データへの要求を受信することと、データへの要求をゲートウェイ構成要素に送信することとを実行するように構成され、データへの要求は、ゲートウェイ構成要素を指定し、第2のサーバでの所定のポート番号を含む。第2のサーバは、所定のポート番号においてデータを受信することを実行するように構成され、データはゲートウェイ構成要素によって提供される。ゲートウェイ構成要素は、これらの実施形態では、データへの要求を受信することと、データをデータソースから検索することと、ネットワークを介して第2のサーバでのポートに動作可能に接続することと、データを第2のサーバに送信することとを実行するように構成され、ポートは所定のポート番号に対応する。
【0012】
1つ又は複数の場合、第2のサーバは、リモートサイトからデータへの要求を受信することと、第1のサーバにデータへの要求を送信することと、データを受信した後、データをリモートサイトに送信することとを実行するようにも構成される。
【0013】
これらの教示の方法は、1つ又は複数の実施形態では、第1のサーバを中心とした視点、第2のサーバを中心とした視点、又はゲートウェイを中心とした視点から説明することができる。
【0014】
1つ又は複数の実施形態では、第1のサーバを中心とした視点からみると、図6に示されるこれらの教示の方法は、第1のサーバにおいて、データへの要求を受信すること(図6、ステップ160)と、第1のサーバから、データへの要求をゲートウェイに送信すること(図6、ステップ165)とを含み、データへの要求はゲートウェイを指定し、ゲートウェイはネットワークを介して第1のサーバに動作可能に接続され、データへの要求は第2のサーバでの所定のポート番号を含み、データは、ゲートウェイによって検索され、ネットワークを介して第2のサーバの所定のポート番号に提供される。
【0015】
1つ又は複数の実施形態では、第2のサーバを中心とした視点からみると、これらの教示の方法は、第2のサーバから第1のサーバに、データへの要求を送信することと、第2のサーバにおいてネットワークを介して、所定のポート番号でデータを受信することとを含み、データへの要求はゲートウェイを指定し、ゲートウェイはネットワークを介して第1のサーバに動作可能に接続され、データへの要求は第2のサーバでの所定のポート番号を含み、第1のサーバはデータへの要求をゲートウェイに送信し、データはゲートウェイによって検索され、データはゲートウェイによって提供される。
【0016】
1つ又は複数の実施形態では、ゲートウェイを中心とした視点からみると、これらの教示の方法は、ネットワークを介してゲートウェイを第1のサーバに動作可能に接続することと、ゲートウェイにおいて、データへの要求を受信することと、ゲートウェイにおいて、データソースからデータを検索することと、ネットワークを介してゲートウェイを第2のサーバのポートに動作可能に接続すること、と、データをゲートウェイから第2のサーバに送信することとを含み、データへの要求は第2のサーバでの所定のポート番号を含み、ポートは所定のポート番号に対応する。
【0017】
コンピュータプログラム製品の実施形態を含め、幾つかの他の実施形態も開示される。
【0018】
他の目的及び更なる目的と共に、本教示をよりよく理解するために、添付図面及び詳細な説明を参照し、本教示の範囲は添付の特許請求の範囲において指摘される。
【図面の簡単な説明】
【0019】
図1】これらの教示のシステムの一実施形態の概略ブロック図表現である。
図2】これらの教示のシステムの別の実施形態の概略部分ブロック図表現である。
図3】これらの教示のシステムの更に別の実施形態の概略部分ブロック図表現である。
図4】これらの教示のシステムの実施形態の構成要素の概略ブロック図表現である。
図5】これらの教示の方法の一実施形態の概略フローチャート表現である。
図6】これらの教示の方法の一実施形態の第1のサーバを中心とした視点の概略フローチャート表現である。
図7】これらの教示の方法の一実施形態の第2のサーバを中心とした視点の概略フローチャート表現である。
図8】これらの教示の方法の一実施形態のゲートウェイを中心とした視点の概略フローチャート表現である。
【発明を実施するための形態】
【0020】
詳細な説明
本明細書において、ファイアウォール/ルータでのローカルポートを開く必要がない、データをリモートサイトに提供する方法及びシステムを以下に提示する。
【0021】
以下の詳細な説明は、本発明を実行する現在意図される形態を提示する。説明は限定の意味で解釈されるべきではなく、本発明の範囲は添付の特許請求の範囲によって最良に規定されるため、単に、本発明の一般原理を示すために行われる。
【0022】
本明細書で使用される場合、単数形「a」、「an」、及び「the」は、文脈に明らかに別段のことが示される場合を除き、複数形を含む。
【0023】
別のことが示される場合を除き、本明細書及び特許請求の範囲で使用される材料の数量、反応状態等を表す全ての数は、全ての場合で、「約」という用語で修飾されるものとして理解されるべきである。
【0024】
「ゲートウェイ」又は「ゲートウェイ構成要素」は、本明細書で使用される場合、ローカルサイトをネットワークに相互接続する通信デバイスである。ゲートウェイは、ネットワークを通してローカルサイトを他の構成要素に接続することができる。
【0025】
「データブロック」は、本明細書で使用される場合、ローカルサイトから別の構成要素に転送されるデータのブロックである。データブロックの例示的な一実施形態は、ビデオストリーム中のフレームである。
【0026】
1つ又は複数の実施形態では、これらの教示のシステムは、第1のサーバと、ネットワークを介して第1のサーバに動作可能に接続される第2のサーバと、ネットワークを介して第1のサーバ及び第2のサーバに動作可能に接続されるゲートウェイ構成要素とを含む。第1のサーバは、データへの要求を受信することと、データへの要求をゲートウェイ構成要素に送信することとを実行するように構成され、データへの要求は、ゲートウェイ構成要素を指定し、第2のサーバでの所定のポート番号を含む。第2のサーバは、所定のポート番号においてデータを受信することを実行するように構成され、データはゲートウェイ構成要素によって提供される。ゲートウェイ構成要素は、これらの実施形態では、データへの要求を受信することと、データをデータソースから検索することと、ネットワークを介して第2のサーバでのポートに動作可能に接続することと、データを第2のサーバに送信することとを実行するように構成され、ポートは所定のポート番号に対応する。
【0027】
1つの場合では、データへの要求はリモートサイトにおいて発せられる。幾つかの場合、データへの要求は、リモートサイトから第2のサーバに、そして第2のサーバから第1のサーバに提供される。
【0028】
図1は、これらの教示のシステムの実施形態を示す。図1を参照すると、示される実施形態では、ゲートウェイ10(ゲートウェイ構成要素とも呼ばれる)、次にローカルサイト12、ネットワーク45を通して、第1のサーバ20(リモート管理システム(RMS)とも呼ばれる)及び第2のサーバ30(ゲートウェイバックエンド(GBE)サーバとも呼ばれる)。リモートサイト40は、ネットワークを通して第2のサーバ30に接続される。
【0029】
本教示を更に明確にするために、ローカルサイト12に設置されたカメラからのビデオストリームへの要求が、リモートサイト40から開始される例示的な実施形態を以下に提示する。これらの教示がその例示的な実施形態のみに限定されないことに留意されたい。例えば、他の実施形態は、第1のサーバ20から発せられたデータへの予めプログラムされた要求を含むことができるが、これらに限定されない。
【0030】
例示的な実施形態では、1つ又は複数のカメラがローカルサイトに設置され、ビデオストリームを提供するが、ゲートウェイからアクセスすることができる、ローカルサイト12に設置されるデバイスの他の例としては、これらの教示はそれらの例のみに限定されず、
オン/オフ機能を提供するバイナリスイッチ、
一例が調光器である、設定可能な一連のレベルを提供するマルチレベルスイッチ、
動き検出器、ドアセンサ等のバイナリセンサ、
サーモスタット制御装置、
認証ドアエントリ等のアクセス制御デバイス、
サイレン/チャイム/音声出力デバイス、
ステッパモータコントローラ、PWM速度コントローラ等
が挙げられる。
【0031】
電源投入されると、ゲートウェイ10は、リモート管理システム(RMS)20に接続し、ゲートウェイ10の電源が入っている限り、この接続を開いた状態に保つ。次に、この接続を使用して、様々な要求をゲートウェイに送信する。そのような一要求は、ローカルに設置されたカメラからのストリーミングを開始することである。この要求は、リモートビデオモニタリングディスプレイの応答において行うことができる。
【0032】
リモートサイトが、ビデオストリームへの要求を行う場合、以下のステップが続く。
1)リモートサイトが、ゲートウェイバックエンド(GBE)30と呼ばれるウェブサーバに接続する(1)。
2)GBE30が、特定のゲートウェイ及びカメラからのビデオストリーム並びにゲートウェイが「バック接続」する特定のポート番号への要求をRMS20に対して行う(2)。
3)RSMは、要求をフォーマットし、常に開いているゲートウェイ<−>RMS接続(3)を介してゲートウェイに送信する。ゲートウェイ10は、要求をRMS20から受信する。
4)ゲートウェイ10は、ビデオ要求を送信し(4)、指定されたカメラからビデオデータを検索する(引き出す)(5)。
5)次に、ゲートウェイは、RMS20を介して指定されたポート番号で、GBE設定を有する接続(6)を開き、ビデオデータ転送にわたりこの接続を開いた状態に保つ。
6)次に、ゲートウェイは、ビデオデータ接続(6)を介してカメラのビデオデータをGBE30にプッシュする。
7)GBE30は、このビデオデータを要求側リモートモニタリングサイト40に送信する(7)。
【0033】
例示的な実施形態はビデオデータの検索に関するが、他の例示的な実施形態は、ゲートウェイからアクセス可能な任意の他のデバイスからデータを検索することを含むことができる。他の例示的な実施形態では、データを検索する代わりに、ゲートウェイは、例えば、「センサAがアクティブ化されている場合、カメラBからのストリーミングを開始し、照明A、照明Bをオンにする」又は「センサBがアクティブ化されている場合、チャイムを鳴らし、音声デバイスAでメッセージCをアナウンスする」等であるが、これらに限定されないマクロを開始し、マクロからデータを検索することができる。
【0034】
一実施形態では、第2のサーバは、データレート測定サブシステムを含み、データレート測定テストを開始し、第2のサーバとゲートウェイ構成要素との間のデータレートを測定するために、ネットワークを介して、開始信号をゲートウェイ構成要素に送信するようにも構成される。その実施形態では、ゲートウェイ構成要素は、データレート測定テストの開始後、テストデータを第2のサーバに提供するようにも構成され、第2のサーバは、データレート測定構成要素を使用して、第2のサーバとゲートウェイ構成要素との間のデータレートを特定し、データレートをゲートウェイ構成要素に提供するように更に構成される。ゲートウェイ構成要素は、所定のデータブロックレートを実質的に保証するために、データブロックサイズを計算するように更に構成される。任意の従来のデータレート測定サブシステムが使用可能であるが、これらの教示の限定ではないが例示を目的として、データレート測定サブシステムは、時間測定構成要素(開始信号又はインジケータがテストデータに先行し、テストデータを受信した後、完了信号又はインジケータが生成される場合、開始信号と完了信号との間の時間を検出するタイミング構成要素;データへのビット数又はバイト数を検出する構成要素及びビット数及び時間からデータレートを特定する構成要素を含むサブシステム等を含むことができる。
【0035】
図2は、データレート測定中のゲートウェイ構成要素10と第2のサーバ30とのインタラクションを示す。これらの教示をよりよく示すために、データブロックがビデオカメラからのフレーム(又は静止カメラからの1枚のピクチャ)である場合での例示的な実施形態を以下に提示する。これらの教示がその実施形態のみに限定されないことに留意されたい。
【0036】
例示的な実施形態では、ゲートウェイ構成要素10は、ビデオストリーム要求に応答して、様々なカメラに接続する。そして、ゲートウェイ10は、ビデオデータを外部受信者に送信する。カメラ−>ゲートウェイ−>第2のサーバ(GBE)パイプライン内でまずまず一定したフレームレート(毎秒フレーム数、fps)が維持されることが望ましい。
【0037】
ゲートウェイが接続する各カメラでは、1つ又は複数のフレームサイズが利用可能である。例えば、Aカメラでは、フルフレームに対して、選ぶことができる3つの異なるフレームサイズがある。それらのフレームサイズは640×480画像サイズ、1メガピクセル画像サイズ、及び4メガピクセル画像サイズである。後続する各フレームサイズは、前のフレームサイズよりもかなり大きい。フレームサイズが大きいことは、フレーム毎により多くのデータが転送されることも意味する。より多くのデータは、画像をより精密に調べることを可能にし、顔/パターン認識等でのエラーの機会を低減する。また、まずまず一定のフレームレート、例えば、3fpsが維持されることが望ましい。
【0038】
ゲートウェイの異なる設置では、異なるレベルのネットワーク(1つの場合では、インターネット)データ速度が利用可能である。アップロード速度は、所与のフレームサイズでフレームレートの適切な維持にとって極めて重要である。米国では、国内ケーブル接続により、毎秒約200万から250万ビット(2〜2.5mbps)のアップロード速度が可能である。欧州でのデータ速度はより遅く、アジアでは更に遅い。
【0039】
アップロードデータ速度の差を踏まえて、ゲートウェイ10は、第2のサーバ30(バックエンド(GBE))と維持することができるデータレートを動的に測定する。次に、ゲートウェイ10は、予め定義されるテーブルからフレームサイズを落として、約3fpsという目標フレームレートを維持する。
【0040】
【表1】
【0041】
アップロードデータレートを確かめるために、画像データが送信される厳密なパスが測定される必要がある。このために、速度測定サーバが第2のサーバ30(ゲートウェイバックエンド(GBE))に展開される。複数の画像が後に同じGBEマシンに送信されるため、速度測定サーバは、データ帯域幅が、複数の画像で測定の場合と同じであることを保証する。
【0042】
速度が入手されると、フレームデータサイズが、約3fpsフレームレートの場合で計算される。
(フレームサイズ)3=所要データスループット/秒
【0043】
例えば、1メガバイト/秒〜=1000キロビット/秒の測定データ速度を考える。
【0044】
上記の予め定義されるテーブルから、この接続を介して転送することができる各サイズでの毎秒フレーム数を計算することができる。
320×240 10fps
640×480 3.6fps
1MP 1.5fps
4MP 0.6fps
【0045】
測定速度よりも低いスループットになるフレームサイズ又は最も近いフレームサイズは、デフォルトフレームサイズとして自動的に選ばれる。この場合、640×480画像が、3fpsに近いフレームレートを維持可能であり、デフォルトフレームレートとして選ばれる。このデフォルトは、フレームレートを犠牲にして特定のパラメータをゲートウェイに送信することにより、オーバーライドすることができる。
【0046】
上記の例示的な実施形態が、これらの教示の限定ではないことに留意されたい。
【0047】
別の場合、第1のサーバ20は、ゲートウェイ構成要素の構成を変更又は更新するために、ゲートウェイ構成要素10に構成データを提供するようにも構成される。更なる場合、第1のサーバ20は、ゲートウェイに、構成要素の動作を開始又は停止する命令を提供するようにも構成される。更に別の場合、第1のサーバ20は、ゲートウェイ10から、ゲートウェイ構成要素に動作可能に接続された構成要素を特徴付ける構成要素データを受信し、その構成要素の仮想表現を取得するようにも構成され、仮想表現は仮想制御インターフェースを含み、仮想制御インターフェースは、コマンド/命令をその構成要素に提供できるようにする。その更に別の場合では、第1のサーバ20は、ゲートウェイ構成要素に動作可能に接続された構成要素にコマンド/命令を提供するように更に構成される。
【0048】
図3は、構成要素の仮想化中の第1のサーバへのゲートウェイ接続を示す。
【0049】
一実施形態では、ゲートウェイ10に電源が投入されると、ゲートウェイ10は、第1のサーバ20(リモート管理システム(RMS))とネットワーク(1つの場合では、TCPインターネット)接続を行う。ゲートウェイ10が第1のサーバ20に対してそれ自体を明らかにした後、永久的レコードがRMSデータベース内に作成される。ゲートウェイ10がRMS20と行うネットワーク接続は、ゲートウェイ10の電源が入っている限り、アクティブに保たれる。したがって、これらの2つのデバイス間で、ネットワーク45を介して通信が可能である。
【0050】
1つの場合では、ゲートウェイは、幾つかのファイル、プログラム、構成データ等を維持する。ゲートウェイ10とRMS20との間の開かれた接続を使用して、ファイルをゲートウェイ10に転送し、ゲートウェイでの構成データを変更し、ゲートウェイでのプログラムを開始又は停止することが可能である。
【0051】
ファイルには、転送前にバージョン番号を与えることができる。これが使用される場合、RMS20は様々なバージョンのファイル/プログラムを維持する。これにより、ファイルアップロードによりゲートウェイ10が動作不安定になる場合、リカバリオプションが可能になる。
【0052】
一実施形態では、ゲートウェイ10は、カメラ等であるが、これに限定されない異なるデバイス60と接続する。RMS20を使用して、これらのデバイスのそれぞれは、RMS20上で仮想化することができる(図3、仮想化デバイス70)。仮想化されると、定義された制御インターフェースがRMS20上で利用可能である。この仮想化インターフェースにおいて変更すると、コマンド及びデータはゲートウェイに転送されることになり、ゲートウェイは物理的に、要求されたコマンド/動作を実際のカメラで実行する。したがって、露出されるインターフェースをリモートに使用して、例えば、カメラを制御することができる。動作は、デバイス、例えばカメラをオン/オフし、レンズを移動させるなどすることができる。
【0053】
この仮想化はカメラに限定されず、動きセンサ等の任意のデバイスに使用することができる。また、デバイスは、物理的なデバイスである必要はなく、全てソフトウェアで実施することができ、仮想化インターフェースは、RMSで作成されて、RMS上で様々な動作を実行することができる。
【0054】
例示的な実施形態では、制御インターフェースを介して仮想化デバイスにアクセスする様式と同様に、ファームウェアとも呼ばれる論理プログラム又はゲートウェイを介してアクセス可能なデバイス60上の何らかの構成データを更新することができる。この例示的な実施形態では、要求されたファームウェア又はデータファイルは、RMS20からゲートウェイ10に転送することができ、これには、その転送データを用いて何が行われるべきかに関する対応するコマンドが伴う。
【0055】
詳細な例示的な実施形態では、例えば、デバイス60がカメラである場合であるが、これに限定されず、ファームウェアは、取り付けられ、ゲートウェイ10を介してアクセス可能なカメラ60のうちの1つ又は複数上のファームウェアを更新する対応するコマンドと共に、ゲートウェイに転送することができる。次に、ゲートウェイは、ファイルを読み出し、正確なコマンドシーケンスをカメラに発行して、カメラでのファームウェアを更新することができる。更新後、ゲートウェイは必要なステップをとり、そのファームウェアをアクティブにすることができる。これは、カメラリブートと同じ程単純であることもあれば、より複雑なコマンドシーケンスであることもある。
【0056】
別の場合、画像のバッファがゲートウェイに保持され、必要な場合、この画像バッファは、分析のために外部サイトにダウンロードされ、それにより、外部レコーダでのビデオストリームの連続記録への代替を提供する。
【0057】
別の実施形態では、ゲートウェイは、ゲートウェイに取り付けられた、動きセンサ、温度センサ等の幾つかのセンサを有する。1つの場合では、これらのセンサのうちの1つからトリガーを受信すると、ビデオ又は画像のオフサイト記録(予めバッファリングされない)が開始される。
【0058】
上記の場合及び実施形態を組み合わせて、分析のためにデータが利用できないことを低減することができ、その結果、これらの教示の方法の以下の実施形態が生じる。
カメラがオフサイトで連続記録されない。
各カメラのプレバッファが、ゲートウェイにおいてローカルに保持される。
イベント時、外部記録がトリガーされる。
予めバッファリングされた画像が外部サイトに転送される。
これらの予めバッファリングされた画像に、イベントベースの記録を加えたものが、分析に使用される。
【0059】
一実施形態では、第1のサーバ20、第2のサーバ30、及び/又はゲートウェイ構成要素10は、1つ又は複数のプロセッサ及びコンピュータ使用可能媒体を含むことができ、コンピュータ使用可能媒体は、内部に具現されるコンピュータ可読コードを有し、コンピュータ可読コードは、1つ又は複数のプロセッサで実行されると、1つ又は複数のプロセッサに、第1のサーバ20、第2のサーバ30、又はゲートウェイ構成要素10において構成される機能を実行させる。そのような実施形態を図4に示す。図4を参照すると、示される実施形態では、1つ又は複数のプロセッサ210は、コンピュータ使用可能媒体220に動作可能に接続され(接続構成要素215により)、コンピュータ使用可能媒体220は、内部に具現されるコンピュータ可読コードを有し、コンピュータ可読コードは、1つ又は複数のプロセッサで実行されると、1つ又は複数のプロセッサに、第1のサーバ20、第2のサーバ30、又はゲートウェイ構成要素10において構成される機能を実行させる。
【0060】
例示的な一実施形態では、これらの教示の限定ではなく、ゲートウェイはLinux(登録商標)ベースのプラグコンピュータである。Linuxは、プラグコンピュータをターゲットとしてソフトウェアを書けるようにするカーネルである。例示的な実施形態では、ゲートウェイは、OSGi(OSGi財団によって指定されるJava(登録商標)ベースの技術)であるフレームワークを実行する。
【0061】
他の実施形態では、第1のサーバ20、第2のサーバ30、又はゲートウェイ構成要素10に構成される機能及び動作が、ソフトウェア命令あり又はなしで、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)を使用するなど、プログラム可能、部分的にプログラム可能、又はハードワイヤードであり得る専用回路を使用して実施することができることに留意されたい。
【0062】
これらの教示の方法の一実施形態は、フローチャートの形態で図5に示される。図5を参照すると、示される実施形態では、第1のサーバは、データへの要求を受信する(図5、ステップ105)。第1のサーバは、データへの要求をゲートウェイに送信し(図5、ステップ115)、データへの要求はゲートウェイにおいて受信される(図5、ステップ125)。ゲートウェイは、データをデータソースから検索し(図5、ステップ135)、ネットワークを介して第2のサーバでのポートに動作可能に接続し、ポートは所定のポート番号に対応する(図5、ステップ145)。次に、ゲートウェイは、データを第2のサーバに送信する(図5、ステップ155)。
【0063】
幾つかの場合、リモートサイトから発せられたデータへの要求は、リモートサイトから第2のサーバに送信され、第2のサーバは、データを受信した後、データをリモートサイトに送信した。
【0064】
これらの教示の方法は、1つ又は複数の実施形態では、第1のサーバを中心とした視点、第2のサーバを中心とした視点、又はゲートウェイを中心として視点から説明することができる。
【0065】
1つ又は複数の実施形態では、図6に示される第1のサーバを中心とした視点からみると、これらの教示の方法は、第1のサーバにおいて、データへの要求を受信すること(図6、ステップ160)と、第1のサーバから、データへの要求をゲートウェイに送信すること(図6、ステップ165)とを含み、データへの要求はゲートウェイを指定し、ゲートウェイはネットワークを介して第1のサーバに動作可能に接続され、データへの要求は第2のサーバでの所定のポート番号を含み、データは、ゲートウェイによって検索され、ネットワークを介して第2のサーバの所定のポート番号に提供される。
【0066】
1つの場合では、第1のサーバを中心とした視点からみると、これらの教示の方法は、ゲートウェイの構成を変更又は更新するために、第1のサーバからゲートウェイに、構成データを提供することも含む。別の場合、第1のサーバを中心とした視点からみると、これらの教示の方法は、第1のサーバからゲートウェイに、構成要素の動作を開始又は停止する命令を提供することも含む。
【0067】
更に別の場合、第1のサーバを中心とした視点からみると、これらの教示の方法は、ゲートウェイから第1のサーバにおいて、ゲートウェイに動作可能に接続された構成要素を特徴付ける構成要素データを受信することと、第1のサーバにおいて、その構成要素の仮想表現を取得することとをも含み、仮想表現は仮想制御インターフェースを含み、仮想制御インターフェースは、構成要素にコマンド/命令を提供できるようにする。更に別の場合、これらの教示の方法は、第1のサーバから、コマンド/命令を、ゲートウェイに動作可能に接続された構成要素に提供することを含むこともできる。
【0068】
1つ又は複数の実施形態では、図7に示される第2のサーバを中心とした視点からみると、これらの教示の方法は、第2のサーバから第1のサーバに、データへの要求を送信すること(図7、ステップ170)を含み、データへの要求はゲートウェイを指定し、ゲートウェイは、ネットワークを介して第1のサーバに動作可能に接続され、データへの要求は、第2のサーバでの所定のポート番号を含み、第1のサーバは、データへの要求をゲートウェイに送信し、データは、ゲートウェイによって検索される。教示の方法は、ネットワークを介して、第2のサーバの所定のポート番号において、データを受信すること(図7、ステップ175)を含み、データはゲートウェイによって提供される。
【0069】
1つの場合、第2のサーバは、データレート測定構成要素を含み、第2のサーバを中心とした視点からみると、これらの教示の方法は、データレート測定テストを開始して、第2のサーバとゲートウェイとの間のデータレートを測定するために、ネットワークを介して第2のサーバからゲートウェイに開始信号を送信することを含み、データレート測定テストの開始後、テストデータがゲートウェイにより第2のサーバに提供される。教示の方法は、データレート測定構成要素を使用して、第2のサーバとゲートウェイとの間のデータレートを特定すること、及び第2のサーバからデータレートをゲートウェイに提供することを含み、データブロックサイズが、ゲートウェイにおいて計算されて、所定のデータブロックレートを実質的に保証する。例示的な実施形態では、データブロックはフレームであり、データブロックはフレームレートである。
【0070】
1つ又は複数の実施形態では、図8に示されるゲートウェイを中心とした視点からみると、これらの教示の方法は、ネットワークを介してゲートウェイを第1のサーバに動作可能に接続すること(図8、ステップ180)と、ゲートウェイにおいて、データへの要求を受信すること(図8、ステップ184)とを含み、データへの要求は、第2のサーバでの所定のポート番号を含む。教示の方法は、ゲートウェイにおいて、データをデータソースから検索すること(図8、ステップ188)と、ネットワークを介してゲートウェイを第2のサーバにおけるポートに動作可能に接続すること(図8、ステップ192)と、ゲートウェイからデータを第2のサーバに送信すること(図8、ステップ196)とを含み、ポートは所定のポート番号に対応する。
【0071】
一実施形態では、データへの要求はリモートサイトから発せられる。1つの場合では、リモートサイトは、データへの要求を第2のサーバに送信し、第2のサーバは、データへの要求を第1のサーバに送信する。この実施形態では、第2のサーバがデータを受信すると、第2のサーバはデータをリモートサイトに提供する。
【0072】
1つの場合では、第2のサーバはデータレート測定構成要素を含み、これらの教示の方法は、ゲートウェイを中心とした視点からみると、データレート測定テストを開始して、第2のサーバ間のデータレートを測定するために、ゲートウェイにおいて、ネットワークを介して第2のサーバから開始信号を受信すること、データレート測定テストの開始後、ゲートウェイからテストデータを第2のサーバに提供すること、所定のデータブロックレートを実質的に保証するために、ゲートウェイにおいて、データブロックサイズを計算することをも含み、第2のサーバとゲートウェイとの間のデータレートは、データレート測定構成要素を使用して特定され、ネットワークを介してゲートウェイに提供される。
【0073】
別の場合、これらの教示の方法は、ゲートウェイを中心とした視点からみると、ゲートウェイの構成を変更又は更新するために、ゲートウェイにおいて第1のサーバから、構成データを受信することをも含む。更なる場合、これらの教示の方法は、ゲートウェイを中心とした視点からみると、ゲートウェイにおいて第1のサーバから、構成要素の動作を開始又は停止する命令を受信することをも含む。
【0074】
更に別の場合、これらの教示の方法は、ゲートウェイを中心とした視点からみると、ゲートウェイから第1のサーバにおいて、ゲートウェイに動作可能に接続された構成要素を特徴付ける構成要素データを送信することをも含み、その構成要素の仮想表現が、第1のサーバにおいて取得され、仮想表現は、仮想制御インターフェースを含み、仮想制御インターフェースは、コマンド/命令を構成要素に提供できるようにする。更に別の場合、これらの教示の方法は、ゲートウェイを中心とした視点からみると、ゲートウェイにおいて、ゲートウェイに動作可能に接続された構成要素へのコマンド/命令を受信することをも含む。
【0075】
第1のサーバ、第2のサーバ、及び/又はゲートウェイ構成要素のうちの少なくとも1つが、1つ又は複数のプロセッサに、コンピュータ使用可能媒体に具現されるコンピュータ可読コードを実行させることにより、上述した機能を実行するように構成される場合、本教示は、内部に具現されるコンピュータ可読コードを有するコンピュータ使用可能媒体を含む1つ又は複数のコンピュータプログラム製品も含む。
【0076】
計算デバイスの様々な構成要素の説明は、構成要素を相互接続するいかなる特定のアーキテクチャ又は様式も表すことが意図されていない。開示される趣旨と併せて、より少数又はより多数の構成要素を有する他のシステムを使用することもできる。通信デバイスは、ある形態の計算デバイスを構成し得、少なくとも、計算デバイスを含み得る。計算デバイスは、相互接続(例えば、バス及びシステムコア論理)を含み得、相互接続は、計算デバイスのそのような構成要素を、プロセッサ若しくはマイクロプロセッサ等のデータ処理デバイス又は他の形態の部分的若しくは完全にプログラム可能若しくは予めプログラムされるデバイス、例えば、コントローラ若しくはマイクロコントローラ、デジタル信号プロセッサ等のハードワイヤード及び又は特定用途向け集積回路(「ASIC」)カスタマイズ論理回路、又は命令をフェッチし、予めロード/予めプログラムされる命令及び/又はハードワイヤード若しくはカスタマイズされた回路で見られ、本開示で記載されるようなプロセスのステップ、プロセス全体、及び機能を一緒に実行する論理動作を実行する続く命令で動作する任意の他の形態のデバイスに相互接続することができる。
【0077】
上記説明では、様々な機能、機能性、及び/又は動作は、説明を簡潔にするために、ソフトウェアプログラムコードによって実行されるもの又はソフトウェアプログラムコードによって生じるものとして説明されることがある。しかし、そのような表現によって意味されるものが、機能が、例えば、マイクロプロセッサ、マイクロコントローラ、論理回路等のプロセッサを含む、上述したような計算デバイスによるプログラムコード/命令の実行から生じることであることを当業者は認識する。代替として、又は組み合わせて、機能及び動作は、ソフトウェア命令あり又はなしで、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)を使用するなど、プログラム可能、部分的にプログラム可能、又はハードワイヤードであり得る専用回路を使用して実施することができる。特定用途向け集積回路(「ASIC」)論理は、ベースゲートアレイASICアーキテクチャのメタライゼーション相互接続によりカスタマイズされた論理を実施するか、又は製造業者の機能ブロックライブラリ等に含まれる標準セル機能ブロック間のメタライゼーション相互接続を選択し提供するゲートアレイ又は標準セル等であり得る。したがって、実施形態は、プログラムソフトウェアコード/命令なしでハードワイヤード回路を使用して、又はプログラムされたソフトウェアコード/命令を使用する回路と組み合わせて実施することができる。
【0078】
したがって、技法は、ハードウェア回路とソフトウェアとのいかなる特定の組合せにも限定されず、また計算デバイス内のデータプロセッサによって実行される命令の実体的ないかなる特定のソースにも限定されない。幾つかの実施形態は、完全に機能するコンピュータ及びコンピュータシステムで実施することができるが、様々な実施形態は、例えば、様々な形態を含む計算デバイスとして分散可能であり、機能及び動作の実行及び/又は機能、機能性、及び/又は動作の実行の分散を実際に行うのに使用される特定のタイプのマシン又は実体的なコンピュータ可読媒体に関係なく、適用可能である。
【0079】
相互接続は、データ処理デバイスを接続して、メモリを含む論理回路を定義し得る。相互接続は、マイクロプロセッサをオンボードキャッシュメモリ若しくはメインメモリ又はディスクドライブ等の外部(マイクロプロセッサの)メモリに結合するなど、データ処理デバイスの内部にあってもよく、又はリモートメモリ、ディスクファーム、又は他の大容量記憶デバイス等、計算デバイスの外部にあってもよい。1つ又は複数が計算デバイス又は計算デバイスの一部であることができる市販のマイクロプロセッサは、例として、Hewlett-Packard CompanyからのPA−RISCシリーズマイクロプロセッサ、Intel Corporationからの80×86又はPentiumシリーズマイクロプロセッサ、IBMからのPowerPCマイクロプロセッサ、Sun Microsystems,Inc.からのSparcマイクロプロセッサ、又はMotorola Corporationからの68xxxシリーズマイクロプロセッサを含む。
【0080】
相互接続は、マイクロプロセッサ及びメモリ等を相互接続することに加えて、そのような要素をディスプレイコントローラ及びディスプレイデバイス、及び/又は例えば、入/出力コントローラを通して入/出力(I/O)デバイス等の他の周辺デバイスに相互接続することもできる。典型的なI/Oデバイスは、マウス、キーボード、モデム、ネットワークインターフェース、プリンタ、スキャナ、ビデオカメラ、及び当分野で周知の他のデバイスを含むことができる。相互接続は、様々なブリッジ、コントローラ、及び/又はアダプタを通して互いに接続される1つ又は複数のバスを含み得る。一実施形態では、I/Oコントローラは、USB周辺機器を制御するUSB(ユニバーサルシリアルバス)アダプタ及び/又はIEEE−1394周辺機器を制御するIEEE−1394バスアダプタを含む。
【0081】
メモリは、任意の実体的なコンピュータ可読媒体を含み得、実体的なコンピュータ可読媒体は、メモリ内のデータをリフレッシュ又は維持するために常時電力を必要とする、通常、ダイナミックRAM(DRAM)として実施される揮発性RAM(ランダムアクセスメモリ)、不揮発性ROM(読み取り専用メモリ)、及びハードドライブ、フラッシュメモリ、脱着可能なメモリスティック等の他のタイプの不揮発性メモリ等の揮発性及び不揮発性メモリデバイス等の記録可能及び非記録可能型の媒体を含むが、これらに限定されない。不揮発性メモリは通常、磁気ハードドライブ、磁気光学ドライブ、光学ドライブ(例えば、DVD RAM、CD ROM、DVD、若しくはCD)、又は電力がシステムからなくなった後であってもデータを維持する他のタイプのメモリシステムを含み得る。
【0082】
サーバは、1つ又は複数の計算デバイスで構成することができる。サーバは、例えば、ネットワーク内で利用されて、ネットワークデータベースをホストし、必要な変数及び情報をデータベース内の情報から計算し、データベースからの情報を記憶し復元し、情報及び変数を追跡し、情報及び変数をアップロード及びダウンロードするインターフェースを提供し、且つ/又はデータベースからの情報及びデータをソートするか、又は他の方法で操作することができる。一実施形態では、サーバは、ローカル又はリモートに位置決めされる他の計算デバイスと併せて使用されて、本願で記載し得るような特定の計算及び他の機能を実行することができる。
【0083】
開示される趣旨の少なくとも幾つかの態様は、少なくとも部分的に、プログラムされたソフトウェアコード/命令を利用して実施することができる。すなわち、機能、機能性、及び/又は動作技法は、マイクロプロセッサ等のプロセッサが、ROM、揮発性RAM、不揮発性メモリ、キャッシュ、又はリモート記憶デバイス等のメモリに含まれる命令シーケンスを実行することに応答して、計算デバイス又は他のデータ処理システムで実行し得る。一般に、開示される趣旨の実施形態を実施するために実行されるルーチンは、オペレーティングシステムの一部又は特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュール、又は「コンピュータプログラム」若しくは「ソフトウェア」と通常呼ばれる命令シーケンスとして実施し得る。コンピュータプログラムは通常、キャッシュメモリ、メインメモリ、内部又は外部ディスクドライブ、及びディスクファーム等の他のリモート記憶デバイス等の計算デバイス内の様々な実体的なメモリ及び記憶デバイスに様々な時に記憶され、計算デバイス内のプロセッサによって読み出されて実行されると、計算デバイスに、方法、例えば、プロセス及び動作ステップを実行させて、開示される趣旨の方法の幾つかの態様の部分として、要素を実行させる命令を含む。
【0084】
実体的なマシン可読媒体が、計算デバイスによって実行されると、計算デバイスに、開示される趣旨を定義する1つ又は複数の添付の請求項に記載され得る方法を実行させるソフトウェア及びデータの記憶に使用可能である。実体的なマシン可読媒体は、例えば、ROM、揮発性RAM、不揮発性メモリ、及び/又はキャッシュを含め、様々な実体的ロケーションに実行可能なソフトウェアプログラムコード/命令及びデータのストレージを含み得る。このプログラムソフトウェアコード/命令及び/又はデータの部分は、これらの記憶デバイスの任意の1つに記憶し得る。さらに、プログラムソフトウェアコード/命令は、例えば、中央サーバ又はピアツーピアネットワーク等を通してなどを含む態様で、リモート記憶デバイスから取得することができる。ソフトウェアプログラムコード/命令及びデータの異なる部分は、異なる時間及び異なる通信セッション又は同じ通信セッションで取得することができる。
【0085】
ソフトウェアプログラムコード/命令及びデータは、計算デバイスによる各ソフトウェアアプリケーションの実行前に全体的に取得することができる。代替的には、ソフトウェアプログラムコード/命令及びデータの部分は、動的に、例えば適時に、実行に必要なときに取得することができる。代替的には、ソフトウェアプログラムコード/命令及びデータを取得するこれらの方法の幾つかの組合せが、例として、例えば異なるアプリケーション、構成要素、プログラム、オブジェクト、モジュール、ルーチン、又は他の命令シーケンス若しくは命令シーケンスの編成で行われ得る。したがって、データ及び命令が、任意の特定の瞬間に1つのマシン可読媒体に全体的に存在する必要はない。
【0086】
一般に、実体的なマシン可読媒体は、マシン(すなわち、インターネット等の通信ネットワークからアプリケーションをダウンロードし実行可能であるか否かに関係なく、例えば、通信デバイス、ネットワークデバイス、個人情報端末、モバイル通信デバイス内、例えば、I-Phone、Blackberry、Droid等に含まれ得る計算デバイス、製造ツール、又は1つ若しくは複数のデータプロセッサ等を含む計算デバイスを含む任意の他のデバイスによりアクセス可能な形態で情報を提供する(すなわち、記憶する)任意の実体的な機構を含む。
【0087】
本教示を説明し定義するために、「実質的に」という用語が、本明細書では、任意の数量的比較、値、測定値、又は他の表現に起因し得る、固有の不確実性を表すために利用されることに留意する。「実質的に」という用語は、本明細書では、数量表現が、問題となっている趣旨の基本機能の変化を生じさせずに、述べられている言及から変更可能な程度を表すためにも利用される。
【0088】
これらの教示について様々な実施形態に関して説明したが、これらの教示が、添付の特許請求の範囲の趣旨及び範囲内で、多種多様な更なる実施形態及び他の実施形態が可能なことを認識されたい。
図1
図2
図3
図4
図5
図6
図7
図8