Patent application number | Description | Published |
20080225718 | Systems and Methods for Providing Global Server Load Balancing of Heterogeneous Devices - The present invention provides improvements to load balancing by providing a load balancing solution that distributes a load among a plurality of heterogenous devices, such as different types of local load balancers, using metrics collected from the different devices. The load balancing appliance collects metrics from heterogenous devices using a network management protocol and communication model, such as a Simple Network Management Protocol (SNMP). These heterogenous device metrics are available on the load balancing appliance with appliance determined metrics and metrics obtained by the appliance from homogenous devices using a metric exchange protocol. Via a configuration interface of the appliance, a user can select one or more of these different metrics for global load balancing. As such, the load balancing appliance described herein obtains a multitude of metrics from the different devices under management. Additionally, the load balancing appliance described herein provides great flexibility in allowing the user to configure the global load balancer based on the user's understanding of these multitudes of metrics and to take into account the different characteristics and behaviors of the heterogenous devices. | 09-18-2008 |
20090187654 | SYSTEMS AND METHODS FOR MONITORING COMPONENTS OF A REMOTE ACCESS SERVER FARM - The present application is related methods to monitor a state of one or more components of a remote access server farm by an intermediary to distinguish between operating and functional components and improve farm availability for user application requests. The intermediary may be deployed between a client and the remote access server farm and forwards client requests to functional components of the remote access server farm. | 07-23-2009 |
20090307351 | SYSTEMS AND METHODS FOR MONITORING COMPONENTS OF A REMOTE ACCESS SERVER FARM - The present application is related methods to monitor a state of one or more components of a remote access server farm by an intermediary to distinguish between operating and functional components and improve farm availability for user application requests. The intermediary may be deployed between a client and the remote access server farm and forwards client requests to functional components of the remote access server farm. | 12-10-2009 |
20100036951 | SYSTEMS AND METHODS FOR DYNAMIC DECENTRALIZED LOAD BALANCING ACROSS MULTIPLE SITES - A method for enabling decentralized dynamic load balancing among a plurality of appliances providing access to a plurality of sites, each site comprising a local area network and at least one server includes: determining, by a first appliance, a first number of services currently available for access via a local area network connected to the first appliance; receiving, by the first appliance from a second appliance, a communication indicating a second number of services currently available for access via a local area network connected to the second appliance; receiving, by the first appliance, a plurality of requests to connect to a service; determining, by the first appliance, a weight to be assigned to the second appliance, wherein the determination is responsive to the second number; and forwarding, by the first appliance to the second appliance, a subset of the plurality of requests, wherein the number of requests comprising the subset is determined in response to the determined weight. Corresponding systems are also described. | 02-11-2010 |
20100046546 | SYSTEMS AND METHODS FOR PROVIDING DYNAMIC SPILLOVER OF VIRTUAL SERVERS BASED ON BANDWIDTH - The present solution provides a spillover management technique for virtual servers of an appliance based on bandwidth. A network administrator may configure a bandwidth threshold for one or more virtual servers, such as virtual servers providing acceleration or load balancing for one or more services. The bandwidth threshold may be specified as a number of bytes transferred via the virtual server. The bandwidth threshold may also be specified as a round trip time or derivative thereof. A user may specify the bandwidth threshold via a configuration interface. Otherwise, the appliance may establish the bandwidth threshold. The appliance monitors the bandwidth used by a first virtual server. In response to detecting the bandwidth reaching or exceeding the bandwidth threshold, the appliance dynamically directs client requests to a second virtual server. | 02-25-2010 |
20100191851 | METHOD AND APPLIANCE FOR USING A DYNAMIC RESPONSE TIME TO DETERMINE RESPONSIVENESS OF NETWORK SERVICES - In a method and appliance for determining responsiveness of a service via a particular protocol, a device intermediary to a plurality of clients and a plurality of services determines response times from each of a plurality of services to respond to requests via a first type of protocol of a plurality of protocols. The device calculates an average response time for the first type of protocol from each of the response times of the plurality of services. The device establishes a predetermined threshold for which a response time of a service for the first type of protocol may deviate from the average response time. The device identifies a service as available responsive to determining that a deviation of the response time of the service from the average response falls within the predetermined threshold. | 07-29-2010 |
20120005334 | SYSTEMS AND METHODS FOR MONITORING COMPONENTS OF A REMOTE ACCESS SERVER FARM - The present application is related methods to monitor a state of one or more components of a remote access server farm by an intermediary to distinguish between operating and functional components and improve farm availability for user application requests. The intermediary may be deployed between a client and the remote access server farm and forwards client requests to functional components of the remote access server farm. | 01-05-2012 |
20130318232 | SYSTEMS AND METHODS FOR PROVIDING DYNAMIC CONNECTION SPILLOVER AMONG VIRTUAL SERVERS - 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 appliance establishes a predetermined threshold identifying a maximum active transport layer connection capacity for the first virtual server that comprising a sum of a predetermined connection capacity for each of the plurality of services. The appliance determines via monitoring that the status of a service of the plurality of services indicates the service is not available and adjusts the predetermined threshold to comprise the sum of the predetermined connection capacity for each of the plurality of services having a status of available. | 11-28-2013 |
Patent application number | Description | Published |
20090300407 | SYSTEMS AND METHODS FOR LOAD BALANCING VIA A PLURALITY OF VIRTUAL SERVERS UPON FAILOVER USING METRICS FROM A BACKUP VIRTUAL SERVER - The present invention provides methods and systems for performing load balancing via a plurality of virtual servers upon a failover using metrics from a backup virtual server. The methods and systems described herein provide systems and methods for an appliance detecting that a first virtual server of a plurality of virtual servers having one or more backup virtual servers load balanced by an appliance is not available, identifying at least a first backup virtual server of a one or more backup virtual servers of the first virtual server is available, maintaining a status of the first virtual server as available in response to the identification, obtaining one or more metrics from the first backup virtual server of a one or more backup virtual servers, and determining the load across the plurality of virtual servers using the metrics obtained from the first backup virtual server associated with the first virtual server. | 12-03-2009 |
20100131960 | Systems and Methods for GSLB Based on SSL VPN Users - The present invention provides a system and a method for global server load balancing of a plurality of sites based on a number of Secure Socket Layer Virtual Private Network (SSL VPN) users. The SSL VPN users may access servers at each of the plurality of sites. A global server load balancing virtual server (GSLB) may receive a request to access a server. The GSLB virtual server may load balance a plurality of sites wherein each of the plurality of sites may further comprising a load balancing virtual server load balancing users accessing the server accessing servers via an SSL VPN session. GSLB may receive from a first load balancing virtual server at a first site, a first number of current SSL VPN users accessing servers from the first site via SSL VPN sessions. The GSLB may also receive from a second load balancing virtual server at a second site, a second number of current SSL VPN users of the users accessing servers from the second site via SSL VPN sessions. GSLB may determine to forward the request to one of the first load balancing virtual server of the first site or the second load balancing virtual server of the second site by load balancing SSL VPN users across the plurality of sites based on the first number of current SSL VPN users and the second number of current SSL VPN users. | 05-27-2010 |
20110149737 | SYSTEMS AND METHODS FOR MANAGING SPILLOVER LIMITS IN A MULTI-CORE SYSTEM - The present disclosure is directed to a a system for managing spillover via a plurality of cores of a multi-core device intermediary to a plurality of clients and one or more services. The system may include a device intermediary to a plurality of clients and one or more services. The system may include a spillover limit of a resource. The device may also include a plurality of packet engines operating on a corresponding core of a plurality of cores of the device. The system may include a pool manager allocating to each of the plurality of packet engines a number of resource uses from an exclusive quota pool and shared quota pool based on the spillover limit. The device may also include a virtual server of a packet engine of the plurality of packet engines. The virtual server manages client requests to one or more services. The device determines that the number of resources used by a packet engine of the plurality of packet engine has reached the allocated number of resource uses of the packet engine, and responsive to the determination, forwards to a backup virtual server a request of a client of the plurality of clients received by the device for the virtual server. | 06-23-2011 |
20110153724 | SYSTEMS AND METHODS FOR OBJECT RATE LIMITING IN MULTI-CORE SYSTEM - The present invention is directed towards systems and methods for managing a rate of request for an object transmitted between a server and one or more clients via a multi-core intermediary device. A first core of the intermediary device can receive a request for an object and assume ownership of the object. The first core can store the object in shared memory along with a rate-related counter for the object and generate a hash to the object and counter. Other cores can obtain the hash from the first core and access the object and counter in shared memory. Policy engines and throttlers in operation on each core can control the rate of access to the stored object. | 06-23-2011 |
20120072588 | SYSTEMS AND METHODS FOR LOAD BALANCING VIA A PLURALITY OF VIRTUAL SERVERS UPON FAILOVER USING METRICS FROM A BACKUP VIRTUAL SERVER - The present invention provides methods and systems for performing load balancing via a plurality of virtual servers upon a failover using metrics from a backup virtual server. The methods and systems described herein provide systems and methods for an appliance detecting that a first virtual server of a plurality of virtual servers having one or more backup virtual servers load balanced by an appliance is not available, identifying at least a first backup virtual server of a one or more backup virtual servers of the first virtual server is available, maintaining a status of the first virtual server as available in response to the identification, obtaining one or more metrics from the first backup virtual server of a one or more backup virtual servers, and determining the load across the plurality of virtual servers using the metrics obtained from the first backup virtual server associated with the first virtual server. | 03-22-2012 |
20140189132 | SYSTEMS AND METHODS FOR GSLB BASED ON SSL VPN USERS - The present invention provides a system and a method for global server load balancing of a plurality of sites based on a number of Secure Socket Layer Virtual Private Network (SSL VPN) users. The SSL VPN users may access servers at each of the plurality of sites. A global server load balancing virtual server (GSLB) may receive a request to access a server. The GSLB virtual server may load balance a plurality of sites wherein each of the plurality of sites may further comprising a load balancing virtual server load balancing users accessing the server accessing servers via an SSL VPN session. GSLB may receive from a first load balancing virtual server at a first site, a first number of current SSL VPN users accessing servers from the first site via SSL VPN sessions. The GSLB may also receive from a second load balancing virtual server at a second site, a second number of current SSL VPN users of the users accessing servers from the second site via SSL VPN sessions. GSLB may determine to forward the request to one of the first load balancing virtual server of the first site or the second load balancing virtual server of the second site by load balancing SSL VPN users across the plurality of sites based on the first number of current SSL VPN users and the second number of current SSL VPN users. | 07-03-2014 |
20140304231 | SYSTEMS AND METHODS FOR APPLICATION-STATE DISTRIBUTED REPLICATION TABLE HUNTING - The present application is directed towards systems and methods of hunting for a hash table entry in a hash table distributed over a multi-node system. More specifically, when entries are created in an ASDR table, the owner node of the entry may replicate the entry onto a non-owner node. The replica can act as a backup of the ASDR table entry in the event the node leaves the multi-mode system. When the node returns to the multi-node system, the node may no longer have the most up to date ASDR table entries, and may hunt to find the existence of the value associated with the entry. Responsive to receiving a request for an entry that may be outdated on the node, the node sends a request down a replication chain for an updated copy of the ASDR table entry from one of the replicas. Responsive to receiving the replica copy of the entry, the node responds to the client's request for the entry. | 10-09-2014 |
20140304354 | SYSTEMS AND METHODS FOR RELIABLE REPLICATION OF AN APPLICATION-STATE, DISTRIBUTED REPLICATION TABLE - The present application is directed towards using a distributed hash table to track the use of resources and/or maintain the persistency of resources across the plurality of nodes in the multi-node system. More specifically, the systems and methods can maintain the persistency of resources across the plurality of nodes by the use of a global table. A global table may be maintained on each node. Each node's global table enables efficient storage and retrieval of distributed hash table entries. Each global table may contain a linked list of the cached distributed hash table entries that are currently stored on a node. | 10-09-2014 |
20140304355 | SYSTEMS AND METHODS FOR APPLICATION-STATE, DISTRIBUTED REPLICATION TABLE CACHE POISONING - The present application is directed towards invalidating (also referred to as poisoning) ASDR table entries that are determined to be inaccurate because of changes to a multi-node system. For example, when a node leaves or enters a multi-node system, the ownership of the entries in the ASDR table can change thus invalidating cached and replica entries. More specifically, the system and methods disclosed herein include searching an ASDR table for cached entries responsive to the system determining the multi-node system has changed. After finding a cached entry, the system may determine if the entry should be poisoned. The decision to poison the entry may be responsive to the creation time of the entry, the time when the change to the multi-node system occurred, and in the case of a replica, the owner of the replica's position in a replication chain relative to source of the replica. | 10-09-2014 |
20140304361 | SYSTEMS AND METHODS FOR DISTRIBUTED HASH TABLE CONTRACT RENEWAL - The present application is directed towards ASDR table contract renewal. In some embodiments, a core may cache an ASDR table entry received from an owner core such that when the entry is needed again the core does not need to re-request the entry from the owner core. As storing a cached copy of the entry allows the non-owner core to use an ASDR table entry without requesting the entry from the owner core, the owner core may be unaware of an ASDR table entry's use by a non-owner core. To ensure the owner core keeps the ASDR table entry alive, which the non-owner core has cached, the non-owner core may perform contract renewal for each of its recently used cached entries. The contract renewal method may include sending a message to the owner core that indicates which cached ASDR table entries the non-owner core has recently used or accessed. Responsive to receiving the message the owner core may reset a timeout period associated with the ASDR table entry. | 10-09-2014 |
20140304409 | SYSTEMS AND METHODS FOR MAINTAINING SESSION PERSISTENCE IN A CLUSTER SYSTEM - The present application is directed towards systems and methods for managing ownership of one or more SSL sessions. A cluster of nodes intermediary between at least one client server may maintain a succession list for at least one session of a first client from the at least one client. The succession list may include a list of nodes within the cluster and an order of succession for the nodes to transfer ownership of the at least one session. A first node of the cluster may enter an operational state for managing one or more sessions between the at least one client and the at least one server. A second node of the cluster may initiate, based on the succession list and responsive to the first node entering the operational state, a transfer of ownership of the at least one session from the second node to the first node. | 10-09-2014 |
20140304414 | SYSTEMS AND METHODS FOR DYNAMICALLY EXPANDING LOAD BALANCING POOL - The present application is directed towards systems and methods for configuring and applying autoscaling to a service group of an intermediary device for a domain based server. All the IP addresses resolved by the domain name of the server and that are determined as up will automatically become members of the service group. The resolver monitor will resolve the server's domain name based on the TTL (Time to Live) value in the address record or whenever the appropriate command is executed. Each time the domain is resolved, if there is a change in the number of IP addresses resolved, then the members of the service group will shrink or expand based on the number of IP addresses resolved | 10-09-2014 |
20140344326 | SYSTEMS AND METHODS FOR DEPLOYING A SPOTTED VIRTUAL SERVER IN A CLUSTER SYSTEM - The present invention is directed towards systems and methods deploying a virtual server on a subset of devices in a cluster of devices. A first device of a cluster of devices intermediary between at least one client and at least one server, may identify a first virtual server to establish on one or more devices of the cluster. The first device may associate, to the identified virtual server, a group comprising a subset of devices in the cluster of devices. The cluster may establish the first virtual server on each device in the group responsive to associating the group to the first virtual server. Each virtual server on each device of the group may be assigned a same internet protocol address. | 11-20-2014 |