Patents by Inventor Steven A. Keller

Steven A. Keller 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: 11637914
    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: April 18, 2022
    Date of Patent: April 25, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Thomas J. Hammond, Thomas Kludy, Ayush Jain, Ricardo Fernando Feijoo
  • Patent number: 11610008
    Abstract: A computer system includes a memory to store an application. A processor is configured to start the application, and insert a secret-server hook into the application during start-up. The secret-server hook has instructions to access a secret server with the secret information stored therein. In response to a call being made by the application for the secret information, the secret-server hook has further instructions to intercept the call, and provide the secret information in the secret server to the application based on the intercepted call.
    Type: Grant
    Filed: November 18, 2020
    Date of Patent: March 21, 2023
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Abraham Mir
  • Patent number: 11544230
    Abstract: A method for updating cloud resource tags is provided. The tag associated with a cloud resource may assign the cloud resource to one or more categories to enable tracking of the cloud resource. The method may include determining, based on a synchronization profile, the scope of the update. For example, the scope of the update may encompass individual resources, groups of resources, and/or subscriptions. A metadata data store may be queried to retrieve mapping rules corresponding to tags of resources from one or more cloud service providers that are within the scope of the update. If the value of a tag does not match the value specified by the corresponding mapping rule, the value of the tag may be updated to match the value specified by the mapping rule. Related systems and articles of manufacture, including computer program products, are also provided.
    Type: Grant
    Filed: June 23, 2020
    Date of Patent: January 3, 2023
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Steven A. Keller, Sindy Giraldo, Stephan Vanwoezik
  • Publication number: 20220382529
    Abstract: Described herein are systems and methods for managing releases of global services in a controlled manner. A computing environment may include a first release of a global service, a second release of the global service, and a manager service. The first and second release may be enabled and disabled. The first release may be enabled and the second release may be disabled. The second release may be ready for use in the computing environment after passing one or more checks. A manager service may enable use of the second release in the computing environment. The manager service may disable use of (but maintain execution of) the first release in the computing environment. The second release may be determined to have one or more issues. Responsive to determining the second release has issue(s), the manager service may disable use of the second release and re-enable use of the first release.
    Type: Application
    Filed: August 12, 2022
    Publication date: December 1, 2022
    Inventors: Ayush Jain, Steven A. Keller
  • Patent number: 11487516
    Abstract: Methods and systems are described for cross-cloud call detection. The system may include detecting an instruction configured to call a resource. The instruction may include a name indicative of the resource and one or more values. The resource is configured to construct code using the one or more values. The system may determine the resource is incompatible with a service based on at least the name and the one or more values of the instruction. A conversion of source code is halted when the resource is incompatible with the service.
    Type: Grant
    Filed: January 16, 2020
    Date of Patent: November 1, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventor: Steven A. Keller
  • Patent number: 11461082
    Abstract: Described herein are systems and methods for managing releases of global services in a controlled manner. A computing environment may include a first release of a global service, a second release of the global service, and a manager service. The first and second release may be enabled and disabled. The first release may be enabled and the second release may be disabled. The second release may be ready for use in the computing environment after passing one or more checks. A manager service may enable use of the second release in the computing environment. The manager service may disable use of (but maintain execution of) the first release in the computing environment. The second release may be determined to have one or more issues. Responsive to determining the second release has issue(s), the manager service may disable use of the second release and re-enable use of the first release.
    Type: Grant
    Filed: August 2, 2018
    Date of Patent: October 4, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Ayush Jain, Steven A. Keller
  • Patent number: 11429454
    Abstract: Data is received characterizing a plurality of virtual resources executing application code and deployed within a remote computing environment. The remote computing environment is providing a first configuration of computing resources for execution of the plurality of virtual resources. Resource consumption information associated with the plurality of virtual resources is monitored via an application programing interface of the remote computing environment. A second configuration of computing resources for the plurality of virtual resources is determined using a set of rules and the resource consumption information. A request is transmitted to the remote computing environment to provide the second configuration of computing resources for execution of the plurality of virtual resources. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: March 30, 2020
    Date of Patent: August 30, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Steven A. Keller, Sindy Giraldo
  • Patent number: 11403116
    Abstract: Described embodiments provide systems and methods for stateless modification of operating system registry data across network boundaries. The system includes a processor coupled to memory and configured to execute instructions to receive, within a first network, a request to apply a modification to an operating system registry of a second device within a second network different from the first network. The processor queues data describing the requested modification, receives a polling request from the second device, and transmits, to the second device responsive to the polling request, the queued data describing the requested modification for the second device to apply to the operating system registry of the second device. For example, the requested modification may be to create a key, to create a value, to delete a key, or to delete a value.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: August 2, 2022
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Joel Kevin Lawrence Cardoza, Thomas Michael Kludy
  • Publication number: 20220239756
    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: Application
    Filed: April 18, 2022
    Publication date: July 28, 2022
    Inventors: Steven A. Keller, Thomas J. Hammond, Thomas Kludy, Ayush Jain, Ricardo Fernando Feijoo
  • Publication number: 20220200929
    Abstract: A method for multi-cloud deployment and validation may be provided. The method may include receiving a first template specifying a cloud resource requirement. A first resource from a first cloud provider and a second resource from a second cloud provider may be identified. The first resource and the second resource may be a same or comparable resource capable of satisfying the cloud resource requirement specified by the first template. The first resource may be selected instead of the second resource based on a respective cost of the first resource and the second resource. A second template for deploying the first resource at the first cloud provider may be generated. The first resource may be deployed by sending the second template to the first cloud provider. Related systems and articles of manufacture are also provided.
    Type: Application
    Filed: December 18, 2020
    Publication date: June 23, 2022
    Inventors: Sindy Giraldo, Steven A. Keller
  • Publication number: 20220156387
    Abstract: A computer system includes a memory to store an application. A processor is configured to start the application, and insert a secret-server hook into the application during start-up. The secret-server hook has instructions to access a secret server with the secret information stored therein. In response to a call being made by the application for the secret information, the secret-server hook has further instructions to intercept the call, and provide the secret information in the secret server to the application based on the intercepted call.
    Type: Application
    Filed: November 18, 2020
    Publication date: May 19, 2022
    Inventors: STEVEN A. KELLER, ABRAHAM MIR
  • 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: 11303540
    Abstract: Data is received characterizing a virtual resource requirement for deployment of a resource in a first remote computing environment and/or a second remote computing environment. Second data is received characterizing resource cost for the first remote computing environment and the second remote computing environment. The receiving the second data includes accessing, via an application programming interface of the first remote computing environment and based on an account identity of an entity associated with the virtual resource requirement, the second data characterizing computing resource cost for the first remote computing environment. A first cost for deploying the resource within the first remote computing environment and a second cost for deploying the resource within the second remote computing environment is predicted using the received data. The first cost and the second cost is provided. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: March 30, 2020
    Date of Patent: April 12, 2022
    Assignee: CITRIX SYSTEMS, INC.
    Inventors: Steven A. Keller, Sindy Giraldo
  • Publication number: 20210397588
    Abstract: A method for updating cloud resource tags is provided. The tag associated with a cloud resource may assign the cloud resource to one or more categories to enable tracking of the cloud resource. The method may include determining, based on a synchronization profile, the scope of the update. For example, the scope of the update may encompass individual resources, groups of resources, and/or subscriptions. A metadata data store may be queried to retrieve mapping rules corresponding to tags of resources from one or more cloud service providers that are within the scope of the update. If the value of a tag does not match the value specified by the corresponding mapping rule, the value of the tag may be updated to match the value specified by the mapping rule. Related systems and articles of manufacture, including computer program products, are also provided.
    Type: Application
    Filed: June 23, 2020
    Publication date: December 23, 2021
    Inventors: Steven A. Keller, Sindy Giraldo, Stephan Vanwoezik
  • Publication number: 20210303367
    Abstract: Data is received characterizing a plurality of virtual resources executing application code and deployed within a remote computing environment. The remote computing environment is providing a first configuration of computing resources for execution of the plurality of virtual resources. Resource consumption information associated with the plurality of virtual resources is monitored via an application programing interface of the remote computing environment. A second configuration of computing resources for the plurality of virtual resources is determined using a set of rules and the resource consumption information. A request is transmitted to the remote computing environment to provide the second configuration of computing resources for execution of the plurality of virtual resources. Related apparatus, systems, techniques and articles are also described.
    Type: Application
    Filed: March 30, 2020
    Publication date: September 30, 2021
    Inventors: Steven A. Keller, Sindy Giraldo
  • Publication number: 20210306233
    Abstract: Data is received characterizing a virtual resource requirement for deployment of a resource in a first remote computing environment and/or a second remote computing environment. Second data is received characterizing resource cost for the first remote computing environment and the second remote computing environment. The receiving the second data includes accessing, via an application programming interface of the first remote computing environment and based on an account identity of an entity associated with the virtual resource requirement, the second data characterizing computing resource cost for the first remote computing environment. A first cost for deploying the resource within the first remote computing environment and a second cost for deploying the resource within the second remote computing environment is predicted using the received data. The first cost and the second cost is provided. Related apparatus, systems, techniques and articles are also described.
    Type: Application
    Filed: March 30, 2020
    Publication date: September 30, 2021
    Inventors: Steven A. Keller, Sindy Giraldo
  • Publication number: 20210224048
    Abstract: Methods and systems are described for cross-cloud call detection. The system may include detecting an instruction configured to call a resource. The instruction may include a name indicative of the resource and one or more values. The resource is configured to construct code using the one or more values. The system may determine the resource is incompatible with a service based on at least the name and the one or more values of the instruction. A conversion of source code is halted when the resource is incompatible with the service.
    Type: Application
    Filed: January 16, 2020
    Publication date: July 22, 2021
    Inventor: Steven A. Keller
  • Patent number: 10965741
    Abstract: Methods, systems, and non-transitory computer-readable media are described herein. In some embodiments, a computing platform may deploy a cloud application comprising a first instance of the cloud application. Further, the computing platform may direct a DNS to the first instance of the cloud application. Next, the computing platform may determine that a second instance of the cloud application should be deployed. Additionally, the computing platform may create a first global traffic manager configured with at least a first endpoint and a second endpoint, where the first endpoint is associated with the first instance and is enabled, and where the second endpoint is associated with the second instance, and is disabled. Subsequently, the computing platform may direct the DNS to the first global traffic manager. The computing platform may then direct the DNS to the first global traffic manager, enable the second endpoint.
    Type: Grant
    Filed: February 17, 2020
    Date of Patent: March 30, 2021
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Thomas J. Hammond, Thomas Michael Kludy
  • Publication number: 20210049023
    Abstract: Described embodiments provide systems and methods for stateless modification of operating system registry data across network boundaries. The system includes a processor coupled to memory and configured to execute instructions to receive, within a first network, a request to apply a modification to an operating system registry of a second device within a second network different from the first network. The processor queues data describing the requested modification, receives a polling request from the second device, and transmits, to the second device responsive to the polling request, the queued data describing the requested modification for the second device to apply to the operating system registry of the second device. For example, the requested modification may be to create a key, to create a value, to delete a key, or to delete a value.
    Type: Application
    Filed: October 30, 2020
    Publication date: February 18, 2021
    Applicant: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Joel Kevin Lawrence Cardoza, Thomas Michael Kludy
  • Patent number: 10853091
    Abstract: Described embodiments provide systems and methods for stateless modification of operating system registry data across network boundaries. The system includes a processor coupled to memory and configured to execute instructions to receive, within a first network, a request to apply a modification to an operating system registry of a second device within a second network different from the first network. The processor queues data describing the requested modification, receives a polling request from the second device, and transmits, to the second device responsive to the polling request, the queued data describing the requested modification for the second device to apply to the operating system registry of the second device. For example, the requested modification may be to create a key, to create a value, to delete a key, or to delete a value.
    Type: Grant
    Filed: July 18, 2017
    Date of Patent: December 1, 2020
    Assignee: Citrix Systems, Inc.
    Inventors: Steven A. Keller, Joel Kevin Lawrence Cardoza, Thomas Michael Kludy