説明

データを再評価するためのシステムおよび方法

方法およびシステムは、再分類に基づき、送達されたメッセージに措置を講じ得るように、送達されたメッセージを再分類する。一実施形態例では、メール転送エージェントは、メール記憶に向けられるメッセージを受信し得、メッセージクラシファイアは、メッセージの少なくとも一部分の表象を生成し、メッセージの表象および表象と関連付けられる特性を使用してメッセージを分類し得る。いくつかの実施形態例では、メール転送エージェントは、メッセージの分類に基づきメッセージをメッセージ記憶に送達し得る。メール転送エージェントがメッセージをメッセージ記憶に送達した後で、メッセージリクラシファイアは、表象と関連付けられるさらなる特性にアクセスし、表象および第2の特性に基づきメッセージを再分類し得る。一実施形態例では、メール転送エージェントは、メッセージの再分類に基づきメッセージ記憶内のメッセージに対して動作の実施を開始し得る。

【発明の詳細な説明】
【技術分野】
【0001】
(優先権の主張)
本出願は、2008年6月23日出願の米国仮出願第61/132,887号の優先権の利益を主張し、当該仮出願は、本明細書において参照により援用される。
【0002】
(技術分野)
主題は、デジタル通信システムの分野に関する。限定の目的ではないが、より具体的には、主張される主題は、ネットワークを介して通信され得るデータを再評価するための技術を開示する。
【背景技術】
【0003】
(背景)
インターネットおよび携帯電話ネットワーク等の現代の遠隔通信技術は、人々が、電子メール、インスタントメッセージング、ショートメッセージングサービス(SMS)テキストメッセージ、マルチメディアメッセージングサービス(MMS)メッセージ、および多数の他のデジタルメッセージング通信方法を含む、通信の方法を使用できるようにする。
【0004】
一部の人々、および人々によって作成されたプログラムは、上記で参照された通信方法を使用して、膨大な未承諾の、および/または悪質なメッセージを受信被害者に送達する。未承諾のメッセージの一種は、一般に「スパム」と称される、未承諾広告メッセージである。スパムフィルタは、未承諾のメッセージまたはスパムがシステム資源に負荷を掛け、場合によってはメッセージ受信者を邪魔するのを防止するように、未承諾のメッセージを除外するために、メッセージングシステムと協働するように開発された。
【発明の概要】
【課題を解決するための手段】
【0005】
データを再評価する方法例およびシステム例を説明する。以下の記載では、説明を目的として、実施形態例の完全な理解を提供するために、数多くの具体的な詳細が規定される。しかしながら、主張される主題は、これらの具体的な詳細を有さずに実施され得ることが当業者に明らかであろう。
【0006】
この詳細な説明は、とりわけ、更新された分類に基づき、メッセージに措置を講じる(例えば、取り消す、除去する、削除する、再ファイルする、遮断する、および/または他の措置を講じる)ことができるように、偽の、期限切れの、または変更された分類に基づき、措置が講じられた(例えば、送達された、掲示された、コピーされた、転送された、ファイルされた、および/または他の措置が講じられた)メッセージを識別し、再分類できるようにする、技術の実施例を開示する。開示される技術は、任意の分類に適用されてもよいこと、および技術例は、数多くの蓄積交換通信環境に採用されてもよいことが留意され得る。
【0007】
電子メール環境の一例では、メールサーバ(例えば、メール転送エージェントまたはウェブメールサーバ)は、電子メールフィルタによってメッセージが正当なもの(legitimate)(以後、「正当なもの(legit)」)に分類されたことを通知された後、記憶領域内の電子メールメッセージが受信者によってアクセスされることを可能にしてもよい。実施形態例では、電子メールフィルタは、メッセージを正当なものとした分類が偽陽性分類であったことを判定するコンポーネント(例えば、ソフトウェアおよび/またはハードウェアコンポーネント)を含んでもよい。電子メールフィルタコンポーネントはさらに、メールサーバに、メッセージが正当なものの分類からスパムの分類に再分類されるべきであることを通知してもよい。メッセージがスパムであると通知されたことで、メールサーバは、記憶領域内の電子メールメッセージに対して実施されるべき措置(例えば、電子メールメッセージの削除)を生じる措置(例えば、削除コマンド)を開始してもよい。このように、通常、記憶領域から電子メールメッセージにアクセスする可能性のある、電子メールメッセージの受信者は、スパム電子メールを受信することから遮蔽され得る。
【0008】
メッセージは、通信プロセス中の異なる場面で、分類の変更について監視されてもよい。例えば、上記の電子メール環境の例では、メッセージは、メッセージがメール記憶に送達された後ではあるが、メッセージ受信者がメッセージにアクセスする前、および/またはメッセージを読む前において、分類の変更がスキャンされていると記述される。代替として、またはさらに、メッセージ分類の変更に対するスキャンは、メッセージ受信者のメールサーバへのログイン時(例えば、メール記憶ログイン)、および/またはユーザがメッセージをスキャンすることを具体的に要求する度に行われてもよい。
【図面の簡単な説明】
【0009】
いくつかの実施形態は、添付の図面の図中において、限定ではなく例示として図示される。
【図1】図1は、例示の実施形態に従う、データ通信ネットワークを図示するブロック図である。
【図2】図2は、例示の実施形態に従う、メッセージサーバと、メール記憶とを含む、メッセージネットワーク例を図示するブロック図である。
【図3】図3は、例示の実施形態に従う、メッセージとメッセージ関連値との間の関連を図示するテーブルである。
【図4】図4は、例示の実施形態に従う、フィンガープリントと様々なフィンガープリント関連値との間の関連を図示するテーブルである。
【図5】図5は、例示の実施形態に従う、ポリシー施行フローを図示する相互作用フロー図である。
【図6】図6は、例示の実施形態に従う、メッセージの表象を記録する方法を図示するフロー図である。
【図7】図7は、例示の実施形態に従う、メッセージを再評価する例示の方法を図示するフロー図である。
【図8】図8は、例示の実施形態に従う、コンピュータシステムの形態例における機械の図式表現を示す。
【発明を実施するための形態】
【0010】
(詳細な説明)
本明細書に開示される実施形態例の実践を通して、データ分類に関連する精度レベルは、比較的に高められてもよい。それゆえ、データに対して施行されるポリシーがデータ分類に基づく場合、ポリシーの実効性は、比較的に改善され得る。
【0011】
図1は、例示の実施形態に従う、データ通信ネットワーク100を図示するブロック図である。データ通信ネットワーク100は、ネットワークノード間でのデジタルデータの通信をサポートしてもよく、ノードによるデータの受信の前および/または後で、データ送達ポリシーを施行することをさらにサポートしてもよい。
【0012】
データ通信ネットワーク100は、伝送媒体103およびネットワーク101を介して互いに連結される、評価モジュール102と、データ送達モジュール110と、ユーザ機械112および116と、データ記憶モジュール114と、評価データ更新モジュール118とを含むように示されている。
【0013】
本開示の目的では、通信は、発信元から目的地へのデータの通信を含む。データの通信は、一通および/または複数のメッセージの一部またはすべてを通信することを含み得、本明細書においてそのように参照され得る。メッセージは、通信の対象を含んでもよい。
【0014】
実施形態例では、メッセージには、電子メール、インスタントメッセージ、ショートメッセージサービス(SMS)メッセージ、マルチメディアサービス(MMS)メッセージ、ウェブページ内容(例えば、ブログの掲示またはウェブメール)、ユーザ生成内容メッセージ、ボイスメールメッセージ、ビデオメッセージ、図形メッセージ、または通信の任意の他のデジタルオブジェクトを含み得るが、これらに限定されない。
【0015】
通信の発信元および/または目的地は、ユーザと関連付けられてもよい。本明細書で使用される場合、ユーザには、ユーザ機械の人間による使用、回路等のハードウェア、ソフトウェア等の命令、および/またはハードウェアと命令との組み合わせを含み得る。
【0016】
ユーザ機械112および116には、ネットワーク101を介してデータ(例えば、メッセージ)を伝送および/もしくは受信する、任意のネットワーク接続された機械またはデバイスを含み得る。ユーザ機械112および116には、任意のネットワーク接続されたデバイスを含み得るが、いくつかのネットワークデバイス例には、デスクトップコンピュータ、携帯デバイス、サーバ、大容量記憶デバイス、または任意の他の機械のうちの1つ以上を含み得る。
【0017】
例示のデータ送達モジュール110は、データを受信し、データに対して送達ポリシーを施行し、送達ポリシーが許可する場合にデータを目的地に送達するものである。いくつかの実施形態例では、データ送達ポリシーは、データ送達モジュール110が受信されたメッセージをデータ記憶モジュール114にルーティングすることを許可してもよく、メッセージは、ユーザ機械116のユーザ等の受信者がアクセス可能な状態にされてもよい。代替として、またはさらに、データ送達モジュール110は、受信されたメッセージをユーザ機械116にルーティングしてもよく、機械の受信者ユーザは、メッセージにアクセスしてもよい。データ送達モジュール110が受信および送達するメッセージの種類には、上記で参照された任意の例のメッセージの種類を含み得るが、これらに限定されないことが留意され得る。
【0018】
図1は、ネットワーク接続された機械および/またはモジュールの間の通信に関する凡例119を含んで示されている。矢印120、122、126、128、130、および132、ならびに134は、通信のハイレベルの経路の例を示し、必ずしもネットワーク接続されたコンポーネント間の直接経路を示すわけではない。例えば、通信は、図1に示されていない、中間のネットワーク接続されたコンポーネントを通って案内されてもよい。
【0019】
通信のフロー例では、ユーザ機械112の送信者によってユーザ機械116の受信者に向けられるメッセージは、矢印120によって示されるように、最初に、データ送達モジュール110によって受信されてもよい。メッセージは、矢印122によって示されるように、評価のために、評価モジュール102に転送されてもよく、次いで、矢印122によって示されるように、データ送達モジュール110が、評価モジュール102によって提供される特定の情報を用いて、メッセージはユーザ機械116に到達することを許可されるべきであると判定する場合にのみ、矢印124によって示されるように、データ記憶モジュール114内に記憶されてもよい。
【0020】
データ記憶モジュール114は、データを受信し、データを記憶し、データに対する操作を実施し、データへのアクセスを許可するものである。
【0021】
実施形態例では、データ記憶モジュール114は、デスクトップコンピュータによって実行または動作されてもよく、デスクトップコンピュータのユーザは、デスクトップコンピュータによって実行されるメッセージ閲覧アプリケーションを介して、データ記憶モジュール114によって記憶される電子メールメッセージにアクセスしてもよい。
【0022】
いくつかの実施形態例では、データ記憶モジュール114は、受信者が、ユーザ機械116上で動作するメッセージ閲覧アプリケーションを介して、ネットワーク101をわたってメッセージにアクセスできるようにする、遠隔メール記憶(例えば、メッセージ受信者に対して遠隔である)として使用されてもよい。
【0023】
代替として、またはさらに、データ記憶モジュール114は、ユーザ機械116上で動作するブラウザにウェブページを供給する、ウェブサーバによって動作されてもよい。ブラウザに供給されるウェブページは、ユーザ機械116のユーザに向けられる1つ以上のウェブメールメッセージを含んでもよい。いくつかの実施形態例では、ブラウザに供給されるウェブページは、ユーザ機械116のユーザに向けられる1つ以上のメッセージを含む、ブログ入力または壁掲示(wall posting)(例えば、ソーシャルネットワーキングページに掲示される)等のユーザ生成内容を含んでもよい。
【0024】
通信のさらなるフロー例では、ユーザ機械112の送信者によってユーザ機械116の受信者に向けられるメッセージは、矢印126によって示されるように、データ記憶モジュール114内に記憶される。メッセージは、矢印128および130によって示されるように、評価のために、評価モジュール102に転送されてもよい。記憶されたメッセージは、矢印128および130によって示されるように、データ記憶モジュール114が、評価モジュール102によって提供される特定の情報を用いて、メッセージはユーザ機械116の受信者がアクセスできるようにされるべきであると判定した場合にのみ、矢印132によって示されるように、意図される受信者によってアクセスされてもよい。
【0025】
評価モジュール102は、データエバリュエータ106と、データトラッカ104と、データリエバリュエータ108とを含むように示されている。データエバリュエータ106、データトラッカ104、およびデータリエバリュエータ108の機能性は、以下により詳細に記載される。
【0026】
上記で紹介された評価モジュール102は、送信者からデータ(例えば、単数または複数のメッセージ)を受信し、データが意図される受信者に到達することを許可されるべきかどうかを判定するために(例えば、データ送達モジュール110またはデータ記憶モジュール114によって)使用され得る、データに関する情報を提供するものである。様々な実施形態例では、評価モジュール102は、メッセージが受信者に利用可能とされる前にデータを評価するために、データエバリュエータ106を採用してもよく、データが受信者に利用可能(例えば、メッセージは、いったんデータ記憶またはユーザ機械に送達されると、利用可能であってもよい)とされた後で、データを再評価するために、データトラッカ104およびデータリエバリュエータ108をさらに採用してもよい。
【0027】
1つ以上の機械は、データ送達モジュール110と一緒に、評価モジュール102を完全に、または部分的に実装してもよいことが留意され得る。例えば、データ送達モジュール110を動作させる1つ以上の機械は、データトラッカ104、データエバリュエータ106、および/またはデータリエバリュエータ108の機能性のいくつか、またはすべてを提供してもよい。代替として、またはさらに、1つ以上の機械は、データ記憶モジュール114と共に、評価モジュール102を完全に、または部分的に実装してもよい。
【0028】
データトラッカ104、データエバリュエータ106、およびデータリエバリュエータ108は、すべてが同一の機械によって実装されなくてもよいことがさらに留意され得る。例えば、データエバリュエータ106は、データ送達モジュール110を有する単数または複数の機械によって実装されてもよく、データトラッカ104および/またはデータリエバリュエータ108は、データ記憶モジュール114を有する、単数または複数の異なる機械によって実装されてもよい。もちろん、当該技術分野において通常の技術を有する者は、主張される対象の範囲から逸脱することなく、数多くの他の構成が採用され得ることを認識するであろう。
【0029】
評価モジュール102内に示されるデータエバリュエータ106は、データを受信し、受信されたデータから、どのようにデータを処理するかを決定するために使用され得るデータの性質に関する情報を入手するものである。実施形態例では、受信されたメッセージの分類を増進するために、データエバリュエータ106は、メッセージを表すのに、メッセージ(例えば、メッセージ内容)から入手された情報を使用してもよい。メッセージの表象は、メッセージ内のすべての内容、メッセージ内の内容の一部分、またはメッセージ内の内容の複数の部分に基づいてもよい。メッセージの表象は、続いて、メッセージを分類するために使用されてもよい。
【0030】
メッセージの表象例は、メッセージのプロパティまたは属性と関連付けられ、およびメッセージの性質または分類を示し得る、データ(例えば、文字列)を含んでもよい。表象は、表象とは別個に記憶され得る、完全なメッセージを表すため、またはその代役を務めるために使用されてもよい。メッセージのプロパティ例または属性例には、メッセージのヘッダ内の情報、送信者識別子、メッセージの件名内の内容、メッセージ内に見出される特定のキーワード、メッセージが送信された時間、およびメッセージから抽出され得る、またはメッセージと関連付けられる他の情報を含み得る。メッセージの表象は、それぞれがメッセージの異なる属性と関連付けられる、複数の文字列を含んでもよい。本明細書に説明される様々な実施形態例では、メッセージの表象は、メッセージの一部分をアルゴリズム(例えば、ハッシュ関数)で処理することによってもたらされる値(例えば、ハッシュ値)を含んでもよい。
【0031】
メッセージの表象は、メッセージの既知の特性と関連付けられてもよい。メッセージの分類は、メッセージの既知の特性から判定されてもよい。例えば、「今すぐ購入!」および「驚きの取引!」というテキストを含むメッセージ(例えば、メッセージ属性)は、それぞれ、「今すぐ購入!」および「驚きの取引!」という文字列によって表象されてもよく、またはテキストに対してハッシュ関数(単数または複数)を処理することによってもたらされるハッシュ値によって表象されてもよい。「今すぐ購入!」および「驚きの取引!」という文字列、またはそのそれぞれのハッシュ値と関連付けられることが既知の特性は、「無礼な広告」という特性を含んでもよい。いくつかの実施形態例では、データエバリュエータによって施行される規則は、「無礼な広告」という特性を伴うメッセージは、「未承諾のメッセージ」として分類されるべきであるということを規定し得る。いくつかの実施形態例では、一特性は、メッセージの分類の判定において、別の特性より多くの、またはより少ないウェートが与えられてもよい。いくつかのメッセージ属性は、新しいウイルスまたはフィッシング詐欺攻撃と関連付けられてもよく、そのようなメッセージは、そのような知識に基づいて分類されてもよい。
【0032】
適切なメッセージ属性、特性、分類、および、特性が分類を判定する態様の選択は、メッセージがフィルタ処理される環境に依存してもよい。本明細書に開示されるメッセージフィルタリングを採用し得る、いくつかの通信環境には、ソーシャルネットワーキングメッセージング、携帯メッセージング、テキストメッセージング、マルチメディアメッセージング、メッセージルーティング、メッセージプロキシ、および、メッセージを記憶することと、メッセージを目的地もしくは受信者に転送することとを含む様々な他のメッセージングシナリオを提供する、電子メールシステムを含み得るが、これに限定されない。
【0033】
いくつかの実施形態例では、いったんメッセージが評価モジュール102によって初期に分類されると、メッセージは、メッセージ送達ポリシーに基づき、(例えば、データ送達モジュール110によって)受信者への送達のために消去されてもよい。メッセージ送達に対するある時点で、データトラッカ104は、メッセージの表象を記録してもよい。
【0034】
データトラッカ104は、データの表象を記録するものである。いくつかの実施形態例では、データトラッカ104は、メッセージの表象を、関連したメッセージ識別子と共に、データ構造内に記憶してもよい。メッセージが、それぞれが異なる特性と関連付けられる複数のハッシュ値によって表される実施形態例では、データ構造は、メッセージ識別子と、複数の対応するハッシュ値へのポインタとを含んでもよい。データ構造は、続いて、データリエバリュエータ108が記憶されたデータを再評価し得るように、データリエバリュエータ108へのアクセスを提供してもよい。データトラッカ104は、データ構造からの表象の除去を管理してもよい。以下により詳細に記載されるように、除去のためのいくつかのパラメータ例には、メッセージ表象が記憶されている時間、表象を記憶するために使用されている記憶空間の量、および現在記憶されているメッセージ表象の数を含み得る。
【0035】
評価データ更新モジュール118は、時々、データを再評価するために使用される情報の更新を用いて、データエバリュエータ106を更新してもよい。いくつかの実施形態例では、更新される情報には、メッセージを表すために使用されるメッセージ属性(例えば、ハッシュ化された属性またはフィンガープリント)、およびデータリエバリュエータ108がメッセージを再評価するために使用し得る、対応する特性データを含み得る。
【0036】
例えば、評価データ更新モジュール118は、メッセージを評価するために以前はデータエバリュエータ106に提供されなかった、またはデータエバリュエータ106によって使用されなかった、メッセージ属性の更新された特性を提供してもよい。更新された情報は、例えば、メッセージ属性に関する、データ通信ネットワーク100のユーザの集団知能に基づいてもよい。更新された特性は、評価データ更新モジュール118によって生成されてもよく、またはローカルもしくは遠隔の発信元から評価データ更新モジュール118に提供されてもよい。評価データ更新モジュール118は、更新情報を提供することに専念する必要はなく、任意の適切な機械によって動作されてもよい。
【0037】
データリエバリュエータ108は、データエバリュエータによって実施された評価の結果を再評価し、その結果におけるいずれかの変更の通知を提供するものである。
【0038】
上記の実施例を参照すると、「今すぐ購入!」および「驚きの取引!」という文字列、またはそれらのそれぞれのハッシュ値と関連付けられることが既知である、「無礼な広告」という特性は、「尊重される広告」という特性を反映するように更新されてもよい。データリエバリュエータ108は、(例えば、評価データ更新モジュール118から受信された)特性の変更に基づき、メッセージを再評価し、および、データ送達モジュール110が適切なメッセージ送達ポリシーを施行し得るように、メッセージの分類が「中立的な広告メッセージ」に変更されたという通知をデータ送達モジュール110に提供してもよい。さらなる実施形態例が、図2〜図7に関して、以下に記載される。
【0039】
図1を参照すると、評価モジュール102、データトラッカ104、データリエバリュエータ108、データ送達モジュール110、データ記憶モジュール114、および評価データ更新モジュール118は、それぞれモジュールとして実装されてもよい。この仕様のために、モジュールは、ソフトウェア、ハードウェア/回路、またはソフトウェアとハードウェア/回路との組み合わせを使用して実装されてもよい。例えば、「モジュール」という用語は、特定の機能、動作、処理、もしくは手順を達成する、コード、計算命令または実行可能な命令、データ、あるいは計算オブジェクトの、識別可能な部分を含んでもよい。モジュールは、必ずしもソフトウェア内に実装される必要はなく、いくつかの実施形態例では、モジュールは、モジュールの機能(単数および/または複数)を実施するように設計された、特定用途向け集積回路(ASIC)またはプログラマブル回路を使用して実装されてもよい。ハードウェアおよびソフトウェアを使用して実装されるモジュールには、モジュールの機能(単数および/または複数)を実施するためにプロセッサ(例えば、ハードウェア)が命令(例えば、ソフトウェア)を実行する一定の時間中に存在するモジュールを含み得るが、これに限定されない。
【0040】
図2は、例示の実施形態に従う、メール転送エージェント204と、メール記憶220とを含む、メッセージネットワーク200を図示するブロック図である。図2は、ネットワーク224を介して、メール記憶220に連結され、かつメッセージ特性アップデータ228に連結される、メッセージサーバ202を含むように示されている。メッセージサーバ202は、通信チャネル205を介して互いに連結される、数多くのコンポーネントを含むように示されている。コンポーネントのそれぞれは、以下に順に記載される。
【0041】
メール転送エージェント204は、ネットワーク224を介して、受信者に向けられるメッセージ203を受信し、メッセージのうちの少なくともいくつかをメール記憶220に転送するものである。以下により詳細に記載される、メッセージクラシファイア206は、メッセージポリシーを施行して、メッセージのいくつかを遮断するために使用され得る、メッセージ分類を提供してもよく、そうでない場合は、メッセージは、メール転送エージェント204によってメール記憶220に転送される。
【0042】
様々な実施形態例では、メール転送エージェント204は、メッセージポリシーに起因して遮断されておらず、かつメール記憶220に既に送達されているメッセージに対して措置を実施する要求を発行してもよい。例えば、メッセージがメール記憶220に送達される時より前に、メッセージクラシファイア206が以前に、例えば「受け入れ可能」に分類したメッセージは、後に、メッセージリクラシファイア214がメッセージの分類を例えば「受け入れ不可能」に変更した後で、メール記憶220内の位置から(例えば、メール転送エージェント204の要求によって)削除されてもよい。
【0043】
メッセージクラシファイア206は、メール転送エージェント204によって受信されたメッセージを分類するものである。一実施形態例では、メッセージクラシファイア206は、受信されたメッセージからのデータの1つの選択(例えば、または複数の選択)に対して、その選択の表象を生成するように、フィンガープリントアルゴリズムを動作させる。いくつかの実施形態例では、メッセージからのデータの選択は、メッセージの属性と見なされるビットストリームを含んでもよい。フィンガープリントアルゴリズムは、メッセージ属性を、フィンガープリントが由来したビットストリーム(例えば、データの属性または選択)を一意に識別する、比較的小さなビットストリームにまで低減してもよい。
【0044】
一実施形態例では、メッセージクラシファイア206は、受信されたメッセージの属性のフィンガープリント等の未知のフィンガープリントと特性化されたフィンガープリントとの間で、順次比較を実施してもよい。特性化されたフィンガープリントが未知のフィンガープリントと一致する場合、未知のフィンガープリント、およびその結果、受信されたメッセージの属性は、特性化されたフィンガープリントと特性を共有してもよい。比較が一致をもたらさない場合、特性は、未知のフィンガープリントと関連付けられなくてもよい。
【0045】
メッセージクラシファイア206は、表象のライブラリと、対応する既知の特性(例えば、透過的なライブラリ)とを記憶する、メッセージ特性記憶領域207を含んでもよい。いくつかの実施形態例では、メッセージ内容の以前に生成された表象のライブラリ(例えば、共通して現れるキーワード)、および関連特性は、受信されたメッセージの特性を識別するために、図1のデータエバリュエータ106によって参照されてもよい。
【0046】
「お買い得!」という語句のフィンガープリントが取得されてもよく、次いでフィンガープリントは、スパムインジケータとして特性化されてもよい。次いで、特性化されたフィンガープリントは、後で参照するために、メッセージ特性記憶領域207内に記憶されてもよい。
【0047】
メッセージ特性アップデータ228は、フィンガープリントおよびフィンガープリントの対応する特性を有するメッセージクラシファイア206(例えば、メッセージ特性記憶領域207)に対して更新を提供するものである。更新は、メッセージクラシファイア206によって要求されてもよく、および/またはメッセージ特性アップデータ228は、更新を自動的に提供してもよい。一実施形態例では、各フィンガープリントは、単一の特性と関連付けられてもよいが、いくつかの実施形態例では、各フィンガープリントは、複数の特性と関連付けられてもよい。いくつかの実施形態例では、メッセージ特性アップデータ228は、メッセージクラシファイア206のメッセージ特性記憶領域207に、30〜60秒毎に更新を提供するが、しかしながら、更新は、任意の適切な入力に基づいて提供されてもよい。
【0048】
メール記憶インタフェース208は、メール転送エージェント204とメール記憶220との間の通信のためのインタフェースを提供してもよい。様々な実施形態例では、メール転送エージェント204は、メール記憶インタフェース208を通して、メール記憶220内のメッセージにメールポリシーを施行し、これは、メール記憶220によって記憶された、指定されたメッセージへの措置を容易にし得る。いくつかの実施形態例では、メール記憶インタフェース208は、アプリケーションプログラムインタフェースコールをメール記憶220に転送することによって、メッセージに対して講じられる特定の措置(例えば、メッセージの削除またはスパムフォルダへのメッセージの移動)を開始する。一実施形態例では、メール記憶インタフェース208は、メール記憶220のアプリケーションプログラミングインタフェース(例えば、シンプルオブジェクトアクセスプロトコル(SOAP))を使用して、メール記憶220のウェブサービスと統合される。
【0049】
メール転送エージェントインタフェース210は、メール転送エージェント204と、メッセージ特性記憶領域207、メッセージクラシファイア206、メッセージトラッカ212、およびメッセージリクラシファイア214を含む、様々な他のシステムコンポーネントとの間の通信を容易にするものである。上記に紹介されるように、メール転送エージェントインタフェース210は、メッセージの特性が変更した時に、メール転送エージェント204に通知してもよい。
【0050】
メッセージトラッカ212は、いくつかの実施形態例では、メール転送エージェント204によってメッセージがメール記憶220に送達される度に、メッセージ記憶領域211を適切な記録で更新するものである。一実施形態例では、メッセージトラッカ212は、メッセージがメール記憶220に送達されるべき時に、メール転送エージェントインタフェース210を介して、メッセージクラシファイア206から通知を受信し、通知に応えて、メッセージ記憶領域211をそのようなメッセージのそれぞれに関する情報(例えば、メッセージ識別子およびメッセージ表象)で更新してもよい。メール転送エージェント204は、メール転送エージェントインタフェース210を介して、メッセージトラッカ212によってメッセージ記憶領域211内に記憶されるべきメッセージ情報を指定してもよい。例えば、具体的な情報には、メッセージ識別子、受信者アドレス、およびメッセージが送達された時間を示すタイムスタンプを含み得る。
【0051】
メッセージ記憶領域211は、メール記憶220に送達されたメッセージのフィンガープリント等のメッセージ表象の記録を維持するために、データ構造を記憶してもよい。メッセージ記憶領域211は、メッセージトラッカ212、メッセージリクラシファイア214、およびメッセージ除去モジュール216によってアクセス可能であってもよい。いくつかの実施形態例では、メッセージ記憶領域211は、メモリ内データベースとして実装されるが、しかしながら、他の適切なデータ構造が採用されてもよい。
【0052】
メッセージリクラシファイア214は、メッセージの更新された特性がメッセージの再分類をもたらすかどうかを判定するものである。例えば、メッセージの表象は、それぞれが特性と関連付けられる、3つのフィンガープリントを含んでもよく、フィンガープリントのうちの1つの特性が変更する時に、メッセージリクラシファイア214は、また、メッセージの分類も変更することを判定してもよい。メッセージリクラシファイア214は、メッセージ属性アップデータ228からメッセージ特性記憶領域207によって受信された任意の更新の通知をメッセージクラシファイア206から要求してもよい。一実施形態例では、メッセージリクラシファイア214は、メール転送エージェント204がメール記憶に既に送達したメッセージの分類の変更を、メール転送エージェント204に通知してもよい。メッセージの再分類を説明する実施形態例は、以下により詳細に記載される。
【0053】
メッセージ除去モジュール216は、メッセージ記憶領域211から記録を定期的に、および/または不定期に除去するものである。一実施形態例では、メッセージ表象がより多くの回数記憶されると、対応するメッセージが正確に分類される可能性がより高くなる。いくつかのメッセージ表象は、分類の判定を行う時に、他のものより大きなウェートを与えられてもよいため、場合によっては、いくつかのメッセージ表象を他のメッセージ表象より長く記憶することが適切であり得る。一実施形態例では、適切な除去の間隔を提供するために、メッセージ除去モジュール216は、メッセージ表象が記憶されてから60分が満了した後に、あるメッセージ表象を時間切れにするが、別のメッセージ表象については、他のメッセージ表象が90分を超えて記憶されていない限り、時間切れにしないことがあり得る。一実施形態例では、時間切れにする間隔のデフォルト設定は、60分の満了であるが、システム資源の利用可能度の一部または全体に基づき、カスタムの除去の間隔が指定されてもよい。
【0054】
メール記憶220は、メッセージの受信者にアクセス可能にされているメッセージのための記憶領域を含んでもよい。様々な実施形態例では、記憶領域は、機械によってアクセス可能なデータ構造、機械の内部メモリ(例えば、ランダムアクセスメモリ)、および/または機械の外部の記憶領域(例えば、ハードディスクまたはハードディスクのアレイ)を含んでもよい。メール記憶220は、メール記憶220内の記憶位置に記憶されたメッセージの再分類に関する通信を可能にする、インタフェースを提供してもよい。いくつかの実施形態例では、機械は、メール転送エージェント204からの命令に応えて、メール記憶220内のメッセージに対して様々な動作を実施するために、メール記憶220に連結されてもよい。
【0055】
図3は、例示の一実施形態に従う、メッセージとメッセージ関連値との間の関連を図示するテーブル300である。実施形態例では、図2のメッセージトラッカ212は、テーブル300に示される値を含むデータ構造をメッセージ記憶領域211内に記憶してもよい。図2のメッセージリクラシファイア214およびメッセージ除去モジュール216は、それらのそれぞれの機能性を提供する過程中に、テーブル300に示される値にアクセスしてもよい。テーブル300は、メッセージ識別子列302と、属性フィンガープリント列304と、タイムスタンプ列306と、現行分類列308と、メッセージスコア列310内のメッセージスコアと、スパムスコア閾値列312とを含むように示されている。
【0056】
メッセージ識別子列302は、各交差行314、316、318、320、および322内に、図2のメール記憶220に送達された各メッセージを表すメッセージ識別子を示す。例えば、メッセージ識別子列302の第1の行314内のメッセージ識別子「M1」は、特定のメッセージに対応し、メッセージは、メッセージ識別子「M1」によって識別可能である。
【0057】
属性フィンガープリント列304は、各交差行314、316、318、320、および322内に、メール記憶220に送達された各メッセージと関連付けられるメッセージ属性のフィンガープリントを表す文字を示す。例えば、属性フィンガープリント列304、行314の文字A、B、C、Hのそれぞれは、異なるハッシュ値を表してもよい。一実施形態例では、テーブル300に示される各属性フィンガープリント値は、実際のフィンガープリントを含む記憶領域内のアドレスへのポインタを表す。
【0058】
タイムスタンプ列306は、各交差行314、316、318、320、および322内に、メッセージが図2のメール記憶220内に最初に記憶された時間を示す。一実施形態例では、タイムスタンプ列306のフィールドは、メッセージテーブル300内の特定の値を時間切れにする一環として、図2のメッセージ除去モジュール216によって、異なる時間にアクセスされてもよい(以下により詳細に記載される)。
【0059】
テーブル300の現行分類列308は、各交差行314、316、318、320、および322内に、各対応するメッセージが図2のメール記憶220に送達された時点でのメッセージ分類を示す。例えば、行316は、正当なものという現行分類を含むように示されており、一方、行320は、スパムという現行分類を示す。現行分類列308内およびメッセージスコア列310内の角括弧の付いた値は、フィンガープリント更新からもたらされる値を表し、以下により詳細に記載される。
【0060】
メッセージスコア列310は、各交差行314、316、318、320、および322内に、図2のメール記憶220に送達された、各対応するメッセージと関連付けられるメッセージスコアを示す。一実施形態例では、メッセージスコアは、メッセージを表す各フィンガープリントに対応するフィンガープリントスコアの合計である。フィンガープリントスコアは、図4に関連してさらに記載される。
【0061】
スパムスコア閾値列312は、各交差行314、316、318、320、および322内に、スパム閾値スコアを示す。一実施形態例では、メッセージスコア列310内のメッセージスコアがスパムスコア閾値列312内のスパム閾値スコアを超える場合、メッセージは、スパムと見なされてもよい。例えば、行320では、メッセージスコアは、「3」と示されており、これは、「2.5」と示されているスパムスコア閾値を超え、結果として、メッセージ識別子M4によって表されるメッセージの現行分類はスパムとなる。
【0062】
図4は、例示の一実施形態に従う、フィンガープリントと様々なフィンガープリント関連値との間の関連を図示するテーブルである。図4のテーブル400に示される値は、図2のメッセージクラシファイア206によって記憶されてもよい。
【0063】
属性フィンガープリント列402は、各交差行内に、メッセージ属性のフィンガープリントを表す文字を示す。例えば、行412では、文字「B」によって表されるフィンガープリントは、メッセージ列410のメッセージM1、M3、およびM4と関連付けられる。
【0064】
フィンガープリントスコア列404は、各交差行内に、各それぞれの属性フィンガープリントと関連付けられる値またはスコアを含むように示されている。例示のフィンガープリント値は、「0」または「1」のいずれかであるように示されており、属性フィンガープリントが2つの考えられる特性のうちの1つを有し得ることを示す。例えば、数字「1」は、メッセージ属性がスパムメッセージと関連付けられることを表してもよく、数字「0」は、メッセージ属性が正当なメッセージと関連付けられることを表してもよいが、しかしながら、逆の関係が使用されてもよい。一実施形態例では、属性フィンガープリント列402の行414内の属性フィンガープリント「C」は、対応するフィンガープリントスコア列404内に「0」が現れるため、正当なメッセージと関連付けられる。
【0065】
タイムスタンプ列408は、メッセージを特性化するために、各交差行内に、属性フィンガープリントが記憶された時間を含むように示されている。図3の列306内のタイムスタンプと同様に、図4のタイムスタンプは、値を時間切れにするために使用されてもよく、この実施形態例では、属性フィンガープリントを時間切れにするために使用されてもよい。
【0066】
メッセージ列410は、各交差行内に、属性を有するメッセージを含むように示され、これら属性は、フィンガープリントが付けられ、かつ属性フィンガープリント列402内に示されている。例えば、行412では、属性フィンガープリント「B」は、識別子M1、M3、およびM4によって表されるメッセージに含まれる属性を表す。
【0067】
図5は、例示の実施形態に従う、ポリシー施行フロー例を図示する相互作用フロー図500である。相互作用フロー図500は、図1のデータ送達モジュール110および図2のメール転送エージェント204によって実施され得る動作を含む、データ送達モジュール列502と、データエバリュエータ106および図2のメッセージクラシファイア206によって実施され得る動作を含む、データエバリュエータ列504と、データトラッカ104および図2のメッセージトラッカ212によって実施され得る動作を含む、データトラッカ列506と、図1のデータリエバリュエータ108および図2のメッセージリクラシファイア214によって実施され得る動作を含む、データリエバリュエータ列508と、図1のデータ記憶モジュール114および図2のメール記憶220によって実施され得る動作を含む、データ記憶列509とを含むように示されている。
【0068】
ブロック510で、フロー500は、受信されたメッセージを評価すべきことを要求するデータ送達モジュールを含んでもよい。図2を参照すると、メッセージ203は、メール転送エージェント204によって受信されるように示されている。メール転送エージェント204は、1つのそのようなメッセージを受信し、メッセージクラシファイア206がメッセージにスコアを付けるか、またはメッセージを分類することを要求するように、メール転送エージェントインタフェース210と通信してもよい。
【0069】
ブロック512で、フロー500は、メッセージの評価を提供するデータエバリュエータを含んでもよい。一実施形態例では、評価を提供することは、メッセージ表象を生成することを含んでもよく、メッセージ表象は、例えば、メッセージの一部分のハッシュ値またはフィンガープリントを含む。表象を提供することはさらに、表象と関連付けられる特性にアクセスすることを含んでもよい。例えば、受信されたメッセージに対して、図2のメッセージクラシファイア206は、メッセージを表すように、メッセージの属性のフィンガープリントを生成してもよい。メッセージクラシファイア206は、図2のメッセージ特性記憶領域207内において、フィンガープリントと関連付けられることが既知の特性またはスコアを識別するために、フィンガープリントを使用してもよい。
【0070】
いくつかの実施形態例では、図2のメッセージクラシファイア206は、メッセージスコアを計算し、スコアが付けられたメッセージがスパムを示すか、または正当なメッセージを示すかを判定してもよい。しかしながら、メッセージスコアは、スパムまたは正当なもの以外の分類に割り当てられてもよい。ブロック514で、フロー500は、評価に基づき、メッセージに送達ポリシーを適用するデータ送達モジュールを含んでもよい。いくつかの実施形態では、図2のメール転送エージェント204は、メッセージの受信者と関連付けられるスパムポリシーによって、メッセージがスパムであるか、または正当なものであるかを判定してもよい。代替として、またはさらに、いくつかのメッセージ送達ポリシーは、完全に、または一部において、メッセージ毎の基準で判定されてもよい。
【0071】
ブロック516で、例示のフロー500は、送達ポリシーが許す場合に、分類されたメッセージをデータ記憶に送達するデータ送達モジュールを含んでもよい。図2を参照すると、メール転送エージェント204は、メッセージが正当なものであると判定される場合に、例示のメッセージをメール記憶220に送達してもよく、または、メッセージがスパムメッセージであると判定される場合に、例示のメッセージがメール記憶220に到達するのを阻止してもよい。正当なメッセージ以外のメッセージがメール記憶220に送達されてもよいことが留意され得る。例えば、そうすることがメッセージ送達ポリシーと一致する場合、任意の分類のメッセージがメール記憶220に送達されてもよい。
【0072】
ブロック518で、例示のフロー500は、メッセージの表象を記録するデータトラッカを含んでもよい。図2のメッセージトラッカ212が、メッセージの単数または複数のフィンガープリントが記録されるべきであるという通知を受信することは、ブロック518での記録に先行してもよい。いくつかの実施形態例では、記録されるべき指示および値(例えば、メッセージ識別子、関連するメッセージフィンガープリント、図3に関して説明される他の値、または任意の他の適切な値)は、図2のメール転送エージェントインタフェース210によって提供されてもよい。
【0073】
図6に簡単に注目する。図6は、例示の一実施形態に従う、メッセージの表象を記録するための方法600を図示するフロー図である。ブロック602で、例示の方法600は、メッセージの少なくとも一部分の表象をデータ構造内に記憶させることを含んでもよい。
【0074】
いくつかの実施形態例では、図2のメッセージ記憶領域211によって記憶されるデータ構造は、各メッセージが対応するシグネチャ(例えば、ハッシュ化されたメッセージ属性)へのポインタのリストと関連付けられ得る、複数のメッセージのリンクリストを含んでもよい。また、メッセージ記憶領域211は、各シグネチャが各シグネチャによって表されるメッセージへのポインタのリストと関連付けられる、複数のシグネチャのハッシュテーブルを含んでもよい。
【0075】
例えば、図2のメール転送エージェントインタフェース210からの通知に応えて、メッセージトラッカ212は、図3の行314内のM1等のメッセージ識別子をメッセージのリンクリストに付加してもよい。各メッセージと関連付けられる各シグネチャ(例えば、図3の行314の属性フィンガープリントA、B、C、およびH)では、シグネチャがシグネチャのハッシュテーブル内(例えば、図4の属性フィンガープリント列402)に既にある場合、メッセージトラッカ212は、シグネチャのハッシュテーブル内のメッセージ(例えば、図4のメッセージ列410)へのポインタのリストに新しいメッセージへのポインタを追加してもよい。シグネチャがシグネチャのハッシュテーブル内にない場合、メッセージトラッカ212は、シグネチャのハッシュテーブルにシグネチャを追加し、そのシグネチャに対する複数のメッセージへのポインタのリストに、メッセージへのポインタを追加してもよい。
【0076】
ブロック604で、例示の方法600は、記憶された表象の除去の前に、メッセージを再分類することを含んでもよく、ブロック606で、除去パラメータに基づき、記憶された表象を除去することを含んでもよい。実施形態例では、除去パラメータには、時間間隔、フィンガープリントおよびメッセージを記憶するために使用される最大メモリサイズ、ならびに/または記憶され得るフィンガープリントおよび/もしくはメッセージの最大数を含み得る。
【0077】
例えば、図2のメッセージ除去モジュール216は、図3のタイムスタンプ列306内のタイムスタンプを現在の時間と比較し、および指定の時間間隔が超過されたかどうかを判定するために、メッセージ記憶領域211の、上記で紹介されたメッセージのリンクリストのヘッドにアクセスしてもよい。代替として、またはさらに、メッセージ除去モジュール216は、メッセージ記憶領域211がメッセージの最大数または最大メモリ空間を超過したかどうかを判定してもよい。間隔および/または最大限度が超過されている場合、メッセージ除去モジュール216は、メッセージのリンクリストのヘッドにおけるメッセージを除去してもよい。除去されたメッセージと関連付けられる各シグネチャに対して、メッセージ除去モジュール216は、メッセージをシグネチャから切り離すために、シグネチャのハッシュテーブルにアクセスしてもよい。
【0078】
図5に戻り、ブロック520で、例示のフロー500は、評価データを受信したという通知を提供するデータエバリュエータを含んでもよい。図2を参照すると、メッセージリクラシファイア214は、メール転送エージェントインタフェース210から、メッセージ特性記憶領域207に対するメッセージ特性更新が行われたことを通知されることを要求してもよい。一実施形態例では、メール転送エージェント204がメール記憶220にメッセージを送達した後で、メッセージ特性アップデータ228が更新を行う場合、メッセージリクラシファイア214は、更新された特性を自動的に受信すること(例えば、コールバックを登録することによってもたらされる)、および/または更新された特性を明示的に要求することのいずれかによって、メール転送エージェントインタフェース210を介して、メッセージの表象と関連付けられる、更新された特性にアクセスしてもよい。
【0079】
ブロック522で、例示のフロー500は、メッセージの表象および受信された評価データに基づき、メッセージを再評価するデータリエバリュエータを含んでもよい。メッセージを再評価することは、ここで、図7の別個のフロー図で説明される。
【0080】
図7は、例示の一実施形態に従う、メッセージを再評価するための例示の方法700を図示するフロー図である。ブロック702で、例示の方法700は、受信された、または更新された特性が、送達されたメッセージの表象と関連付けられることを判定することを含んでもよい。図2に関して説明されたように、メッセージリクラシファイア214は、更新された表象特性(例えば、更新されたフィンガープリントスコア)を入手してもよい。
【0081】
一実施形態例では、シグネチャのハッシュテーブルは、図4のテーブル400に示される情報を含んでもよく、メッセージリクラシファイア214は、更新されたフィンガープリントが表し得る、任意のメッセージを識別するために、シグネチャのハッシュテーブルにアクセスしてもよい。更新されたメッセージ特性の例として、図4、行412の属性フィンガープリント「B」を使用して、図2のメッセージリクラシファイア214は、属性フィンガープリント「B」が、図4の行412、メッセージ列410に示されるように、メッセージM1、M3、およびM4と関連付けられることを判定してもよい。ブロック704で、例示の方法700は、表象と関連付けられる第1の特性を第2の特性と置換することを含んでもよい。例示のフィンガープリントのハッシュテーブルについて継続し、図2のメッセージリクラシファイア214は、行412の属性フィンガープリント「B」等のフィンガープリント値を識別し、元のフィンガープリントスコアである「1」を更新されたフィンガープリントスコアである「0」と置換してもよい。
【0082】
ブロック706で、例示の方法700は、表象および更新された特性に基づき、メッセージを再分類することを含んでもよい。例えば、図2のリクラシファイア214は、特性の置換がメッセージの分類を変更することを判定してもよい。図3では、各メッセージM1、M3、M4に対して、図2のメッセージリクラシファイア214は、更新されたフィンガープリントスコアを考慮して、メッセージスコアを再計算してもよい。
【0083】
図3の行316のメッセージM2を例に挙げると、図4の行414において、メッセージM2と関連付けられる属性フィンガープリント「C」が、「0」の値から「1」の値に更新されていることが分かる。図3の行316のフィンガープリント「E」、「F」、および「G」が、それぞれ、「0」、「1」、および「1」の変更されていないフィンガープリントスコアを有するため、図2のリエバリュエータは、図3の行316、メッセージスコア列310に(例えば、括弧内に)示されるように、「3」となるように、メッセージM2の更新されたメッセージスコアを計算してもよい。例示のメッセージリクラシファイア214は、「3」というメッセージスコア列310内の新しいメッセージスコアを、行316、スパムスコア閾値列312に示される「2.5」というスパム閾値スコアと比較してもよい。分類の変更は、以下の実施形態例において説明される。
【0084】
図2の例示のメッセージリクラシファイア214は、データ構造にアクセスすることによって、行316、メッセージスコア列310における例示のメッセージM2の場合のように、メッセージM2が初期に正当なものに分類されたことを判定してもよい。メッセージM2では、「3」という新しいメッセージスコアがメッセージM2のスパム閾値を超えるため、正当なものという現行分類は、偽陽性であると見なされてもよい。ブロック524に関して以下に記載されるように、正当なものからスパムへのメッセージM2の分類の変更に基づき、メッセージに措置が講じられてもよい。
【0085】
再び図4を参照すると、属性フィンガープリント「B」のフィンガープリントスコア例は、行412、属性フィンガープリント列404内に、「1」から「0」に更新されるように示されている。図2のメッセージリクラシファイア214は、例えば、メッセージM2に関連して上述されたプロセスと類似するプロセスを通して、メッセージM4の新しいメッセージスコアを生成してもよい。M4の例の場合では、行320、現行分類列308内の、メッセージのスパムという現行分類、および正当なものというその更新された分類は、メッセージM4の初期の分類が偽陰性であったことを示す。メッセージの分類の変更に基づき、メッセージに適切な措置が講じられてもよい。
【0086】
メール転送エージェントインタフェース210は、図2のリクラシファイア214に偽陽性分類および/または偽陰性分類を通知するように構成されてもよいことが留意され得る。例えば、いくつかの実施形態例では、リクラシファイア214は、偽陽性事例(例えば、メッセージが正当なものと不正確に分類される場合)のみを再分類してもよい。
【0087】
再び図5に戻ると、ブロック524で、例示のフロー500は、メッセージの新しい評価をデータ送達モジュールに提供するデータリエバリュエータを含んでもよい。
【0088】
一実施形態例では、メール転送エージェント204は、最初に、メール転送エージェントインタフェース210から、再分類されたメッセージの通知を受信することを要求してもよい。いったん、メール転送インタフェース210によって新しい分類(例えば、再分類されたメッセージの)が通知されると、メッセージの再分類に応えて、メール転送エージェント204は、メール記憶インタフェース208に対して、メール記憶220と通信して、メッセージ送達ポリシーに従って、メール記憶220内の再分類されたメッセーに対する動作の実施を開始するように(例えば、信号の伝送を介して)命令してもよい。
【0089】
ブロック526で、例示のフロー500は、新しい評価に基づき、メッセージに送達ポリシーを適用するデータ送達モジュールを含んでもよい。いくつかの実施形態例では、メール転送エージェント204によって開始される動作は、どのようにメッセージが再分類されたかに基づいて選択される。メッセージがスパムとして再分類される場合、メール転送エージェント204は、メール記憶インタフェース208に対して、例えば、メール記憶220内のメッセージの移動または削除を開始するように命令してもよい。一実施形態例では、メール記憶インタフェース208は、メール記憶220によってメッセージに講じられる措置を開始し得る、メッセージ受信者情報、メール記憶220のインターネットプロトコル(IP)アドレス、およびメール記憶インタフェース208に対する受信者のメッセージ取り扱いポリシー等の、コールを伴う情報を含んでもよい。
【0090】
メール記憶インタフェース208は、インタフェースコールを受信し、特定のスパムスコアおよび対応する分類のポリシー(例えば、メッセージ受信者に特有のポリシー)に基づいて、再分類されたメッセージに対して作用させる信号をメール記憶220に伝送してもよい。メール記憶220は、信号に応えて、成功、失敗、および/またはエラーメッセージを返してもよい。
【0091】
いくつかの実施形態例では、メッセージに措置を実施するための信号は、メール記憶220内のメッセージに対する動作の実施を起動するために、メール記憶220に連結される、遠隔のネットワーク接続された機械に伝送されてもよい。信号は、代替として、またはさらに、メール記憶220内のメッセージに対する動作の実施を開始するために、ローカル機械上で動作するデスクトップメールプログラムに向けられてもよい。
【0092】
ブロック528で、例示のフロー500は、送達ポリシーに従ってメッセージに対する動作を実施するデータ記憶を含んでもよい。メッセージがメール記憶220に送達された後ではあるが、受信者がメッセージを見る前に、メッセージが分類の変更についてスキャンされる実施形態例では、メール記憶220は、メッセージに措置を講じるコールに応えて、メッセージが、ユーザが最後にログインした時より最近になって到着したかどうかを判定してもよい。そうである場合、メール記憶220(例えば、またはメール記憶220を動作させている機械)は、メール記憶インタフェース208からのコール内に提供される送達ポリシーを使用して、メッセージに措置を講じてもよい。メール記憶220が、メッセージは、ユーザが最後にログインした時より最近になって到着したのではないと判定する場合、メール記憶220は、メール記憶インタフェース208にエラーコードを返してもよい。メール記憶インタフェース208はさらに、メッセージに措置が正常に講じられたか否かによって、メール転送エージェント204に成功または失敗の通知を提供してもよい。
【0093】
図8は、コンピュータシステム800の例示の形態における機械の図式表現を示し、コンピュータシステム800内において、本明細書に記載される方法論のうちの任意の1つ以上を機械に実施させるための一組の命令が実行され得る。代替の実施形態では、機械は、スタンドアロンのデバイスとして動作してもよく、または他の機械に接続されてもよい(例えば、ネットワーク接続される)。ネットワーク接続された配置では、機械は、サーバ−クライアントネットワーク環境におけるサーバまたはクライアント機械の能力内で、またはピアツーピア(または分散型の)ネットワーク環境におけるピア機械として動作してもよい。機械は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブ用機器、ネットワークルータ、スイッチもしくはブリッジ、または、当該機械によって講じられるべき措置を指示する、(順次的に、ないしは別の方法で)一組の命令を実行することができる任意の機械であってもよい。さらに、単一の機械のみが図示されているが、「機械」という用語はまた、個々に、または共同して、本明細書に記載される方法論のうちの任意の1つ以上を実施するための、一組の(または複数の組の)命令を実行する機械の任意の集合を含むようにも解釈されるべきである。
【0094】
例示のコンピュータシステム800は、バス808を介して互いと通信する、プロセッサ804(例えば、中央演算処理装置(CPU)、グラフィック処理装置(GPU)、または両方)と、メインメモリ810と、スタティックメモリ814とを含む。コンピュータシステム800はさらに、ビデオディスプレイ装置802(例えば、液晶ディスプレイ(LCD)または陰極線管(CRT))を含んでもよい。また、コンピュータシステム800は、英数字入力デバイス812(例えば、キーボード)と、カーソル制御デバイス816(例えば、マウス)と、ディスクドライブ装置820と、信号生成デバイス840(例えば、スピーカー)と、ネットワークインタフェースデバイス818とを含む。
【0095】
ディスクドライブ装置820は、本明細書に説明される方法論または機能のうちの任意の1つ以上を実現する、1つ以上の組の命令(例えば、ソフトウェア824)が記憶される、機械可読媒体822を含む。また、ソフトウェア824は、コンピュータシステム800によるそれらの実行中、完全に、または少なくとも部分的に、メインメモリ810内および/またはプロセッサ804内に駐在してもよく、また、メインメモリ810およびプロセッサ804は、機械可読媒体を構成する。
【0096】
ソフトウェア824はさらに、ネットワークインタフェースデバイス818を介して、ネットワーク830をわたって伝送または受信されてもよい。
【0097】
実施形態例では、機械可読媒体822は、単一の媒体として示されているが、「機械可読媒体」という用語は、1つ以上の組の命令を記憶する、単一の媒体または複数の媒体(例えば、集中型もしくは分散型データベース、ならびに/または関連するキャッシュおよびサーバ)を含むと解釈されるべきである。また、「機械可読媒体」という用語は、機械によって実行するための、かつ特許請求される主題の方法論のうちの任意の1つ以上を機械に実施させる、一組の命令を記憶するか、記号化するか、または保持することができる、任意の媒体を含むと解釈されるべきである。したがって、「機械可読媒体」という用語は、固体メモリ、光学媒体、および磁気媒体を含むが、これらに限定されないと解釈されるべきである。
【0098】
以上のように、データを再評価するための方法およびシステムが説明されてきた。特許請求される主題は、具体的な実施形態例を参照して説明されてきたが、特許請求されるものの広義の趣旨および範囲から逸脱することなく、これらの実施形態に様々な修正ならびに変更が行われてもよいことが明らかであろう。したがって、明細書および図面は、制限的意味というよりはむしろ、説明のための例示と見なされるべきである。
【0099】
本開示の要約は、読者が技術的開示の本質を素早く解明することを可能にする要約を要求する、37 C.F.R.§1.72(b)に従うように提供される。これは、特許請求の範囲もしくは意味を解釈または限定するために使用されないと理解して、提出される。さらに、前述の詳細な説明においては、本開示を合理化するために、様々な機構が単一の実施形態内に一緒にグループ化されていることが分かる。本開示の方法は、特許請求される実施形態が、各請求項内に明確に記載されるよりも多くの機構を必要とするという意図を反映していると解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、発明の主題は、単一の開示される実施形態のすべての機構よりも少ない機構にある。したがって、以下の特許請求の範囲は、これによって、詳細な説明に組み込まれ、各請求項は、別個の実施形態として自立している。

