Patents by Inventor Abhishek Chauhan

Abhishek Chauhan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9866475
    Abstract: The present invention is directed towards forwarding network packets in a cluster network. A predetermined identifier may be inserted into a Media Access Control (MAC) ID field of an Ethernet header of a packet to distinguish various types of traffic. Newly received packets may be identified due to the absence of the identifier. The identifier may be added to the source MAC ID field of the Ethernet header of the packet, and the packet may be distributed to cluster nodes for processing via an inter-node communication bus. Thus, received packets with the identifier in the source MAC ID field may be identified as steered for processing by an internal node of the cluster. After processing the packet, the internal node may transmit the processed packets via the inter-node bus with a destination MAC ID including the identifier.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: January 9, 2018
    Assignee: Citrix Systems, Inc.
    Inventors: Abhishek Chauhan, Henk Bots, Sandhya Gopinath
  • Patent number: 9794219
    Abstract: In the present solution, when a cluster node sends an ARP request for an external IP, the node sends a message to all the other nodes, which are part of the CLAG to expect an ARP reply for the IP. When a node in the cluster receives the ARP reply, the node informs the other nodes which are part of the same CLAG to update the MAC address. Also when an ARP entry is learned/updated over a CLAG link as part of an ARP request/Gratuitous ARP, the node learning/updating the ARP entry will inform other nodes which are part of the same CLAG about the learned/updated ARP entry. Nodes in a cluster may communicate between with each other over a dedicated backplane, which may be a separate physical medium.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: October 17, 2017
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Sandhya Gopinath, Ranjith Nath, Abhishek Chauhan
  • Patent number: 9619542
    Abstract: 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.
    Type: Grant
    Filed: April 4, 2014
    Date of Patent: April 11, 2017
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Sandeep Kamath, Mahesh Arumugam, Jaidev Sridhar, Abhishek Chauhan, Sandhya Gopinath
  • Patent number: 9596305
    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.
    Type: Grant
    Filed: April 4, 2014
    Date of Patent: March 14, 2017
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Abhishek Chauhan, Sandhya Gopinath, Sandeep Kamath, Anil Shetty, Josephine Suganthi
  • Publication number: 20160373445
    Abstract: The present disclosure is directed to methods and systems of providing a user-selectable list of disparately hosted applications. A device intermediary to a client and one or more servers may receive a user request to access a list of applications published to the user. The device may communicate to the client the list of published applications available to the user, the list comprising graphical icons corresponding to disparately hosted applications, at least one graphical icon corresponding to a third-party hosted application of the disparately hosted applications, the third party hosted application served by a remote third-party server. The device may receive a selection from the user of the at least one graphical icon. The device may communicate, from the remote third party server to the client of the user, execution of the third party hosted application responsive to the selection by the user.
    Type: Application
    Filed: September 2, 2016
    Publication date: December 22, 2016
    Inventors: Richard Hayton, Ajay Soni, Abhishek Chauhan, Rajiv Sinha, Minoo Gupta
  • Publication number: 20160328222
    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.
    Type: Application
    Filed: May 8, 2015
    Publication date: November 10, 2016
    Inventors: Mahesh Arumugam, Sergey Verzunov, Sandeep Kamath, Josephine Suganthi, Anil Shetty, Abhishek Chauhan
  • Patent number: 9461996
    Abstract: The present disclosure is directed to methods and systems of providing a user-selectable list of disparately hosted applications. A device intermediary to a client and one or more servers may receive a user request to access a list of applications published to the user. The device may communicate to the client the list of published applications available to the user, the list comprising graphical icons corresponding to disparately hosted applications, at least one graphical icon corresponding to a third-party hosted application of the disparately hosted applications, the third party hosted application served by a remote third-party server. The device may receive a selection from the user of the at least one graphical icon. The device may communicate, from the remote third party server to the client of the user, execution of the third party hosted application responsive to the selection by the user.
    Type: Grant
    Filed: May 6, 2011
    Date of Patent: October 4, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Richard Hayton, Ajay Soni, Abhishek Chauhan, Rajiv Sinha, Minoo Gupta
  • Patent number: 9426220
    Abstract: 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.
    Type: Grant
    Filed: April 4, 2014
    Date of Patent: August 23, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Abhishek Chauhan, Sandhya Gopinath, Sandeep Kamath, Mahesh Arumugam, Tushar Kanekar
  • Patent number: 9407554
    Abstract: The present solution is related to a method for distributing flows of network traffic across a plurality of packet processing engines executing on a corresponding core of a multi-core device. The method includes receiving, by a multi-core device intermediary to clients and servers, a packet of a first flow of network traffic between a client and server. The method also includes assigning, by a flow distributor of the multi-core device, the first flow of network traffic to a first core executing a packet processing engine and distributing the packet to this core. The flow distributor may distribute packets of another or second flow of traffic between another client and server to a second core executing a second packet processing engine. When a packet for the flow of traffic assigned to the first core is received, such as a third packet, the flow distributor distributes this packet to the first core.
    Type: Grant
    Filed: June 28, 2013
    Date of Patent: August 2, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Rajiv Mirani, Rajiv Sinha, Abhishek Chauhan, Anil Shetty
  • Patent number: 9374337
    Abstract: While each node in a cluster of nodes sources connections with the same IP if each node allocates a port on this IP independently, there may be port clashes. Also, the return traffic is not guaranteed to hit the originating node. These issues are addressed by allocating a port in such a way that the response traffic hashes back to the originating node. A good hash is chosen such that the ports are equally divided among the nodes. When a node leaves, the other nodes take over the port range used by this node. When a node joins, the node takes back its share of ports.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: June 21, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Vivekanand Rangaraman, Ranjith Nath, Sandhya Gopinath, Abhishek Chauhan
  • Patent number: 9282286
    Abstract: A technique enables a user to participate in an online meeting. The technique involves receiving, by processing circuitry of a vehicle, a join instruction to join the online meeting. The technique further involves performing, by the processing circuitry of the vehicle, a communications exchange with a remote online meeting server in response to the join instruction, the communications exchange establishing an online meeting session with the remote online meeting server to join the processing circuitry of the vehicle to the online meeting. The technique further involves outputting, after the online meeting session is established and by the processing circuitry of the vehicle, video of the online meeting on a display screen which is integrated with the vehicle. Along these lines, the display screen can output a static image while the vehicle is moving and moving video while the vehicle is not moving (e.g., parked).
    Type: Grant
    Filed: March 6, 2014
    Date of Patent: March 8, 2016
    Assignee: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 9253159
    Abstract: The cloud bridge may comprise a tunnel between a datacenter network via a WAN to a cloud network. The cloud bridge makes cloud-hosted applications appear as though they are running on one contiguous enterprise network. With a cloud bridge in place, administrators, tools and the applications believe that the application resides on the enterprise network.
    Type: Grant
    Filed: May 4, 2012
    Date of Patent: February 2, 2016
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Abhishek Chauhan, Peter Downing
  • Publication number: 20150341421
    Abstract: Methods and systems for sharing variable states from an appliance to one or more servers is disclosed. The appliance may identify a script, and identify the variables associated with the script. The variables are shared with the servers so that the servers can execute the script. The script may also be shared with the servers. The script and the variables may be transmitted in-band with other traffic.
    Type: Application
    Filed: May 20, 2014
    Publication date: November 26, 2015
    Applicant: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Publication number: 20150341428
    Abstract: The present disclosure is directed generally to systems and methods for providing load balancing as a service. A load balancer executing on a device intermediary to a server and a plurality of clients can receive a request from an agent executing on the server. The request can be to initiate establishment of a transport layer connection. The load balancer can accept the request to establish the transport layer connection with the server. The load balancer can receive a request to access the server from a client of the plurality of clients. The load balancer can forward the request to the server via the transport layer connection established between the load balancer and the server responsive to the request of the server.
    Type: Application
    Filed: May 20, 2014
    Publication date: November 26, 2015
    Applicant: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 9160768
    Abstract: Systems and methods for configuring and evaluating policies that direct processing of one or more data streams are described. A configuration interface is described for allowing users to specify object oriented policies. These object oriented policies may allow any data structures to be applied with respect to a payload of a received packet stream, including any portions of HTTP traffic. A configuration interface may also allow the user to control the order in which policies and policy groups are executed, in addition to specifying actions to be taken if one or more policies are undefined. Systems and methods for processing the policies may allow efficient processing of object-oriented policies by applying potentially complex data structures to unstructured data streams. A device may also interpret and process a number of flow control commands and policy group invocation statements to determine an order of execution among a number of policies and policy groups.
    Type: Grant
    Filed: July 3, 2013
    Date of Patent: October 13, 2015
    Assignee: Citrix Systems, Inc.
    Inventors: Namit Sikka, Anoop Reddy, Rajiv Mirani, Abhishek Chauhan
  • Publication number: 20150256795
    Abstract: A technique enables a user to participate in an online meeting. The technique involves receiving, by processing circuitry of a vehicle, a join instruction to join the online meeting. The technique further involves performing, by the processing circuitry of the vehicle, a communications exchange with a remote online meeting server in response to the join instruction, the communications exchange establishing an online meeting session with the remote online meeting server to join the processing circuitry of the vehicle to the online meeting. The technique further involves outputting, after the online meeting session is established and by the processing circuitry of the vehicle, video of the online meeting on a display screen which is integrated with the vehicle. Along these lines, the display screen can output a static image while the vehicle is moving and moving video while the vehicle is not moving (e.g., parked).
    Type: Application
    Filed: March 6, 2014
    Publication date: September 10, 2015
    Applicant: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 9124514
    Abstract: The present application is directed towards sharing data link layer information of network traffic distributed across a cluster of intermediary devices. A method for sharing data link layer information across a cluster includes receiving a request packet at a first intermediary device. The first intermediary device identifies a first set of data link layer information from a data link layer of the request packet. The first intermediary device modifies the request packet for transmission on a common data backplane of the cluster to include the first set of data link layer information in the request packet. The modified request packet includes a second set of data link layer information that differs from the first set of data link layer information at the data link layer. The first intermediary device transmits the modified request packet on the common data backplane of the cluster to other devices of the cluster.
    Type: Grant
    Filed: June 15, 2012
    Date of Patent: September 1, 2015
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Sandhya Gopinath, Abhishek Chauhan, Henk Bots, Mohit Saxena, Ramanjaneyulu Y Talla, Vivekanand Rangaraman
  • Patent number: 9111003
    Abstract: An efficient method for parsing HTML pages identifies pages containing a mix of static and dynamic content. The pages are parsed to form abstract syntax trees (ASTs), which are then cached along with the pages. When a later version of a page is retrieved, it is compared against the cached version, and only those portions of the AST that contain different content are reparsed.
    Type: Grant
    Filed: July 29, 2010
    Date of Patent: August 18, 2015
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Sheng Liang, Oliver Chang, Hong Zhang, Abhishek Chauhan, Rajiv Mirani
  • Patent number: 9071526
    Abstract: The present disclosure presents systems and methods for controlling network traffic traversing an intermediary device based on a license or a permit granted for the intermediary device. The systems and methods control a rate of a traffic of a device in accordance with a rate limit identified by a rate limiting license. A rate limiting manager of an intermediary device that processes network traffic between a plurality of clients and a plurality of servers, may identify presence of a rate limiting license that further identifies a performance level. The rate limiting manager may establish a rate limit based on the performance level of the rate limiting license. A throttler of the intermediary may control a rate of receiving network packets in accordance with the rate limit.
    Type: Grant
    Filed: June 18, 2010
    Date of Patent: June 30, 2015
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Roman Avdanin, Henk Bots, Ramanjaneyulu Y. Talla, Abhishek Chauhan, Rajiv Mirani
  • Publication number: 20150012864
    Abstract: The present disclosure is directed to systems and method for providing a virtual appliance. One or more application delivery controller appliances intermediary to a plurality of clients and a plurality of servers perform a plurality of application delivery control functions on network traffic communicated between the plurality of clients and the plurality of servers. A virtual application delivery controller is deployed on a device intermediary to the plurality of clients and the plurality of servers. The virtual application delivery controller executing on the device performs one or more of the plurality of application delivery control functions on network traffic communicated between the plurality of clients and the plurality of servers.
    Type: Application
    Filed: September 19, 2014
    Publication date: January 8, 2015
    Applicant: CITRIX SYSTEMS
    Inventors: Thomas Goodwin, Rajiv Mirani, Abhishek Chauhan, Frank Suchomel, Deepak Goel