Application delivery controller and global server load balancer

Information

  • Patent Grant
  • 11005762
  • Patent Number
    11,005,762
  • Date Filed
    Wednesday, December 6, 2017
    7 years ago
  • Date Issued
    Tuesday, May 11, 2021
    3 years ago
Abstract
Application Delivery Controller (ADC), Global Server Load Balancer (GSLB), and methods for their operation in data networks are disclosed. The methods for load balancing may include receiving a query concerning a host name from a client, determining that there are two or more host servers associated with the host name, measuring various metrics associated with each of the two or more host servers and a local Doman Name Server (DNS), and based at least in part on the measurement, selecting a host server among the two or more host servers. The load balancing may also be based on a measured round trip time.
Description
BACKGROUND

The present disclosure relates generally to data processing, more specifically to Application Delivery Controllers (ADC) and Global Server Load Balancers (GSLB).


Websites, web and mobile applications, cloud computing, and various web and mobile services have been rising in popularity. Some examples of fast growing consumer services include smart phone applications, location based services, navigation services, e-book services, video applications, music applications, Internet television services, and so forth. Subsequently, more and more servers are deployed within data networks including the Internet to accommodate the increasing computing and data storage needs. These servers are typically arranged in data centers or web farms, which may include ADCs, GSLB and/or server load balancers (SLBs).


Conventionally, an ADC is a network device disposed in a datacenter and part of an application delivery network (ADN). The ADC may allow performing common tasks, normally done by web servers, in an effort to remove some load from the web servers. ADCs are typically placed between the firewall/router and the host (web) servers. In addition, conventional ADCs may include various features providing for compression, caching, connection multiplexing, application layer security, and content switching. These features may be combined with basic server load balancing, content manipulation, advanced routing strategies, and highly configurable server health monitoring.


Additionally, ADCs may manage load balancing and delivery of service sessions from client host computers to servers based at least in part on incoming service requests. As more servers are deployed, additional ADC's may be deployed. Similarly, as more servers are pooled together within the data center or spread across multiple data centers to provide scalability, ADCs may become bottlenecks slowing data transmissions between peers on the network.


SUMMARY

This summary is provided to introduce a selection of concepts in a simplified form that are further described in the Detailed Description below. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.


According to another aspect of the present disclosure, a GSLB and method of its operation are provided. Specifically, there is provided a method for load balancing between host servers of a data network, the method including receiving a query concerning a host name from a client, determining that there are two or more host servers associated with the host name, measuring round trip times associated with site switches and a Doman Name Server (DNS) assigned to the client, and based at least in part on the measurements, selecting a host server among the two or more host servers. The method may further include providing a network address of the selected host server in the DNS response. The round trip time may include a time for exchange of at least one message from multiple site switches and the Local DNS servers. According to this method, the host server associated with the shortest round trip time is selected from among the two or more host servers.


According to yet another aspect of the present disclosure, another GSLB and method of its operation are provided. In particular, there may be provided a method for load balancing among host servers of a data network. The method may include measuring multiple performance metrics concerning a plurality of switches, each of which may be associated with one or more host servers. The method may further include determining a plurality of network addresses associated with the one or more host servers and storing the multiple performance metrics in association with the plurality of network addresses in a table. The multiple performance metrics may include a plurality of round trip times from a plurality of plurality of switches associated with one or more host servers and a DNS associated with the client. The multiple performance metrics may also include application health metrics, load metrics, proximity metrics, weighted preferences metrics. The method may further include receiving a domain name query from a client or a DNS, retrieving a plurality of network addresses associated with the domain name query from the table, retrieving multiple performance metrics for each network address from the table, randomly selecting one of the network addresses, and calculating a score associated with the multiple performance metrics related to the selected network address.


Furthermore, the method may include determining that the score for the randomly selected network address meets or exceeds a predetermined threshold score and, based on the determination, returning the randomly selected network address to the client or the DNS. If the score for the randomly selected network address does not meet the predetermined threshold score, the method may proceed with removing the randomly network address from the table (although the address need not be removed) and continuing with randomly selecting one of the remaining network addresses from the table to repeat the steps of calculating a score and matching it to the threshold value. If no addresses meet or exceed the threshold than the method may decrease the predetermined threshold and repeat the above steps.


The systems and methods of the present disclosure may be practiced with various electronic devices including, for example, host servers, web farms, switches, routers, client computers such as laptop computers, desktop computers, tablet computers, cellular phones, and other consumer electronic user devices having network connectivity. These and other embodiments are described further below with references to the figures.





BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are illustrated by way of example, and not limitation, in the figures of the accompanying drawings, in which like references indicate similar elements.



FIG. 1 is a block diagram of a network suitable for implementing one or more methods of the present disclosure.



FIG. 2 is a flow chart of an exemplary method for operating ADC.



FIG. 3 is another block diagram of an exemplary network suitable for implementing one or more methods of the present disclosure.



FIG. 4 is a flow chart of an exemplary method for load balancing between host servers of a data network.



FIG. 5 is a flow chart of an exemplary method for collecting performance metrics associated with multiple host servers and/or switches.



FIG. 6 is a high-level diagram of exemplary table of aggregated performance metrics associated with multiple host servers and/or switches.





DETAILED DESCRIPTION

In the following description, numerous specific details are set forth in order to provide a thorough understanding of the presented concepts. The presented concepts may be practiced without some or all of these specific details. In other instances, well known process operations have not been described in detail so as to not unnecessarily obscure the described concepts. While some concepts will be described in conjunction with the specific embodiments, it will be understood that these embodiments are not intended to be limiting.


Embodiments disclosed herein may be implemented using a variety of technologies. For example, the methods described herein may be implemented in software executing on a computer system or in hardware utilizing either a combination of microprocessors or other specially designed application-specific integrated circuits (ASICs), programmable logic devices like FPGA's, or various combinations thereof. In particular, the methods described herein may be implemented by a series of computer-executable instructions residing on a storage medium such as a disk drive, or computer-readable medium. It should be noted that methods disclosed herein can be implemented by a computer, e.g., a desktop computer, tablet computer, laptop computer, smartphone and so forth.


