Patent application number | Description | Published |
20100325288 | SYSTEMS AND METHODS OF STATE MIGRATION IN A MULTI-CORE SYSTEM - The present application is directed towards systems and methods of state migration in a multi-core system. An external process on a client or server may initiate a plurality of connections with the multi-core system, such that some cores have a plurality of connections and others have none. The present invention provides systems and methods for redirecting a connection or migrating the state of a connection from being associated with a first core with a plurality of connections to a second core with no connections. | 12-23-2010 |
20100325371 | SYSTEMS AND METHODS FOR WEB LOGGING OF TRACE DATA IN A MULTI-CORE SYSTEM - A method and system for generating a web log that includes transaction entries from transaction queues of one or more cores of a multi-core system. A transaction queue is maintained for each core so that either a packet engine or web logging client executing on the core can write transaction entries to the transaction queue. In some embodiments, a timestamp value obtained from a synchronized timestamp variable can be assigned to the transaction entries. When a new transaction entry is added to the transaction queue, the earliest transaction entry is removed from the transaction queue and added to a heap. Periodically the earliest entry in the heap is removed from the heap and written to a web log. When an entry is removed from the heap, the earliest entry in a transaction queue corresponding to the removed entry is removed from the transaction queue and added to the heap. | 12-23-2010 |
20110153822 | SYSTEMS AND METHODS FOR MANAGING PREFERRED CLIENT CONNECTIVITY TO SERVERS VIA MULTI-CORE SYSTEM - The present application is directed towards systems and methods for providing a cookie by an intermediary device comprising a plurality of packet processing engines executing on a corresponding plurality of cores, the cookie identifying a session of a user that was redirected responsive to a service exceeding a response time limit. The cookie may be generated with identifiers based off a name of a virtual server managing a service of a server, and a name of a policy associated with the virtual server. Each packet processing engine of the plurality of packet processing engines may interpret cookies generated by other packet processing engines due to the name of the virtual server and name of the policy, and may provide preferred client connectivity based on cookies included in requests for access to a service. | 06-23-2011 |
20130173801 | SYSTEMS AND METHODS FOR MANAGING PREFERRED CLIENT CONNECTIVITY TO SERVERS VIA MULTI-CORE SYSTEM - The present application is directed towards systems and methods for providing a cookie by an intermediary device comprising a plurality of packet processing engines executing on a corresponding plurality of cores, the cookie identifying a session of a user that was redirected responsive to a service exceeding a response time limit. The cookie may be generated with identifiers based off a name of a virtual server managing a service of a server, and a name of a policy associated with the virtual server. Each packet processing engine of the plurality of packet processing engines may interpret cookies generated by other packet processing engines due to the name of the virtual server and name of the policy, and may provide preferred client connectivity based on cookies included in requests for access to a service. | 07-04-2013 |
20140149605 | SYSTEMS AND METHODS FOR DICTIONARY BASED COMPRESSION - This disclosure is directed to dictionary-based compression, which may be employed to achieve stateful header compression without maintaining a complete deflate state. The compressor may maintain a history of data streams compressed by the compressor, compressed according to a compression dictionary. Responsive to the compression of the one or more data streams, the compressor may delete the first compression dictionary from the memory. Subsequent to the deletion, the compressor may compress an additional data stream using the maintained history. The compressor may generate a second compression dictionary from at least one of: the maintained history and a portion of the additional data stream. The compressor may allocate memory for a compression state of the additional data stream and may load the maintained history into the compression state. | 05-29-2014 |
20140301388 | SYSTEMS AND METHODS TO CACHE PACKET STEERING DECISIONS FOR A CLUSTER OF LOAD BALANCERS - The present disclosure is directed towards methods and systems for caching packet steering sessions for steering data packets between intermediary devices of a cluster of intermediary devices intermediary to a client and a plurality of servers. A first intermediary device receives a first data packet and determines, from a hash of a tuple of the first packet, a second intermediary device to which to steer the first packet. The first device stores, to a session for storing packet steering information, the identity of the second device and the tuple. The first device receives a second packet having a corresponding tuple that matches the tuple of the first packet and determines, based on a lookup for the session using the tuple of the second packet, that the second device is the intermediary device to which to steer the second packet. The first device steers the second packet to the second device. | 10-09-2014 |
20140304325 | SYSTEMS AND METHODS FOR ETAG PERSISTENCY - The systems and methods of the present solution are directed to providing Entity Tag persistency by a device intermediary to a client and a plurality of servers. An intermediary device between a client and one or more back-end servers can receive an entity requested by the client from an origin server that provides the requested content. The intermediary device can encode the back-end server information onto an ETag of the entity, cache the entity with the encoded ETag and serve the entity with the encoded ETag to the client. In this way, when the client attempts to validate the entity by sending a request including the encoded ETag to the intermediary device, the intermediary device decodes the encoded ETag to extract the identity of the backend server and sends the request to validate the entity to the identified server that originally sent the entity that included the requested content. | 10-09-2014 |
20140304401 | SYSTEMS AND METHODS TO COLLECT LOGS FROM MULTIPLE NODES IN A CLUSTER OF LOAD BALANCERS - The systems and methods of the present solution are directed to collecting log information from multiple nodes in a multi-nodal cluster. Generally, a logging process runs to collect log information from multiple nodes in a multi-nodal cluster, e.g., a cluster of appliances. The logging process collects the log information and merges the collected log information to create a coherent unified log. The logging process may run on a node designated for the purpose. The designated node may be internal or external to the cluster. The logging process determines a topology for the cluster, establishes a communication channel with each active intermediary device identified in the topology, collects log entries from each active intermediary device, each log entry comprising information on network traffic traversing the respective intermediary device, and merges the collected log entries into a unified cluster log comprising information on network traffic traversing the cluster. | 10-09-2014 |
20160057067 | SYSTEMS AND METHODS FOR PROVIDING FINE GRAINED CONTROL OVER MSS VALUES OF TRANSPORT LAYER CONNECTIONS - Systems and methods of providing fine grained control over MSS values of transport layer connections. A device intermediary to a plurality of clients and a plurality of servers can identify a first MSS value based on a MTU value of a VLAN interface responsive to a request to establish a transport layer connection. Device determines that a MSS value of the VLAN is less than the first MSS value. Device updates, responsive to the determination, the first MSS value to a second MSS value corresponding to the MSS value of the VLAN. Device determines that an MSS value specified by a profile configured for a virtual server of the device is less than the second MSS value. Device updates the second MSS value to the MSS value of the profile responsive to determining that the MSS value specified by the profile is less than the second MSS value. | 02-25-2016 |
20160057070 | SYSTEMS AND METHODS FOR IMPLEMENTATION OF JUMBO FRAME OVER EXISTING NETWORK STACK - This disclosure is directed generally to systems and methods for implementation of Jumbo frames in an existing network stack. In some embodiments, a connection handler of a device receives data having a size greater than an Ethernet frame size. That data includes header data and payload data. The device partitions the data into segments including a first segment and a second segment. The first segment includes the header data and a first portion of the payload data, while the second segment includes a second portion of the payload data. The device stores the first and second segments in first and second network buffers, respectively, of a pool of network buffers. The device forms a packet chain of the first and second network buffers having a size greater than the Ethernet frame size. The device transmits the packet chain via a network connection. | 02-25-2016 |
Patent application number | Description | Published |
20100153640 | AUTOMATIC RAID VOLUME GENERATION AND MIGRATION BASED ON APPLICATION TYPE - A method and system of automatic redundant array of independent disks (RAID) volume generation based on an application type is disclosed. In one embodiment, a method for selecting a RAID level includes receiving setup data of an application type and a number of volumes for generating the RAID, assigning a level of the RAID in response to the application type and generating the number of volumes for the level of the RAID. The method may also include mapping the number of volumes to a host of the RAID, scanning the volumes for data written to the volumes and read from the volumes and evaluating the data to determine an appropriateness of the level of the RAID for the application type. Further, the method may include automatically migrating to another RAID level for the application if the level of the RAID is inappropriate. | 06-17-2010 |
20100153641 | HIERARCHICAL STORAGE MANAGEMENT (HSM) FOR REDUNDANT ARRAY OF INDEPENDENT DISKS (RAID) - Hierarchical storage management (HSM) for redundant array of independent disks (RAID) which comprise a plurality of drive trays of different types is disclosed. In one embodiment, a method for hierarchically managing RAID which includes a plurality of drive trays of different types, includes writing data to a tray of a first type, periodically monitoring a use of the data, and moving the data to a tray of a second type if the use of the data yields less than a threshold value. Each one of the tray of the first type and the tray of the second type includes at least one hard drive, and a composite score of price, capacity, performance, and function of the tray of the first type which is higher than a corresponding composite score of the tray of the second type. | 06-17-2010 |
Patent application number | Description | Published |
20090271370 | DISCOVERY OF FRIENDS USING SOCIAL NETWORK GRAPH PROPERTIES - Embodiments are directed towards providing a list of potential friends to a user based on an analysis of friends' contact lists. The user may provide a subset of friends within a contact list for analysis, along with a degree of separation over which to perform the analysis, and/or a minimum threshold number of occurrences for identifying a candidate friend. The subset of friends' contact lists may then be recursively traversed and merged, where common friends may be identified as members of a candidate set for suggesting friends to the user. In one embodiment, the candidate members may be retained within the candidate set if there is a commonality between the friends and the candidate that exceeds the minimum threshold. The candidate list may also be rank order using various approaches, including a weighted energy diffusion model based in part on a number of communications between the candidates. | 10-29-2009 |
20100125503 | ASTROLOGY BASED CONTENT SELECTION - Astrology based content selection. A method includes receiving a plurality of inputs associated with a user. An astrological profile of the user is determined electronically in a computer system based on the plurality of inputs. Further, contents are selected based on the astrological profile. The contents are then provided to the user. | 05-20-2010 |
20110125571 | METHOD AND SYSTEM FOR SPEED EFFICIENT AND RELEVANCY EFFICIENT ADVERTISING THROUGH A WEB ENABLED ELEMENT - An example of a method comprises receiving a search query initiated by the user and transmitted from the user terminal to the server and identifying, by using server software that communicates with the user terminal, an area of interest in the interface. The method also comprises identifying a context based on at least one of the area of interest and the search query. The method further comprises obtaining, by using server software that communicates with the user terminal. Furthermore, the method comprises extracting, based on the one or more browser parameters and a plurality of predetermined preferences and also extracting advertisements from the database based on the set of rules and the context. The method comprises communicating the advertisements to the user terminal and rendering the advertisements on a display based on the context, the one or more browser parameters and the set of rules. Other embodiments disclose a system. | 05-26-2011 |
Patent application number | Description | Published |
20100228642 | Traffic Management in an Online Advertisement Bidding System - An online advertising system integrates third party agents to permit the third party agents to participate in auctions to bid on a per opportunity basis. An advertising exchange module receives requests for opportunities to serve online advertisements to users. In response, an advertising exchange module applies one or more business rules to determine third party agents that qualify to serve the online advertisement. A bid gateway module generates and transmits requests for bids to the third party agents. The bid gateway module then receives bids from the third party agents in response to the requests for bids. The advertising exchange module then selects an advertisement based on the bid. The online advertisement exchange system provides a unified marketplace to permit integrator networks to bid on both ads pursuant to guaranteed contracts and ads not subject to guaranteed contracts (e.g., non-guaranteed ads). The online advertisement system further includes traffic management to allow the third parties to regulate bid requests sent from the online advertisement system. In some embodiments, the online advertising system caches bids, to efficiently implement the per opportunity auction, and transmits information, such as targeting information, to the third party agents to aid in the third party agents' formulation of bids. | 09-09-2010 |
20110238493 | EFFICIENT AD SELECTION IN AD EXCHANGE WITH INTERMEDIARIES - A method is disclosed for optimizing ad selection in an exchange having intermediate ad-networks including: constructing an exchange graph having nodes representing publishers, advertisers, and intermediate ad-network entities, and including directed edges that represent bilateral business agreements connecting the nodes; receiving an opportunity for displaying an ad to a user that is associated with a publisher node and includes properties that are targetable by supply predicates, wherein a supply predicate is a function whose inputs include properties of the user; receiving ads that are available for display to the user associated with respective advertiser nodes and that include properties that are targetable by demand predicates, wherein a demand predicate is a function whose inputs include properties of one or more of the plurality of ads; computing a thinned graph by enforcing the supply predicates in the nodes and edges of the graph; and producing a list of ads and corresponding paths that exist through the thinned graph to the opportunity that satisfy the plurality of demand predicates. | 09-29-2011 |
20120036023 | SYSTEM FOR CONDUCTING DEMAND-SIDE, REAL-TIME BIDDING IN AN ADVERTISING EXCHANGE - A method for conducting demand-side, real-time bidding includes: constructing an exchange graph (G) of nodes representing publishers and third-party advertisers that provide third-party ads, the graph including directed edges connected between the nodes that represent bilateral business agreements; receiving an opportunity for displaying an ad to a user that is associated with a publisher node; exploring the graph to identify third-party ads reachable from the publisher node through a valid path of the exchange graph with which corresponding third-party advertisers are thereby eligible to bid on the opportunity; retrieving statistics from the memory associated with historical selectivity of demand predicates for the third-party ads; and initiating, before beginning graph exploration on at least some paths to the third-party ads, a call out for bids from at least some of the third-party advertisers for the corresponding third-party ads that are unlikely to be discarded during the graph exploration based on the historical selectively of the demand predicates corresponding thereto, thereby reducing latency in time to execute an auction to fill the opportunity. | 02-09-2012 |