The advent of global communications networks such as the Internet has presented commercial opportunities for reaching vast numbers of potential customers. Electronic messaging, and particularly electronic mail (“email”), is becoming increasingly pervasive as a means for disseminating unsolicited, undesired bulk messages to network users (also denoted as “spam”) including advertisements and promotions, for example.
Despite many efforts with respect to reduction and prevention, spam continues to be a major problem. According to industry estimates today, billions of email messages are sent each day and over seventy percent are classified as spam. Individuals and entities (e.g., businesses, government agencies) are becoming increasingly inconvenienced and oftentimes offended by junk messages. Furthermore, spam is forcing businesses to pay enormous amounts (billions of dollars worldwide) for internal messaging infrastructure and support staff. As such, spam is becoming a major threat to trustworthy computing and electronic messaging.
A significant technique utilized to thwart spam is employment of filtering systems/methodologies. One proven filtering technique is based upon a machine learning approach. More particularly, machine learning filters are employed to assign a probability to an incoming message indicative of whether the message is spam or non-spam. Conventionally, pre-classified messages are utilized to train a filter to discriminate probabilistically between message types. For example, a group of users can be polled to facilitate labeling of messages as spam or non-spam. Once trained the filter or associated learning model can be employed to classify messages.
There are two main types of filters utilized, namely content-based filters and internet protocol (IP) address-based filters. As the name suggests, content-based filters are trained to analyze message content or text such as words and phrases in the subject and/or body of a message to facilitate identification of spam. IP address-based filters learn about addresses associated with messages with respect to a set of training data. Subsequently during classification, the filter extracts an IP address from a message and infers whether it is spam.
Unfortunately, spammers have adapted to the onslaught of spam filtering techniques by finding ways to disguise their identities to avoid and/or bypass spam filters. Thus, conventional content-based and IP address-based filters are becoming ineffective in recognizing and blocking disguised spam messages. Moreover, simply training such spam filters to be more aggressive is not an adequate solution as this technique results is a higher volume of false positives, where legitimate messages are labeled as spam.
The following presents a simplified summary in order to provide a basic understanding of some aspects of the claimed subject matter. This summary is not an extensive overview. It is not intended to identify key/critical elements or to delineate the scope of the claimed subject matter. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.
Briefly described, improved spam detection systems and methods are disclosed. In particular, message sender reputation is utilized to facilitate classification of messages or like items as spam or non-spam. Reputation can be derived from historical activity data about senders generated either by the senders themselves and/or others, among other things. Activity data can be captured as counts or occurrences aggregated across at least one time period to facilitate incorporation into a filter and afford robustness, respectively.
In accordance with an aspect of the disclosure, a spam detection system that employs a sender filter is provided. The system receives messages and utilizes a sender filter that incorporates sender activity data to classify messages. The sender of the message is identified and activity data associated with the identity is collected. A spam verdict is output by the sender filter based at least in part on the activity data. The sender filter can also be utilized in conjunction with other filters including a context filter to improve filter performance further.
According to another aspect, the disclosure provides a method for training a filter to identity spam. More specifically, a corpus of training messages classified as spam and non-spam is collected. For each message, a sender is identified. Activity data is collected about all identified senders as counts and aggregated over at least one time period. The training data and the activity data can then be used to train the filter and/or associated learning model.
To the accomplishment of the foregoing and related ends, certain illustrative aspects of the claimed subject matter are described herein in connection with the following description and the annexed drawings. These aspects are indicative of various ways in which the subject matter may be practiced, all of which are intended to be within the scope of the claimed subject matter. Other advantages and novel features may become apparent from the following detailed description when considered in conjunction with the drawings.
The subject disclosure pertains to systems and methods for improved spam detection. More particularly, spam is identified based on computing a sender reputation utilizing a model derived from volume and/or activity data across a myriad of senders. This model incorporates aggregated historical counts for various categories such as volume of messages sent and/or returned, number of distinct hours sending and/or number for junk message reports, among other things. This provides for prediction of sender reputation given secondary information rather than relying solely on sender identity as captured by an IP address, for instance. Further yet, such a filter can be employed in conjunction with a typical text or content based filter to dramatically reduce the false-negative rate of spam detection.
Various aspects of the subject innovation are now described with reference to the annexed drawings, wherein like numerals refer to like or corresponding elements throughout. It should be understood, however, that the drawings and detailed description relating thereto are not intended to limit the claimed subject matter to the particular form disclosed. Rather, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope of the claimed subject matter.
Referring initially to
The filter component 120 can evaluate a message with respect to a sender and a variety of secondary information associated therewith. A sender can be identified via an email address, domain, IP address or IP address range, inter alia. Secondary information may include sender activity data such as the volume of the sender as measured on either a per message or per recipient basis, volume of mail from the sender that bounces, volume of mail from the sender that arrives in a trap account, volume of mail from the sender tagged as spam by another filter, time when mail arrived from a sender and/or user-reported data (e.g., junk mail, false positives) associated with the sender, among others. Such activity data can be embodied as raw data, encapsulated in a learning model, rules and/or the like. In any event, the sender activity filter component 120 can employ such data to produce a verdict regarding a message or other like item provided for evaluation. The verdict may be a probability that a message may be spam or non-spam and/or a finite determination thereof based on a threshold value. Employment of activity data in combination with a sender identity captured by an IP address or range thereof, for instance, enables more intelligent and adaptive message classification.
Training component 320 provides a mechanism to train a learning model 240. The sender activity filter component 120 of
Receiver component 340 is operable to facilitate provisioning of data to aggregation component 350. The receiver component 340 receives, retrieves or otherwise obtains sender statistics or activity data, for example from a data store and/or service. Such activity data can correspond to any messaging or message related action or information. For example, the receiver component 340 can collect data relating to sending volume, bounced messages, messages arriving in a trap account (a.k.a, honey pot), messages tagged as spam by other filters, message time (e.g., sent, received . . . ), junk message and/or false positives (good message caught as spam) user reports, among others. Such information may be captured and persisted by a messaging program such as an email program. Note that the receiver component 340 need not obtain all persisted data. In fact, component 240 can be designed and/or programmed to be selective such that it only acquires data regarding only specific activities or sets of metrics. Furthermore, available activity data can be dependent upon a messaging system and/or the collection capabilities thereof.
Upon receipt or acquisition of activity data, the aggregation component 350 can perform aggregation functions upon such data. Data can thus be aggregated in various manners per sender (or group of senders) prior to employment by communicatively coupled training component 320. Referring briefly to
The count component 410 provides a mechanism for converting activity data into counts or number of occurrences. For example, if a sender sent five messages throughout a day, a sent message count associated with the sender could be set or otherwise incremented to five. Count component 410 can be considered a formatting component and, as such, it can reside elsewhere in the training system 300 of
For purposes of clarity and understanding, consider a conventional email system as an example. For purpose of optimization and overall effectiveness, the receiver component 340 alone or in conjunction with the aggregation component 350 of
DistinctHours provides the number of distinct or particular hours an IP address had some traffic. For example, if an IP address sends ten messages at 1:00 a.m. and ten messages at 2:00 p.m. and does not send any more messages that day, the counter can be incremented by two corresponding to the two distinct hours of traffic. It turns out that spammers try to get their mail through as quickly as possible before they are blocked. Hence, a spammer might send for a few hours, whereas a good sender might send mail more evenly across an entire day.
nData represents the number of times an IP address issued the DATA or BDAT SMTP command. SMTP stands for simple mail transport protocol and is the protocol utilized by email servers to talk to each other. One of the first things a sender does in this protocol is to specify to whom an email is to be sent. Some spammers will try to determine if an address is good by sending a mail to command to observe if they receive an error message. In fact, a sender may never even proceed to the DATA command to actually send an email message. Accordingly, if an IP address is performing a lot of connections but not actually sending mail very often that would be a sign of a dictionary attack. nData measures the number of times an IP address actually uses the DATA command to send email as opposed to other commands that might be employed to check the validity of an email address.
Similar to nData, nDataRcpt measures the number of times an IP address issued the DATA or BDAT SMTP command multiplied by the number of recipients. Typically, spammers send a higher volume of email than regular users. This metric aids measurement of total volume of email sent. For example, if a message is addressed to two recipients and actually sent utilizing the DATA command, the value of nDataRcpt would be two.
nRcpt identifies the number of times a user tried to send mail via RCPT commands. A variation thereon is nRcptNDR where NDR stands for nondeliver receipt. The value is simply the number of recipients on a message from a sender where the message was an NDR. This is essentially measuring bounced messages, which can facilitate identification of spam.
Another activity measure is JMR, which stands for junk mail report. A junk mail report corresponds to a user identifying a message as junk or spam. For example a user selects a button to report the message as junk and/or move the message to a junk mail folder.
The time component 420 is operable to aggregate activity counts over at least one time period. Such aggregation can enable spam detection to be time sensitive, which can prevent improperly blacklisting a sender based on incomplete and/or insufficient history, inter alia. By way of example, consider a scenario in which a sender initially is associated with good behavior and then some bad behavior is added. For instance, clean behavior may be linked to a sender with low volume message emission with no junk mail reports and zero bounces. Subsequently, a few or many junk mail reports and bounces may be noted. By aggregating over multiple time periods, the spam filter can be designed to be robust such that small amounts of bad behavior have only a short term and proportionate impact. Otherwise, a sender may be blacklisted based on a small amount of bad behavior, which would be problematic.
The identity component 430 is a mechanism for aggregation of sender identities or potential identities thereof. In other words, activity data can be collected and/or associated with multiple identities. For example, activity data can be collected for a range of IP addresses or across a shared domain. Where properly aggregated, information can be revealed about identities that do not otherwise have data associated therewith. Furthermore, communicatively coupled count and time components 410 and 420, respectively, can enable count data to be aggregated across multiple time periods and associated with a particular group of identities.
Returning to
Further yet, it is to be noted that rather than treating activity data directly as training data, aggregated count information associated therewith is integrated into the system. There are a myriad of reasons for utilizing this approach including, without limitation, the facts that activity data is not extremely reliable and the volume thereof can overwhelm a filtering system.
Consider junk mail reports, for example. Users often make mistakes and forget that they subscribed to something, thus there can be an enormous volume of junk mail reports for a particular sender. If this were treated as trustworthy data, there would not necessarily be the right amount of good mail to cancel out the reports. User data polls have only about a 3% error rate. Accordingly, if someone receives a hundred poll messages, then ninety-seven times it will be tagged as good and three times it will be labeled as spam. Thus, it will probably be know as good overall. If junk mail reports are simply thrown in the mix with training data, the statistics become skewed in a way that is difficult to correct. For instance, if mail goes in someone's junk folder, a user may never report it as junk. Furthermore, if it is deleted by a server prior to delivery then such mail will not be available to report as junk.
One benefit of using counts rather than actual data is that it allows a system to consider an extremely large data set. For instance, there might be a hundred thousand messages a day that are hand labeled, which is the best data. However, there might also be a million junk mail reports and a million trap account messages. That volume of data might overwhelm a system.
To train the data model 240, component 220 can utilize the training data perhaps provided via a user poll and the activity data counts at the time the message was received. Accordingly, it is significant that data counts be utilized at the time the message was received rather than at the end or some other time for training purposes. By way of example, when someone creates a new IP address for spamming and then he/she starts spamming prolifically, when a new message comes in the counts are all zero. Later when the system is trained, overall counts are going to be very high because of the large volume, junk mail reports, etc. It is not proper to learn that only IP addresses with lots of junk mail reports are spam, because when the system receives a new message of a similar sort the actual counts that will be seen are zeros. In the end, what will be learned is what is good and what is spam based not only on the sender but also additional informational sources as well.
Turning attention to
Sender centric spam filters should address the newcomer effect. As touched upon briefly supra, previously unseen sender messages are usually spam. The newcomer effect is a consequence of one-day spammer tactics, for example, where an IP address is created to send a high-volume of spam for a duration of one day or less. However, even though the amount of messages affected by this aggressive behavior is likely small, a filter should not be too biased against such senders as this may become problematic. There are numerous ways in which this can be handled. For example, a less aggressive threshold can be utilized for labeling messages as junk and/or spam. This threshold can be modified such that junk false positive rates (good labeled as bad) are lowered while the overall number of junk false positives is also reduced. A sending rate may also be limited or otherwise controlled to address this issue. Additionally or alternatively, content can be utilized as a safety net to prevent some messages from being improperly tagged as junk or spam. Yet another alternative is presented below with respect to
Spam filter component 500 can be composed of a sender filter alone or in conjunction with other filters such as content-based filters, among others. A message can be analyzed by the filter component 500 based on activity data associated with the message at read time. While this can be the only time a message is analyzed, a read-time re-scoring system can also be employed. That is, messages initially classified as spam can be deemed good based on a read-time analysis. In an alternative embodiment, the filter component 500 may be trained based on an assumed or inferred delay associated with when message is received and when it is read. In this manner, the filter component 500 can provide expected activity counts at read-time. Once analyzed, the spam filter component 500 can then produce a verdict such as a probability that a message is spam or a binary answer based on a threshold. The verdict can then be provided to action component 620.
Action component 620 can perform some action based on the classification obtained from spam filter component 500. By way of example, where the system is a consumer email program, read-time rescoring can lead to the action component moving a message from junk mail folder to inbox based on establishment of a more positive sender reputation at a later time. If the system is a message server, an action may be providing a message to a user or deleting a message based on the same or similar type of rescoring. For example, a message initially classified as spam may not be provided to a user messaging program, if read-time classification confirms the message is spam.
The aforementioned systems have been described with respect to interaction between several components. It should be appreciated that such systems and components can include those components or sub-components specified therein, some of the specified components or sub-components, and/or additional components. Sub-components could also be implemented as components communicatively coupled to other components rather than included within parent components. Further yet, one or more components and/or sub-components may be combined into a single component providing aggregate functionality. The components may also interact with one or more other components not specifically described herein for the sake of brevity, but known by those of skill in the art.
Furthermore, as will be appreciated, various portions of the disclosed systems and methods may include or consist of artificial intelligence, machine learning, or knowledge or rule based components, sub-components, processes, means, methodologies, or mechanisms (e.g., support vector machines, neural networks, expert systems, Bayesian belief networks, fuzzy logic, data fusion engines, classifiers . . . ). Such components, inter alia, can automate certain mechanisms or processes performed thereby to make portions of the systems and methods more adaptive as well as efficient and intelligent. By way of example and not limitation, the spam filters 120, 510 and/or 500 can employ such mechanisms to facilitate intelligent classification of messages or other like items. Similarly, read detection component 610 can employ such mechanism and/or techniques to facilitate inferring message read time.
In view of the exemplary systems described supra, methodologies that may be implemented in accordance with the disclosed subject matter will be better appreciated with reference to the flow charts of
Referring to
The word “exemplary” is used herein to mean serving as an example, instance or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs. Furthermore, examples are provided solely for purposes of clarity and understanding and are not meant to limit the subject innovation or relevant portion thereof in any manner. It is to be appreciated that a myriad of additional or alternate examples could have been presented, but have been omitted for purposes of brevity.
Furthermore, all or portions of the subject innovation may be implemented as a method, apparatus or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed innovation. The term “article of manufacture” as used herein is intended to encompass a computer program accessible from any computer-readable device or media. For example, computer readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips . . . ), optical disks (e.g., compact disk (CD), digital versatile disk (DVD) . . . ), smart cards, and flash memory devices (e.g., card, stick, key drive . . . ). Additionally, it should be appreciated that carrier waves can be employed to carry computer-readable electronic data such as those used in transmitting and receiving electronic mail or in accessing a network such as the Internet or a local area network (LAN). Of course, those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope or spirit of the claimed subject matter.
In order to provide a context for the various aspects of the disclosed subject matter,
With reference to
The system memory 1116 includes volatile and nonvolatile memory. The basic input/output system (BIOS), containing the basic routines to transfer information between elements within the computer 1112, such as during start-up, is stored in nonvolatile memory. By way of illustration, and not limitation, nonvolatile memory can include read only memory (ROM). Volatile memory includes random access memory (RAM), which can act as external cache memory to facilitate processing.
Computer 1112 also includes removable/non-removable, volatile/nonvolatile computer storage media.
The computer 1112 also includes one or more interface components 1126 that are communicatively coupled to the bus 1118 and facilitate interaction with the computer 1112. By way of example, the interface component 1126 can be a port (e.g., serial, parallel, PCMCIA, USB, FireWire . . . ) or an interface card (e.g., sound, video, network . . . ) or the like. The interface component 1126 can receive input and provide output (wired or wirelessly). For instance, input can be received from devices including but not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, camera, other computer and the like. Output can also be supplied by the computer 1112 to output device(s) via interface component 1126. Output devices can include displays (e.g., CRT, LCD, plasma . . . ), speakers, printers and other computers, among other things.
The system 1200 includes a communication framework 1250 that can be employed to facilitate communications between the client(s) 1210 and the server(s) 1230. The client(s) 1210 are operatively connected to one or more client data store(s) 1260 that can be employed to store information local to the client(s) 1210. Similarly, the server(s) 1230 are operatively connected to one or more server data store(s) 1240 that can be employed to store information local to the servers 1230. In accordance with an aspect of the disclosure, spam filtering functionality can be performed on the server 1230 such a messaging server, email server or the like and/or on the client(s) 1210 for example in conjunction with a messaging application. Furthermore, data stores 1240 and/or 1260 can be utilized to persist activity data associated with senders.
What has been described above includes examples of aspects of the claimed subject matter. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the claimed subject matter, but one of ordinary skill in the art may recognize that many further combinations and permutations of the disclosed subject matter are possible. Accordingly, the disclosed subject matter is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the terms “includes,” “has” or “having” or variations in form thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim.
Number | Name | Date | Kind |
---|---|---|---|
5377354 | Scannell et al. | Dec 1994 | A |
5459717 | Mullan et al. | Oct 1995 | A |
5619648 | Canale et al. | Apr 1997 | A |
5638487 | Chigier | Jun 1997 | A |
5704017 | Heckerman et al. | Dec 1997 | A |
5805801 | Holloway et al. | Sep 1998 | A |
5835087 | Herz et al. | Nov 1998 | A |
5884033 | Duvall et al. | Mar 1999 | A |
5905859 | Holloway et al. | May 1999 | A |
5911776 | Guck | Jun 1999 | A |
5930471 | Milewski et al. | Jul 1999 | A |
5999932 | Paul | Dec 1999 | A |
5999967 | Sundsted | Dec 1999 | A |
6003027 | Prager | Dec 1999 | A |
6023723 | McCormick et al. | Feb 2000 | A |
6041321 | Fabbrizio et al. | Mar 2000 | A |
6041324 | Earl et al. | Mar 2000 | A |
6047242 | Benson | Apr 2000 | A |
6052709 | Paul | Apr 2000 | A |
6101531 | Eggleston et al. | Aug 2000 | A |
6112227 | Heiner | Aug 2000 | A |
6122657 | Hoffman, Jr. et al. | Sep 2000 | A |
6128608 | Barnhill | Oct 2000 | A |
6144934 | Stockwell et al. | Nov 2000 | A |
6157921 | Barnhill | Dec 2000 | A |
6161130 | Horvitz et al. | Dec 2000 | A |
6167434 | Pang | Dec 2000 | A |
6192114 | Council | Feb 2001 | B1 |
6192360 | Dumais et al. | Feb 2001 | B1 |
6195698 | Lillibridge et al. | Feb 2001 | B1 |
6199102 | Cobb | Mar 2001 | B1 |
6199103 | Sakaguchi et al. | Mar 2001 | B1 |
6249807 | Shaw et al. | Jun 2001 | B1 |
6266692 | Greenstein | Jul 2001 | B1 |
6308273 | Goertzel et al. | Oct 2001 | B1 |
6314421 | Sharnoff et al. | Nov 2001 | B1 |
6321267 | Donaldson | Nov 2001 | B1 |
6324569 | Ogilvie et al. | Nov 2001 | B1 |
6327617 | Fawcett | Dec 2001 | B1 |
6330590 | Cotten | Dec 2001 | B1 |
6332164 | Jain | Dec 2001 | B1 |
6351740 | Rabinowitz | Feb 2002 | B1 |
6370526 | Agrawal et al. | Apr 2002 | B1 |
6393465 | Leeds | May 2002 | B2 |
6421709 | McCormick et al. | Jul 2002 | B1 |
6424997 | Buskirk, Jr. et al. | Jul 2002 | B1 |
6427141 | Barnhill | Jul 2002 | B1 |
6434600 | Waite et al. | Aug 2002 | B2 |
6449635 | Tilden, Jr. et al. | Sep 2002 | B1 |
6453327 | Nielsen | Sep 2002 | B1 |
6477551 | Johnson et al. | Nov 2002 | B1 |
6484197 | Donohue | Nov 2002 | B1 |
6505250 | Freund et al. | Jan 2003 | B2 |
6519580 | Johnson et al. | Feb 2003 | B1 |
6546390 | Pollack et al. | Apr 2003 | B1 |
6546416 | Kirsch | Apr 2003 | B1 |
6592627 | Agrawal et al. | Jul 2003 | B1 |
6615242 | Riemers | Sep 2003 | B1 |
6618747 | Flynn et al. | Sep 2003 | B1 |
6633855 | Auvenshine | Oct 2003 | B1 |
6643686 | Hall | Nov 2003 | B1 |
6654787 | Aronson et al. | Nov 2003 | B1 |
6684201 | Brill | Jan 2004 | B1 |
6691156 | Drummond et al. | Feb 2004 | B1 |
6701350 | Mitchell | Mar 2004 | B1 |
6701440 | Kim et al. | Mar 2004 | B1 |
6704772 | Ahmed et al. | Mar 2004 | B1 |
6728690 | Meek et al. | Apr 2004 | B1 |
6732149 | Kephart | May 2004 | B1 |
6732157 | Gordon et al. | May 2004 | B1 |
6732273 | Byers | May 2004 | B1 |
6742047 | Tso | May 2004 | B1 |
6748422 | Morin et al. | Jun 2004 | B2 |
6751348 | Buzuloiu et al. | Jun 2004 | B2 |
6757830 | Tarbotton et al. | Jun 2004 | B1 |
6768991 | Hearnden | Jul 2004 | B2 |
6775704 | Watson et al. | Aug 2004 | B1 |
6779021 | Bates et al. | Aug 2004 | B1 |
6785820 | Muttik et al. | Aug 2004 | B1 |
6842773 | Ralston et al. | Jan 2005 | B1 |
6853749 | Watanabe et al. | Feb 2005 | B2 |
6868498 | Katsikas | Mar 2005 | B1 |
6892193 | Bolle et al. | May 2005 | B2 |
6901398 | Horvitz et al. | May 2005 | B1 |
6915334 | Hall | Jul 2005 | B1 |
6920477 | Mitzenmacher | Jul 2005 | B2 |
6928465 | Earnest | Aug 2005 | B2 |
6957259 | Malik | Oct 2005 | B1 |
6971023 | Makinson et al. | Nov 2005 | B1 |
6990485 | Forman et al. | Jan 2006 | B2 |
7003555 | Jungck | Feb 2006 | B1 |
7032030 | Codignotto | Apr 2006 | B1 |
7039949 | Cartmell et al. | May 2006 | B2 |
7051077 | Lin | May 2006 | B2 |
7072942 | Maller | Jul 2006 | B1 |
7089241 | Alspector et al. | Aug 2006 | B1 |
7117358 | Bandini et al. | Oct 2006 | B2 |
7146402 | Kucherawy | Dec 2006 | B2 |
7155243 | Baldwin et al. | Dec 2006 | B2 |
7155484 | Malik | Dec 2006 | B2 |
7188369 | Ho et al. | Mar 2007 | B2 |
7206814 | Kirsch | Apr 2007 | B2 |
7219148 | Rounthwaite et al. | May 2007 | B2 |
7249162 | Rounthwaite et al. | Jul 2007 | B2 |
7263607 | Ingerman et al. | Aug 2007 | B2 |
7287060 | McCown et al. | Oct 2007 | B1 |
7293063 | Sobel | Nov 2007 | B1 |
7320020 | Chadwick et al. | Jan 2008 | B2 |
7321922 | Zheng et al. | Jan 2008 | B2 |
7359941 | Doan et al. | Apr 2008 | B2 |
7366761 | Murray et al. | Apr 2008 | B2 |
7415504 | Schiavone et al. | Aug 2008 | B2 |
7574409 | Patinkin | Aug 2009 | B2 |
7600255 | Baugher | Oct 2009 | B1 |
7617284 | Salamuniccar | Nov 2009 | B2 |
7711779 | Goodman et al. | May 2010 | B2 |
7739162 | Pettay et al. | Jun 2010 | B1 |
7904517 | Kang et al. | Mar 2011 | B2 |
8037144 | Lund et al. | Oct 2011 | B2 |
20010039575 | Freund et al. | Nov 2001 | A1 |
20010046307 | Wong | Nov 2001 | A1 |
20010049745 | Schoeffler | Dec 2001 | A1 |
20020016824 | Leeds | Feb 2002 | A1 |
20020016956 | Fawcett | Feb 2002 | A1 |
20020059425 | Belfiore et al. | May 2002 | A1 |
20020073157 | Newman et al. | Jun 2002 | A1 |
20020091738 | Rohrabaugh et al. | Jul 2002 | A1 |
20020116463 | Hart | Aug 2002 | A1 |
20020124025 | Janakiraman et al. | Sep 2002 | A1 |
20020129111 | Cooper | Sep 2002 | A1 |
20020147782 | Dimitrova et al. | Oct 2002 | A1 |
20020169954 | Bandini et al. | Nov 2002 | A1 |
20020174185 | Rawat et al. | Nov 2002 | A1 |
20020184315 | Earnest | Dec 2002 | A1 |
20020199095 | Bandini et al. | Dec 2002 | A1 |
20030009495 | Adjaoute | Jan 2003 | A1 |
20030009698 | Lindeman et al. | Jan 2003 | A1 |
20030016872 | Sun | Jan 2003 | A1 |
20030041126 | Buford et al. | Feb 2003 | A1 |
20030088627 | Rothwell et al. | May 2003 | A1 |
20030149733 | Capiel | Aug 2003 | A1 |
20030167311 | Kirsch | Sep 2003 | A1 |
20030191969 | Katsikas | Oct 2003 | A1 |
20030204569 | Andrews et al. | Oct 2003 | A1 |
20030229672 | Kohn | Dec 2003 | A1 |
20040003283 | Goodman et al. | Jan 2004 | A1 |
20040015554 | Wilson | Jan 2004 | A1 |
20040019650 | Auvenshine | Jan 2004 | A1 |
20040019651 | Andaker | Jan 2004 | A1 |
20040059697 | Forman | Mar 2004 | A1 |
20040068543 | Seifert | Apr 2004 | A1 |
20040073617 | Milliken et al. | Apr 2004 | A1 |
20040083270 | Heckerman et al. | Apr 2004 | A1 |
20040093371 | Burrows et al. | May 2004 | A1 |
20040139160 | Wallace et al. | Jul 2004 | A1 |
20040139165 | McMillan et al. | Jul 2004 | A1 |
20040148330 | Alspector et al. | Jul 2004 | A1 |
20040177120 | Kirsch | Sep 2004 | A1 |
20040181571 | Atkinson et al. | Sep 2004 | A1 |
20040193684 | Ben-Yoseph | Sep 2004 | A1 |
20040199585 | Wang | Oct 2004 | A1 |
20040199594 | Radatti et al. | Oct 2004 | A1 |
20040205135 | Hallam-Baker | Oct 2004 | A1 |
20040210640 | Chadwick et al. | Oct 2004 | A1 |
20040215977 | Goodman et al. | Oct 2004 | A1 |
20040255122 | Ingerman et al. | Dec 2004 | A1 |
20040260776 | Starbuck et al. | Dec 2004 | A1 |
20050015455 | Liu | Jan 2005 | A1 |
20050015456 | Martinson, Jr. | Jan 2005 | A1 |
20050021649 | Goodman et al. | Jan 2005 | A1 |
20050041789 | Warren-Smith et al. | Feb 2005 | A1 |
20050050150 | Dinkin | Mar 2005 | A1 |
20050060643 | Glass et al. | Mar 2005 | A1 |
20050076084 | Loughmiller et al. | Apr 2005 | A1 |
20050080855 | Murray | Apr 2005 | A1 |
20050080889 | Malik et al. | Apr 2005 | A1 |
20050081059 | Bandini et al. | Apr 2005 | A1 |
20050091320 | Kirsch et al. | Apr 2005 | A1 |
20050091321 | Daniell et al. | Apr 2005 | A1 |
20050097174 | Daniell | May 2005 | A1 |
20050102366 | Kirsch | May 2005 | A1 |
20050108340 | Gleeson et al. | May 2005 | A1 |
20050114452 | Prakash | May 2005 | A1 |
20050120019 | Rigoutsos et al. | Jun 2005 | A1 |
20050159136 | Rouse et al. | Jul 2005 | A1 |
20050160148 | Yu | Jul 2005 | A1 |
20050165895 | Rajan et al. | Jul 2005 | A1 |
20050182735 | Zager et al. | Aug 2005 | A1 |
20050188023 | Doan et al. | Aug 2005 | A1 |
20050198270 | Rusche et al. | Sep 2005 | A1 |
20050204005 | Purcell et al. | Sep 2005 | A1 |
20050204006 | Purcell et al. | Sep 2005 | A1 |
20050204159 | Davis et al. | Sep 2005 | A1 |
20050228899 | Wendkos et al. | Oct 2005 | A1 |
20060015942 | Judge et al. | Jan 2006 | A1 |
20060026246 | Fukuhara et al. | Feb 2006 | A1 |
20060031303 | Pang | Feb 2006 | A1 |
20060031306 | Haverkos | Feb 2006 | A1 |
20060031464 | Bowman et al. | Feb 2006 | A1 |
20060036693 | Hulten et al. | Feb 2006 | A1 |
20060036701 | Bulfer et al. | Feb 2006 | A1 |
20060041505 | Enyart | Feb 2006 | A1 |
20060047769 | Davis et al. | Mar 2006 | A1 |
20060059238 | Slater et al. | Mar 2006 | A1 |
20060123083 | Goutte et al. | Jun 2006 | A1 |
20060137009 | Chesla | Jun 2006 | A1 |
20060168017 | Stern et al. | Jul 2006 | A1 |
20060265498 | Turgeman et al. | Nov 2006 | A1 |
20070050461 | Petry et al. | Mar 2007 | A1 |
20070101423 | Oliver et al. | May 2007 | A1 |
20070118759 | Sheppard | May 2007 | A1 |
20070130350 | Alperovitch et al. | Jun 2007 | A1 |
20070130351 | Alperovitch et al. | Jun 2007 | A1 |
20070133034 | Jindal et al. | Jun 2007 | A1 |
20070143407 | Avritch et al. | Jun 2007 | A1 |
20070208856 | Rounthwaite et al. | Sep 2007 | A1 |
20080016579 | Pang | Jan 2008 | A1 |
20080104186 | Wieneke et al. | May 2008 | A1 |
20080114843 | Shinde et al. | May 2008 | A1 |
20080120413 | Mody et al. | May 2008 | A1 |
20090157708 | Bandini et al. | Jun 2009 | A1 |
Number | Date | Country |
---|---|---|
1350247 (A) | May 2002 | CN |
0413537 (A2) | Feb 1991 | EP |
0413537(A2) | Feb 1991 | EP |
720333 | Jul 1996 | EP |
0813162 | Dec 1997 | EP |
1300997 | Apr 2003 | EP |
1376427 | Jan 2004 | EP |
1376427 (A2) | Jan 2004 | EP |
10074172 (A) | Mar 1998 | JP |
2000163341 (A) | Jun 2000 | JP |
2001505371 | Apr 2001 | JP |
2001505371 | Apr 2001 | JP |
2002149611 (1) | May 2002 | JP |
2002164887 (A) | Jun 2002 | JP |
2002330175 | Nov 2002 | JP |
2002537727 | Nov 2002 | JP |
2002537727 | Nov 2002 | JP |
2003115925 (A) | Apr 2003 | JP |
2003125005 | Apr 2003 | JP |
2004186888 (A) | Jul 2004 | JP |
20010088973 (A) | Sep 2001 | KR |
20020063534 (A) | Aug 2002 | KR |
519591 | Feb 2003 | TW |
520483 | Feb 2003 | TW |
521213 | Feb 2003 | TW |
9635994 | Nov 1996 | WO |
WO9635994 (A1) | Nov 1996 | WO |
WO9910817 (A1) | Mar 1999 | WO |
WO9937066 (A1) | Jul 1999 | WO |
WO9967731 | Dec 1999 | WO |
WO0146872 (A1) | Jun 2001 | WO |
WO0219069 (A2) | Mar 2002 | WO |
WO0223390 (A2) | Mar 2002 | WO |
WO0230054 A1) | Apr 2002 | WO |
WO02071286 | Sep 2002 | WO |
WO02071286 (A2) | Sep 2002 | WO |
WO02082226 (A2) | Oct 2002 | WO |
WO03054764 | Jul 2003 | WO |
WO2004054188 | Jun 2004 | WO |
WO2004059206 | Jul 2004 | WO |
WO2004059506 (A1) | Jul 2004 | WO |
Number | Date | Country | |
---|---|---|---|
20080140781 A1 | Jun 2008 | US |