【特許請求の範囲】
【請求項1】
方法であって、
メッセージの少なくとも一部分の表象を生成することと、
該表象と関連付けられる第1の特性にアクセスすることと、
該表象および該第1の特性を使用して、該メッセージを分類することと、
該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始することと、
該メッセージへの該第1のポリシーの適用の後で、該表象と関連付けられる第2の特性にアクセスすることと、
該表象および該第2の特性に基づき、該メッセージを再分類することと、
該メッセージの再分類に基づき、該メッセージへのさらなるポリシー規則の適用を開始することと
を包含する、方法。
【請求項2】
前記メッセージの少なくとも一部分の前記表象を記憶させることと、
除去パラメータに基づき、記憶領域から該記憶された表象を除去することと
をさらに包含し、前記メッセージの再分類は、該記憶領域からの該記憶された表象の除去の前に、該メッセージを再分類することを含む、請求項1に記載の方法。
【請求項3】
前記除去パラメータは、時間間隔を備え、前記記憶された表象の除去は、該時間間隔が満了した後で該記憶された表象を除去することを包含する、請求項2に記載の方法。
【請求項4】
前記表象および前記第2の特性に基づく前記メッセージの再分類は、
前記第1の特性を該第2の特性と置換することと、
該第1の特性の置換が前記メッセージの分類を変更することを判定することと
を包含する、請求項1に記載の方法。
【請求項5】
前記メッセージの再分類は、前記第2の特性が前記表象と関連付けられることを判定することを含む、請求項1に記載の方法。
【請求項6】
前記メッセージの少なくとも一部分の前記表象の生成は、該メッセージの部分を表すハッシュ値を生成することを含み、該メッセージの部分は、該メッセージの属性であり、
前記第2の特性は、該ハッシュ値と共に受信され、
該第2の特性が該表象と関連付けられることの前記判定は、データ構造にアクセスすることによって、該第2の特性と共に受信される該ハッシュ値が該メッセージの部分を表すハッシュ値に対応することを判定することを含む、請求項5に記載の方法。
【請求項7】
前記メッセージへのさらなるポリシー規則の適用の開始は、前記再分類されたメッセージの分類を示す通知を受信することと、該メッセージの再分類に基づき、開始すべき該ポリシー規則と関連付けられる動作を選択することとを含む、請求項1に記載の方法。
【請求項8】
前記さらなるポリシー規則の適用の開始は、メッセージ記憶内における前記メッセージの記憶を開始することを含む、請求項1に記載の方法。
【請求項9】
前記さらなるポリシー規則の適用の開始は、前記メッセージ記憶内における前記メッセージに対する動作の実施を開始することを含む、請求項8に記載の方法。
【請求項10】
前記メッセージへのさらなるポリシー規則の適用の開始は、ネットワークを介して、メッセージ記憶に連結されているネットワーク接続された機械に信号を伝送することによって、メッセージ記憶内の該メッセージに対する動作の実施を開始することを含む、請求項1に記載の方法。
【請求項11】
前記ネットワーク接続された機械への前記信号は、インタフェースコールを備え、該信号の前記伝送は、該ネットワーク接続された機械に対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも1つを起動させるものである、請求項10に記載の方法。
【請求項12】
前記メッセージへのさらなるポリシー規則の適用の開始は、ローカル機械に対して信号を発行することによって、メッセージ記憶内のメッセージに対する動作の実施を開始することを含む、請求項1に記載の方法。
【請求項13】
前記ローカル機械に対する前記信号の発行は、該ローカル機械上で動作するアプリケーションに対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも1つを起動させるものである、請求項12に記載の方法。
【請求項14】
前記ローカル機械上で動作するアプリケーションは、デスクトップメールプログラムである、請求項13記載の方法。
【請求項15】
システムであって、
メッセージ記憶に向けられたメッセージを処理するための転送エージェントであって、該メッセージ記憶に通信可能に連結されている転送エージェントと、
該転送エージェントに通信可能に連結されているメッセージクラシファイアであって、該メッセージクラシファイアは、
該メッセージの少なくとも一部分の表象を生成し、
該表象と関連付けられる第1の特性にアクセスし、
該表象および該第1の特性を使用して、該メッセージを分類する、メッセージクラシファイアと、
該転送エージェントに通信可能に連結されているメッセージリクラシファイアであって、該メッセージリクラシファイアは、
該メッセージ記憶への該メッセージの送達の後で、該表象と関連付けられる第2の特性にアクセスし、
該表象および該第2の特性に基づき、該メッセージを再分類する、メッセージリクラシファイアと
を備え、
該転送エージェントは、該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始し、該メッセージの再分類に基づき、該メッセージへのさらなるポリシー規則の適用を開始するものである、システム。
【請求項16】
前記メッセージの少なくとも一部分の表象をメッセージ記憶領域内に記憶させるメッセージトラッカと、
除去パラメータに基づき、メッセージ記憶領域から該記憶された表象を除去するメッセージ除去モジュールと
をさらに備え、前記メッセージリクラシファイアは、該メッセージ除去モジュールが該記憶された表象を除去する前に、該メッセージを再分類するものである、請求項15に記載のシステム。
【請求項17】
前記除去パラメータは、時間間隔と関連付けられ、前記メッセージ除去モジュールは、該時間間隔の満了時に、前記記憶された表象を除去するものである、請求項16に記載のシステム。
【請求項18】
前記メッセージリクラシファイアは、前記第1の特性を前記第2の特性と置換し、該第1の特性の置換が前記メッセージの分類を変更することを判定し、該判定に基づき、該メッセージをさらに再分類するものである、請求項15に記載のシステム。
【請求項19】
前記メッセージリクラシファイアは、前記メッセージの再分類の前に、前記アクセスされた第2の特性が前記表象と関連付けられることを判定するものである、請求項15に記載のシステム。
【請求項20】
前記メッセージの部分は、該メッセージの属性を含み、前記メッセージクラシファイアは、該メッセージの属性を表すハッシュ値を生成するものであり、前記メッセージリクラシファイアは、該ハッシュ値と共に前記第2の特性を受信し、該受信された第2の特性に含まれる該ハッシュ値が、該メッセージの部分を表すハッシュ値であることを判定するために、記憶領域にアクセスするものである、請求項19に記載のシステム。
【請求項21】
前記メッセージリクラシファイアは、前記転送エージェントに対し、前記再分類されたメッセージの新しい分類を示す通知を提供するものであり、該転送エージェントは、該新しい分類に基づき、前記さらなるポリシー規則の適用と関連付けられる、開始すべき動作を選択するものである、請求項15に記載のシステム。
【請求項22】
前記転送エージェントは、メッセージ記憶内の前記メッセージに対し、前記さらなるポリシー規則の適用と関連付けられる動作の実施を開始するために、ネットワークを介して、該メッセージ記憶に連結されているネットワーク接続された機械に向けられる信号を伝送するものである、請求項15に記載のシステム。
【請求項23】
前記ネットワーク接続された機械への前記信号は、該ネットワーク接続された機械に対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも1つを起動させるように、インタフェースコールを提供する、請求項22に記載のシステム。
【請求項24】
前記転送エージェントは、メッセージ記憶内の前記メッセージに対し、前記さらなるポリシー規則の適用と関連付けられる動作の実施を開始するために、ローカル機械に向けられる信号を発行するものである、請求項15に記載のシステム。
【請求項25】
前記ローカル機械への前記信号は、該ローカル機械上で動作するアプリケーションに対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも1つを行わせるものである、請求項24に記載のシステム。
【請求項26】
前記ローカル機械上で動作するアプリケーションは、デスクトップメールプログラムである、請求項25に記載のシステム。
【請求項27】
複数の命令を含む機械可読媒体であって、該複数の命令は、機械によって実行される場合に、該機械に複数の動作を実施させ、該複数の動作は、
メッセージを受信することと、
該メッセージの属性の表象を生成することと、
該表象と関連付けられる第1のスコアにアクセスすることと、
該表象および該第1のスコアを使用して、該メッセージを分類することと、
該メッセージの分類に基づき、該メッセージをメッセージ記憶に送達することと、
該メッセージ記憶への該メッセージの送達の後で、該表象と関連付けられる第2のスコアを処理することと、
該表象および該第2のスコアに基づき、該メッセージを再分類することと、
該メッセージの再分類に基づき、該メッセージ記憶内の該メッセージに対する動作の実施を開始することと
を包含する、機械可読媒体。
【請求項28】
前記表象および前記第2のスコアに基づく前記メッセージの再分類は、
前記第1のスコアを該第2のスコアと置換することと、
該第1のスコアの置換が該メッセージの前記分類を変更することを判定することと
を包含する、請求項27に記載の機械可読媒体。
【請求項29】
前記メッセージの再分類は、受信された前記第2のスコアが前記表象と関連付けられることを判定することを含む、請求項27に記載の機械可読媒体。
【請求項30】
前記メッセージに対する動作の実施を開始することは、ネットワークを介して、メッセージ記憶に連結されているネットワーク接続された機械に信号を伝送することによって、該メッセージ記憶内の該メッセージに対する動作の実施を開始することを含む、請求項27に記載の機械可読媒体。
【請求項31】
前記動作の実施を開始することは、ローカル機械に対して信号を発行することによって、前記メッセージ記憶内の前記メッセージに対する動作の実施を開始することを含む、請求項27に記載の機械可読媒体。
【請求項32】
システムであって、
メッセージの少なくとも一部分の表象を生成する生成手段と、
該表象と関連付けられる第1の特性にアクセスする第1のアクセス手段と、
該表象および該第1の特性を使用して該メッセージを分類する分類手段と、
該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始する第1の開始手段と、
該メッセージの分類の後で、該表象と関連付けられる第2の特性にアクセスする第2のアクセス手段と、
該表象および該第2の特性に基づき、該メッセージを再分類する再分類手段と、
該メッセージの再分類に基づき、該メッセージへのポリシー規則の適用を開始する第2の開始手段と
を備えている、システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2011−526044(P2011−526044A)
【公表日】平成23年9月29日(2011.9.29)
【国際特許分類】
【出願番号】特願2011−516518(P2011−516518)
【出願日】平成21年6月23日(2009.6.23)
【国際出願番号】PCT/US2009/048246
【国際公開番号】WO2010/008825
【国際公開日】平成22年1月21日(2010.1.21)
【出願人】(506344309)クラウドマーク インコーポレイテッド (2)
【Fターム(参考)】