The present technology provides various methods for operation of ADCs and GSLBs in data networks such as the Internet including a plurality of switches, routers, virtual switches, web farms, host servers, and other units. The present technology provides enhanced performance of ADC and allows implementing scalable business solutions for any services, applications, clouds and organizations. Furthermore, the present technology provides a scalable, high-performance application networking platform, which can deliver superior reliability and energy efficiency at lower total cost of ownership. ADC can also provide increased infrastructure efficiency, a faster end user experience, comprehensive Layer 4-7 feature set and flexible virtualization technologies such as Virtual Chassis System, multi-tenancy, and more for public, private and hybrid cloud environments. The ADC and GSLB may include software and/or hardware components/platforms that may vary depending on a particular application, performance, infrastructure, network capacity, data traffic parameters, and so forth. Some example topologies for ADC and/or GSLB are described in U.S. utility patent application Ser. No. 13/363,055, filed on Jan. 31, 2012, titled “Virtual application delivery chassis system” (now U.S. Pat. No. 8,266,235), U.S. utility patent application Ser. No. 13/004,861, filed on Jan. 11, 2011, titled “Virtual Application Delivery Chassis System,” U.S. utility patent application Ser. No. 13/154,399, filed on Jun. 6, 2011, titled “Synchronization of configuration file of virtual application distribution chassis,” U.S. utility patent application Ser. No. 12/958,435, filed on Dec. 2, 2010, titled “System and Method for Distributing Application Traffic to Servers Based on Dynamic Service Response Time,” U.S. utility patent application Ser. No. 12/894,142, filed on Sep. 30, 2010, titled “System and method to balance servers based on server load status,” all of which are incorporated herein by reference in their entireties.


Turning now to FIG. 1, a high-level block diagram of a network topology 100 suitable for implementing one or more methods of the present disclosure is shown. The network topology 100 shown by FIG. 1 may include a number of host servers 105, a number of switches 110 combining/coupling the host servers 105 and thus performing Layer 2 aggregation and corresponding switching. The topology 100 may further include an ADC 115 including one (or more) ADC switches 120. The ADC switches may operate in different modes. such as standalone, active/standby mode, Active-Active and others.


Still referring to FIG. 1, the topology 100 may further include a communications network, which may refer to, for example, the Internet, Local Area Network (LAN), Wide Area Network (WAN), Internet, a cellular network, a telephone network, or any other switched network or their combinations. There is also a plurality of clients 130, which may include end user computers, mobile phones, thin clients, and so forth. There are also one or more Local DNS Server which may be associated with one or more clients 130 and/or one or more host servers 105. As shown in FIG. 1, the topology may include a GSLB 135, which may employ one or more of the methods disclosed herein.


Generally speaking, load balancing is a technique that may be used for distributing the workload evenly across clients 130, networks 125, host servers 105, and other networked resources. The load balancing may enhance utilization of resources and enable maximize throughput with minimum response time, hence avoiding overloading of a single server. GSLB may be considered an extension of the load balancing. With this technology, network traffic may be distributed among different web farms, data centers, and host servers 105 located at different geographical locations. This technology may be highly efficient in avoiding local downtimes and downtimes. Furthermore, as will be appreciated by those skilled in the art, GSLB 135 may act as a master to monitor “health” and responsiveness of other sites hosted by the host servers 105. The GSLB may include redirection of service requests to other nearby host servers 105 if one of the host servers 105 does not respond timely. Furthermore, this technique may allow forwarding visitor requests to the host server 105 located most closely geographically to the place from where the request sent. In addition, if a traffic threshold is reached at this host server 105, the service requests may be forwarded to other host server 105 located at a different geographical location.


As will be appreciated by those skilled in the art, these ADC switches 120 may operate in an active mode, backup mode, or some other modes depending on an application. The ADC switches 120 may also provide redundancy protection and failover protection for selected networks or parts of the network 125. The ADC switches 120 may also report their status (i.e., current operating mode) to selected network elements or other switches 110, 120.



FIG. 2 illustrates a block diagram of an exemplary network topology 200 in which various embodiments of the present technology may be practiced. Specifically, FIG. 2 illustrates a specific embodiment of the network topology 100 shown generally in FIG. 1 as well as operations of the GSLB 135.


As shown in FIG. 2, the networked elements may include various arrangements within the network topology and may be located at different geographic locations. Specifically, there may be multiple host server site switches 110 coupling many host servers 105 to the client 130 via the communications network 125. As discussed above, the GSLB 135 may perform load balancing of traffic among the host servers 105. As such, the time for exchanging of a message between the host server site switch 110 and client device 130 may be variable based on at least the capacity of the host servers, the overall traffic load, and the time delay of transmitting a message through the network 125.


In the configuration shown in FIG. 2, the resources or data requested by the client 130, or the resources or data to be to transmitted to the client 130 may be stored in host servers 105. As illustrated in the figure, Host Server 1, Host Server 2, and corresponding Switch 1 may be located in Seattle, Wash., while Host Server 3, Host Server 4, and corresponding Switch 2 may be located in New York City, N.Y. By way of example, the client 130 may be located in Pennsylvania, Pa. and the corresponding local DNS 140 may be located in Los Angeles, Calif. In such configurations, the GSLB 135 may perform corresponding measurements to determine which host server 105 should be used for transfer data to the client 130. The measurements, in some embodiments, include round trip times of exchange of a message between the switches 110 and the local DNS 140. In this configuration, the round trip time may be a function of network or switch capacity, the overall traffic load, time delay of transmitting a message through the network, and so forth. Thus, as will be appreciated by those skilled in the art, the time for exchanging a message between Switch 1 and the local DNS 140 is substantially a measurement of the time to send a message between Seattle and Los Angeles. The local DNS 140 in Los Angeles is much closer geographically to Switch 1 in Seattle, than the client 130 is in Philadelphia. Thus, the time for a message to travel from Switch 1 to the local DNS 140 and back should be less than the time for a message to travel from Switch 1 to the client 130 and back. In this regard, the GSLB 135 may select “Switch 1110 to make data transmission to the client 130, and not the host servers 105 or Switch 2, which located closer to the client 130. These principles are further described in the following figure.



FIG. 3 illustrates a flow chart of an example method 300 for load balancing between host servers 105 of a data network 125. The method 300 may be practiced by the GSLB 135 as described above with references to FIGS. 1 and 2.


The method 300 may commence in operation 310 with the GSLB 135 receiving a query concerning a host name from a client 130. This query, in certain embodiments, may be generated by the ADC 115 so as to initiate the load balancing procedure.


In operation 320, the GSLB 135 may determine that there are two or more of host servers 105 associated with the host name. If there is just one host server 105, the load balancing procedure is not performed. Otherwise, the method 300 may proceed to operation 330, so that the GSLB 135 may measure round trip times (or other similar metrics) associated with each of the two or more host servers 105 and the LDNS 140. More specifically, round trip times may be measured for exchange of at least one message from each of the two or more host servers 105 and the LDNS 140. In certain embodiments, the round trip time may also include a time for exchange of at least one message from one or more switches 110 associated with the two or more host servers 105 and the LDNS 140.


