Search engine for a computer network

Information

  • Patent Grant
  • 8078602
  • Patent Number
    8,078,602
  • Date Filed
    Friday, December 17, 2004
    21 years ago
  • Date Issued
    Tuesday, December 13, 2011
    14 years ago
Abstract
In one embodiment, client-side programs are employed to observe the navigation of consumers to various websites. Addresses of web pages viewed by consumers may be used to fetch the web pages. A fetched web page may be parsed for one or more keywords. The relevance of the web page to a keyword may be ranked according to consumer preferences, which may relate to consumer interaction with the web page. Web pages and their ranking information may be stored in an index. The index may be consulted to find links to web pages relevant to a keyword employed in a search request.
Description
BACKGROUND OF THE INVENTION

1. Field of the Invention


The present invention relates generally to computer systems, and more particularly but not exclusively to search engines.


2. Description of the Background Art


The Internet is an example of a computer network. On the Internet, consumers on client computers may access various types of information resident in server computers. A server computer that provides information over the Internet is also referred to as a “web server” or a “website”. A website may provide information about various topics, or offer goods and services. A website may comprise a plurality of downloadable documents, such as web pages and files. A consumer may use a web browser to receive and view a web page.


Because of the large number of websites on the Internet, searching the Internet for specific information usually requires the services of a search engine. Generally speaking, a search engine helps consumers look for relevant web pages. A typical search engine accepts a word or a phrase, referred to herein as a “keyword.” The search engine employs the keyword in conjunction with its search algorithm to find matching web pages. The links to matching web pages are presented to the consumer in the form of a listing referred to as “search results.” Typical search results list the matching web pages as clickable links, with each link pointing to a corresponding web page. Examples of websites with search engines include Yahoo, Google, and Alta Vista.


A search engine includes an index (also referred to as a “catalog”) containing links to web pages responsive to particular keywords. Entries to the index may be obtained by accepting submissions from website operators, as in the case of so-called “human-powered search engines,” by using a crawler, or both. Crawler-based search engines employ a crawler (also referred to as a “spider” or “robot”) to automatically fetch web pages over the Internet. A crawler may be given an address of a web page, fetch that web page, then fetch web pages pointed to by that web page, and so on. Web pages fetched by the crawler are stored in the index.


A keyword and a link responsive to the keyword are also collectively referred to as a “keyword-link combination.” A typical search engine ranks keyword-link combinations stored in an index based on the relevance of the link to the keyword. A keyword-link combination may be ranked based on the number of times the keyword appears on the web page pointed to by the link. The web page pointed to by the link may be further ranked based on the number and credibility of other web pages pointing to it. For example, when a keyword appears the same number of times on two different web pages, the web page referenced by more, credible web pages gets the higher ranking. When a consumer employs a search engine to search the Internet using a keyword, the search engine sifts through the index to find the highest ranked keyword-link combinations having that keyword. Links of the highest ranked keyword-link combinations are presented to the consumer as search results.


SUMMARY

In one embodiment, client-side programs are employed to observe the navigation of consumers to various websites. Addresses of web pages viewed by consumers may be used to fetch the web pages. A fetched web page may be parsed for one or more keywords. The relevance of the web page to a keyword may be determined according to consumer preferences, which may relate to consumer interaction with the web page. Web pages and their ranking information may be stored in an index. The index may be consulted to find links to web pages relevant to a keyword employed in a search request.


These and other features of the present invention will be readily apparent to persons of ordinary skill in the art upon reading the entirety of this disclosure, which includes the accompanying drawings and claims.





DESCRIPTION OF THE DRAWINGS


FIG. 1 shows a schematic diagram of an example computer that may be used in embodiments of the present invention.



FIG. 2 shows a schematic diagram of a computing environment in accordance with an embodiment of the present invention.



FIG. 3 schematically illustrates the tracking of a conversion process, in accordance with an embodiment of the present invention.



FIG. 4 schematically shows a data packet in accordance with an embodiment of the present invention.



FIG. 5 schematically shows a message unit in accordance with an embodiment of the present invention.



FIG. 6 shows a schematic diagram of a search engine in accordance with an embodiment of the present invention.



FIG. 7 shows a flow diagram of a method that may be performed by a crawler, in accordance with an embodiment of the present invention.



FIG. 8 shows a flow diagram of a method that may be performed by an indexer, in accordance with an embodiment of the present invention.



FIG. 9 shows a flow diagram of a method for responding to a search request, in accordance with an embodiment of the present invention.





The use of the same reference label in different drawings indicates the same or like components.


DETAILED DESCRIPTION

In the present disclosure, numerous specific details are provided, such as examples of apparatus, components, and methods, to provide a thorough understanding of embodiments of the invention. Persons of ordinary skill in the art will recognize, however, that the invention can be practiced without one or more of the specific details. In other instances, well-known details are not shown or described to avoid obscuring aspects of the invention.


Being computer-related, it can be appreciated that the components disclosed herein may be implemented in hardware, software, or a combination of hardware and software (e.g., firmware). Software components may be in the form of computer-readable program code stored in a computer-readable storage medium, such as memory, mass storage device, or removable storage device. For example, a computer-readable medium may comprise computer-readable program code for performing the function of a particular component. Likewise, computer memory may be configured to include one or more components, which may then be executed by a processor. Components may be implemented separately in multiple modules or together in a single module.


Referring now to FIG. 1, there is shown a schematic diagram of an example computer that may be used in embodiments of the present invention. Depending on its configuration, the computer shown in the example of FIG. 1 may be employed as a client computer, a server computer, or other data processing device. The computer of FIG. 1 may have less or more components to meet the needs of a particular application. As shown in FIG. 1, the computer may include a processor 101, such as those from the Intel Corporation or Advanced Micro Devices, for example. The computer may have one or more buses 103 coupling its various components. The computer may include one ore more input devices 102 (e.g., keyboard, mouse), a computer-readable storage medium (CRSM) 105 (e.g., floppy disk, CD-ROM), a CRSM reader 104 (e.g., floppy drive, CD-ROM drive), a display monitor 109 (e.g., cathode ray tube, flat panel display), a communications interface 106 (e.g., network adapter, modem) for coupling to a network, one or more data storage devices 107 (e.g., hard disk drive, optical drive, FLASH memory), and a main memory 108 (e.g., RAM). Software embodiments may be stored in a computer-readable storage medium 105 for reading into a data storage device 107 or main memory 108. Software embodiments in main memory 108 may be executed by processor 101. In the example of FIG. 1, main memory 108 is shown as having a message delivery program 120, which is further described below. Message delivery program 120 and other programs in main memory 108 may be loaded from a computer-readable storage medium 105, a data storage device 107, or over the Internet by way of communications interface 106, for example. Message delivery program 120 and other programs in main memory 108 may be executed by processor 101.



FIG. 2 shows a schematic diagram of a computing environment in accordance with an embodiment of the present invention. In the example of FIG. 2, the computing environment includes one or more web server computers 160 (i.e., 160-1, 160-2, . . . ), one or more client computers 110, one or more message server computers 140, and other computers not specifically shown. In the example of FIG. 2, a client computer 110 communicates with server computers (e.g., a web server computer or a message server computer) over the Internet. As such, arrows 201 denote Internet connections in this example. Intermediate nodes such as gateways, routers, bridges, Internet service provider networks, public-switched telephone networks, proxy servers, firewalls, and other network components are not shown for clarity.


A client computer 110 is typically, but not necessarily, a personal computer such as those running the Microsoft Windows™ operating system, for example. A consumer may employ a suitably equipped client computer 110 to get on the Internet and access computers coupled thereto. For example, a client computer 110 may be used to access web pages from a web server computer 160.


A web server computer 160 may be a server computer hosting a website, which comprises web pages designed to attract consumers surfing on the Internet. A web server computer 160 may include web pages supporting advertisements, downloadable computer programs, products available for online purchase, and so on. As can be appreciated, a website may be on one or more server computers.


A message server computer 140 may include the functionalities of a web server computer 160. In one embodiment, a message server computer 140 further includes a database 171. Database 171 may be a commercially available database, such as those available from the Oracle Corporation. Database 171 may store client data received from message delivery programs 120 running in client computers 110. The client data may be transmitted from a client computer 110 to message server computer 140 in a data packet 121. The client data may include navigation and behavioral data obtained by a message delivery program 120 by monitoring a consumer's online activities. In the example of FIG. 2, message server computer 140 is shown as communicating with one client computer 110 for clarity of illustration. In practice, message server computer 140 receives data packets 121 containing client data from a plurality of client computers 110, each of which has a message delivery program 120. A message server computer 140 may also include downloadable computer programs and files for supporting, updating, and maintaining software components on a client computer 110.


Web server computers 160 and message server computers 140 are typically, but not necessarily, server computers such as those available from Sun Microsystems, Hewlett-Packard, or International Business Machines. A client computer 110 may communicate with a web server computer 160 or a message server computer 140 using client-server protocol. It is to be noted that client-server computing is well known in the art and will not be further described here.


