Patents Assigned to CITRIX SYSTEMS
  • Patent number: 11316951
    Abstract: A system, method and program product for synchronizing client-based data with data in a shared resource. A system is provided that receives data from a plurality of client devices, the data being indicative of at least one action associated with a shared resource accessible by the plurality of client devices, and inserts a plurality of actions indicated by the data as nodes into a polytree queue, wherein actions that do not depend on other actions in the polytree queue are inserted as root level nodes, and actions that depend on other actions in the polytree queue are inserted as child nodes. The system further executes the nodes in the polytree queue to synchronize the data from the plurality of client devices with the shared resource, wherein root level nodes are scheduled for immediate concurrent execution, and execution of child nodes is delayed until parent nodes of an associated child node are executed.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: April 26, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Michael Cooney, Gaurav Saraf, Shashank Choudhary
  • Patent number: 11314532
    Abstract: Embodiments described include systems and methods for delivering a network application. An intermediary device between a client device and a server hosting a network application establishes a connection with the network application. The intermediary device receives encoded application data and decodes the encoded application data. The application data is encoded graphics data or audio data. The decoded application data is renderable at the client device. The intermediary device transmits the decoded application graphics and/or audio data to a client application of the client application for rendering to provide user access to the network application.
    Type: Grant
    Filed: October 11, 2018
    Date of Patent: April 26, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Vipin Borkar, Santosh Sampath, Deepak Sharma, Arvind SankaraSubramanian
  • Publication number: 20220121333
    Abstract: Embodiments described include systems and methods for generating and displaying live tiles for network applications. A small icon or thumbnail-like visual, referred to generally as a “live tile” or “tile”, may be provided via a user interface to a user, with the tile displaying key relevant information from the application or network resource, without the user having to launch the complete application or manually access the resource. The contents of the live tile may be periodically and automatically updated, including performing authentication processes necessary to access the application or resource.
    Type: Application
    Filed: December 27, 2021
    Publication date: April 21, 2022
    Applicant: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Publication number: 20220121472
    Abstract: Described embodiments provide systems and methods for running virtual machines based by probing installation media. A media probe executing on one or more processors may identify an installation media for configuring a virtual machine on a type of operating system. The media probe may detect the type of operating system from the installation media. A virtualization manager executing on the one or more processors may determine a virtualization mode for configuration of the virtual machine based on the type of operating system detected from the installation media. The virtualization manager may create the virtual machine in accordance with the virtualization mode determined based on the type of operating system.
    Type: Application
    Filed: December 28, 2021
    Publication date: April 21, 2022
    Applicant: Citrix Systems, Inc.
    Inventor: Cheng Zhang
  • Patent number: 11310345
    Abstract: Described embodiments provide systems and methods for displaying a service graph of microservices based at least on a namespace. A device assigns each of a plurality of microservices of one or more services to a ring of criticality of a plurality of rings of criticality. Each ring of criticality may identify a level of importance of a microservice to the one or more services. The device receives a request to display a service graph of the plurality of microservices according to a selected ring of criticality of the plurality of rings of criticality. The device generates the service graph comprising one or more of the microservices within the selected ring of criticality. The device displays the service graph identifying the one or more microservices within the selected ring of criticality.
    Type: Grant
    Filed: May 17, 2019
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventor: Abhishek Chauhan
  • Patent number: 11307901
    Abstract: Described embodiments provide systems and methods of allocating cloud resources for application deployments. A resource allocator may identify a first metric indicating usage of cloud resources by clients in a first release environment for an application update. The resource allocator may generate, using the first metric, a resource capacity model for predicting usage of the cloud resources by clients in a second release environment for the application update. The resource allocator may determine, using the resource capacity model, a metric predicting the usage of the cloud resources by the clients in the second release environment. The resource allocator may generate instructions to set an allocation of the cloud computing resources for performing deployment of the application update to the second release environment based on the second metric.
    Type: Grant
    Filed: June 24, 2020
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Yongyu Chen, John Carlo Vincent Cattaneo
  • Patent number: 11310340
    Abstract: Methods and systems for routing a user request for a service to a version of the service in a geographical region associated with the user are described herein. The service may be deployed in multiple geographical regions, and the service may have multiple versions in each of the geographical regions. A user device may send a request for a service to a first server in a geographical region. The first server may determine whether the user is associated with the geographical region. Responsive to determining that the user is not associated with the geographical region, the first server may ask one or more servers in other geographical regions whether the user is associated with any of the other geographical regions.
    Type: Grant
    Filed: July 8, 2020
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Thomas J. Hammond, Thomas Michael Kludy, Ayush Jain, Ricardo Fernando Feijoo
  • Patent number: 11307910
    Abstract: Systems and methods described herein provide for management of notifications. A computing device in communication with a client device receives a notification from at least one notification source. The notification may be for rendering on a screen at the client device. A policy engine of the computing device may identify a context of the notification. The policy engine may add a tag to the notification according to the identified context to control rendering of the notification at the client device. The computing device may transmit the notification with the tag to a notification service at the client device. The notification service may be configured to manage the notification at the client device in accordance with the tag.
    Type: Grant
    Filed: June 10, 2019
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Xiaolu Chu, Dai Li
  • Patent number: 11310133
    Abstract: Described embodiments provide systems and methods for using service graphs to compare performance of a plurality of versions of a microservice. A device may establish metrics from execution of a plurality of versions of a microservice of a service. The plurality of versions of the microservice are deployed concurrently for a portion of execution of the service. The device generates service graphs for each version of the plurality of versions of the microservice. The service graphs include metrics from monitoring execution of a respective version of the microservice. The device identifies differences in metrics between the service graphs for different versions of the microservice. The device requests a change in network traffic of the service between respective versions of the microservice based at least on the one or more differences.
    Type: Grant
    Filed: February 15, 2021
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventor: Rajiv Sinha
  • Patent number: 11310034
    Abstract: Described embodiments provide systems and methods for securing offline data for shared accounts of a shared computing device. Cache files can be generated for a plurality of users of an application executable on the device to store user data corresponding to individual users of the application. An encryption key can be generated for one or more of the cache files and the encryption key can be associated with at least one user of the application. The encryption key can be associated with a user identifier so that the encryption key is not accessible by other users of the computing device. The user data can be encrypted in one of the cache files with the encryption key. The encrypted user data can be presented to a user via the shared computing device based on receipt of a user identifier that enables access to the encryption key.
    Type: Grant
    Filed: May 8, 2019
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Feng Huang, Andy Cooper
  • Patent number: 11310312
    Abstract: Methods, systems, and computer-readable media for peer to peer discovery of remote applications are presented. A client device may discover available remote peers and remotely access applications hosted thereon. The client device may send a discovery message over a network and locate one or more peer devices with available remote access. The peer device may respond with a list including applications installed and currently executing application instances that the client device may remotely access. The peer device may dynamically generate the list based on analyzing applications installed on the peer device and application instances executing on the peer device. The client device may initiate remote access of a selected application hosted on the peer device. The peer device may execute the selected application in a remote mode by hooking input and output interfaces associated with the application, and the application may be executed in a shadow desktop environment.
    Type: Grant
    Filed: July 7, 2014
    Date of Patent: April 19, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Jacob Summers, Rakesh Kumar, Julian Petrov
  • Publication number: 20220116392
    Abstract: Described embodiments provide systems and methods for contextual confidence scoring-based access control. The systems and methods can include one or more processors configured to receive a request from the client device to access an item of content. The one or more processors can select a first subset of authentication techniques. The authentication techniques identifiable with a score. The one or more processors can determine that a sum of the scores of the selected first subset of the authentication techniques exceeds a threshold. The one or more processors can transmit, to the client device, one or more authentication requests utilizing the selected first subset of authentication techniques. The one or more processors can provide, responsive to successful authentication by the client device, access to the item of content to the client device.
    Type: Application
    Filed: October 14, 2020
    Publication date: April 14, 2022
    Applicant: Citrix Systems, Inc.
    Inventors: Harsh Shah, Manbinder Pal Singh, Rachelle Tobkes, Jacob Summers
  • Publication number: 20220116358
    Abstract: Systems and methods for implementing a micro firewall in a mobile application are provided here. Firewall logic can be injected or provided to a mobile application. The firewall logic can provide one or more rules for processing network traffic from application programming interfaces (APIs) of the mobile application. The mobile application having the firewall logic can be made available for installation on a mobile device. The mobile application having the firewall logic can be provided or installed on to a mobile device. During execution of the mobile application, the firewall logic of the mobile application can hook a plurality of API calls of the mobile application relevant to network traffic. The firewall logic can apply one or more rules of the firewall logic to process network traffic corresponding to an API call of the plurality of API calls of the mobile application.
    Type: Application
    Filed: December 22, 2021
    Publication date: April 14, 2022
    Applicant: Citrix Systems, Inc.
    Inventor: Jeffrey David Wisgo
  • Publication number: 20220116481
    Abstract: Systems and methods for autonomous program management include a device which may transmit data to a client in response to a first request from the client. The data may include a response to the first request and a copy of data available to the device corresponding to the first request or the client. The device may receive a second request including the copy of data from the client. The device may determine that the second request is from an autonomous program rather than a user of the client based on the copy of data from the second request. The device may block at least one subsequent request from the client in response to the determination that the second request is from an autonomous program.
    Type: Application
    Filed: November 24, 2020
    Publication date: April 14, 2022
    Applicant: Citrix Systems, Inc.
    Inventors: Rama Rao Katta, Kasirao Velugu
  • Publication number: 20220116279
    Abstract: Described embodiments provide systems and methods for inferring a network type and network conditions. The system includes a packet capturing engine configured to capture a plurality of network packets from a plurality of TCP network connections. The system includes a packet analyzer configured to analyze the plurality of network packets to generate a plurality of metrics. The system includes a network classifier configured to infer network types of the plurality of TCP connections based on the plurality of metrics and at least one classification model. The system also includes a conditions ranking engine configured to estimate a level of network congestion for each TCP connection based on the plurality of metrics and the network types.
    Type: Application
    Filed: October 27, 2021
    Publication date: April 14, 2022
    Applicant: Citrix Systems, Inc.
    Inventors: Georgios Papaloukopoulos, Georgios Tsolis, Athanasios Kordelas, Aikaterini Kalou, Nicholas Stavrakos
  • Publication number: 20220116345
    Abstract: Systems and methods of controlling a state of electronic messaging applications are provided. A system detects a launch of a network application via an embedded browser. The network application is associated with a session identifier of a user. The system identifies one or more electronic messaging applications on a client device of the user. The system transmits, responsive to the launch of the network application associated with the session identifier, an instruction to one or more servers managing the one or more electronic messaging applications to control a state of the one or more electronic messaging applications.
    Type: Application
    Filed: November 6, 2020
    Publication date: April 14, 2022
    Applicant: Citrix Systems, Inc.
    Inventors: Ke Xu, Zhipan Liu
  • Patent number: 11301950
    Abstract: Systems and methods for providing a visible watermark in a remote session. The methods comprise: determining if a graphic update needs to be made at a client computing device during the remote session; generating a first graphic update message in response to a determination that a graphic update is needed; identifying pixels of the graphic which would be affected by at least one watermark if the graphic and watermark were both displayed on a screen of the client computing device; constructing a second string of commands specifying a new color value for each of the pixels that were previously identified; converting the first graphic update message to a second graphic update message by inserting the second string of commands in between a first string of commands and an End-Of-Frame (“EOF”) command; and communicating the second graphic update message from the sever to the client computing device.
    Type: Grant
    Filed: May 29, 2020
    Date of Patent: April 12, 2022
    Assignee: Citrix Systems, Inc.
    Inventor: Muhammad A. Dawood
  • Patent number: 11303614
    Abstract: An appliance includes one or more network interfaces To facilitate secure communications between a client device and a server. The secure communications involve secure session connections between the client device and the appliance, and between the appliance and another appliance. A secure session connection processor is configured to determine, using information in a secure session connection request received from the client device, whether client authentication is required by the server. The secure connection request is provided to the other appliance if the information indicates that client authentication is required by the server. Communications received from the client device are decrypted using a key shared with the client device, and the decrypted communications sent to the other appliance are encrypted using a key shared with the other appliance.
    Type: Grant
    Filed: September 5, 2019
    Date of Patent: April 12, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventor: Paras Suresh Shah
  • Patent number: 11301109
    Abstract: A method is for operating a GUI on a display, the GUI having existing windows. The method may include receiving a window creation command and a current screen of the GUI with the existing windows, and the window creation command may have an original window size value and an original window position value. The method may include dividing the current screen of the GUI into different content regions, each different content region having a region size value, and a region position value. The method may include classifying each of the different content regions as a content type from a different content types, generating a new window position value, and generating a new window creation command including the original window size value and the new window position value, and forwarding the new window creation command to the GUI.
    Type: Grant
    Filed: March 23, 2021
    Date of Patent: April 12, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Hengbo Wang, Daowen Wei, Feng Tao, Jian Ding
  • Patent number: 11303704
    Abstract: The embodiments are directed to methods and systems for determining whether a server should be placed in maintenance mode. The methods and systems can create a user group comprising one or more client devices connected to one or more permanently installed applications or one or more virtual desktops hosted on the server. The methods and systems can create a temporary directory containing duplicates of the one or more applications or one or more virtual desktops that the one or more client devices are connected to. The methods and systems can disconnect the one or more client devices from the one or more permanent applications or virtual desktops, and connect the one or more user devices to the one or more duplicate applications or virtual desktops.
    Type: Grant
    Filed: June 12, 2019
    Date of Patent: April 12, 2022
    Assignee: Citrix Systems, Inc.
    Inventor: Leo C. Singleton, IV