Abstract:
Described embodiments provide systems and methods for CPU load and priority based early drop packet processing. A device can establish a priority level for each traffic class of a plurality of traffic classes. The device can receive a plurality of packets. The device can determine a processing level of one or more processors of the device prior to processing the plurality of packets. The device can select one or more packets of the plurality of packets to drop responsive to the priority level of one or more traffic classes associated with the one or more packets and the processing level of the one or more processors.
Abstract:
The present application is directed towards systems and methods for application specific load-balancing for web servers. A device intermediary to a plurality of clients and a plurality of services executing on a plurality of servers, may receive a request from a client for an application. The device may identify an identifier for the application from a table comprising a list of applications and a corresponding identifier assigned to each application. In an embodiment, the device may establish one or more monitors to monitor each service to determine applications available on each service. In an embodiment, the device may determine that one or more services of the plurality of services provides the application and select a service from the one or more services to forward the request. The device may forward the request to the selected service.
Abstract:
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.
Abstract:
The present application is directed towards systems and methods for application specific load-balancing for web servers. A device intermediary to a plurality of clients and a plurality of services executing on a plurality of servers, may receive a request from a client for an application. The device may identify an identifier for the application from a table comprising a list of applications and a corresponding identifier assigned to each application. In an embodiment, the device may establish one or more monitors to monitor each service to determine applications available on each service. In an embodiment, the device may determine that one or more services of the plurality of services provides the application and select a service from the one or more services to forward the request. The device may forward the request to the selected service.
Abstract:
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.
Abstract:
The present application is directed towards systems and methods for application specific load-balancing for web servers. A device intermediary to a plurality of clients and a plurality of services executing on a plurality of servers, may receive a request from a client for an application. The device may identify an identifier for the application from a table comprising a list of applications and a corresponding identifier assigned to each application. In an embodiment, the device may establish one or more monitors to monitor each service to determine applications available on each service. In an embodiment, the device may determine that one or more services of the plurality of services provides the application and select a service from the one or more services to forward the request. The device may forward the request to the selected service.
Abstract:
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.
Abstract:
An apparatus, method and computer program product for efficiently pooling network client-server connections. The apparatus is implemented within an interface unit connecting a plurality of servers to the Internet, which is in turn connected to a plurality of clients. The method includes the steps of opening a connection between a first client and the interface unit; determining whether a connection between the interface unit and a server is finished being utilized by the first client; opening a connection between a second client and the interface unit; if no free connection is open between the interface unit and the server, then allowing the second client to access information on the server via the same connection utilized by the first client without waiting for the first client to initiate closing the connection; and delinking the connections between the first and second clients and the interface unit while keeping open the connection between the interface unit and the server.
Abstract:
The present disclosure is directed towards systems and methods for managing application delivery in a network. A device intermediary to a client and one or more servers that provide a plurality of applications, receives a request from the client to access a first application of the plurality of applications. The device holds the request and retrieves, while holding the request, configuration information for an instance of the first application from a configuration repository. The device configures a virtual internet protocol (“VIP”) server using the configuration information for the instance of the first application. The device processes the request via the VIP server.
Abstract:
The present invention is directed towards systems and methods for using a distributed hash table to maintain the same configuration and resource persistency across a plurality of cores in a multi-core system. The distributed hash table includes a plurality of partitions, each partition being owned by a respective core of the multi-core system. A core may establish resources in the partition it owns. A core may request other cores to establish resources in the partitions they own and send resource information to the core. The core may locally cache the resource information.