無線リソースがよりいっそう制約されてくると、ローカライズされたネットワーク・エンドポイント(例えば、フェムトセル又はアクセス・ポイントAPs)は、セルラー配備でしばしば見受けられるように、セントラル化された無線技術よりも優れた無線の利用性を提供するかもしれない。これら多くのローカライズされたネットワーク・エンドポイントが、セントラル通信企業ではなく、プライベートな個人又は企業により既に所有され運用されている。これらの既に導入されているエンドポイントを利用することは通信コストを削減するが、これらのエンドポイントを介するユニバーサル・アクセスを達成することに加えて、エンドポイントを提供するものを保護することに関して問題がある。
プライベート・エンドポイントが一般的な接続アクセスを提供することを許容するために、これらのエンドポイント・ホストは、プライベート・オペレータがアクセス・プロバイダ(例えば、モバイル仮想ネットワーク・オペレータ(a mobile virtual network operator:MVNO))であることを許容するように拡張されてもよい。その拡張は、サービスに関する市場価格又は許容基準を含むアクセス・パラメータを含むようにビーコンを拡張することを含んでもよい。(例えば、通信局(STA)又はユーザー装置(UE)のような)デバイスのアタッチメント(例えば、コネクション、オンボーディング等)も、(デバイスの身元確認、グループ身元確認等のような)標準のアタッチメント情報転送に加えて、ホストとデバイスとの間のネゴシエーションを促すように拡張されてもよい。ネゴシエートされたアタッチメントは、コスト条項及び報酬プロシジャ(cost terms and remuneration procedures)(例えば、リソース、金銭等の取引)に加えて、プライバシー又はプライオリティの合意を含んでもよい。デバイスのアタッチメントが成功した後、ホストは、ホストのバックホールを越えてデバイスとネットワーク宛先との間で仮想プライベート・ネットワークを実現してよい。このように、デバイスは、ネットワーク・リソースに対する確実なプライベート・コネクションを獲得するように(例えば、インターネット上で)任意のエンドポイント・ホストとネゴシエートする一方、ホスト・オペレータはデバイスの活動に対する報酬及び保護を受ける。
本願で議論されるエンドポイントの改善を実現することにより、人々は、例えば車両、家庭、オフィス等において他の人々の機器を活用して仮想ネットワークを稼働する能力を持つことになる。デバイスとホストとの間の又はバックホールの接続は、IEEE802.11、IEEE802.15.1、又は3GPP規格ファミリ、あるいはその他のネットワーク技術(例えば、有線コネクション)のような様々な無線アクセス技術を支配下に置いていてもよい。例えば、アソシエーション又はグループは、如何なるレート(又は価格)がネゴシエートされるかに応じて、(例えば、送信されるデータのように)資産を勧める様々なホストから様々なオペレータへのエアタイム(air time)を交渉するように形成されてもよい。これは、あるエリア内のホストの効率的な利用を許容し−−例えば、使用されるホストはより安価になるはずであり、より多くの新たな送信リクエストを獲得する一方で−−過剰使用の客観的な尺度を提供し、より多くのエンドポイント・ホストを導入するインセンティブを組み込む(例えば、コストが高くなる場合、他のホストを導入するために資本を投入するように動機付けられるかもしれない)。これは、例えば、プライベートな家庭の所有者、車両の所有者、又は事務所の所有者が、不使用時に彼らの能力の一部を転売することを可能にする。利用可能なスペクトル・キャパシティ、利用可能な価格、及び利用可能な最良価格 (best rate)に基づいて、様々なオペレータを自動的に選択することをユーザーに許容する。例えば、車両のグループが、車両同士の間でメッシュを形成するように、IEEE802.11及び1つの車両(例えば、ホスト)を介してバックホールに至って話をしてもよく、トラフィックはセルラー・バックホール上で統合及びプッシュされる。車両のグループは、第2車両もセルラー・バックホールを有するグループに関するものであってもよい。後の時点において、第2バックホールに関する価格が安くなり、第2車両はより安いホスト価格を提示できるかもしれない。この時点において、残りの車両は、第1車両とのコネクションをドロップし、第2車両のバックホールを利用してもよい。アタッチメント・ネゴシエーションはケーパビリティ・レゾリューション(capability resolution)を含んでいてもよい。例えば、第1バックホールは安価であるが、ビデオ・ストリーミングのような大量の通信に関して信頼性に乏しいかもしれない。従って、デバイスが、ビデオをストリーミングすることや、多くのソフトウェア・アップデートを実行すること等のリクエストを受信する場合、アタッチメント・ネゴシエーションは、スループットに関する信頼性や、単に価格だけではない信頼性を評価するであろう。
本願で説明されるシステム及び技術は、より大きなスペクトル効率をもたらす結果となり、ネットワークに対するデバイス・アクセスを増やし、ホスト・オペレータとデバイス・ユーザーとの間の運用独立性を維持し、且つ一般的なアクセスに対してネットワーク・エンドポイント・ホストを解放又は導入するインセンティブを与える。これらの特徴の組み合わせは、今日の世界の専用の及び孤立したエンドポイントのインストレーションを乗り越える。
図1は実施形態による仮想プライベート・ネットワークに関するシステム100の一例のブロック図である。システム100はデバイス105とホスト130A-130Cとを含む。ホスト130は、セルラー・バックホール135B、135C、又はメッシュ・バックホール135Aのようなバックホール135に接続される。ホスト130及びバックホール135は、インターネットのようなネットワーク140に対するアクセスを提供する。
デバイス105は、本願で説明される仮想プライベート・ネットワークを実現するコンポーネントを含む。コンポーネントの全ての要素は、図6に関して後述されるようなコンピュータ・ハードウェア(例えば、回路)で実現される。コンポーネントは、複数のホスト・ビーコンを取得するように構成される受信機110を含む。一例において、各ビーコンはバックホール135に対応する。従って、ホスト130Cがバックホール135Cに加えて第2バックホールを有していた場合、ホスト130Cは、各バックホールにつき1つの合計2つのビーコンを送信してもよい。例えば、単独のビーコンは、複数のバックホール識別子(a plurality of backhaul identifications)を含む。一例において、ビーコンは、エンドポイント・パフォーマンス・データ構造(an endpoint performance data structure)を含む。パフォーマンス・データ構造はバックホール135に固有であってもよい。一例において、パフォーマンス・データ構造は、複数のバックホール135に関する情報を含み、その情報は識別子(ID)又はパフォーマンス・メトリックのうち少なくとも何れかによりそれら(バックホール)を識別する。
パフォーマンス・メトリック・データ構造はあるメトリックを提供し、そのメトリックにより、所与のホスト130に入る判断がなされてもよい。従って、パフォーマンス・データ構造は、このデータを保持する1つ以上のフィールドを含む。一例において、フィールドはコネクションのタイプを含んでもよい。例えば、フィールドは、コネクションが、デバイス105とホスト130との間のIEEE802.11の5ギガヘルツ(GHz)コネクションであることを示す。一例において、コネクションのタイプは、(例えば、IEEE802.11又はIEEE802.15.1のような)受信信号強度又はプロトコルのうちの少なくとも何れかを含む。一例において、コネクションは、無線(例えば、IEEE802.xx、3GPP、衛星等)又は有線(例えば、ケーブル、イーサーネット、フレーム・リレー、光ファイバ等)のようなバックホール135のタイプを含む。一例において、フィールドは帯域幅を示す。例えば、フィールドはレイテンシ(a latency))を示す。一例において、フィールドは、そのバックホールを利用するユーザーの数(例えば、輻輳度、リソース利用度等)を示す。一例において、フィールドはバックホールのコストを示す。一例において、コストは通貨(a currency)である。一例において、コストはリソースの観点からのもの(例えば、使用されるものに対する提案される帯域幅の比率)である。
一例において、フィールドは物理レイヤの特徴を示す。物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。一例において、フィールドはサービス品質(QoS)を示す。本願で使用されるように、QoSは実行する保証(a promise to perform)を示すメトリック(又は基準)である。例えば、QoSは、前提としているハードウェアにより保証される帯域幅又はレイテンシを示してもよい。一例において、QoSは優先度の提示(a priority offering)であり、より高い優先度のトラフィックは、より低い優先度のトラフィックに取って代わることになる。従って、絶対的なリソースの保証は提示されないが、低い優先度の送信に特化されるものを含む利用可能な全てのリソースが、より高い優先度の送信に利用可能にされることになる。
一例において、フィールドはアプリケーション・サポートを示す。一例において、アプリケーション・サポートは、音声呼のサポート、音楽のサポート、又はビデオのサポートのうちの少なくとも何れかの指示である。一例において、アプリケーションのサポートは、仮想プライベート・ネットワーク(VPN)のサポートの指示である。このVPNのサポートは、仕事場のネットワークのような、デバイスとネットワーク・エンドポイントとの間の暗号化されたトンネルを提供する。これは、一般的にデバイス105のトラフィックを他のデバイス又はホストのオペレーションのものから分離するために、ホスト130が実行するかもしれないパーティショニングとは異なる。
デコーダ115は、複数のホスト・ビーコンから、一群のエンドポイント・パフォーマンス・データ構造を取り出すように構成される。ホスト130は、エンドポイント・パフォーマンス・データ構造を各自のビーコンに加えるように構成される。これらのデータ構造がデコードされると、そこに含まれているフィールドは、アタッチするホスト130を決定することを含む様々な目的のために使用されてよい。
フィルタ120は、一群のエンドポイント・パフォーマンス・データ構造のメンバーについての一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソート(sort)するように構成される。このソーティングは、ユーザーの好みに基づいて実行される。これらの好みは、コストよりもパフォーマンスを優先させてもよいし、あるいは例えば周期的に健康データを報告すること等のようにパフォーマンスが問題でない場合にはコストの節約を強調してもよい。一般に、ソーティングはフィールドの階層に関して影響を及ぼし、例えば最高の帯域幅を有するホスト130を最初に識別する。(例えば、設定されることが可能なエラー・マージンの範囲内で互いの)いくつかのホスト130が同じ帯域幅を有する場合、レイテンシやコストのような次のフィールドがソートされる。この方法では、ビーコンが受信された全てのホスト130が順序付けられる。例えば、その順序は、ソーティングの各レベルで破棄されたホスト130であってもよい。一例において、フィールドにはウェイト(例えば、乗数)が指定される。フィールドに与えられるメトリックは、ウェイトとともに組み合わせられる。各フィールドは重み付けされるので、ホスト・スコアが作成される。従って、ホスト・スコアは、ソートを実行するように順序付けられてもよい。一例において、フィールド優先度のソーティング及びフィールド重み付けの組み合わせは、順にソーティングされるフィールド・グループの重み付けを含んでもよい。
一例において、一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて一群のエンドポイント・パフォーマンス・データ構造をソーティングするために、フィルタ120は、優先度マッピングによりフィールドを順にソーティングする。例えば、優先度マッピングはフィールドのランキングを含み、フィルタ120は最高ランクを有するフィールドを最初に選別する。一例において、優先度マッピングはあるレンジを指定する少なくとも1つのフィールドについての閾値を含み、フィールド値はそのレンジで考慮されることになる。従って、レンジの外にあるフィールドには同様なMAX又はMINの値が指定され、それに応じてソーティングされることになる(例えば、閾値を超える相違する2つの値は、あたかもそれらが同じMAX値を有していたかのように、そのフィールドに関してソーティングされることになる)。一例において、レンジは単独の値及び方向により規定される。ここで、方向(the direction)は、「〜より大きい」、「〜以上」、「〜より小さい」、又は「〜以下」のうちの少なくとも何れかである。
フィルタ120は、受信したエンドポイント・パフォーマンス・データ構造におけるフィールドに基づいて、所与のホスト130の望ましさ(the desirability)に影響を及ぼす。即ち、例えばソーティングは音声データをサポートしないホスト130を削除するかもしれないし、あるいは低コストのホスト130をより高い価格のホスト130よりも優先するかもしれない。このように、(例えば、過剰に多くのデバイスが所与のホストのバックホール135を使用することのような)輻輳の問題又はコスト高のバックホール135の課金のような問題は、デバイス105により回避され得る。
トランシーバ125は、エンドポイント・パフォーマンス・データ構造のソートされたセットの端部(an end)におけるエンドポイント・パフォーマンス・データ構造に対応するホストに関し、バックホール135への入場を交渉するように構成される。データ構造が、ソートされたセットのうちの端部におけるものである場合、それは利用可能なメトリックの下で最良の選択肢である。ネゴシエーション(The negotiation)は、デバイス105がホストの期待に合致するか否かを判断するための、デバイス105と選択されたホスト130との間におけるやり取りである。一例において、トランシーバ125は受信の目的で受信機110を利用する。
一例において、バックホールへの入場を交渉するために、トランシーバ125はホストへアタッチするように構成される。このアタッチ(This attachment)は暫定的なネットワーク・エントリの形式であり、それにより、前提とするコネクション・プロトコルに応じて物理(PHY)又は媒体アクセス(MAC)通信を設定するように、正規のネットワーク・エントリ・プロシジャが後に続けられる。バックホール135へのアクセス権は未だ付与されていないので、この時点でデバイス105はホスト130のみと通信している点で暫定的である。
アタッチメントの後、トランシーバ125は、リソースのオファー(an offer)がホスト130へ送信されることを引き起こすように、構成される。一例において、リソースはデバイス105の物理リソースである。この交換システム(This barter system)は、協働デバイス・メッシュにおける信頼性のある見返り等であるクイド・プロ・クオ(a reliable quid pro quo)を提供し得る。この場合におけるその目的はある信頼性の高いメカニズムを提供することであり、そのメカニズムにより、利用度を測定し、ホスト・オペレータにより多く報酬を与えるのではなく輻輳を迂回するようにルーティングする。一例において、リソースは通貨である。
一例において、バックホール135への入場を交渉するために、トランザクションが実行されてもよく、そのトランザクション(又は取引)においてバックホール135へのアクセスのためにリソースが(引き替えに)差し出される。一例において、引き替えに差し出すことは、ホスト130を介してデバイス105によりアクセスされるリモート・ベンダー・マシン145において生じる。この例では、デバイス105とホスト130との間の暫定的なコネクションは、クレジット・カード会社により運営されるもののようなリモート・ベンダー・マシン145へのバックホール135のコネクションを許容するように拡張される。いったんトランザクションが完了すると、バックホール135を介してネットワーク140に至るより一般的なコネクションがホスト130によりイネーブルにされる。
一例において、デバイス105により提供されるオファーはホスト130によって拒否される。拒否は、ホスト130にとってそのオファーがエンドポイント・パフォーマンス・データ構造で示されるものを充足するには不十分であることから生じるかもしれない。一例において、エンドポイント・パフォーマンス・データ構造を送信するビーコンとデバイス105により行われるリソースのオファーとの間で、ホスト130の動作状態は変更されてもよい。これは、例えば、別のデバイスの帯域幅の利用が増えた場合や、別のデバイスがホスト130にアタッチした場合に生じるかもしれない。これらの例において、受信機110はオファーに対する拒否を取得するように構成される。そして、その拒否に応じて、トランシーバ125は、リソースのカウンター・オファー(又は代案)がホスト130に送信されることを引き起こす。カウンター・オファーのパラメータは、ユーザーにより設定されてもよいが、ユーザーにより実装されていなくてもよい。例えば、ユーザーは、特定のレベルの帯域幅及びレイテンシについて最大及び最小の付け値(a maximum and minimum bid price)を指定してもよい。トランシーバ125は、金銭的な範囲の下限を最初に試行して拒否されるかもしれない。そしてトランシーバ125は対数関数のような関数に基づいて新たなオファーを選択してもよく、それによりオファーに対して始めの頃の変化はより大きく、オファーが継続するにつれて小さくなる。一例において、ネゴシエーション・クロック(a negotiation clock)は、経過時間やオファー及びカウンター・オファーの差し出し回数を制限する。これは、時宜にかなった方法でホスト130の選択を促す。
上述したように、デバイス105及びホスト130に関するセキュリティは、例えばオープン・アクセス・フレームワークにおいて懸念となり得る。この問題に対処するため、一例において、受信機110及びトランシーバ125は、バックホール・セッションのためにホスト130に関するセキュリティ認証情報を交換することにより、バックホールへの入場を交渉する。一例において、セキュリティ認証情報はパブリック・キー証明書を含む。一例において、セキュリティ認証情報を交換するために、権限当局150とのインターフェースが、ホスト130により設定される。一例において、セキュリティ認証情報は、そのネゴシエーションに先行してリモート権限当局150とネゴシエーションした利用トークン(a usage token)を含む。ここで、利用トークンはリモート権限当局150に関してデバイス105を確認するためにホスト130により使用される。これらのセキュリティ交換は、何らかの方法でデバイス105を確認することによりホストに恩恵をもたらし得る。具体例は、デバイス105が信用されること(例えば、ウィルスが無いこと、競合企業に係わっていないこと等)、あるいはホスト130又はホスト130が所属するグループに対してデバイスが申し込み(a subscription)を有することを確認するステップを含んでもよい。
デバイス105及びホスト130の間のセキュリティは、デバイスのトラフィックをホスト130から分離することにより更に拡張されてもよい。これは、例えば、デバイス105が不法な又はその他の望ましくない活動に従事するために使用される場合に、ホストの負担を軽減するかもしれない。この分離を確立するため、一例において、トランシーバ125は、ホスト130及びバックホール135を介してデバイス105と宛先との間に仮想ネットワーク・トンネルを設定し、仮想ネットワーク・トンネルを介して宛先へデータを送信するように構成される。そのような仮想ネットワークはホスト130を予防接種(inoculate)しており、なぜならホスト130はトンネルを通るデータを詮索できないからである。従ってその恩恵はデバイス105にも生じ、悪意のホスト・オペレータがデータを盗むことを防止する。
上記のシステムは、ユーザー又はデバイス所有者が転売する或いは未知のデバイスへのWANアクセスをオファーしたいと思う場合に提起される技術的な困難性を解決し得る。具体例は:ケーブル加入者又はケーブル・プロバイダ(例えば、ゲスト(Guest)又はユニークSSID)がサービスを提供するためにまた貸しすること;パブリック環境(例えば、レストラン、バー、図書館等)における非セルラー・デバイス(例えば、タブレット、音楽プレーヤ等)に対するWANサービス;デバイス/ユーザーに対するWANサービスをオファーする次世代車両;等を特に含んでよい。
一般に、ホスト130(例えば、WANプロバイダ)はコネクション情報をブロードキャストし、コネクション情報は、例えば:コネクションのタイプ(例えば、3G、4G、5G等);データ速度;リンクに存在するユーザー数;サービスのコスト;VPNが許容されているか否か(例えば、Y/N);現在の動作周波数(例えば、2.4/5GHz);デバイスのMIMO特徴;アプリケーション・サポート・ケーパビリティ(例えば、音声呼、音楽、ビデオ等);保証QoS等である。クライアント(例えば、デバイス105)は、上記のパラメータに基づいて、見えるネットワークに優先順位を付け、認証又は加入によりサービス及び申し込みを選択する。ホスト130は、加入又は認証を確認した後にパケットのルーティングを許容する。デバイスは、ライセンスされている及びライセンスされていない無線経路を介してVPN又はその他のセキュアなコネクションを設定してもよい。
上述したように、デバイス105は、ホスト選択に備えてソーティング及び選択プロシジャを実行する。例えば、デバイスは、デバイス105で受信した信号に基づいて、良くない又は非所望の信号を有するホスト130を先ず除外してもよい。次に、デバイス105は、QoS、レイテンシ、帯域幅、又はその他の特徴に関する目標値に基づいてホスト130を優先順位付けしてもよい。いったんホスト130が選択されると、デバイス105はコネクションを開始するためにホスト130にコマンドを送信してよい。
デバイスの動作に関するユーザーの体感は、このシステムによりイネーブルにされる動的なサービス・プロバイダのソーティングにおいて課題となり得る。利用トークン技術は、デバイス105が権限当局150により事前に認可されることを許容することにより、不和(friction)を減らし得る。この技術は、デバイス105及びホスト130により実行される以下のオペレーションを含んでもよい。
第1に、デバイス105は、ワン・タイム利用トークンを生成し(例えば、取得し)、それを確実にホスト130へ送信してもよい。この場合、(例えば、インターネットのような)広いネットワーク接続は使用されない(又はホスト130により提供されない)。
第2に、ホスト130は、権限当局150と証明書を交換するために、限られたコネクティビティをデバイス105に提供する。
第3に、デバイス105は、証明書を利用してトークンを暗号化し、暗号化されたトークンをホスト130へ安全に送信する。
第4に、ホスト130は、トランザクションを完了し、デバイス105のためにバックホール135をイネーブルにする。
この交換では、ホスト130は、複数のデバイス(例えば、加入者)をサポートするように構成され、「非接続(No Connectivity)」及び「接続(Connected)」の状態間でデバイスを移してもよい。以下の利用例において、デバイス105は、ホスト130及びバックホール135を介するネットワーク140へのアクセスを獲得するためにダイナミック・バインディング(a dynamic binding)を実行する。
第1に、デバイス105は、実行可能な一群のホスト130について入札を行う。
第2に、ホスト130は、その入札(the bid)に対して肯定的又は否定的に応答してもよいし、あるいは代替的なオファーを行ってもよい。
第3に、デバイス105は、ある入札を受け入れ、他の全てのホスト130へ永続的な拒否(REJECT PERMANENT)を送信してもよいし、あるいは受け入れの後では応答することを停止し、他のホスト130におけるタイムアウトをもたらしてもよい。
第4に、ホスト130は帯域幅の要請に関するメトリックを追跡する。ホスト130は、コネクションの前又は最中に、急増モード(surge mode)をトリガーしてもよい。デバイス105は、急増状態(例えば、レート)を受け入れるように又は代替的なネットワークへ移動するように強制されてもよい。
図2は実施形態に従って仮想プライベート・ネットワークを設定するための通信200の一例を示す。通信200はネットワーク・エントリ・プロシジャを示し、これにより例えばセルラー・サービスのユーザーは、IEEE802.11やIEEE802.15.1等のような非セルラー技術を越えて他のユーザーへのワイド・エリア・ネットワーク(WAN)アクセスを提供し得る。
WANアクセスは、バックホールの属性をWANへ告知することにより提供されてもよい。一例において、告知(the advertisement)はビーコンの形式をとる。一例において、告知は、免許不要周波数帯技術(例えば、IEEE802.11、IEEE802.15.1等)において実行される。一例において、属性は、アプリケーションのサポート、帯域幅、レイテンシ、及びコストのようなメトリックを含む。
ホストは、バックホール・サービスへオファーする現在の能力をモニタリングする。この能力は、バックホールの価格設定又は利用(例えば、帯域幅制限(bandwidth caps)、時間帯別価格設定、利用可能な変動など)、及び現在の利用により(例えば、ホストのプライマリ・ユーザーにより、あるいはオープン・エンドポイントを利用する他のデバイスにより)決定されてもよい。一例において、能力における変動は、価格の変動をもたらす結果となる。即ち、利用可能性が低い場合、価格は上昇する。ホスト・オペレータは、関数(例えば、指数関数、線形関数など)、時間パラメータ(例えば、夜及び週末の価格をより高くすること)等のようなこの判断を取り巻く多数のパラメータを設定してもよい。オープン・エンドポイントをホストする能力の要素は、エンドポイント・パフォーマンス・データ構造にパッケージングされ、ビーコン(メッセージ205)によりブロードキャストされる。
デバイスがホストのビーコン・レンジに入ると(例えば、デバイスがビーコンを受信すると)、デバイスは、ホストが提案しているのは如何なる種類のエンドポイントであるかを判断するためにビーコンをデコードする。従来のワイヤレス・ネットワーク・エントリから修正されたアタッチメント・プロシジャでは、デバイスは入札とともにアタッチする(メッセージ210)。入札はあるデータ構造であり、そのデータ構造は、リソースのレスポンス、及びおそらくはデバイス・オペレータからホスト・オペレータへのリソースの取引の仕方又はリソースの転送を記録する仕方を含む。上述したように、入札は、ビーコンで尋ねられているものより低くてもよいし、あるいは高額でさえあってもよい。
デバイスにとって1つより多いホストが存在する例では、入札はそのような豊かさ(abundance)を反映してもよい。例えば、入札は、適切なホスト数の関数としてより低くなってもよい。更に、入札が行われる対象のホストは、利用可能なホストのケーパビリティをソーティングすること、及びより高いソート・ランクを有するホストに連絡することに基づいて選択されてもよい。一般に、デバイスは、ケーパビリティ又はコストに基づいて、ホストからのWANバックホール提案に優先順位を付ける。
ホストが入札を受けた後、ホストは、アタッチメント・プロシジャを継続するか否かを判断することになる。継続しないことをホストが決定する場合、アタッチメントは失敗し、デバイスは他のホストを探しに行く。しかしながら、入札が受け入れられる場合、デバイスは、(例えば、使用するセキュリティ・デバイス、デバイスID等のような)更なるアタッチメント命令の通知を受ける(メッセージ215)。そして、デバイスはアクセプタンスとともにアタッチメントを完了する(メッセージ220)。一例において、ピア・ツー・ピア又はクラウド・ベースの取引メカニズムを介して、サービスに対する請求取引が完了する。一例において、ホストは、サービスの取引が完了するまで、デバイスのためのルーティング又は橋渡しをバックホールへ提供しない。
図3は、クラウド・コンピューティング・ネットワーク、即ちIoTデバイス302のメッシュ・ネットワークと通信するクラウド300の図であり、メッシュ・ネットワークはフォグ(a fog)320と言及され、クラウド300のエッジで動作する。図面の簡明化のため、全てのIoTデバイス302にラベルが付されているわけではない。
フォグ320は大規模に相互接続されたネットワークであると考えられてよく、多数のIoTデバイス302が例えば無線リンク322により互いに通信している。これは、2015年12月23日付でOCF(the Open Connectivity FoundationTM)によりリリースされたOIC(the open interconnect consortium)標準仕様3.0を利用して実行されてもよい。この規格は、デバイスが、互いに発見し合い、相互接続用の通信を設定することを許容する。例えば、OLSR(the optimized link state routing)プロトコルや、「B.A.T.M.A.N.」(the better approach to mobile ad-hoc networking)等のような他の相互接続プロトコルが使用されてもよい。
この例では、ゲートウェイ324、データ・アグリゲータ326、及びセンサー328という3つのタイプのIoTデバイス302が示されているが、任意の組み合わせのIoTデバイス302及び機能が使用されてよい。ゲートウェイ324は、クラウド300とフォグ320との間に通信を提供するエッジ・デバイスであってもよく、モーション・データ、フロー・データ、温度データ等のようなセンサー328から取得されるデータに対するバックエンド・プロセス機能を提供してもよい。データ・アグリゲータ326は、任意の数のセンサー328からデータを収集し、分析のためにバック・エンド処理機能を実行してよい。結果のデータ、処理前のデータ、又はそれら双方がゲートウェイ324を介してクラウド300に沿って渡されてもよい。センサー328は、例えば、データの収集及びデータの処理の双方が可能なフルIoTデバイス302であってもよい。場合によっては、センサー328は機能的に更に限定されていてもよく、例えば、データを収集すること、及びデータ・アグリゲータ326又はゲートウェイ324がデータを処理するのを許容することに限定されていてもよい。
何れのIoTデバイス302からの通信も、任意のIoTデバイス302間でゲートウェイ324へ至る最も有用な経路に沿って渡されてよい。これらのネットワークにおいて、相互接続の数はかなりの冗長性を提供するので、多数のIoTデバイス302が欠落した場合でさえ通信が維持されることを許容する。更に、メッシュ・ネットワークを利用することは、他のIoTデバイス302に接続するためのレンジがゲートウェイ324に接続するためのレンジよりかなり小さい場合であっても、非常に低電力である又はインフラストラクチャから距離を隔てて配置されるIoTデバイス302が使用されることを許容する。
これらのIoTデバイス302のフォグ320のデバイスは、クラウド300におけるデバイス(例えば、サーバー304)に対して、クラウド300のエッジに配意される単独デバイス(例えば、フォグ320デバイス)として、提供されてもよい。この例において、フォグ320のデバイスから到来するアラートは、フォグ320内の特定のIoTデバイス302から到来しているように識別されることなく、送信されてもよい。
いくつかの例において、IoTデバイス302は、命令型プログラミング・スタイルを利用して構成されてもよく、例えば、各IoTデバイス302は特定の機能及び通信パートナーを有する。しかしながら、フォグ320デバイスを形成するIoTデバイス302は宣言型プログラミング・スタイルで構成されてもよく、そのような構成は、IoTデバイス302が、各自のオペレーション及び通信を再構築することを許容し、例えば状態、問い合わせ、及びデバイスの不具合に応答して必要なリソースを決定することを許容する。一例として、サーバー302に位置するユーザーからの問い合わせであって、IoTデバイス302により監視される一部の装置の集まりの動作に対する問い合わせは、問い合わせに回答するために必要とされるIoTデバイス302(例えば、特定のセンサー328)をフォグ320デバイスが選択する結果をもたらすかもしれない。そして、これらのセンサー328からのデータは、問い合わせに回答するためにフォグ320デバイスによりサーバー304へ送信される前に、センサー328、データ・アグリゲータ326、又はゲートウェイ324の任意の組み合わせにより集約及び分析されてよい。この例では、フロー・センサー又は温度センサーからのデータを加えること等のようなクエリーに基づいて、フォグ320のIoTデバイス302が、使用されるセンサー328を選択してもよい。更に、いくつかのIoTデバイス302が使用可能でなかった場合、フォグ320デバイスのうちの他のIoTデバイス302が、利用可能であれば、同様なデータを提供し得る。
図4は実施形態による仮想プライベート・ネットワークを実現する方法400の一例を示す。方法400の全てのオペレーションは、上記及び下記のコンピュータ・ハードウェア(例えば、回路)により実行される。
オペレーション405において、ホストは、アクセスを求めるリクエストをデバイスから受信する。ホストは、要求されているデータのタイプを評価する。データ・タイプは、音声データ、一般的なデータ、ビデオ・データ等を含んでよい。
オペレーション410において、要求されているデータ・タイプが分かった後、ホストはルール・セット(a rule set)を作成する。一例において、ルール・セットは、エンドポイント・パフォーマンス・データ構造に組み込まれる。ルール・セットはパラメータを設定し、そのパラメータによって、デバイスはホストのバックホールへのアクセスを獲得し得る。ルール・セットは、アップストリーム・プロバイダ(例えば、セルラー又はケーブル・サービス)によってホストに提供される。
オペレーション415において、ホストは、ホストにとって利用可能な他のもの(存在すれば)に対してルール・セットを評価する。一例において、データ評価は、ルール・セットに組み込まれたデータ・レート・プランを評価することに着目する。この評価は、時間帯、曜日、休日、又は場所に基づいて異なってもよい。この相違は、所定の時間又は場所の条件において予想されるサービスは高額又は低額になり、利用可能なサービスの評価はこれらの状態に基づいて変化し得ることを示す。
オペレーション420において、エントリのためのパラメータがデバイスにプッシュされる。オープン・アクセス・ネゴシエーションのホストの側を設定するのはこれらのパラメータである。
オペレーション425において、ホストとのネゴシエーションを促進するために、デバイスは、代替的なWANアクセス経路の利用及び利用可能性を確認するためにメトリックを収集してもよい。
オペレーション430において、オペレーション425からのデバイスにとって可視的な利用データは、ホストとのネゴシエーション実務を修正するために使用される。例えば、余剰キャパシティが存在する場合、デバイスはそうでない場合よりも低い入札を提供してもよい。
図5は実施形態による仮想プライベート・ネットワークを実現するホストに関する方法500の一例を示す。方法500の全てのオペレーションは、上記及び下記のコンピュータ・ハードウェア(例えば、回路)により実行される。
オペレーション505において、ホストはデバイス(例えば、クライアント)からデータ・クラシフィケーション(a data classification)を受信する。データ・クラシフィケーションは、データ・タイプ(例えば、ビデオ、チャット、ストリーミング等)、QoS指示、ネットワーク宛先などのうちの1つ以上を含んでよい。
オペレーション510において、ホストは、データ・クラシフィケーションに対応するチャネルの状況依存制約(a context dependent constraint)を生成する。ここで使用されるように、チャネルは、デバイスのデータを取り扱うこと等のような特定の目的に特化されてよいリソースの論理的な集まりである。チャネルは、特定のバックホール、バックホールの一部分(例えば、利用可能な帯域幅のうちの一部分)、無線リソース(例えば、特定の周波数バンド又はサブ・バンド)、又は利用可能なリソースの他の一部分であってもよい。
状況依存制約は、可観測で強制可能な条件(an observable and enforceable condition)であり、デバイスはチャネルに対するアクセスを得るためにその条件を充足しなければならない。そのような制約の一例は、ホストと確実に通信するためにデバイスにより使用されるセキュリティ・メカニズムである。他の例は、例えば金銭のように、デバイスがチャネルにアクセスするために取引し得る利用可能なリソースを含んでもよい。制約は状況依存性であり、なぜならそれは時間、ホストによる現在のリソース利用、データ・クラシフィケーションに基づいて、又はデバイスのタイプ若しくはオーナーシップにさえ基づいて変化し得るからである。従って、ピーク時間の最中において、チャネルにアクセスするレートは、非ピーク時より高いかもしれない。同様に、ビデオ・ストリーミングは、一般的なデータ・アクセスより高額でないかもしれない。需要のあるリソースは、デバイスが他のプロバイダを探し出すことをよりコスト高に行わせるので、フレキシブル制約システムはエンドポイントのリソースの最も効率的な利用を許容し、負荷を平坦化する。
オペレーション515において、状況依存制約はクライアント・デバイスへ送信される。この送信は、データ・クラシフィケーションを当初に提供しているデバイスにとって固有であってもよい。例えば、その送信はアクセスを要求している任意のクライアントに提供される。一例において、送信は、係属中のアクセス・リクエストによらず、任意のクライアントに利用可能であるブロードキャストである。一例において、送信はビーコンにおけるものである。ビーコンは、例えばホストを通知し、タイミングや利用可能な周波数等のようなアタッチメント情報を提供するために、例えばIEEE802.11のような無線技術でしばしば利用されている。これらのビーコンの仕組みは、上記の制約を含むように拡張されてよい。ビーコンに制約を含めることにより、少なくとも1つのリクエスト・レスポンス送信サイクルが回避され、有効作業(useful work)に関するスペクトル効率を増やす。
デバイスは、利用可能なホストを評価するために上記制約を利用してもよく、他のホストよりも良い制約条件を有するホストを選択する。上述したように、リソースに関するこのマーケットは、効率的な無線及びエンドポイント・リソース活用に導くことになる。所望のホストがクライアントにより発見されると、クライアントは、そのホストにアタッチし、ホストのバックホールへのアクセスをネゴシエートする。それが完了すると、デバイスはネットワークにアクセスすることが可能になる。
オペレーション520において、ホストは周期的にクライアントからの利用分析(use analytics)を要求する。これらの利用分析はクライアント・デバイスのデモグラフィックをホストに提供し、そのデモグラフィックは、リソースの利用可能性、リソースの制限、及び状況依存制約の生成に影響を及ぼす他の要因を、ホストがより良く評価することを可能にする。利用分析は、ホストに情報提供しつつもユーザーのパーソナル・データの漏洩からクライアント・デバイスを保護するために、送信に先だってクライアントにより匿名化されてもよい。
オペレーション525において、ホストは受信した利用分析によりコンテキストをアップデートする。コンテキストは、例えば移動平均のような様々なメトリックについての進行中の集計又は推定であってもよい。一例において、コンテキストに対する分析の寄与は高齢化し、それにより、より古い分析メトリックは、現在のメトリックよりも小さな影響をコンテキスト値に対して有するようになる。こうして、クライアントのリソース利用における経時的な緩慢な変動は、ユーザーの介入無しに対処される。従って、ある現場でのビデオ・ストリーミングに対する動向はコンテキストによって記録されるが、インスタント・メッセージングにおける短命のスパイクは何らかの大きな程度までコンテキストに影響せず、それらは全てユーザーの介入無しに行われる。
図6は、実施形態による仮想プライベート・ネットワークを実現するデバイスに関する方法600の一例を示す。方法600の全てのオペレーションは、上記及び下記のコンピュータ・ハードウェア(例えば、回路)により実行される。
オペレーション605において、複数のホスト・ビーコンが取得される。ここで、各々のビーコンは、あるバックホールに対応する。従って、単独のホストは、そのホストが提供する複数のバックホールの各々について異なるビーコンを有し得る。各ビーコンはエンドポイント・パフォーマンス・データ構造も含む。
オペレーション610において、一群のエンドポイント・パフォーマンス・データ構造が、複数のホスト・ビーコンから取り出される(即ち、デコードされる)。
オペレーション615において、一群のエンドポイント・パフォーマンス・データ構造は、一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいてソーティングされる。一例において、一群のフィールドは、コネクションのタイプ、帯域幅、レイテンシ、バックホールを利用するユーザーの数、バックホールのコスト、物理レイヤの特徴、QoS、又はアプリケーション・サポートのうちの少なくとも何れかを含む。一例において、物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。一例において、コネクションのタイプは、受信信号強度又はプロトコルのうちの少なくとも何れかを含む。一例において、アプリケーション・サポートは、音声呼のサポート、音楽のサポート、ビデオのサポート、又は仮想プライベート・ネットワーク(VPN)のサポートのうち少なくとも何れかについての指示(又はインジケータ)である。
一例において、一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて一群のエンドポイント・パフォーマンス・データ構造をソーティングすることは、優先度マッピング(a priority mapping)により順にフィールドをソーティングすることを含む。ここで、優先度マッピングはフィールドのランキングを含む。ソーティングの際に、より高いランクのフィールドが先にソーティングされる。一例において、優先度ランキングは、少なくとも1つのフィールドに対する閾値を含む。閾値は、フィールド値が考慮されることになるレンジを指定する。一例において、レンジは1つの値と1つの方向で規定され、方向は、「〜より大きい」、「〜より大きい又はそれに等しい」、「〜より小さい」又は「〜より小さい又はそれに等しい」のうちの少なくとも何れかである。
オペレーション620において、エンドポイント・パフォーマンス・データ構造のソートされたセットの端部にあるエンドポイント・パフォーマンス・データ構造に対応するホストのバックホールへの入場が、ネゴシエートされる。一例において、ネゴシエーションは、ホストにアタッチすること、及びリソースのオファーがホストへ送信されるのを引き起こすことを含む。一例において、方法600は、オファーに対する拒否を取得し、拒否に応答してリソースのカウンター・オファーがホストへ送信されるのを引き起こすことを含むように拡張される。一例において、リソースは通貨である。一例において、リソースはデバイスの物理リソースである。一例において、バックホールへの入場をネゴシエートすることは、トランザクションを実行することを含み、そのトランザクションにおいて、バックホールにアクセスするためにリソースが差し出される。一例において、その差し出しはホストを介してアクセスされるリモート・ベンダー・マシンにおいて生じる。
一例において、バックホールへの入場をネゴシエートすることは、バックホール・セッションのためにホストに関するセキュリティ認証情報を交換することを含む。一例において、セキュリティ認証情報はパブリック・キー証明書を含む。一例において、セキュリティ認証情報を交換することは、ホストを介して権限当局と相互作用することを含む。ここで、一例では、セキュリティ認証情報は、そのネゴシエーションに先行してリモート権限当局とネゴシエーションした利用トークンを含む。そして、利用トークンはリモート権限当局に関してデバイスを確認するためにホストにより使用される。
方法600は、ホスト及びバックホールを介してデバイスと宛先との間に仮想ネットワーク・トンネルを設定することを含むように選択的に拡張されてもよい。このトンネルが設定された後、方法600は、仮想ネットワーク・トンネルを介して宛先へデータを送信することを含む。
図7は、本願で議論される任意の1つ以上の技術(例えば、方法)が実行されてよい例示的なマシン700のブロック図を示す。代替的な実施形態において、マシン700は、スタンドアローン・デバイスとして動作してもよいし、あるいは他のマシンに接続されてもよい(例えば、ネットワーク化されてもよい)。ネットワーク化されて配備される場合、マシン700は、サーバー・クライアント・ネットワーク環境の中で、サーバー・マシン、クライアント・マシン、又は双方のキャパシティにおいて動作してもよい。一例において、マシン700は、ピア・ツー・ピア(P2P)(又はその他の分散された)ネットワーク環境におけるピア・マシンとして活動してもよい。マシン700は、パーソナル・コンピュータ(PC)、タブレットPC、セット・トップ・ボックス(STB)、パーソナル・ディジタル・アシスタント(PDA)、移動電話、ウェブ・アプライアンス、ネットワーク・ルーター、スイッチ又はブリッジ、あるいはそのマシンにより行われるアクションを指定する(シーケンシャルな又はそれ以外の)命令を実行することが可能な何らかのマシンであってもよい。更に、単独のマシンしか図示されていないが、「マシン」という用語は、クラウド・コンピューティング、SaaS(software as a service)、その他のコンピュータ・クラスタ・コンフィギュレーションのような、本願で説明された任意の1つ以上の方法を実行するために命令のセット(又は複数のセット)を個別的又は一緒に実行するマシンの任意の集まりを含むように把握される。
本願で説明されるように、具体例は、ロジック、又は多数のコンポーネント、又はメカニズムを含んでもよいし、あるいはそれらにより動作してもよい。回路(Circuitry)は、(例えば、簡易な回路、ゲート、ロジック)ハードウェアを含む有体エンティティで実現される回路(circuits)の集まりである。回路の構成要素は、時間経過とともに及び前提とするハードウェアの変動により柔軟であり得る。回路は、単独で又は組み合わせで、動作する際に特定のオペレーションを実行し得るメンバーを含む。一例において、回路のハードウェアは、特定のオペレーションを実行するように不変に設計されてもよい(例えば、有線接続されてもよい)。一例において、回路のハードウェアは、様々に接続された物理コンポーネント(例えば、実行ユニット、トランジスタ、単独の回路等)を含んでもよく、物理コンポーネントは、特定のオペレーションの命令をエンコードするように(例えば、不変質量粒子の磁気的に、電気的に、可動な配置等により)物理的に修正されるコンピュータ読み取り可能な媒体を含む。物理的なコンポーネントを接続する際に、ハードウェアの構成要素の前提としている電気特性は、例えば、絶縁体から導体へ又はその逆に変化させられる。命令は、動作時に特定のオペレーションの部分を実行するために、組み込まれたハードウェア(例えば、実行ユニット、又はローディング・メカニズム)が可変のコネクションによりハードウェアにおける回路のメンバーを形成するように動作することが可能である。従って、コンピュータ読み取り可能な媒体は、デバイスが動作している場合に、回路の他のコンポーネントに通信可能に結合される。一例において、任意の物理的なコンポーネントが、1つより多い回路の1つより多いメンバーにおいて使用されてよい。例えば、動作時に、実行ユニットは、ある時点で第1回路装置の第1回路で使用され、別の時点では第1回路装置の第2回路で又は第2回路装置の第3回路で再利用されてもよい。
マシン(例えば、コンピュータ・システム)700は、ハードウェア・プロセッサ702(例えば、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、ハードウェア・プロセッサ・コア、又はそれらの任意の組み合わせ)と、メイン・メモリ704と、スタティック・メモリ706とを含んでもよく、それらの全部又は一部は相互リンク(例えば、バス)708により互いに通信してよい。マシン700は、ディスプレイ・ユニット710と、英数字入力デバイス712(例えば、キーボード)と、ユーザー・インターフェース(UI)ナビゲーション・デバイス714(例えば、マウス)とを更に含んでよい。一例において、ディスプレイ・ユニット710と、入力デバイス712と、UIナビゲーション・デバイス714とは、タッチ・スクリーン・ディスプレイであってもよい。マシン700は、追加的に、ストレージ・デバイス(例えば、ドライブ・ユニット)716と、信号生成デバイス718(例えば、スピーカー)と、ネットワーク・インターフェース・デバイス720と、(例えば、GPS(a global positioning system)センサー、コンパス、加速度計、又は他のセンサーのような)1つ以上のセンサー721とを 含んでもよい。マシン700は、例えば、1つ以上の周辺デバイス(例えば、プリンタ、カード・リーダー等)と通信するため又はそれらを制御するために、シリアル(例えば、USB(universal serial bus))、パラレル、又は(例えば、赤外線(IR)、近距離通信(NFC)等のような)その他の有線若しくは無線のコネクションのような出力コントローラ728を含んでよい。
ストレージ・デバイス716はマシン読み取り可能な媒体722を含んでもよく、その媒体には、本願で説明される任意の1つ以上の技術又は機能により具現化又は利用されるデータ構造又は命令724(例えば、ソフトウェア)の1つ以上のセットが保存されている。命令724は、マシン700による命令の実行中に、メイン・メモリ704内に、スタティック・メモリ706内に、又はハードウェア・プロセッサ702内に完全に又は少なくとも部分的に常駐してもよい。一例において、ハードウェア・プロセッサ702、メイン・メモリ704、スタティック・メモリ706、又はストレージ・デバイス716のうちの1つ又は任意の組み合わせは、マシン読み取り可能な媒体を構成し得る。
マシン読み取り可能な媒体722は単独の媒体として示されているが、「マシン読み取り可能な媒体」という用語は、1つ以上の命令724を保存するように構成される単独の媒体又は複数の媒体(例えば、セントラル化された又は分散されたデータベース、及び/又は関連付けられたキャッシュ及びサーバー)を含んでよい。
「マシン読み取り可能な媒体」という用語は、マシン700による実行のために命令を保存し、エンコードし、又は実行することが可能な任意の媒体であって、本開示の任意の1つ以上の技術をマシン700が実行することを引き起こす媒体、又はそのような命令により使用される又は関連付けられるデータ構造を保存し、エンコードし、又は運ぶことが可能な媒体を含んでよい。非限定的なマシン読み取り可能な媒体の具体例は、ソリッド・ステート・メモリ、光及び磁気媒体を含んでよい。一例において、集積されたマシン読み取り可能な媒体は、複数の粒子が不変質量(例えば、静止質量)を有するマシン読み取り可能な媒体を含む。従って、集積されたマシン読み取り可能な媒体は、一時的に伝搬する信号ではない。集積されたマシン読み取り可能な媒体の具体例は:(例えば、EPROM(Electrically Programmable Read-Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)のような)半導体メモリ・デバイスのような不揮発性メモリ;内部ハード・ディスク及びリムーバブル・ディスクのような磁気ディスク;磁気光ディスク;及びCD-ROM、DVD-ROMディスクを含んでよい。
命令724は、更に、(例えば、フレーム・リレー、IP(internet protocol)、TCP(transmission control protocol)、UDP(user datagram protocol)、HTTP(hypertext transfer protocol)等のような)多数の伝送プロトコルのうちの任意の何れかを利用するネットワーク・インターフェース・デバイス720により、伝送媒体を利用して通信ネットワーク726を介して送信又は受信されてもよい。具体例の通信ネットワークは、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、パケット・データ・ネットワーク(例えば、インターネット)、移動電話網(例えば、セルラー・ネットワーク)、POTS(Plain Old Telephone)ネットワーク、及びワイヤレス・データ・ネットワーク(例えば、Wi-Fi(登録商標)として知られているIEEE(Institute of Electrical and Electronics Engineers)802.11規格ファミリ、WiMAX(登録商標)として知られているIEEE802.16規格ファミリ)、IEEE802.15.4規格ファミリ、P2P(peer-to-peer)ネットワーク等を含んでよい。一例において、ネットワーク・デバイス720は、通信ネットワーク726に接続するために、1つ以上のジャック(例えば、イーサーネット、同軸ケーブル、又は電話ジャック)又は1つ以上のアンテナを含んでもよい。一例において、ネットワーク・インターフェース・デバイス720は、SIMO(single-input multiple-output)、MIMO(multiple-input multiple-output)、又はMISO(multiple-input single-output)の技術うちの少なくとも何れかを利用して無線通信するように複数のアンテナを含んでよい。「伝送媒体」という用語は、マシン700による実行のために命令を保存し、エンコードし、又は搬送することが可能な任意の無形媒体を含むように解釈され、ディジタル又はアナログ信号、又はそのようなソフトウェアの伝達を促す他の無形媒体を含む。
付記及び具体例
具体例1は仮想プライベート・ネットワークのためのデバイスのコンポーネントであり、コンポーネントは:複数のホスト・ビーコンを取得する受信機であって、各ビーコンは、バックホールに対応し且つエンドポイント・パフォーマンス・データ構造を含む、受信機;一群のエンドポイント・パフォーマンス・データ構造を複数のホスト・ビーコンから取り出すデコーダ;及び一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートするフィルタを有する。
具体例2においては、具体例1の対象事項が、エンドポイント・パフォーマンス・データ構造のソートされたセットの端部におけるエンドポイント・パフォーマンス・データ構造に対応するホストに関し、バックホールへの入場を交渉するトランシーバを含む。
具体例3においては、具体例2の対象事項が次の特徴を含む:バックホールへの入場を交渉することは、トランシーバが、ホストにアタッチすること;及びリソースのオファーがホストへ送信されるのを引き起こすことを含む。
具体例4においては、具体例3の対象事項が次の特徴を含む:受信機がオファーに対する拒否を取得し;及びトランシーバが、拒否に応答してリソースのカウンター・オファーがホストへ送信されるのを引き起こす。
具体例5においては、具体例3-4の対象事項が次の特徴を含む:リソースは通貨である。
具体例6においては、具体例5の対象事項が次の特徴を含む:バックホールへの入場を交渉することが、バックホールにアクセスするためにリソースが差し出されるトランザクションを実行することを含む。
具体例7においては、具体例6の対象事項が次の特徴を含む:前記差し出すことは、ホストを介してデバイスによりアクセスされるリモート・ベンダー・マシンにおいて生じる。
具体例8においては、具体例3-7の対象事項が次の特徴を含む:リソースはデバイスの物理リソースである。
具体例9においては、具体例2-8の対象事項が次の特徴を含む:バックホールへの入場を交渉することは、受信機及び送信機がバックホール・セッションのためにホストに関するセキュリティ認証情報を交換することを含む。
具体例10においては、具体例9の対象事項が次の特徴を含む:セキュリティ認証情報が、パブリック・キー証明書を含む。
具体例11においては、具体例9-10の対象事項が次の特徴を含む:セキュリティ認証情報を交換することは、ホストを介して権限当局とやり取りをすることを含む。
具体例12においては、具体例9-11の対象事項が次の特徴を含む:セキュリティ認証情報が、交渉に先立ってリモート権限当局と交渉済みの利用トークンを含み、利用トークンはリモート権限当局に関してデバイスを確認するためにホストにより使用される。
具体例13においては、具体例1-12の対象事項が次の特徴を含む:一群のフィールドは、コネクションのタイプ、帯域幅、レイテンシ、バックホールを利用するユーザーの数、バックホールのコスト、物理レイヤの特徴、サービス品質(QoS)、又はアプリケーション・サポートのうちの少なくとも何れかを含む。
具体例14においては、具体例13の対象事項が次の特徴を含む:物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。
具体例15においては、具体例13-14の対象事項が次の特徴を含む:コネクションのタイプは、受信信号強度又はプロトコルのうちの少なくとも何れかを含む。
具体例16においては、具体例13-15の対象事項が次の特徴を含む:アプリケーション・サポートは、音声呼のサポート、音楽のサポート、ビデオのサポート、又は仮想プライベート・ネットワーク(VPN)のサポートのうち少なくとも何れかについての指示である。
具体例17においては、具体例2-16の対象事項が次の特徴を含む:トランシーバは、更に:ホストとバックホールとを介してデバイスと宛先との間に仮想ネットワーク・トンネルを設定し;仮想ネットワーク・トンネルを介して宛先へデータを送信する。
具体例18においては、具体例1-17の対象事項が次の特徴を含む:一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートすることは、フィルタが優先度マッピングによりフィールドを順にソートすることを含み、優先度マッピングはフィールドのランキングを含み、より高いランクのフィールドは先にソートされる。
具体例19においては、具体例18の対象事項が次の特徴を含む:優先度ランキングは少なくとも1つのフィールドに対する閾値を含み、閾値はフィールド値が考慮されることになるレンジを指定する。
具体例20においては、具体例19の対象事項が次の特徴を含む:レンジは1つの値及び方向として規定され、方向は、より大きい、以上、より小さい、又は以下のうちの少なくとも何れかである。
具体例21は仮想プライベート・ネットワークのためのホストのコンポーネントであり、コンポーネントは:エンドポイント・パフォーマンス・データ構造を含むビーコンを送信し;エンドポイント・パフォーマンス・データ構造の状態フィールドに対するレスポンスを含む予備的アタッチメントをデバイスから受信し;決定メッセージをデバイスから受信し;及び決定メッセージを受信した後にデバイスからのデータを受け入れる第1トランシーバ;バックホールを介してデバイスからのデータを連絡する第2トランシーバ;及び状態フィールドにおける値に対するレスポンスを比較し;状態フィールドにおける値に応じてデバイスの接続を承認し(承認は、決定メッセージを発動する)、バックホールの活動に応じて状態フィールドを変更するカウンターを有する。
具体例22においては、具体例21の対象事項が次の特徴を含む:ビーコンは、レガシー・データ・セット及びエクステンション(an extension)を含み、エンドポイント・パフォーマンス・データ構造はエクステンションである。
具体例23は仮想プライベート・ネットワークのためのデバイスについての方法であり、本方法は:複数のホスト・ビーコンを取得するステップであって、各ビーコンは、バックホールに対応し且つエンドポイント・パフォーマンス・データ構造を含む、ステップ;一群のエンドポイント・パフォーマンス・データ構造を複数のホスト・ビーコンから取り出すステップ;一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートするステップ;及びエンドポイント・パフォーマンス・データ構造のソートされたセットの端部におけるエンドポイント・パフォーマンス・データ構造に対応するホストに関し、バックホールへの入場を交渉するステップを有する。
具体例24においては、具体例23の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップは:ホストにアタッチするステップ;及びリソースのオファーがホストへ送信されるのを引き起こすステップを含む。
具体例25においては、具体例24の対象事項が:オファーに対する拒否を取得するステップ;及び拒否に応答してリソースのカウンター・オファーがホストへ送信されるのを引き起こすステップを含む。
具体例26においては、具体例24-25の対象事項が次の特徴を含む:リソースは通貨である。
具体例27においては、具体例26の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップが、バックホールにアクセスするためにリソースが差し出されるトランザクションを実行するステップを含む。
具体例28においては、具体例27の対象事項が次の特徴を含む:前記差し出すことは、ホストを介してデバイスによりアクセスされるリモート・ベンダー・マシンにおいて生じる。
具体例29においては、具体例24-28の対象事項が次の特徴を含む:リソースはデバイスの物理リソースである。
具体例30においては、具体例23-29の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップは、バックホール・セッションのためにホストに関するセキュリティ認証情報を交換するステップを含む。
具体例31においては、具体例30の対象事項が次の特徴を含む:セキュリティ認証情報が、パブリック・キー証明書を含む。
具体例32においては、具体例30-31の対象事項が次の特徴を含む:セキュリティ認証情報を交換するステップは、ホストを介して権限当局とやり取りをするステップを含む。
具体例33においては、具体例30-32の対象事項が次の特徴を含む:セキュリティ認証情報が、交渉に先立ってリモート権限当局と交渉済みの利用トークンを含み、利用トークンはリモート権限当局に関してデバイスを確認するためにホストにより使用される。
具体例34においては、具体例23-33の対象事項が次の特徴を含む:一群のフィールドは、コネクションのタイプ、帯域幅、レイテンシ、バックホールを利用するユーザーの数、バックホールのコスト、物理レイヤの特徴、サービス品質(QoS)、又はアプリケーション・サポートのうちの少なくとも何れかを含む。
具体例35においては、具体例34の対象事項が次の特徴を含む:物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。
具体例36においては、具体例34-35の対象事項が次の特徴を含む:コネクションのタイプは、受信信号強度又はプロトコルのうちの少なくとも何れかを含む。
具体例37においては、具体例34-36の対象事項が次の特徴を含む:アプリケーション・サポートは、音声呼のサポート、音楽のサポート、ビデオのサポート、又は仮想プライベート・ネットワーク(VPN)のサポートのうち少なくとも何れかについての指示である。
具体例38においては、具体例23-37の対象事項が、ホストとバックホールとを介してデバイスと宛先との間に仮想ネットワーク・トンネルを設定し;仮想ネットワーク・トンネルを介して宛先へデータを送信するステップを含む。
具体例39においては、具体例23-38の対象事項が次の特徴を含む:一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートするステップは、優先度マッピングにより順にフィールドをソートするステップを含み、優先度マッピングはフィールドのランキングを含み、より高いランクのフィールドは先にソートされる。
具体例40においては、具体例39の対象事項が次の特徴を含む:優先度ランキングは少なくとも1つのフィールドに対する閾値を含み、閾値はフィールド値が考慮されることになるレンジを指定する。
具体例41においては、具体例40の対象事項が次の特徴を含む:レンジは1つの値及び方向として規定され、方向は、より大きい、以上、より小さい、又は以下のうちの少なくとも何れかである。
具体例42は命令を含む少なくとも1つのマシン読み取り可能な媒体であり、命令は、処理回路により実行される場合に、具体例23-41のうちの任意の方法を処理回路に実行させる。
具体例43は具体例23-41のうちの任意の方法を実行する手段を有するシステムである。
具体例44は仮想プライベート・ネットワークのためのデバイスのシステムであり、システムは:複数のホスト・ビーコンを取得する手段であって、各ビーコンは、バックホールに対応し且つエンドポイント・パフォーマンス・データ構造を含む、手段;一群のエンドポイント・パフォーマンス・データ構造を複数のホスト・ビーコンから取り出す手段;一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートする手段;及びソートされた一群のエンドポイント・パフォーマンス・データ構造のソートされたセットの端部におけるエンドポイント・パフォーマンス・データ構造に対応するホストに関し、バックホールへの入場を交渉する手段を有する。
具体例45においては、具体例44の対象事項が次の特徴を含む:バックホールへの入場を交渉する手段は、ホストにアタッチする手段;及びリソースのオファーがホストへ送信されるのを引き起こす手段を含む。
具体例46においては、具体例45の対象事項が、オファーに対する拒否を取得する手段;及び拒否に応答してリソースのカウンター・オファーがホストへ送信されるのを引き起こす手段を含む。
具体例47においては、具体例45-46の対象事項が次の特徴を含む:リソースは通貨である。
具体例48においては、具体例47の対象事項が次の特徴を含む:バックホールへの入場を交渉する手段が、バックホールにアクセスするためにリソースが差し出されるトランザクションを実行する手段を含む。
具体例49においては、具体例48の対象事項が次の特徴を含む:差し出すことは、ホストを介してデバイスによりアクセスされるリモート・ベンダー・マシンにおいて生じる。
具体例50においては、具体例45-49の対象事項が次の特徴を含む:リソースはデバイスの物理リソースである。
具体例51においては、具体例44-50の対象事項が次の特徴を含む:バックホールへの入場を交渉する手段は、バックホール・セッションのためにホストに関するセキュリティ認証情報を交換する手段を含む。
具体例52においては、具体例51の対象事項が次の特徴を含む:セキュリティ認証情報が、パブリック・キー証明書を含む。
具体例53においては、具体例51-52の対象事項が次の特徴を含む:セキュリティ認証情報を交換する手段は、ホストを介して権限当局とやり取りを行う。
具体例54においては、具体例51-53の対象事項が次の特徴を含む:セキュリティ認証情報が、交渉に先立ってリモート権限当局と交渉済みの利用トークンを含み、利用トークンはリモート権限当局に関してデバイスを確認するためにホストにより使用される。
具体例55においては、具体例44-54の対象事項が次の特徴を含む:一群のフィールドは、コネクションのタイプ、帯域幅、レイテンシ、バックホールを利用するユーザーの数、バックホールのコスト、物理レイヤの特徴、サービス品質(QoS)、又はアプリケーション・サポートのうちの少なくとも何れかを含む。
具体例56においては、具体例55の対象事項が次の特徴を含む:物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。
具体例57においては、具体例55-56の対象事項が次の特徴を含む:コネクションのタイプは、受信信号強度又はプロトコルのうちの少なくとも何れかを含む。
具体例58においては、具体例55-57の対象事項が次の特徴を含む:アプリケーション・サポートは、音声呼のサポート、音楽のサポート、ビデオのサポート、又は仮想プライベート・ネットワーク(VPN)のサポートのうち少なくとも何れかについての指示である。
具体例59においては、具体例44-58の対象事項が、ホストとバックホールとを介してデバイスと宛先との間に仮想ネットワーク・トンネルを設定する手段;及び仮想ネットワーク・トンネルを介して宛先へデータを送信する手段を含む。
具体例60においては、具体例44-59の対象事項が次の特徴を含む:一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートする手段は、優先度マッピングにより順にフィールドをソートし、優先度マッピングはフィールドのランキングを含み、より高いランクのフィールドは先にソートされる。
具体例61においては、具体例60の対象事項が次の特徴を含む:優先度ランキングは少なくとも1つのフィールドに対する閾値を含み、閾値はフィールド値が考慮されることになるレンジを指定する。
具体例62においては、具体例61の対象事項が次の特徴を含む:レンジは1つの値及び方向として規定され、方向は、より大きい、以上、より小さい、又は以下のうちの少なくとも何れかである。
具体例63は仮想プライベート・ネットワークのための命令を含む少なくとも1つのマシン読み取り可能な媒体であり、命令は、マシンにより実行されると、マシンにオペレーションを実行させ、オペレーションは:複数のホスト・ビーコンを取得するステップであって、各ビーコンは、バックホールに対応し且つエンドポイント・パフォーマンス・データ構造を含む、ステップ;一群のエンドポイント・パフォーマンス・データ構造を複数のホスト・ビーコンから取り出すステップ;一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートするステップ;及びエンドポイント・パフォーマンス・データ構造のソートされたセットの端部におけるエンドポイント・パフォーマンス・データ構造に対応するホストに関し、バックホールへの入場を交渉するステップを有する。
具体例64においては、具体例63の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップは:ホストにアタッチするステップ;及びリソースのオファーがホストへ送信されるのを引き起こすステップを含む。
具体例65においては、具体例64の対象事項が次の特徴を含む:オペレーションが、オファーに対する拒否を取得するステップ;及び拒否に応答してリソースのカウンター・オファーがホストへ送信されるのを引き起こすステップを含む。
具体例66においては、具体例64-65の対象事項が次の特徴を含む:リソースは通貨である。
具体例67においては、具体例66の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップが、バックホールにアクセスするためにリソースが差し出されるトランザクションを実行するステップを含む。
具体例68においては、具体例67の対象事項が次の特徴を含む:前記差し出すことは、ホストを介してデバイスによりアクセスされるリモート・ベンダー・マシンにおいて生じる。
具体例69においては、具体例64-68の対象事項が次の特徴を含む:リソースはデバイスの物理リソースである。
具体例70においては、具体例63-69の対象事項が次の特徴を含む:バックホールへの入場を交渉するステップは、バックホール・セッションのためにホストに関するセキュリティ認証情報を交換するステップを含む。
具体例71においては、具体例70の対象事項が次の特徴を含む:セキュリティ認証情報が、パブリック・キー証明書を含む。
具体例72においては、具体例70-71の対象事項が次の特徴を含む:セキュリティ認証情報を交換するステップは、ホストを介して権限当局とやり取りをするステップを含む。
具体例73においては、具体例70-72の対象事項が次の特徴を含む:セキュリティ認証情報が、交渉に先立ってリモート権限当局と交渉済みの利用トークンを含み、利用トークンはリモート権限当局に関してデバイスを確認するためにホストにより使用される。
具体例74においては、具体例63-73の対象事項が次の特徴を含む:一群のフィールドは、コネクションのタイプ、帯域幅、レイテンシ、バックホールを利用するユーザーの数、バックホールのコスト、物理レイヤの特徴、サービス品質(QoS)、又はアプリケーション・サポートのうちの少なくとも何れかを含む。
具体例75においては、具体例74の対象事項が次の特徴を含む:物理レイヤの特徴は、周波数、チャネル幅、又は複数入力複数出力(MIMO)コンフィギュレーションのうちの少なくとも何れかである。
具体例76においては、具体例74-75の対象事項が次の特徴を含む:コネクションのタイプは、受信信号強度又はプロトコルのうちの少なくとも何れかを含む。
具体例77においては、具体例74-76の対象事項が次の特徴を含む:アプリケーション・サポートは、音声呼のサポート、音楽のサポート、ビデオのサポート、又は仮想プライベート・ネットワーク(VPN)のサポートのうち少なくとも何れかについての指示である。
具体例78においては、具体例63-77の対象事項が次の特徴を含む:オペレーションが、ホストとバックホールとを介してデバイスと宛先との間に仮想ネットワーク・トンネルを設定し;仮想ネットワーク・トンネルを介して宛先へデータを送信するステップを含む。
具体例79においては、具体例63-78の対象事項が次の特徴を含む:一群のエンドポイント・パフォーマンス・データ構造のメンバーの一群のフィールドに基づいて、一群のエンドポイント・パフォーマンス・データ構造をソートするステップは、優先度マッピングにより順にフィールドをソートするステップを含み、優先度マッピングはフィールドのランキングを含み、より高いランクのフィールドは先にソートされる。
具体例80においては、具体例79の対象事項が次の特徴を含む:優先度ランキングは少なくとも1つのフィールドに対する閾値を含み、閾値はフィールド値が考慮されることになるレンジを指定する。
具体例81においては、具体例80の対象事項が次の特徴を含む:レンジは1つの値及び方向として規定され、方向は、より大きい、以上、より小さい、又は以下のうちの少なくとも何れかである。
具体例82は命令を含む少なくとも1つのマシン読み取り可能な媒体であり、命令は、処理回路により実行される場合に、具体例1-81のうちの何れかを実現するためのオペレーションを処理回路に実行させる。
具体例83は具体例1-81のうちの何れかを実現する手段を有する装置である。
具体例84は具体例1-81のうちの何れかを実現するシステムである。
具体例85は具体例1-81のうちの何れかを実現する方法である。
上記の詳細な説明は、詳細な説明の一部を為す添付図面を参照することを含む。図面は、例示により、実施され得る特定の実施形態を示す。これらの実施形態も本願では「具体例」として言及される。そのような具体例は、図示又は説明されたものに追加的な要素を含んでもよい。しかしながら、本発明は、図示又は説明されたもののみが提供される具体例も想定している。更に、本発明は、特定の具体例(又はそれについての1つ以上の実施形態)に関して、あるいは本願で図示又は説明されているもの以外の具体例(又はそれについての1つ以上の実施形態)に関して、図示又は説明されているこれらの要素(又はそれについての1つ以上の実施形態)の任意の組み合わせ又は置換を利用する具体例も想定している。
本文献で言及される全ての刊行物、特許、及び特許文献は、あたかもそれぞれがリファレンスに組み込まれているかのように、全体的に本願のリファレンスに組み込まれる。そのようにリファレンスに組み込まれる文献と本文献との間で相反する利用が生じる場合、組み込まれたリファレンスにおける利用形態は、本文献のものに対して補足的に考察されるべきであり;相容れない矛盾の場合には、本文献における利用は控えさせられる。
本文献において、「ある(“a” or “an”)」という用語は、特許文献で一般的であるように、1つに限らず、1つ又は複数を含むように使用され、「少なくとも1つ」又は「1つ以上」という他の何らかの例や用法によらない。本文献において、「又は(“or”)」という用語は非排他的に言及するために使用されており、それにより、「A又はB」は、別段の指示がない限り、「Bを除くA」、「Aを除くB」、及び「AかつB」を含む。添付の特許請求の範囲において、「含む(including)」及び「〜である(“in which”)」という用語は、それぞれ「有する(comprising)」及び「この場合において(wherein)」という用語の平易な同等な表現として使用される。また、以下の特許請求の範囲において、「含む」及び「有する」という用語はオープン・エンドであり、即ち、そのような用語の前に列挙されるものに加えて要素を含むシステム、デバイス、製品、又はプロセスも、依然としてその請求項の範囲内に属するように考えられる。更に、以下の請求項において、「第1」、「第2」及び「第3」等の用語は、単にラベルとして使用されており、それらの対象に数的な条件を課すようには意図されていない。
上記の説明は例示的であり制限的ではないように意図されている。例えば、上記の具体例(又はそれについての1つ以上の実施形態)は、互いに組み合わせて使用されてよい。例えば、上記の説明を検討した当業者によって、他の実施形態が使用されてもよい。要約は、技術的開示の特質を読者が速やかに把握できるようにするためのものであり、請求項の範囲又は意味を解釈又は限定するためには使用されないという理解の下で提出されている。また、上記の詳細な説明において、様々な特徴が、本開示を簡素化するためにまとめてグループ化されているかもしれない。このグループ化は、保護が請求されていない開示特徴が何らかの請求項に対して必須であることを意図するように解釈されるべきでない。むしろ発明対象事項は、特定の開示された実施形態の全ての特徴より少ないものの中にある場合がある。従って、以下の請求項は詳細な説明に組み込まれており、各請求項は個々の実施形態としてそれ自体成立する。実施形態の範囲は、そのような請求項の効力が及ぶ完全な均等範囲とともに、添付の請求項を参照して決定されるべきである。