Multi-service API controller gateway

US10454886B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10454886-B2
Application numberUS-201715652902-A
CountryUS
Kind codeB2
Filing dateJul 18, 2017
Priority dateJul 18, 2017
Publication dateOct 22, 2019
Grant dateOct 22, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described embodiments provide systems and methods for hosting multiple cloud-based services at a common network address. The systems and methods receive a request addressed to a uniform resource identifier (“URI”) including a domain name that is one of a plurality of different domain names mapped to a common network address. The systems and methods identify each of a service name and a controller name embedded in the URI, and identify a controller service instance using the service name and controller name from the URI, from a mapping of a plurality of controller server instances to respective service names and controller names. The systems and methods invoke an interface to the identified service instance, and pass data from the received request to the identified service instance via the interface.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of hosting multiple cloud-based services at a common network address, the method comprising: receiving, by a gateway service executed by a device comprising a processor and a network interface assigned a network address, a request addressed to a uniform resource identifier (“URI”) including a domain name that is one of a plurality of different domain names mapped to the network address; identifying, by the gateway service, each of a service name and a controller name embedded in the URI; identifying, by the gateway service, a controller service instance hosted by the device using the service name and controller name from the URI, the device maintaining a mapping of a plurality of controller server instances to respective service names and controller names; invoking, by the gatekeeping service, an interface to the identified service instance; and passing data from the received request to the identified service instance via the interface. 2. The method of claim 1 , further comprising establishing Domain Name System (“DNS”) registrations mapping the plurality of different domain names to the network address assigned to the network interface. 3. The method of claim 1 , further comprising loading, by the gateway service, respective Application Programming Interface (“API”) controllers for two or more of the plurality of controller server instances. 4. The method of claim 1 , wherein the URI includes an authorization identifier, the method further comprising validating the authorization identifier. 5. The method of claim 4 , the method further comprising determining that the authorization identifier indicates that the request is authorized to access the identified controller service instance. 6. The method of claim 1 , wherein the received request is a first request addressed to a first URI, the method further comprising receiving, by the gatekeeping service, a second request addressed to a second URI including a second domain name that is one of the plurality of different domain names mapped to the network address, and passing data from the second request to a second service instance. 7. The method of claim 6 , wherein the first URI and the second URI include a same port number. 8. The method of claim 1 , wherein the plurality of controller server instances are cloud-based services hosted by the device. 9. A system for hosting multiple cloud-based services at a common network address, the system comprising: a network interface assigned a network address; and a processor coupled to memory and configured to execute instructions to: receive a request addressed to a uniform resource identifier (“URI”) including a domain name that is one of a plurality of different domain names mapped to the network address; identify each of a service name and a controller name embedded in the URI; identify a controller service instance using the service name and controller name from the URI, from a mapping of a plurality of controller server instances to respective service names and controller names; invoke an interface to the identified service instance; and pass data from the received request to the identified service instance via the interface. 10. The system of claim 9 , wherein the processor is further configured to establish Domain Name System (“DNS”) registrations mapping the plurality of different domain names to the network address assigned to the network interface. 11. The system of claim 9 , wherein the processor is further configured to load respective Application Programming Interface (“API”) controllers for two or more of a plurality of controller server instances. 12. The system of claim 9 , wherein the URI includes an authorization identifier, and the processor is further configured to validate the authorization identifier. 13. The system of claim 12 , wherein the processor is further configured to determine that the authorization identifier indicates that the request is authorized to access the identified controller service instance. 14. The system of claim 9 , wherein the received request is a first request addressed to a first URI; and wherein the processor is further configured to receive a second request addressed to a second URI including a second domain name that is one of a plurality of different domain names mapped to the network address, and pass data from the second request to a second service instance. 15. The system of claim 14 , wherein the first URI and the second URI include a same port number. 16. The system of claim 9 , wherein the processor is further configured to maintain a mapping of a plurality of controller server instances to respective service names and controller names, and wherein the plurality of controller server instances are cloud-based services hosted by the system. 17. A non-transitory computer-readable medium storing instructions that cause an executing processor to: receive a request addressed to a uniform resource identifier (“URI”) including a domain name that is one of a plurality of different domain names mapped to a network address assigned to a network interface associated with the processor; identify each of a service name and a controller name embedded in the URI; identify a controller service instance using the service name and controller name from the URI, from a mapping of a plurality of controller server instances to respective service names and controller names; invoke an interface to the identified service instance; and pass data from the received request to the identified service instance via the interface. 18. The non-transitory computer-readable medium of claim 17 , further storing instructions that cause the executing processor to load respective Application Programming Interface (“API”) controllers for two or more of a plurality of controller server instances. 19. The non-transitory computer-readable medium of claim 17 , wherein the URI includes an authorization identifier, and the instructions cause the executing processor to validate the authorization identifier. 20. The non-transitory computer-readable medium of claim 19 , further storing instructions that cause the executing processor to determine that the authorization identifier indicates that the request is authorized to access the identified controller service instance.

Assignees

Inventors

Classifications

  • Filtering by address, protocol, port number or service, e.g. IP-address or URL · CPC title

  • in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46) · CPC title

  • Firewall traversal, e.g. tunnelling or, creating pinholes · CPC title

  • wherein the managed service relates to web hosting · CPC title

  • Filtering by information in the payload · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10454886B2 cover?
Described embodiments provide systems and methods for hosting multiple cloud-based services at a common network address. The systems and methods receive a request addressed to a uniform resource identifier (“URI”) including a domain name that is one of a plurality of different domain names mapped to a common network address. The systems and methods identify each of a service name and a controll…
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification H04L61/302. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Oct 22 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).