(57)【要約】方法およびシステムは、再分類に基づき、送達されたメッセージに措置を講じ得るように、送達されたメッセージを再分類する。一実施形態例では、メール転送エージェントは、メール記憶に向けられるメッセージを受信し得、メッセージクラシファイアは、メッセージの少なくとも一部分の表象を生成し、メッセージの表象および表象と関連付けられる特性を使用してメッセージを分類し得る。いくつかの実施形態例では、メール転送エージェントは、メッセージの分類に基づきメッセージをメッセージ記憶に送達し得る。メール転送エージェントがメッセージをメッセージ記憶に送達した後で、メッセージリクラシファイアは、表象と関連付けられるさらなる特性にアクセスし、表象および第２の特性に基づきメッセージを再分類し得る。一実施形態例では、メール転送エージェントは、メッセージの再分類に基づきメッセージ記憶内のメッセージに対して動作の実施を開始し得る。
2011526044.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、
メッセージの少なくとも一部分の表象を生成することと、
該表象と関連付けられる第１の特性にアクセスすることと、
該表象および該第１の特性を使用して、該メッセージを分類することと、
該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始することと、
該メッセージへの該第１のポリシーの適用の後で、該表象と関連付けられる第２の特性にアクセスすることと、
該表象および該第２の特性に基づき、該メッセージを再分類することと、
該メッセージの再分類に基づき、該メッセージへのさらなるポリシー規則の適用を開始することと
を包含する、方法。
【請求項２】
前記メッセージの少なくとも一部分の前記表象を記憶させることと、
除去パラメータに基づき、記憶領域から該記憶された表象を除去することと
をさらに包含し、前記メッセージの再分類は、該記憶領域からの該記憶された表象の除去の前に、該メッセージを再分類することを含む、請求項１に記載の方法。
【請求項３】
前記除去パラメータは、時間間隔を備え、前記記憶された表象の除去は、該時間間隔が満了した後で該記憶された表象を除去することを包含する、請求項２に記載の方法。
【請求項４】
前記表象および前記第２の特性に基づく前記メッセージの再分類は、
前記第１の特性を該第２の特性と置換することと、
該第１の特性の置換が前記メッセージの分類を変更することを判定することと
を包含する、請求項１に記載の方法。
【請求項５】
前記メッセージの再分類は、前記第２の特性が前記表象と関連付けられることを判定することを含む、請求項１に記載の方法。
【請求項６】
前記メッセージの少なくとも一部分の前記表象の生成は、該メッセージの部分を表すハッシュ値を生成することを含み、該メッセージの部分は、該メッセージの属性であり、
前記第２の特性は、該ハッシュ値と共に受信され、
該第２の特性が該表象と関連付けられることの前記判定は、データ構造にアクセスすることによって、該第２の特性と共に受信される該ハッシュ値が該メッセージの部分を表すハッシュ値に対応することを判定することを含む、請求項５に記載の方法。
【請求項７】
前記メッセージへのさらなるポリシー規則の適用の開始は、前記再分類されたメッセージの分類を示す通知を受信することと、該メッセージの再分類に基づき、開始すべき該ポリシー規則と関連付けられる動作を選択することとを含む、請求項１に記載の方法。
【請求項８】
前記さらなるポリシー規則の適用の開始は、メッセージ記憶内における前記メッセージの記憶を開始することを含む、請求項１に記載の方法。
【請求項９】
前記さらなるポリシー規則の適用の開始は、前記メッセージ記憶内における前記メッセージに対する動作の実施を開始することを含む、請求項８に記載の方法。
【請求項１０】
前記メッセージへのさらなるポリシー規則の適用の開始は、ネットワークを介して、メッセージ記憶に連結されているネットワーク接続された機械に信号を伝送することによって、メッセージ記憶内の該メッセージに対する動作の実施を開始することを含む、請求項１に記載の方法。
【請求項１１】
前記ネットワーク接続された機械への前記信号は、インタフェースコールを備え、該信号の前記伝送は、該ネットワーク接続された機械に対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも１つを起動させるものである、請求項１０に記載の方法。
【請求項１２】
前記メッセージへのさらなるポリシー規則の適用の開始は、ローカル機械に対して信号を発行することによって、メッセージ記憶内のメッセージに対する動作の実施を開始することを含む、請求項１に記載の方法。
【請求項１３】
前記ローカル機械に対する前記信号の発行は、該ローカル機械上で動作するアプリケーションに対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも１つを起動させるものである、請求項１２に記載の方法。
【請求項１４】
前記ローカル機械上で動作するアプリケーションは、デスクトップメールプログラムである、請求項１３記載の方法。
【請求項１５】
システムであって、
メッセージ記憶に向けられたメッセージを処理するための転送エージェントであって、該メッセージ記憶に通信可能に連結されている転送エージェントと、
該転送エージェントに通信可能に連結されているメッセージクラシファイアであって、該メッセージクラシファイアは、
該メッセージの少なくとも一部分の表象を生成し、
該表象と関連付けられる第１の特性にアクセスし、
該表象および該第１の特性を使用して、該メッセージを分類する、メッセージクラシファイアと、
該転送エージェントに通信可能に連結されているメッセージリクラシファイアであって、該メッセージリクラシファイアは、
該メッセージ記憶への該メッセージの送達の後で、該表象と関連付けられる第２の特性にアクセスし、
該表象および該第２の特性に基づき、該メッセージを再分類する、メッセージリクラシファイアと
を備え、
該転送エージェントは、該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始し、該メッセージの再分類に基づき、該メッセージへのさらなるポリシー規則の適用を開始するものである、システム。
【請求項１６】
前記メッセージの少なくとも一部分の表象をメッセージ記憶領域内に記憶させるメッセージトラッカと、
除去パラメータに基づき、メッセージ記憶領域から該記憶された表象を除去するメッセージ除去モジュールと
をさらに備え、前記メッセージリクラシファイアは、該メッセージ除去モジュールが該記憶された表象を除去する前に、該メッセージを再分類するものである、請求項１５に記載のシステム。
【請求項１７】
前記除去パラメータは、時間間隔と関連付けられ、前記メッセージ除去モジュールは、該時間間隔の満了時に、前記記憶された表象を除去するものである、請求項１６に記載のシステム。
【請求項１８】
前記メッセージリクラシファイアは、前記第１の特性を前記第２の特性と置換し、該第１の特性の置換が前記メッセージの分類を変更することを判定し、該判定に基づき、該メッセージをさらに再分類するものである、請求項１５に記載のシステム。
【請求項１９】
前記メッセージリクラシファイアは、前記メッセージの再分類の前に、前記アクセスされた第２の特性が前記表象と関連付けられることを判定するものである、請求項１５に記載のシステム。
【請求項２０】
前記メッセージの部分は、該メッセージの属性を含み、前記メッセージクラシファイアは、該メッセージの属性を表すハッシュ値を生成するものであり、前記メッセージリクラシファイアは、該ハッシュ値と共に前記第２の特性を受信し、該受信された第２の特性に含まれる該ハッシュ値が、該メッセージの部分を表すハッシュ値であることを判定するために、記憶領域にアクセスするものである、請求項１９に記載のシステム。
【請求項２１】
前記メッセージリクラシファイアは、前記転送エージェントに対し、前記再分類されたメッセージの新しい分類を示す通知を提供するものであり、該転送エージェントは、該新しい分類に基づき、前記さらなるポリシー規則の適用と関連付けられる、開始すべき動作を選択するものである、請求項１５に記載のシステム。
【請求項２２】
前記転送エージェントは、メッセージ記憶内の前記メッセージに対し、前記さらなるポリシー規則の適用と関連付けられる動作の実施を開始するために、ネットワークを介して、該メッセージ記憶に連結されているネットワーク接続された機械に向けられる信号を伝送するものである、請求項１５に記載のシステム。
【請求項２３】
前記ネットワーク接続された機械への前記信号は、該ネットワーク接続された機械に対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも１つを起動させるように、インタフェースコールを提供する、請求項２２に記載のシステム。
【請求項２４】
前記転送エージェントは、メッセージ記憶内の前記メッセージに対し、前記さらなるポリシー規則の適用と関連付けられる動作の実施を開始するために、ローカル機械に向けられる信号を発行するものである、請求項１５に記載のシステム。
【請求項２５】
前記ローカル機械への前記信号は、該ローカル機械上で動作するアプリケーションに対し、前記メッセージを前記メッセージ記憶内の記憶位置に移動させること、および該メッセージ記憶内の該記憶位置から該メッセージを削除することのうちの少なくとも１つを行わせるものである、請求項２４に記載のシステム。
【請求項２６】
前記ローカル機械上で動作するアプリケーションは、デスクトップメールプログラムである、請求項２５に記載のシステム。
【請求項２７】
複数の命令を含む機械可読媒体であって、該複数の命令は、機械によって実行される場合に、該機械に複数の動作を実施させ、該複数の動作は、
メッセージを受信することと、
該メッセージの属性の表象を生成することと、
該表象と関連付けられる第１のスコアにアクセスすることと、
該表象および該第１のスコアを使用して、該メッセージを分類することと、
該メッセージの分類に基づき、該メッセージをメッセージ記憶に送達することと、
該メッセージ記憶への該メッセージの送達の後で、該表象と関連付けられる第２のスコアを処理することと、
該表象および該第２のスコアに基づき、該メッセージを再分類することと、
該メッセージの再分類に基づき、該メッセージ記憶内の該メッセージに対する動作の実施を開始することと
を包含する、機械可読媒体。
【請求項２８】
前記表象および前記第２のスコアに基づく前記メッセージの再分類は、
前記第１のスコアを該第２のスコアと置換することと、
該第１のスコアの置換が該メッセージの前記分類を変更することを判定することと
を包含する、請求項２７に記載の機械可読媒体。
【請求項２９】
前記メッセージの再分類は、受信された前記第２のスコアが前記表象と関連付けられることを判定することを含む、請求項２７に記載の機械可読媒体。
【請求項３０】
前記メッセージに対する動作の実施を開始することは、ネットワークを介して、メッセージ記憶に連結されているネットワーク接続された機械に信号を伝送することによって、該メッセージ記憶内の該メッセージに対する動作の実施を開始することを含む、請求項２７に記載の機械可読媒体。
【請求項３１】
前記動作の実施を開始することは、ローカル機械に対して信号を発行することによって、前記メッセージ記憶内の前記メッセージに対する動作の実施を開始することを含む、請求項２７に記載の機械可読媒体。
【請求項３２】
システムであって、
メッセージの少なくとも一部分の表象を生成する生成手段と、
該表象と関連付けられる第１の特性にアクセスする第１のアクセス手段と、
該表象および該第１の特性を使用して該メッセージを分類する分類手段と、
該メッセージの分類に基づき、該メッセージへのポリシー規則の適用を開始する第１の開始手段と、
該メッセージの分類の後で、該表象と関連付けられる第２の特性にアクセスする第２のアクセス手段と、
該表象および該第２の特性に基づき、該メッセージを再分類する再分類手段と、
該メッセージの再分類に基づき、該メッセージへのポリシー規則の適用を開始する第２の開始手段と
を備えている、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（優先権の主張）
本出願は、２００８年６月２３日出願の米国仮出願第６１／１３２，８８７号の優先権の利益を主張し、当該仮出願は、本明細書において参照により援用される。
【０００２】
（技術分野）
主題は、デジタル通信システムの分野に関する。限定の目的ではないが、より具体的には、主張される主題は、ネットワークを介して通信され得るデータを再評価するための技術を開示する。
【背景技術】
【０００３】
（背景）
インターネットおよび携帯電話ネットワーク等の現代の遠隔通信技術は、人々が、電子メール、インスタントメッセージング、ショートメッセージングサービス（ＳＭＳ）テキストメッセージ、マルチメディアメッセージングサービス（ＭＭＳ）メッセージ、および多数の他のデジタルメッセージング通信方法を含む、通信の方法を使用できるようにする。
【０００４】
一部の人々、および人々によって作成されたプログラムは、上記で参照された通信方法を使用して、膨大な未承諾の、および／または悪質なメッセージを受信被害者に送達する。未承諾のメッセージの一種は、一般に「スパム」と称される、未承諾広告メッセージである。スパムフィルタは、未承諾のメッセージまたはスパムがシステム資源に負荷を掛け、場合によってはメッセージ受信者を邪魔するのを防止するように、未承諾のメッセージを除外するために、メッセージングシステムと協働するように開発された。
【発明の概要】
【課題を解決するための手段】
【０００５】
データを再評価する方法例およびシステム例を説明する。以下の記載では、説明を目的として、実施形態例の完全な理解を提供するために、数多くの具体的な詳細が規定される。しかしながら、主張される主題は、これらの具体的な詳細を有さずに実施され得ることが当業者に明らかであろう。
【０００６】
この詳細な説明は、とりわけ、更新された分類に基づき、メッセージに措置を講じる（例えば、取り消す、除去する、削除する、再ファイルする、遮断する、および／または他の措置を講じる）ことができるように、偽の、期限切れの、または変更された分類に基づき、措置が講じられた（例えば、送達された、掲示された、コピーされた、転送された、ファイルされた、および／または他の措置が講じられた）メッセージを識別し、再分類できるようにする、技術の実施例を開示する。開示される技術は、任意の分類に適用されてもよいこと、および技術例は、数多くの蓄積交換通信環境に採用されてもよいことが留意され得る。
【０００７】
電子メール環境の一例では、メールサーバ（例えば、メール転送エージェントまたはウェブメールサーバ）は、電子メールフィルタによってメッセージが正当なもの（ｌｅｇｉｔｉｍａｔｅ）（以後、「正当なもの（ｌｅｇｉｔ）」）に分類されたことを通知された後、記憶領域内の電子メールメッセージが受信者によってアクセスされることを可能にしてもよい。実施形態例では、電子メールフィルタは、メッセージを正当なものとした分類が偽陽性分類であったことを判定するコンポーネント（例えば、ソフトウェアおよび／またはハードウェアコンポーネント）を含んでもよい。電子メールフィルタコンポーネントはさらに、メールサーバに、メッセージが正当なものの分類からスパムの分類に再分類されるべきであることを通知してもよい。メッセージがスパムであると通知されたことで、メールサーバは、記憶領域内の電子メールメッセージに対して実施されるべき措置（例えば、電子メールメッセージの削除）を生じる措置（例えば、削除コマンド）を開始してもよい。このように、通常、記憶領域から電子メールメッセージにアクセスする可能性のある、電子メールメッセージの受信者は、スパム電子メールを受信することから遮蔽され得る。
【０００８】
メッセージは、通信プロセス中の異なる場面で、分類の変更について監視されてもよい。例えば、上記の電子メール環境の例では、メッセージは、メッセージがメール記憶に送達された後ではあるが、メッセージ受信者がメッセージにアクセスする前、および／またはメッセージを読む前において、分類の変更がスキャンされていると記述される。代替として、またはさらに、メッセージ分類の変更に対するスキャンは、メッセージ受信者のメールサーバへのログイン時（例えば、メール記憶ログイン）、および／またはユーザがメッセージをスキャンすることを具体的に要求する度に行われてもよい。
【図面の簡単な説明】
【０００９】
いくつかの実施形態は、添付の図面の図中において、限定ではなく例示として図示される。
【図１】図１は、例示の実施形態に従う、データ通信ネットワークを図示するブロック図である。
【図２】図２は、例示の実施形態に従う、メッセージサーバと、メール記憶とを含む、メッセージネットワーク例を図示するブロック図である。
【図３】図３は、例示の実施形態に従う、メッセージとメッセージ関連値との間の関連を図示するテーブルである。
【図４】図４は、例示の実施形態に従う、フィンガープリントと様々なフィンガープリント関連値との間の関連を図示するテーブルである。
【図５】図５は、例示の実施形態に従う、ポリシー施行フローを図示する相互作用フロー図である。
【図６】図６は、例示の実施形態に従う、メッセージの表象を記録する方法を図示するフロー図である。
【図７】図７は、例示の実施形態に従う、メッセージを再評価する例示の方法を図示するフロー図である。
【図８】図８は、例示の実施形態に従う、コンピュータシステムの形態例における機械の図式表現を示す。
【発明を実施するための形態】
【００１０】
（詳細な説明）
本明細書に開示される実施形態例の実践を通して、データ分類に関連する精度レベルは、比較的に高められてもよい。それゆえ、データに対して施行されるポリシーがデータ分類に基づく場合、ポリシーの実効性は、比較的に改善され得る。
【００１１】
図１は、例示の実施形態に従う、データ通信ネットワーク１００を図示するブロック図である。データ通信ネットワーク１００は、ネットワークノード間でのデジタルデータの通信をサポートしてもよく、ノードによるデータの受信の前および／または後で、データ送達ポリシーを施行することをさらにサポートしてもよい。
【００１２】
データ通信ネットワーク１００は、伝送媒体１０３およびネットワーク１０１を介して互いに連結される、評価モジュール１０２と、データ送達モジュール１１０と、ユーザ機械１１２および１１６と、データ記憶モジュール１１４と、評価データ更新モジュール１１８とを含むように示されている。
【００１３】
本開示の目的では、通信は、発信元から目的地へのデータの通信を含む。データの通信は、一通および／または複数のメッセージの一部またはすべてを通信することを含み得、本明細書においてそのように参照され得る。メッセージは、通信の対象を含んでもよい。
【００１４】
実施形態例では、メッセージには、電子メール、インスタントメッセージ、ショートメッセージサービス（ＳＭＳ）メッセージ、マルチメディアサービス（ＭＭＳ）メッセージ、ウェブページ内容（例えば、ブログの掲示またはウェブメール）、ユーザ生成内容メッセージ、ボイスメールメッセージ、ビデオメッセージ、図形メッセージ、または通信の任意の他のデジタルオブジェクトを含み得るが、これらに限定されない。
【００１５】
通信の発信元および／または目的地は、ユーザと関連付けられてもよい。本明細書で使用される場合、ユーザには、ユーザ機械の人間による使用、回路等のハードウェア、ソフトウェア等の命令、および／またはハードウェアと命令との組み合わせを含み得る。
【００１６】
ユーザ機械１１２および１１６には、ネットワーク１０１を介してデータ（例えば、メッセージ）を伝送および／もしくは受信する、任意のネットワーク接続された機械またはデバイスを含み得る。ユーザ機械１１２および１１６には、任意のネットワーク接続されたデバイスを含み得るが、いくつかのネットワークデバイス例には、デスクトップコンピュータ、携帯デバイス、サーバ、大容量記憶デバイス、または任意の他の機械のうちの１つ以上を含み得る。
【００１７】
例示のデータ送達モジュール１１０は、データを受信し、データに対して送達ポリシーを施行し、送達ポリシーが許可する場合にデータを目的地に送達するものである。いくつかの実施形態例では、データ送達ポリシーは、データ送達モジュール１１０が受信されたメッセージをデータ記憶モジュール１１４にルーティングすることを許可してもよく、メッセージは、ユーザ機械１１６のユーザ等の受信者がアクセス可能な状態にされてもよい。代替として、またはさらに、データ送達モジュール１１０は、受信されたメッセージをユーザ機械１１６にルーティングしてもよく、機械の受信者ユーザは、メッセージにアクセスしてもよい。データ送達モジュール１１０が受信および送達するメッセージの種類には、上記で参照された任意の例のメッセージの種類を含み得るが、これらに限定されないことが留意され得る。
【００１８】
図１は、ネットワーク接続された機械および／またはモジュールの間の通信に関する凡例１１９を含んで示されている。矢印１２０、１２２、１２６、１２８、１３０、および１３２、ならびに１３４は、通信のハイレベルの経路の例を示し、必ずしもネットワーク接続されたコンポーネント間の直接経路を示すわけではない。例えば、通信は、図１に示されていない、中間のネットワーク接続されたコンポーネントを通って案内されてもよい。
【００１９】
通信のフロー例では、ユーザ機械１１２の送信者によってユーザ機械１１６の受信者に向けられるメッセージは、矢印１２０によって示されるように、最初に、データ送達モジュール１１０によって受信されてもよい。メッセージは、矢印１２２によって示されるように、評価のために、評価モジュール１０２に転送されてもよく、次いで、矢印１２２によって示されるように、データ送達モジュール１１０が、評価モジュール１０２によって提供される特定の情報を用いて、メッセージはユーザ機械１１６に到達することを許可されるべきであると判定する場合にのみ、矢印１２４によって示されるように、データ記憶モジュール１１４内に記憶されてもよい。
【００２０】
データ記憶モジュール１１４は、データを受信し、データを記憶し、データに対する操作を実施し、データへのアクセスを許可するものである。
【００２１】
実施形態例では、データ記憶モジュール１１４は、デスクトップコンピュータによって実行または動作されてもよく、デスクトップコンピュータのユーザは、デスクトップコンピュータによって実行されるメッセージ閲覧アプリケーションを介して、データ記憶モジュール１１４によって記憶される電子メールメッセージにアクセスしてもよい。
【００２２】
いくつかの実施形態例では、データ記憶モジュール１１４は、受信者が、ユーザ機械１１６上で動作するメッセージ閲覧アプリケーションを介して、ネットワーク１０１をわたってメッセージにアクセスできるようにする、遠隔メール記憶（例えば、メッセージ受信者に対して遠隔である）として使用されてもよい。
【００２３】
代替として、またはさらに、データ記憶モジュール１１４は、ユーザ機械１１６上で動作するブラウザにウェブページを供給する、ウェブサーバによって動作されてもよい。ブラウザに供給されるウェブページは、ユーザ機械１１６のユーザに向けられる１つ以上のウェブメールメッセージを含んでもよい。いくつかの実施形態例では、ブラウザに供給されるウェブページは、ユーザ機械１１６のユーザに向けられる１つ以上のメッセージを含む、ブログ入力または壁掲示（ｗａｌｌ  ｐｏｓｔｉｎｇ）（例えば、ソーシャルネットワーキングページに掲示される）等のユーザ生成内容を含んでもよい。
【００２４】
通信のさらなるフロー例では、ユーザ機械１１２の送信者によってユーザ機械１１６の受信者に向けられるメッセージは、矢印１２６によって示されるように、データ記憶モジュール１１４内に記憶される。メッセージは、矢印１２８および１３０によって示されるように、評価のために、評価モジュール１０２に転送されてもよい。記憶されたメッセージは、矢印１２８および１３０によって示されるように、データ記憶モジュール１１４が、評価モジュール１０２によって提供される特定の情報を用いて、メッセージはユーザ機械１１６の受信者がアクセスできるようにされるべきであると判定した場合にのみ、矢印１３２によって示されるように、意図される受信者によってアクセスされてもよい。
【００２５】
評価モジュール１０２は、データエバリュエータ１０６と、データトラッカ１０４と、データリエバリュエータ１０８とを含むように示されている。データエバリュエータ１０６、データトラッカ１０４、およびデータリエバリュエータ１０８の機能性は、以下により詳細に記載される。
【００２６】
上記で紹介された評価モジュール１０２は、送信者からデータ（例えば、単数または複数のメッセージ）を受信し、データが意図される受信者に到達することを許可されるべきかどうかを判定するために（例えば、データ送達モジュール１１０またはデータ記憶モジュール１１４によって）使用され得る、データに関する情報を提供するものである。様々な実施形態例では、評価モジュール１０２は、メッセージが受信者に利用可能とされる前にデータを評価するために、データエバリュエータ１０６を採用してもよく、データが受信者に利用可能（例えば、メッセージは、いったんデータ記憶またはユーザ機械に送達されると、利用可能であってもよい）とされた後で、データを再評価するために、データトラッカ１０４およびデータリエバリュエータ１０８をさらに採用してもよい。
【００２７】
１つ以上の機械は、データ送達モジュール１１０と一緒に、評価モジュール１０２を完全に、または部分的に実装してもよいことが留意され得る。例えば、データ送達モジュール１１０を動作させる１つ以上の機械は、データトラッカ１０４、データエバリュエータ１０６、および／またはデータリエバリュエータ１０８の機能性のいくつか、またはすべてを提供してもよい。代替として、またはさらに、１つ以上の機械は、データ記憶モジュール１１４と共に、評価モジュール１０２を完全に、または部分的に実装してもよい。
【００２８】
データトラッカ１０４、データエバリュエータ１０６、およびデータリエバリュエータ１０８は、すべてが同一の機械によって実装されなくてもよいことがさらに留意され得る。例えば、データエバリュエータ１０６は、データ送達モジュール１１０を有する単数または複数の機械によって実装されてもよく、データトラッカ１０４および／またはデータリエバリュエータ１０８は、データ記憶モジュール１１４を有する、単数または複数の異なる機械によって実装されてもよい。もちろん、当該技術分野において通常の技術を有する者は、主張される対象の範囲から逸脱することなく、数多くの他の構成が採用され得ることを認識するであろう。
【００２９】
評価モジュール１０２内に示されるデータエバリュエータ１０６は、データを受信し、受信されたデータから、どのようにデータを処理するかを決定するために使用され得るデータの性質に関する情報を入手するものである。実施形態例では、受信されたメッセージの分類を増進するために、データエバリュエータ１０６は、メッセージを表すのに、メッセージ（例えば、メッセージ内容）から入手された情報を使用してもよい。メッセージの表象は、メッセージ内のすべての内容、メッセージ内の内容の一部分、またはメッセージ内の内容の複数の部分に基づいてもよい。メッセージの表象は、続いて、メッセージを分類するために使用されてもよい。
【００３０】
メッセージの表象例は、メッセージのプロパティまたは属性と関連付けられ、およびメッセージの性質または分類を示し得る、データ（例えば、文字列）を含んでもよい。表象は、表象とは別個に記憶され得る、完全なメッセージを表すため、またはその代役を務めるために使用されてもよい。メッセージのプロパティ例または属性例には、メッセージのヘッダ内の情報、送信者識別子、メッセージの件名内の内容、メッセージ内に見出される特定のキーワード、メッセージが送信された時間、およびメッセージから抽出され得る、またはメッセージと関連付けられる他の情報を含み得る。メッセージの表象は、それぞれがメッセージの異なる属性と関連付けられる、複数の文字列を含んでもよい。本明細書に説明される様々な実施形態例では、メッセージの表象は、メッセージの一部分をアルゴリズム（例えば、ハッシュ関数）で処理することによってもたらされる値（例えば、ハッシュ値）を含んでもよい。
【００３１】
メッセージの表象は、メッセージの既知の特性と関連付けられてもよい。メッセージの分類は、メッセージの既知の特性から判定されてもよい。例えば、「今すぐ購入！」および「驚きの取引！」というテキストを含むメッセージ（例えば、メッセージ属性）は、それぞれ、「今すぐ購入！」および「驚きの取引！」という文字列によって表象されてもよく、またはテキストに対してハッシュ関数（単数または複数）を処理することによってもたらされるハッシュ値によって表象されてもよい。「今すぐ購入！」および「驚きの取引！」という文字列、またはそのそれぞれのハッシュ値と関連付けられることが既知の特性は、「無礼な広告」という特性を含んでもよい。いくつかの実施形態例では、データエバリュエータによって施行される規則は、「無礼な広告」という特性を伴うメッセージは、「未承諾のメッセージ」として分類されるべきであるということを規定し得る。いくつかの実施形態例では、一特性は、メッセージの分類の判定において、別の特性より多くの、またはより少ないウェートが与えられてもよい。いくつかのメッセージ属性は、新しいウイルスまたはフィッシング詐欺攻撃と関連付けられてもよく、そのようなメッセージは、そのような知識に基づいて分類されてもよい。
【００３２】
適切なメッセージ属性、特性、分類、および、特性が分類を判定する態様の選択は、メッセージがフィルタ処理される環境に依存してもよい。本明細書に開示されるメッセージフィルタリングを採用し得る、いくつかの通信環境には、ソーシャルネットワーキングメッセージング、携帯メッセージング、テキストメッセージング、マルチメディアメッセージング、メッセージルーティング、メッセージプロキシ、および、メッセージを記憶することと、メッセージを目的地もしくは受信者に転送することとを含む様々な他のメッセージングシナリオを提供する、電子メールシステムを含み得るが、これに限定されない。
【００３３】
いくつかの実施形態例では、いったんメッセージが評価モジュール１０２によって初期に分類されると、メッセージは、メッセージ送達ポリシーに基づき、（例えば、データ送達モジュール１１０によって）受信者への送達のために消去されてもよい。メッセージ送達に対するある時点で、データトラッカ１０４は、メッセージの表象を記録してもよい。
【００３４】
データトラッカ１０４は、データの表象を記録するものである。いくつかの実施形態例では、データトラッカ１０４は、メッセージの表象を、関連したメッセージ識別子と共に、データ構造内に記憶してもよい。メッセージが、それぞれが異なる特性と関連付けられる複数のハッシュ値によって表される実施形態例では、データ構造は、メッセージ識別子と、複数の対応するハッシュ値へのポインタとを含んでもよい。データ構造は、続いて、データリエバリュエータ１０８が記憶されたデータを再評価し得るように、データリエバリュエータ１０８へのアクセスを提供してもよい。データトラッカ１０４は、データ構造からの表象の除去を管理してもよい。以下により詳細に記載されるように、除去のためのいくつかのパラメータ例には、メッセージ表象が記憶されている時間、表象を記憶するために使用されている記憶空間の量、および現在記憶されているメッセージ表象の数を含み得る。
【００３５】
評価データ更新モジュール１１８は、時々、データを再評価するために使用される情報の更新を用いて、データエバリュエータ１０６を更新してもよい。いくつかの実施形態例では、更新される情報には、メッセージを表すために使用されるメッセージ属性（例えば、ハッシュ化された属性またはフィンガープリント）、およびデータリエバリュエータ１０８がメッセージを再評価するために使用し得る、対応する特性データを含み得る。
【００３６】
例えば、評価データ更新モジュール１１８は、メッセージを評価するために以前はデータエバリュエータ１０６に提供されなかった、またはデータエバリュエータ１０６によって使用されなかった、メッセージ属性の更新された特性を提供してもよい。更新された情報は、例えば、メッセージ属性に関する、データ通信ネットワーク１００のユーザの集団知能に基づいてもよい。更新された特性は、評価データ更新モジュール１１８によって生成されてもよく、またはローカルもしくは遠隔の発信元から評価データ更新モジュール１１８に提供されてもよい。評価データ更新モジュール１１８は、更新情報を提供することに専念する必要はなく、任意の適切な機械によって動作されてもよい。
【００３７】
データリエバリュエータ１０８は、データエバリュエータによって実施された評価の結果を再評価し、その結果におけるいずれかの変更の通知を提供するものである。
【００３８】
上記の実施例を参照すると、「今すぐ購入！」および「驚きの取引！」という文字列、またはそれらのそれぞれのハッシュ値と関連付けられることが既知である、「無礼な広告」という特性は、「尊重される広告」という特性を反映するように更新されてもよい。データリエバリュエータ１０８は、（例えば、評価データ更新モジュール１１８から受信された）特性の変更に基づき、メッセージを再評価し、および、データ送達モジュール１１０が適切なメッセージ送達ポリシーを施行し得るように、メッセージの分類が「中立的な広告メッセージ」に変更されたという通知をデータ送達モジュール１１０に提供してもよい。さらなる実施形態例が、図２〜図７に関して、以下に記載される。
【００３９】
図１を参照すると、評価モジュール１０２、データトラッカ１０４、データリエバリュエータ１０８、データ送達モジュール１１０、データ記憶モジュール１１４、および評価データ更新モジュール１１８は、それぞれモジュールとして実装されてもよい。この仕様のために、モジュールは、ソフトウェア、ハードウェア／回路、またはソフトウェアとハードウェア／回路との組み合わせを使用して実装されてもよい。例えば、「モジュール」という用語は、特定の機能、動作、処理、もしくは手順を達成する、コード、計算命令または実行可能な命令、データ、あるいは計算オブジェクトの、識別可能な部分を含んでもよい。モジュールは、必ずしもソフトウェア内に実装される必要はなく、いくつかの実施形態例では、モジュールは、モジュールの機能（単数および／または複数）を実施するように設計された、特定用途向け集積回路（ＡＳＩＣ）またはプログラマブル回路を使用して実装されてもよい。ハードウェアおよびソフトウェアを使用して実装されるモジュールには、モジュールの機能（単数および／または複数）を実施するためにプロセッサ（例えば、ハードウェア）が命令（例えば、ソフトウェア）を実行する一定の時間中に存在するモジュールを含み得るが、これに限定されない。
【００４０】
図２は、例示の実施形態に従う、メール転送エージェント２０４と、メール記憶２２０とを含む、メッセージネットワーク２００を図示するブロック図である。図２は、ネットワーク２２４を介して、メール記憶２２０に連結され、かつメッセージ特性アップデータ２２８に連結される、メッセージサーバ２０２を含むように示されている。メッセージサーバ２０２は、通信チャネル２０５を介して互いに連結される、数多くのコンポーネントを含むように示されている。コンポーネントのそれぞれは、以下に順に記載される。
【００４１】
メール転送エージェント２０４は、ネットワーク２２４を介して、受信者に向けられるメッセージ２０３を受信し、メッセージのうちの少なくともいくつかをメール記憶２２０に転送するものである。以下により詳細に記載される、メッセージクラシファイア２０６は、メッセージポリシーを施行して、メッセージのいくつかを遮断するために使用され得る、メッセージ分類を提供してもよく、そうでない場合は、メッセージは、メール転送エージェント２０４によってメール記憶２２０に転送される。
【００４２】
様々な実施形態例では、メール転送エージェント２０４は、メッセージポリシーに起因して遮断されておらず、かつメール記憶２２０に既に送達されているメッセージに対して措置を実施する要求を発行してもよい。例えば、メッセージがメール記憶２２０に送達される時より前に、メッセージクラシファイア２０６が以前に、例えば「受け入れ可能」に分類したメッセージは、後に、メッセージリクラシファイア２１４がメッセージの分類を例えば「受け入れ不可能」に変更した後で、メール記憶２２０内の位置から（例えば、メール転送エージェント２０４の要求によって）削除されてもよい。
【００４３】
メッセージクラシファイア２０６は、メール転送エージェント２０４によって受信されたメッセージを分類するものである。一実施形態例では、メッセージクラシファイア２０６は、受信されたメッセージからのデータの１つの選択（例えば、または複数の選択）に対して、その選択の表象を生成するように、フィンガープリントアルゴリズムを動作させる。いくつかの実施形態例では、メッセージからのデータの選択は、メッセージの属性と見なされるビットストリームを含んでもよい。フィンガープリントアルゴリズムは、メッセージ属性を、フィンガープリントが由来したビットストリーム（例えば、データの属性または選択）を一意に識別する、比較的小さなビットストリームにまで低減してもよい。
【００４４】
一実施形態例では、メッセージクラシファイア２０６は、受信されたメッセージの属性のフィンガープリント等の未知のフィンガープリントと特性化されたフィンガープリントとの間で、順次比較を実施してもよい。特性化されたフィンガープリントが未知のフィンガープリントと一致する場合、未知のフィンガープリント、およびその結果、受信されたメッセージの属性は、特性化されたフィンガープリントと特性を共有してもよい。比較が一致をもたらさない場合、特性は、未知のフィンガープリントと関連付けられなくてもよい。
【００４５】
メッセージクラシファイア２０６は、表象のライブラリと、対応する既知の特性（例えば、透過的なライブラリ）とを記憶する、メッセージ特性記憶領域２０７を含んでもよい。いくつかの実施形態例では、メッセージ内容の以前に生成された表象のライブラリ（例えば、共通して現れるキーワード）、および関連特性は、受信されたメッセージの特性を識別するために、図１のデータエバリュエータ１０６によって参照されてもよい。
【００４６】
「お買い得！」という語句のフィンガープリントが取得されてもよく、次いでフィンガープリントは、スパムインジケータとして特性化されてもよい。次いで、特性化されたフィンガープリントは、後で参照するために、メッセージ特性記憶領域２０７内に記憶されてもよい。
【００４７】
メッセージ特性アップデータ２２８は、フィンガープリントおよびフィンガープリントの対応する特性を有するメッセージクラシファイア２０６（例えば、メッセージ特性記憶領域２０７）に対して更新を提供するものである。更新は、メッセージクラシファイア２０６によって要求されてもよく、および／またはメッセージ特性アップデータ２２８は、更新を自動的に提供してもよい。一実施形態例では、各フィンガープリントは、単一の特性と関連付けられてもよいが、いくつかの実施形態例では、各フィンガープリントは、複数の特性と関連付けられてもよい。いくつかの実施形態例では、メッセージ特性アップデータ２２８は、メッセージクラシファイア２０６のメッセージ特性記憶領域２０７に、３０〜６０秒毎に更新を提供するが、しかしながら、更新は、任意の適切な入力に基づいて提供されてもよい。
【００４８】
メール記憶インタフェース２０８は、メール転送エージェント２０４とメール記憶２２０との間の通信のためのインタフェースを提供してもよい。様々な実施形態例では、メール転送エージェント２０４は、メール記憶インタフェース２０８を通して、メール記憶２２０内のメッセージにメールポリシーを施行し、これは、メール記憶２２０によって記憶された、指定されたメッセージへの措置を容易にし得る。いくつかの実施形態例では、メール記憶インタフェース２０８は、アプリケーションプログラムインタフェースコールをメール記憶２２０に転送することによって、メッセージに対して講じられる特定の措置（例えば、メッセージの削除またはスパムフォルダへのメッセージの移動）を開始する。一実施形態例では、メール記憶インタフェース２０８は、メール記憶２２０のアプリケーションプログラミングインタフェース（例えば、シンプルオブジェクトアクセスプロトコル（ＳＯＡＰ））を使用して、メール記憶２２０のウェブサービスと統合される。
【００４９】
メール転送エージェントインタフェース２１０は、メール転送エージェント２０４と、メッセージ特性記憶領域２０７、メッセージクラシファイア２０６、メッセージトラッカ２１２、およびメッセージリクラシファイア２１４を含む、様々な他のシステムコンポーネントとの間の通信を容易にするものである。上記に紹介されるように、メール転送エージェントインタフェース２１０は、メッセージの特性が変更した時に、メール転送エージェント２０４に通知してもよい。
【００５０】
メッセージトラッカ２１２は、いくつかの実施形態例では、メール転送エージェント２０４によってメッセージがメール記憶２２０に送達される度に、メッセージ記憶領域２１１を適切な記録で更新するものである。一実施形態例では、メッセージトラッカ２１２は、メッセージがメール記憶２２０に送達されるべき時に、メール転送エージェントインタフェース２１０を介して、メッセージクラシファイア２０６から通知を受信し、通知に応えて、メッセージ記憶領域２１１をそのようなメッセージのそれぞれに関する情報（例えば、メッセージ識別子およびメッセージ表象）で更新してもよい。メール転送エージェント２０４は、メール転送エージェントインタフェース２１０を介して、メッセージトラッカ２１２によってメッセージ記憶領域２１１内に記憶されるべきメッセージ情報を指定してもよい。例えば、具体的な情報には、メッセージ識別子、受信者アドレス、およびメッセージが送達された時間を示すタイムスタンプを含み得る。
【００５１】
メッセージ記憶領域２１１は、メール記憶２２０に送達されたメッセージのフィンガープリント等のメッセージ表象の記録を維持するために、データ構造を記憶してもよい。メッセージ記憶領域２１１は、メッセージトラッカ２１２、メッセージリクラシファイア２１４、およびメッセージ除去モジュール２１６によってアクセス可能であってもよい。いくつかの実施形態例では、メッセージ記憶領域２１１は、メモリ内データベースとして実装されるが、しかしながら、他の適切なデータ構造が採用されてもよい。
【００５２】
メッセージリクラシファイア２１４は、メッセージの更新された特性がメッセージの再分類をもたらすかどうかを判定するものである。例えば、メッセージの表象は、それぞれが特性と関連付けられる、３つのフィンガープリントを含んでもよく、フィンガープリントのうちの１つの特性が変更する時に、メッセージリクラシファイア２１４は、また、メッセージの分類も変更することを判定してもよい。メッセージリクラシファイア２１４は、メッセージ属性アップデータ２２８からメッセージ特性記憶領域２０７によって受信された任意の更新の通知をメッセージクラシファイア２０６から要求してもよい。一実施形態例では、メッセージリクラシファイア２１４は、メール転送エージェント２０４がメール記憶に既に送達したメッセージの分類の変更を、メール転送エージェント２０４に通知してもよい。メッセージの再分類を説明する実施形態例は、以下により詳細に記載される。
【００５３】
メッセージ除去モジュール２１６は、メッセージ記憶領域２１１から記録を定期的に、および／または不定期に除去するものである。一実施形態例では、メッセージ表象がより多くの回数記憶されると、対応するメッセージが正確に分類される可能性がより高くなる。いくつかのメッセージ表象は、分類の判定を行う時に、他のものより大きなウェートを与えられてもよいため、場合によっては、いくつかのメッセージ表象を他のメッセージ表象より長く記憶することが適切であり得る。一実施形態例では、適切な除去の間隔を提供するために、メッセージ除去モジュール２１６は、メッセージ表象が記憶されてから６０分が満了した後に、あるメッセージ表象を時間切れにするが、別のメッセージ表象については、他のメッセージ表象が９０分を超えて記憶されていない限り、時間切れにしないことがあり得る。一実施形態例では、時間切れにする間隔のデフォルト設定は、６０分の満了であるが、システム資源の利用可能度の一部または全体に基づき、カスタムの除去の間隔が指定されてもよい。
【００５４】
メール記憶２２０は、メッセージの受信者にアクセス可能にされているメッセージのための記憶領域を含んでもよい。様々な実施形態例では、記憶領域は、機械によってアクセス可能なデータ構造、機械の内部メモリ（例えば、ランダムアクセスメモリ）、および／または機械の外部の記憶領域（例えば、ハードディスクまたはハードディスクのアレイ）を含んでもよい。メール記憶２２０は、メール記憶２２０内の記憶位置に記憶されたメッセージの再分類に関する通信を可能にする、インタフェースを提供してもよい。いくつかの実施形態例では、機械は、メール転送エージェント２０４からの命令に応えて、メール記憶２２０内のメッセージに対して様々な動作を実施するために、メール記憶２２０に連結されてもよい。
【００５５】
図３は、例示の一実施形態に従う、メッセージとメッセージ関連値との間の関連を図示するテーブル３００である。実施形態例では、図２のメッセージトラッカ２１２は、テーブル３００に示される値を含むデータ構造をメッセージ記憶領域２１１内に記憶してもよい。図２のメッセージリクラシファイア２１４およびメッセージ除去モジュール２１６は、それらのそれぞれの機能性を提供する過程中に、テーブル３００に示される値にアクセスしてもよい。テーブル３００は、メッセージ識別子列３０２と、属性フィンガープリント列３０４と、タイムスタンプ列３０６と、現行分類列３０８と、メッセージスコア列３１０内のメッセージスコアと、スパムスコア閾値列３１２とを含むように示されている。
【００５６】
メッセージ識別子列３０２は、各交差行３１４、３１６、３１８、３２０、および３２２内に、図２のメール記憶２２０に送達された各メッセージを表すメッセージ識別子を示す。例えば、メッセージ識別子列３０２の第１の行３１４内のメッセージ識別子「Ｍ１」は、特定のメッセージに対応し、メッセージは、メッセージ識別子「Ｍ１」によって識別可能である。
【００５７】
属性フィンガープリント列３０４は、各交差行３１４、３１６、３１８、３２０、および３２２内に、メール記憶２２０に送達された各メッセージと関連付けられるメッセージ属性のフィンガープリントを表す文字を示す。例えば、属性フィンガープリント列３０４、行３１４の文字Ａ、Ｂ、Ｃ、Ｈのそれぞれは、異なるハッシュ値を表してもよい。一実施形態例では、テーブル３００に示される各属性フィンガープリント値は、実際のフィンガープリントを含む記憶領域内のアドレスへのポインタを表す。
【００５８】
タイムスタンプ列３０６は、各交差行３１４、３１６、３１８、３２０、および３２２内に、メッセージが図２のメール記憶２２０内に最初に記憶された時間を示す。一実施形態例では、タイムスタンプ列３０６のフィールドは、メッセージテーブル３００内の特定の値を時間切れにする一環として、図２のメッセージ除去モジュール２１６によって、異なる時間にアクセスされてもよい（以下により詳細に記載される）。
【００５９】
テーブル３００の現行分類列３０８は、各交差行３１４、３１６、３１８、３２０、および３２２内に、各対応するメッセージが図２のメール記憶２２０に送達された時点でのメッセージ分類を示す。例えば、行３１６は、正当なものという現行分類を含むように示されており、一方、行３２０は、スパムという現行分類を示す。現行分類列３０８内およびメッセージスコア列３１０内の角括弧の付いた値は、フィンガープリント更新からもたらされる値を表し、以下により詳細に記載される。
【００６０】
メッセージスコア列３１０は、各交差行３１４、３１６、３１８、３２０、および３２２内に、図２のメール記憶２２０に送達された、各対応するメッセージと関連付けられるメッセージスコアを示す。一実施形態例では、メッセージスコアは、メッセージを表す各フィンガープリントに対応するフィンガープリントスコアの合計である。フィンガープリントスコアは、図４に関連してさらに記載される。
【００６１】
スパムスコア閾値列３１２は、各交差行３１４、３１６、３１８、３２０、および３２２内に、スパム閾値スコアを示す。一実施形態例では、メッセージスコア列３１０内のメッセージスコアがスパムスコア閾値列３１２内のスパム閾値スコアを超える場合、メッセージは、スパムと見なされてもよい。例えば、行３２０では、メッセージスコアは、「３」と示されており、これは、「２．５」と示されているスパムスコア閾値を超え、結果として、メッセージ識別子Ｍ４によって表されるメッセージの現行分類はスパムとなる。
【００６２】
図４は、例示の一実施形態に従う、フィンガープリントと様々なフィンガープリント関連値との間の関連を図示するテーブルである。図４のテーブル４００に示される値は、図２のメッセージクラシファイア２０６によって記憶されてもよい。
【００６３】
属性フィンガープリント列４０２は、各交差行内に、メッセージ属性のフィンガープリントを表す文字を示す。例えば、行４１２では、文字「Ｂ」によって表されるフィンガープリントは、メッセージ列４１０のメッセージＭ１、Ｍ３、およびＭ４と関連付けられる。
【００６４】
フィンガープリントスコア列４０４は、各交差行内に、各それぞれの属性フィンガープリントと関連付けられる値またはスコアを含むように示されている。例示のフィンガープリント値は、「０」または「１」のいずれかであるように示されており、属性フィンガープリントが２つの考えられる特性のうちの１つを有し得ることを示す。例えば、数字「１」は、メッセージ属性がスパムメッセージと関連付けられることを表してもよく、数字「０」は、メッセージ属性が正当なメッセージと関連付けられることを表してもよいが、しかしながら、逆の関係が使用されてもよい。一実施形態例では、属性フィンガープリント列４０２の行４１４内の属性フィンガープリント「Ｃ」は、対応するフィンガープリントスコア列４０４内に「０」が現れるため、正当なメッセージと関連付けられる。
【００６５】
タイムスタンプ列４０８は、メッセージを特性化するために、各交差行内に、属性フィンガープリントが記憶された時間を含むように示されている。図３の列３０６内のタイムスタンプと同様に、図４のタイムスタンプは、値を時間切れにするために使用されてもよく、この実施形態例では、属性フィンガープリントを時間切れにするために使用されてもよい。
【００６６】
メッセージ列４１０は、各交差行内に、属性を有するメッセージを含むように示され、これら属性は、フィンガープリントが付けられ、かつ属性フィンガープリント列４０２内に示されている。例えば、行４１２では、属性フィンガープリント「Ｂ」は、識別子Ｍ１、Ｍ３、およびＭ４によって表されるメッセージに含まれる属性を表す。
【００６７】
図５は、例示の実施形態に従う、ポリシー施行フロー例を図示する相互作用フロー図５００である。相互作用フロー図５００は、図１のデータ送達モジュール１１０および図２のメール転送エージェント２０４によって実施され得る動作を含む、データ送達モジュール列５０２と、データエバリュエータ１０６および図２のメッセージクラシファイア２０６によって実施され得る動作を含む、データエバリュエータ列５０４と、データトラッカ１０４および図２のメッセージトラッカ２１２によって実施され得る動作を含む、データトラッカ列５０６と、図１のデータリエバリュエータ１０８および図２のメッセージリクラシファイア２１４によって実施され得る動作を含む、データリエバリュエータ列５０８と、図１のデータ記憶モジュール１１４および図２のメール記憶２２０によって実施され得る動作を含む、データ記憶列５０９とを含むように示されている。
【００６８】
ブロック５１０で、フロー５００は、受信されたメッセージを評価すべきことを要求するデータ送達モジュールを含んでもよい。図２を参照すると、メッセージ２０３は、メール転送エージェント２０４によって受信されるように示されている。メール転送エージェント２０４は、１つのそのようなメッセージを受信し、メッセージクラシファイア２０６がメッセージにスコアを付けるか、またはメッセージを分類することを要求するように、メール転送エージェントインタフェース２１０と通信してもよい。
【００６９】
ブロック５１２で、フロー５００は、メッセージの評価を提供するデータエバリュエータを含んでもよい。一実施形態例では、評価を提供することは、メッセージ表象を生成することを含んでもよく、メッセージ表象は、例えば、メッセージの一部分のハッシュ値またはフィンガープリントを含む。表象を提供することはさらに、表象と関連付けられる特性にアクセスすることを含んでもよい。例えば、受信されたメッセージに対して、図２のメッセージクラシファイア２０６は、メッセージを表すように、メッセージの属性のフィンガープリントを生成してもよい。メッセージクラシファイア２０６は、図２のメッセージ特性記憶領域２０７内において、フィンガープリントと関連付けられることが既知の特性またはスコアを識別するために、フィンガープリントを使用してもよい。
【００７０】
いくつかの実施形態例では、図２のメッセージクラシファイア２０６は、メッセージスコアを計算し、スコアが付けられたメッセージがスパムを示すか、または正当なメッセージを示すかを判定してもよい。しかしながら、メッセージスコアは、スパムまたは正当なもの以外の分類に割り当てられてもよい。ブロック５１４で、フロー５００は、評価に基づき、メッセージに送達ポリシーを適用するデータ送達モジュールを含んでもよい。いくつかの実施形態では、図２のメール転送エージェント２０４は、メッセージの受信者と関連付けられるスパムポリシーによって、メッセージがスパムであるか、または正当なものであるかを判定してもよい。代替として、またはさらに、いくつかのメッセージ送達ポリシーは、完全に、または一部において、メッセージ毎の基準で判定されてもよい。
【００７１】
ブロック５１６で、例示のフロー５００は、送達ポリシーが許す場合に、分類されたメッセージをデータ記憶に送達するデータ送達モジュールを含んでもよい。図２を参照すると、メール転送エージェント２０４は、メッセージが正当なものであると判定される場合に、例示のメッセージをメール記憶２２０に送達してもよく、または、メッセージがスパムメッセージであると判定される場合に、例示のメッセージがメール記憶２２０に到達するのを阻止してもよい。正当なメッセージ以外のメッセージがメール記憶２２０に送達されてもよいことが留意され得る。例えば、そうすることがメッセージ送達ポリシーと一致する場合、任意の分類のメッセージがメール記憶２２０に送達されてもよい。
【００７２】
ブロック５１８で、例示のフロー５００は、メッセージの表象を記録するデータトラッカを含んでもよい。図２のメッセージトラッカ２１２が、メッセージの単数または複数のフィンガープリントが記録されるべきであるという通知を受信することは、ブロック５１８での記録に先行してもよい。いくつかの実施形態例では、記録されるべき指示および値（例えば、メッセージ識別子、関連するメッセージフィンガープリント、図３に関して説明される他の値、または任意の他の適切な値）は、図２のメール転送エージェントインタフェース２１０によって提供されてもよい。
【００７３】
図６に簡単に注目する。図６は、例示の一実施形態に従う、メッセージの表象を記録するための方法６００を図示するフロー図である。ブロック６０２で、例示の方法６００は、メッセージの少なくとも一部分の表象をデータ構造内に記憶させることを含んでもよい。
【００７４】
いくつかの実施形態例では、図２のメッセージ記憶領域２１１によって記憶されるデータ構造は、各メッセージが対応するシグネチャ（例えば、ハッシュ化されたメッセージ属性）へのポインタのリストと関連付けられ得る、複数のメッセージのリンクリストを含んでもよい。また、メッセージ記憶領域２１１は、各シグネチャが各シグネチャによって表されるメッセージへのポインタのリストと関連付けられる、複数のシグネチャのハッシュテーブルを含んでもよい。
【００７５】
例えば、図２のメール転送エージェントインタフェース２１０からの通知に応えて、メッセージトラッカ２１２は、図３の行３１４内のＭ１等のメッセージ識別子をメッセージのリンクリストに付加してもよい。各メッセージと関連付けられる各シグネチャ（例えば、図３の行３１４の属性フィンガープリントＡ、Ｂ、Ｃ、およびＨ）では、シグネチャがシグネチャのハッシュテーブル内（例えば、図４の属性フィンガープリント列４０２）に既にある場合、メッセージトラッカ２１２は、シグネチャのハッシュテーブル内のメッセージ（例えば、図４のメッセージ列４１０）へのポインタのリストに新しいメッセージへのポインタを追加してもよい。シグネチャがシグネチャのハッシュテーブル内にない場合、メッセージトラッカ２１２は、シグネチャのハッシュテーブルにシグネチャを追加し、そのシグネチャに対する複数のメッセージへのポインタのリストに、メッセージへのポインタを追加してもよい。
【００７６】
ブロック６０４で、例示の方法６００は、記憶された表象の除去の前に、メッセージを再分類することを含んでもよく、ブロック６０６で、除去パラメータに基づき、記憶された表象を除去することを含んでもよい。実施形態例では、除去パラメータには、時間間隔、フィンガープリントおよびメッセージを記憶するために使用される最大メモリサイズ、ならびに／または記憶され得るフィンガープリントおよび／もしくはメッセージの最大数を含み得る。
【００７７】
例えば、図２のメッセージ除去モジュール２１６は、図３のタイムスタンプ列３０６内のタイムスタンプを現在の時間と比較し、および指定の時間間隔が超過されたかどうかを判定するために、メッセージ記憶領域２１１の、上記で紹介されたメッセージのリンクリストのヘッドにアクセスしてもよい。代替として、またはさらに、メッセージ除去モジュール２１６は、メッセージ記憶領域２１１がメッセージの最大数または最大メモリ空間を超過したかどうかを判定してもよい。間隔および／または最大限度が超過されている場合、メッセージ除去モジュール２１６は、メッセージのリンクリストのヘッドにおけるメッセージを除去してもよい。除去されたメッセージと関連付けられる各シグネチャに対して、メッセージ除去モジュール２１６は、メッセージをシグネチャから切り離すために、シグネチャのハッシュテーブルにアクセスしてもよい。
【００７８】
図５に戻り、ブロック５２０で、例示のフロー５００は、評価データを受信したという通知を提供するデータエバリュエータを含んでもよい。図２を参照すると、メッセージリクラシファイア２１４は、メール転送エージェントインタフェース２１０から、メッセージ特性記憶領域２０７に対するメッセージ特性更新が行われたことを通知されることを要求してもよい。一実施形態例では、メール転送エージェント２０４がメール記憶２２０にメッセージを送達した後で、メッセージ特性アップデータ２２８が更新を行う場合、メッセージリクラシファイア２１４は、更新された特性を自動的に受信すること（例えば、コールバックを登録することによってもたらされる）、および／または更新された特性を明示的に要求することのいずれかによって、メール転送エージェントインタフェース２１０を介して、メッセージの表象と関連付けられる、更新された特性にアクセスしてもよい。
【００７９】
ブロック５２２で、例示のフロー５００は、メッセージの表象および受信された評価データに基づき、メッセージを再評価するデータリエバリュエータを含んでもよい。メッセージを再評価することは、ここで、図７の別個のフロー図で説明される。
【００８０】
図７は、例示の一実施形態に従う、メッセージを再評価するための例示の方法７００を図示するフロー図である。ブロック７０２で、例示の方法７００は、受信された、または更新された特性が、送達されたメッセージの表象と関連付けられることを判定することを含んでもよい。図２に関して説明されたように、メッセージリクラシファイア２１４は、更新された表象特性（例えば、更新されたフィンガープリントスコア）を入手してもよい。
【００８１】
一実施形態例では、シグネチャのハッシュテーブルは、図４のテーブル４００に示される情報を含んでもよく、メッセージリクラシファイア２１４は、更新されたフィンガープリントが表し得る、任意のメッセージを識別するために、シグネチャのハッシュテーブルにアクセスしてもよい。更新されたメッセージ特性の例として、図４、行４１２の属性フィンガープリント「Ｂ」を使用して、図２のメッセージリクラシファイア２１４は、属性フィンガープリント「Ｂ」が、図４の行４１２、メッセージ列４１０に示されるように、メッセージＭ１、Ｍ３、およびＭ４と関連付けられることを判定してもよい。ブロック７０４で、例示の方法７００は、表象と関連付けられる第１の特性を第２の特性と置換することを含んでもよい。例示のフィンガープリントのハッシュテーブルについて継続し、図２のメッセージリクラシファイア２１４は、行４１２の属性フィンガープリント「Ｂ」等のフィンガープリント値を識別し、元のフィンガープリントスコアである「１」を更新されたフィンガープリントスコアである「０」と置換してもよい。
【００８２】
ブロック７０６で、例示の方法７００は、表象および更新された特性に基づき、メッセージを再分類することを含んでもよい。例えば、図２のリクラシファイア２１４は、特性の置換がメッセージの分類を変更することを判定してもよい。図３では、各メッセージＭ１、Ｍ３、Ｍ４に対して、図２のメッセージリクラシファイア２１４は、更新されたフィンガープリントスコアを考慮して、メッセージスコアを再計算してもよい。
【００８３】
図３の行３１６のメッセージＭ２を例に挙げると、図４の行４１４において、メッセージＭ２と関連付けられる属性フィンガープリント「Ｃ」が、「０」の値から「１」の値に更新されていることが分かる。図３の行３１６のフィンガープリント「Ｅ」、「Ｆ」、および「Ｇ」が、それぞれ、「０」、「１」、および「１」の変更されていないフィンガープリントスコアを有するため、図２のリエバリュエータは、図３の行３１６、メッセージスコア列３１０に（例えば、括弧内に）示されるように、「３」となるように、メッセージＭ２の更新されたメッセージスコアを計算してもよい。例示のメッセージリクラシファイア２１４は、「３」というメッセージスコア列３１０内の新しいメッセージスコアを、行３１６、スパムスコア閾値列３１２に示される「２．５」というスパム閾値スコアと比較してもよい。分類の変更は、以下の実施形態例において説明される。
【００８４】
図２の例示のメッセージリクラシファイア２１４は、データ構造にアクセスすることによって、行３１６、メッセージスコア列３１０における例示のメッセージＭ２の場合のように、メッセージＭ２が初期に正当なものに分類されたことを判定してもよい。メッセージＭ２では、「３」という新しいメッセージスコアがメッセージＭ２のスパム閾値を超えるため、正当なものという現行分類は、偽陽性であると見なされてもよい。ブロック５２４に関して以下に記載されるように、正当なものからスパムへのメッセージＭ２の分類の変更に基づき、メッセージに措置が講じられてもよい。
【００８５】
再び図４を参照すると、属性フィンガープリント「Ｂ」のフィンガープリントスコア例は、行４１２、属性フィンガープリント列４０４内に、「１」から「０」に更新されるように示されている。図２のメッセージリクラシファイア２１４は、例えば、メッセージＭ２に関連して上述されたプロセスと類似するプロセスを通して、メッセージＭ４の新しいメッセージスコアを生成してもよい。Ｍ４の例の場合では、行３２０、現行分類列３０８内の、メッセージのスパムという現行分類、および正当なものというその更新された分類は、メッセージＭ４の初期の分類が偽陰性であったことを示す。メッセージの分類の変更に基づき、メッセージに適切な措置が講じられてもよい。
【００８６】
メール転送エージェントインタフェース２１０は、図２のリクラシファイア２１４に偽陽性分類および／または偽陰性分類を通知するように構成されてもよいことが留意され得る。例えば、いくつかの実施形態例では、リクラシファイア２１４は、偽陽性事例（例えば、メッセージが正当なものと不正確に分類される場合）のみを再分類してもよい。
【００８７】
再び図５に戻ると、ブロック５２４で、例示のフロー５００は、メッセージの新しい評価をデータ送達モジュールに提供するデータリエバリュエータを含んでもよい。
【００８８】
一実施形態例では、メール転送エージェント２０４は、最初に、メール転送エージェントインタフェース２１０から、再分類されたメッセージの通知を受信することを要求してもよい。いったん、メール転送インタフェース２１０によって新しい分類（例えば、再分類されたメッセージの）が通知されると、メッセージの再分類に応えて、メール転送エージェント２０４は、メール記憶インタフェース２０８に対して、メール記憶２２０と通信して、メッセージ送達ポリシーに従って、メール記憶２２０内の再分類されたメッセーに対する動作の実施を開始するように（例えば、信号の伝送を介して）命令してもよい。
【００８９】
ブロック５２６で、例示のフロー５００は、新しい評価に基づき、メッセージに送達ポリシーを適用するデータ送達モジュールを含んでもよい。いくつかの実施形態例では、メール転送エージェント２０４によって開始される動作は、どのようにメッセージが再分類されたかに基づいて選択される。メッセージがスパムとして再分類される場合、メール転送エージェント２０４は、メール記憶インタフェース２０８に対して、例えば、メール記憶２２０内のメッセージの移動または削除を開始するように命令してもよい。一実施形態例では、メール記憶インタフェース２０８は、メール記憶２２０によってメッセージに講じられる措置を開始し得る、メッセージ受信者情報、メール記憶２２０のインターネットプロトコル（ＩＰ）アドレス、およびメール記憶インタフェース２０８に対する受信者のメッセージ取り扱いポリシー等の、コールを伴う情報を含んでもよい。
【００９０】
メール記憶インタフェース２０８は、インタフェースコールを受信し、特定のスパムスコアおよび対応する分類のポリシー（例えば、メッセージ受信者に特有のポリシー）に基づいて、再分類されたメッセージに対して作用させる信号をメール記憶２２０に伝送してもよい。メール記憶２２０は、信号に応えて、成功、失敗、および／またはエラーメッセージを返してもよい。
【００９１】
いくつかの実施形態例では、メッセージに措置を実施するための信号は、メール記憶２２０内のメッセージに対する動作の実施を起動するために、メール記憶２２０に連結される、遠隔のネットワーク接続された機械に伝送されてもよい。信号は、代替として、またはさらに、メール記憶２２０内のメッセージに対する動作の実施を開始するために、ローカル機械上で動作するデスクトップメールプログラムに向けられてもよい。
【００９２】
ブロック５２８で、例示のフロー５００は、送達ポリシーに従ってメッセージに対する動作を実施するデータ記憶を含んでもよい。メッセージがメール記憶２２０に送達された後ではあるが、受信者がメッセージを見る前に、メッセージが分類の変更についてスキャンされる実施形態例では、メール記憶２２０は、メッセージに措置を講じるコールに応えて、メッセージが、ユーザが最後にログインした時より最近になって到着したかどうかを判定してもよい。そうである場合、メール記憶２２０（例えば、またはメール記憶２２０を動作させている機械）は、メール記憶インタフェース２０８からのコール内に提供される送達ポリシーを使用して、メッセージに措置を講じてもよい。メール記憶２２０が、メッセージは、ユーザが最後にログインした時より最近になって到着したのではないと判定する場合、メール記憶２２０は、メール記憶インタフェース２０８にエラーコードを返してもよい。メール記憶インタフェース２０８はさらに、メッセージに措置が正常に講じられたか否かによって、メール転送エージェント２０４に成功または失敗の通知を提供してもよい。
【００９３】
図８は、コンピュータシステム８００の例示の形態における機械の図式表現を示し、コンピュータシステム８００内において、本明細書に記載される方法論のうちの任意の１つ以上を機械に実施させるための一組の命令が実行され得る。代替の実施形態では、機械は、スタンドアロンのデバイスとして動作してもよく、または他の機械に接続されてもよい（例えば、ネットワーク接続される）。ネットワーク接続された配置では、機械は、サーバ−クライアントネットワーク環境におけるサーバまたはクライアント機械の能力内で、またはピアツーピア（または分散型の）ネットワーク環境におけるピア機械として動作してもよい。機械は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ（ＰＣ）、タブレットＰＣ、セットトップボックス（ＳＴＢ）、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、ウェブ用機器、ネットワークルータ、スイッチもしくはブリッジ、または、当該機械によって講じられるべき措置を指示する、（順次的に、ないしは別の方法で）一組の命令を実行することができる任意の機械であってもよい。さらに、単一の機械のみが図示されているが、「機械」という用語はまた、個々に、または共同して、本明細書に記載される方法論のうちの任意の１つ以上を実施するための、一組の（または複数の組の）命令を実行する機械の任意の集合を含むようにも解釈されるべきである。
【００９４】
例示のコンピュータシステム８００は、バス８０８を介して互いと通信する、プロセッサ８０４（例えば、中央演算処理装置（ＣＰＵ）、グラフィック処理装置（ＧＰＵ）、または両方）と、メインメモリ８１０と、スタティックメモリ８１４とを含む。コンピュータシステム８００はさらに、ビデオディスプレイ装置８０２（例えば、液晶ディスプレイ（ＬＣＤ）または陰極線管（ＣＲＴ））を含んでもよい。また、コンピュータシステム８００は、英数字入力デバイス８１２（例えば、キーボード）と、カーソル制御デバイス８１６（例えば、マウス）と、ディスクドライブ装置８２０と、信号生成デバイス８４０（例えば、スピーカー）と、ネットワークインタフェースデバイス８１８とを含む。
【００９５】
ディスクドライブ装置８２０は、本明細書に説明される方法論または機能のうちの任意の１つ以上を実現する、１つ以上の組の命令（例えば、ソフトウェア８２４）が記憶される、機械可読媒体８２２を含む。また、ソフトウェア８２４は、コンピュータシステム８００によるそれらの実行中、完全に、または少なくとも部分的に、メインメモリ８１０内および／またはプロセッサ８０４内に駐在してもよく、また、メインメモリ８１０およびプロセッサ８０４は、機械可読媒体を構成する。
【００９６】
ソフトウェア８２４はさらに、ネットワークインタフェースデバイス８１８を介して、ネットワーク８３０をわたって伝送または受信されてもよい。
【００９７】
実施形態例では、機械可読媒体８２２は、単一の媒体として示されているが、「機械可読媒体」という用語は、１つ以上の組の命令を記憶する、単一の媒体または複数の媒体（例えば、集中型もしくは分散型データベース、ならびに／または関連するキャッシュおよびサーバ）を含むと解釈されるべきである。また、「機械可読媒体」という用語は、機械によって実行するための、かつ特許請求される主題の方法論のうちの任意の１つ以上を機械に実施させる、一組の命令を記憶するか、記号化するか、または保持することができる、任意の媒体を含むと解釈されるべきである。したがって、「機械可読媒体」という用語は、固体メモリ、光学媒体、および磁気媒体を含むが、これらに限定されないと解釈されるべきである。
【００９８】
以上のように、データを再評価するための方法およびシステムが説明されてきた。特許請求される主題は、具体的な実施形態例を参照して説明されてきたが、特許請求されるものの広義の趣旨および範囲から逸脱することなく、これらの実施形態に様々な修正ならびに変更が行われてもよいことが明らかであろう。したがって、明細書および図面は、制限的意味というよりはむしろ、説明のための例示と見なされるべきである。
【００９９】
本開示の要約は、読者が技術的開示の本質を素早く解明することを可能にする要約を要求する、３７  Ｃ．Ｆ．Ｒ．§１．７２（ｂ）に従うように提供される。これは、特許請求の範囲もしくは意味を解釈または限定するために使用されないと理解して、提出される。さらに、前述の詳細な説明においては、本開示を合理化するために、様々な機構が単一の実施形態内に一緒にグループ化されていることが分かる。本開示の方法は、特許請求される実施形態が、各請求項内に明確に記載されるよりも多くの機構を必要とするという意図を反映していると解釈されるべきではない。むしろ、以下の特許請求の範囲が反映するように、発明の主題は、単一の開示される実施形態のすべての機構よりも少ない機構にある。したがって、以下の特許請求の範囲は、これによって、詳細な説明に組み込まれ、各請求項は、別個の実施形態として自立している。
【図１】
2011526044.tif 000003
【図２】
2011526044.tif 000004
【図３】
2011526044.tif 000005
【図４】
2011526044.tif 000006
【図５】
2011526044.tif 000007
【図６】
2011526044.tif 000008
【図７】
2011526044.tif 000009
【図８】
2011526044.tif 000010
【国際調査報告】
2011526044.tif 000011