Patent ID: 8751588

Claim:
A non-transitory machine-readable medium having executable instructions to cause one or more processing units to perform a method comprising: receiving a plurality of message threads, wherein each of the plurality of threads includes one or more messages that are related to each of the messages in that thread and a message includes a message header with a plurality of message addresses; for each of the message threads, computing a thread signature using an affinity group, wherein the affinity group is a group of message addresses that represent entities that communicate with each other for a particular common purpose, the thread signature for each of the message threads is based on a plurality of distance vectors between the group message addresses in the affinity group and the message addresses of the one or more messages in that message thread, and the thread signature is a vector with a plurality of values, wherein each of the plurality of values is based on a corresponding one of the plurality of distance vectors; and creating a group of related message threads using the plurality of thread signatures.