At operation 340, based at least in part on the measurement, the GSLB 135 may select the host server 105, from the two or more host servers 105, which is associated with the shortest round trip time measured. At operation 350, the GSLB 135 may provide a network address of the selected host server 105 to the LDNS 140 or the client 130 so that data may be transmitted from the selected host server 105 to the client 130.


In certain additional embodiments, the measured round trip times may be stored in the GSLB 135 and then retrieved upon further request. This procedure may eliminate frequent redundant operations and thus may save some computational and networked resources.


According to one or more embodiments of the present disclosure, the global load balancing process may rely not only on real time measurement of various parameters, such as described above, but also on various measurements performed in advance. FIG. 4 shows a flow chart of an example method 400 for collecting performance metrics associated with certain host servers 105 and/or switches 110. The method 400 may be practiced by the ADC 115 and/or the GSLB 135 and/or similar electronic devices as discussed above.


The method 400 may include operation 410, at which the GSLB 135 (or similar device) may measure multiple performance metrics regarding a plurality of switches 110, and each switch 110 may be associated with one or more host servers 105. The performance metrics may include a plurality of round trip times from the plurality of switches 110 associated with one or more host servers 105 and a DNS 140 associated with the client 130. In certain embodiments, the performance metrics may include one or more of the following: application health metrics, load metrics, and proximity metrics.


Turning again to FIG. 4, in operation 420 the GSLB 135 may also determine a plurality of network addresses associated with the one or more host servers 105, with respect to which the measurements have been performed. In operation 530, the GSLB 135 may store the multiple performance metrics in association with the plurality of network addresses in a table. An example of such a table is shown in FIG. 5.


In particular, FIG. 5 shows a high level diagram of example table 500 of aggregated performance metrics associated with certain host servers 105 and/or switches 110. The table cross-references measured metrics with networked addresses. The metrics may be binary or measured values may be provided. The table 500 may be used in the process described below with reference to FIG. 6.



FIG. 6 illustrates a flow chart of an example method 600 for load balancing among host servers 105 of a data network 125. The method 600 may be practiced by the GSLB 135 as described above with reference to FIGS. 1 and 2.


Method 600 may commence in operation 610 with the GSLB 135 receiving a domain name query from a client 130 or a DNS 140. In operation 620, the GSLB 135 may further retrieve a plurality of network addresses associated with the domain name query as well as multiple performance metrics for each network address. The retrieving may be performed from the table 600 as shown in FIG. 6.


In operation 630, the GSLB 135 may randomly select one of the network addresses from the table 600 and calculate a score associated with the multiple performance metrics related to the selected network address. In operation 640, the GSLB 135 may further compare the score for the randomly selected network address to a predetermined threshold value. If it is determined that the score meets or exceeds the threshold value, the method 600 may proceed to operation 650, where the GSLB 135 may transmit the randomly selected network address to the client 130 or the DNS 140. Otherwise, if it is determined that the score does not meet or exceed the threshold value, the method 600 may proceed to operation 670, where the GSLB 135 may remove the randomly selected network address from the table 600 and then, in operation 660, check if there are any other network addresses remaining in the table 600. If there are remaining network addresses in the table 600, the method 600 may proceed to operation 630 and repeat random selection of another network address, its corresponding score, and continue with the determination at operation 640. Otherwise, if there are no remaining network addresses in the table 600, the method proceeds to operation 680, when the GSLB 135 may decrease the threshold value a certain amount and then the method 600 may return to operations 630 and 640 until a network address generating a qualifying score is selected.


Accordingly, the present technology for global load balancing sets a threshold score and evaluates a randomly accessed network address from a plurality of network addresses against the threshold score until an address is found that meets or exceeds the threshold score. There is no comparison of network addresses against each other, and thus there is no ranking or ordering of network addresses and no generation of an ordered list of network addresses. This approach significantly simplifies and facilitates the load balancing process.


It should be noted that the systems and methods herein may return multiple network addresses in response to a given domain name query. Each of the returned addresses will be randomly selected and non-ordered, but each returned address will meet the threshold limit. If it is desirable in a given application that multiple network addresses be returned, the qualification procedure described above may be performed multiple times. Alternatively, a randomly selected network address associated with a given domain name query may be stored for future reference. Should the same domain name query then be re-submitted, so that the query is a recognized query, the systems and methods described herein may return one or more stored addresses in addition to one or more newly selected network addresses.


Thus, methods and systems for operation of the ADC and GSLB have been described. Although embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes can be made to these example embodiments without departing from the broader spirit and scope of the present application. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