As shown in FIG. 2, a client computer 110 may include a web browser 112 and a message delivery program 120. Web browser 112 may be a commercially available web browser or web client. In one embodiment, web browser 112 comprises the Microsoft Internet Explorer™ web browser. A web browser allows a consumer on a client computer to access a web page. In the example of FIG. 2, web browser 112 is depicted as displaying a web page 113 from a web server computer 160. A web page, such as web page 113, has a corresponding address referred to as a “URL” (Uniform Resource Locator). Web browser 112 is pointed to the URL of a web page to receive that web page in client computer 110. Web browser 112 may be pointed to a URL by entering the URL at an address window of web browser 112, or by clicking a link pointed to that URL, for example.


In one embodiment, message delivery program 120 is downloadable from a message server computer 140 or a web server computer 160. Message delivery program 120 may be downloaded to a client computer 110 in conjunction with the downloading of another computer program. For example, message delivery program 120 may be downloaded to client computer 110 along with a utility program 181 that is provided free of charge or at a reduced cost. Utility program 181 may be an e-wallet or calendar program, for example. Utility program 181 may be provided to a consumer in exchange for the right to deliver advertisements to that consumer's client computer 110 via message delivery program 120. In essence, revenue from advertisements delivered to the consumer helps defray the cost of creating and maintaining the utility program. Message delivery program 120 may also be provided to the consumer along with free or reduced cost access to an online service, for example.


Message delivery program 120 is a client-side program in that it is stored and run in a client computer 110. Message delivery program 120 may comprise computer-readable program code for displaying advertisements in a client computer 110 and for monitoring the online activity of a consumer on the client computer 110. It is to be noted that the mechanics of monitoring a consumer's online activity, such as determining where a consumer is navigating to, the URL of web pages received in client computer 110, the domain names of websites visited by the consumer, what the consumer is typing on a web page, what keyword the consumer is providing to a search engine, whether the consumer clicked on a link or an advertisement, when the consumer activates a mouse or keyboard, and the like, is, in general, known in the art and not further described here. For example, message delivery program 120 may learn of consumer online activities by receiving event notifications from web browser 112.


Message delivery program 120 may record the consumer's online activity for reporting to message server computer 140. The recorded consumer online activity is also referred to as “client data,” and provided to message server computer 140 using data packets 121. Message server computer 140 may use the client data to provide targeted advertisements to the consumer. Message server computer 140 may include the advertisement or data for displaying the advertisement in a message unit 141. In the example of FIG. 2, the targeted advertisement is labeled as advertisement 116 and displayed in a presentation vehicle 115. Presentation vehicle 115 may be a pop-under, pop-up, separate browser window, custom browser window, or other means for displaying an advertisement on a computer screen. Techniques for delivering advertisements to client computers using a client-side program are also disclosed in commonly-owned U.S. Pat. No. 7,069,515, entitled “Method and Apparatus for Displaying Messages in Computer Systems,” filed on May 21, 2002 by Scott G. Eagle, David L. Goulden, Anthony G. Martin, and Eugene A. Veteska, issued Jun. 27, 2006, which is incorporated herein by reference in its entirety.


As will be more apparent below, message delivery programs are primarily used in embodiments of the present invention to obtain client data for building a search engine index, not necessarily to display presentation vehicles in a client computer 110. That is, a message delivery program does not necessarily have to display advertisements in a client computer 110. This is advantageous in that consumers may be allowed to obtain a free or reduced cost utility program 181 (or other benefits) without having to see advertisements from the provider or sponsor of the utility program.



FIG. 3 schematically illustrates the tracking of a conversion process, in accordance with an embodiment of the present invention. A “conversion” occurs when a consumer makes an online purchase in response to an advertisement presented to her. As will be more apparent below, embodiments of the invention may use conversion as a factor in ranking a keyword-link combination. In the example of FIG. 3, web pages 202 (i.e., 202-1, 202-2, . . . ) may be sequentially displayed in the same or separate windows of web browser 112. Each web page 202 includes a page identifier 210 (i.e., 210-1, 210-2, . . . ), which may be a URL. Message delivery program 120 records the URLs of web pages 202 viewed by the consumer as well the amount of time the consumer spent with each web page as navigation data. For purposes of the present disclosure, the web pages “viewed” by consumers are those web pages received in client computers. In the example of FIG. 3, navigation data 627 comprises log entries 117 (i.e., 117-1, 117-2, . . . ). Each log entry 117 includes a machine ID anonymously identifying the client computer 110 (or the consumer), a page identifier, and a time stamp indicating when the log entry 117 was made. The time stamps between log entries 117 provide an estimate of the amount of time the consumer spent viewing the indicated web page. A log entry 117 may be created for each web page 202 viewed by the consumer. For example, a log entry 117-1 may be created when the consumer clicks on a link 501 to receive web page 202-2 in client computer 110, a log entry 117-2 may be created when the consumer receives web page 202-3 in client computer 110, and so on.


In the example of FIG. 3, web page 202-2 is also referred to as a “landing page” because it is the web page directly pointed to by an advertisement having a link in web page 202-1. A website that sells products online may also have a “confirmation page” 202-5. A confirmation page is a web page provided to the consumer to confirm a just completed online purchase. A website may have “intermediate pages” 202-3, 202-4, and so on between a landing page 202-2 and a confirmation page 202-5. An intermediate page may be an online product catalog, shopping cart, and other types of web pages. The page identifiers of landing and confirmation pages of popular or partner websites may be stored in database 171 of message server computer 140. The page identifiers of the landing and confirmation pages may be compared to those in navigation data 627 of client computers 110 to determine the number of consumers making online purchases from a particular web page. As can be appreciated, web pages from which consumers make purchases may be highly relevant, and may thus be deemed a consumer preferred page. Techniques for monitoring consumer purchase behavior are also disclosed in commonly-owned U.S. Pat. No. 7,401,140, entitled “Generation of Statistical Information In a Computer Network,” filed by David L. Goulden and Dominic Bennett on Jun. 17, 2003, and issued Jul. 15, 2008, which is incorporated herein by reference in its entirety.



FIG. 4 schematically shows a data packet 121 in accordance with an embodiment of the present invention. A data packet 121 may include a user ID number 625 anonymously identifying the consumer or her client computer, local date and time 626 indicating when the data packet 121 was sent from the client computer 110 to message server computer 140, navigation data 627, and behavioral data 628. Navigation data 627 include navigation related information, such as addresses of web pages viewed by the consumer. Example navigation data 627 has been discussed in connection with FIG. 3. Behavioral data 628 may contain information indicative of consumer online behavior, such as advertisements and links the consumer clicked on, advertisements converted into a purchase, and the like.


Referring to FIG. 5, there is schematically shown a message unit 141 in accordance with an embodiment of the present invention. A message unit 141 may include a message content 742, a vehicle 743, rules 744, and an expiration date 745. Message content 742 may include computer-readable program code, text, images, audio, video, hyperlink, and other information. A message content 742 may be an advertisement or computer-readable program code for receiving an advertisement from an ad server, for example.


Vehicle 743 indicates the presentation vehicle to be used in presenting the message content indicated by message content 742. For example, vehicle 743 may call for the use of a pop-up, banner, message box, text box, slider, separate window, window embedded in a web page, or other presentation vehicle to display a message content. In the example of FIG. 2, advertisement 116 and presentation vehicle 115 may be specified in a message content 742 and vehicle 743, respectively, of a message unit 141.


Rules 744 indicate one or more triggering conditions for processing a message unit 141. Rules 744 may specify to display a message content 742 when a consumer navigates to a specific web page or as soon as the message unit 141 is received in a client computer 110. For example, a car company may contract with the operator of a message server computer 140 to deliver a message unit 141 containing an advertisement for a minivan (hereinafter, “minivan message unit”). The rules 744 of the minivan message unit may specify that the minivan advertisement is to be displayed to consumers viewing the minivan web page of “cars.com”. In this example, the minivan web page of cars.com has the URL “www.cars.com/minivans”. When a consumer visits the main page (or any web page) of “cars.com”, message delivery program 120 (see FIG. 2) will send a data packet 121 to message server computer 140 indicating that the consumer is on “cars.com”. In response, message server computer 140 will send the minivan message unit to client computer 110. When the consumer navigates to the URL “www.cars.com/minivans”, message delivery program 120 will detect that the minivan message unit has been triggered for processing (i.e., rules 744 of the minivan message unit have been satisfied). Accordingly, message delivery program 120 will process the minivan message unit by displaying it.


Rules 744 may also include: (a) a list of domain names at which the content of a message unit 141 is to be displayed, (b) URL sub-strings that will trigger displaying of the content of the message unit 141, and (b) time and date information. As shown in FIG. 5, a message unit 141 may also include an expiration date 745. Expiration date 745 indicates the latest date and time the message unit 141 can still be processed. In one embodiment, expired message units 141 are not processed even if their rules 744 have been satisfied. Expired message units 141 may be removed from client computer 110.



FIG. 6 shows a schematic diagram of a search engine 650 in accordance with an embodiment of the present invention. A search engine 650 may be implemented in a message server computer 140 as shown in FIG. 2, or in one or more dedicated server computers, for example. A search engine 650 may be employed to provide search results to a consumer performing a keyword search. A keyword may be a word or a phrase, for example. Search results may be presented to a consumer as a web page containing one or more links responsive to a search request for one or more keywords. In the example of FIG. 6, a search engine 650 may include one or more crawlers 651, an indexer 652, a sifter 653, and an index 654.


