(57)【要約】      （修正有）【課題】コンピューティングデバイスでの情報の受信をブロックするためのシステム及び方法を提供する。【解決手段】方法は、ハードウェアプロセッサによってドメインネームシステム（ＤＮＳ）要求をインターセプトする。インターセプトされたＤＮＳ要求は、コンピューティングデバイスからブロックされる情報に関連付けられ、インターセプトされたＤＮＳ要求の送信に対するルールのセットを取得する。取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定し、ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するときに、インターセプトしたＤＮＳ要求の送信をブロックし、ブロッキングを承諾しないときに、インターセプトしたＤＮＳ要求の送信のブロッキングする。【選択図】図２
2020129367.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスでの情報の受信をブロックするための方法であって、
プロセッサによって、ドメインネームシステム（Domain  Name  System：ＤＮＳ）要求をインターセプトし、前記インターセプトしたＤＮＳ要求は、前記コンピューティングデバイスからブロックされる前記情報に関連付けられているものであることと、
前記プロセッサによって、前記インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得することと、
前記プロセッサによって、前記取得したルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信のブロッキングを承諾するかどうかを決定することと、
前記プロセッサによって、前記ルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングを承諾するときに、前記インターセプトしたＤＮＳ要求の前記送信をブロックし、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングにより、前記コンピューティングデバイスでの前記情報の受信をブロックすることと、を含む、
方法。
【請求項２】
前記ルールのセットは、前記インターセプトしたＤＮＳ要求内の１つまたは複数のユニバーサルリソースロケータ（Universal  Resource  Locator：ＵＲＬ）、および前記ＤＮＳ要求を行っているアプリケーションに関して取得された情報のうち少なくとも１つに基づいて取得される、請求項１に記載の方法。
【請求項３】
前記ルールのセットを取得することは、前記インターセプトしたＤＮＳ要求内の前記１つまたは複数のＵＲＬ、および前記ＤＮＳ要求を行っている前記アプリケーションに関する前記情報に基づいて、データベースから前記ルールのセットを選択することを含む、請求項２に記載の方法。
【請求項４】
前記ルールのセットを取得することは、前記インターセプトしたＤＮＳ要求が、ユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求である確率を推定することをさらに含む、請求項２に記載の方法。
【請求項５】
前記ルールのセットを取得することは、前記インターセプトしたＤＮＳ要求が、リモートサーバからのその後の情報のダウンロードのために行われるＤＮＳ要求の特性を有するものである確率を推定することをさらに含む、請求項２に記載の方法。
【請求項６】
前記ＤＮＳ要求のインターセプションは、前記ＤＮＳ要求を行っているアプリケーションの識別、および前記ＤＮＳ要求からの１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）に関する情報の取得のうち少なくとも１つを含む、請求項１に記載の方法。
【請求項７】
前記ＤＮＳ要求のインターセプションは、ＤＮＳプロキシプロバイダを使用して実施される、請求項１に記載の方法。
【請求項８】
コンピューティングデバイスでの情報の受信をブロックするためのシステムであって、
ドメインネームシステム（ＤＮＳ）要求をインターセプトし、前記インターセプトしたＤＮＳ要求は、前記コンピューティングデバイスからブロックされる前記情報に関連付けられているものであり、
前記インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得し、
前記取得したルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信のブロッキングを承諾するかどうかを決定し、
前記ルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングを承諾するときに、前記インターセプトしたＤＮＳ要求の前記送信をブロックし、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングにより、前記コンピューティングデバイスでの前記情報の受信をブロックするように構成された少なくとも１つのプロセッサを含む、
システム。
【請求項９】
前記ルールのセットは、前記インターセプトしたＤＮＳ要求内の１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）、および前記ＤＮＳ要求を行っているアプリケーションに関して取得された情報のうち少なくとも１つに基づいて取得される、請求項８に記載のシステム。
【請求項１０】
前記ルールのセットを取得するための構成は、前記インターセプトしたＤＮＳ要求内の前記１つまたは複数のＵＲＬ、および前記ＤＮＳ要求を行っている前記アプリケーションに関する前記情報に基づいて、データベースから前記ルールのセットを選択するための構成を含む、請求項９に記載のシステム。
【請求項１１】
前記ルールのセットを取得するための前記構成は、前記インターセプトしたＤＮＳ要求が、ユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求である確率を推定するための構成をさらに含む、請求項９に記載のシステム。
【請求項１２】
前記ルールのセットを取得するための前記構成は、前記インターセプトしたＤＮＳ要求が、リモートサーバからのその後の情報のダウンロードのために行われるＤＮＳ要求の特性を有するものである確率を推定するための構成をさらに含む、請求項９に記載のシステム。
【請求項１３】
前記ＤＮＳ要求のインターセプションは、前記ＤＮＳ要求を行っているアプリケーションの識別、および前記ＤＮＳ要求からの１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）に関する情報の取得のうち少なくとも１つを含む、請求項８に記載のシステム。
【請求項１４】
前記ＤＮＳ要求のインターセプションは、ＤＮＳプロキシプロバイダを使用して実施される、請求項８に記載のシステム。
【請求項１５】
コンピューティングデバイスでの情報の受信をブロックするためのコンピュータ実行可能命令を記憶している非一時的なコンピュータ可読媒体であって、
プロセッサによって、ドメインネームシステム（ＤＮＳ）要求をインターセプトし、前記インターセプトしたＤＮＳ要求は、前記コンピューティングデバイスからブロックされる前記情報に関連付けられているものであり、
前記プロセッサによって、前記インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得し、
前記プロセッサによって、前記取得したルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信のブロッキングを承諾するかどうかを決定し、
前記プロセッサによって、前記ルールのセットのうち少なくとも１つのルールにより、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングを承諾するときに、前記インターセプトしたＤＮＳ要求の前記送信をブロックし、前記インターセプトしたＤＮＳ要求の前記送信の前記ブロッキングにより、前記コンピューティングデバイスでの前記情報の受信をブロックするための命令を含む、
非一時的なコンピュータ可読媒体。
【請求項１６】
前記ルールのセットは、前記インターセプトしたＤＮＳ要求内の１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）、および前記ＤＮＳ要求を行っているアプリケーションに関して取得された情報のうち少なくとも１つに基づいて取得される、請求項１５に記載の非一時的なコンピュータ可読媒体。
【請求項１７】
前記ルールのセットを取得するための前記命令は、前記インターセプトしたＤＮＳ要求内の前記１つまたは複数のＵＲＬ、および前記ＤＮＳ要求を行っている前記アプリケーションに関する前記情報に基づいて、データベースから前記ルールのセットを選択するための命令を含む、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項１８】
前記ルールのセットを取得するための前記命令は、前記インターセプトしたＤＮＳ要求が、ユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求である確率を推定するための命令をさらに含む、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項１９】
前記ルールのセットを取得するための前記命令は、前記インターセプトしたＤＮＳ要求が、リモートサーバからのその後の情報のダウンロードのために行われるＤＮＳ要求の特性を有するものである確率を推定するための命令をさらに含む、請求項１６に記載の非一時的なコンピュータ可読媒体。
【請求項２０】
前記ＤＮＳ要求のインターセプションは、前記ＤＮＳ要求を行っているアプリケーションの識別、および前記ＤＮＳ要求からの１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）に関する情報の取得のうち少なくとも１つを含む、請求項１５に記載の非一時的なコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ユーザエクスペリエンスを改善するために、コンピューティングデバイス、例えば、モバイルコンピューティングデバイス上の、情報、例えば、広告をブロックする分野に関し、より詳細には、広告メッセージをブロックすることに関する。
【背景技術】
【０００２】
現在、モバイルコンピューティングデバイス（例えば、スマートフォンおよびタブレット）は、ありとあらゆるタスクを処理するため、またはエンターテイメントのために、毎日、人々によって使用されている。通信、タイムスケジューリング、インターネットページ表示、銀行口座管理などのために、ありとあらゆるアプリケーションが多数存在する。これらのアプリケーションの一部は代価と引き換えに、その他のものは無料で配布される。
【０００３】
無料で配布されるアプリケーションは、アプリケーションの使用中に表示される広告が存在することが特徴である。そうすることで、開発者は、自身の仕事の成果を収益化する。しかし、多くの場合、このような広告は、例えば、悪意あるファイルまたはサイトへのリンク先を表示することによって、ユーザまたはユーザのデバイスにとって非常に邪魔なものであるか、または害をおよぼすことさえある。
【０００４】
広告からユーザのコンピューティングデバイスを保護する一方法は、禁止リソースのブラックリストを使用し、ＤＮＳ（ドメインネームシステム）要求をインターセプトして、ユーザに表示されるはずの広告をブロックすることである。しかし、ｉＯＳオペレーティングシステム管理下のデバイスに関しては、このような方法は、ＶＰＮまたはプロキシサーバを利用して、アプリケーションの広告モジュールによって確立された接続をブロックすることを伴う。さらに、このような方法は、電力を消費し、ネットワークを通して伝送されるデータ容量に対する支出の観点から、不経済であることが実証される可能性もある。
【０００５】
したがって、広告からモバイルコンピューティングデバイスのユーザを効果的に保護する方法が必要とされる。
【発明の概要】
【０００６】
本開示の態様は、ユーザエクスペリエンスおよび広告の分野に関し、より詳細には、コンピューティングデバイスでの情報、例えば、広告の受信をブロックするため、例えば、コンピューティングデバイス上の広告をブロックするためのシステムおよび方法に関する。
【０００７】
一例示的態様では、方法は、ハードウェアプロセッサを備えたコンピュータに実装され、該方法は、ドメインネームシステム（Domain  Name  System：ＤＮＳ）要求をインターセプトし、該インターセプトしたＤＮＳ要求は、コンピューティングデバイスからブロックされる情報に関連付けられているものであることと、インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得することと、取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定することと、ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するときに、インターセプトしたＤＮＳ要求の送信をブロックし、該インターセプトしたＤＮＳ要求の送信のブロッキングにより、コンピューティングデバイスでの情報の受信をブロックすることとを含む。
【０００８】
本開示の一態様によれば、システムは、コンピューティングデバイスでの情報の受信をブロックするために提供され、該システムは、ドメインネームシステム（ＤＮＳ）要求をインターセプトし、該インターセプトしたＤＮＳ要求は、コンピューティングデバイスからブロックされる情報に関連付けられているものであり、インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得し、取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定し、ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するときに、インターセプトしたＤＮＳ要求の送信をブロックし、該インターセプトしたＤＮＳ要求の送信のブロッキングにより、コンピューティングデバイスでの情報の受信をブロックするように構成されたハードウェアプロセッサを含む。
【０００９】
一例示的態様では、コンピューティングデバイスでの情報の受信をブロックするための命令のセットを記憶している非一時的なコンピュータ可読媒体が提供され、該命令のセットは、ドメインネームシステム（ＤＮＳ）要求をインターセプトし、該インターセプトしたＤＮＳ要求は、コンピューティングデバイスからブロックされる情報に関連付けられているものであり、インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得し、取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定し、ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するときに、インターセプトしたＤＮＳ要求の送信をブロックし、該インターセプトしたＤＮＳ要求の送信のブロッキングにより、コンピューティングデバイスでの情報の受信をブロックするための命令を含む。
【００１０】
一態様では、ルールのセットは、インターセプトしたＤＮＳ要求内の１つまたは複数のユニバーサルリソースロケータ（Universal  Resource  Locator：ＵＲＬ）、およびＤＮＳ要求を行っているアプリケーションに関して取得された情報のうち少なくとも１つに基づいて取得される。
【００１１】
一態様では、ルールのセットを取得することは、インターセプトしたＤＮＳ要求内の１つまたは複数のＵＲＬ、およびＤＮＳ要求を行っているアプリケーションに関する情報に基づいて、データベースから、ルールのセットを選択することを含む。
【００１２】
一態様では、ルールのセットを取得することは、インターセプトしたＤＮＳ要求が、ユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求である確率を推定することをさらに含む。
【００１３】
一態様では、ルールのセットを取得することは、インターセプトしたＤＮＳ要求が、リモートサーバからのその後の情報のダウンロードのために行われるＤＮＳ要求の特性を有するものである確率を推定することをさらに含む。
【００１４】
一態様では、ＤＮＳ要求のインターセプションは、ＤＮＳ要求を行っているアプリケーションの識別、およびＤＮＳ要求からの１つまたは複数のユニバーサルリソースロケータ（ＵＲＬ）に関する情報の取得のうち少なくとも１つを含む。
【００１５】
一態様では、ＤＮＳ要求のインターセプションは、ＤＮＳプロキシプロバイダを使用して実施される。
【００１６】
本開示の教示に従ってコンピューティングデバイス上の広告をブロックすることは、デバイスおよびデバイスを介してアクセスされるアプリケーションを用いるユーザエクスペリエンスを改善する。この改善は、コンピューティングデバイスからブロックされる情報に関連付けられているＤＮＳ要求をインターセプトし、インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得し、取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定し、ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するときに、インターセプトしたＤＮＳ要求の送信をブロックすることによって実現される。
【図面の簡単な説明】
【００１７】
本明細書に組み込まれ、かつ本明細書の一部を構成する添付図面を、発明を実施するための形態と共に本開示の１つまたは複数の例示的態様を示し、それらの原理および実装形態を説明するために提供する。
【００１８】
【図１】本開示の態様に従って、コンピューティングデバイス上の情報、例えば、広告をブロックするための例示的システムを示すブロック図である。
【図２】コンピューティングデバイス上の情報、例えば、広告をブロックするための例示的方法を示すフロー図である。
【図３】本開示の態様が実装され得る汎用コンピュータシステムの一例を示す図である。
【発明を実施するための形態】
【００１９】
例示的態様が、コンピューティングデバイス上の情報、例えば広告をブロックするためのシステム、方法、およびコンピュータプログラムのコンテキストで、本明細書に記載される。以下の説明は例示のためのものであり、いかなる点においても限定することを意図するものではないことを当業者であれば理解されるであろう。その他の態様は、本開示から利益を得る当業者であれば、その内容が容易に連想されるであろう。添付図面に示される例示的な態様の実装形態に、参照番号が項目ごとに付与される。同一または類似の項目であることを言及するために、同じ参照番号が図面および以下の説明を通して可能な範囲で使用される。
【００２０】
本開示の教示を明瞭に提示するために、本開示の種々の態様を説明する際に使用されるいくつかの用語および概念が、本明細書において定義される。
【００２１】
ＤＮＳプロキシプロバイダは、ｉＯＳオペレーティングシステム用のアプリケーション拡張であり、ＮＥＤＮＳＰｒｏｘｙＰｒｏｖｉｄｅｒクラスによって実現される。この拡張が存在する場合、それを含むアプリケーションからのＤＮＳ要求は、インターセプトすることができる。インターセプトしたＤＮＳ要求は、ユニバーサルリソースロケータ（ＵＲＬ）を含む。次に、行われたＤＮＳ要求に対するサーバのドメイン名およびＩＰアドレスが判別される。加えて、拡張は、要求の発信源、すなわち、要求を行っているアプリケーションを判別するために使用することができる。特に、要求を行っているアプリケーションの識別子、例えば、アプリケーションの名前、またはアプリケーションの一意な識別子を判別することが可能である。
【００２２】
広告は、何らかの方法によって、何らかの形式で、いずれのデバイスの使用によっても広められる情報であり、不特定の人々のグループに宛てられ、広告の対象への注意を引き、広告の対象に興味を持たせるか、それを継続させ、かつ広告の対象を市場において販売促進することを目的とするものである。
【００２３】
一態様では、本開示の教示に従って、コンピューティングデバイス上の望ましくない情報をブロックするため、例えば、広告をブロックするためのシステムは、統合マイクロ回路（特定用途向け集積回路、Application-Specific  Integrated  Circuit：ＡＳＩＣ）、またはフィールドプログラマブルゲートアレイ（Field-Programmable  Gate  Array：ＦＰＧＡ）などのハードウェアを用いて、または、例えば、マイクロプロセッサシステムおよびプログラム命令のセットなどのソフトウェアおよびハードウェアの組み合わせの形態で、またニューロンシナプスチップ上で実現される、実世界デバイス、システム、コンポーネントおよびコンポーネントのグループを含む。このようなシステムモジュールの機能性は、ハードウェアによって単独で、およびソフトウェアによって実現されるシステムの機能性の一部とハードウェアによるものの一部との組み合わせの形態によっても実現することが可能である。特定の態様では、一部のモジュールまたはすべてのモジュールは、汎用コンピュータ（図３に示すような）のプロセッサで実行されてよい。さらに、システムのコンポーネントは、単一のコンピューティングデバイス内部で、またはいくつかの相互接続しているコンピューティングデバイスの間で分散して実現することができる。
【００２４】
図１は、本開示の態様に従って、コンピューティングデバイス上の情報、例えば、広告をブロックするための例示的システム１００を示すブロック図である。コンピューティングデバイス上の広告をブロックするためのシステム１００は、インターセプトモジュール１２０を含む。
【００２５】
インターセプトモジュール１２０は、リモートサーバ１４５からダウンロードされて、コンピューティングデバイス１１０の出力デバイスで表示される望ましくない情報の表示をブロックするように設計される。例えば、望ましくない情報は、コンピューティングデバイスの画面、またはコンピューティングデバイスに接続している周辺デバイスの画面に表示される場合がある。このような情報の具体的な事例は、広告１３０である。
【００２６】
本開示の例示的態様は広告に関して記載されるが、本開示の教示は、広告をブロックすることだけに制限されず、サーバからダウンロードされる情報を必要とするいずれの情報の表示もブロックするために使用される場合があるという点に留意すべきである。サーバからの情報のダウンロードに対する条件として、ＤＮＳ要求が必要であることに注意されたい。コンピューティングデバイス１１０の具体的な事例としては、携帯電話、スマートフォン、タブレット型コンピュータ、または任意の他のポータブルコンピューティングデバイスなどの、モバイルコンピューティングデバイスなどがある。
【００２７】
コンピューティングデバイス１１０は、実行可能または解釈可能なコードを含むコンピューティングデバイス１１０の画面上に望ましくない情報を表示するモジュールを備える。
【００２８】
一態様では、望ましくない情報を表示するモジュールは、広告モジュール１３５である。コンピューティングデバイス１１０が、モバイルコンピューティングデバイスである場合に、広告モジュール１３５は、コンピューティングデバイス上で動作するアプリケーションコンポーネントである。このようなモジュールの例としては、ＡｄＭｏｂ、ＡｄＳｅｎｃｅ、Ｆｉｒｅｂａｓｅ、ｉＡｄなどの、プログラムライブラリに基づく広告モジュールがある。一態様では、コンピューティングデバイス１１０が、モバイルコンピューティングデバイスである場合に、インターセプトモジュール１２０は、コンピューティングデバイス上で動作するアプリケーションコンポーネントである。例えば、コンピューティングデバイス上で動作するアプリケーションコンポーネント（例えば、ＡｄＭｏｂ、ＡｄＳｅｎｓｅなど）である広告モジュール１３５が、ＤＮＳ要求の送信を試みるときに、インターセプトモジュール１２０（同じく、コンピューティングデバイス１１０上で動作するアプリケーションコンポーネント）は、ＤＮＳ要求をインターセプトする。
【００２９】
一態様では、広告モジュール１３５は、独立したアプリケーションである。別の態様では、広告モジュール１３５は、メッセージを変換するか、またはウェブページに訪問するためのアプリケーションなどの、収益化のために設計された別のアプリケーションのコンポーネントである。
【００３０】
一般性を失うことなく、本開示の教示のさらなる説明のために、コンピューティングデバイス１１０は、ｉＯＳオペレーティングシステム管理下のモバイルコンピューティングデバイスとみなすこととする。
【００３１】
広告１３０の表示のために、広告モジュール１３５は、様々な広告キャンペーン向けの材料を提供するリモートサーバ１４５から、対応する材料（例えば、コンテンツ）をダウンロードする。広告１３０として表示されるデータのダウンロードは、広告モジュール１３５によるＤＮＳ要求の送信の後に行われる。ＤＮＳ要求は、サーバ１４５のユニフォームリソースロケータ（Uniform  Resource  Locator：ＵＲＬ）、特に、サーバのドメイン名に基づいて、サーバ１４５のＩＰアドレスを判別するために行われる。したがって、広告からユーザ（すなわち、ユーザのデバイス）を保護する課題は、ＤＮＳ要求が行われて、そのＤＮＳ要求がその後の広告のダウンロードのためのものであるかどうかを識別する問題と解釈することができる。
【００３２】
本開示の一態様では、インターセプトモジュール１２０は、コンピューティングデバイス１１０から送られるＤＮＳ要求、すなわち、コンピューティングデバイス１１０の広告モジュール１３５から送られるＤＮＳ要求をインターセプトすることによって、広告１３０からユーザを保護するために使用される。一態様では、インターセプトモジュール１２０は、ＤＮＳプロキシプロバイダを用いて実現することができる。
【００３３】
前述したように、種々のモジュール、例えば、インターセプトモジュール１２０、広告モジュール１３５などは、コンピューティングデバイス１１０上で動作するアプリケーションであってもよい。したがって、コンピューティングデバイス１１０、例えば、モバイルデバイスのハードウェアプロセッサは、インターセプトモジュール１２０および広告モジュール１３５のコードなどの、アプリケーションのコードを実行するために使用される。
【００３４】
一態様では、ＤＮＳ要求がインターセプトされるときに、サーバ１４５に常駐する広告リソースに対するＵＲＬが取得され、その要求を行っているアプリケーションに関する情報が取得される。ＵＲＬは、インターセプトしたＤＮＳ要求から取得される。インターセプトしたＤＮＳ要求から取得されるＵＲＬのいくつかの例としては、
−  ａｄｓ．ｍｏｐｕｂ．ｃｏｍ
−  ａｄｓ．ｎｅｘａｇｅ．ｃｏｍ
−  ａｄ．ｍａｉｌ．ｒｕ
−  ｗｓ．ｔａｐｊｏｙａｄｓ．ｃｏｍ
−  ｃｏｎｆｉｇ．ｕｎｉｔｙａｄｓ．ｕｎｉｔｙ３ｄ．ｃｏｍ
が挙げられる。
【００３５】
一態様では、アプリケーションに関する情報は、アプリケーションの少なくとも識別子を含む。例えば、情報は、アプリケーションの名前、アプリケーションのチェックサムなどを含んでもよい。
【００３６】
一態様では、アプリケーションに関する情報は、インターセプトモジュール１２０によって、オブジェクトＮＥＦｌｏｗＭｅｔａＤａｔａの形式で取得される。一態様では、ルールのセットを取得することは、データベース１２５からルールのセットを選択することを含む。データベース１２５は、コンピューティングデバイス１１０内部、または周辺デバイスに常駐する場合があることに注意されたい。例えば、コンピューティングデバイス１１０が、モバイルデバイス（例えば、スマートフォン）の場合、データベース１２５はモバイルデバイス内部の記憶場所にあってもよい。
【００３７】
一旦、アプリケーションに関する情報が取得されると、インターセプトモジュール１２０は、ＵＲＬおよびアプリケーションに関して取得された情報に基づいて、ＤＮＳ要求の送信に対するルールのセットを取得する。言い換えると、インターセプトしたＤＮＳ要求内のＵＲＬ、およびＤＮＳ要求を行っているアプリケーションに関する情報に基づいて、ルールのセットが取得されるが、その際、該アプリケーションに関する情報は、アプリケーションの少なくとも識別子、例えば、アプリケーションの名前、アプリケーションのチェックサムを含んでいる。
【００３８】
一態様では、ＤＮＳ要求の送信に対するルールのセットのルールは、ＤＮＳ要求を行っているアプリケーションに関する情報、少なくとも１つのＵＲＬに関する情報、およびＤＮＳ要求に関するルールによって定められた少なくとも１つのアクションを含む。例えば、少なくとも１つのアクションとしては、インターセプトしたＤＮＳ要求の送信をブロックすることが挙げられる。ブロックしたアクションは、アプリケーションに関する情報に基づいて取得されるルールに関連付けられたものであってもよい。
【００３９】
インターセプトモジュール１２０は、データベース１２５からルールのセットを取得するが、この場合、選択されるルールのセットのルールのそれぞれは、以下の条件を満たすようなものである。
−ＤＮＳ要求を行っているアプリケーションに関する情報は、ＤＮＳ要求の送信に対するルールに含まれるアプリケーションに関する情報と一致している。
−アプリケーションによって行われたＤＮＳ要求からのＵＲＬは、ＤＮＳ要求の送信に対するルールに含まれるＵＲＬに関する情報と一致している。
【００４０】
一態様では、正確な一致が存在するか、あるいはＵＲＬのマスクまたは正規表現によってカバーされている場合、アプリケーションによって行われたＤＮＳ要求からのＵＲＬは、ＤＮＳ要求の送信に対するルールに含まれるＵＲＬに関する情報と一致している。
【００４１】
一態様では、ルール内に格納されているＵＲＬに関する情報は、ＵＲＬ、ＵＲＬのマスク、またはＵＲＬを表す正規表現を成すものであってもよい。特定のＤＮＳ要求に対するインターセプトモジュール１２０によって選択されるルールのために、ＤＮＳ要求に含まれる必要があるＵＲＬに関する情報は、
−  ＊．＊ａｄｓ．＊．ｃｏｍ
−  ａｄｓ．＊．ｃｏｍ
を含む。
【００４２】
一態様では、インターセプトモジュール１２０によるルールの選択後に、インターセプトモジュール１２０は、ＤＮＳ要求の送信に対するルールによって定められたアクションを実行する。例えば、ＤＮＳ要求の送信がブロックされる場合がある。
【００４３】
さらに別の態様では、ルールは、さらに以下のアクションを定めてもよい。
−  広告１３０を表示させるか、またはブロックするかどうかを尋ねるメッセージをユーザに表示する。
−  広告１３０が表示されるであろう画面領域上で、広告１３０を表示させるか、またはブロックするかどうかを尋ねるメッセージをユーザに表示する。
【００４４】
一態様では、ＤＮＳ要求の送信に対するルールに含まれる追加の条件が満たされるときに、インターセプトモジュール１２０は、ルールによって定められたアクションを実行する。一態様では、追加の条件としては、
−  広告サーバのＵＲＬと一致するＤＮＳ要求からのＵＲＬに対する条件
−  確定されている閾値、例えば、８０％（０．８）以下の、コンピューティングデバイス１１０のユーザアクションによって開始されるＤＮＳ要求の確率に対する条件
が挙げられる。
【００４５】
一態様では、コンピューティングデバイスのユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求の確率は、次の式によって決定される。
【数１】
2020129367.tif 000003
式中、Ｐは、ＤＮＳ要求がコンピューティングデバイスのユーザの１つまたは複数のアクションによって開始された確率を表すものであり、ｘｉは、後述するように、複数の条件のうち１つの重み係数を表すものである。
【００４６】
複数の条件の各条件は、ＤＮＳ要求に関する特定の情報に対して満たされるものである。言い換えると、条件は、ＵＲＬおよび／またはＤＮＳ要求を行っているアプリケーションに関する情報に対して満たされるものである。一態様では、条件の重み係数には、異なる値が用いられてもよい。
【００４７】
一態様では、複数の条件は、以下の条件のうち少なくとも１つを含む。
（１）ＤＮＳ要求からのＵＲＬが、ＵＲＬ、ＵＲＬのマスク、または既知の広告サーバのＵＲＬの正規表現と一致していない。その場合、例えば、重み係数は、１に等しくてもよい。
（２）ＤＮＳ要求を行っているアプリケーションがブラウザである。その場合、例えば、重み係数は、０．４に等しくてもよい。
（３）ＤＮＳ要求を行っているアプリケーションがゲームである。その場合、重み係数は、−０．５に等しくてもよい。
（４）ＤＮＳ要求からのＵＲＬのセカンドレベルのドメインが、現在よりも以前の特定の時間ｔの間（例えば、ｔは５日間）に、ＤＮＳ要求を行っているアプリケーションによって既に訪問されたことがある。その場合、重み係数は、０．５に等しくてもよい。
（５）ＤＮＳ要求からのＵＲＬが、アプリケーションに関連付けられている多数のＵＲＬの中に存在する。その場合、重み係数は、０．２に等しくてもよい。
【００４８】
アプリケーションに関連付けられたＵＲＬのセットは、アプリケーションの各識別子が、１つまたは複数のＵＲＬアドレス、ＵＲＬアドレスのマスクまたは正規表現と一致して設定されるようにしてデータベース１２５に保存されてよく、そのアクセスは（また、対応するＤＮＳ要求も）、所与のアプリケーションにとって標準的なものである。アプリケーションに関連付けられたＵＲＬのセット（すなわち、データベース１２５に保存された情報）は、例えば、コンピュータセキュリティの分野で、専門家によって遠隔的に記憶および更新されてよい。アプリケーションとＵＲＬのセットとを関連付けるリンクの一例としては、アプリケーションＹａｎｄｅｘ．Ｔｒａｎｓｌａｔｏｒおよびその関連したＵＲＬ  ａｄ．ｙａｎｄｅｘ．ｒｕがある。
【００４９】
一態様では、前述の条件および対応する重み係数は、データベース１２５に保存されてもよい。一態様では、条件および対応する重み係数は、例えば、コンピュータセキュリティの分野で、専門家によって、データベース１２５に遠隔的に記憶および更新されてよい。
【００５０】
一態様では、選択されたルールのセットは、ルールによって定められたアクションを実行するために、インターセプトモジュール１２０によって使用される。さらに、一態様では、アクションが定められたアクションのすべての中から選択されるときに、ＤＮＳ要求をブロックするアクションは最優先度を有する。
【００５１】
一態様では、データベース１２５からのＤＮＳ要求の送信に対するルールのセットのうち少なくとも１つのルールにより、ＤＮＳ要求のブロッキングが承諾される場合、ＤＮＳ要求の送信はブロックされる。したがって、ルールのセットのうち１つのルールにより、ＤＮＳ要求のブロッキングが承諾される場合、広告１３０のダウンロードおよび表示をする広告モジュール１３５によって行われるＤＮＳ要求は、インターセプトモジュール１２０によってブロックされることになる。
【００５２】
図２は、本開示の態様に従って、コンピューティングデバイスでの（望ましくない）情報の受信をブロックするための例示的方法２００のフロー図である。例えば、望ましくない情報が広告である場合、方法２００は、コンピューティングデバイスでの広告の受信をブロックするために使用することができる。
【００５３】
ステップ２１０では、該方法により、ＤＮＳ要求をインターセプトする。ＤＮＳ要求のインターセプションは、前述したインターセプトモジュール１２０の機能を実施するアプリケーションが動作しているコンピューティングデバイスのハードウェアプロセッサによって実施されてよい。インターセプトしたＤＮＳ要求は、本開示の教示に従って、コンピューティングデバイスによる受信がブロックされる情報と関連付けられていることに注意されたい。
【００５４】
一態様では、ＤＮＳ要求のインターセプションは、ＤＮＳ要求を行っているアプリケーションの識別、およびＤＮＳ要求からの１つまたは複数のＵＲＬに関する情報の取得を含む。一態様では、ＤＮＳ要求のインターセプションは、ＤＮＳプロキシプロバイダを用いて実施される。
【００５５】
インターセプトモジュール１２０は、かかるＤＮＳ要求が、所与の広告モジュール、例えば、広告モジュール１３５によって行われるＤＮＳ要求のためのアプリケーションによって行われるＤＮＳ要求の特性を示すものである程度を判断するタスクが与えられる。
【００５６】
ステップ２２０では、該方法により、インターセプトしたＤＮＳ要求の送信に対するルールのセットを取得する。ルールのセットを取得することは、インターセプトモジュール１２０によって実施されてよい。一態様では、ルールのセットは、ＤＮＳ要求のインターセプションの間に取得される情報に基づいて、データベース１２５から選択することによって取得される。データベース１２５およびインターセプトモジュール１２０は、同じデバイス、例えば、コンピューティングデバイス１１０に実装されてもよい。
【００５７】
一態様では、インターセプトモジュール１２０は、ルールのセットの選択の間に、インターセプトしたＤＮＳ要求が、ユーザの１つまたは複数のアクションによって開始されたＤＮＳ要求である確率について推定を行う。別の態様では、インターセプトモジュール１２０は、インターセプトしたＤＮＳ要求が、リモートサーバからのその後の広告のダウンロードのために、広告モジュールによって行われるＤＮＳ要求の特性を示すものである確率について推定を行う。例えば、インターセプトモジュール１２０は、インターセプトしたＤＮＳ要求が、リモートサーバ１４５からのその後の広告１３０のダウンロードのために、広告モジュール１３５によって行われるＤＮＳ要求の特性を示すものである確率について推定を行う。
【００５８】
ステップ２２５では、該方法により、取得したルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングを承諾するかどうかを決定する。ルールのセットのうち少なくとも１つのルールにより、インターセプトしたＤＮＳ要求の送信のブロッキングが承諾される場合、方法はステップ２４０に進む。そうでない場合、方法は、ステップ２３０へ進む。
【００５９】
ステップ２３０では、該方法２００により、ＤＮＳ要求の送信をブロックしない。一態様では、該方法により、ＤＮＳ要求の送信をブロックしない場合、ＤＮＳ要求の送信は可能になる。ＤＮＳ要求の送信は、他の理由で、例えば、インターセプトモジュール１２０によって進行が許可される場合であっても、他のモジュールによってブロックされる場合があることに注意されたい。
【００６０】
ステップ２４０では、該方法、例えば、方法２００により、インターセプトモジュール１２０は、ＤＮＳ要求の送信をブロックし、該インターセプトしたＤＮＳ要求の送信のブロッキングにより、コンピューティングデバイスでの情報の受信をブロックする。
【００６１】
一態様では、ＤＮＳ要求の送信に対するルールは、データベース、例えば、データベース１２５に保存される。一態様では、要求のＵＲＬが、望ましくない情報をユーザに配布するように設計されたサーバのＵＲＬと一致する場合、ＤＮＳ要求の送信はブロックされる。例えば、サーバは、広告、フィッシング情報などを配布するように設計されている場合がある（例えば、サーバは広告サーバである）。
【００６２】
前述したように、本開示は、コンピューティングデバイス上の広告をブロックするためのシステムおよび方法について記載する。本開示の方法の利点の１つは、ユーザのアクションによって開始されたものではないＤＮＳ要求をブロックすることである。例えば広告モジュール１３５によって行われたＤＮＳ要求による、リモートサーバ、例えば、リモートサーバ１４５からのダウンロードは阻止される。広告モジュール１３５によって行われるＤＮＳ要求の特性は、その要求がユーザのアクションによって開始されたＤＮＳ要求と識別するために使用され、それにより、上述の望ましくない広告をブロックすることができる。したがって、本開示の教示は、ユーザのコンピューティングデバイスの出力デバイス上に、望ましくない情報、特に、広告が表示されることに関連する技術的問題を解決するものである。技術的効果は、ユーザのコンピューティングデバイス１１０上への広告、例えば広告１３０（一般に、広告データ）のダウンロードをブロックすることによって達成される。
【００６３】
図３は、例示的態様に従って、コンピューティングデバイス上の広告をブロックするためのシステムおよび方法の態様が実装されることがあるコンピュータシステム２０を示すブロック図である。コンピュータシステム２０は、コンピューティングデバイス上の仮想マシンに相当し得、例えば、前述のような、インターセプトモジュールは、仮想マシンに配備される場合があるという点に留意すべきである。コンピュータシステム２０は、例えば、デスクトップコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、モバイルコンピューティングデバイス、スマートフォン、タブレットコンピュータ、サーバ、メインフレーム、埋め込み型デバイス、およびコンピューティングデバイスの他の形態など、複数のコンピューティングデバイスの形態、または、単一のコンピューティングデバイスの形態である場合がある。
【００６４】
示すように、コンピュータシステム２０は、中央演算処理装置（Central  Processing  Unit：ＣＰＵ）２１、システムメモリ２２、および、中央演算処理装置２１に関連付けられたメモリを含む種々のシステムコンポーネントを接続しているシステムバス２３を含む。システムバス２３は、バスメモリまたはバスメモリコントローラ、周辺バス、および任意の他のバスアーキテクチャと相互作用することが可能なローカルバスを含んでもよい。各バスの例としては、ＰＣＩ、ＩＳＡ、ＰＣＩ−Ｅｘｐｒｅｓｓ、ＨｙｐｅｒＴｒａｎｓｐｏｒｔ（商標）、ＩｎｆｉｎｉＢａｎｄ（商標）、シリアルＡＴＡ、Ｉ２Ｃ、およびその他の好適なインターコネクトなどを挙げてよい。中央演算処理装置２１（プロセッサとも称される）は、単一のまたは複数のコアを有する単一のまたは複数のプロセッサのセットを含むことができる。プロセッサ２１は、本開示の技術を実装する１つまたは複数のコンピュータ実行可能コードを実行してもよい。システムメモリ２２は、本明細書で使用するデータおよび／またはプロセッサ２１によって実行可能なコンピュータプログラムを記憶する任意のメモリであってよい。システムメモリ２２は、ランダムアクセスメモリ（Random  Access  Memory：ＲＡＭ）２５などの揮発性メモリ、および読み取り専用メモリ（Read  Only  Memory：ＲＯＭ）２４、フラッシュメモリなどの不揮発性メモリ、またはこれらの任意の組み合わせを含んでもよい。基本入出力システム（Basic  Input/Output  System：ＢＩＯＳ）２６は、例えば、ＲＯＭ２４を使用してオペレーティングシステムをロードするときの手順などの、コンピュータシステム２０の各要素間の情報の伝送の基本手順を記憶していてもよい。
【００６５】
コンピュータシステム２０は、１つまたは複数の取り外し可能記憶デバイス２７、１つまたは複数の非取り外し可能記憶デバイス２８、またはこれらの組み合わせなどの１つまたは複数の記憶デバイスを含んでもよい。１つまたは複数の取り外し可能記憶デバイス２７、および非取り外し可能記憶デバイス２８は、記憶インターフェース３２を介してシステムバス２３に接続される。一態様では、記憶デバイスおよび対応するコンピュータ可読記憶媒体は、コンピュータシステム２０のコンピュータ命令、データ構造、プログラムモジュール、および他のデータを記憶するための電力独立型モジュールである。システムメモリ２２、取り外し可能記憶デバイス２７、非取り外し可能記憶デバイス２８は、種々のコンピュータ可読記憶媒体を使用してもよい。コンピュータ可読記憶媒体の例としては、例えば、キャッシュ、ＳＲＡＭ、ＤＲＡＭ、ゼロ・コンデンサＲＡＭ、ツイントランジスタＲＡＭ、ｅＤＲＡＭ、ＥＤＯ  ＲＡＭ、ＤＤＲ  ＲＡＭ、ＥＥＰＲＯＭ、ＮＲＡＭ、ＲＲＡＭ（登録商標）、ＳＯＮＯＳ、ＰＲＡＭなどのマシンメモリ、ソリッドステートドライブ（Solid  State  Drive：ＳＳＤ）またはフラッシュドライブのようなフラッシュメモリまたはその他のメモリ技術、ハードディスクドライブまたはフロッピーディスクのような磁気カセット、磁気テープ、および磁気ディスク記憶装置、コンパクトディスク（Compact  Disk  Read  Only  Memory：ＣＤ−ＲＯＭ）またはデジタル多用途ディスク（Digital  Versatile  Disk：ＤＶＤ）のような光記憶装置、および所望のデータを記憶するために使用されてよく、コンピュータシステム２０によってアクセス可能な任意の他の媒体が挙げられる。
【００６６】
コンピュータシステム２０のシステムメモリ２２、取り外し可能記憶デバイス２７、および非取り外し可能記憶デバイス２８は、オペレーティングシステム３５、追加のプログラムアプリケーション３７、他のプログラムモジュール３８およびプログラムデータ３９を記憶するために使用されてよい。コンピュータシステム２０は、例えば、キーボード、マウス、スタイラス、ゲームコントローラ、音声入力デバイス、タッチ入力デバイスなどの、入力デバイス４０からのデータを通信するための周辺インターフェース４６、または、例えばシリアルポート、パラレルポート、ユニバーサルシリアルバス（Universal  Serial  Bus：ＵＳＢ）または他の周辺インターフェースなどの１つまたは複数の入出力ポートを介した、プリンタまたはスキャナなどの他の周辺デバイスを含んでもよい。例えば１つまたは複数のモニタ、プロジェクタまたは統合ディスプレイなどのディスプレイデバイス４７は、例えばビデオアダプタなどの出力インターフェース４８を通してシステムバス２３に接続されてもよい。ディスプレイデバイス４７に加えて、コンピュータシステム２０は、例えばスピーカおよび他の音響映像デバイスなどの他の周辺出力デバイス（図示せず）を搭載してもよい。
【００６７】
コンピュータシステム２０は、１つまたは複数のリモートコンピュータ４９へのネットワーク接続を使用して、ネットワーク環境で動作してよい。リモートコンピュータ（またはコンピュータ）４９は、コンピュータシステム２０の性質について記載されている上述の各要素のほとんどまたはすべてを含む、ローカルコンピュータワークステーションまたはサーバであってもよい。例えば、ルータ、ネットワーク局、ピアデバイスまたは他のネットワークノードなどのその他のデバイスが、コンピュータネットワーク内に存在する場合があるが、これらに限定されない。コンピュータシステム２０は、例えば、ローカルエリアコンピュータネットワーク（Local-Area  Computer  Network：ＬＡＮ）５０、広域コンピュータネットワーク（Wide-Area  Computer  Network：ＷＡＮ）、イントラネットおよびインターネットなどの１つまたは複数のネットワークを介して、リモートコンピュータ４９と通信するための１つまたは複数のネットワークインターフェース５１またはネットワークアダプタを含んでもよい。ネットワークインターフェース５１の例としては、イーサネット（登録商標）インターフェース、フレームリレーインターフェース、ＳＯＮＥＴインターフェースおよび無線インターフェースを挙げてもよい。
【００６８】
本開示の態様は、システム、方法、および／またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、プロセッサに本開示の態様を実行させるコンピュータ可読プログラム命令を有する、コンピュータ可読記憶媒体（またはメディア）を含んでもよい。
【００６９】
コンピュータ可読記憶媒体は、命令またはデータ構造の形態でプログラムコードを保持し、記憶することができる有形デバイスであってもよく、コンピューティングシステム２０などのコンピューティングデバイスのプロセッサによってアクセス可能なものである。コンピュータ可読記憶媒体は、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、またはこれらの任意の好適な組み合わせであってもよい。例として、このようなコンピュータ可読記憶媒体は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ＥＥＰＲＯＭ、ポータブルコンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、フラッシュメモリ、ハードディスク、ポータブルコンピュータディスケット、メモリースティック、フロッピーディスク、あるいは、例えば命令がそこに溝状に記録されたパンチカードまたは隆起した構造などの機械的にコード化されたデバイスが挙げられる。本明細書で使用する場合、コンピュータ可読記憶媒体は、それ自体が、例えば、電波またはその他の自ら伝搬する電磁波、導波管または伝送媒体を通して伝搬する電磁波、あるいは有線によって伝送される電気信号などの一時的な信号であると解釈されるものではない。
【００７０】
本明細書に記載されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から、対応するコンピューティングデバイスに、もしくは、例えば、インターネット、ローカルエリアネットワーク、広域ネットワークおよび／または無線ネットワークなどのネットワークを介して、外部コンピュータまたは外部記憶デバイスにダウンロードされ得る。ネットワークは、銅製の伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータおよび／またはエッジサーバを含んでもよい。各コンピューティングデバイスのネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信して、対応するコンピューティングデバイス内部のコンピュータ可読記憶媒体に記憶するために、コンピュータ可読プログラム命令を転送する。
【００７１】
本開示の動作を実行するためのコンピュータ可読プログラム命令は、オブジェクト指向プログラミング言語、および従来の手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組み合わせで書き込まれる組み立て命令、命令セットアーキテクチャ（Instruction-Set-Architecture：ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、ステート設定データ、あるいはソースコードまたはオブジェクトコードであってもよい。コンピュータ可読プログラム命令は、全面的にユーザのコンピュータで、部分的にユーザのコンピュータで、スタンドアロンソフトウェアパッケージとして、部分的にユーザコンピュータと部分的にリモートコンピュータとで、もしくは全面的にリモートコンピュータまたはサーバで実行されてよい。後半のシナリオでは、リモートコンピュータは、ＬＡＮまたはＷＡＮを含む任意のタイプのネットワークを通してユーザのコンピュータに接続されているか、または、接続は、外部コンピュータに向かって（例えば、インターネットを通して）構築されてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）またはプログラマブルロジックアレイ（Programmable  Logic  Array：ＰＬＡ）を含む電子回路は、本開示の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して、コンピュータ可読プログラム命令を実行し、電子回路をパーソナライズしてもよい。
【００７２】
種々の態様では、本開示に記載されるシステムおよび方法を、モジュールの意味で扱うことができる。本発明で使用する場合、用語「モジュール」は、例えば、特定用途向け集積回路（ＡＳＩＣ）またはＦＰＧＡなどのハードウェアを使用して、または、例えば、マイクロプロセッサシステム、および（実行中に）マイクロプロセッサシステムを特殊目的デバイスに変換するモジュールの機能性を実装するための命令のセットなどのハードウェアとソフトウェアとの組み合わせとして実装される、実世界デバイス、コンポーネント、またはコンポーネントの機構を意味する。モジュールはまた、単独でハードウェアによって促進される特定の機能と、ハードウェアとソフトウェアとの組み合わせによって促進される他の機能との、２つの組み合わせとして実装されてもよい。特定の実装形態では、少なくとも一部、および場合によっては、すべてのモジュールは、コンピュータシステムのプロセッサ（例えば、上記図３で詳細に記載されたもの）によって実施されてよい。したがって、各モジュールは、様々な好適な構成で実現される可能性があり、本明細書に例示されるいずれの特定の実装にも限定されるべきではない。
【００７３】
明瞭であるために、態様の決まりきった特徴のすべては本明細書に開示していない。本開示の任意の実際の実装形態の開発時に、開発者の特定の目的を達成するために非常に多くの実装形態固有の決定が行われる必要があり、これらの特定の目的は異なる実装形態および異なる開発者によって変更されることを理解されるであろう。このような開発作業は、複雑であり、かつ時間がかかる可能性があるが、それでも本開示から利益を得る当業者にとって日常的な技術的業務であるものと理解される。
【００７４】
さらに、本明細書で用いる表現や用語は説明上のものであって、限定のためではなく、本明細書の用語や表現は、当業者の知見と組み合わされて、本明細書で提示する教示および指導に照らして当業者によって解釈されるものと理解すべきである。加えて、明示的記載がない限り、本明細書または特許請求の範囲におけるいかなる用語も、一般的でない、あるいは特別な意味を持つものとみなされることを意図していない。
【００７５】
本明細書に開示された様々な態様は、本明細書で例示により言及された公知のモジュールと均等な現在および将来の公知の均等物を含む。さらに、態様および応用例を示し、かつ説明したが、本明細書に開示された発明の概念から逸脱することなく、上述したよりも多くの変更が可能であることは、本開示から利益を得る当業者には明らかであろう。
【図１】
2020129367.tif 000004
【図２】
2020129367.tif 000005
【図３】
2020129367.tif 000006
【外国語明細書】
2020129367000001.pdf