JP5088968B2 - コンテンツ配信ネットワークにおけるデータ収集方法及びシステム - Google Patents

コンテンツ配信ネットワークにおけるデータ収集方法及びシステム Download PDF

Info

Publication number
JP5088968B2
JP5088968B2 JP2009525708A JP2009525708A JP5088968B2 JP 5088968 B2 JP5088968 B2 JP 5088968B2 JP 2009525708 A JP2009525708 A JP 2009525708A JP 2009525708 A JP2009525708 A JP 2009525708A JP 5088968 B2 JP5088968 B2 JP 5088968B2
Authority
JP
Japan
Prior art keywords
cdn
data
user
user agent
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009525708A
Other languages
English (en)
Other versions
JP2010501939A (ja
Inventor
マンキュソ,ブライアン,ジェイ
アファーガン,マイケル,エム
トムソン レイトン,エフ
ジョンソン,ティモシー,ピイ
ジイ イワモト,ケン
Original Assignee
アカマイ テクノロジーズ インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アカマイ テクノロジーズ インコーポレイテッド filed Critical アカマイ テクノロジーズ インコーポレイテッド
Publication of JP2010501939A publication Critical patent/JP2010501939A/ja
Application granted granted Critical
Publication of JP5088968B2 publication Critical patent/JP5088968B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Description

本願は2006年8月18日付け出願第60/838,610号および2006年8月18日付け出願第60/838,735号に基づく優先権を主張するものである。
本発明は広義には分散ネットワークにおけるデータ収集に係わる。
公知技術の簡単な説明
分散コンピュータシステムは公知である。このような分散コンピュータの1例として、サービス・プロバイダーによって運用管理される「コンテンツ配信ネットワーク」または「CDN」がある。サービス・プロバイダーは第三者に代わってサービスを提供する。このような「分散システム]とは、種々のサービス、例えば、コンテンツの配信またはアウトソースされているサイトのインフラストラクチャーの支援などを容易にするためのソフトウェア、システム、プロトコルおよび技術をも含めて、1つまたは2つ以上のネットワークによってリンクされた自立コンピュータ群を意味する。典型的には、「コンテンツ配信」はコンテンツの蓄積、キャッシングまたは伝送、媒体のストリーミングおよびコンテンツ・プロバイダーのためのアプリケーション、例えば、DNSリクエスト処理、プロビジョニング、データ・モニターおよびリポーティング、コンテンツ・ターゲティング、パーソナリゼーション、およびビジネス・インテリジェンスなどの補助的技術をも含む。「アウトソースされたサイトのインフラストラクチャー」とはエンティティが第三者のウェブサイト・インフラストラクチャを全体的または部分的に運用および/管理できるようにする分散システムおよび関連の技術を意味する。
ウェブ・サーバーはHTTPと呼称されるプロトコルでウェブ・ブラウザーに対してウェブベースのコンテンツを配信する。HTTPはステートレス・プロトコルであるから、既知のHTTPプロトコル・エクステンションによってウェブ・サーバーはリクエストするエンドユーザー・ウェブ・ブラウザーに状態情報を提供することができる。具体的には、ウェブ・サーバーはその回答の中に、状態情報の小ブロック(「クッキー」)を記憶すべきことを指示するとともに、今後のリクエストにその情報のコピーを含めるようクライエントに指示する。このようにすれば、ウェブ・サーバーはこのクライエント・ブラウザーに以前出会ったことがあるかどうかをトラッキングすることができ、このトラッキング情報を利用することによってブラウザー特定プロファイルを構成し、このプロファイルを利用して別の制御機能を、例えば、ブラウザーに配信されるウェブ・ページにどのようなタイプの広告を載せるべきかを示唆することができる。従来の慣行では、ウェブ・サーバーは自らのドメイン内でだけ通用するクッキーを設定することによってクッキーが発信されたのと同じウェブ・ドメインだけに返送されるようにしている。このような慣行と並行して、クッキーを多様なコンテンツ・ドメインに跨って共有することによって、ウェブ・ブラウザーを利用する個人コンテンツ好みや関心を識別できるようにする努力がなされている。例えば、米国特許第6,073,241号においては、1組の協働するサーバーが共用のデータベースを介してクッキー情報を共有する。米国特許出願第20020007317号の場合には、1つまたは2つ以上のクッキーにクライエント状態情報を組み込み、このクッキーが仮想のショッピングモール環境における互いに連携の無いドメインによって共有される。サーバーどうしが協働するのではなく、中間的なアプリケーションを利用することによってクライエントからのリクエストおよび回答に状態情報を付加する。
ある広告会社が広告を掲示しているサイトになじみの無いウェブ・ブラウザーがアクセスした場合、これを反映するクッキー・データを広告会社が収集し、相関させることができることも公知である。広告会社はこのデータを利用することによってエンドユーザーのプロファイルを形成することができる。
本発明は、分割できないものとして識別可能なウェブ・クライエント(「ユーザーエージェント」と呼ぶ)コンテンツ配信ネットワーク(CDN)のサービス・プロバイダーによって管理されている種々のドメインに亘ってCDNと相互作用すると、これらユーザーエージェント特定の情報が得るためにCDNサービス・プロバイダーがこのコンテンツ配信ネットワークをどのように拡充する方法に係るものである。1つの実施態様として、一組のマシーン、プロセス、プログラム、およびデータがデータシステムを構成する。このシステムは好ましくはクッキーを介してユーザーエージェントをトラッキングするが、1つまたは2つ以上の受動的な技術を利用することもある。典型的な実施態様において、ユーザーエージェントはクッキー蓄積機能を有するクッキー機能付きデバイスである。ユーザーエージェントが種々のサイトに亘ってナビゲートすると、ユーザーエージェ
ントを相関させるためシステムによって利用されるCDN専用の固有の識別子(マスターID)が形成される。このユニークな識別子は暗号化されたクッキーとして記憶されることが好ましい。マスターIDは常に1つのユーザーエージェント(従って、1つのクッキー機能付きデバイスの蓄積手段)を表わすが、これは一人の「ユーザー」を意味するものではなく、ユーザーエージェントが一人の人物と結びつくとは限らない。システムはCDNのサービスを受けるカスタマーサイト上のユーザーエージェントの挙動をトラッキングし、これらの挙動を識別可能な「セグメント」に分類する。「挙動」は(マスターIDのよって識別される)ユーザーエージェントがサイト上で発生させる事象である。典型的には、挙動はユーザーエージェントによるリクエストと関連する。「セグメント」はユーザーエージェントの挙動を計算によって分類したものであり、多くの場合1つまたは2つ以上の挙動を組み込んだアルゴリズムによって形成される。セグメントは1つまたは2つ以上の方法により1つまたは2つ以上の挙動を収集したものである。「ユーザー・プロファイル」は1つまたは2つ以上のセグメントの集合である。
第1の使用例は「パブリッシャー」サービスである。この使用例においては、(CDNを使用して)1組のドメインまたはプロパティーを利用する所与のCDNカスタマーがこのシステムを利用することによって、これらのドメインを運用するユーザーエージェントに関する情報を得ることができる。カスタマー(またはその他)は他の目的(例えば、広告、動的コンテンツ作成、など)にもこの情報を利用することができる。
第2の使用例は「ボット軽減」サービスである。この使用例においては、取引サイト(例えば、エンドユーザーが限られた在庫しかない品目、即ち、イベント・チケット、ホテル・ルーム、航空機座席などを購入するウェブサイト)を利用する所与のCDNカスタマーはこのシステムを利用することによってサイトにアクセスするユーザーエージェントに関する情報、具体的には、特定のユーザーエージェントが自動化エンティティ(例えば、ソフトウェア・ロボットまたは「ボット」)なのかどうかに関する情報を得ることができる。サイトはの情報を利用して最も妥当と思われるユーザーエージェント(即ち、人)に最もレベルの高いサービスを提供することができる。このオペレーションはボットの軽減を容易にすると共にその他のサイト不正行為を少なくする。
第3の使用例は「パートナー」サービスである。この使用例においては、CDNサービス・プロバイダーはデータシステムを利用してCDNを利用する複数のエンティティに代わって連合サービスを提供する。一例として、カスタマーAがメーカー;カスタマーBが新品および中古品に関する情報サービスを提供するウェブサイトとする。カスタマーAおよびBはビジネス関係にあり(または互いに利益を得る関係にあって、それぞれのウェ
ブサイトにアクセスしてくるエンドユーザーに関する情報を得ることができる。この使用例において、もしカスタマーAもカスタマーBも共にCDNを利用してそれぞれのサイトに配信すれば、データシステムを一方または双方のカスタマーが利用することでデータ共有を容易にし、その範囲を広げることができる。CDNはデータシステムを利用して両サイトにアクセスするユーザーエージェントの挙動情報を収集できるからである。
さらに他の使用例として「ターゲティング」サービスがある。この使用例では、CDNサービス・プロバイダーはデータシステムを利用することによって、例えば、ユーザーエージェントのユーザープロファイルを作成し、このプロファイルを広告サービス機関に提供することによって広告のターゲティングを容易にする。
本発明の主な構成要件を以上に説明したが、これらの構成要件は飽くまでも説明のための構成要件である。本発明を以下に述べるように異なる態様で応用するか、または変更を加えることによって、さらに多くの有益な結果が得られる。
本発明の詳細と利点を、添付の図面を参照して以下に説明する。
図1は本発明の主題を実施することができるコンテンツ配信ネットワークを示す。 図2は図1のコンテンツ配信ネットワークのエッジサーバーを示す。 図3はコンテンツ配信ネットワークに使用されるオンライン挙動データ収集アーキテクチャーのハイレベル手順を示す。 図4はオンライン挙動データ収集システムの実施例を示す詳細なブロックダイヤグラムである。 図5はエッジサーバーを起点とする一致演算と関連するプロセスフローを示す。 図6はセグメント演算と関連するプロセスフローを示す。 図7は1組のセグメントを含む代表的なユーザープロファイルを示す。
本発明は図1および2に示すようなコンテンツ配信ネットワークにおいて実施することができる。CDNに利用できるだけでなく、1つのエンティティが分散型ネットワークを操作し、この分散型ネットワークから第三者コンテンツを分散させるような環境なら如何なる環境においても実施することができる。
代表的な実施態様として、分散型コンピュータシステム100はCDNとして構成され、インターネット上に「エッジ」サーバーとして分散された1組のマシーン102a-n有すると想定される。システム中の種々のマシーンの挙動を管理するにはデータ通信管制センター(NOCC)を利用することができる。ウェブサイト106のような第三者サイトは分散型コンピュータシステム100、特に、「エッジ」サーバー102a-nに対してコンテンツ(例えば、HTML、埋め込みページ・オブジェクト、ストリーミング・メディア、ソフトウェア・ダウンロード、など)の配信をオフロードする。多くの場合、コンテンツ・プロバイダーはコンテンツ配信をオフロードする際に、コンテンツ・プロバイダーの所与のドメインまたはサブドメインを、サービス・プロバイダーの正規のドメイン・ネーム・サービスによって管理されているドメインであるかのように(例えば、DNSCNAMEによって)エイリアシングする。そのようなコンテンツを求めるエンドユーザーは分散型コンピュータシステムに差し向けられてコンテンツを確実に且つより効率的に
得ることができる。詳しくは図示しないが、分散型コンピュータシステムはその他のインフラストラクチャーをも含むことがある。例えば、エッジサーバーから使用量などのデータを収集し、1つまたは2つ以上の領域に跨る分散型データを集約し、このデータを他のバックエンド・システム110、112、114および116に送ることによってモニタリング、ロギング、警告、請求書作成、管理およびその他の運転機能や運営機能を容易にすることができる収集システム108をも含むことがある。分散型ネットワーク・エージェント118はネットワークおよびサーバー負荷をモニターして、CDNの管理下にあるコンテンツ・ドメインに関して権限を有するDNS質問処理メカニズム115に対してネットワーク、データ通信量および負荷データを提供する。分散データ伝送メカニズム120を利用することによってエッジサーバーに制御情報(例えば、コンテンツを管理し、負荷平衡化を容易にするためのメタデータなど)を配分することができる。図2に示すように、所与のマシーン200は1つまたは2つ以上のアプリケーション206a-nを支援する(Linuxなどのような)オペレーティングシステム204を運用するコモディティ・ハードウェア(例えば、Intel Pentiumプロセッサ)202を含む。コンテンツ配信サービスを容易にするため、例えば、所与のマシーンは多くの場合、1組のアプリケーション、例えば、HTTP Webプロキシ207、ネームサーバー208、ローカル・モニタリング・プロセス210、分散データ収集プロセス212、などを運用する。Webプロキシ207はこれと連携するエッジサーバー・マネジャー・プロセスを含み、コンテンツ配信ネットワークと連携する1つまたは2つ以上の機能を容易にする。
図2に示すようなCDNエッジサーバーは、好ましくは構成システムによりエッジサーバーに分配される構成ファイルを利用して、好ましくはドメイン及びカスタマーを特定して1つまたは2つ以上の拡充コンテンツ配信機能を提供するように構成されている。所与の構成ファイルは好ましくはXMLベースであり、1つまたは2つ以上の斬新なコンテンツ・ハンドリング機能を可能にする1組のハンドリングルールと指示を含む。構成ファイルは分散データ伝送メカニズムを介してCDNエッジサーバーに配信される。米国特許第7,111,057号明細書はエッジサーバー・コンテンツ制御情報を配信・管理するのに有用なインフラストラクチャーを開示しており、この制御情報およびその他のエッジサーバー制御情報はCDNサービス・プロバイダー自体、または(エクストラネットなどを介して)オリジン・サーバーを運用するコンテンツ・プロバイダー・カスタマーによって提供することができる。エッジサーバー・マネージャ・プロセス(g-ホスト)がコンテンツに対するリクエストを受けると、このリクエストに関連するカスタマーのホストネームと一致するものを求めてインデックスファイルを検索する。もし一致するものがなければ、エッジサーバー・プロセスはリクエストを拒絶する。一致するものがあれば、エッジザーバー・プロセスは構成ファイルからメタデータを読取り、リクエストを如何に扱うかを決定する。このハンドリング・プロセスは米国特許第7,240,100号明細書に記述されている。
本発明では、図3に示すようなオンライン動データ収集システムを利用することによって上記CDNを拡することができる。図示例では、(図2に示すような)所与のエッ
ジサーバー・マシーンが所与のデータ収集ルーチン302を含み、CDNがエッジサーバーからのクライエント・マシーン・ユーザーエージェント動データを受信し、処理し、管理し、記憶する(後述する)クラスタを含むように拡充されるものと想定する。典型的な例としてはコンテンツ配信ネットワーク内に、またはこれと併用される態様を挙げることができるが、これに限定されるものではない。原理的には、クラスタは下記の機能を含む:ユーザー相関モジュール304、データ削除モジュール306、およびデータ分析モジュール308。結果として得られたデータはリポジトリ310に記憶される。
上記モジュールについて以下に説明する。
専門用語
本発明の明細書では下記のような専門用語が使用される。
・コンテンツ・ドメイン−コンテンツ・プロバイダーのドメイン。
・コンテンツ・プロバイダー(CP)−CDNのカスタマーと想定されるウェブサイト・プロバイダー。
・クロス・ドメイン・サービス−例えば、多様なウェブサイトにオブジェクトを埋め込むことによって、特定ドメインにおけるユーザー毎のクッキーを設定するサービス。例えば、1つのドメインに止まらず、多数の異なるコンテンツ・プロバイダーのウェブ・ページ内に画像を提供する広告主。これらのオブジェクトによって設定されたクッキーは「第三者クッキー」と呼称されることが多い。本願明細書ではクロス-ドメイン・サービスも、(もし存在するとして)CDNサービス・プロバイダーがクロス-ドメイン・サービスのオブジェクトが埋め込まれているウェブサイトを有するコンテンツ・プロバイダーとの間に有する関係とは無関係、CDNカストマーであると想定する。
・コンテンツ・プロバイダー・クッキー−ユーザーエージェントトラッキングするためコンテンツ・プロバイダーが特定ドメインに設定するクッキー。
・コンテンツ・プロバイダーID−コンテンツ・プロバイダーがユーザーに割当てる固有のID、またはCPID。
・マスターID−システム全体に亘ってユーザーエージェントに割当てられる固有のID。
・マスター・ドメイン−後述するように、能動的アプローチにおいてユーザーの異なるドメインIDを相関させるのに利用されるドメイン。
・ドメインIDクッキー−マスターIDを含むコンテンツ・ドメインのネームスペースにCDNサービス・プロバイダーが設定するクッキー。
・マスターIDクッキー−マスターIDを含むマスター・ドメインに設定されるクッキー。
・ユーザーエージェント−分割できないものとして識別可能なウェブ・クライエント。多くの場合、これは特定マシーンのブラウザーに相当する。典型的には、クライエント・マシーンにおいてウェブ・ブラウザーが開かれると、ユーザーエージェントがインスタンス生成される。同じマシーンにおいて異なるブラウザー・タイプ(例えば、IEブラウザーとFireFoxブラウザー)が開かれると、2つのユーザーエージェントが存在する。例えば、ユーザーエージェントは多くの場合クッキー機能付きデータ蓄積手段(即ち、クッキーを存続させることができるデータ蓄積手段)と連携する。ここに使用する語「ユーザーエージェント」はブラウザーまたはブラウザー・プラグ-インに限定する必要は無く;アウト・オブ・ブラウザーのアプリケーション、プロセス、スレッド、またはその他のプログラムであってもよい。後述するように、システムは所与のユーザーエージェントを人間のユーザー(より一般的には「容認可能なユーザー」)と関連有りと特徴付ける能力を有する一方、自動エージェント(例えば、ボット、より一般的には「容認不能なユー
ザー」)と特徴付ける能力を有する。ユーザーエージェントを人であるか、自動エージェントであるかを特徴付ける能力は極めて有益であり、これによって、CDNサービス・プロバイダーはカスタマーに対して、カスタマー・サイトにおいて何らかのサービスをリクエストしているユーザーエージェントの素性に関する推測を提供することができる。後述するように、多くの場合、この推測は(他のCDNカスタマーと関連するドメインを含めて)他のCDNドメインにおけるこのユーザーエージェントの活動に係わる。推測確信の程度を表わすユーザー正スコア(VUS)の形を取ることができる。VUSは数字、パーセンテージ、コード、またはその他の適当な記号、文字またはその他の表象で表現することができる。典型的な利用例として、ユーザーエージェントがカスタマー・サイトに対してリクエストし;システムがコンテンツ・プロバイダーに対して、ユーザーエージェントが人間のユーザーであるか、自動エージェントであるかについてサービス・プロバイダーの確信の程度を示すVUSを提供し;この推測に応答してカスタマーが所与のアクションを取る。VUSは2つのカテゴリー(即ち、人かボットか)だけでなく、クライエント・マシーン・ユーザーエージェントに関するより詳細な推測を提供できるようにVUS(またはその等価物)と関連する2つ以上の「バケット」をも含むことができる。
ユーザー相関モジュール
好ましくは、本発明は能動的方法と受動的方法のいずれかを使用してサイト(またはドメイン)内で、またはサイト(またはドメイン)間でユーザーエージェントをトラッキングする。これにはユーザー相関モジュール304が使用される。
・能動的方法は下記のように行なわれる:
1.コンテンツ・ドメイン中のオブジェクトがリクエストされたら、ユーザーがドメインIDクッキーを提示したか否かをチェックする。もし提示したのであれば、このユーザーは既に識別されているから、それ以上のアクションは不要である。もし未提示ならユーザーをマスター・ドメインにリダイレクトしてマスターIDを入手する。
2.もしユーザーがマスターIDコードを提示しなければ、新しい固有のIDを作成し、マスター・ドメインにマスターIDクッキーとして設定する。ユーザーがマスターIDクッキーを提示すると、IDを復号し、その正当性を検討し、正当性が確認されたら、これを再び暗号化し、ドメインIDクッキーとしてコンテンツ・ドメインに設定する。
3.マスターIDをドメインのネームスペース内にドメインIDクッキーとして設定できるような特定URLを有するコンテンツ・ドメインにユーザーをリダイレクトする。
例えば:
1.ユーザーがこのサービスを利用してどのウェブサイトにもアクセスしたことがない、と想定する。ユーザーはそのウェブ・ブラウザーをwww.xyz.com
に対して開く。ブラウザーはhttp://www/xyz.com/foo.gifをリクエストスル際にwww.xyz.comネームプスペースにおけるドメインIDクッキーを提示しないから、ブラウザーは、例えば、www.abmr.net/setID?www・xyz.com/foo.gifへリダイレクトされる。
2.ユーザーはマスターIDクッキーを提示しないから、マスター・クッキー(例えば、26)がwww.abmr.netのネームスペースにおけるクッキーとして設定される。
3.次いで、ブラウザーは、foo.gifサービスを提供するとともにwww.xyz.comのネームスペースにおけるドメインIDクッキーをも設定するwww.xyz.com/foo.gif?Master ID=26に向かって再びリダイレクトされる。
トラッキングと請求書作成のため、CDNはドメインIDクッキーおよび/またはマスターIDクッキーを、好ましくはエッジサーバーによって書き込まれたログ・ラインと一緒に記録する。エッジサーバーのログは以下に述べるようにユーザー相関モジュールによって処理される:
・受動的な方法は下記のように進行する:
1.ドメイン毎のユーザーIDクッキーがオブジェクトと一緒に提供されれば、(ログ・ライン中に)エッジサーバーの記録が存在する。
2.ドメイン間共通のユーザーIDクッキーがオブジェクトと一緒に提供されれば、(ログ・ライン中に)エッジサーバーの記録が存在する。
ユーザー・クッキーを他のクッキーから分離するには、何らかのオフライン処理を行うことによって、如何なるネーム/バリュー対が特定ドメインに関連する「ユーザーネーム=ID」に対応するかを理解する必要がある。CDNサービス・プロバイダーはユーザー・クッキーをリアルタイムで分離するか、またはすべてのクッキーを記録してから何らかのオフライン処理によってこれらを分離することができる。使用態様から判断して、ドメイン間共通のクッキーがドメイン毎のユーザーIDクッキーとして同じユーザーに提供されたと判った場合には、CDNサービス・プロバイダーはドメイン毎のIDクッキーに対応するログ・ラインにドメイン間共通のユーザー・クッキーを記録すればよく、逆の場合も同様である。
この時点において、それぞれのドメイン毎ユーザーIDクッキーに関連して、(a)1組の記録されたアクションと共に、この特定ドメインに対するオブジェク提供に付随する(b
)これと連携する1組のドメイン間共通ユーザーIDクッキーが存在する。
CDN全体に亘るユーザーのアクションを完全に把握するため、サービス・プロバイダーは下記の作業を行なう:
i.2つのリスト:即ち、ドメイン_クッキー(DC)およびクロス_ドメイン_クッキー(CDC)を作成する。先ずDCリストに任意のドメイン毎ユーザーIDクッキーを播く。
ii.DCリスト中のすべてのクッキーについて、これと関連するすべてのドメイン間共通ユーザーIDクッキーをCDCリストに加える。
iii.CDCリスト中のすべてのクッキーについて、これと関連するすべてのドメイン毎ユーザーIDクッキーをDCリストに加える。
iv.DCリストにもCDCリストにも変化が現れなくなるまでステップ(ii)および(iii)を繰返す。
クッキーに依存しない受動的識別スキームもある。公知技術としてはHTTPヘッダー中の情報を符号化するという方法が挙げられる。幾つかの例を以下に説明する。
第1のスキームはHTTP1.1仕様に取入れられているようにEtag欄においてマスターIDを符号化する。この仕様によれば、オブジェクトを提供する際にサーバーがEtag値をする記入すると、HTTPGETまたはHEAD方法でオブジェクトをリクエストする時、オブジェクトをキャッシュに格納するクライエントはこのEtag値を指示する。即ち、1つの受動的識別スキームは下記のように行なわれる。ユーザーが所与のコンテンツ・プロバイダー・ドメイン、例えば、test.comからのオブジェクトを初めてリクエストし、CDNエッジサーバーにアクセスする、と仮定する。リクエストを処理するエッジサーバーは新しいマスターIDを作成する。エッジサーバーはオブジェクトを提供し、HTTP200OKレスポンスのEtag欄にマスターIDを記入する。ブラウザーが次回にこのサイトにアクセスする時(アクセスして同じオブジェクトをリクエストする時)、GETまたはHEADリクエストに際して記入されたEtagヘッダーによって確認される。
マスターIDを日付の形で符号化する方法もある。ユーザーが初めてtest.comからのオブジェクトをリクエストし、CDNエッジサーバーにアクセスする、と仮定する。エッジサーバーはマスターIDを新しいマスターID、例えば、305を作成する。エッジサーバーはマスターIDを日付の形で符号化する。例えば、所与の時点からの経過秒数をマスターIDとする。Unix方式なら、符号化された日付は1January197000:05:05のような形になる。エッジサーバーがオブジェクトを提供する場合、このように符号化されたマスターIDをHTTP200OKレスポンスの日付欄に記入する。ブラウザーが次回にこのサイトにアクセスする(同じオブジェクトをリクエストする)と、HTTPGETまたはHEADリクエストに記入されている最新ヘッダーによって確認される。このリクエストにおいて記入されている日付を復号することによってマスターIDを得る。
同じくHTTP1.1仕様に規定されているようにコンテンツ-MD5ヘッダーにおいてマスターIDを符号化するという実施態様もある。ここでは、初めてのユーザーがtest.comからのオブジェクトをリクエストし、CDNエッジサーバーにアクセスする、と想定する。エッジサーバーは新しいマスターIDを作成し、識別子をMD5ハッシュとして符号化する(例えば、マスターIDに関してMD5ハッシュ値計算を実行する)。次いで、エッジサーバーはHTTP200OKレスポンスのコンテンツ-MD5欄にマスターIDを記入してオブジェクトを提供する。ブラウザーが次回にサイトにアクセスすると(且つ同じオブジェクトをリクエストすると)、HTTPGETまたはHEADリクエ
ストに記入されているコンテンツ-MD5ヘッダーによって確認される。
言うまでもなく、以上は所与のHTTPヘッダー欄を利用してマスターIDまたはその他の情報を伝送し、データ収集を容易にする本発明の方法を説明するための実施例に過ぎない。この技術は所与のHTTPヘッダーを「オーバロード」する技術であるとも言える。即ち、所与のヘッダー欄に含まれる情報はほかの面で期待されるデータではないからである。マスターIDの受け渡しには他の方法(例えば、URLに識別子を埋め込む方法)を使用することもできる。
多くの場合、所与のCDNコンテンツ・ドメインにおいて能動的および/または受動的技術が採用される。しかし、プロバイダーまたはCDNカスタマー、またはこの双方によって決められたサイトにおいては能動的な技術も受動的な技術も使用しないことが好ましい。
データ相関および変換
データ分析モジュール308はユーザーとCDNとの相関に相当する一連のデータ単位を入力として受ける。それぞれの単位は例えば下記の項目を含む:
○ユーザー・マシーンのインターネット プロトコル(IP)アドレス
○ユーザーのドメインID/マスターID
○(問い合わせ文字列およびPOSTed値を含む)リクエストされたURL
○リクエストされたオブジェクトに対応するURL
○リクエストの日時
○例えば下記データを含む、リクエストと関連するすべてのクッキー:
・コンテンツ・プロバイダーによって設定されたクッキー
・ドメイン毎のユーザーIDクッキー
・ドメイン間共通のユーザーIDクッキー
○データはすべてリクエストに関連するユーザーに返送される
ユーザーの経時的な行動をシステムが把握できるように、上記のようなデータ単位が一括して提供されることが好ましい。
最初の処理ステップとして、データをデータ削除モジュール306に通すことが好ましい。このモジュールは下記データを削除する:
・個人情報(PII):
○ユーザーの名前
○アドレスおよび電話番号
○クレジットカード情報
○社会保障番号
○その他
モジュールは次いでマスターIDに関連するプロファイルを作成および/補充する。PIIをフィルタリングする代わりに、システムはいきなり非-PIIを抽出することもできる。
CDNクラスタおよびエッジ・サービス実働化
図4は上記課題の実施態様を示す。システムは2つの主要動作部分、即ち、データ・クラスタ400およびエッジ・サービス402から成る。図には1つのエッジ・サービスを例示している:このサービスがCDNエッジサーバーのすべてまたは大部分に作用することはいうまでもない。(ここに使用する語「エッジ」は特定のCDN構成または構造を指すものではない)。エッジ・サービスはオンライン挙動データの捕捉に使用され、これが
データ・クラスタ400に提供され、処理される。一般に、クラスタはエッジサーバー・マシーンのアクセス・ログ・データから情報を得る1群のマシーンである。アクセス・ログ・データを入力として受け、後述するように、いわゆる「一致」および「セグメント」データを出力として形成する。クラスタはまた、コンテンツ配信ネットワーク・サービス・プロバイダー、そのカスタマー、およびそのパートナーがシステムのデータベースを探索し、(例えば、手動または自動で)レポートを作成し、新しいおよび/または緻密なセグメント定義付けを開発するポイントを提供する。詳しくは後述するように、高性能を容易にするため、クラスタを主要な段階:データ取得、データの処理とストレージ、およびデータ検索に分けて組織することが好ましい。データ取得段階はログ・プロセッサ/ダウンロード受信データプロセッサ(LP)414において実行される。データ検索段階はフロント・エンド(FE)418において実行される。分析ノードAN420は典型的には「オフライン」方式で機能する。AN420はシステムの全体的なデータ・セットの比較的大きいサブセットにおいてオフライン分析を行うためのSQL-によって機能を可能化されるウェブ・インターフェースを提供する。
データ・クラスタの構成コンポネントの詳細は後述する。
エッジ・サービス
エッジ・サービス2種類の操作、即ち、一致演算とセグメント演算が行なわれることが好ましい。これらのサービスは図4に示す識別およびセグメント・サーバー404によって実行される。ISSが実行するエッジ・マシーン406は先に述べたHTTPウェブ・プロキシ408およびこれと連携するサーバー・マネジャー(g-ホスト)プロセス410を含む。上記システムを使用したいCDNカスタマーはオリジンサーバー412を操作し、サイトに関する一致演算を可能にする。これが完了したら、カスタマーはセグメント演算を可能化することもできる。好ましくは、どちらの操作も上述したエッジサーバー・マネジャー・プロセスに提供されるメタデータを介して設定される。図4に示すように、ISSサーバー404はファイアウォール422を介して所与のクラスタ・フロント・エンドFEインスタンス418と相互作用する。但し、ファイアウォール422を介することは必要ではない。
これに限定されるわけではないが、ローカル・ウェブ・サーバーからのリクエストに対応するマルチスレッドFastCGIプロセスとして実行されるように構成されたCプログラムとしてISSを実行することができる。以下に述べる機能性は2つの別々のプロセス(ISSとg-ホスト)で実行されるが、このISS機能性はエッジサーバー・マネジャー・プロセスにネーティブであってもよい。
大ざっぱに言えば、識別およびセグメントの操作は、リクエストされたオブジェクトまたはHTTPリクエストの特徴(例えば、HTTPヘッダーまたはクッキー)を利用して種々のユーザー・リクエストに対応してトリガーされる。一致演算をトリガーするリクエストに対してエッジサーバー・マネジャー・プロセスはCDNSP(abmr.net)によって制御される第三者ドメインへのリダイレクト(HTTPレスポンス・コード302)で回答する。これはシステムが標準マスターID(AKID)クッキーを設定するドメインである。abmr.netドメインに対するリクエストはその結果として、本来のリクエストされたオブジェクトに対応するオリジナル・カスタマー・ドメインへのリダイレクトとなる。典型的には、このリダイレクトに付け加えるのはabmr.netにおけるAKID値を変数/値対(またはペア)問い合わせ文字列としてリクエストに埋め込むことだけである。次いで、エッジサーバー・マネジャー・プロセスはabmr.netにおけるAKIDと同じ値のカスタマー・ドメイン特異クッキーを設定する。ユーザーが1つのリクエストをするだけのセグメント演算は比較的簡単である。この操作においては、リクエストの結果として、エッジサーバー・マネジャー・プロセスはユーザーのセグメン
ト情報をフェッチするため順方向リクエストを発する。このリクエストに対する回答それ自体がリダイレクトであり、これに対してカスタマー・メタデータが構成されて追跡する。リダイレクトは他のエッジサーバー・マネジャー・プロセスがこのリダイレクトからセグメント情報を抽出することができ、このセグメント情報をカスタマー・オリジン・サーバーに対する最終HTTPリクエストにおけるヘッダーとして含むことができるように構成されたリクエストであることが好ましい。
一致演算
一致演算を行なうためには、関連ページにおける適当なオブジェクトを選択し、これを「トリガー」および/または「実行」オブジェクトとして利用する。例えば、好適な候補ページは大抵のユーザーが典型的なサイト・アクセスに際して最初にアクセスする「待ち受け」ページである。例えば、有望な候補オブジェクトは呼び込みページの大部分および/または所与の属性を有するページの大部分である。「トリガー」オブジェクトは必要ではないが、エンドユーザー・ブラウザーが如何なるクッキーをも受け付けないような状況に対するガードとして利用される。トリガー・オブジェクトはカスタマー・ドメインに既知のクッキーが存在するかどうかをシステムがチェックすることを可能にする。カスタマーの属性が1つまたは2つ以上のクッキー・セット(セッション・クッキーまたは固定クッキー)を有するなら、トリガー・オブジェクトは不要となることがある。トリガー・オブジェクトを使用する場合、エッジサーバー・マネジャー・プロセスはトリガー・オブジェクトに対するリクエストが既知のクッキー/値対を含んでいるかどうかをチェックする。もし含んでいなければ、マネジャー・プロセスが適正なクッキーを適正な値に設定する。「実行」オブジェクトはサーバー・マネジャー・プロセスに命令してエンドユーザーをabmr.netドメインにリダイレクトさせる。典型的には、このリダイレクトが強制されるのは(1)(「トリガー」オブジェクトに対するリクエストに設定されている、またはカスタマー・ドメインに既に設定されている)適正なクッキーを呈した場合と(2)「実行」オブジェクトがリクエストされる場合に限られる。
図5は必要なクッキー(および値)を含む実行オブジェクトに対するリクエストのフローチャートである。ブロックCPおよびABMRはエッジサーバー・プロセス・マネジャー(g-ホスト)の演算であるが、これらのブロックはそれぞれのドメインを意味する。この演算において、エッジサーバー・マネジャー・プロセスは実際のリダイレクト場所であるISSマシーン(そのIPはCDNがネームを管理するDNS探索によって求めることができる)に対してリクエストを発する。このISSマシーンはユーザーをabmr.netドメインへ向かわせる。リクエストは最初にリクエストされた文書またはオブジェクトのフィンガープリント、(もし存在するなら)カスタマー・ドメインにおけるユーザーのための識別子、およびカスタマー・ドメインのネームを含む暗号化された問い合わせ文字列を含む。この最後の欄、即ち、カスタマー・ドメインは属性ネームとは異なることがあり、例えば、CDNは別々に「www.example.com」および「my.example.com」を可能化することがあり、この場合、カスタマー・ドメインはexample.comである。図5から明らかなように、エッジサーバー・マネジャー・プロセスはISSから回答を受信し、これをエンドユーザーに転送する。
エンドユーザーはHTTP302からのリダイレクトを受信し、これに従ってこのリクエストをabmr.netドメインへ転送する。このリクエストは、もし存在するなら、ユーザーの現在のAKIDクッキー値を含む。abmr.netドメインのためのサーバー・プロセス(g-ホスト)メタデータはISSマシーンに対してリクエストを伝送する(再び、CDNに管理ネームでDNS導出演繹によってIPアドレスを求める)。ISSマシーンは下記のアクションの1つを行なう:
・AKIDをリセットする。もしユーザーがカスタマー識別子を提示すれば、
ISSはこのユーザーのための(CPID、CPDOMAIN)対に関し
てAKIDを検索する。もしクラスタがこのユーザーのためのAKIDを
有するなら、ユーザーは
○AKIDを持たないか、無効のAKIDをもっているか、または
○データ・クラスタ中のものよりも新しい有効なAKIDを持っている。
ISSはユーザーのAKIDをデータ・クラスタから検索されたものにリ
セットする。
さもなければ、ISSは次のケースへ降下する。
・同じAKIDを再発行する。もしユーザーが有効なAKIDを提示すると、
ISSは同じAKIDを再発行する。さもなければ、ISSは次のケース
へ降下する。
・新しいAKIDを作成する。これはデフォルト動作である。
好ましくは、ISSは「無期限」が期限切れとして、「クッキー設定」ヘッダーを送信してAKIDクッキーの値を設定する。ISSはまたISSが設定したばかりのAKID値と同じ値の特殊な問い合わせ文字列を含むことを除いて最初のユーザー・リクエストと同じであることが好ましいリダイレクト・ロケーションを作成する。ユーザーがこの2度目のリダイレクトに従うと、エッジサーバー・マネジャー・プロセスが一致演算のために構成されたカスタマー・メタデータの最終モードを実行する。このメタデータ・パスが問い合わせ文字列からAKID値を抽出し、この値を有するカスタマーに特異なAKIDクッキーを設定する。
セグメント演算
セグメント演算を可能にするためには、カスタマーがセグメント情報を要求するオリジン・サーバーに対するリクエストを先ず決定しなければならない。例えば、「ボット被害抑制」を必要とするカスタマーの場合、安全上、先ずクリック-ストリームのチェックをリクエストすることになる。他の目的(例えば、高精度の広告)に挙動データを使用したいカスタマーの場合、リクエストはすべてセグメント情報を必要とする。ほかにセグメント演算を可能にするのに必要な情報を挙げるとすれば、カスタマーおよびCDNサービス・プロバイダーがオリジン・サーバーに対して送信されるすべてのセグメントを含むメッセージ・ダイジェスト・シグネチャの共有の秘密キーとして作用する符号化文字列に同意することだけである。リクエストのフローを図6に示す。
適正なリクエストに答えて、セグメント・メタデータは先ずカスタマーのリクエスト中のAKIDの存在を先ずチェックする。値が不在、または基本的な有効性試験に不合格なら、エッジサーバー・マネジャー・プロセスがリクエストされたオブジェクトを提供することによってリクエストを完了する。しかし、提示された値が有効なら、メタデータはリクエストから種々の情報片を抽出する。例えば、オリジン・ホスト;このリクエストに対するカストマーのオリジン・サーバー、リクエスト・ホストのホストネーム;オリジナル・リクエストのパス/ファイルネーム、問い合わせ文字列;オリジナル・リクエストの問い合わせ文字列、AKID;オリジナル・リクエストに提示されたAKIDの値、およびカストマー・ドメイン;オリジナル・リクエストのカスタマー・ドメインのカスタマー・ドメイン。次いで、エッジサーバー・マネジャー・プロセスはリクエスト中のHTTPヘッダーに含まれる情報と一緒にabmr.netドメインに対してリクエストを送信する。エッジサーバー・マネジャー・プロセスはすべてのリクエストにこのHTTPヘッダーをそのまま維持し、これは特定のエンドユーザー・リクエストについても同様である。このリクエストのためのキャッシュ・キーはカスタマー・ドメインおよびAKID値を含むことが好ましい。
abmr.netに対するこの「セグメント・フェッチ」リクエストはキャッシュ・ヒ
ットの結果となることがある。キャッシュ・ミスの場合、エッジサーバー・マネジャー・プロセスはISSマシーンに対してリクエストを発信する。ISSはAKIDの値を検索し、ターンアラウンドし、集中データ・クラスタからこのAKIDのためのセグメント情報をフェッチする。次いで、ISSは回答を分析して所与のカスタマー・ドメインのためのセグメントだけを供給する。最後に、ISSはセグメント応答(例えば、「セグメント_1=値セグメント_2=値」の形のURL-符号化文字列)にサインする。(abmr.netドメインにおける)マネジャー・プロセスのためにISSが形成する応答は典型的に空白であり、HTTPヘッダーはサインされ、設定されたセグメント文字列:(即ち、「セグメント_1%3D値%20セグメント_2%3D値%20、シグネチャ>」)およびHTTP応答コード(例えば、200OK)をふくむ。エッジサーバー・マネジャー・プロセスが(ISSに対する順方向リクエストまたはキャッシュ・ヒット事象におけるキャッシュから)この応答を受信すると、abmr.netドメインのためのメタデータは一時的リダイレクトに対する応答コードを再書込みする(HTTP応答コード302)。リクエスト・ホスト、リクエスト・オブジェクト、およびISSからの応答からのセグメントヘッダーからのデータを使用してリダイレクト・ロケーションを構築するのにメタデータが利用される。カスタマー・メタデータはこれを受信(302)し、リダイレクトを追跡するよう指令される。エッジサーバー・マネジャー・プロセスはホストネーム「abmr.net」をDNS導出演繹し、その結果、「abmr.net」が他のg-ホスト・プロセスに変換される。マネジャー・プロセスがリクエストを発信し、これが再びabmr.netメタデータによって処理される。オリジナル・リクエストと一緒にabmr.netに送信されるHTTPヘッダー(即ち、セグメント情報をフェッチせよとのリクエスト)をabmr.netへのこの第2のリクエストにも利用することができる。このリクエストを処理するように構成されているabmr.netメタデータはこれらのヘッダーの内容を利用してオリジナル・リクエストを再構成する。即ち、先ずパス・パラメータ「SEG」に割当てられた値を抽出する。この値は特殊なHTTPリクエスト・ヘッダー(「X-IS-Server-Data」)の形態を有する。次いで、オリジナル・リクエストを再構成する。最後に、(カスタマー・ドメインからリクエスト・ホストHTTPリクエスト・ヘッダーに供給されるように)このリクエストがオリジン・サーバーに対して発信される。この時点で、HTTPリクエスト・ヘッダーは
「X-IS-Server-Data:セグメント_1%3D値%20セグ
メント_2%3D値%20、シグネチャ>」
を含む。エッジサーバー・マネジャー・プロセスがオリジン・サーバーからの回答をエンドユーザーに提供することでセグメント演算が完結する。
データ・クラスタ
上述したように、クラスタは下記の段階に分類構成することが好ましい:データ取得、データ処理、およびデータ検索。好ましくは各段階を並列処理し、負荷に応じてスケール設定する。それぞれの段階を以下に説明する。
データ取得
クラスタがデータを取得する方法は幾つか考えられる。(CDNログ配信サービス(LDS)424によって提供されるアクセス・ログはクラスタの主要なデータ・ソースである。上述したように、アクセス・ログはログ・プロセッサ(LP)414において処理される。ログ配信サービス(LDS)はFTP、e-メールなどのような適当なメカニズムを介してLPにログを配信する。LPマシーンにおける第1プロセス(i-ftpd)がこのログ・ファイルを受け、LDSがそのETPPUT演算を完了すると、第1プロセスが完成ファイルをダイレクトリに移し、LPマシーンにおける第2プロセス(i-lp)がこれを発見する。処理すべきファイルを発見すると、第2プロセスはファイルを開き、必要ならこれを解凍し、解析する。それぞれのログ・ラインを解析しながら、第2プロセスは好ましくは以下に列記する欄を識別する:リクエストされているURL、リファラー
、リクエストの日時、ソースIPのアドレス、およびリクエストに記入されているなら、AKIDとCPIDクッキーの値。次いで、第2プロセスはこれらの欄を1つまたは2つ以上の「挙動」としてマッピングする。挙動マップはそれぞれのコンテンツ・プロバイダー(CP)コード毎に正規表現対による(URL、リファラーの)1つまたは2つ以上の挙動を表す挙動マップとして構成されていることが好ましい。識別された挙動毎に、第2プロセスが挙動演算結果をデータベース・ノード(DN)に伝送して事象の発生を記録することが好ましい。CPIDクッキーが記入されていたなら、LPが補足的に一致演算を行なう。これらの演算については、詳しく後述する。挙動演算は事象の挙動名(その「挙動_id」)、日時、AKID、およびソースIPアドレスを特定する。一致演算はAKID、CPID、およびCPDOMAINを特定する。好ましくは第2プロセスが内部キャッシュを有し、これを介してこれらの演算結果をLRU-に管理されているデータ構造にまとめることが好ましい。このモデルでは、所与のAKID/挙動対に関する複数の演算/事象を1回の演算でまとめ、所与のキャッシュ・エヴィクション・ポリシーに従って演算結果をDNへ伝送する。これによってDNの負担が著しく軽減され、LP/DNネットワークの性能条件が緩和される。
好ましくは、システムはダウンロード受信データ処理を介してオンライン・モデルのデータ取得をも支援することが好ましい。具体的には、幾つかのオブジェクトまたはコンテンツ・プロバイダー・コードに関して、ダウンロード受信データをダウンロード受信データプロセッサ(DRP)へ伝送するように構成すればよい。リクエストされたURL、リファー、アクセス日時、ソースIPアドレス、およびAKIDおよびCPIDクッキー値が受信データとして提供される。
データの処理およびストレージ
上述したように、システムはプロセス(i-dn)を利用してマシーンDN416において取得データを処理し、記憶する。
拡張を可能にするため、システムはそのデータベースを区分し、それぞれの区分を通し番号で識別することが好ましい。それぞれの通し番号はDNに割当てられ、DNには幾つかの通し番号が割当てられることが多い。第3プロセスは2つの主要な表を保持することが好ましい:即ち、挙動データを記録する挙動表と、一致データを記録する一致表である。挙動表は特定の(AKID、挙動_id)に関して経時的な挙動データ(事象データ)を記録する挙動記録に情報を記憶する。挙動データは事象を多数の連続的なインターバルでスロットすることによって圧縮することが好ましい。一致表は(CPID、CPDOMAIN)対とAKIDとの関連を記録する。ユーザーがそのクッキーを削除した場合、この情報を利用してユーザーの同一性を回復する。ここで使用される語「スコア」とは所与のユーザーに関する履歴データに基づく集成値である。所与のセグメントへの主たる入力はユーザーに関する挙動記録である。また、所与のユーザーに関する別のセグメントからのスコアも特定セグメントにおけるこのユーザーのスコアに影響を及ぼす可能性がある。所与のユーザー、および所与のセグメントに関して、システムは最新のスコア、スコアが更新された最後の日時、およびそのスコアの信頼度を記憶することが好ましい。セグメント情報を維持するため、DNプロセスは挙動表や一致表のように区分されたセグメント表を保持する。具体的には、挙動およびセグメント情報をAKIDのハッシュにおいて通し番号に区分することが好ましい。一致データは(CPID、CPDOMAIN)対のハッシュにおいて投資番号に区分される。DN挙動、一致およびセグメント表は別々のDNサービスを構成し、それぞれが独自の通し番号スペースを有することが好ましい。必要なら、それぞれのサービスを独自のDNセットで実行することができる。それぞれの表のそれぞれの通し番号は自前のデータベース・イメージに記憶されることが好ましい。
データ処理
DN416は幾つかの主な演算を支援する:即ち、挙動記録更新(「挙動演算」)、一致記録更新(「一致演算」)、セグメント問い合わせ、および一致問い合わせ。もう1つの演算、セグメント記録更新(「せぐめんと演算」)は他の演算とは非同期的に行なうことができる。これらの演算について以下に説明する。
挙動演算の結果を受信すると、i-dnプロセスがこの演算と関連する記録をフェッチし、今まで存在しなかった場合にはこれを作成する。処理後、i-dnプロセスは記録をデータベースへ返送する。次いで、プロセスはライブラリーi-snを呼び出してAKIDのセグメント・データを更新する。
一致演算の結果を受信すると、i-dnプロセスは演算と関連する記録をフェッチし、それまでに存在しなかった場合には、これを作成する。この記録は関連を記録するだけでありそれ以上の処理は不要である。DNはセグメントの更新とセグメント問い合わせ支援を提供するライブラリーi-snとリンクしている。この演算の結果、i-snライブラリーの構成ファイルに定められた規則に従って、セグメント表中の所与のAKIDの関連セグメントが更新される。
一致問い合わせを受信すると、i-dnプロセスはリクエストされた(CPID、CPDOMAIN)対の記録をフェッチし、これに対応するAKIDをクライエントに提供する。セグメント問い合わせを受信すると、プロセスi-dnはi-snライブラリーをよびだしてリクエストされたAKIDに関するセグメント文字列をフェッチし、これをクライエントに提供する。
データ検索
クラスタのフロント・エンド(FE)418はクラスタとのHTTPインターフェースとして機能する。CDNはこのインターフェースを利用してクラスタからデータをフェッチする1つまたは2つ以上の外部ネットワークを持つことができる。FEは問い合わせをするクライエントがクラスタ中の何処にデータが収納されているか、即ち、どのDNにどんな通し番号が割当てられているかを知るのを防止するとともに、クラスタを厖大な問い合わせ(厖大なネットワーク)の負荷から保護する負荷緩衝手段としても機能する。(後述するような)エッジ・サービスISSコンポネントからの一致またはセグメント問い合わせを受信すると、FEは問い合わせの情報をどのDNが持っているかを判断し、この問い合わせ該当DNに伝え、回答を読取り、回答を暗号化し、暗号化されたデータをISSクライエントに返送する。
同じく図4に示すように、長期に亘るストレージのためにデータ・ライブラリー(DL)ノード426を設けてあり、収集したデータによるレポート作成を容易にするためにレポート作成ノード428が使用される。レポート作成ノードは多くの場合ANと協働する。CDNカスタマーはこれらのシステムに通常の態様で、例えば、安全通信リンクを介してアクセスする。1つの実施形態では、収集された情報を、エクストラネットを介して、またはウェブ・サービスを介して、またはその他の便利な方法で利用することができる。
CDNサービスは適当な態様で、例えば、利用回数、ユーザーエージェントVUS、加入登録、トラッキングされたマスターID、ページ/オブジェクトの閲覧、ユーザー・プロファイル、セグメントなどに基づいてデータシステム利用料金を設定する。
ここに述べるシステムは幾つかの主要なコンポネントを有する:
(a)ID管理-サイト間でクライエント・マシーン・ユーザー・エージェントをトラッキングし、そのクリックストリームを把握するのに利用される。このコンポネントはカスタマーのドメインにおけるメタデータと、上記のIDを作成(またはリセット)するエッジ
・サービス機能性を含む。上記システムはIDをユーザーエージェントのクッキー・ストアに存続させるためクッキーに依存するが、これは必ずしも必須条件ではなく、その他の受動的なスキームも利用できる。
(b)データの収集および処理-ログを処理してユーザー・プロファイルを作成する役割を果す。この作業はCDNログ配信サービス(またはその他のソース)から配信されるログのそれぞれのラインを処理することによってリアルタイムまたは近リアルタイムで行なわれ、この処理でURLパターンを挙動の形にマッピングする。例えば、「...cp.com/.*とのラインはそのユーザーエージェントの「cp_ユーザー」挙動を増分することになる。
(c)オフライン・データ分析-オンライン・システムからのデータをオフラインシステムにあつめ、オフラインシステムにおいてこれを他のユーザーのために処理することができる。1つの使用法としては、ANを介してデータにSQLインターフェースを設ける。他の使用法としては、CDNカスタマー・ポータルのためにレポートを作成する。
(d)リアルタイム・プロファイル検索-この場合、エッジサーバーはデータ・クラスタからユーザーのプロファイルを検索し、この情報をカスタマー・オリジンに対するリクエストに含める。これはカスタマーが挙動データに対応策をとる方法である。
データシステムは多様なサービスに利用できる。
第1の利用例は「パプリッシャー」サービスである。この利用例では、(CDNを利用して)一連のドメインまたはプロパティーを運用する所与のCDNカストマーがシステムを利用することによってこれらのドメイン全体に亘って活動するユーザーエージェントに関する情報を入手することができる。このような情報はカスタマー(またはその他)によって(例えば、広告、動的コンテンツなどのような)他の目的に利用することができる。具体例としては、CDNカスタマーが2つのサイトAおよびBを運営し、CDNサービス・プロバイダーがこれら2つのサイトに亘ってユーザー・エージェント・データをトラッキングする。データを分析することによって、CDNサービス・プロバイダーはサイトAのユーザーエージェントの10%がサイトBにもアクセスするが、サイトBのユーザーエージェントの3%だけがサイトAにアクセスすることを判断することができる。他の例として、システムを利用することによって、特定の顧客が係わるリクエスト数(例えば、ユーザーの3%が1つのサイトに対するすべてのリクエストの10%に係わる)に関する情報を提供することができる。このように、CDNカスタマーはユーザーエージェントの層、即ち、これらのサイトにアクセスすると予想される実際のユーザーに関する有用な多くのデータを得ることができる。
第2の使用例は「ボット被害抑制」サービスである。この例では、取引サイト(例えば、エンドユーザーが在庫に限度がある品目、例えば、イベント・チケット、ホテル・ルーム、航空機の座席などを購入するウェブサイト)を運営する所与のCDNカスタマーはシステムを利用することによってサイトにアクセスするユーザー・エージェントに関する情報を得ることができ、特に、特定のユーザー・エージェントが(例えば、ソフトウェア・ロボットまたは「ボット」である可能性がないかどうかの情報を得ることができる。サイトはこの情報を利用することによって最も信頼性の高いユーザー・エージェント(即ち、ロボットではない本物の人間)に最高レベルのサービスを提供することができる。これによってボット被害その他の詐欺的行為を抑制し易くなる。ボット被害抑制の機能性はボットの出没が多い他のタイプのサイト(例えば、フレンド-ベースのソシアルネットワーキング・サイト)にも使用することができる。
第3の使用例は「パートナー」サービスである。この場合、CDNサービス・プロバイダーはデータシステムを利用することによって、CDNを利用する2つ以上のエンティティのために連合サービスを提供することができる。例えば、カスタマーAは一連の製品の
メーカーであって自社製品を説明するウェブサイトを持っており、カスタマーBはAが製造するような新製品およびその中古品に関する情報を提供するウェブサイトである。カスタマーAおよびBはそれぞれのウェブサイトにアクセスするエンドユーザーに関する情報を共有するというビジネス関係を持つ(またはこのビジネス関係から利益を得る)ことになる。この使用例において、カスタマーAとカスタマーBの双方がCDNを利用してそれぞれのサイトに配信すれば、データシステムを双方のカスタマーが利用することになり、互いのデータ共有を容易にし、且つ拡充することができる。なぜなら、CDNはデータシステムを利用してこれら両サイトにアクセスするユーザー・エージェントの挙動情報を収集することができるからである。他の使用例として、カスタマーAがソシアルネットワーキング・サイトであり、カスタマーBがカスタマーAのサイトにおいてプロモートしたい所与の製品またはサービスを提供する立場にある場合が考えられる。もし両方のカスタマーA、Bが共にCDNを利用してそれぞれのサイトに配信すれば、カスタマーAがデータシステムを利用することによって、そのサイトにアクセスする所与のユーザー・エージェントがカスタマーBのサイトにアクセスしたかどうかを識別することができる。この情報を共有することによって、(例えば、所与の広告を提供、所与の相互プロモーションなどのような)所与の活動が容易になる。
他の使用例として「ターゲッティング」サービスがある。この使用例においては、CDNサービス・プロバイダーがデータシステムを利用することによって、広告のターゲット設定を容易にする。例えば、ユーザーエージェントのユーザー・プロファイルを作成して
広告サービス機関にこのプロファイルを提供する。システムはセグメント採点ビジネス・ロジックを実行またはインターフェースすることによってそれぞれのAKID毎にそれぞれの「アクティブな」セグメントの関心度採点を行なうことが好ましい。所与のAKIDに関連する挙動データは下記のようにしてセグメントへマッピングすることができる。AKIDと連携するそれぞれの挙動IDは、最も新しい事象に基づく挙動IDである。例えば、これらの事象が発生した時期の中間点における事象数から現時点における事象数を差引くことによってこれらの事象の寿命を判断する。その時期の事象数にその時期の崩壊関数を乗算する。この乗算の結果が問題のAKIDに関するセグメント/挙動の「強さ」である。広告選択ロジックがセグメントを分類して「強さ」が最も大きいセグメントを見出し、このセグメントから広告を選択する。
他の使用例として、検索エンジンを提供するカスタマーのためにCDNサービス・プロバイダーがシステムを運用する場合がある。カスタマーのインフラストラクチャーは入札メカニズムを含むか、または入札メカニズムと連携し、これによって第三者が在庫リスト(例えば、広告、キーワード、有料テキストなど)に入札することができ、在庫リストはユーザーエージェントの問い合わせに答えてカスタマーの検索エンジンによって返送される。検索エンジンに問い合わせが入来すると、本発明のデータシステムにアクセスし、入札アルゴリズムへの入力としてユーザーエージェントに関してCDNSPが持っているデータまたはプロファイルが提供される。カスタマーがデータシステムにアクセスする態様はいろいろである。例えば、データシステムがコンテンツ・プロバイダーのインフラストラクチャーにおいて実行するモジュールを持っているか、または情報が帯域外で受渡しされる。いずれの場合にも、カスタマーの入札メカニズム(またはアルゴリズム)には補足情報が(例えば、ユーザーのプロファイル、VUSなどのようなデータ)が加えられるから、第三者はより効率的に在庫リストに入札することができる。
出力
1つの実施形態においては、データ収集システムの出力が所与のマスターIDと関連する一連のネーム/値対である。このネーム/値は推測を表わす値の形を取る(例えば、男性=0.9は男性らしいことを意味し、男性=0.5は全く推測を意味せず、男性=0.1は女性らしいことを意味する)および/または多くの場合確信の程度を表わすスコアを付した一般的なラベル(例えば、関心=オリンピック、確信度=75%)の形を取る。これらはそれぞれが「セグメント」となり得る。
このように、プロファイルは所与のオントロジーによって定義することが好ましく、所与のデータ・スキーマと一致すればよい。考えられる属性の代表的なリストは下記の通り
である
・綜合的な関心事(例えば、多様な階層を通しての相対的な関心値)
○スポーツ-ベースボール、フットボール、自動車レース、サッカー、バスケットボール;関連スポーツのプロ/アマ;チーム
○ニュース-国際、国内、地方
○ファイナンス
○エンターテーンメント-映画、特定のタレント
・今買いたいもの
○自動車
○家庭用電気器具
○旅行
・人口学的情報
○年齢
○性別
○収入レベル
○居住場所(例えば、郵便番号の精度)
・インターネット挙動
○1日オンラインに費やす時間
○インターネット購買の程度
典型的なユーザー・プロファイルを図7に示す。但しここに示すデータは飽くまでも1例である。尚、ユーザー・プロファイルはいかなる個人情報(PII)も含まない。
上記インフラストラクチャーは1つまたは2つ以上の改良型構造を含むことができる。即ち、より細部に亘る情報フィルタリングまたは処理が可能となるように機能性を拡張したい場合がある。上述したように、システムはユーザー・クラスタ化または相関機能を備えて複数のデバイスに亘ってユーザーエージェントをトラッキングすることができる。従って、もし所与のコンテンツ・プロバイダーまたは広告機関がユーザーエージェントのIDをCDNが提供するファイルに挿入すると、上述したCDNサーバー・プロバイダー構造が情報を処理し、2つの異なるクッキーID(またはその他の識別子)が実は2つの異なる場所(例えば、家庭と職場)から、またはより一般的には、2つの異なるデバイスから(全部または一部がCDNにオフロードされる)所与のサイトにアクセス中の同一人物または同一エンティティであると判定できる能力を有することが好ましい。システムはサービス・プロバイダーが重複情報をフィルターアウトすることを可能にする適当な機能性(例えば、相関アルゴリズム、クラスタ化アルゴリズムなど)を含む。
CDNは(その業務の性質上)、全部または一部がCDNにオフロードされているサイトにエンドユーザーがアクセスするたびに収集される厖大なデータにアクセスする。しかし、これらエンドユーザーの多くは固有のIPアドレスとは結びつかない。なぜなら、かれらのクライエント・マシーンはファイアウォールの背後に配置されているからである。従って、サービス・プロバイダーに(a)所与のリクエスト・データ流れ(企業のファイアウォールの背後からのリクエスト)をモニターさせ、(b)得られたデータに対してクラスタ化アルゴリズムを実行して有用な情報、例えば、幾つの固有IDがデータと結びつくか、または所与のクラスタが所与のユーザー・セットまたはサブセットに対応するか、などの情報を抽出させることによって本発明を発展拡張することができる。代表的なクラ
スタ化アルゴリズムは、例えば、k-平均法、(特徴選択アルゴリズムとしてフォワード・フィッティングまたは相互情報量を利用する)SVMなどを含む。より一般的には、クラスタ化アルゴリズムは上述した一般的な技術に従って識別された所与のユーザーに関するその他の情報を抽出するのに有用である。
上述したように、本発明のデータ収集技術はマスターIDと連携する特定のユーザー・エージェントが自動化されたマシーン、プログラムまたはプロセスではなく人間であるがどうかを特徴付けるのに有用な情報をも提供することができる。例えば、もしマスターIDと連携する「エンティティ」が所与の時間をオンラインで費やし、サイトX、Y、Zにアクセスし、サイトYで物品を購入した場合、このエンティティは自動化されたプロセス(例えば、コンサート・チケットを所与のウェブサイトから転売する目的で購入するチケット・ボット)でない可能性がある。同様に、もしユーザー・エージェントが「カタログ」ページ(即ち、「購入」ページ)にアクセスした場合、ボットなら読むためにページにアクセスして時間を費やすとは考えられないから、このユーザー・エージェントはヒューマン・ユーザーである可能性が高い。この種のエンティティ弁別(例えば、エンティティがクリック詐欺、「シビル」アタックなどを企てているかどうか、など)を可能にするには、好適なソフトウェア・ルーチンを実行すればよい。1つの実施形態として、1つまたは1組のファクターを評価することによってユーザー・エージェントがチケット・ボットであるかどうかを判断する。これらのファクターは、例えば、クライエント・マシーン・ユーザー・エージェントがアクセスするCDNドメインの多様性、所与のコンテンツ・プロバイダーと連携する1つまたは2つ以上のページに関する購入:カタログ比、最近のブラウジング・セッションからの経過時間量、現在のブラウジング・セッション中におけるクライエント・マシーン・ユーザー・エージェントのオンライン時間量、およびクライエント・マシーン・ユーザー・エージェントが所与の時間に亘って連携したIPアドレスの数などである。但し、これらのファクターは代表的なものに過ぎない。多くの場合、複数のサイトまたはドメインに亘ってユーザー・エージェントをモニターし、多数のサイトにまたがって、且つある程度の時間に亘って「真正の」(人間らしい)挙動を判定できることが望ましい。データが多ければ多いほどユーザー・エージェントが真正なユーザーと一致するとの確信を深めることができるのは言うまでもない。
具体的には、幾つものファクターに基づいてシステムはユーザーエージェントが人間のユーザーであるという確信の指標を提供する。この指標は多くの場合、真正ユーザー・スコア(VUS)の形を取る。VUSが高ければ高いほどユーザーエージェントが人間のユーザーである可能性が高い。(ここにいう「高い」は相対的な表現であり、「最低」値が良いスコアを表わす)。1つの実施形態として、VUSは下記のように算出される。ネットワーク層からアプリケーション層までに一連のデータ・ソースがある(そのうちの1つまたは2つ以上を上述した)。システムは所定の属性を分析することによって正常な人間らしい挙動を示唆する指標を抽出する。何が「正常な人間らしい挙動」はサイトによって異なり、同じサイト内でも領域によって異なる。加重アルゴリズムを利用して1つまたは2つ以上の属性を組み合わせることによって、真正ユーザー・スコア(VUS)を形成し、このユーザーエージェントが真正のヒューマン・ユーザーと結びつくというサービス・プロバイダーの確信度を表わす。具体的な加重アルゴリズムはファクター、サイトのタイプ、正常と思われる活動の性質などに応じて異なる。
もしボットであることが判明したら、被害抑制のアクションが取られる。具体的なアクションは極めて多様である。例えば、クライエント・マシーン・ユーザー・エージェントに所与のダミーまたは代替コンテンツを提供し、このクライエント・マシーン・ユーザー・エージェントに対して質の低いサービスを提供し、このクライエント・マシーン・ユーザー・エージェントをCDNにおけるサーバーのサブセットに誘導し、(VUSスコアによって)ボットであることが特徴つけられた他のクライエント・マシーン・ユーザー・エ
ージェントとの間で資金争いを強制する、などである。クライエント・マシーン・ユーザー・エージェントに対するサービスの質をどの程度低下させるかはVUS次第である。例えば、VUSの倍だけ応答時間を調節することが考えられる。これとは逆に、クライエント・マシーン・ユーザー・エージェントと関連する特定のVUSが、システムがヒューマン・ユーザーと関連すると信ずるスコアであれば、このクライエント・マシーン・ユーザー・エージェントは良質のコンテンツを受取り、上質のサービスを提供され、サーバーのうちの高性能セットへ誘導される、などの結果となる。
尚、上記ボット分析機能は所与のユーザー・エージェントのシグネチャがボットであるか否かを判定しようとするのではなく、ユーザー・エージェントが「ヒューマン」ユーザーと関連するか否かの判定に重点が置かれる。真正ユーザーを識別することを目標とするこのアプローチの方がはるかに有利である。なぜなら、ボットの開発者たちは(一旦はボットとして識別された)ボット・シグネチャを容易に変えることができるからである。ここに述べる技術は(真正なヒューマン・ユーザーの視点から見て)正常な態様で所与のサイトと相互作用できるというクレジットをシステムがユーザー・エージェントに与えることを前提としているが、典型的には、VUSはCDNによって支援されている複数のサイト(またはドメイン)に亘って、恐らくは或る程度の時間に亘ってユーザー・エージェントが「正常な」人間らしい挙動を示すか、またはこのような正常な挙動であると見做されるその他の基準に従って決定される。従って、もしユーザー・エージェントが1つのサイトにおいて「正常」に(即ち、人間らしく)見えても、このユーザー・エージェントが高いVUSにつながるとは断定できず、むしろ、ユーザー・エージェントは複数のサイト/ドメインに亘って、しかもおそらくは或る程度の時間に亘って「正常」に見えねばならない。即ち、ユーザー・エージェントが相互作用するサイト/ドメインが多ければ多いほどシステムはこのユーザー・エージェントがヒューマン・ユーザーと関連するに相違ないとの「確信」を深めることができる。この判定を下す際に、何が「正常な」(人間らしい)挙動であり、何が「正常な」(人間らしい)挙動でないかはサイト/ドメインによって異なり、サイトAでは一連のアクションが正常であり、サイトBでは別の一連のアクションが正常であるということもあり得る。
「ボット」被害抑制機能はタイプの異なるサイトに対しても利用できる。例えば、「フレンド-ベースの」ソシアルネットワーキング・サイトは真正ユーザーとのフレンドシップを求めようとする自動化エンティティである「フレンド・ボット」に感染することが少なくない。上述したボット分析およびボット被害抑制の技術はこのシナリオにおいても有用である。ここでは、ボット分析はフレンド-ボットであることを示唆する幾つかのファクター、例えば、ひたすら(真正)ユーザー・プロファイルにアクセスし、ユーザーのIDまたはプロファイルから得られるその他の情報を入手し、ユーザーエージェントの「フレンド」を増やそうとするユーザーエージェントを探索する。このような[フレンド増やし」アクションはフレンド・ボットと関連する場合が多い。そこで、CDNサービス・プロバイダーはソシアルネットワーキング・サイト・カスタマーにVUS(またはこれと等価のデータ)を提供することができる。VUSは特定のユーザーエージェントが[フレンド-ボット」または望ましくない自動化エンティティ(例えば、メッセージング・ボット)であるとのサービス・プロバイダーによる確信度を反映するものである。
上記の例では、CDNカスタマー・サイトのための具体的なボット被害抑制機能として、ユーザー・エージェントがサイトといかに相互作用すべきかを説明した。しかし、データシステムを利用することによって関連の他のボット被害をも抑制することができる。
ここに述べるデータシステムは所与のユーザー・エージェントを疑わしいと警告するだけの目的に使用することもできる。1つのサイトで収集されたユーザー・エージェントに関するデータは他のサイトにおけるユーザー・エージェントの挙動を分析し、予測するの
に利用することができる。例えば、チケット・ボットの場合、チケット・サイトAにおけるVUSによって識別することができる。これとは別に、サイトAの極めて能動的なユーザーと他のチケット・サイトの極めて能動的なユーザーとの間に強い相関関係があることを発見することができる。この場合、システムはこのようなサイトAのユーザーのリストを作成し、このリストを利用することによって他のチケット・サイトにおけるボット予測をすることができる。
データシステムはクリック詐欺や検索エンジン詐欺のような他のタイプのオンライン・サイト詐欺を識別し、その可能性を軽減するのに利用することもできる。
尚、CDNサービス・プロバイダーは1つまたは2つ以上のエンティティ(例えば、コンテンツ・プロバイダー、広告業者など)に連合サービスを提供することもできる。
以上に説明した本発明の範囲は、後記する請求項によって定義される。

Claims (8)

  1. 加入コンテンツ・プロバイダーであるコンテンツ配信ネットワーク(CDN)のカスタマーがCDNサービス・プロバイダーによって管理されるコンテンツ・サーバーから配信するために所与のコンテンツをオフロードする、インターネットベースとするCDNにおけるデータ収集方法であって、
    CDNサービス・プロバイダーによって管理されている複数のコンテンツ・プロバイダー・ドメインに亘ってクライエント・マシーン・ユーザーエージェント及びその挙動をトラッキングし
    CDN専用の固有の識別子を各ユーザーエージェントに連携させ、
    トラッキングによって得られる情報を加入コンテンツ・プロバイダーが利用できるようにCDN専用の固有の識別子に連携する各ユーザーエージェントのプロファイルを作成するステップを含むデータ収集方法。
  2. プロファイルを作成する前記ステップは個人情報を削除することにより行なわれる請求項1に記載のデータ収集方法。
  3. 前記トラッキングステップは、所与のクライエント・マシーン・ユーザーエージェントをCDNサービス・プロバイダーへ差し向け、所与のクッキーを設定することにより能動的に実行される請求項1に記載のデータ収集方法。
  4. 前記トラッキングステップは、クッキーのデータを収集して相関することにより受動的に実行される請求項1に記載のデータ収集方法。
  5. 前記プロファイルはクラスタ化アルゴリズムを用いて作成される請求項1に記載のデータ収集方法。
  6. クライエント・マシーン・ユーザーエージェントが人間のユーザーかまたは自動化エージェントかを判断し
    クライエント・マシーン・ユーザーエージェントが自動化エージェントであると判断すると、被害抑制措置を取るステップをさらに含む請求項1に記載のデータ収集方法。
  7. 加入コンテンツ・プロバイダーであるコンテンツ配信ネットワーク(CDN)のカスタマーがCDNサービス・プロバイダーによって管理されるコンテンツ・サーバーから配信するために所与のコンテンツをオフロードするインターネットベースとするCDNにおけるデータ収集システムであって、
    CDNサービス・プロバイダーによって管理されている複数のコンテンツ・プロバイダー・ドメインに亘ってクライエント・マシーン・ユーザーエージェント及びその挙動をトラッキングするコンテンツ・サーバーのトラッキング・メカニズムと
    CDN専用の固有の識別子を各ユーザーエージェントに連携させる識別子連携メカニズムと、
    コンテンツ・サーバーのトラッキング・メカニズムによって得られたクライエント・マシーン・ユーザーエージェントデータを受信し、処理してCDN専用の固有の識別子に連携する各ユーザーエージェントのプロファイルを作成するするプロファイル作成メカニズムと、
    プロファイル作成メカニズムと連携して加入コンテンツ・プロバイダーに各ユーザーエージェントのプロファイルを提供するデータ検索メカニズムから成るデータ収集システム。
  8. データ検索メカニズム、クライエント・マシーン・ユーザーエージェントが自動化エージェントでなくて人間のユーザーであるというCDNサービス・プロバイダーの確信を表わすスコアを提供する請求項に記載のデータ収集システム。
JP2009525708A 2006-08-18 2007-08-18 コンテンツ配信ネットワークにおけるデータ収集方法及びシステム Active JP5088968B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US83861006P 2006-08-18 2006-08-18
US83873506P 2006-08-18 2006-08-18
US60/838,735 2006-08-18
US60/838,610 2006-08-18
US11/840,839 US20080086523A1 (en) 2006-08-18 2007-08-17 Method of data collection in a distributed network
US11/840,839 2007-08-17
PCT/US2007/076255 WO2008022339A2 (en) 2006-08-18 2007-08-18 Method of data collection in a distributed network

Publications (2)

Publication Number Publication Date
JP2010501939A JP2010501939A (ja) 2010-01-21
JP5088968B2 true JP5088968B2 (ja) 2012-12-05

Family

ID=39083192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009525708A Active JP5088968B2 (ja) 2006-08-18 2007-08-18 コンテンツ配信ネットワークにおけるデータ収集方法及びシステム

Country Status (9)

Country Link
US (1) US20080086523A1 (ja)
EP (1) EP2054815A2 (ja)
JP (1) JP5088968B2 (ja)
KR (1) KR101588428B1 (ja)
AU (1) AU2007285753A1 (ja)
BR (1) BRPI0715701A2 (ja)
CA (1) CA2661212A1 (ja)
IL (1) IL197102A (ja)
WO (1) WO2008022339A2 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6996616B1 (en) * 2000-04-17 2006-02-07 Akamai Technologies, Inc. HTML delivery from edge-of-network servers in a content delivery network (CDN)
US7712029B2 (en) * 2001-01-05 2010-05-04 Microsoft Corporation Removing personal information when a save option is and is not available
US20060143459A1 (en) * 2004-12-23 2006-06-29 Microsoft Corporation Method and system for managing personally identifiable information and sensitive information in an application-independent manner
US8806218B2 (en) * 2005-03-18 2014-08-12 Microsoft Corporation Management and security of personal information
US7822841B2 (en) * 2007-10-30 2010-10-26 Modern Grids, Inc. Method and system for hosting multiple, customized computing clusters
CN101540734A (zh) * 2008-03-21 2009-09-23 阿里巴巴集团控股有限公司 一种跨域名Cookie访问方法、系统及设备
US20110314114A1 (en) * 2010-06-16 2011-12-22 Adknowledge, Inc. Persistent Cross Channel Cookie Method and System
US8307006B2 (en) 2010-06-30 2012-11-06 The Nielsen Company (Us), Llc Methods and apparatus to obtain anonymous audience measurement data from network server data for particular demographic and usage profiles
US9152727B1 (en) 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
CN102387176B (zh) * 2010-08-31 2017-10-10 中兴通讯股份有限公司 互连cdn间实现内容分发的方法和cdn互连的架构
CA3027898C (en) 2010-09-22 2023-01-17 The Nielsen Company (Us), Llc Methods and apparatus to determine impressions using distributed demographic information
JP5674414B2 (ja) * 2010-10-27 2015-02-25 株式会社ビデオリサーチ アクセスログマッチングシステム及びアクセスログマッチング方法
US8484186B1 (en) 2010-11-12 2013-07-09 Consumerinfo.Com, Inc. Personalized people finder
CA2977942C (en) 2010-12-20 2021-08-03 The Nielsen Company (Us), Llc Methods and apparatus to determine media impressions using distributed demographic information
CA2810264C (en) 2011-03-18 2020-06-09 The Nielsen Company (Us), Llc Methods and apparatus to determine media impressions
US8867337B2 (en) 2011-04-26 2014-10-21 International Business Machines Corporation Structure-aware caching
CN102347864B (zh) * 2011-11-02 2013-10-30 网宿科技股份有限公司 基于内容分发网络的服务质量监控系统
US8538333B2 (en) 2011-12-16 2013-09-17 Arbitron Inc. Media exposure linking utilizing bluetooth signal characteristics
US9015255B2 (en) 2012-02-14 2015-04-21 The Nielsen Company (Us), Llc Methods and apparatus to identify session users with cookie information
US9009258B2 (en) 2012-03-06 2015-04-14 Google Inc. Providing content to a user across multiple devices
AU2013204865B2 (en) 2012-06-11 2015-07-09 The Nielsen Company (Us), Llc Methods and apparatus to share online media impressions data
JP5506867B2 (ja) * 2012-06-21 2014-05-28 ヤフー株式会社 コンテンツ配信装置
US8977560B2 (en) 2012-08-08 2015-03-10 Ebay Inc. Cross-browser, cross-machine recoverable user identifiers
US9628542B2 (en) 2012-08-24 2017-04-18 Akamai Technologies, Inc. Hybrid HTTP and UDP content delivery
AU2013204953B2 (en) 2012-08-30 2016-09-08 The Nielsen Company (Us), Llc Methods and apparatus to collect distributed user information for media impressions
CN102932204B (zh) * 2012-11-09 2015-05-20 北京奇虎科技有限公司 内容分发网络的监控方法和监控系统
GB2510346A (en) * 2013-01-30 2014-08-06 Imagini Holdings Ltd Network method and apparatus redirects a request for content based on a user profile.
US10068246B2 (en) 2013-07-12 2018-09-04 The Nielsen Company (Us), Llc Methods and apparatus to collect distributed user information for media impressions
US9332035B2 (en) 2013-10-10 2016-05-03 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US10956947B2 (en) 2013-12-23 2021-03-23 The Nielsen Company (Us), Llc Methods and apparatus to measure media using media object characteristics
US9237138B2 (en) 2013-12-31 2016-01-12 The Nielsen Company (Us), Llc Methods and apparatus to collect distributed user information for media impressions and search terms
JP2015130013A (ja) * 2014-01-06 2015-07-16 テンソル・コンサルティング株式会社 取引処理システム、方法、およびプログラム
US20160063539A1 (en) 2014-08-29 2016-03-03 The Nielsen Company (Us), Llc Methods and apparatus to associate transactions with media impressions
US10084838B2 (en) * 2014-10-29 2018-09-25 DLVR, Inc. Generating and using manifest files including content delivery network authentication data
US10142386B2 (en) 2014-10-29 2018-11-27 DLVR, Inc. Determining manifest file data used in adaptive streaming video delivery
US9509742B2 (en) 2014-10-29 2016-11-29 DLVR, Inc. Configuring manifest files referencing infrastructure service providers for adaptive streaming video
US9519796B1 (en) * 2015-05-29 2016-12-13 Yoti Ltd Systems and methods for electronic ticket management
CN107395749A (zh) * 2017-08-21 2017-11-24 苏州维尔特纳网络科技有限公司 网络轨迹跟踪管理系统
US10931778B2 (en) 2019-01-09 2021-02-23 Margo Networks Pvt. Ltd. Content delivery network system and method
US11930439B2 (en) 2019-01-09 2024-03-12 Margo Networks Private Limited Network control and optimization (NCO) system and method
US10887380B2 (en) * 2019-04-01 2021-01-05 Google Llc Multi-cluster ingress
US11695855B2 (en) 2021-05-17 2023-07-04 Margo Networks Pvt. Ltd. User generated pluggable content delivery network (CDN) system and method
WO2023224680A1 (en) 2022-05-18 2023-11-23 Margo Networks Pvt. Ltd. Peer to peer (p2p) encrypted data transfer/offload system and method
KR102553672B1 (ko) * 2022-10-13 2023-07-10 주식회사 마이링크 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템
WO2024048858A1 (ko) * 2022-09-02 2024-03-07 주식회사 마이링크 분산 메시징 서버를 통한 데이터 처리 방법, 및 이를 포함하는 분산 메시징 시스템

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6189030B1 (en) * 1996-02-21 2001-02-13 Infoseek Corporation Method and apparatus for redirection of server external hyper-link references
US6073241A (en) * 1996-08-29 2000-06-06 C/Net, Inc. Apparatus and method for tracking world wide web browser requests across distinct domains using persistent client-side state
US5991740A (en) * 1997-06-10 1999-11-23 Messer; Stephen Dale Data processing system for integrated tracking and management of commerce related activities on a public access network
US7302402B2 (en) * 1998-03-30 2007-11-27 International Business Machines Corporation Method, system and program products for sharing state information across domains
US6839680B1 (en) * 1999-09-30 2005-01-04 Fujitsu Limited Internet profiling
US7630986B1 (en) * 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US6954799B2 (en) * 2000-02-01 2005-10-11 Charles Schwab & Co., Inc. Method and apparatus for integrating distributed shared services system
US7039699B1 (en) * 2000-05-02 2006-05-02 Microsoft Corporation Tracking usage behavior in computer systems
US7249056B1 (en) * 2000-08-17 2007-07-24 Performics, Inc. Method and system for exchanging data between affiliated sites
US6477575B1 (en) * 2000-09-12 2002-11-05 Capital One Financial Corporation System and method for performing dynamic Web marketing and advertising
JP3655185B2 (ja) * 2000-10-18 2005-06-02 日本電信電話株式会社 情報仲介者装置及び情報仲介者方法プログラムを記録した記録媒体
JP3961213B2 (ja) * 2000-11-09 2007-08-22 バリュー・コマース・インターナショナル・リミテッド ユーザのアクティビティをトラッキングする電子商取引システム
AU2002355530A1 (en) * 2001-08-03 2003-02-24 John Allen Ananian Personalized interactive digital catalog profiling
US7606560B2 (en) * 2002-08-08 2009-10-20 Fujitsu Limited Authentication services using mobile device
US20040049673A1 (en) * 2002-09-05 2004-03-11 Docomo Communications Laboratories Usa, Inc. Apparatus and method for a personal cookie repository service for cookie management among multiple devices
WO2004051453A1 (en) * 2002-12-04 2004-06-17 Entriq Inc. Multiple content provider user interface
US7698398B1 (en) * 2003-08-18 2010-04-13 Sun Microsystems, Inc. System and method for generating Web Service architectures using a Web Services structured methodology
US20050144064A1 (en) * 2003-12-19 2005-06-30 Palo Alto Research Center Incorporated Keyword advertisement management
US8041769B2 (en) * 2004-05-02 2011-10-18 Markmonitor Inc. Generating phish messages
US7870608B2 (en) * 2004-05-02 2011-01-11 Markmonitor, Inc. Early detection and monitoring of online fraud
US20060080321A1 (en) * 2004-09-22 2006-04-13 Whenu.Com, Inc. System and method for processing requests for contextual information
JP4246694B2 (ja) * 2004-12-27 2009-04-02 株式会社環 アクセス記録通知装置
US7925973B2 (en) * 2005-08-12 2011-04-12 Brightcove, Inc. Distribution of content
US20070220010A1 (en) * 2006-03-15 2007-09-20 Kent Thomas Ertugrul Targeted content delivery for networks

Also Published As

Publication number Publication date
WO2008022339A3 (en) 2008-11-20
IL197102A0 (en) 2009-11-18
KR20090052882A (ko) 2009-05-26
AU2007285753A1 (en) 2008-02-21
IL197102A (en) 2013-03-24
KR101588428B1 (ko) 2016-01-27
EP2054815A2 (en) 2009-05-06
JP2010501939A (ja) 2010-01-21
US20080086523A1 (en) 2008-04-10
WO2008022339A2 (en) 2008-02-21
CA2661212A1 (en) 2008-02-21
BRPI0715701A2 (pt) 2013-08-06

Similar Documents

Publication Publication Date Title
JP5088968B2 (ja) コンテンツ配信ネットワークにおけるデータ収集方法及びシステム
US8972530B2 (en) Method of data collection among participating content providers in a distributed network
US8484283B2 (en) Method and system for mitigating automated agents operating across a distributed network
US20080086524A1 (en) Method and system for identifying valid users operating across a distributed network
Toubiana et al. Adnostic: Privacy preserving targeted advertising
Srivastava et al. Web mining: Accomplishments and future directions
JP6415458B2 (ja) ペアリングされた識別子に基づいた広告機会のためのユーザ識別
US7827174B2 (en) Dynamic document context mark-up technique implemented over a computer network
CA2400199C (en) A system and method to determine the validity of an interaction on a network
US20160253700A1 (en) System and method for automated advocate marketing with digital rights registration
US8473338B2 (en) Methods and systems to facilitate keyword bid arbitrage with multiple advertisement placement providers
US8560669B2 (en) Tracking identifier synchronization
US20090055267A1 (en) Internet advertising brokerage apparatus, systems, and methods
US10713693B2 (en) Method and apparatus for advertising content management
US20020120505A1 (en) Dynamic document context mark-up technique implemented over a computer network
US10311124B1 (en) Dynamic redirection of requests for content
CN101523379A (zh) 分布式网络中的数据收集方法
JP2010539601A (ja) サービスプロバイダへの影響を抑制した状態で、ネットワーククライアントに対して的を絞ったコンテンツを特定して提供するためのアプローチ
Suresh et al. An overview of data preprocessing in data and web usage mining
JP7514232B2 (ja) ゼロ知識広告方法、装置、およびシステムのための暗号化匿名化
Amarasekara Improving the robustness and privacy of HTTP cookie-based tracking systems within an affiliate marketing context: a thesis presented in fulfilment of the requirements for the degree of Doctor of Philosophy at Massey University, Albany, New Zealand
Helsloot et al. Privacy concerns and protection measures in online behavioural advertising
Wang Workload characterization and customer interaction at e-commerce web servers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120110

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120406

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120413

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120508

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120515

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120608

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120615

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120709

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120907

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120910

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150921

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5088968

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250