Claims
  • 1. A method for load balancing among host servers of a data network, the method comprising: receiving, by a Global Server Load Balancer (GSLB), a domain name query from a client; retrieving, by the GSLB, a plurality of network addresses associated with the domain name query, the plurality of network addresses being associated with a plurality of host servers; upon the retrieving the plurality of network addresses;determining, by the GSLB, at least a round trip time between a Local Domain Name Server (LDNS) associated with the client and each of the plurality of host servers associated with the plurality of network addresses, the determining including exchanging at least one message between the LDNS and each of the plurality of host servers; anddetermining, by the GSLB, geographic distances between the LDNS and each of the plurality of host servers;based on the determining of both the round trip time and the geographic distances, storing, by the GSLB, the round trip time for each of the plurality of network addresses and the geographic distances to a metrics table, the metrics table storing multiple performance metrics for each of the plurality of network addresses;randomly selecting, by the GSLB, a network address of the plurality of network addresses, the randomly selected network address having performance metrics selected from the multiple performance metrics;scoring the performance metrics of the randomly selected network address to obtain an aggregated metrics score of the randomly selected network address;determining, by the GSLB, whether the aggregated metrics score of the randomly selected network address meets a predetermined threshold; andbased on the determination that the aggregated metrics score meets the predetermined threshold, returning, by the GSLB, the randomly selected network address.
  • 2. The method of claim 1, wherein the determining that the aggregated metrics score of the randomly selected network address meets the predetermined threshold includes: determining that the aggregated metrics score is higher than the predetermined threshold.
  • 3. The method of claim 1, wherein the GSLB is configured to randomly select a further network address of the plurality of network addresses based on the determination that the aggregated metrics score of the randomly selected network address does not meet the predetermined threshold.
  • 4. The method of claim 2, further comprising: determining, by the GSLB, aggregated metrics scores for all of the plurality of network addresses;determining, by the GSLB, that the aggregated metrics scores for all of the plurality of network addresses do not meet the predetermined threshold; and
  • 5. The method of claim 2, wherein the domain name query is received from a client or a Domain Name Server (DNS).
  • 6. The method of claim 5, further comprising: determining, by the GSLB, a plurality of performance metrics associated with a plurality of switches, wherein each of the plurality of switches is associated with one or more host servers;determining, by the GSLB, multiple network addresses associated with the one or more host servers; andstoring, by the GSLB, the plurality of performance metrics in association with the multiple network addresses in a table.
  • 7. The method of claim 5, further comprising: randomly selecting, by the GSLB, a further network address of the plurality of network addresses, the randomly selected further network address having further performance metrics selected from the multiple performance metrics; scoring the further performance metrics of the randomly selected further network address to obtain a further aggregated metrics score of the randomly selected further network address;based on the multiple performance metrics, determining, by the GSLB, that the further aggregated metrics score of the randomly selected further network address meets the predetermined threshold; andbased on the determination, returning, by the GSLB, the randomly selected further network address so that at least two randomly selected network addresses are returned to the client or the DNS, the at least two randomly selected network addresses including the randomly selected network address and the randomly selected further network address.
  • 8. The method of claim 5, further comprising: receiving a recognized domain name query;randomly selecting, by the GSLB, at least one new randomly selected network address, the least one new randomly selected network address having further performance metrics selected from the multiple performance metrics;scoring the further performance metrics of the least one new randomly selected network address to obtain a further aggregated metrics score of the least one new randomly selected network address;based on the multiple performance metrics, determining, by the GSLB, that the further aggregated metrics score of the least one new randomly selected further network address meets the predetermined threshold; andbased on the determination, returning both the at least one new randomly selected network address and the randomly selected network address to the client or the DNS.
  • 9. The method of claim 6, wherein the multiple performance metrics includes a plurality of round trip times from the plurality of switches associated with the one or more host servers and the LDNS associated with the client.
  • 10. The method of claim 1, wherein the multiple performance metrics include one or more of the following: application health metrics, proximity metrics, and weighted preferences metrics.
  • 11. A method for load balancing among host servers of a data network, the method comprising: receiving, by a global server load balancer (GSLB), a query concerning a host name from a client;determining, by the GSLB, that there are two or more site switches and two or more host servers associated with the host name;determining, by the GSLB, a round trip time between a Local Domain Name Server (LDNS) assigned to the client and each of the two or more site switches, the determining including exchanging at least one message between the LDNS and each of the two or more site switches and determining, by the GSLB, geographic distances between the LDNS and each of the two or more site switches;based on the determining of both the round trip time and the geographic distances, storing, by the GSLB, the round trip time for each of the two or more site switches and the geographic distances to a metrics table, the metrics table storing multiple performance metrics for each of the two or more site switches;randomly selecting, by the GSLB, a host server from the two or more host servers, the randomly selected host server being associated with a site switch of the two or more site switches;scoring, by the GSLB, the multiple performance metrics of the site switch to obtain an aggregated metrics score of the site switch;determining, by the GSLB, that the aggregated metrics score of the site switch meets a predetermined threshold; andbased on the determination, returning, by the GSLB, a network address of the randomly selected host server associated with the site switch.
  • 12. The method of claim 11, further comprising providing the network address of the randomly selected host server to the LDNS.
  • 13. The method of claim 11, wherein each of the round trip times is a time for an exchange of at least one message from each of the two or more site switches associated with the two or more host servers and the LDNS.
  • 14. The method of claim 11, wherein each of the round trip times is a time for an exchange of at least one message from each of the two or more host servers and the LDNS.
  • 15. The method of claim 11, further comprising transmitting data from the randomly selected host server to the client.
  • 16. The method of claim 11, further comprising: storing the round trip times associated with the two or more host servers in the GSLB; retrieving, by the GSLB, at least one of the round trip times in response to a further query.
  • 17. The method of claim 11, wherein the query concerning the host name is generated by an Application Delivery Controller (ADC) associated with the one or more host servers.
  • 18. The method of claim 11, wherein the randomly selected host server is associated with a shortest round trip time of the round trip times.
  • 19. The method of claim 11, further comprising: randomly selecting, by the GSLB, a further host server from the two or more host servers, the randomly selected further host server being associated with a further site switch of the two or more site switches;scoring the multiple performance metrics of the further site switch to obtain a further aggregated metrics score of the further site switch;determining, by the GSLB, that the further aggregated metrics score of the further site switch meets the predetermined threshold; andbased on the determination, returning, by the GSLB, the further network address of the randomly selected further host server so that at least two randomly selected network addresses are returned to the client or the LDNS, the at least two randomly selected network addresses including the randomly selected network address and the randomly selected further network address.
  • 20. The method of claim 11, further comprising: receiving a recognized query concerning the host name; randomly selecting, by the GSLB, at least one new randomly selected host server, the at least one new randomly selected host server being associated with a further site switch of the two or more site switches;scoring the performance metrics of the further site switch to obtain a further aggregated metrics score of the further site switch;determining, by the GSLB, that the further aggregated metrics score of the further site switch meets the predetermined threshold; andbased on the determination, returning both at least one new network address of the at least one new randomly selected host server and the network address of the randomly selected host server to the client or the LDNS.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims the priority benefit of U.S. patent application Ser. No. 13/791,760 filed on Mar. 8, 2013, entitled “Application Delivery Controller and Global Server Load Balancer,” the disclosure of which is incorporated herein by reference.