Crawlers 651 may comprise computer-readable program code running on one or more computers. A crawler 651, also referred to as a “spider”, “robot”, or “bot”, performs a discovery function for a search engine 650. A search engine 650 employs a crawler 651 to fetch web pages over the Internet. Note that a search engine 650 may divide the web page fetching function to one or more crawlers 651. The fetched web pages may be indexed, ranked and stored in an index 654.



FIG. 7 shows a flow diagram of a method 670 that may be performed by a crawler 651, in accordance with an embodiment of the present invention. In step 672, the crawler 651 receives addresses of web pages viewed by consumers as observed by client-side programs, such as a message delivery program 120. The addresses of web pages viewed by consumers may be extracted from navigation data contained in data packets 121, which may be stored in a database 171. In step 674, using the addresses received in step 672, the crawler 651 fetches the web pages viewed by the consumers. In step 676, for each fetched web page, a crawler 651 may fetch adjacent or associated web pages. An adjacent web page may be a web page one level below or above the fetched web page. A web page one level above a fetched web page may be a clickable link on the fetched web page, for example. A web page one level below the fetched web page may have a URL cut from the URL of the fetched web page. For example, if the fetched web page has the URL “http://main_page/level1.htm/level2.htm”, a web page one level below the fetched web page would have the URL “http://main_page/level1.htm/”. Associated web pages are those that are linked to the fetched web page through one or more web pages.


In light of the present disclosure, it can be appreciated that crawling to web pages actually viewed by consumers and adjacent web pages advantageously limit the contents of an index 654 to useable web pages. In other words, determining web pages viewed by consumers and using those web pages for search purposes, allow the search engine 650 to provide search results containing links to web pages actually employed by consumers. In marked contrast, conventional search engines have crawlers that follow a long chain of links from a particular web page, regardless of whether or not consumers actually use those web pages. While the conventional approach may yield an index containing lots of fetched web pages, those web pages are not necessarily relevant or useful to consumers. In other words, these conventional search engines may generate search results containing many links to not quite useful web pages. Furthermore, the approach taken by conventional search engines requires a relatively large amount of computer resources to perform crawling and indexing functions.


An indexer 652 may comprise computer-readable program code for parsing, ranking, and indexing web pages fetched by a crawler 651. An indexer 652 may parse a fetched web page for the occurrence of one or more keywords for indexing purposes. A fetched web page may be identified by its address, which may be used as a link in a search result responsive to a keyword. Each keyword may be associated with a link, referred to as a “keyword-link” combination. A keyword-link combination may be ranked according to the relevance of the link to the keyword. Typical algorithms for ranking keyword-link combinations include taking into account the number of times the keyword appears on the link (i.e., the web page pointed to by the link), proximity of the keyword to other keywords, and use of regular expressions or other text-matching techniques.


To increase traffic on their websites, webmasters have come up with ways to “defeat” common ranking algorithms and artificially increase the ranking of their web pages. For example, web pages may be filled with non-visible popular texts, trademarked names, and so on to make them appear relevant to a search engine. In response, some conventional search engines also take into account the number of web pages pointing to a particular web page. That is, a keyword-link combination may also be ranked based on the number of other web pages pointing to the link and the credibility (e.g., university web page versus porn web page) of the pointing web pages. While this approach improves the quality of the ranking, it still has at least two major flaws. Firstly, this approach may inaccurately rank highly relevant web pages that are not pointed to by most web pages. Secondly, deeming certain sites as more credible than others is elitist and may or may not be correct. A site that is credible for one subject may not be for others.


In one embodiment, an indexer 652 takes into account consumer preferences in ranking a keyword-link combination. Consumer preferences include factors relating to consumer interaction with a web page. Consumer preferences may be measured in terms of how long consumers spend on a web page, the number of consumers who made an online purchase from a web page, the number of times a particular consumer viewed a web page within a given period of time, and the number of times consumers clicked on a link on a web page, for example. Consumer preferences may be taken into account along with conventional ranking factors in ranking keyword-link combinations. Weights may be assigned to particular consumer preferences and other ranking factors (which may be conventional) to come up with a score for a keyword-link combination. The scores of keyword-link combinations may be employed to determine their ranking. In responding to a search request for a particular keyword, the search engine 650 may list the responsive keyword-link combinations by rank on a search results web page.


The ranking of keyword-link combinations based on consumer preferences for search purposes is also disclosed in commonly-assigned U.S. application Ser. No. 10/815,112, filed on Mar. 31, 2004, published as U.S. Patent Publication No. 2005-0222982 A1 on Oct. 6, 2005, which is incorporated herein by reference in its entirety.



FIG. 8 shows a flow diagram of a method 680 that may be performed by an indexer 652, in accordance with an embodiment of the present invention. In step 682, the indexer 652 parses web pages fetched by a crawler 651. A fetched web page may be parsed for the presence of one or more keywords. In step 684, the relevance of a parsed web page to one or more keywords is ranked according to a ranking process that takes into account consumer preferences as discussed above. In step 686, the indexer 652 stores keyword-link combinations and their ranking information in an index 654.


In contrast to ranking algorithms employed by conventional search engines, taking into account consumer preferences advantageously allow for ranking that is based on actual consumer interaction with the web page. Taking into account consumer preferences is a democratic, as opposed to elitist, approach that increases ranking accuracy by effectively giving consumers a “vote” on which web pages are relevant for a particular keyword.


As shown in FIG. 6, a search engine 650 may also include a sifter 653. A sifter 653 may comprise computer-readable program code for sifting through keyword-link combinations and corresponding ranking information stored in an index 654. An index 654 may comprise a searchable, commercially-available database program, for example. Upon receiving a keyword as part of a search request from a consumer, the sifter 653 may consult the index 654 for links having a keyword-link combination with that keyword. The sifter 653 may order the responsive keyword-link combinations according to their ranking, and provide a corresponding search results web page.


Referring now to FIG. 9, there is shown a flow diagram of a method 690 for responding to a search request, in accordance with an embodiment of the present invention. In step 691, consumer preferences and navigations to various websites are monitored using programs running on client computers. Client-side programs may monitor consumer preferences, such as the number of consumers who received a web page, the number of clicks made on a web page, and so on. Client-side programs may also note the addresses of web pages viewed by the consumer. Data indicative of consumer preferences and navigation may be sent out of a client computer and sent to a message server computer associated with a search engine, for example.


In step 692, consumer preference and navigation data reported by client-side programs may be employed to build an index for a search engine. In one embodiment, addresses of web pages viewed by consumers are extracted from navigation data reported by client-side programs. One or more crawlers may be employed to fetch those web pages, which may be parsed to build keyword-link combinations. Keyword-link combinations may be ranked using a ranking process that takes into account consumer preferences. Keyword-link combinations and their ranking information may be stored in the index.


In step 693, a search engine receives a search request for a keyword. The keyword may be received from a consumer performing a search over the Internet. The search engine may be implemented in an Internet portal or another web server.


In step 694, the search engine may consult the index to find top ranked keyword-link combinations that include that keyword. In response to the search request, links from top ranked keyword-link combinations responsive to the keyword may be included in search results provided to the consumer.


As can be appreciated, embodiments of the present invention may be employed to provide a search engine service over the Internet and other computer networks. Embodiments of the present invention may be incorporated in existing search engines to provide more responsive search results.


While specific embodiments of the present invention have been provided, it is to be understood that these embodiments are for illustration purposes and not limiting. Many additional embodiments will be apparent to persons of ordinary skill in the art reading this disclosure.

