An Internet Broadcast Search Paradigm (IBSP) is disclosed, which causes a search for information on the world wide web to be distributed to all website computers on a network. The IBSP three basic embodiments: a direct broadcast server, a broadcast server, and a firewall server embodiment. However, other combinations are also possible. The IBSP direct broadcast process involves a client (and user) computer, a website computer, and an IBSP server computer. Each individual user conducts any desired search. In addition, website computers are present and are those computers which typically host and serve a website to the public. In general, there will be a single IBSP server computer although this is not meant as a limitation. In order to speed up the system and to accomplish load balancing, multiple IBSP server computers may be present in the system, although they are not necessarily required.
This application is a utility application which claims both the benefit and priority of Ser. No. 60/175,910 filed Jan. 13, 2000 entitled "Natural Language Broadcast Search Paradigm."
Disclosed is a method for controlling a web farm having a plurality of websites and servers, the method comprising categorizing customer requests received from said websites into a plurality of categories, said categories comprising a shareable customer requests and unshareable customer requests, routing said shareable customer requests such that any of said servers may process shareable customer requests received from different said websites, and routing said unshareable customer requests from specific said websites only to specific servers to which said specific websites have been assigned.
Server load-balancing operation-related data, such as data associated with a system configured for global server load balancing (GSLB) that orders IP addresses into a list based on a set of performance metrics, is tracked. Such operation-related data includes inbound source IP addresses (e.g., the address of the originator of a DNS request), the requested host and zone, identification of the selected "best" IP addresses resulting from application of a GSLB algorithm and the selection metric used to decide on an IP address as the "best" one. Furthermore, the data includes a count of the selected "best" IP addresses selected via application of the GSLB algorithm, and for each of these IP addresses, the list of deciding performance metrics, along with a count of the number of times each of these metrics in the list was used as a deciding factor in selection of this IP address as the best one. This tracking feature allows better understanding of GSLB policy decisions (such as those associated with performance, maintenance, and troubleshooting) and intelligent deployment of large-scale resilient GSLB networks.
A global server load-balancing (GSLB) switch serves as a proxy to an authoritative DNS and communicates with numerous site switches that are coupled to host servers serving specific applications. The GSLB switch receives from site switches operational information regarding host servers within the site switches neighborhood. When a client program requests a resolution of a host name, the GSLB switch, acting as a proxy of an authoritative DNS, returns one or more ordered IP addresses for the host name. The IP addresses are ordered using metrics that include the information collected from the site switches. In one instance, the GSLB switch places the address that is deemed "best" at the top of the list.
In a load balancing system, user-configurable geographic prefixes are provided. IP address prefix allocations provided by the Internet Assigned Numbers Authority (IANA) and associated geographic locations are stored in a first, static database in a load balancing switch, along with other possible default geographic location settings. A second, non-static database stores user-configured geographic settings. In particular, the second database stores Internet Protocol (IP) address prefixes and user-specified geographic regions for those prefixes. The specified geographic region can be continent, country, state, city, or other user-defined region. The geographic settings in the second database can override the information in the first database. These geographic entries help determine the geographic location of a client and host IP addresses, and aid in directing the client to a host server that is geographically the closest to that client.
A smoothing algorithm for round trip time (RTT) measurements is provided to a network device to effectively deal with variations or other potential anomalies that may occur in RTT measurements. The algorithm involves: first determining what should be considered a very high or a very small value for a RTT sample. If a new RTT sample is in an acceptable range, then the network device performs a relatively basic smoothing. If the new RTT sample is much higher than a current RTT value, then the network device ignores the value of this RTT sample a few times. If the network device still detects this large value after ignoring that value for some time, then the network device factors this value into the current RTT value using an additive increase. Similarly, if the value of the new RTT sample is much lower than current RTT value, the network device ignores the value of the new RTT sample a few times. If the network device still sees this small/low value after ignoring that value for sometime, then the network device factors this value into the current RTT value using a multiplicative decrease. An effective RTT value results, which can be used singly or in combination with other metrics to load balance network traffic.