US Referenced Citations (393)
Number Name Date Kind
5218602 Grant et al. Jun 1993 A
5774660 Brendel et al. Jun 1998 A
5935207 Logue et al. Aug 1999 A
5958053 Denker Sep 1999 A
5995981 Wikstrom Nov 1999 A
6003069 Cavill Dec 1999 A
6047268 Bartoli et al. Apr 2000 A
6131163 Wiegel Oct 2000 A
6178160 Bolton Jan 2001 B1
6219706 Fan et al. Apr 2001 B1
6259705 Takahashi et al. Jul 2001 B1
6321338 Porras et al. Nov 2001 B1
6374300 Masters Apr 2002 B2
6459682 Ellesson et al. Oct 2002 B1
6587866 Modi et al. Jul 2003 B1
6748414 Bournas Jun 2004 B1
6772334 Glawitsch Aug 2004 B1
6779017 Lamberton et al. Aug 2004 B1
6779033 Watson et al. Aug 2004 B1
6928482 Ben Nun Aug 2005 B1
6952728 Alles et al. Oct 2005 B1
7010605 Dharmarajan Mar 2006 B1
7013482 Krumel Mar 2006 B1
7058718 Fontes et al. Jun 2006 B2
7069438 Balabine et al. Jun 2006 B2
7076555 Orman et al. Jul 2006 B1
7143087 Fairweather Nov 2006 B2
7181524 Lele Feb 2007 B1
7218722 Turner et al. May 2007 B1
7228359 Monteiro Jun 2007 B1
7234161 Maufer et al. Jun 2007 B1
7236457 Joe Jun 2007 B2
7254133 Govindarajan et al. Aug 2007 B2
7269850 Govindarajan et al. Sep 2007 B2
7277963 Dolson et al. Oct 2007 B2
7301899 Goldstone Nov 2007 B2
7308499 Chavez Dec 2007 B2
7310686 Uysal Dec 2007 B2
7328267 Bashyam et al. Feb 2008 B1
7334232 Jacobs et al. Feb 2008 B2
7337241 Boucher et al. Feb 2008 B2
7343399 Hayball et al. Mar 2008 B2
7349970 Clement et al. Mar 2008 B2
7370353 Yang May 2008 B2
7391725 Huitema et al. Jun 2008 B2
7398317 Chen et al. Jul 2008 B2
7423977 Joshi Sep 2008 B1
7430755 Hughes et al. Sep 2008 B1
7454500 Hsu Nov 2008 B1
7463648 Eppstein et al. Dec 2008 B1
7467202 Savchuk Dec 2008 B2
7472190 Robinson Dec 2008 B2
7492766 Cabeca et al. Feb 2009 B2
7506360 Wilkinson et al. Mar 2009 B1
7509369 Tormasov Mar 2009 B1
7512980 Copeland et al. Mar 2009 B2
7533409 Keane et al. May 2009 B2
7552323 Shay Jun 2009 B2
7584262 Wang et al. Sep 2009 B1
7584301 Joshi Sep 2009 B1
7590736 Hydrie et al. Sep 2009 B2
7613193 Swami et al. Nov 2009 B2
7613822 Joy et al. Nov 2009 B2
7673072 Boucher et al. Mar 2010 B2
7675854 Chen et al. Mar 2010 B2
7703102 Eppstein et al. Apr 2010 B1
7707295 Szeto et al. Apr 2010 B1
7711790 Barrett et al. May 2010 B1
7739395 Parlamas et al. Jun 2010 B1
7747748 Allen Jun 2010 B2
7751409 Carolan Jul 2010 B1
7765328 Bryers et al. Jul 2010 B2
7792113 Foschiano et al. Sep 2010 B1
7808994 Vinokour et al. Oct 2010 B1
7826487 Mukerji et al. Nov 2010 B1
7881215 Daigle et al. Feb 2011 B1
7948952 Hurtta et al. May 2011 B2
7970934 Patel Jun 2011 B1
7979585 Chen et al. Jul 2011 B2
7983258 Ruben et al. Jul 2011 B1
7990847 Leroy et al. Aug 2011 B1
7991859 Miller et al. Aug 2011 B1
8019870 Eppstein et al. Sep 2011 B1
8032634 Eppstein et al. Oct 2011 B1
8090866 Bashyam et al. Jan 2012 B1
8122116 Matsunaga et al. Feb 2012 B2
8159961 Rai Apr 2012 B1
8179809 Eppstein et al. May 2012 B1
8185651 Moran et al. May 2012 B2
8191106 Choyi et al. May 2012 B2
8224971 Miller et al. Jul 2012 B1
8266235 Jalan et al. Sep 2012 B2
8296434 Miller et al. Oct 2012 B1
8312507 Chen et al. Nov 2012 B2
8379515 Mukerji Feb 2013 B1
8499093 Grosser et al. Jul 2013 B2
8539075 Bali et al. Sep 2013 B2
8554918 Douglis Oct 2013 B1
8554929 Szeto et al. Oct 2013 B1
8560693 Wang et al. Oct 2013 B1
8584199 Chen et al. Nov 2013 B1
8595791 Chen et al. Nov 2013 B1
RE44701 Chen et al. Jan 2014 E
8675488 Sidebottom et al. Mar 2014 B1
8681610 Mukerji Mar 2014 B1
8750164 Casado et al. Jun 2014 B2
8782221 Han Jul 2014 B2
8813180 Chen et al. Aug 2014 B1
8826372 Chen et al. Sep 2014 B1
8879427 Krumel Nov 2014 B2
8885463 Medved et al. Nov 2014 B1
8897154 Jalan et al. Nov 2014 B2
8965957 Barros Feb 2015 B2
8977749 Han Mar 2015 B1
8990262 Chen et al. Mar 2015 B2
9094364 Jalan et al. Jul 2015 B2
9106561 Jalan et al. Aug 2015 B2
9154577 Jalan et al. Oct 2015 B2
9154584 Han Oct 2015 B1
9215275 Kannan et al. Dec 2015 B2
9219751 Chen et al. Dec 2015 B1
9253152 Chen et al. Feb 2016 B1
9270705 Chen et al. Feb 2016 B1
9270774 Jalan et al. Feb 2016 B2
9338225 Jalan et al. May 2016 B2
9350744 Chen et al. May 2016 B2
9356910 Chen et al. May 2016 B2
9386088 Zheng et al. Jul 2016 B2
9497201 Chen et al. Nov 2016 B2
9531846 Han et al. Dec 2016 B2
9544364 Jalan et al. Jan 2017 B2
9602442 Han Mar 2017 B2
9609052 Jalan et al. Mar 2017 B2
9705800 Sankar et al. Jul 2017 B2
9843484 Sankar et al. Dec 2017 B2
9900252 Chiong Feb 2018 B2
9906422 Jalan et al. Feb 2018 B2
9906591 Jalan et al. Feb 2018 B2
20010049741 Skene Dec 2001 A1
20020032777 Kawata et al. Mar 2002 A1
20020078164 Reinschmidt Jun 2002 A1
20020091844 Craft et al. Jul 2002 A1
20020103916 Chen et al. Aug 2002 A1
20020133491 Sim et al. Sep 2002 A1
20020138618 Szabo Sep 2002 A1
20020143991 Chow et al. Oct 2002 A1
20020178259 Doyle et al. Nov 2002 A1
20020191575 Kalavade et al. Dec 2002 A1
20020194335 Maynard Dec 2002 A1
20020194350 Lu et al. Dec 2002 A1
20030009591 Hayball et al. Jan 2003 A1
20030014544 Pettey Jan 2003 A1
20030023711 Parmar et al. Jan 2003 A1
20030023873 Ben-Itzhak Jan 2003 A1
20030035409 Wang et al. Feb 2003 A1
20030035420 Niu Feb 2003 A1
20030065762 Stolorz et al. Apr 2003 A1
20030091028 Chang et al. May 2003 A1
20030131245 Linderman Jul 2003 A1
20030135625 Fontes et al. Jul 2003 A1
20030195962 Kikuchi et al. Oct 2003 A1
20040062246 Boucher et al. Apr 2004 A1
20040073703 Boucher et al. Apr 2004 A1
20040078419 Ferrari et al. Apr 2004 A1
20040078480 Boucher et al. Apr 2004 A1
20040111516 Cain Jun 2004 A1
20040128312 Shalabi et al. Jul 2004 A1
20040139057 Hirata et al. Jul 2004 A1
20040139108 Tang et al. Jul 2004 A1
20040141005 Banatwala et al. Jul 2004 A1
20040143599 Shalabi et al. Jul 2004 A1
20040187032 Gels et al. Sep 2004 A1
20040199616 Karhu Oct 2004 A1
20040199646 Susai et al. Oct 2004 A1
20040202182 Lund et al. Oct 2004 A1
20040210623 Hydrie et al. Oct 2004 A1
20040210663 Phillips et al. Oct 2004 A1
20040213158 Collett et al. Oct 2004 A1
20040268358 Darling et al. Dec 2004 A1
20050005207 Herneque Jan 2005 A1
20050009520 Herrero et al. Jan 2005 A1
20050021848 Jorgenson Jan 2005 A1
20050027862 Nguyen et al. Feb 2005 A1
20050036501 Chung et al. Feb 2005 A1
20050036511 Baratakke et al. Feb 2005 A1
20050044270 Grove et al. Feb 2005 A1
20050074013 Hershey et al. Apr 2005 A1
20050080890 Yang et al. Apr 2005 A1
20050102400 Nakahara et al. May 2005 A1
20050125276 Rusu Jun 2005 A1
20050163073 Heller et al. Jul 2005 A1
20050198335 Brown et al. Sep 2005 A1
20050213586 Cyganski et al. Sep 2005 A1
20050240989 Kim et al. Oct 2005 A1
20050249225 Singhal Nov 2005 A1
20050259586 Hafid et al. Nov 2005 A1
20050289231 Harada et al. Dec 2005 A1
20060023721 Miyake et al. Feb 2006 A1
20060036610 Wang Feb 2006 A1
20060036733 Fujimoto et al. Feb 2006 A1
20060047751 Chen Mar 2006 A1
20060064478 Sirkin Mar 2006 A1
20060069774 Chen et al. Mar 2006 A1
20060069804 Miyake et al. Mar 2006 A1
20060077926 Rune Apr 2006 A1
20060092950 Arregoces et al. May 2006 A1
20060098645 Walkin May 2006 A1
20060112170 Sirkin May 2006 A1
20060168319 Trossen Jul 2006 A1
20060187901 Cortes et al. Aug 2006 A1
20060190997 Mahajani et al. Aug 2006 A1
20060209789 Gupta et al. Sep 2006 A1
20060230129 Swami et al. Oct 2006 A1
20060233100 Luft et al. Oct 2006 A1
20060251057 Kwon et al. Nov 2006 A1
20060277303 Hegde et al. Dec 2006 A1
20060280121 Matoba Dec 2006 A1
20070019543 Wei et al. Jan 2007 A1
20070086382 Narayanan et al. Apr 2007 A1
20070094396 Takano et al. Apr 2007 A1
20070118881 Mitchell et al. May 2007 A1
20070156919 Potti et al. Jul 2007 A1
20070165622 O'Rourke et al. Jul 2007 A1
20070185998 Touitou et al. Aug 2007 A1
20070230337 Igarashi et al. Oct 2007 A1
20070245090 King et al. Oct 2007 A1
20070259673 Willars et al. Nov 2007 A1
20070283429 Chen et al. Dec 2007 A1
20070286077 Wu Dec 2007 A1
20070288247 Mackay Dec 2007 A1
20070294209 Strub et al. Dec 2007 A1
20080031263 Ervin et al. Feb 2008 A1
20080101396 Miyata May 2008 A1
20080109452 Patterson May 2008 A1
20080109870 Sherlock et al. May 2008 A1
20080134332 Keohane et al. Jun 2008 A1
20080162679 Maher et al. Jul 2008 A1
20080228781 Chen et al. Sep 2008 A1
20080250099 Shen et al. Oct 2008 A1
20080263209 Pisharody et al. Oct 2008 A1
20080271130 Ramamoorthy Oct 2008 A1
20080282254 Blander et al. Nov 2008 A1
20080291911 Lee et al. Nov 2008 A1
20090049198 Blinn et al. Feb 2009 A1
20090070470 Bauman et al. Mar 2009 A1
20090077651 Poeluev Mar 2009 A1
20090089793 Nandagopal Apr 2009 A1
20090092124 Singhal et al. Apr 2009 A1
20090106830 Maher Apr 2009 A1
20090138606 Moran et al. May 2009 A1
20090138945 Savchuk May 2009 A1
20090141634 Rothstein et al. Jun 2009 A1
20090164614 Christian et al. Jun 2009 A1
20090172093 Matsubara Jul 2009 A1
20090213858 Dolganow et al. Aug 2009 A1
20090222583 Josefsberg et al. Sep 2009 A1
20090227228 Hu et al. Sep 2009 A1
20090228547 Miyaoka et al. Sep 2009 A1
20090262741 Jungck et al. Oct 2009 A1
20090271472 Scheifler et al. Oct 2009 A1
20090313379 Rydnell et al. Dec 2009 A1
20100008229 Bi et al. Jan 2010 A1
20100023621 Ezolt et al. Jan 2010 A1
20100036952 Hazlewood et al. Feb 2010 A1
20100054139 Chun et al. Mar 2010 A1
20100061319 Aso et al. Mar 2010 A1
20100064008 Yan et al. Mar 2010 A1
20100082787 Kommula et al. Apr 2010 A1
20100083076 Ushiyama Apr 2010 A1
20100094985 Abu-Samaha et al. Apr 2010 A1
20100098417 Tse-Au Apr 2010 A1
20100106833 Banerjee et al. Apr 2010 A1
20100106854 Kim et al. Apr 2010 A1
20100128606 Patel et al. May 2010 A1
20100131639 Narayana May 2010 A1
20100162378 Jayawardena et al. Jun 2010 A1
20100169477 Stienhans Jul 2010 A1
20100210265 Borzsei et al. Aug 2010 A1
20100217793 Preiss Aug 2010 A1
20100223630 Degenkolb et al. Sep 2010 A1
20100228819 Wei Sep 2010 A1
20100228878 Xu et al. Sep 2010 A1
20100235507 Szeto et al. Sep 2010 A1
20100235522 Chen et al. Sep 2010 A1
20100238828 Russell Sep 2010 A1
20100265824 Chao et al. Oct 2010 A1
20100268814 Cross et al. Oct 2010 A1
20100293296 Hsu et al. Nov 2010 A1
20100312740 Clemm et al. Dec 2010 A1
20100318631 Shukla Dec 2010 A1
20100322252 Suganthi et al. Dec 2010 A1
20100330971 Selitser et al. Dec 2010 A1
20100333101 Pope et al. Dec 2010 A1
20110007652 Bai Jan 2011 A1
20110019550 Bryers et al. Jan 2011 A1
20110023071 Li et al. Jan 2011 A1
20110029599 Pulleyn et al. Feb 2011 A1
20110032941 Quach et al. Feb 2011 A1
20110040826 Chadzelek et al. Feb 2011 A1
20110047294 Singh et al. Feb 2011 A1
20110060831 Ishii et al. Mar 2011 A1
20110060840 Susai et al. Mar 2011 A1
20110093522 Chen et al. Apr 2011 A1
20110099403 Miyata et al. Apr 2011 A1
20110110294 Valluri et al. May 2011 A1
20110145324 Reinart et al. Jun 2011 A1
20110153831 Mutnuru Jun 2011 A1
20110153834 Bharrat Jun 2011 A1
20110153840 Narayana Jun 2011 A1
20110178985 San Martin Arribas et al. Jul 2011 A1
20110185073 Jagadeeswaran et al. Jul 2011 A1
20110191773 Pavel et al. Aug 2011 A1
20110196971 Reguraman et al. Aug 2011 A1
20110226810 Wang Sep 2011 A1
20110276695 Maldaner Nov 2011 A1
20110276982 Nakayama et al. Nov 2011 A1
20110289496 Steer Nov 2011 A1
20110292939 Subramaian et al. Dec 2011 A1
20110302256 Sureshehandra et al. Dec 2011 A1
20110307541 Walsh et al. Dec 2011 A1
20120008495 Shen et al. Jan 2012 A1
20120023231 Ueno Jan 2012 A1
20120026897 Guichard et al. Feb 2012 A1
20120030341 Jensen et al. Feb 2012 A1
20120066360 Ghosh Mar 2012 A1
20120066371 Patel et al. Mar 2012 A1
20120084460 McGinnity et al. Apr 2012 A1
20120106346 Aguirre May 2012 A1
20120106355 Ludwig May 2012 A1
20120117571 Davis et al. May 2012 A1
20120144014 Nathan et al. Jun 2012 A1
20120151353 Joanny Jun 2012 A1
20120170548 Rajagopalan et al. Jul 2012 A1
20120173759 Agarwal et al. Jul 2012 A1
20120191839 Maynard Jul 2012 A1
20120239792 Banerjee et al. Sep 2012 A1
20120240185 Kapoor et al. Sep 2012 A1
20120290727 Tivig Nov 2012 A1
20120297046 Raja et al. Nov 2012 A1
20130046876 Narayana et al. Feb 2013 A1
20130054809 Urmanov Feb 2013 A1
20130058335 Koponen et al. Mar 2013 A1
20130074177 Varadhan et al. Mar 2013 A1
20130083725 Mallya et al. Apr 2013 A1
20130124713 Feinberg et al. May 2013 A1
20130148500 Sonoda et al. Jun 2013 A1
20130173795 McPherson Jul 2013 A1
20130176854 Chisu et al. Jul 2013 A1
20130191486 Someya et al. Jul 2013 A1
20130198385 Han et al. Aug 2013 A1
20130250765 Ehsan et al. Sep 2013 A1
20130250770 Zou et al. Sep 2013 A1
20130258846 Damola Oct 2013 A1
20130268646 Doron et al. Oct 2013 A1
20130282791 Kruglick Oct 2013 A1
20130336159 Previdi et al. Dec 2013 A1
20140082626 Busaba Mar 2014 A1
20140143423 Arya May 2014 A1
20140226658 Kakadia et al. Aug 2014 A1
20140235249 Jeong et al. Aug 2014 A1
20140248914 Aoyagi et al. Sep 2014 A1
20140258465 Li Sep 2014 A1
20140269728 Jalan et al. Sep 2014 A1
20140286313 Fu et al. Sep 2014 A1
20140298091 Carlen et al. Oct 2014 A1
20140310391 Sorenson, III Oct 2014 A1
20140310417 Sorenson, III Oct 2014 A1
20140325649 Zhang Oct 2014 A1
20140330982 Jalan et al. Nov 2014 A1
20140334485 Jain et al. Nov 2014 A1
20140359052 Joachimpillai et al. Dec 2014 A1
20150006728 Parakh Jan 2015 A1
20150006729 Parakh Jan 2015 A1
20150019732 Parakh Jan 2015 A1
20150095494 Lin Apr 2015 A1
20150098333 Lin Apr 2015 A1
20150156223 Xu et al. Jun 2015 A1
20150161411 Shikfa Jun 2015 A1
20150215436 Kancherla Jul 2015 A1
20150237173 Virkki et al. Aug 2015 A1
20150281016 Guerin Oct 2015 A1
20150281087 Jalan et al. Oct 2015 A1
20150281104 Golshan et al. Oct 2015 A1
20150296058 Jalan et al. Oct 2015 A1
20150312268 Ray Oct 2015 A1
20150350048 Sampat et al. Dec 2015 A1
20150350379 Jalan et al. Dec 2015 A1
20160042014 Jalan et al. Feb 2016 A1
20160044095 Sankar et al. Feb 2016 A1
20160088074 Kannan et al. Mar 2016 A1
20160094470 Skog Mar 2016 A1
20160139910 Ramanathan et al. May 2016 A1
20160164792 Oran Jun 2016 A1
Foreign Referenced Citations (108)
Number Date Country
1372662 Oct 2002 CN
1449618 Oct 2003 CN
1529460 Sep 2004 CN
1575582 Feb 2005 CN
1714545 Dec 2005 CN
1725702 Jan 2006 CN
101004740 Jul 2007 CN
101094225 Dec 2007 CN
101163336 Apr 2008 CN
101169785 Apr 2008 CN
101189598 May 2008 CN
101193089 Jun 2008 CN
101247349 Aug 2008 CN
101261644 Sep 2008 CN
102143075 Aug 2011 CN
102546590 Jul 2012 CN
102571742 Jul 2012 CN
102577252 Jul 2012 CN
102918801 Feb 2013 CN
103533018 Jan 2014 CN
103944954 Jul 2014 CN
104040990 Sep 2014 CN
104067569 Sep 2014 CN
104106241 Oct 2014 CN
104137491 Nov 2014 CN
104796396 Jul 2015 CN
102577252 Mar 2016 CN
102918801 May 2016 CN
102571742 Jul 2016 CN
1209876 May 2002 EP
1770915 Apr 2007 EP
1885096 Feb 2008 EP
2296313 Mar 2011 EP
2577910 Apr 2013 EP
2622795 Aug 2013 EP
2647174 Oct 2013 EP
2760170 Jul 2014 EP
2772026 Sep 2014 EP
2901308 Aug 2015 EP
2760170 Dec 2015 EP
1182560 Nov 2013 HK
1183569 Dec 2013 HK
1183996 Jan 2014 HK
1189438 Jan 2014 HK
1198565 May 2015 HK
1198848 Jun 2015 HK
1199153 Jun 2015 HK
1199779 Jul 2015 HK
1200617 Aug 2015 HK
3764CHN2014 Sep 2015 IN
261CHE2014 Jan 2016 IN
1668CHENP2015 Jul 2016 IN
G0997233 Apr 1997 JP
H1196128 Apr 1999 JP
H11338836 Dec 1999 JP
2000276432 Oct 2000 JP
2000307634 Nov 2000 JP
2001051859 Feb 2001 JP
2001298449 Oct 2001 JP
2002091936 Mar 2002 JP
2003141068 May 2003 JP
2003186776 Jul 2003 JP
2005141441 Jun 2005 JP
2006332825 Dec 2006 JP
2008040718 Feb 2008 JP
2009500731 Jan 2009 JP
2013528330 Jul 2013 JP
2014504484 Feb 2014 JP
2014143686 Aug 2014 JP
2015507380 Mar 2015 JP
5855663 Feb 2016 JP
5913609 Apr 2016 JP
5946189 Jul 2016 JP
5963766 Aug 2016 JP
20080008340 Jan 2008 KR
100830413 May 2008 KR
20130096624 Aug 2013 KR
101576585 Dec 2015 KR
101632187 Jun 2016 KR
101692751 Jan 2017 KR
WO2001013228 Feb 2001 WO
WO2001014990 Mar 2001 WO
WO2001045349 Jun 2001 WO
WO2003103237 Dec 2003 WO
WO2004084085 Sep 2004 WO
WO2006098033 Sep 2006 WO
WO2008053954 May 2008 WO
WO2008078593 Jul 2008 WO
WO2011049770 Apr 2011 WO
WO2011079381 Jul 2011 WO
WO2011149796 Dec 2011 WO
WO2012050747 Apr 2012 WO
WO2012075237 Jun 2012 WO
WO2012083264 Jun 2012 WO
WO2012097015 Jul 2012 WO
WO2013070391 May 2013 WO
WO2013081952 Jun 2013 WO
WO2013096019 Jun 2013 WO
WO2013112492 Aug 2013 WO
WO2013189024 Dec 2013 WO
WO2014031046 Feb 2014 WO
WO2014052099 Apr 2014 WO
WO2014088741 Jun 2014 WO
WO2014093829 Jun 2014 WO
WO2014138483 Sep 2014 WO
WO2014144837 Sep 2014 WO
WO2014179753 Nov 2014 WO
WO2015153020 Oct 2015 WO
Non-Patent Literature Citations (14)
Entry
Abe, et al., “Adaptive Split Connection Schemes in Advanced Relay Nodes,” IEICE Technical Report, 2010, vol. 109 (438), pp. 25-30.
Cardellini, et al., “Dynamic Load Balancing on Web-Server Systems,” IEEE Internet Computing, 1999, vol. 3 (3), pp. 28-39.
FreeBSD, “tcp—TCP Protocal,” Linux Programmes Manual [online], 2007, [retrieved on Apr. 13, 2016], Retreived from the Internet: <https://www.freebsd.org/cgi/man.cgi?query=tcp&apropos=0&Lsektion=7&manpath=SuSe+Linux%2Fi386+11.0&format=asci>.
Gite, “Linux Tune Network Stack (Buffers Size) to Increase Networking Performance,” nixCraft [online], 2009, [retreived on Apr. 13, 2016], Retreived from the Internet: <URL:http://www.cyberciti.biz/faq/linux-tcp-tuning/>.
Goldszmidt, et al., “NetDispatcher: A TCP Connection Router,” IBM Researc Report, RC 20853, 1997, pp. 1-31.
Kjaer, et al., “Resource Allocation and Disturbance Rejection in Web Servers Using SLAs and Virtualized Servers,” IEEE Transactions on Network Service Management, 2009, vol. 6 (4), pp. 226-239.
Koike, et al., “Transport Middleware for Network-Based Control,” IEICE Technical Report, 2000, vol. 100 (53), pp. 13-18.
Noguchi, “Realizing the Highest Level “Layer 7” Switch”= Totally Managing Network Resources, Applications, and Users =, Computer & Network LAN, 2000, vol. 18 (1), pp. 109-112.
Ohnuma, “AppSwitch: 7th Layer Switch Provided with Full Setup and Report Tools,” Interop Magazine, 2000, vol. 10 (6), pp. 148-150.
Sharifian, et al., “An Approximation-Based Load-Balancing Algorithm with Admission Control for Cluster Web Servers with Dynamic Workloads,” The Journal of Supercomputing, 2010, vol. 53 (3), pp. 440-463.
Spatscheck, et al., “Optimizing TCP Forwarder Performance,” IEEE/ACM Transactions on Networking, 2000, vol. 8 (2), pp. 146-157.
Search Report and Written Opinion dated Aug. 4, 2014 for PCT Application No. PCT/US2014/021411.
Takahashi, “The Fundamentals of the Windows Network: Understanding the Mystery of the Windows Network from the Basics,” Network Magazine, 2006, vol. 11 (7), pp. 32-35.
Yamamoto, et al., “Performance Evaluation of Window Size in Proxy-Based TCP for Multi-Hop Wireless Networks,” IPSJ SIG Technical Reports, 2008, vol. 2008 (44), pp. 109-114.
Related Publications (1)
Number Date Country
20180097736 A1 Apr 2018 US
Continuations (1)
Number Date Country
Parent 13791760 Mar 2013 US
Child 15833222 US