Systems and methods for providing dynamic connection spillover among virtual servers
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G01R-031/08
G06F-015/173
G06F-015/16
출원번호
US-0466238
(2006-08-22)
등록번호
US-8493858
(2013-07-23)
발명자
/ 주소
Kamath, Sandeep
Suganthi, Josephine
Verzunov, Sergey
Shetty, Anil
출원인 / 주소
Citrix Systems, Inc
대리인 / 주소
Foley and Lardner LLP
인용정보
피인용 횟수 :
5인용 특허 :
85
초록▼
A method for an appliance to switch handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server, a m
A method for an appliance to switch handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server, a maximum connection threshold determined dynamically from a status of the first plurality of services. The method includes the steps of: establishing, on an appliance, a first virtual server which directs transport layer connection requests from a plurality of clients to a first plurality of services; establishing, via the appliance, a predetermined threshold identifying a maximum active transport layer connection capacity for the first virtual server, the predetermined threshold comprising a sum of a predetermined connection capacity for each of the plurality of services; monitoring, by the appliance, a status for each of the plurality of services; determining, by the appliance, the status of a service of the plurality of services indicates the service is not available; and adjusting, by the appliance in response to the determination, the predetermined threshold to comprise the sum of the predetermined connection capacity for each of the plurality of services having a status of available. Corresponding systems are also described.
대표청구항▼
1. A method for an appliance to direct handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server,
1. A method for an appliance to direct handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server, a maximum connection threshold determined dynamically from a status of the first plurality of services, the method comprising: (a) establishing, on an appliance, a first virtual server which directs transport layer connection requests from a plurality of clients to a first plurality of services;(b) establishing, via the appliance, a first dynamic threshold identifying a maximum number of active transport layer connections for the first virtual server, the first dynamic threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services that is currently identified as available, wherein the predetermined transport layer connection capacity of a particular service comprises a predetermined number of transport layer connections the particular service is configured to process;(c) monitoring, by the appliance, a status for each of the plurality of services;(d) determining, by the appliance, the status of a service of the plurality of services indicates the service is not available;(e) adjusting, by the appliance in response to the determination, the first dynamic threshold to comprise the sum of the predetermined transport layer connection capacity for each of the plurality of services having a status of available, the adjusted first dynamic threshold excluding the predetermined transport layer connection capacity of the service that is not available;(f) determining, by the appliance, a number of active transport layer connections to the first virtual server exceeds the first dynamic threshold;(g) establishing, by the appliance in response to the determination, a second virtual server which directs transport layer connection requests from the plurality of clients to a second plurality of services;(h) establishing, via the appliance, a second dynamic threshold identifying a maximum number of active transport layer connections for the second virtual server, the second dynamic threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services of the second virtual server that is currently identified as available; and(i) providing, via the appliance, a transport layer connection request received by the appliance to the second virtual server responsive to determining that a number of active transport layer connections to the first virtual server exceeds the first dynamic threshold. 2. The method of claim 1, further comprising the steps of receiving, by the appliance, a transport layer connection request from a first client, and providing, by the appliance, the transport layer connection request to a second virtual server which directs transport layer connection requests from a plurality of clients to a second plurality of services. 3. The method of claim 2, further comprising the step of determining, by the appliance, a number of active transport layer connections to the second virtual server exceeds the dynamic threshold. 4. The method of claim 2, further comprising the steps of: (f) determining, by the appliance, a number of active transport layer connections to the first virtual server has fallen below the dynamic threshold;(g) receiving, by the appliance, a second transport layer connection request from a second client; and(h) providing, by the appliance, the second transport layer connection request to the first virtual server. 5. The method of claim 2, further comprising the steps of: (f) determining, by the appliance, a number of active transport layer connections to the first virtual server has fallen below the dynamic threshold;(g) receiving, by the appliance, a second transport layer connection request from the first client;(h) identifying, by the appliance, an existing transport layer connection between the first client and the second virtual server; and(i) providing, by the appliance responsive to the identification, the second transport layer connection request to the second virtual server. 6. The method of claim 1, wherein step (c) comprises monitoring, by the appliance using a plurality of monitoring agents, a status for each of the plurality of services. 7. The method of claim 1, wherein step (c) comprises monitoring, by the appliance using a plurality of monitoring agents, responses from the first plurality of services to requests of a protocol specific to each agent, wherein each monitoring agent of the plurality of monitoring agents has an assigned weight and is established to monitor availability of a corresponding protocol of a service. 8. The method of claim 7, wherein step (d) comprises determining, by the appliance, a sum of the assigned weights for each of the plurality of monitoring agents is below a given threshold. 9. The method of claim 1, wherein step (d) comprises determining, by the appliance, a deviation of a response time of a service of the plurality of services exceeds a given threshold, wherein the deviation is the deviation of the response time from an average response time for the service. 10. The method of claim 1, wherein step (d) comprises determining, by the appliance, a deviation of a response time of a service of the plurality of services exceeds a given threshold, wherein the deviation is the deviation of the response time from a dynamically computed average response time for the service. 11. The method of claim 1, wherein step (e) comprises subtracting, by the appliance, the predetermined connection capacity for the unavailable service from the dynamic threshold. 12. A system to direct handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server, a maximum connection threshold determined dynamically from a status of the first plurality of services, the system comprising: a first virtual server executing on a network appliance that directs transport layer connection requests from a plurality of clients to a first plurality of services and establishes, a dynamic threshold identifying a maximum number of active transport layer connections for the first virtual server, the dynamic threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services that is currently identified as available, wherein the predetermined transport layer connection capacity of a particular service comprises a predetermined number of transport layer connections the particular service is configured to process;a monitor executing on the network appliance that monitors a status for each of the plurality of services and determines the status of a service of the plurality of services indicates the service is not available; andwherein the network appliance adjusts in response to the determination, the dynamic threshold to comprise the sum of the predetermined transport layer connection capacity for each of the plurality of services having a status of available, the adjusted dynamic threshold excluding the predetermined transport layer connection capacity of the service that is not available;wherein the network appliance determines a number of active transport layer connections to the first virtual server exceeds the dynamic threshold; and in response to the determination, the appliance establishes a second virtual server which directs transport layer connection requests from a plurality of clients to a second plurality of services;wherein the network appliance establishes a second dynamic threshold identifying a maximum number of active transport layer connections for the second virtual server, the second dynamic threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services of the second virtual server that is currently identified as available;wherein the network appliance provides a transport layer connection request received by the network appliance to the second virtual server responsive to determining that a number of active transport layer connections to the first virtual server exceeds the first dynamic threshold. 13. The system of claim 12, wherein the appliance receives a transport layer connection request from a first client, and provides the transport layer connection request to a second virtual server which directs transport layer connection requests from a plurality of clients to a second plurality of services. 14. The system of claim 13, wherein the appliance determines a number of active transport layer connections to the second virtual server exceeds the dynamic threshold. 15. The system of claim 13, wherein the appliance determines a number of active transport layer connections to the first virtual server has fallen below the dynamic threshold; receives a second transport layer connection request from a second client; and provides the second transport layer connection request to the first virtual server. 16. The system of claim 13, wherein the appliance determines a number of active transport layer connections to the first virtual server has fallen below the dynamic threshold; receives a second transport layer connection request from the first client; identifies an existing connection between the first client and the second virtual server; and provides, responsive to the identification, the second transport layer connection request to the second virtual server. 17. The system of claim 12, wherein the monitor determines responses from the first plurality of services to requests of a protocol specific to the monitor, wherein the monitor has an assigned weight and is established to monitor availability of a corresponding protocol of a service. 18. The system of claim 12, wherein the appliance determines, using a plurality of monitoring agents, a status for each of the plurality of services, wherein each monitoring agent of the plurality of monitoring agents has an assigned weight. 19. The system of claim 18, wherein the appliance determines a sum of the assigned weights for each of the plurality of monitoring agents is below a given threshold. 20. The system of claim 12, wherein the appliance determines a deviation of a response time of a service of the plurality of services exceeds a given threshold, wherein the deviation is the deviation of the response time from an average response time for the service. 21. The system of claim 12, wherein the appliance determines a deviation of a response time of a service of the plurality of services exceeds a given threshold, wherein the deviation is the deviation of the response time from a dynamically computed average response time for the service. 22. A method for an appliance to direct handling of transport layer connection requests from a first virtual server of the appliance managing a first plurality of services to a second virtual server of the appliance managing a second plurality of services upon exceeding, by the first virtual server, a maximum connection threshold determined dynamically from a status of each service in the first plurality of services, the method comprising: (a) establishing, on an appliance, a first virtual server which directs transport layer connection requests from a plurality of clients to a first plurality of services;(b) establishing, via the appliance, a predetermined threshold identifying a maximum active transport layer connection capacity for the first virtual server, the predetermined threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services that is identified as currently available, a first service having a first predetermined transport layer connection capacity and a second service having a second predetermined transport layer connection capacity, the second service is currently unavailable, wherein the predetermined transport layer connection capacity of a particular service comprises a predetermined number of transport layer connections the particular service is configured to process;(c) monitoring, by the appliance, a status for the first service and the second service of the plurality of services;(d) determining, by the appliance, the status of the first service indicates the first service is not available and that the status of the second service indicates the second service is available;(e) adjusting, by the appliance in response to the determination, the predetermined threshold by subtracting the first predetermined transport layer connection capacity of the first service from the predetermined threshold and adding the second predetermined transport layer connection capacity of the second service to the predetermined threshold;(f) determining, by the appliance, a number of active transport layer connections to the first virtual server exceeds the dynamic threshold; and(g) establishing, by the appliance in response to the determination, a second virtual server which directs transport layer connection requests from a plurality of clients to a second plurality of services;(h) establishing, via the appliance, a second dynamic threshold identifying a maximum number of active transport layer connections for the second virtual server, the second dynamic threshold comprising a sum of a predetermined transport layer connection capacity for each of the plurality of services of the second virtual server that is currently identified as available; and(i) providing, via the appliance, a transport layer connection request received by the appliance to the second virtual server responsive to determining that a number of active transport layer connections to the first virtual server exceeds the first dynamic threshold. 23. The method of claim 22, wherein step (c) comprises monitoring, by the appliance using one or more monitoring agents, responses from the first plurality of services to requests of a protocol specific to the one or more monitoring agents, wherein each monitoring agent of the one or more monitoring agents has an assigned weight and is established to monitor availability of a corresponding protocol of a service. 24. The method of claim 1, further comprising: receiving, via the appliance, a second transport layer connection request from a client; determining, by the appliance, that the client has a previously existing connection with the first virtual server;assigning a priority to provide the second transport layer connection request to the first virtual server responsive to determining that a number of active transport layer connections to the first virtual server exceeds the first dynamic threshold.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (85)
Tang,Puqi; Diep,Timothy; Hlasnik,Wayne, Access control management system utilizing network and application layer access control lists.
Carr Daniel J. (St. Charles IL) Edberg Eric L. (Naperville IL) Majeti Venkata C. (Naperville IL) Shepherd John L. (Aurora IL), Apparatus and method for combining high bandwidth and low bandwidth data transfer.
Blackard Joe Wayne ; Gillaspy Richard Adams ; Henthorn William John ; Petersen Lynn Erich ; Russell Lance W. ; Shippy Gary Roy, Data processing system and method for pacing information transfers in a communications network.
Bittinger Reed Reed ; Fraenkel Michael Levi ; Housel III Barron Cornelius ; Lindquist David Bruce, Differencing client/server communication system for use with CGI forms.
Hite,Thomas D.; Barber,Ronald W.; Partridge,Charles W.; Lee,Mark R.; McGrane,William B.; Myer,Aaron L.; Lewno,Mark S., Internet control system and method.
Hite, Thomas D.; Barber, Ronald W.; Partridge, Charles W.; Lee, Mark R.; McGrane, William B.; Myer, Aaron L.; Lewno, Mark S., Internet control system communication protocol and method.
Kobayashi Naofumi,JPX ; Shikata Kiyotaka,JPX ; Sekihata Osamu,JPX, Means for maintaining connectable access points owing to movement of a mobile station between cells in a wireless LAN s.
Sonny Bui ; David Cates ; Pauline Chen ; Terry Kerstetter ; John Knight ; Kavita Shekhar Patil ; Thomas Anthony Roden, Mechanism for authorizing a data communication session between a client and a server.
Joffe Rodney Lance ; Dykes Barry A. ; Brittain Jason Alan ; Oppleman Victor Joseph ; Pettingell Brian Everett ; Lippard James Joseph ; Vandeventer Ian Burke ; Watson Brett Dean ; Hotz Steven Michael , Method and apparatus for balancing the process load on network servers according to network and serve based policies.
McKay Douglas B. (Potomac MD) Morten Richard M. (Gaithersburg MD) Marsili Michael P. (Middletown MD), Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network.
Morten Richard M. (Gaithersburg MD) Smith Ted P. (Frederick MD), Method and apparatus for linking an SNA host to a remote SNA host over a packet switched communications network.
David M. Brownell ; Pavani Diwanji ; Neguine Navab ; Peter Vanderbilt, Method and apparatus for managing connections for communication among objects in a distributed object system.
Hanson, Aaron D.; Sturniolo, Emil A.; Menn, Anatoly; Olson, Erik D.; Savarese, Joseph T., Method and apparatus for providing mobile and other intermittent connectivity in a computing environment.
Hanson, Aaron D.; Sturniolo, Emil A.; Menn, Anatoly; Olson, Erik D.; Savarese, Joseph T., Method and apparatus for providing mobile and other intermittent connectivity in a computing environment.
Hanson,Aaron D.; Sturniolo,Emil A.; Menn,Anatoly; Olson,Erik D.; Savarese,Joseph T., Method and apparatus for providing mobile and other intermittent connectivity in a computing environment.
Chevalier,Denis; Marmigere,Gérard; Martin,Sophie; Szalai,Zsolt, Method and system for billing network access capacities shared between internet service providers.
Colby Steven ; Krawczyk John J. ; Nair Raj Krishnan ; Royce Katherine ; Siegel Kenneth P. ; Stevens Richard C. ; Wasson Scott, Method and system for directing a flow between a client and a server.
Bagchi, Amit G.; Ojard, Eric; Ptasinski, Henry S.; Trachewsky, Jason Alexander, Method for selecting frame encoding parameters to improve transmission performance in a frame-based communications network.
Fischer, Matthew James; Mallory, Tracy D., Method of controlling data sampling clocking of asynchronous network nodes in a frame-based communications network.
Trachewsky, Jason Alexander; Ojard, Eric; Garlapati, Srinivasa; Corry, Alan, Method of determining a collision between a plurality of transmitting stations in a frame-based communications network.
Trachewsky,Jason Alexander; Ojard,Eric; Garlapati,Srinivasa; Corry,Alan, Method of determining a start of a transmitted frame in a frame-based communications network.
Trachewsky, Jason Alexander; Ojard, Eric; Garlapati, Srinivasa; Corry, Alan, Method of determining an end of a transmitted frame in a frame-based communications network.
Fischer,Matthew James; Mallory,Tracy D., Method of providing synchronous transport of packets between asynchronous network nodes in a frame-based communications network.
Bendinelli,Samuel; Herrick,Michael; Keane,John; Macey,Christopher; Tuomenoksa,Mark; Francus,Jerold; Harwood,Jonathan; Shimamoto,Brion; Ferraro,Joseph, Methods and system for providing network services using at least one processor interfacing a base network.
Keane,John; Brutman,Neil R.; Harris,Michael J.; Macey,Christopher, Methods and systems for enabling communication between a processor and a network operations center.
Dantzig, Paul Michael; Dias, Daniel Manuel; King, Richard Pervin, System and method for dynamically allocating processing on a network amongst multiple network servers.
Baldwin John H. (Morristown NJ) Chu Helen (New York NY) Doshi Bharat T. (Holmdel NJ) Dravida Subrahmanyam (Somerset NJ) Nanda Sanjiv (Plainsboro NJ) Treventi Philip A. (Murray Hill NJ), Virtual circuit management in cellular telecommunications.
Arumugam, Mahesh; Verzunov, Sergey; Kamath, Sandeep; Suganthi, Josephine; Shetty, Anil; Chauhan, Abhishek, Auto discovery and configuration of services in a load balancing appliance.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.