Measurement of application response delay time
First Claim
1. A system for measuring application response delay, the system comprising at least a processor and associated memory:
- a first Global Server Load Balancing (GSLB) controller associated with a plurality of distributed GSLB controllers, the first GSLB controller being utilized to;
receive, from a client, via a client Domain Name System (DNS) server, a DNS request, the DNS request including a request to establish a session between the client and one of a plurality of application servers;
responsive to the receiving the DNS request, measure a first round trip time (RTT) between the client DNS server and the first GSLB controller of the plurality of distributed GSLB controllers;
measure a second RTT between the first GSLB controller and a first server load balancer (SLB) collocated with the first GSLB controller;
measure a third RTT between the first SLB and at least one application server;
receive, from a second GSLB controller, a measurement of a first RTT between the client DNS server and the second GSLB controller, a measurement of a second RTT between the second GSLB controller and a second SLB collocated with the second GSLB controller, and a measurement of a third RTT between the second SLB and at least one further application server;
based on the measurements, calculate a cumulative response time associated with the at least one application server and a cumulative response time associated with the at least one further application server;
based on the calculation, select an application server from the at least one application server and the at least one further application server, the application server having a lowest cumulative response time from the cumulative response time associated with the at least one application server and the cumulative response time associated with the at least one further application server; and
based on the selection, send a DNS response to the client DNS server, the DNS response including network data of the SLB associated with the selected application server;
the second GSLB controller associated with the plurality of distributed GSLB controllers, the second GSLB controller being utilized to;
receive, from the first GSLB controller, an instruction to measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server;
in response to the instruction, measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server; and
provide the measurements to the first GSLB controller; and
a database for storing the measurements associated with the first GSLB controller and the measurements associated with the second GSLB controller.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for measuring application response delay is described. The method may commence with receiving a Domain Name System (DNS) request from a client DNS server. The method may include measuring round trip time between the client DNS server and a first Global Server Load Balancing (GSLB) controller, between the first GSLB controller and a server load balancer (SLB) collocated with the first GSLB controller, and between the SLB and an application server. The method may further include receiving measurements of round trip time between the client DNS server and a second GSLB controller, between the second GSLB controller and an SLB collocated with the second GSLB controller, and between the second GSLB controller and a further application server. A cumulative response time associated with the application servers may be calculated based on the measurements to select an application server having a lowest cumulative response time.
145 Citations
20 Claims
-
1. A system for measuring application response delay, the system comprising at least a processor and associated memory:
-
a first Global Server Load Balancing (GSLB) controller associated with a plurality of distributed GSLB controllers, the first GSLB controller being utilized to; receive, from a client, via a client Domain Name System (DNS) server, a DNS request, the DNS request including a request to establish a session between the client and one of a plurality of application servers; responsive to the receiving the DNS request, measure a first round trip time (RTT) between the client DNS server and the first GSLB controller of the plurality of distributed GSLB controllers; measure a second RTT between the first GSLB controller and a first server load balancer (SLB) collocated with the first GSLB controller; measure a third RTT between the first SLB and at least one application server; receive, from a second GSLB controller, a measurement of a first RTT between the client DNS server and the second GSLB controller, a measurement of a second RTT between the second GSLB controller and a second SLB collocated with the second GSLB controller, and a measurement of a third RTT between the second SLB and at least one further application server; based on the measurements, calculate a cumulative response time associated with the at least one application server and a cumulative response time associated with the at least one further application server; based on the calculation, select an application server from the at least one application server and the at least one further application server, the application server having a lowest cumulative response time from the cumulative response time associated with the at least one application server and the cumulative response time associated with the at least one further application server; and based on the selection, send a DNS response to the client DNS server, the DNS response including network data of the SLB associated with the selected application server; the second GSLB controller associated with the plurality of distributed GSLB controllers, the second GSLB controller being utilized to; receive, from the first GSLB controller, an instruction to measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server; in response to the instruction, measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server; and provide the measurements to the first GSLB controller; and a database for storing the measurements associated with the first GSLB controller and the measurements associated with the second GSLB controller. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for measuring application response delay, the method comprising:
-
receiving, by a first Global Server Load Balancing (GSLB) controller associated with a plurality of distributed GSLB controllers, from a client, via a client Domain Name System (DNS) server, a DNS request, the DNS request including a request to establish a session between the client and one of a plurality of application servers; responsive to the receiving the DNS request, measuring, by the first GSLB controller, a first round trip time (RTT) between the client DNS server and the first GSLB controller of the plurality of distributed GSLB controllers; measuring, by the first GSLB controller, a second RTT between the first GSLB controller and a first server load balancer (SLB) collocated with the first GSLB controller; measuring, by the first GSLB controller, a third RTT between the first SLB and at least one application server; receiving, by the first GSLB controller, from a second GSLB controller of the plurality of distributed GSLB controllers, a measurement of a first RTT between the client DNS server and the second GSLB controller, a measurement of a second RTT between the second GSLB controller and a second SLB collocated with the second GSLB controller, and a measurement of a third RTT between the second SLB and at least one further application server; based on the measurements, calculating, by the first GSLB controller, a cumulative response time associated with the at least one application server and a cumulative response time associated with the at least one further application server; based on the calculation, selecting, by the first GSLB controller, an application server from the at least one application server and the at least one further application server, the application server having a lowest cumulative response time from the cumulative response time associated with the at least one application server and the cumulative response time associated with the at least one further application server; and based on the selection, sending, by the first GSLB controller, a DNS response to the client DNS server, the DNS response including network data of the SLB associated with the selected application server. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for measuring application response delay, the system comprising at least a processor and associated memory:
-
a first Global Server Load Balancing (GSLB) controller associated with a plurality of distributed GSLB controllers, the first GSLB controller being utilized to; receive, from a client, via a client DNS server, a DNS request, the DNS request including a request to establish a session between the client and one of a plurality of application servers; responsive to the receiving the DNS request, measure a first round trip time (RTT) between the client DNS server and the first GSLB controller of the plurality of distributed GSLB controllers; measure a second RTT between the first GSLB controller and a first server load balancer (SLB) collocated with the first GSLB controller; measure a third RTT between the first SLB and at least one application server; request a second GSLB controller to measure a first RTT between the client DNS server and the second GSLB controller, a second RTT between the second GSLB controller and a second SLB collocated with the second GSLB controller, and a third RTT between the second SLB and at least one further application server receive, from the second GSLB controller, a measurement of the first RTT between the client DNS server and the second GSLB controller, a measurement of the second RTT between the second GSLB controller and the second SLB collocated with the second GSLB controller, and a measurement of the third RTT between the second SLB and the at least one further application server; based on the measurements, calculate a cumulative response time associated with the at least one application server and a cumulative response time associated with the at least one further application server; wherein the calculating of the cumulative response time associated with the at least one application server includes summing the first RTT between the client DNS server and the first GSLB controller, the second RTT between the first GSLB controller and a first SLB, and third RTT between the first SLB and the at least one application server; and wherein the calculating of the cumulative response time associated with the at least one further application server includes summing the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and third RTT between the second SLB and the at least one further application server; based on the calculation, select an application server from the at least one application server and the at least one further application server, the application server having a lowest cumulative response time from the cumulative response time associated with the at least one application server and the cumulative response time the at least one further application server; and based on the selection, send a DNS response to the client DNS server, the DNS response including network data of the SLB associated with the selected application server; the second GSLB controller associated with the plurality of distributed GSLB controllers, wherein the first GSLB controller and the second GSLB controller are utilized to exchange requests, the second GSLB controller being utilized to; receive, from the first GSLB controller, an instruction to measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server; in response to the instruction, measure the first RTT between the client DNS server and the second GSLB controller, the second RTT between the second GSLB controller and the second SLB, and the third RTT between the second SLB and the at least one further application server; and provide the measurements to the first GSLB controller; and a database for storing the measurements associated with the first GSLB controller and the measurements associated with the second GSLB controller.
-
Specification