Claims
  • 1. A method for presenting results in response to a search query, the method comprising the steps of: (A) obtaining consumer navigation data and behavioral data from multiple user computers;(B) for each of a plurality of web pages identified by said navigation data, using said consumer navigation data and said behavioral data to determine corresponding implied consumer preference data;(C) building a search engine index using at least the consumer navigation data and the implied consumer preference data, said step of building comprising: (c1) using said consumer navigation data to determine a particular web page viewed on at least one of said multiple user computers;(c2) parsing a copy of the particular web page to determine the occurrence of one or more keywords in the particular web page; and(c3) ranking the particular web page relative to at least some of the one or more keywords, said ranking being based at least in part on results of the parsing and on implied consumer preference data associated with the particular web page;(D) receiving a search request based on a search keyword; and(E) in response to said search request, retrieving results from the search engine index, said results identifying a plurality of web pages, and(F) providing the results ordered, at least in part, by a ranking of each of the plurality of web pages relative to the search keyword.
  • 2. The method of claim 1, wherein the consumer navigation data include addresses of web pages viewed at one or more user computers.
  • 3. The method of claim 1, wherein the implied consumer preference data for a particular web page include an amount of time one or more users spent viewing the particular web page.
  • 4. The method of claim 1, wherein the implied consumer preference data for a particular web page include actions taken while viewing the particular web page.
  • 5. The method of claim 1 further comprising: repeating steps (c1) to (c3) for multiple web pages identified in the consumer navigation data.
  • 6. The method of claim 1 wherein at least some of the consumer navigation data and the behavioral data are obtained from multiple computer programs running on said multiple user computers.
  • 7. The method of claim 6 wherein at least some of the multiple computer programs are browser independent.
  • 8. The method of claim 1 wherein at least some of the consumer navigation data and the behavioral data are obtained from multiple computer programs running independently of browser programs on said multiple user computers.
  • 9. A server comprising: data storage configured to receive consumer navigation data and behavioral data from multiple user computers; anda search engine indexer configured to:determine, for each of a plurality of web pages identified in said consumer navigation data, corresponding implied consumer preference data, said implied consumer preference data being based, at least in part, on said consumer navigation data and said behavioral data; and tobuild a search engine index using the consumer navigation and the implied consumer preference data, by: (c1) using said consumer navigation data to determine a particular web page viewed by at least one of said multiple user computers;(c2) parsing a copy of the particular web page to determine the occurrence of one or more keywords in the particular web page; and(c3) ranking the particular web page relative to at least some of the one or more keywords, said ranking being based at least in part on results of the parsing and on implied consumer preference data associated with the particular web page;the search engine being further configured to receive a search request based on a search keyword, and, responsive to said search request,to retrieve results from the search engine index, said results identifying a plurality of web pages corresponding to said search keyword, andto provide said results, ordered, at least in part, by a ranking of each of the plurality of web pages relative to the search keyword.
  • 10. The system of claim 9, wherein the consumer navigation data include addresses of web pages viewed at a user computer.
  • 11. The system of claim 9, wherein the implied consumer preference data for a particular web page include an amount of time users spent viewing the particular web page.
  • 12. The system of claim 9, wherein the implied consumer preference data for a particular web page include actions taken while viewing the particular web page.
  • 13. The server of claim 9 wherein at least some of the consumer navigation data and the behavioral data are obtained from multiple computer programs running on said multiple user computers.
  • 14. The server of claim 13 wherein at least some of the multiple computer programs are browser independent.
  • 15. The server of claim 9 wherein at least some of the consumer navigation data and the behavioral data are obtained from multiple computer programs running independently of browser programs on said multiple user computers
  • 16. A computer-readable storage medium comprising computer-readable program code, the computer-readable storage code being executable by a processor to perform a method, the method comprising: (A) obtaining consumer navigation data and behavioral data from multiple user computers;(B) for each of a plurality of web pages identified by the consumer navigation data, using said consumer navigation data and said behavioral data to determine implied consumer preference data;(C) building a search engine index using at least the consumer navigation and the implied consumer preference data, wherein said step of building comprises: (c1) using said consumer navigation data to determine a particular web page viewed by at least one of said multiple user computers;(c2) parsing a copy of the particular web page to determine the occurrence of one or more keywords in the particular web page; and(c3) ranking the particular web page relative to at least some of the one or more keywords, said ranking being based at least in part on results of the parsing and on implied consumer preference data associated with the particular web page;(D) receiving a search request based on a search keyword; and(E) based on the search request, retrieving results from the search engine index, said results identifying a plurality of web pages, and(F) providing the results, ordered, at least in part, by a ranking of each of the plurality of web pages relative to the search keyword.
  • 17. The computer-readable storage medium of claim 16, wherein the consumer navigation data include addresses of web pages viewed at a user computer.
  • 18. The computer-readable storage medium of claim 16, wherein the implied consumer preference data for a particular web page include an amount of time one or more users spent viewing the particular web page.
  • 19. The computer-readable storage medium of claim 16, wherein the implied consumer preference data for a particular web page include actions taken while viewing the particular web page.
  • 20. A method comprising the steps of: (A) obtaining consumer navigation data from computer programs running on multiple user computers, said navigation data comprising data identifying a plurality of web pages viewed at said user computers;(B) obtaining behavioral data from said multiple user computers, said behavioral data relating to said plurality of web pages identified by said consumer navigation data;(C) for each of the plurality of web pages identified by the navigation data, using said navigation data and said behavioral data to determine corresponding implied consumer preference data;(D) building a search engine index using at least the consumer navigation data and the implied consumer preference data, said step of building comprising, for each particular web page of the plurality of web pages identified by the navigation data: (d1) parsing a copy of the particular web page to determine the occurrence of one or more keywords in the particular web page; and(d2) ranking the particular web page relative to at least some of the one or more keywords, said ranking being based at least in part on results of the parsing and on implied consumer preference data associated with the particular web page; and(E) in response to a search request based on a search keyword, retrieving results from the search engine index, said results identifying a plurality of web pages, and(F) providing the results ordered, at least in part, by a ranking of the plurality of web pages relative to the search keyword.
  • 21. The method of claim 20 wherein at least some of the multiple computer programs are browser independent.
  • 22. The system of claim 20, wherein the consumer navigation data include addresses of web pages viewed at a user computer.
  • 23. The system of claim 20, wherein the implied consumer preference data for a particular web page include an amount of time users spent viewing the particular web page.
  • 24. The system of claim 20, wherein the implied consumer preference data for a particular web page include actions taken while viewing the particular web page.
  • 25. A method comprising the steps of: (A) obtaining consumer navigation data from browser-independent computer programs running on multiple user computers, said navigation data comprising data identifying a plurality of web pages viewed at said user computers;(B) for each specific web page of the plurality of web pages identified by the navigation data, using said navigation data to determine corresponding implied consumer preference data for that specific web page;(C) for each particular web page of the plurality of web pages identified by the navigation data: (c1) parsing the copy of the particular web page to determine the occurrence of one or more keywords in the particular web page;(c2) ranking a particular web page relative to at least some of the one or more keywords, said ranking being based at least in part on results of the parsing and on implied consumer preference data associated with the particular web page;(c3) storing results of said ranking in a search engine index; and,(D) in response to a search request based on a search keyword, retrieving results from the search engine index, said results identifying a plurality of web pages, and(E) providing the results ordered, at least in part, by a ranking of the plurality of web pages relative to the search keyword.
  • 26. The method of claim 20 wherein at least some of the multiple computer programs running on the multiple user computers are running independently of browser programs on said multiple user computers.
  • 27. The system of claim 25, wherein the consumer navigation data include addresses of web pages viewed at a user computer.
  • 28. The system of claim 25, wherein the implied consumer preference data for a particular web page include one or more of: (i) an amount of time users spent viewing the particular web page; and(ii) actions taken while viewing the particular web page.
