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

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

▶ グーグル インコーポレイテッドの特許一覧

特許6233906パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム
<>
  • 特許6233906-パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム 図000002
  • 特許6233906-パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム 図000003
  • 特許6233906-パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム 図000004
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6233906
(24)【登録日】2017年11月2日
(45)【発行日】2017年11月22日
(54)【発明の名称】パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム
(51)【国際特許分類】
   H04L 12/813 20130101AFI20171113BHJP
【FI】
   H04L12/813
【請求項の数】17
【全頁数】14
(21)【出願番号】特願2016-555451(P2016-555451)
(86)(22)【出願日】2014年11月13日
(65)【公表番号】特表2016-537939(P2016-537939A)
(43)【公表日】2016年12月1日
(86)【国際出願番号】US2014065420
(87)【国際公開番号】WO2015077117
(87)【国際公開日】20150528
【審査請求日】2016年8月25日
(31)【優先権主張番号】14/088,545
(32)【優先日】2013年11月25日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】ジャンブ,スビール
(72)【発明者】
【氏名】ダヤン,タル
【審査官】 宮島 郁美
(56)【参考文献】
【文献】 特開2010−213037(JP,A)
【文献】 特開平10−041960(JP,A)
【文献】 米国特許第09021109(US,B1)
【文献】 米国特許出願公開第2010/0131668(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00−12/955
(57)【特許請求の範囲】
【請求項1】
複数の電子機器と1つ以上のサービスとの間のトラフィックを制御する方法であって、
数のプロキシユニットの各々を介して複数の電子機器からサービスに渡される通信されたサービス要求に関連する情報をモニタリングするステップと、
記サービスに向けられる前記サービス要求の量が容量限界規則に違反していることを前記情報が示しているか否かを判断するステップと、
前記量が前記容量限界規則に違反していることを特定すると、
サービス要求が前記量の最大部分を構成していれば前記サービス要求を制限されたサービスと見なすこと、または、前記容量限界規則の違反がサービス要求に影響を及ぼしていれば前記サービス要求を制限されたサービスと見なすことのうちの1つ以上に基づいて、前記量の中の前記サービス要求のうちの1つ以上を、制限されたサービス要求と見なすステップと、
記プロキシユニットのうちのどれが、影響を受けたプロキシユニットであるかを判断するステップと、
2のコマンドが受取られるまで前記サービスに対する前記制限されたサービス要求の頻度を低減させるために第1のコマンドを前記複数の電子機器に送るように命令を生成するステップと、
記命令を前記影響を受けたプロキシユニットに送るステップとを備える、方法。
【請求項2】
前記サービス要求の前記量が前記容量限界規則に違反しているか否かを判断するステップは、
少なくとも閾値数の前記通信されたサービス要求が前記サービスに向けられているか否かを判断するステップ、
少なくとも閾値数の同一のサービス要求が前記サービスおよび少なくとも1つのさらなるサービスに向けられているか否かを判断するステップ、または
少なくとも閾値数の同一のサービス要求が前記サービスに向けられているか否かを判断するステップ、のうちの1つ以上を備える、請求項1に記載の方法。
【請求項3】
前記サービス要求の前記量が前記容量限界規則に違反しているか否かを判断するステップは、前記サービスとの通信が少なくとも閾値レイテンシレベルを示しているか否かを判断するステップをさらに備える、請求項1または2に記載の方法。
【請求項4】
前記影響を受けたプロキシユニットの各々によって、前記命令を受取ったことに応答して、前記第1のコマンドを前記電子機器に送るステップをさらに備え、前記第1のコマンドは、前記制限されたサービス要求を休止させるのではなく、前記制限されたサービス要求の前記頻度を低減させるものであり、
前記影響を受けたプロキシユニットの各々によって、前記命令を受取ったことに応答して、最大パススルー率を決定し、前記サービスに渡される前記制限されたサービス要求の頻度が前記最大パススルー率を超えないように前記制限されたサービス要求の受取られたインスタンスをキャッシュするステップと、
通信再開メッセージを受取ったことに応答して、
前記影響を受けたプロキシユニットの各々によって、前記キャッシングおよび前記サービスへの前記キャッシュされたサービス要求の送達を中断するステップと、
前記影響を受けたプロキシユニットの各々によって、前記制限されたサービス要求の送達を再開するように第2のコマンドを生成するステップと、
前記影響を受けたプロキシユニットの各々によって、前記第2のコマンドを前記電子機器に送るステップとをさらに備える、請求項1〜3のいずれか1項に記載の方法。
【請求項5】
前記影響を受けたプロキシユニットの各々によって、前記命令を受取ったことに応答して、前記第1のコマンドを前記電子機器に送るステップをさらに備え、前記第1のコマンドは、前記頻度をゼロに低減させるものであり、
前記影響を受けたプロキシユニットの各々によって、前記命令を受取ったことに応答して、通信再開メッセージが受取られるまで前記制限されたサービス要求の全てのインスタンスを阻止するステップと、
前記通信再開メッセージを受取ると、
前記影響を受けたプロキシユニットの各々によって、前記阻止を中断するステップと、
前記影響を受けたプロキシユニットの各々によって、前記制限されたサービス要求の送達を再開するように第2のコマンドを生成するステップと、
前記影響を受けたプロキシユニットの各々によって、前記第2のコマンドを前記電子機器に送るステップとをさらに備える、請求項1〜3のいずれか1項に記載の方法。
【請求項6】
前記電子機器によって、前記第1のコマンドを受取ると、前記制限されたサービス要求の送達を停止または減速させることによって前記第1のコマンドを実行するステップと、
前記電子機器によって、通常の通信を再開するための第2のコマンドを受取ると、前記制限されたサービス要求の通常の通信を再開するステップとをさらに備える、請求項1〜5のいずれか1項に記載の方法。
【請求項7】
前記第1のコマンドは、
前記制限されたサービス要求を減速または停止させるための命令、
前記制限されたサービス要求を減速または停止させるためのコマンドに対応するものとして前記電子機器が認識するであろうエラーメッセージ、または
前記制限されたサービス要求を減速または停止させるためのコマンドに対応するものとして前記電子機器が認識するであろう変更されたハンドシェイクパターン、のうちの1つ以上を備える、請求項1〜6のいずれか1項に記載の方法。
【請求項8】
前記モニタリングに基づいて、前記サービス要求の頻度が増加していること、および、前記サービスから前記サービス要求への応答がレイテンシの増加に遭遇していることを両方とも検出するステップと、
前記検出に応答して、前記容量限界規則における頻度閾値またはレイテンシレベル閾値を低減させるように前記容量限界規則を調整するステップとをさらに備える、請求項1〜7のいずれか1項に記載の方法。
【請求項9】
前記影響を受けたプロキシユニットの各々によって、前記命令を受取ったことに応答して、前記第1のコマンドを前記電子機器に送るステップと、
前記電子機器によって、前記第1のコマンドに応答して、前記制限されたサービス要求の送達を停止または減速させることによって前記第1のコマンドを実行するステップと、
前記影響を受けたプロキシユニットの各々によって、通信再開メッセージが受取られるまで、制限されたサービス要求をキャッシュまたは阻止するステップと、
前記影響を受けたプロキシユニットの各々によって、通信再開メッセージを受取ったことに応答して、前記制限されたサービス要求の送達を再開するステップと、
前記影響を受けたプロキシユニットの各々によって、前記第2のコマンドを前記電子機器に送るステップと、
前記電子機器によって、前記第2のコマンドに応答して、前記制限されたサービス要求の通常の通信を再開するステップとをさらに備える、請求項1〜8のいずれか1項に記載の方法。
【請求項10】
複数の電子機器と1つ以上のサービスとの間のトラフィックを制御するためのシステムであって、
1つ以上の検出システムプロセッサと非一時的なコンピュータ読取可能な媒体とを備える検出システムを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
複数のプロキシユニットの各々を介して渡される通信されたサービス要求に関連する情報をモニタリングすることと、
前記サービスのうちの1つに向けられる前記サービス要求の量が容量限界規則に違反していることを前記情報が示しているか否かを判断することと、
前記量が前記容量限界規則に違反していることを特定すると、
サービス要求が前記量の最大部分を構成していれば前記サービス要求を制限されたサービスと見なすこと、または、前記容量限界規則の違反がサービス要求に影響を及ぼしていれば前記サービス要求を制限されたサービスと見なすことのうちの1つ以上に基づいて、前記量の中の前記サービス要求のうちの1つ以上を制限されたサービス要求と見なすことと、前記容量限界規則の前記違反によって影響を受ける前記プロキシユニットの組を特定し、アラートを生成することと、を前記検出システムプロセッサのうちの1つ以上にさせるように構成されており、
前記アラートは、前記1つ以上の制限されたサービス要求の特定と、前記影響を受けたプロキシユニットの特定とを備え、前記システムはさらに、
1つ以上の制御システムプロセッサと非一時的なコンピュータ読取可能な媒体とを備える制御システムを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
出サービスから前記アラートを受取ると、第2のコマンドが受取られるまで前記サービスに対する前記制限されたサービス要求の頻度を低減させるために第1のコマンドを前記電子機器の群に送るように前記影響を受けたプロキシユニットに指示すること、を前記制御システムプロセッサのうちの1つ以上にさせるように構成されている、システム。
【請求項11】
前記サービス要求の前記量が前記容量限界規則に違反しているか否かを前記検出システムプロセッサのうちの1つ以上に判断させる命令は、
少なくとも閾値数のサービス要求が前記サービスに向けられているか否か、
少なくとも閾値数の同一のサービス要求が前記サービスおよび少なくとも1つのさらなるサービスに向けられているか否か、
少なくとも閾値数の同一のサービス要求が前記サービスに向けられているか否か、または
前記サービスとの通信が少なくとも閾値レイテンシレベルを示しているか否か、のうちの1つ以上を判断するための命令を備える、請求項10に記載のシステム。
【請求項12】
前記影響を受けたプロキシユニットをさらに備え、各々は、プロセッサと、非一時的なコンピュータ読取可能な媒体とを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
前記命令を受取ったことに応答して、前記第1のコマンドを前記電子機器の群に送ることを前記関連する影響を受けたプロキシユニットにさせるように構成されており、前記第1のコマンドは、前記制限されたサービス要求を休止させるのではなく、前記制限されたサービス要求の前記頻度を低減させるものであり、前記プログラミング命令は、実行されたときに、さらに、
前記命令を受取ったことに応答して、最大パススルー率を決定し、前記サービスに渡される前記制限されたサービス要求の頻度が前記最大パススルー率を超えないように前記制限されたサービス要求の受取られたインスタンスをキャッシュすることと、
通信再開メッセージを受取ったことに応答して、
前記キャッシングおよび前記サービスへの前記キャッシュされたサービス要求の送達を中断することと、
前記制限されたサービス要求の送達を再開するように第2のコマンドを生成することと、
前記第2のコマンドを前記電子機器の群に送ることと、を前記関連する影響を受けたプロキシユニットにさせるように構成されている、請求項10または11に記載のシステム。
【請求項13】
前記影響を受けたプロキシユニットをさらに備え、各々は、プロセッサと、非一時的なコンピュータ読取可能な媒体とを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
前記命令を受取ったことに応答して、前記第1のコマンドを前記電子機器の群に送ることを前記関連する影響を受けたプロキシユニットにさせるように構成されており、前記第1のコマンドは、前記頻度をゼロに低減させるものであり、前記プログラミング命令は、実行されたときに、さらに、
前記命令を受取ったことに応答して、通信再開メッセージが制御サービスから受取られるまで前記制限されたサービス要求の全てのインスタンスを阻止することと、
前記通信再開メッセージを受取ると、
前記阻止を中断することと、
前記制限されたサービス要求の前記頻度をもはや低減させることのないように第2のコマンドを生成することと、
前記第2のコマンドを前記電子機器の群に送ることと、を前記関連する影響を受けたプロキシユニットにさせるように構成されている、請求項10または11に記載のシステム。
【請求項14】
前記第1のコマンドを生成するための前記命令は、
前記制限されたサービス要求を減速または停止させるための命令、
前記制限されたサービス要求を減速または停止させるためのコマンドに対応するものとして前記電子機器が認識するであろうエラーメッセージ、または
前記制限されたサービス要求を減速または停止させるためのコマンドに対応するものとして前記電子機器が認識するであろう変更されたハンドシェイクパターン、のうちの1つ以上を生成するための命令を備える、請求項10〜13のいずれか1項に記載のシステム。
【請求項15】
前記電子機器の群をさらに備え、前記群における前記電子機器の各々は、機器プロセッサと、非一時的なコンピュータ読取可能な媒体とを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
前記第1のコマンドを受取ると、前記制限されたサービス要求の送達を停止または減速させることによって前記第1のコマンドを実行することと、
前記第2のコマンドを受取ると、前記制限されたサービス要求の通常の送信を再開することと、を前記機器プロセッサにさせるように構成されている、請求項10〜14のいずれか1項に記載のシステム。
【請求項16】
前記モニタリングされた情報に基づいて、前記サービス要求の頻度が増加しているとき、および、前記サービスから前記サービス要求への応答がレイテンシの増加に遭遇しているときを検出することと、
前記検出に応答して、前記容量限界規則における頻度閾値またはレイテンシレベル閾値を低減させるように前記容量限界規則を調整することと、を前記1つ以上の検出システムプロセッサにさせるさらなる命令をさらに備える、請求項10〜15のいずれか1項に記載のシステム。
【請求項17】
複数の電子機器と1つ以上のサービスとの間のトラフィックを制御するためのシステムであって、
1つ以上のプロセッサと、非一時的なコンピュータ読取可能な媒体とを備え、前記非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、前記プログラミング命令は、実行されたときに、
複数のプロキシユニットの各々を介して渡される通信されたサービス要求に関連する情報をモニタリングすることと、
サービスに向けられる前記サービス要求の量が容量限界規則に違反していることを前記情報が示しているか否かを判断することと、
前記量が前記容量限界規則に違反していることを特定すると、
サービス要求が前記量の最大部分を構成していれば前記サービス要求を制限されたサービスと見なすこと、または、前記容量限界規則の違反がサービス要求に影響を及ぼしていれば前記サービス要求を制限されたサービスと見なすことのうちの1つ以上に基づいて、前記量の中の前記サービス要求のうちの1つ以上を制限されたサービス要求と見なすことと、前記容量限界規則の前記違反によって影響を受ける前記プロキシユニットの組を特定し、アラートを生成することと、を前記プロセッサのうちの1つ以上にさせるように構成されており、
前記アラートは、制限されたサービス要求の特定と、前記影響を受けたプロキシユニットの特定とを備え、前記プログラミング命令は、実行されたときに、さらに、
第2のコマンドが受取られるまで前記サービスに対する前記制限されたサービス要求の頻度を低減させるために第1のコマンドを電子機器の群に送るように前記影響を受けたプロキシユニットに指示すること、を前記プロセッサのうちの1つ以上にさせるように構成されている、システム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願および優先権の主張
本願は、「パーソナル電子機器と外部サービスとの間の大量のトラフィック負荷を調整するための方法およびシステム(Method and System for Adjusting Heavy Traffic Loads Between Personal Electronic Devices and External Services)」と題される2013年11月25日に出願された米国特許出願番号第14/088,545号の優先権を主張する。当該優先権出願の開示は、引用によって全文が本明細書に援用される。
【背景技術】
【0002】
背景
世界中のパーソナル電子機器ならびにそれらの膨大な計算およびネットワーキング機能の数が増加するにつれて、新たなより大きなストレスが通信ネットワークにかかるようになっている。例えば、2013年初頭に行われた研究によれば、米国では1.8億個を超えるスマートフォンが使用されていると推定された。複数の電子機器にわたって複製されるソフトウェアバグまたは悪質なコードは、当該バグまたはコードによって機器が要求を特定のサービスに繰返しかつ執拗に出すことになる場合には、主要なネットワークおよびサービスを飽和または停止させる可能性がある。また、人気のあるサービスが短時間の機能停止に遭遇すると、サービスがオンラインに戻ったときに膨大な数の機器が同時にサービスに再接続しようとする可能性がある。この突然の大量の負荷は、通信ネットワークに対して大きなストレスを課す可能性がある。サービスは、サービスアクションを拒否することにより突然の大量の負荷または他の異常な動作からサービス自体を守ることができるが、これは、大量のトラフィック負荷の影響から中間のネットワークおよび第三者サービスを守ることはない。
【発明の概要】
【課題を解決するための手段】
【0003】
本明細書には、上記の問題および/またはさらなる問題のうちの少なくともいくつかを解決することに向けられる方法およびシステムが記載されている。
【0004】
概要
実施例において、ネットワークトラフィックモニタリングシステムは、多数のパーソナル電子機器がさまざまなプロキシを介してさまざまなサービスに向ける通信をモニタリングする。サービスのうちの少なくとも1つに向けられる要求の量が容量限界閾値を超えたと検出システムが判断すると、検出システムは、通信を再開することが明らかであるとシステムが判断するまでサービス要求を減速または停止させるように機器に指示することをプロキシにさせるであろう。
【0005】
例えば、実施例において、複数の電子機器と1つ以上のサービスとの間のトラフィックを制御するためのシステムは、検出システムおよび制御システムなどの1つ以上のシステムを含み得て、各々は、1つ以上のプロセッサと、非一時的なコンピュータ読取可能な媒体とを備え、非一時的なコンピュータ読取可能な媒体は、プログラミング命令を含み、プログラミング命令は、実行されたときに1つ以上の検出システムプロセッサに方法を実行させるように構成される。当該システムは、さまざまなプロキシユニットを介して渡される通信されたサービス要求に関連する、ネットワークを流れる情報をモニタリングし得る。当該システムは、サービスのうちの1つに向けられるサービス要求の量が容量限界規則に違反していることを情報が示しているか否かを判断し得る。量が容量限界規則に違反していることを特定すると、当該システムは、容量限界規則の違反によって影響を受けるプロキシユニットの組を特定し、アラートを生成し得て、アラートは、制限されたサービス要求の特定と、影響を受けたプロキシユニットの特定とを含む。アラートを生成または受取ると、影響を受けたプロキシユニットは、第2のコマンドが受取られるまでサービスに対する制限されたサービス要求の頻度を低減させるために第1のコマンドを電子機器のうちのいくつかまたは全てに送り得る。低減された頻度は、サービス要求の全ての送達を休止させるものであってもよく、またはサービス要求を休止させるのではなく減速させるものであってもよい。
【0006】
容量限界規則に違反したか否かの判断は、例えば、少なくとも閾値数のサービス要求がサービスに向けられているか否かを判断すること、少なくとも閾値数の同一のサービス要求がサービスおよび少なくとも1つのさらなるサービスに向けられているか否かを判断すること、少なくとも閾値数の同一のサービス要求がサービスに向けられているか否かを判断すること、またはサービスとの通信が少なくとも閾値レイテンシレベルを示しているか否かを判断することを含み得る。
【0007】
命令を受取ったことに応答して、影響を受けたプロキシユニットは、第1のコマンドを電子機器の群に送り得る。プロキシユニットは、最大パススルー率を決定し、サービスに渡される制限されたサービス要求の頻度が最大パススルー率を超えないように、制限されたサービス要求の受取られたインスタンスをキャッシュし得る。代替的に、影響を受けたプロキシユニットは、単に、制限されたサービス要求がサービスに渡されることを阻止してもよい。通信再開メッセージを受取ったことに応答して、影響を受けたプロキシユニットは、キャッシングおよびサービスへのキャッシュされたサービス要求の送達を中断し、制限されたサービス要求の送達を再開するように第2のコマンドを生成し、第2のコマンドを電子機器の群に送り得る。
【0008】
電子機器は、第1のコマンドを受取ると、制限されたサービス要求の送達を停止または減速させることによって第1のコマンドを実行し得る。機器は、第2のコマンドを受取ると、制限されたサービス要求の通常の送信を再開し得る。
【0009】
また、モニタリングされた情報に基づいて、当該システムは、サービス要求の頻度が増加しているとき、および、サービスからサービス要求への応答がレイテンシの増加に遭遇しているときを検出し得る。頻度および/またはレイテンシの増加が検出されると、当該システムは、容量限界規則における頻度閾値またはレイテンシレベル閾値を低減させるように容量限界規則を調整し得る。
【図面の簡単な説明】
【0010】
図1】モニタリングおよびトラフィック制御システムの他の要素とともに電子機器がプロキシを介してサービスと通信するシステムのさまざまなコンポーネントを示す。
図2】ネットワークトラフィックモニタリングおよび制御システムが実行し得るさまざまなステップを示す。
図3】以下に記載されるシステムのさまざまな局面とともに含まれ得るさまざまなハードウェアコンポーネントを示す。
【発明を実施するための形態】
【0011】
詳細な説明
本明細書で使用される単数形「a」、「an」および「the」は、文脈が明らかに他のことを指示しない限り、複数の参照物を含む。別段の規定がない限り、本明細書で使用される全ての技術用語および科学用語は、当業者によって一般に理解される意味と同一の意味を有する。本明細書で使用される「備える(comprising)」という用語は、「含むが、それ/それらに限定されるものではない」ことを意味する。
【0012】
「パーソナル電子機器」とは、プロセッサと、非一時的なコンピュータ読取可能なメモリと、通信ネットワークを介してデータを外部サービスに送ったり外部サービスからデータを受取ったりする送受信機などのネットワーク通信ハードウェアと、プロセッサによって実行されたときに機器のプロセッサにプログラミング命令に従う1つ以上のオペレーションを実行させるプログラミング命令を備える1つ以上のソフトウェアアプリケーションとを含む電子機器のことを言う。パーソナル電子機器の例としては、スマートフォン、パーソナルデジタルアシスタント、ラップトップコンピュータ、タブレットコンピュータ、ゲームシステム、多機能テレビ、ネットワークに接続されるカメラおよびメディアプレーヤ、コンピューティングコンポーネントを含むリストウォッチおよび眼鏡などのウェアラブルコンピューティング装置、車載コンピュータなどが挙げられる。
【0013】
「サービス」とは、インターネットなどの通信ネットワークを介してネットワークアドレスから複数のパーソナル電子機器に提供されるソフトウェア機能のことを言う。サービスは、機器の外側にあり、パーソナル電子機器から離れた場所で実行される処理機能およびプログラミング命令を含むであろう。サービスの例としては、クラウドベースの電子メールサービス、オンライン映像または音楽ストリーミングサービス、オンライン映像または音声チャットまたは会議サービス、写真または他のファイル共有および/または記憶サービス、クラウドベースの文書管理サービス、地図サービス、検索サービス、および他のウェブサービスが挙げられる。
【0014】
図1は、ネットワーク化された機器およびサービスのシステムの一例を示す。さまざまなパーソナル電子機器101,102,103は、1つ以上の通信ネットワーク104,111を介してさまざまなサービス113,114,115に通信可能に接続し得る。複数のパーソナル電子機器は、非常に多くの機器を含み得る。これらの機器の各々は、電子メール、メディアストリーミング、または映像もしくは音声会議サービスなどの1つ以上の外部サービスにアクセスするためにブラウザソフトウェアおよび/またはモバイルアプリケーションを使用し得る。
【0015】
機器とサービスとの間の通信は、本明細書では「プロキシユニット」または「プロキシ」107,108,109と呼ばれる仲介制御ユニットを通過するであろう。プロキシは、機器から通信を受取って、当該通信を宛先サービスに渡すか否かおよびいつ渡すかの制御に参加する中間電子機器である。プロキシは、機器とサービスとの間の通信を傍受、中継および/またはモニタリングする実際のネットワーキングプロキシ、スマートネットワークルータ、コンピュータで実行されるソフトウェア、または他の機器などの機器であってもよい。プロキシは、それぞれネットワーク104,111を介してモバイル機器およびサービスと通信する。
【0016】
検出システム116は、ネットワークの任意の部分におけるトラフィック負荷、任意の個々のサービスに向けられるトラフィックの量もしくはタイプ、またはシステムの他のパラメータなどのネットワーク通信のさまざまな要素をモニタリングし得る。検出システム116は、自動モニタリング要素および/または手動モニタリング特徴を含み得る。制御システム117は、検出システムおよびプロキシと通信し、制御システム117は、プロセッサと、実行されたときに制御システムにプロキシの挙動を制御させるプログラミング命令とを含む。検出システムおよび/または制御システムのプログラミング命令は、機器のネットワーク全体の挙動に影響を及ぼすために使用され得る規則セット118を実行し得る。検出システム116、制御システム117および規則118のコンポーネントおよび命令は、プロキシ107,108,109のうちの1つ以上の一部であってもよく、または、これらのコンポーネントのうちのいずれかもしくは全てが、プロキシとは別のものであるがプロキシと通信してもよい。また、検出システム116および制御システム117は、別々の機器であってもよく、または、単一の検出および制御システム機器もしくは機器セット内に一体化されてもよい。
【0017】
検出システム116および制御システム117は、サービスパラメータの質、サービス率当たりの限界および他の限界などのどのような定常状態パラメータが所望であるかを判断するために規則セット118を使用する。モニタリングされたパラメータがこれらの規則のうちの1つ以上に違反している、すなわち通信リンクまたはサービスなどのシステムの1つ以上の部分が過負荷になっていると検出システム116が判断すると、検出システム116は、機器がシステムに送り込む通信の数を減少させることによってトラフィックを制御するようにプロキシ107,108,109のうちの1つ以上に命令するように制御システム117に命じ得る。影響を受けたプロキシは、(1)プロキシから影響を受けたサービスとの通信を休止させるか、またはキャッシングして通信の頻度を減速させることによって、および、(2)影響を受けたサービスへのサービス要求を休止させるか、またはサービス要求の頻度を減速させるために、パーソナル電子機器に信号を送信することによって、これらのコマンドを実行するであろう。
【0018】
パーソナル電子機器自体にトラフィックを停止または減速させることによって、サービスが保護されるだけでなく、機器とサービスとの間のネットワークに対するストレスも低減される。なぜなら、それは、繰返される執拗なサービス要求に関連付けられる大量のトラフィック負荷をネットワークが回避することを助けるからである。また、機器自体は、サービスが処理しないであろう繰返されるサービス要求を送ることに処理リソースおよびバッテリ寿命を使用しないことの恩恵を受けることができる。その代わりに、影響を受けたサービスが要求を受入れることができるまたは進んで受入れるまで、機器は要求を保持することになる。他のサービスおよびサービス要求は制限されることはなく、機器と影響を受けていないサービスとの間の通信は、通常の態様で継続することができる。
【0019】
実施例では、プロキシのうちの1つ以上は、サービスとパーソナル電子機器との間のウェブアプリケーションの外観、構造またはフローを制御するプロトコル変換タイプのプロキシであってもよい。コンテンツ変換プロキシは、デスクトップコンピュータ用に設計されたウェブページをモバイル電子機器に好適な形態に変換し得る。これらの機能は、一般に、ウェブコンテンツ変換プロキシのためのWC3ガイドラインなどの適用可能な標準規格に従ってなされるであろう。非ブラウザベースのアプリケーションから特定のサービスに向けられる異常に多くのサービス要求を1つ以上のプロキシが受取ったことに検出サービスが気付くと、検出サービスは、制御サービスを介して、影響を受けたプロキシが、影響を受けたサービスへの要求の中継を停止して、「送信再開」または同様の信号が受取られるまで要求の送信を停止するようにパーソナル電子機器に知らせるようにさせ得る。
【0020】
プロキシは、単一の場所に位置していてもよく、または1つ以上の地理的領域にわたって分散されていてもよい。プロキシのうちのいくつかまたは全ては、異種であってもよく、または、それら全てがサービス要求を休止または減速させるようにパーソナル電子機器に知らせる機能を実行できる限り類似していなくてもよい。いくつかの実施例では、プロキシは、機器レベルでできる限り素早くトラフィック負荷に対処するために、要求を行っている特定の機器の物理的に近くの場所において地理的に分散されるであろう。
【0021】
規則およびコマンドは、機器当たり、サービス当たり、プロキシ当たり、またはポート当たりなど、任意の好適な粒度レベルで実行され得る。プロキシがサービス要求を休止または減速させるように機器に知らせることができる方法は、当該機器の構成に基づいてさまざまであり得る。例えば、機器が、サービス要求を休止または減速させることによって特定のコマンドに応答するようにプログラムされるアプリケーションを含む場合には、プロキシは、それらのコマンドに対応する信号をこのような機器に送り得る。例えば、サービス要求に応答して各機器にエラー状態を返すことによって、プロキシと機器との間のハンドシェイクパターンを変化させることによって、または明示的な休止サービスもしくは減速サービスコマンドを機器に送ることによって、プロキシは機器に知らせてもよい。
【0022】
図2は、上記のさまざまな要素を含むプロセスフローを記載する図である。さまざまな実施例によれば、1つ以上の検出サービスは、さまざまなプロキシユニットを介して多数のパーソナル電子機器からさまざまなサービスに渡される通信されたサービス要求に関連する情報をモニタリングするであろう(ステップ201)。モニタリングサービスは、規則セットにアクセスして、サービスのうちの1つ以上に向けられるサービス要求の量が容量限界規則に違反しているか否かを判断するであろう(ステップ203)。特定の期間内に閾値数のサービス要求が発信されるという規則など、規則は特定のサービスに固有であってもよい。または、規則は、一般に、複数のサービスに適用可能であってもよい。例えば、規則は、特定のサービスに向けられる1秒当たりのモニタリングされるクエリの数、または、特定のサービスに流入したり特定のサービスから流出したりするデータの量(すなわち帯域幅)が閾値を超えた場合にトラフィック制限命令を適用するというものであってもよい。同様の規則は、サービスの特定の群に適用されてもよく、または全てのサービスの集合体に適用されてもよい。また、規則は、特定のタイプのクエリにおいて突然のスパイクが検出された場合に、トラフィック制限命令を作動させ得る。例としては、プロファイルデータについての1秒当たりのクエリの数の閾値パーセンテージ増加が挙げられる。
【0023】
任意に、システムの検出サービスおよび/または他のコンポーネントは、モニタリングされたデータに基づいて、規則、または規則に起因する閾値もしくは規則によって使用される閾値を動的に更新し得る。例えば、特定のサービスに向けられる通信の頻度(例えば、期間当たりのメッセージの数)が増加し、その結果、サービス要求における応答の待ち時間が長くなっていること(すなわち、レイテンシの増加)をシステムが判断すると、システムは、「頻度低減コマンド」を課す頻度閾値を低減させ得る。システムは、規則または閾値をいつ調整するかを判断するために、この変数の組み合わせおよび/または他の変数に任意の好適なアルゴリズムを適用し得る。規則は、モニタリングサービスによって適用されてもよく、または、プロキシシステムが実行されている間にプッシュされる分散コンフィギュレーションファイルなどにおいてプロキシに分散されてもよく、または、定期的な規則の更新を伴うバッチの形態で分散されてもよい。このような状況において、プロキシは、モニタリングされたデータを分析し、規則自体を適用し得る。
【0024】
モニタリングされた量が容量限界規則に違反していることを特定すると(ステップ205)、検出システムは、当該量の中のサービス要求のうちの1つ以上を、制限されたサービス要求と見なすであろう(ステップ207)。システムは、モニタリングされた量を再検討して当該量の最大部分を構成するサービス要求のタイプを特定することによる方法、影響を受けて、影響を受けたサービスに対する任意の将来のサービス要求を制限するサービスを特定することによる方法、または他の好適な方法などの任意の好適な方法に基づいてこれを行い得る。少なくとも閾値数の任意のタイプのサービス要求がサービスに向けられているか否か、少なくとも閾値数の同一のサービス要求がサービスにも少なくとも1つのさらなるサービスにも向けられているか否か、少なくとも閾値数の同一のサービス要求がサービスに向けられているか否か、またはサービスとの通信が少なくとも閾値レイテンシレベルを示しているか否かなどの基準に基づいて、システムは、容量限界規則に違反していることを判断し得る。
【0025】
また、システムは、プロキシユニットのうちのどれが、影響を受けたプロキシユニットであるかを判断するであろう(ステップ209)。例えば、プロキシユニットは、容量限界規則に違反したモニタリングされた量からいずれかのトラフィックを受取った場合、または、少なくとも閾値パーセンテージのこのようなトラフィックを受取った場合に、影響を受けたプロキシユニットであると考えられてもよい。
【0026】
次いで、システムは、サービス要求を減速させるかまたはサービス要求を全く休止させることによって、影響を受けたサービスに対する制限されたサービス要求の頻度を低減させるようにパーソナル電子機器に命令するようにプロキシユニットに指示するであろう(ステップ211)。プロキシユニットは、コマンドをパーソナル電子機器に送るであろう(ステップ213)。コマンドを受取ると、機器は、制限されたサービス要求の送達を停止または減速させることによって第1のコマンドを実行し得る。
【0027】
命令が、制限されたサービス要求を除去するのではなく低減させるものである場合には、コマンドをパーソナル電子機器に送ることに関連して、影響を受けたプロキシユニットは、最大パススルー率を決定し得る。これは、既存の命令、制御サービスから受取られる命令、またはその他の好適な方法に基づいて決定され得る。影響を受けたプロキシユニットは、制限されたサービス要求の受取られたインスタンスをキャッシュし、サービスに渡される制限されたサービス要求の送達率が最大パススルー率を超えないように、低減された率で、キャッシュされたインスタンスを解放するであろう。命令が、制限されたサービス要求を休止させる(すなわち、頻度をゼロに低減させる)ものである場合には、影響を受けたプロキシユニットは、異なったように指示されるまで、制限されたサービス要求のいかなるインスタンスも通過することを単に休止させるであろう。
【0028】
トラフィックが再開されてもよいと検出システムが判断した場合および判断したとき、検出システムは、通信再開メッセージをプロキシユニットに送って、制限されたサービス要求に対する制限を解除し得る(ステップ215)。この判断は、タイムリミット基準に基づいて、容量レベルを増加させた影響を受けたサービスからの信号に基づいて、または他の好適な手段によってなど、さまざまな方法によってなされ得る。任意に、命令は、制限を解除して、更新された制限に置き換えるものであってもよく、当該更新された制限は、より高い通信頻度または通信率を可能にするが依然として無制限の通信頻度または通信率ではないものなどである。このように、サービス要求は、制限が解除された後のサービスのスパイクまたは過負荷を回避するために徐々にオンラインにされることができる。
【0029】
通信再開メッセージを受取ったことに応答して、影響を受けたプロキシは、いかなるキャッシングも中断するか、またはメッセージがキャッシュから解放される頻度を増加させ得て、制限されたサービス要求の頻度をもはや低減させることのないように新たなコマンドを生成し得る。影響を受けたプロキシは、当該新たなコマンドをパーソナル電子機器に送るであろう(ステップ217)。電子機器は、新たなコマンドを受取ると、制限されたサービス要求の通常の通信を再開するであろう。
【0030】
図3は、内部ハードウェア要素の一例を示し、当該内部ハードウェア要素のうちのいくつかは、サービス、検出または制御を提供するために使用されるプロキシユニット、パーソナル電子機器および/または装置などの上記のコンポーネントのうちのいずれかに含まれ得る。バス300は、ハードウェアのさまざまなコンポーネント間で情報を転送するためのルートである。プロセッサまたはCPU305は、システムの中央処理装置であり、プログラムを実行するために必要な計算および論理演算を実行する。リードオンリメモリ(ROM)310およびランダムアクセスメモリ(RAM)315は、メモリ装置の例を構成する。
【0031】
コントローラ320は、システムバス300に対するデータ記憶機構としてのサービスを提供する1つ以上の任意のメモリ装置325と連結する。これらのメモリ装置325は、例えばCDドライブ、ハードドライブ、フラッシュメモリ、USBドライブ、またはデータ記憶機構の役割を果たす別のタイプの装置を含み得る。また、メモリ装置325は、任意のソフトウェアモジュールもしくは命令、補助的なデータ、付帯的なデータを格納するための個々のファイル、分割表および/もしくは回帰モデルの群を格納するための共用ファイル、または上記の情報を格納するための1つ以上のデータベースを含むように構成され得る。
【0032】
上記のプロセスに関連付けられる機能ステップのうちのいずれかを実行するためのプログラム命令、ソフトウェアまたは対話式モジュールは、ROM310および/またはRAM315に格納され得る。任意に、プログラム命令は、コンパクトディスク、フラッシュメモリ、メモリカード、USBドライブ、クラウドベースのアーキテクチャなどの分散コンピュータ記憶プラットフォーム、光ディスク記憶媒体、および/または他の記録媒体などの非一時的なコンピュータ読取可能な媒体に格納されてもよい。
【0033】
ディスプレイインターフェース330は、バス300を介して受取られた情報を、音声、映像、グラフィックまたはアルファニューメリックの形態でディスプレイ335に表示させることを可能にし得る。外部装置との通信は、さまざまな通信ポート340を用いて行われ得る。通信ポート340は、インターネット、ローカルエリアネットワークまたはセル方式電話データネットワークなどの通信ネットワークに接続され得る。
【0034】
ハードウェアは、インターフェース345も含み得て、当該インターフェース345は、キーボード350などの入力装置、または、遠隔制御装置、ポインティング装置、映像入力装置および/もしくは音声入力装置などの他の入力装置355からのデータの受取りを可能にする。
【0035】
上記の開示された特徴および機能、ならびに代替例は、多くの他のさまざまなシステムまたはアプリケーションに組み合わせられてもよい。現在のところ予見または予期できないさまざまな代替、変形、変更または改善が当業者によってなされてもよく、それらの各々は、開示されている実施例によって包含されるよう意図されている。
図1
図2
図3