US Referenced Citations (784)
Number Name Date Kind
4455083 Elmes Jun 1984 A
4575579 Simon et al. Mar 1986 A
4719567 Whittington et al. Jan 1988 A
4775935 Yourick Oct 1988 A
4782449 Brinker et al. Nov 1988 A
4799146 Chauvel Jan 1989 A
4850007 Marino et al. Jul 1989 A
4977594 Shear Dec 1990 A
5027400 Baji et al. Jun 1991 A
5029104 Dodson et al. Jul 1991 A
5093718 Hoarty et al. Mar 1992 A
5099420 Barlow et al. Mar 1992 A
5105184 Pirani et al. Apr 1992 A
5159669 Trigg et al. Oct 1992 A
5165012 Crandall et al. Nov 1992 A
5196838 Meier et al. Mar 1993 A
5202961 Mills et al. Apr 1993 A
5220420 Hoarty et al. Jun 1993 A
5220516 Dodson et al. Jun 1993 A
5220564 Tuch et al. Jun 1993 A
5231499 Trytko Jul 1993 A
5247517 Ross et al. Sep 1993 A
5253341 Rozmanith et al. Oct 1993 A
5268963 Monroe et al. Dec 1993 A
5283639 Esch et al. Feb 1994 A
5283731 Lalonde et al. Feb 1994 A
5285442 Iwamura et al. Feb 1994 A
5297249 Bernstein et al. Mar 1994 A
5305195 Murphy Apr 1994 A
5307456 MacKay Apr 1994 A
5313455 van der Wal et al. May 1994 A
5315580 Phaal May 1994 A
5319455 Hoarty et al. Jun 1994 A
5321740 Gregorek et al. Jun 1994 A
5325423 Lewis Jun 1994 A
5325483 Ise et al. Jun 1994 A
5327554 Palazzi et al. Jul 1994 A
5333237 Stefanopoulos et al. Jul 1994 A
5347632 Filepp et al. Sep 1994 A
5355472 Lewis Oct 1994 A
5355501 Gross et al. Oct 1994 A
5361091 Hoarty et al. Nov 1994 A
5361199 Shoquist et al. Nov 1994 A
5361393 Rossillo Nov 1994 A
5367621 Cohen et al. Nov 1994 A
5373375 Weldy Dec 1994 A
5392447 Schlack et al. Feb 1995 A
5412720 Hoarty May 1995 A
5418549 Anderson et al. May 1995 A
5438518 Bianco et al. Aug 1995 A
5442771 Filepp et al. Aug 1995 A
5446919 Wilkins Aug 1995 A
5469553 Patrick Nov 1995 A
5481741 McKaskle et al. Jan 1996 A
5483466 Kawahara et al. Jan 1996 A
5491785 Robson et al. Feb 1996 A
5499340 Barritz Mar 1996 A
5500890 Rogge et al. Mar 1996 A
5515098 Carles May 1996 A
5515270 Weinblatt May 1996 A
5515490 Buchanan et al. May 1996 A
5517612 Dwin et al. May 1996 A
5524195 Clanton, III et al. Jun 1996 A
5524197 Uya et al. Jun 1996 A
5530472 Bregman et al. Jun 1996 A
5530759 Braudaway et al. Jun 1996 A
5530852 Meske et al. Jun 1996 A
5532735 Blahut et al. Jul 1996 A
5541986 Hou Jul 1996 A
5544302 Nguyen Aug 1996 A
5544320 Konrad Aug 1996 A
5548745 Egan et al. Aug 1996 A
5563804 Mortensen et al. Oct 1996 A
5564043 Siefert Oct 1996 A
5572643 Judson Nov 1996 A
5579381 Courville et al. Nov 1996 A
5583560 Florin et al. Dec 1996 A
5583763 Atcheson et al. Dec 1996 A
5584025 Keithley et al. Dec 1996 A
5590046 Anderson et al. Dec 1996 A
5594509 Florin et al. Jan 1997 A
5594779 Goodman Jan 1997 A
5596718 Boebert et al. Jan 1997 A
5602905 Mettke Feb 1997 A
5604542 Dedrick Feb 1997 A
5606359 Youden et al. Feb 1997 A
5608850 Robertson Mar 1997 A
5615131 Mortensen et al. Mar 1997 A
5615325 Peden Mar 1997 A
5617526 Oran et al. Apr 1997 A
5621456 Florin et al. Apr 1997 A
5627886 Bowman May 1997 A
5629978 Blumhardt et al. May 1997 A
5630081 Rybicki et al. May 1997 A
5635979 Kostreski et al. Jun 1997 A
5638443 Stefik et al. Jun 1997 A
5642484 Harrison, III et al. Jun 1997 A
5649186 Ferguson Jul 1997 A
5657450 Rao et al. Aug 1997 A
5664948 Dimitriadis et al. Sep 1997 A
5673322 Pepe et al. Sep 1997 A
5675510 Coffey et al. Oct 1997 A
5680562 Conrad et al. Oct 1997 A
5682525 Bouve et al. Oct 1997 A
5684715 Palmer Nov 1997 A
5684969 Ishida Nov 1997 A
5701451 Rogers et al. Dec 1997 A
5704017 Heckerman et al. Dec 1997 A
5706434 Kremen et al. Jan 1998 A
5706502 Foley et al. Jan 1998 A
5708709 Rose Jan 1998 A
5708780 Levergood et al. Jan 1998 A
5710884 Dedrick Jan 1998 A
5710918 Lagarde et al. Jan 1998 A
5712979 Graber et al. Jan 1998 A
5715453 Stewart Feb 1998 A
5717860 Graber et al. Feb 1998 A
5717923 Dedrick Feb 1998 A
5721827 Logan et al. Feb 1998 A
5721908 Lagarde et al. Feb 1998 A
5724521 Dedrick Mar 1998 A
5724556 Souder et al. Mar 1998 A
5724567 Rose et al. Mar 1998 A
5727129 Barrett et al. Mar 1998 A
5727159 Kikinis Mar 1998 A
5734863 Kodosky et al. Mar 1998 A
5737619 Judson Apr 1998 A
5737739 Shirley et al. Apr 1998 A
5740252 Minor et al. Apr 1998 A
5740549 Reilly et al. Apr 1998 A
5742768 Gennaro et al. Apr 1998 A
5742905 Pepe et al. Apr 1998 A
5745681 Levine et al. Apr 1998 A
5751956 Kirsch May 1998 A
5754830 Butts et al. May 1998 A
5754938 Herz et al. May 1998 A
5754939 Herz et al. May 1998 A
5758111 Shiratori et al. May 1998 A
5758257 Herz et al. May 1998 A
5760767 Shore et al. Jun 1998 A
5761601 Nemirofsky et al. Jun 1998 A
5761662 Dasan Jun 1998 A
5768508 Eikeland Jun 1998 A
5768510 Gish Jun 1998 A
5781894 Petrecca et al. Jul 1998 A
5787253 McCreery et al. Jul 1998 A
5787254 Maddalozzo, Jr. et al. Jul 1998 A
5793972 Shane Aug 1998 A
5794210 Goldhaber et al. Aug 1998 A
5794259 Kikinis Aug 1998 A
5796952 Davis et al. Aug 1998 A
5801685 Miller et al. Sep 1998 A
5802320 Baehr et al. Sep 1998 A
5805735 Chen et al. Sep 1998 A
5805815 Hill Sep 1998 A
5809242 Shaw et al. Sep 1998 A
5809481 Baron et al. Sep 1998 A
5809512 Kato Sep 1998 A
5812642 Leroy Sep 1998 A
5812769 Graber et al. Sep 1998 A
5819047 Bauer et al. Oct 1998 A
5819092 Ferguson et al. Oct 1998 A
5822526 Waskiewicz Oct 1998 A
5832502 Durham et al. Nov 1998 A
5835087 Herz et al. Nov 1998 A
5835092 Boudreau et al. Nov 1998 A
5835722 Bradshaw et al. Nov 1998 A
5838458 Tsai Nov 1998 A
5848246 Gish Dec 1998 A
5848396 Gerace Dec 1998 A
5848397 Marsh et al. Dec 1998 A
5850352 Moezzi et al. Dec 1998 A
5850433 Rondeau Dec 1998 A
5854897 Radziewicz et al. Dec 1998 A
5855008 Goldhaber et al. Dec 1998 A
5861880 Shimizu et al. Jan 1999 A
5861883 Cuomo et al. Jan 1999 A
5862260 Rhoads Jan 1999 A
5862325 Reed et al. Jan 1999 A
5864823 Levitan Jan 1999 A
5870769 Freund Feb 1999 A
5872850 Klein et al. Feb 1999 A
5875296 Shi et al. Feb 1999 A
5877766 Bates et al. Mar 1999 A
5878231 Baehr et al. Mar 1999 A
5883955 Ronning Mar 1999 A
5884025 Baehr et al. Mar 1999 A
5886683 Tognazzini et al. Mar 1999 A
5887133 Brown et al. Mar 1999 A
5890152 Rapaport et al. Mar 1999 A
5892917 Myerson Apr 1999 A
5893053 Trueblood Apr 1999 A
5893118 Sonderegger Apr 1999 A
5894554 Lowery et al. Apr 1999 A
5897622 Blinn et al. Apr 1999 A
5898434 Small et al. Apr 1999 A
5901287 Bull et al. May 1999 A
5903892 Hoffert et al. May 1999 A
5905492 Straub et al. May 1999 A
5905800 Moskowitz et al. May 1999 A
5907838 Miyasaka et al. May 1999 A
5913040 Rakavy et al. Jun 1999 A
5918012 Astiz et al. Jun 1999 A
5918013 Mighdoll et al. Jun 1999 A
5918014 Robinson Jun 1999 A
5918214 Perkowski Jun 1999 A
5920697 Masters et al. Jul 1999 A
5923845 Kamiya et al. Jul 1999 A
5923853 Danneels Jul 1999 A
5929850 Broadwin et al. Jul 1999 A
5930446 Kanda Jul 1999 A
5930700 Pepper et al. Jul 1999 A
5930801 Falkenhainer et al. Jul 1999 A
5931901 Wolfe et al. Aug 1999 A
5931907 Davies et al. Aug 1999 A
5933811 Angles et al. Aug 1999 A
5933832 Suzuoka et al. Aug 1999 A
5936679 Kasahara et al. Aug 1999 A
5937037 Kamel et al. Aug 1999 A
5937390 Hyodo Aug 1999 A
5937392 Alberts Aug 1999 A
5937411 Becker Aug 1999 A
5943478 Aggarwal et al. Aug 1999 A
5944791 Scherpbier Aug 1999 A
5946646 Schena et al. Aug 1999 A
5946664 Ebisawa Aug 1999 A
5946697 Shen Aug 1999 A
5948061 Merriman et al. Sep 1999 A
5951300 Brown Sep 1999 A
5956693 Geerlings Sep 1999 A
5956716 Kenner et al. Sep 1999 A
5958008 Pogrebisky et al. Sep 1999 A
5958015 Dascalu Sep 1999 A
5959621 Nawaz et al. Sep 1999 A
5959623 Van Hoff et al. Sep 1999 A
5960409 Wexler Sep 1999 A
5961593 Gabber et al. Oct 1999 A
5961602 Thompson et al. Oct 1999 A
5961603 Kunkel et al. Oct 1999 A
5963909 Warren et al. Oct 1999 A
5963915 Kirsch Oct 1999 A
5966121 Hubbell et al. Oct 1999 A
5970473 Gerszber et al. Oct 1999 A
5974219 Fujita et al. Oct 1999 A
5974451 Simmons Oct 1999 A
5978807 Mano et al. Nov 1999 A
5978833 Pashley et al. Nov 1999 A
5978836 Ouchi Nov 1999 A
5978841 Berger Nov 1999 A
5978842 Noble et al. Nov 1999 A
5983227 Nazem et al. Nov 1999 A
5983244 Nation Nov 1999 A
5983268 Freivald et al. Nov 1999 A
5987466 Greer et al. Nov 1999 A
5987606 Cirasole et al. Nov 1999 A
5991735 Gerace Nov 1999 A
5991799 Yen et al. Nov 1999 A
5995597 Woltz et al. Nov 1999 A
5995943 Bull et al. Nov 1999 A
5996007 Klug et al. Nov 1999 A
5996011 Humes Nov 1999 A
5999526 Garland et al. Dec 1999 A
5999731 Yellin et al. Dec 1999 A
5999740 Rowley Dec 1999 A
5999912 Wodarz et al. Dec 1999 A
6002401 Baker Dec 1999 A
6006241 Purnaveja et al. Dec 1999 A
6006252 Wolfe Dec 1999 A
6006265 Mishima et al. Dec 1999 A
6009236 Mishima et al. Dec 1999 A
6009409 Adler et al. Dec 1999 A
6009410 LeMole et al. Dec 1999 A
6011537 Slotznick Jan 2000 A
6012083 Savitzky et al. Jan 2000 A
6014502 Moraes Jan 2000 A
6014638 Burge et al. Jan 2000 A
6014698 Griffiths Jan 2000 A
6014711 Brown Jan 2000 A
6016509 Dedrick Jan 2000 A
6020884 MacNaughton et al. Feb 2000 A
6023726 Saksena Feb 2000 A
6025837 Matthews, III et al. Feb 2000 A
6025886 Koda Feb 2000 A
6026368 Brown et al. Feb 2000 A
6026413 Challenger et al. Feb 2000 A
6026433 D'arlach et al. Feb 2000 A
6026933 King et al. Feb 2000 A
6029045 Picco et al. Feb 2000 A
6029141 Bezos et al. Feb 2000 A
6029145 Barritz et al. Feb 2000 A
6029182 Nehab et al. Feb 2000 A
6029195 Herz Feb 2000 A
6035332 Ingrassia, Jr. et al. Mar 2000 A
6047318 Becker et al. Apr 2000 A
6047327 Tso et al. Apr 2000 A
6049821 Theriault et al. Apr 2000 A
6052709 Paul Apr 2000 A
6052717 Reynolds et al. Apr 2000 A
6052730 Felciano et al. Apr 2000 A
6055572 Saksena Apr 2000 A
6058141 Barger et al. May 2000 A
6061054 Jolly May 2000 A
6061659 Murray May 2000 A
6061716 Moncreiff May 2000 A
6065024 Renshaw May 2000 A
6065056 Bradshaw et al. May 2000 A
6067559 Allard et al. May 2000 A
6067561 Dillon May 2000 A
6067565 Horvitz May 2000 A
6070140 Tran May 2000 A
6073105 Sutcliffe et al. Jun 2000 A
6073167 Poulton et al. Jun 2000 A
6073241 Rosenberg et al. Jun 2000 A
6076166 Moshfeghi et al. Jun 2000 A
6078916 Culliss Jun 2000 A
6081840 Zhao Jun 2000 A
6084581 Hunt Jul 2000 A
6085193 Malkin et al. Jul 2000 A
6085226 Horvitz Jul 2000 A
6085242 Chandra Jul 2000 A
6088731 Kiraly et al. Jul 2000 A
6091411 Straub et al. Jul 2000 A
6092196 Reiche Jul 2000 A
6094655 Rogers et al. Jul 2000 A
6094677 Capek et al. Jul 2000 A
6098064 Pirolli et al. Aug 2000 A
6098065 Skillen et al. Aug 2000 A
6101510 Stone et al. Aug 2000 A
6108637 Blumenau Aug 2000 A
6108691 Lee et al. Aug 2000 A
6108799 Boulay et al. Aug 2000 A
6112215 Kaply Aug 2000 A
6112246 Horbal et al. Aug 2000 A
6115680 Coffee et al. Sep 2000 A
6119098 Guyot et al. Sep 2000 A
6119165 Li et al. Sep 2000 A
6122632 Botts et al. Sep 2000 A
6125388 Reisman Sep 2000 A
6128655 Fields et al. Oct 2000 A
6128663 Thomas Oct 2000 A
6133912 Montero Oct 2000 A
6133918 Conrad et al. Oct 2000 A
6134380 Kushizaki Oct 2000 A
6134532 Lazarus et al. Oct 2000 A
6138146 Moon et al. Oct 2000 A
6138155 Davis et al. Oct 2000 A
6141010 Hoyle Oct 2000 A
6144596 Hosomi Nov 2000 A
6144944 Kurtzman, II et al. Nov 2000 A
6151596 Hosomi Nov 2000 A
6154738 Call Nov 2000 A
6154771 Rangan et al. Nov 2000 A
6157924 Austin Dec 2000 A
6157946 Itakura et al. Dec 2000 A
6161112 Cragun et al. Dec 2000 A
6163778 Fogg et al. Dec 2000 A
6167438 Yates et al. Dec 2000 A
6167453 Becker et al. Dec 2000 A
6178443 Lin Jan 2001 B1
6178461 Chan et al. Jan 2001 B1
6182066 Marques Jan 2001 B1
6182097 Hansen et al. Jan 2001 B1
6182122 Berstis Jan 2001 B1
6182133 Horvitz Jan 2001 B1
6183366 Goldberg et al. Feb 2001 B1
6185558 Bowman et al. Feb 2001 B1
6185586 Judson Feb 2001 B1
6185614 Cuomo et al. Feb 2001 B1
6191782 Mori et al. Feb 2001 B1
6192380 Light et al. Feb 2001 B1
6195622 Altschuler et al. Feb 2001 B1
6198906 Boetje et al. Mar 2001 B1
6199079 Gupta et al. Mar 2001 B1
6202093 Bolam et al. Mar 2001 B1
6204840 Petelycky et al. Mar 2001 B1
6208339 Atlas et al. Mar 2001 B1
6216141 Straub et al. Apr 2001 B1
6216212 Challenger et al. Apr 2001 B1
6219676 Reiner Apr 2001 B1
6222520 Gerszberg et al. Apr 2001 B1
6223215 Hunt et al. Apr 2001 B1
6233564 Schulze, Jr. May 2001 B1
6237022 Bruck et al. May 2001 B1
6249284 Bogdan Jun 2001 B1
6253188 Witek et al. Jun 2001 B1
6253208 Wittgreffe et al. Jun 2001 B1
6266058 Meyer Jul 2001 B1
6269361 Davis et al. Jul 2001 B1
6275854 Himmel et al. Aug 2001 B1
6279112 O'Toole et al. Aug 2001 B1
6280043 Ohkawa Aug 2001 B1
6285987 Roth et al. Sep 2001 B1
6286043 Cuomo et al. Sep 2001 B1
6286045 Griffiths et al. Sep 2001 B1
6295061 Park et al. Sep 2001 B1
6297819 Furst Oct 2001 B1
6304844 Pan et al. Oct 2001 B1
6308202 Cohn et al. Oct 2001 B1
6311194 Sheth et al. Oct 2001 B1
6314451 Landsman et al. Nov 2001 B1
6314457 Schema et al. Nov 2001 B1
6317761 Landsman et al. Nov 2001 B1
6321209 Pasquali Nov 2001 B1
6321256 Himmel et al. Nov 2001 B1
6324553 Cragun et al. Nov 2001 B1
6324569 Ogilvie et al. Nov 2001 B1
6324583 Stevens Nov 2001 B1
6327574 Kramer et al. Dec 2001 B1
6327617 Fawcett Dec 2001 B1
6332127 Bandera Dec 2001 B1
6334111 Carrott Dec 2001 B1
6335963 Bosco Jan 2002 B1
6336131 Wolfe Jan 2002 B1
6338059 Fields et al. Jan 2002 B1
6338066 Martin et al. Jan 2002 B1
6341305 Wolfe Jan 2002 B2
6347398 Parthasarathy et al. Feb 2002 B1
6351279 Sawyer Feb 2002 B1
6351745 Itakura et al. Feb 2002 B1
6353834 Wong et al. Mar 2002 B1
6356898 Cohen et al. Mar 2002 B2
6356908 Brown et al. Mar 2002 B1
6360221 Gough et al. Mar 2002 B1
6366298 Haitsuka Apr 2002 B1
6370527 Singhal Apr 2002 B1
6377983 Cohen et al. Apr 2002 B1
6378075 Goldstein et al. Apr 2002 B1
6381735 Hunt Apr 2002 B1
6381742 Forbes et al. Apr 2002 B2
6385592 Angles et al. May 2002 B1
6392668 Murray May 2002 B1
6393407 Middleton et al. May 2002 B1
6393415 Getchius et al. May 2002 B1
6397228 Lamburt et al. May 2002 B1
6401075 Mason et al. Jun 2002 B1
6415322 Jaye Jul 2002 B1
6418440 Kuo et al. Jul 2002 B1
6418471 Shelton et al. Jul 2002 B1
6421675 Ryan et al. Jul 2002 B1
6421724 Nickerson et al. Jul 2002 B1
6421729 Paltenghe et al. Jul 2002 B1
6434745 Conley, Jr. et al. Aug 2002 B1
6437802 Kenny Aug 2002 B1
6438215 Skladman et al. Aug 2002 B1
6438578 Schmid et al. Aug 2002 B1
6438579 Hosken Aug 2002 B1
6441832 Tao et al. Aug 2002 B1
6442529 Krishan et al. Aug 2002 B1
6446128 Woods et al. Sep 2002 B1
6449657 Stanbach, Jr. et al. Sep 2002 B2
6452612 Holtz et al. Sep 2002 B1
6457009 Bollay Sep 2002 B1
6459440 Monnes et al. Oct 2002 B1
6460036 Herz Oct 2002 B1
6460042 Hitchcock et al. Oct 2002 B1
6460060 Maddalozzo et al. Oct 2002 B1
6466970 Lee et al. Oct 2002 B1
6477550 Balasubramaniam et al. Nov 2002 B1
6477575 Koeppel et al. Nov 2002 B1
6480837 Dutta Nov 2002 B1
6484148 Boyd Nov 2002 B1
6487538 Gupta et al. Nov 2002 B1
6490722 Barton et al. Dec 2002 B1
6493702 Adar et al. Dec 2002 B1
6496931 Rajchel et al. Dec 2002 B1
6499052 Hoang et al. Dec 2002 B1
6502076 Smith Dec 2002 B1
6505201 Haitsuka et al. Jan 2003 B1
6513052 Binder Jan 2003 B1
6513060 Nixon et al. Jan 2003 B1
6516312 Kraft et al. Feb 2003 B1
6523021 Monberg et al. Feb 2003 B1
6526411 Ward Feb 2003 B1
6529903 Smith et al. Mar 2003 B2
6539375 Kawasaki Mar 2003 B2
6539424 Dutta Mar 2003 B1
6564202 Schuetze et al. May 2003 B1
6567850 Freishtat et al. May 2003 B1
6567854 Olshansky et al. May 2003 B1
6570595 Porter May 2003 B2
6572662 Manohar et al. Jun 2003 B2
6584479 Chang et al. Jun 2003 B2
6584492 Cezar et al. Jun 2003 B1
6584505 Howard et al. Jun 2003 B1
6594654 Salam et al. Jul 2003 B1
6601041 Brown et al. Jul 2003 B1
6601057 Underwood et al. Jul 2003 B1
6601100 Lee et al. Jul 2003 B2
6604103 Wolfe Aug 2003 B1
6606652 Cohn et al. Aug 2003 B1
6622168 Datta Sep 2003 B1
6631360 Cook Oct 2003 B1
6615247 Murphy Nov 2003 B1
6642944 Conrad et al. Nov 2003 B2
6643696 Davis et al. Nov 2003 B2
6665656 Carter Dec 2003 B1
6665838 Brown et al. Dec 2003 B1
6678731 Howard et al. Jan 2004 B1
6678866 Sugimoto et al. Jan 2004 B1
6681223 Sundaresan Jan 2004 B1
6681247 Payton Jan 2004 B1
6686931 Bodnar Feb 2004 B1
6687737 Landsman et al. Feb 2004 B2
6691106 Sathyanarayan Feb 2004 B1
6697825 Underwood et al. Feb 2004 B1
6701362 Subramonian Mar 2004 B1
6701363 Chiu et al. Mar 2004 B1
6714975 Aggarwal et al. Mar 2004 B1
6718365 Dutta Apr 2004 B1
6721741 Eyal et al. Apr 2004 B1
6721795 Eldreth Apr 2004 B1
6725269 Megiddo Apr 2004 B1
6725303 Hoguta et al. Apr 2004 B1
6741967 Wu et al. May 2004 B1
6757661 Blaser et al. Jun 2004 B1
6760746 Schneider Jul 2004 B1
6760916 Holtz et al. Jul 2004 B2
6763379 Shuster Jul 2004 B1
6763386 Davis et al. Jul 2004 B2
6771290 Hoyle Aug 2004 B1
6772200 Bakshi et al. Aug 2004 B1
6785659 Landsman et al. Aug 2004 B1
6785723 Genty et al. Aug 2004 B1
6801906 Bates et al. Oct 2004 B1
6801909 Delgado et al. Oct 2004 B2
6826534 Gupta et al. Nov 2004 B1
6826546 Shuster Nov 2004 B1
6827669 Cohen et al. Dec 2004 B2
6847969 Mathai et al. Jan 2005 B1
6848004 Chang et al. Jan 2005 B1
6850967 Spencer et al. Feb 2005 B1
6853982 Smith et al. Feb 2005 B2
6857024 Chen et al. Feb 2005 B1
6874018 Wu Mar 2005 B2
6877027 Spencer et al. Apr 2005 B1
6880123 Landsman Apr 2005 B1
6882981 Philippe et al. Apr 2005 B2
6892181 Megiddo et al. May 2005 B1
6892223 Kawabata et al. May 2005 B1
6892226 Tso et al. May 2005 B1
6892354 Servan-Schreiber et al. May 2005 B1
6904408 McCarthy et al. Jun 2005 B1
6910179 Pennell et al. Jun 2005 B1
6934736 Sears et al. Aug 2005 B2
6938027 Barritz Aug 2005 B1
6957390 Tamir et al. Oct 2005 B2
6958759 Safadi et al. Oct 2005 B2
6968507 Pennell et al. Nov 2005 B2
6973478 Ketonen et al. Dec 2005 B1
6976053 Tripp et al. Dec 2005 B1
6976090 Ben-Shaul et al. Dec 2005 B2
6990633 Miyasaka et al. Jan 2006 B1
6993532 Platt et al. Jan 2006 B1
7003734 Gardner et al. Feb 2006 B1
7016887 Stockfisch Mar 2006 B2
7039599 Merriman et al. May 2006 B2
7043526 Wolfe May 2006 B1
7051084 Hayton et al. May 2006 B1
7054900 Goldston May 2006 B1
7065550 Raghunandan Jun 2006 B2
7069515 Eagle et al. Jun 2006 B1
7076546 Bates et al. Jul 2006 B1
7085682 Heller et al. Aug 2006 B1
7100111 McElfresh et al. Aug 2006 B2
7133924 Rosenberg et al. Nov 2006 B1
7136875 Anderson et al. Nov 2006 B2
7149791 Sears et al. Dec 2006 B2
7155729 Andrew et al. Dec 2006 B1
7162739 Cowden et al. Jan 2007 B2
7181415 Blaser et al. Feb 2007 B2
7181488 Martin et al. Feb 2007 B2
7194425 Nyhan Mar 2007 B2
7254547 Beck et al. Aug 2007 B1
7283992 Liu et al. Oct 2007 B2
7346606 Bharat Mar 2008 B2
7349827 Heller et al. Mar 2008 B1
7363291 Page Apr 2008 B1
7421432 Hoelzle et al. Sep 2008 B1
7424708 Andersson et al. Sep 2008 B2
7451065 Pednault et al. Nov 2008 B2
7454364 Shkedi Nov 2008 B2
7464155 Mousavi et al. Dec 2008 B2
7512603 Veteska et al. Mar 2009 B1
7630986 Herz Dec 2009 B1
7743340 Horvitz et al. Jun 2010 B2
7844488 Merriman et al. Nov 2010 B2
20010011226 Greer et al. Aug 2001 A1
20010029527 Goshen Oct 2001 A1
20010030970 Wiryaman et al. Oct 2001 A1
20010032115 Goldstein Oct 2001 A1
20010037240 Marks et al. Nov 2001 A1
20010037325 Biderman et al. Nov 2001 A1
20010037488 Lee Nov 2001 A1
20010044795 Cohen et al. Nov 2001 A1
20010047354 Davis et al. Nov 2001 A1
20010049320 Cohen et al. Dec 2001 A1
20010049321 Cohen et al. Dec 2001 A1
20010049620 Blasko Dec 2001 A1
20010049716 Wolfe Dec 2001 A1
20010051559 Cohen et al. Dec 2001 A1
20010053735 Cohen et al. Dec 2001 A1
20010054020 Barth et al. Dec 2001 A1
20020002483 Siegel et al. Jan 2002 A1
20020002538 Ling Jan 2002 A1
20020004754 Gardenswartz Jan 2002 A1
20020007307 Miller Jan 2002 A1
20020007309 Reynar Jan 2002 A1
20020007317 Callaghan et al. Jan 2002 A1
20020008703 Merrill et al. Jan 2002 A1
20020010626 Agmoni Jan 2002 A1
20020010757 Granik et al. Jan 2002 A1
20020010776 Lerner Jan 2002 A1
20020016736 Cannon et al. Feb 2002 A1
20020019763 Linden et al. Feb 2002 A1
20020019834 Vilcauskas, Jr. et al. Feb 2002 A1
20020023159 Vange et al. Feb 2002 A1
20020026390 Ulenas et al. Feb 2002 A1
20020032592 Krasnick et al. Mar 2002 A1
20020035568 Benthin Mar 2002 A1
20020038363 MacLean Mar 2002 A1
20020040374 Kent Apr 2002 A1
20020042750 Morrison Apr 2002 A1
20020046099 Frengut et al. Apr 2002 A1
20020049633 Paquali Apr 2002 A1
20020052785 Tenenbaum May 2002 A1
20020052925 Kim et al. May 2002 A1
20020053078 Holtz et al. May 2002 A1
20020054089 Nicholas May 2002 A1
20020055912 Buck May 2002 A1
20020057285 Nicholas, III May 2002 A1
20020059094 Hosea et al. May 2002 A1
20020059099 Coletta May 2002 A1
20020065802 Uchiyama May 2002 A1
20020068500 Gabai et al. Jun 2002 A1
20020069105 do Rosario Botelho et al. Jun 2002 A1
20020073079 Terheggen Jun 2002 A1
20020077219 Cohen et al. Jun 2002 A1
20020078076 Evans Jun 2002 A1
20020078192 Kopsell et al. Jun 2002 A1
20020087499 Stockfisch Jul 2002 A1
20020087621 Hendriks Jul 2002 A1
20020091700 Steele et al. Jul 2002 A1
20020091875 Fujiwara et al. Jul 2002 A1
20020094868 Tuck et al. Jul 2002 A1
20020099605 Weitzman et al. Jul 2002 A1
20020099767 Cohen et al. Jul 2002 A1
20020099812 Davis et al. Jul 2002 A1
20020099824 Bender et al. Jul 2002 A1
20020103811 Fankhauser et al. Aug 2002 A1
20020107847 Johnson Aug 2002 A1
20020107858 Lundahl et al. Aug 2002 A1
20020111910 Walsh Aug 2002 A1
20020111994 Raghunandan Aug 2002 A1
20020112035 Carey et al. Aug 2002 A1
20020112048 Gruyer et al. Aug 2002 A1
20020116494 Kocol Aug 2002 A1
20020120648 Ball et al. Aug 2002 A1
20020122065 Segal et al. Sep 2002 A1
20020123912 Subramanian et al. Sep 2002 A1
20020128904 Carruthers et al. Sep 2002 A1
20020128908 Levin et al. Sep 2002 A1
20020128925 Angeles Sep 2002 A1
20020152121 Hiroshi Oct 2002 A1
20020152126 Lieu et al. Oct 2002 A1
20020152222 Holbrook Oct 2002 A1
20020154163 Melchner Oct 2002 A1
20020156781 Cordray et al. Oct 2002 A1
20020156812 Krasnoiarov et al. Oct 2002 A1
20020169670 Barsade et al. Nov 2002 A1
20020169762 Cardona Nov 2002 A1
20020170068 Rafey et al. Nov 2002 A1
20020171682 Frank et al. Nov 2002 A1
20020175947 Conrad et al. Nov 2002 A1
20020194151 Fenton et al. Dec 2002 A1
20020198778 Landsman et al. Dec 2002 A1
20030004804 Landsman et al. Jan 2003 A1
20030005000 Landsman et al. Jan 2003 A1
20030005067 Martin et al. Jan 2003 A1
20030005134 Martin et al. Jan 2003 A1
20030011639 Webb Jan 2003 A1
20030014304 Calvert et al. Jan 2003 A1
20030014399 Hansen et al. Jan 2003 A1
20030018778 Martin et al. Jan 2003 A1
20030018885 Landsman et al. Jan 2003 A1
20030023481 Calvert et al. Jan 2003 A1
20030023488 Landsman et al. Jan 2003 A1
20030023698 Dieberger et al. Jan 2003 A1
20030028529 Cheung et al. Feb 2003 A1
20030028565 Landsman et al. Feb 2003 A1
20030028870 Weisman et al. Feb 2003 A1
20030032409 Hutcheson et al. Feb 2003 A1
20030033155 Peerson et al. Feb 2003 A1
20030040958 Fernandes Feb 2003 A1
20030041050 Smith et al. Feb 2003 A1
20030046150 Ader et al. Mar 2003 A1
20030050863 Radwin Mar 2003 A1
20030052913 Barile Mar 2003 A1
20030074448 Kinebuchi Apr 2003 A1
20030088554 Ryan et al. May 2003 A1
20030105589 Liu et al. Jun 2003 A1
20030110080 Tsutani et al. Jun 2003 A1
20030115157 Circenis Jun 2003 A1
20030120593 Bansal et al. Jun 2003 A1
20030120654 Edlund et al. Jun 2003 A1
20030131100 Godon et al. Jul 2003 A1
20030135490 Barrett et al. Jul 2003 A1
20030135853 Goldman et al. Jul 2003 A1
20030154168 Lautenbacher Aug 2003 A1
20030171990 Rao et al. Sep 2003 A1
20030172075 Reisman Sep 2003 A1
20030176931 Pednault et al. Sep 2003 A1
20030182184 Strasnick et al. Sep 2003 A1
20030195837 Kostic et al. Oct 2003 A1
20030195877 Ford Oct 2003 A1
20030206720 Abecassis Nov 2003 A1
20030208472 Pham Nov 2003 A1
20030220091 Farrand et al. Nov 2003 A1
20030221167 Goldstein et al. Nov 2003 A1
20030229542 Morrisroe Dec 2003 A1
20040002896 Alanen et al. Jan 2004 A1
20040024756 Rickard Feb 2004 A1
20040030798 Andersson et al. Feb 2004 A1
20040044677 Huper-Graff et al. Mar 2004 A1
20040068486 Chidlovskii Apr 2004 A1
20040073485 Liu et al. Apr 2004 A1
20040078294 Rollins et al. Apr 2004 A1
20040095376 Graham et al. May 2004 A1
20040098229 Error et al. May 2004 A1
20040098449 Bar-Lavi et al. May 2004 A1
20040117353 Ishag Jun 2004 A1
20040133845 Forstall et al. Jul 2004 A1
20040162738 Sanders et al. Aug 2004 A1
20040162759 Willis Aug 2004 A1
20040163101 Swix et al. Aug 2004 A1
20040167926 Anderson et al. Aug 2004 A1
20040167928 Anderson et al. Aug 2004 A1
20040181525 Itzhak et al. Sep 2004 A1
20040181604 Immonen Sep 2004 A1
20040193488 Khoo et al. Sep 2004 A1
20040210533 Picker et al. Oct 2004 A1
20040225716 Shamir et al. Nov 2004 A1
20040247748 Bronkema Dec 2004 A1
20040249709 Donovan et al. Dec 2004 A1
20040249938 Bunch Dec 2004 A1
20040254810 Yamaga et al. Dec 2004 A1
20040267723 Bharat Dec 2004 A1
20050015366 Carrasco et al. Jan 2005 A1
20050021397 Cui et al. Jan 2005 A1
20050027821 Alexander et al. Feb 2005 A1
20050027822 Plaza Feb 2005 A1
20050033657 Herrington et al. Feb 2005 A1
20050038819 Hicken et al. Feb 2005 A1
20050080772 Bem Apr 2005 A1
20050086109 McFadden et al. Apr 2005 A1
20050091106 Reller et al. Apr 2005 A1
20050091111 Green et al. Apr 2005 A1
20050097088 Bennett et al. May 2005 A1
20050102202 Linden et al. May 2005 A1
20050102282 Linden May 2005 A1
20050131762 Bharat et al. Jun 2005 A1
20050132267 Aviv Jun 2005 A1
20050149404 Barnett et al. Jul 2005 A1
20050155031 Wang et al. Jul 2005 A1
20050182773 Feinsmith Aug 2005 A1
20050187823 Howes Aug 2005 A1
20050203796 Anand et al. Sep 2005 A1
20050204148 Mayo et al. Sep 2005 A1
20050216572 Tso et al. Sep 2005 A1
20050222901 Agarwal et al. Oct 2005 A1
20050222982 Paczkowski et al. Oct 2005 A1
20050240599 Sears Oct 2005 A1
20050273463 Zohar et al. Dec 2005 A1
20050289120 Soulanille et al. Dec 2005 A9
20060015390 Rijsinghani et al. Jan 2006 A1
20060026233 Tenembaum et al. Feb 2006 A1
20060031253 Newbold et al. Feb 2006 A1
20060053230 Montero Mar 2006 A1
20060136524 Wohlers et al. Jun 2006 A1
20060136528 Martin et al. Jun 2006 A1
20060136728 Gentry et al. Jun 2006 A1
20060235965 Bennett et al. Oct 2006 A1
20060253432 Eagle et al. Nov 2006 A1
20070016469 Bae et al. Jan 2007 A1
20070038956 Morris Feb 2007 A1
Foreign Referenced Citations (38)
Number Date Country
0631231 Dec 1994 EP
0822535 Feb 1998 EP
1045547 Oct 2000 EP
1154611 Nov 2001 EP
1207468 May 2002 EP
343825 Feb 1991 JP
11066099 Mar 1999 JP
2001084256 Mar 2001 JP
2001147894 May 2001 JP
20010222535 Aug 2001 JP
2001312482 Nov 2001 JP
2002024221 Jan 2002 JP
2002032401 Jan 2002 JP
2002073545 Mar 2002 JP
2002259371 Sep 2002 JP
2002334104 Nov 2002 JP
2003058572 Feb 2003 JP
2003141155 May 2003 JP
2003178092 Jun 2003 JP
20030271647 Sep 2003 JP
2004-355376 Dec 2004 JP
WO 9847090 Oct 1998 WO
WO 9938321 Jul 1999 WO
WO 9944159 Sep 1999 WO
WO 9946701 Sep 1999 WO
WO 9955066 Oct 1999 WO
WO 9959097 Nov 1999 WO
WO 0004434 Jan 2000 WO
WO 0054201 Sep 2000 WO
WO 0103028 Jan 2001 WO
WO 0115052 Mar 2001 WO
WO 0139024 May 2001 WO
WO 0144992 Jun 2001 WO
WO 0163472 Aug 2001 WO
WO 0169929 Sep 2001 WO
WO 0190917 Nov 2001 WO
WO 0244869 Jun 2002 WO
WO 03010685 Feb 2003 WO
Related Publications (1)
Number Date Country
20060136378 A1 Jun 2006 US