Patent Description:
Embodiments of the invention relate to the field of mobile networks and cloud computing, and more specifically to integrating mobile network capabilities with a cloud platform service.

Cloud computing refers to the on-demand delivery of computing resources, typically over a network (e.g., the Internet) with pay-as-you-go pricing. For example, instead of buying, owning, and maintaining physical data centers and servers, a user may access computing resources such as computing power, storage, and databases, on an as-needed basis from a cloud provider.

A communication service provider (CSP) may offer telecommunications services or some combination of information and media services, content, entertainment and application services over networks, leveraging the network infrastructure as a rich, functional platform. A CSP may own and/or operate a mobile network such as a Fourth Generation (<NUM>) Long-term Evolution (LTE) mobile network and/or a Fifth Generation (<NUM>) mobile network.

A hyperscale cloud platform (HCP) is a multi-tenant platform where computing, network, and storage resources can be accessed by multiple tenants on demand. HCP developer ecosystems are potent channels for communication service providers (CSPs) to monetize their mobile networks (e.g., <NUM> mobile network) assets. For example, CSPs may deploy HCP edge infrastructures inside their mobile network premises to provide mobile edge computing services (an example of this is Amazon Web Services (AWS) Wavelength).

Mobile networks may provide various capabilities such as dynamic quality of service (QoS) and sponsored data. Dynamic QoS refers to the ability of the mobile network to adjust the level of QoS provided for specified network traffic on demand and/or responsive to the occurrence of certain events. Sponsored data refers to the ability of the mobile network to charge a subscriber's data usage fees to a sponsor (instead of to the subscriber). The sponsor may be a CSP, a content provider, or other company/organization.

A CSP may monetize the capabilities of its mobile network by exposing application programming interfaces (APIs) in their native forms to a CSP portal and/or a HCP/third-party provider (3PP) marketplace. Application developers may use these APIs to leverage the capabilities provided by the mobile network (e.g., dynamic QoS or sponsored data APIs). However, leveraging such capabilities requires significant development effort and attention from application developers.

<CIT> discloses a communication system including multiple Point-of-Presence (POP) interfaces distributed in a Wide-Area Network (WAN), and one or more processors coupled to the POP interfaces. The processors are configured, inter alia, to assign to a responder in the communication system a service IP address, including embedding in the service IP address an affiliation of the service with a group of responders.

<CIT> discloses a system and method for a mobile data access network to make policy control and charging decisions based on domain name queries.

<CIT> discloses provisioning of a resource to provide a service based on network characteristics. A request for a service may be received and network characteristics of current resources providing the service may be identified.

An embodiment is a method performed by a domain name system (DNS) server for a cloud infrastructure to integrate a capability provided by a mobile network with a platform service provided by the cloud infrastructure. The method includes receiving, from a user equipment (UE) connected to the mobile network, a query to resolve a fully qualified domain name (FQDN) associated with the platform service, responsive to a determination that network integration is enabled for the platform service, calling an application programming interface (API) provided by an integration logic to configure the mobile network to provide the capability for the UE when the UE accesses the platform service, and sending an internet protocol (IP) address of the platform service to the UE as a response to the query.

An embodiment is a set of non-transitory machine-readable media having computer code stored therein, which when executed by a set of one or more processors of one or more network devices implementing a DNS server for a cloud infrastructure, causes the DNS server to perform operations for integrating a capability provided by a mobile network with a platform service provided by the cloud infrastructure. The operations include receiving, from a user equipment (UE) connected to the mobile network, a query to resolve a fully qualified domain name (FQDN) associated with the platform service, responsive to a determination that network integration is enabled for the platform service, calling an application programming interface (API) provided by an integration logic to configure the mobile network to provide the capability for the UE when the UE accesses the platform service, and sending an internet protocol (IP) address of the platform service to the UE as a response to the query.

An embodiment is a method performed by an integration logic to integrate a capability provided by a mobile network with a platform service provided by a cloud infrastructure. The method includes receiving, from a domain name system (DNS) server for the cloud infrastructure via an application programming interface (API), a request to configure the mobile network to provide the capability for a user equipment (UE) and responsive to receiving the request, configuring the mobile network to provide the capability for the UE when the UE accesses the platform service.

An embodiment is a set of non-transitory machine-readable media having computer code stored therein, which when executed by a set of one or more processors of one or more network devices implementing an integration logic, causes the integration logic to perform operations for integrating a capability provided by a mobile network with a platform service provided by the cloud infrastructure. The operations include receiving, from a domain name system (DNS) server for the cloud infrastructure via an application programming interface (API), a request to configure the mobile network to provide the capability for a user equipment (UE) and responsive to receiving the request, configuring the mobile network to provide the capability for the UE when the UE accesses the platform service.

The following description describes methods and apparatus for integrating capabilities provided by a mobile network with a platform service provided by a cloud infrastructure. In the following description, numerous specific details such as logic implementations, opcodes, means to specify operands, resource partitioning/sharing/duplication implementations, types and interrelationships of system components, and logic partitioning/integration choices are set forth in order to provide a more thorough understanding of the present invention. It will be appreciated, however, by one skilled in the art that the invention may be practiced without such specific details. In other instances, control structures, gate level circuits and full software instruction sequences have not been shown in detail in order not to obscure the invention. Those of ordinary skill in the art, with the included descriptions, will be able to implement appropriate functionality without undue experimentation.

Bracketed text and blocks with dashed borders (e.g., large dashes, small dashes, dot-dash, and dots) may be used herein to illustrate optional operations that add additional features to embodiments of the invention. However, such notation should not be taken to mean that these are the only options or optional operations, and/or that blocks with solid borders are not optional in certain embodiments of the invention.

An electronic device stores and transmits (internally and/or with other electronic devices over a network) code (which is composed of software instructions and which is sometimes referred to as computer program code or a computer program) and/or data using machine-readable media (also called computer-readable media), such as machine-readable storage media (e.g., magnetic disks, optical disks, solid state drives, read only memory (ROM), flash memory devices, phase change memory) and machine-readable transmission media (also called a carrier) (e.g., electrical, optical, radio, acoustical or other form of propagated signals - such as carrier waves, infrared signals). Thus, an electronic device (e.g., a computer) includes hardware and software, such as a set of one or more processors (e.g., wherein a processor is a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application specific integrated circuit, field programmable gate array, other electronic circuitry, a combination of one or more of the preceding) coupled to one or more machine-readable storage media to store code for execution on the set of processors and/or to store data. For instance, an electronic device may include non-volatile memory containing the code since the non-volatile memory can persist code/data even when the electronic device is turned off (when power is removed), and while the electronic device is turned on that part of the code that is to be executed by the processor(s) of that electronic device is typically copied from the slower non-volatile memory into volatile memory (e.g., dynamic random access memory (DRAM), static random access memory (SRAM)) of that electronic device. Typical electronic devices also include a set of one or more physical network interface(s) (NI(s)) to establish network connections (to transmit and/or receive code and/or data using propagating signals) with other electronic devices. For example, the set of physical NIs (or the set of physical NI(s) in combination with the set of processors executing code) may perform any formatting, coding, or translating to allow the electronic device to send and receive data whether over a wired and/or a wireless connection. In some embodiments, a physical NI may comprise radio circuitry capable of receiving data from other electronic devices over a wireless connection and/or sending data out to other devices via a wireless connection. This radio circuitry may include transmitter(s), receiver(s), and/or transceiver(s) suitable for radiofrequency communication. The radio circuitry may convert digital data into a radio signal having the appropriate parameters (e.g., frequency, timing, channel, bandwidth, etc.). The radio signal may then be transmitted via antennas to the appropriate recipient(s). In some embodiments, the set of physical NI(s) may comprise network interface controller(s) (NICs), also known as a network interface card, network adapter, or local area network (LAN) adapter. The NIC(s) may facilitate in connecting the electronic device to other electronic devices allowing them to communicate via wire through plugging in a cable to a physical port connected to a NIC. One or more parts of an embodiment of the invention may be implemented using different combinations of software, firmware, and/or hardware.

A network device (ND) is an electronic device that communicatively interconnects other electronic devices on the network (e.g., other network devices, end-user devices). Some network devices are "multiple services network devices" that provide support for multiple networking functions (e.g., routing, bridging, switching, Layer <NUM> aggregation, session border control, Quality of Service, and/or subscriber management), and/or provide support for multiple application services (e.g., data, voice, and video).

As mentioned above, application developers may use native application programming interfaces (APIs) exposed by communication service providers (CSPs) to leverage the capabilities provided by mobile networks. However, leveraging such capabilities requires significant development effort and attention from the application developer.

Embodiments disclosed herein provide a way to integrate one or more capabilities provided by a mobile network (e.g., dynamic QoS and/or sponsored data) with a platform service provided by a cloud infrastructure (e.g., a hyperscale cloud provider (HCP) platform service). Embodiments allow application developers to leverage the capabilities provided by a mobile network with less development effort and provides additional channels for the CSP to monetize the capabilities provided by its mobile network.

Using embodiments disclosed herein, capabilities provided by a mobile network such as dynamic quality of service (QoS) and/or sponsored data can be integrated with a platform service provided by a cloud infrastructure such as Amazon® Kinesis Video Streams, which is a video stream processing service on Amazon Web Services (AWS) that is used for video analytics (e.g., for security cameras). For example, using embodiments disclosed herein, an application developer may select dynamic QoS and/or sponsored data capabilities as an option (e.g., as part of selecting the Kinesis service tier), and any mobile client connecting to its Kinesis instance over the mobile network would implicitly leverage the dynamic QoS and/or sponsored data capabilities provided by the mobile network. Embodiments achieve this by configuring the domain name system (DNS) server for the cloud infrastructure to trigger the dynamic QoS API and/or the sponsored data API exposed by the mobile network when a mobile client attempts to access the platform service using the fully-qualified domain name (FQDN) associated with the Kinesis instance.

An embodiment is a method performed by a DNS server for the cloud infrastructure to integrate a capability provided by a mobile network with a platform service provided by the cloud infrastructure. The method includes receiving, from a user equipment (UE) connected to the mobile network, a query to resolve a FQDN associated with the platform service, responsive to a determination that network integration is enabled for the platform service, calling an API provided by an integration logic to configure the mobile network to provide the capability for the UE when the UE accesses the platform service, and sending an internet protocol (IP) address of the platform service to the UE as a response to the query.

An embodiment is a method performed by an integration logic to integrate a capability provided by a mobile network with a platform service provided by a cloud infrastructure. The method includes receiving, from a DNS server for the cloud infrastructure via an API, a request to configure the mobile network to provide the capability for a UE and responsive to receiving the request, configuring the mobile network to provide the capability for the UE when the UE accesses the platform service.

Embodiments provide one or more advantages over existing solutions. An advantage of embodiments disclosed herein is that they provide simplicity for the application developer. The application developer does not have to explicitly use the native APIs exposed by the mobile network to leverage the capabilities provided by the mobile network, but instead may simply select a service tier or configure a high-level platform service parameter. DNS and FQDNs can be used as usual and no/minimal changes are needed to existing HCP best practices. Another advantage of embodiments disclosed herein is that they provide additional monetization options for the CSP besides the traditional CSP and HCP API marketplace channels. Embodiments allow CSPs to do this while hiding complexities and sensitive information (e.g., a CSP can decide not to openly share its dynamic QoS and/or sponsored data APIs with the application developer). Various embodiments are now described with reference to the accompanying figures.

<FIG> is a diagram showing an environment in which a capability provided by a mobile network can be integrated with a platform service provided by a cloud infrastructure and example operations for integrating a dynamic QoS service capability provided by the mobile network with the platform service, according to some embodiments.

As shown in the diagram, the environment includes a UE <NUM>, a base station <NUM>, a CSP premises <NUM>, and a cloud infrastructure <NUM>. The cloud infrastructure <NUM> may include a collection of hardware and software resources that enable cloud computing. For example, the cloud infrastructure <NUM> may include computing resources, networking resources, and/or storage resources, as well as an interface for cloud users to access virtualized resources. In an embodiment, the cloud infrastructure <NUM> provides a hyperscale cloud platform (HCP) (e.g., an edge cloud and/or a non-edge cloud). In an embodiment, the cloud infrastructure <NUM> is part of a colocation data center. As shown in the diagram, the cloud infrastructure <NUM> may provide a platform service <NUM> and a DNS server <NUM>. In an embodiment, the platform service <NUM> is a video processing service (e.g., Amazon Kinesis) but it should be understood that embodiments are not limited thereto.

The UE <NUM> may be a network device that can communicate wirelessly with a mobile network such as a Fourth Generation (<NUM>) Long-term Evolution (LTE) mobile network and/or a Fifth Generation (<NUM>) mobile network. The UE <NUM> may be, for example, a mobile phone, a laptop, or similar device. The UE <NUM> may implement a client application that can access the platform service <NUM> provided by the cloud infrastructure <NUM> over a mobile network.

The mobile network may be owned/operated by a CSP and may include the base station <NUM>, a user plane function (UPF) or PDN gateway (PGW) <NUM>, and a core <NUM> (e.g., a <NUM> Core (5GC)) that includes a network exposure function (NEF) <NUM>. The core <NUM> (including the NEF <NUM>), the UPF/PGW <NUM>, and the integration logic <NUM> may be deployed in CSP premises <NUM> (e.g., a central point of presence (PoP) of the CSP), although other configurations are possible (e.g., in an embodiment, the integration logic <NUM> is deployed outside of CSP premises <NUM>). The base station <NUM> may communicate wirelessly with UEs to provide the UEs with access to the rest of the mobile network. In an embodiment, the base station <NUM> is an eNodeB or a gNodeB. The UPF/PGW <NUM> is a function that provides connectivity between the base stations and a date network. The NEF <NUM> may expose one or more APIs to the integration logic <NUM> that can be used to access the capabilities provided by the mobile network. For example, the NEF <NUM> may expose a "UE information" API that can be used to obtain location information for a UE <NUM>, a "dynamic QoS" API that can be used to configure the mobile network to provide a particular level of QoS for certain network traffic, and/or a "sponsored data" API that can be used to configure the mobile network to provide sponsored data for certain network traffic (where data usage fees are charged to a designated sponsor). As will be described in additional detail below, in an embodiment, the integration logic <NUM> exposes an API to the DNS server <NUM> that the DNS server <NUM> can use to activate certain capabilities provided by the mobile network for a UE <NUM> accessing the platform service <NUM> over the mobile network (such API may be referred to herein as a "network integration" API).

The configuration of components shown in the diagram are provided as an example to illustrate a particular embodiment. It should be understood that other embodiments may use a different configuration. While terminology of 3rd Generation Partnership Project (3GPP) standards are used herein to help describe embodiments (e.g., UPF/PGW and NEF), it should be understood that some embodiments may be implemented using networks and/or components that do not comply with the 3GPP standard.

In an embodiment, when the DNS server <NUM> for the cloud infrastructure <NUM> receives a query from the UE <NUM> to resolve a fully-qualified domain name (FQDN) associated with the platform service <NUM>, the DNS server <NUM> determines whether network integration is enabled for the platform service <NUM>. In an embodiment, the DNS server <NUM> determines whether network integration is enabled for the platform service <NUM> based on accessing a DNS record for the FQDN associated with the platform service (e.g., the DNS record for the FQDN may include an indication of whether network integration is enabled or not). If the DNS server <NUM> determines that network integration is enabled for the platform service <NUM>, then then the DNS server <NUM> may call the network integration API provided by the integration logic <NUM> to activate certain capabilities provided by the mobile network (e.g., dynamic QoS and/or sponsored data) for the UE <NUM>. In an embodiment, the DNS server <NUM> provides the Internet Protocol (IP) address of the UE <NUM> in this API call. The DNS server <NUM> may obtain the IP address of the UE <NUM> based on the query it received from the UE <NUM>. In response to receiving the API call, the integration logic <NUM> may call one or more APIs provided by the NEF <NUM> to activate certain capabilities provided by the mobile network for the UE <NUM>. For example, the integration logic <NUM> may call a UE information API provided by the NEF <NUM> to obtain a subscription ID associated with the UE <NUM> (e.g., a Generic Public Subscription Identifier (GPSI)). In an embodiment, the integration logic <NUM> provides the IP address of the UE <NUM> in this API call. In response to receiving the API call, the NEF <NUM> may determine the subscription ID associated with the UE <NUM> (e.g., based on the IP address of the UE <NUM> that was provided in the API call) and provide it to the integration logic <NUM>. The integration logic <NUM> may then call an API provided by the NEF <NUM> to activate one or more capabilities provided by the mobile network (e.g., dynamic QoS and/or sponsored data) for the UE <NUM>. The integration logic <NUM> may provide the subscriber ID associated with the UE <NUM> (which the integration logic <NUM> obtained by calling the UE information API), the IP address and port number of the UE <NUM>, the IP address and port number of the platform service <NUM>, and/or the protocol type in this API call (e.g., to help identify the network traffic to which the capabilities should be applied). The integration logic <NUM> may obtain the IP address of the UE <NUM> from the DNS server <NUM>. The integration logic <NUM> may have previous knowledge of the port number of the UE <NUM>, the IP address and port number of the platform service <NUM>, and the protocol type (e.g., based on user configuration), or obtain such information using known means. In response to receiving the API call, the NEF <NUM> may configure the mobile network to provide the capabilities for the UE <NUM> when the UE <NUM> accesses the platform service <NUM> (e.g., by configuring the mobile network to apply the capabilities to network traffic between the UE <NUM> and the platform service <NUM> (this network traffic may be identified based on a <NUM>-tuple of UE IP address, UE port number, platform service IP address, platform service port number, and protocol type)). The NEF <NUM> may use the subscriber ID associated with the UE <NUM> to determine whether the subscribe is eligible to receive certain services (e.g., dynamic QoS and/or sponsored data) and/or to help with identifying the network traffic belonging to the UE <NUM>. If the configuration is successful, the integration logic <NUM> may send an acknowledgement message to the DNS server <NUM>. The DNS server <NUM> may then send an IP address to the UE <NUM> that can be used to access the platform service <NUM> (as a response to the UE's original query). The UE <NUM> may then use the IP address to access the platform service <NUM> over the mobile network with certain capabilities activated for the UE <NUM> in the mobile network.

Example operations for integrating a dynamic QoS capability provided by the mobile network with the platform service <NUM> are now described to illustrate a particular embodiment. At operation <NUM>, the UE <NUM> queries the DNS server <NUM> to resolve a FQDN associated with the platform service <NUM>. At operation <NUM>, the DNS server <NUM> calls a network integration API provided by the integration logic <NUM> (e.g., providing the IP address of the UE <NUM> in the API call) if dynamic QoS is enabled for the platform service <NUM>. At operation <NUM>, the integration logic <NUM> calls the UE information API provided by the NEF <NUM> (e.g., providing the IP address of the UE <NUM> in the API call) to obtain a subscription ID (e.g., a GPSI) associated with the UE <NUM> (e.g., the NEF <NUM> may determine a GPSI associated with the UE <NUM> based on the IP address of the UE <NUM>). At operation <NUM>, the integration logic <NUM> calls the dynamic QoS API provided by the NEF <NUM> (e.g., providing the GPSI associated with the UE <NUM>, the IP address and port number of the UE <NUM>, the IP address and port number of the platform service <NUM>, the protocol type, and the desired level of QoS in the API call) to activate dynamic QoS for the UE <NUM> in the mobile network. Responsive to receiving the API call, the NEF <NUM> configures the mobile network to provide a particular level of QoS (e.g., the desired level of QoS provided in the API call) for the UE <NUM> when the UE <NUM> accesses the platform service <NUM>. The NEF <NUM> may identify this network traffic based on the <NUM>-tuple of UE IP address, UE port number, platform service IP address, platform service port number, and protocol type. At operation <NUM>, if the configuration is successful, the integration logic <NUM> sends an acknowledgement ("ACK") message to the DNS server <NUM>. At operation <NUM>, the DNS server <NUM> returns an IP address to the UE <NUM> that the UE <NUM> can use to access the platform service <NUM>. At operation <NUM>, the UE <NUM> accesses the platform service <NUM> with elevated QoS using the IP address returned by the DNS server <NUM>.

<FIG> is a diagram showing component interactions for integrating a dynamic QoS capability provided by the mobile network with a platform service, according to some embodiments. As shown in the diagram, the UE <NUM> sends a query to resolve a FQDN associated with the platform service <NUM> to the DNS server <NUM>. Responsive to receiving the query, the DNS server <NUM> calls the network integration API provided by the integration logic <NUM> if dynamic QoS is enabled for the platform service. The integration logic <NUM> calls the UE information API provided by the NEF <NUM> to obtain a subscription ID associated with the UE <NUM> (e.g., a GPSI). The integration logic <NUM> then calls the dynamic QoS API provided by the NEF <NUM> to configure the mobile network to provide a particular level of QoS for the UE <NUM> when the UE <NUM> accesses the platform service <NUM>. The integration logic <NUM> then sends an acknowledgement to the DNS server <NUM>. The DNS server <NUM> then sends an IP address that can be used to access the platform service <NUM> to the UE <NUM>. The UE <NUM> then uses the IP address returned by the DNS server <NUM> to access the platform service <NUM> with the particular level of QoS (e.g., the mobile network provides the particular level of QoS for network traffic sent between the UE <NUM> and the platform service <NUM>).

<FIG> is a diagram showing an environment and example operations for integrating a sponsored data capability provided by the mobile network with the platform service, according to some embodiments. The environment shown in <FIG> is similar to the environment shown in <FIG>, and therefore a description of the components of the environment is not repeated in detail here for the sake of brevity. Example operations for integrating a sponsored data capability provided by the mobile network with the platform service <NUM> are now described to illustrate a particular embodiment. At operation <NUM>, the UE <NUM> queries the DNS server <NUM> to resolve a FQDN associated with the platform service <NUM>. At operation <NUM>, the DNS server <NUM> calls a network integration API provided by the integration logic <NUM> (e.g., providing the IP address of the UE <NUM> in the API call) if sponsored data is enabled for the platform service <NUM>. At operation <NUM>, the integration logic <NUM> calls the UE information API provided by the NEF <NUM> (e.g., providing the IP address of the UE <NUM> in the API call) to obtain a subscription ID (e.g., a GPSI) associated with the UE <NUM> (e.g., the NEF <NUM> may determine a GPSI associated with the UE <NUM> based on the IP address of the UE <NUM>). At operation <NUM>, the integration logic <NUM> calls the sponsored data API provided by the NEF <NUM> (e.g., providing the GPSI associated with the UE <NUM>, the IP address and port number of the UE <NUM>, the IP address and port number of the platform service <NUM>, and the protocol type in the API call) to activate sponsored data for the UE <NUM> in the mobile network. Responsive to receiving the API call, the NEF <NUM> configures the mobile network to provide sponsored data for the UE <NUM> when the UE <NUM> accesses the platform service <NUM>. The NEF <NUM> may identify this network traffic based on the <NUM>-tuple of UE IP address, UE port number, platform service IP address, platform service port number, and protocol type. At operation <NUM>, if the configuration is successful, the integration logic <NUM> sends an acknowledgement ("ACK") message to the DNS server <NUM>. At operation <NUM>, the DNS server <NUM> returns an IP address to the UE <NUM> that the UE <NUM> can use to access the platform service <NUM>. At operation <NUM>, the UE <NUM> accesses the platform service <NUM> with sponsored data using the IP address returned by the DNS server <NUM>.

<FIG> is a diagram showing component interactions for integrating a sponsored data capability provided by the mobile network with a platform service, according to some embodiments. As shown in the diagram, the UE <NUM> sends a query to resolve a FQDN associated with the platform service to the DNS server <NUM>. Responsive to receiving the query, the DNS server <NUM> calls the network integration API provided by the integration logic <NUM> if sponsored data is enabled for the platform service. The integration logic <NUM> calls the UE information API provided by the NEF <NUM> to obtain a subscription ID associated with the UE <NUM> (e.g., a GPSI). The integration logic <NUM> then calls the sponsored data API to configure the mobile network to provide sponsored data for the UE <NUM>. The integration logic <NUM> then sends an acknowledgement to the DNS server <NUM>. The DNS server <NUM> then sends an IP address that can be used to access the platform service <NUM> to the UE <NUM>. The UE <NUM> then uses the IP address returned by the DNS server <NUM> to access the platform service <NUM> with sponsored data (e.g., the mobile network charges data usage fees related to the UE <NUM> accessing the platform service <NUM> to a designated sponsor).

While examples are described above for integrating dynamic QoS and sponsored data capabilities with a platform service <NUM>, it should be understood that the same/similar technique may be used to integrate other types of capabilities provided by the mobile network with the platform service <NUM>.

Some CSPs are planning to integrate with HCPs to secure the monetization of the capabilities of their mobile networks (e.g., <NUM> capabilities). Having HCP edge infrastructures inside CSP premises enables application developers to provision workloads on the edge of the mobile network, thereby reducing latency between mobile clients and server applications.

Application developers may use the HCP's developer experience and best practices to expand their virtual private clouds with edge locations to create a seamless cloud-edge continuum, while leveraging the capabilities of the CSP's mobile network. Currently, this is achieved with active interaction between the CSP and HCP infrastructures (e.g., the HCP has to be able to allocate IP addresses from the CSP's mobile network).

Current edge implementations have limited number of edge locations. Application developers are usually faced with a simple choice of deploying their application in an edge cloud location or a central cloud location in a specific region. These implementations work without sophisticated routing (e.g., the edge nodes are placed next to the UE's default PGW/UPFs).

Location-aware UPF (and data network) selection can be implemented by leveraging a "UE location" API and an "application function (AF) influence on traffic routing" API. However, the use of these APIs requires that application developers have a complete understanding of the edge locations (and network topology) and complicates application development, especially as the number of edge locations continue to grow. CSPs might be hesitant to share details of their mobile network infrastructure with application developers and/or to give application developers direct control over routing decisions.

Embodiments disclosed herein provide location-aware breakout point selection and routing that is triggered by a DNS server for a cloud infrastructure. In an embodiment, when a DNS server for a cloud infrastructure receives a query from a UE to resolve a FQDN associated with an application deployed in one or more edge clouds, the DNS server calls an API provided by an integration logic, providing a list of edge server application IP addresses in the API call. Responsive to receiving this API call, the integration logic <NUM> calls a UE location API to obtain UE location information and determines, based on the UE location information, the list of edge server application IP addresses, and accessing a network status database, the "closest" breakout point (e.g., in terms of geographical distance and/or latency) to the UE that the UE can use to access an edge server application. The integration logic may then call a traffic routing API to configure the mobile network to route network traffic belonging to the UE through the closest breakout point. The integration logic may then send the IP address of the edge server application to the DNS server. The DNS server may then return the IP address of the edger server application to the UE as a response to the UE's original query. The UE may use this IP address to access the edge server application through the closest breakout point.

Embodiments provide one or more advantages over existing solutions. An advantage of embodiments disclosed herein is that they provide simplicity for the application developer. The application developer does not have to be aware of all of the edge locations. DNS and FQDNs can be used to reach edge server applications, as usual. Also, application developers can rely on existing HCP best practices. For example, an application developer can design its virtual private cloud (VPC) and deploy workloads into them as usual. Another advantage of embodiments disclosed herein is that they allow CSPs to hide complexities and sensitive information. For example, CSPs do not have to openly share edge locations with application developers, do not have to expose routing APIs directly to application developers, and can optimize resource utilization by implementing load balancing mechanisms under the hood. Another advantage of embodiments disclosed herein is that they allow cloud providers to hide complexities and sensitive information. For example, cloud providers can leverage existing developer ecosystem competence with a seamless developer experience, and can perform optimization and load balancing as usual with DNS policies. Various embodiments are now described with reference to the accompanying figures.

<FIG> is a diagram showing an environment in which location-aware breakout point selection and routing can be implemented and example operations for providing the same, according to some embodiments. Some of the components shown in <FIG> are similar to the ones shown in <FIG> and <FIG>, and therefore descriptions of such components are not repeated in detail here for sake of brevity. As shown in the diagram, the environment includes a UE <NUM>, base stations 140A and 140B, a central CSP premises 130A, an edge CSP premises 130B, an edge CSP premises 130C, and a central cloud infrastructure <NUM>. The UE <NUM> may implement a client application that can access an application that is deployed in one or more edge clouds <NUM> over a mobile network.

The mobile network may be owned/operated by a CSP and may include the base stations <NUM>, user plane functions or PDN gateways (UPF/PGWs) <NUM>, and a core <NUM> (e.g., a <NUM> Core (5GC)) that includes a network exposure function (NEF) <NUM>. The core <NUM> (including the NEF <NUM>), UPF/PGW 180A, and the integration logic <NUM> may be deployed in central CSP premises 130A (e.g., a CSP's central Point of Presence (PoP)). As shown in the diagram, the central CSP premises 130A may further include a network status database <NUM>. The network status database <NUM> may include various information regarding the configuration/topology and/or status of the mobile network. For example, the network status database <NUM> may include information regarding latency characteristics and/or network capacity utilization of UPF/PGWs <NUM> and edge locations and/or the availability of the edge locations (e.g., whether there are any network failures). Latency measurements may include latency estimates from different tracking areas/cells to UPF/PGWs <NUM> and latency estimates from the UPF/PGWs to interconnected edge nodes inside and outside the network infrastructure. Latency may be measured using operations system support (OSS), probes, and/or by other means. If real time latency measurements are not possible or practical to obtain, a static database can also be considered based on dedicated ("day <NUM>") latency measurements. Network capacity may be measured using UPF/PGWs <NUM>, other network functions, and/or by dedicated probes. In an embodiment, anonymized/scrambled cloud subscription ID specific traffic patterns may be collected to help optimize the edge location selection.

As shown in the diagram, edge CSP premises 130B (e.g., a CSP edge PoP) includes a UPF/PGW 180B and an edge cloud 520B. Edge cloud 520B may be configured with a subnet that implements a virtual machine (VM). The VM may implement an edge server application associated with the application. In this example, this VM is reachable using IP address B. Similarly, edge CSP premises 130C (e.g., another CSP edge PoP) includes a UPF/PGW 180C and an edge cloud 520C. Edge cloud 520C may be configured with a subnet that implements a VM. This VM may implement another edge server application associated with the application. In this example, the VM is reachable using IP address C. Edge CSP premises 130B and edge CSP premises 130C may be located in geographically disparate edge locations. Thus, in this way, multiple instances of the application may be deployed across multiple edge clouds <NUM> of the mobile network (as separate edge server applications) in different edge locations. At any moment in time, the UE <NUM> may be "closer" to one of the edge CSP premises, for example, in terms of geographical location and/or latency.

In an embodiment, an application developer may create a virtual private cloud (VPC) with edge subnets with a specific service level agreement (SLA). The application developer may then provision workloads (e.g., VMs or Kubernetes cluster worker nodes) into the edge subnets and allocate CSP network IP addresses (carrier IP addresses) for those workloads so that client applications can reach the edge server applications from the mobile network. Then, to simplify application development, the application developer may create a DNS record for the application in the DNS server <NUM> that includes a list of the edge server application (carrier) IP addresses. An alternative context is when the platform service <NUM> (e.g., a content distribution network (CDN), platform as a service (PaaS), function as a service (FaaS), etc.) provisions its runtimes across edge locations. In this case, the platform service may create its own DNS record (but the application developer may create an alias if their use cases requires it).

In an embodiment, when the DNS server <NUM> for the central cloud infrastructure <NUM> receives a query from the UE <NUM> to resolve a FQDN associated with the application, it determines whether the application is an edge cloud application (e.g., whether the application is deployed in one or more edge clouds <NUM> of the mobile network). If the DNS server <NUM> determines that the application is an edge cloud application, then then the DNS server <NUM> may call the API provided by the integration logic <NUM> to determine which edge server application the UE <NUM> should access. The DNS server <NUM> may provide the Internet Protocol (IP) address of the UE <NUM> and a list of edger server application IP addresses (e.g., which may be stored in DNS records) in this API call. In an embodiment, the DNS server <NUM> also provides in the API call an SLA and an indication of whether there is location stickiness or the goal is always the closest edge location. Alternatively or additionally, in an embodiment, the DNS server <NUM> provides in the API call information for realizing high availability such as a list of redundant IP address pairs (e.g., per edge location) specifying the primary IP address for each pair. In response to receiving the API call, the integration logic <NUM> may call one or more APIs provided by the NEF <NUM> to determine which edge server application the UE should access. For example, the integration logic <NUM> may call a UE location API provided by the NEF <NUM> to obtain location information for the UE <NUM>. The integration logic <NUM> may provide the IP address of the UE <NUM> in this API call. In response to receiving the API call, the NEF <NUM> may determine the location of the UE <NUM> (e.g., based on the IP address of the UE <NUM>) and provide location information for the UE <NUM> to the integration logic <NUM>. The integration logic <NUM> may then determine, based on accessing the network status database <NUM>, the closest breakout point (e.g., closest UPF/PGW) to the UE <NUM> (e.g., in terms of geographic distance and/or latency) that the UE <NUM> can use to access an edge server application. The integration logic <NUM> may determine the closest breakout point based on the location information for the UE <NUM>, the list of edge server application IP addresses, and the network status database <NUM>. In an embodiment, the integration logic <NUM> takes "location stickiness" into consideration when making this determination. For example, the integration logic <NUM> may choose the breakout point previously used by the UE <NUM> even if there is now a closer breakout point if the previously used breakout point can still fulfill the SLA. This may help prevent "back and forth" edge location switching in some cases. In an embodiment, if a high availability feature is enabled, then the integration logic <NUM> uses the primary IP addresses from the IP address pairs list to determine the closest breakout point if the corresponding edge server application is available, otherwise, the integration logic <NUM> uses the secondary IP address. The integration logic <NUM> may then call a traffic routing API provided by the NEF <NUM> to configure the mobile network to route network traffic belonging to the UE <NUM> through the closest breakout point. The integration logic <NUM> may then send the IP address of the edge server application corresponding to the closest breakout point (the edge server application that is in the same edge location (e.g., same CSP premises) as the closest breakout point or otherwise proximate to the closest breakout point) to the DNS server <NUM>. The DNS server <NUM> may then send the IP address of the edge server application to the UE <NUM> as a response to the UE's original query. The UE <NUM> may then use the IP address to access the edge server application over the mobile network with its network traffic being routed through the closest breakout point.

Example operations for providing location-aware breakout point selection and routing are now described to illustrate a particular embodiment. At operation <NUM>, the UE <NUM> queries the DNS server <NUM> to resolve a FQDN associated with an application that is deployed in one or more edge clouds <NUM> (e.g., as edge server applications implemented by VMs across multiple edge clouds <NUM>). This query is routed through the UPF/PGW 180A included in the central CSP premises 130A by default (the query "breaks out" on UPF/PGW 180A). At operation <NUM>, the DNS server <NUM> calls an API provided by the integration logic <NUM> (e.g., providing the IP address of the UE <NUM> and a list of edge server application IP addresses in the API call) if it determines that the application is deployed in one or more edge clouds <NUM>. At operation <NUM>, the integration logic <NUM> calls the UE location API provided by the NEF <NUM> (e.g., providing the IP address of the UE <NUM> in the API call) to obtain location information for the UE <NUM> (e.g., the NEF <NUM> may determine the location of the UE <NUM> based on the IP address of the UE <NUM>). At operation <NUM>, the integration logic <NUM> determines, based on accessing the network status database <NUM>, the closest breakout point to the UE <NUM> that can be used to access an edge server application. In this example, it is assumed that the closest breakout point to the UE <NUM> is UPF/PGW 180C. At operation <NUM>, the integration logic <NUM> calls the traffic routing API provided by the NEF <NUM> to configure the mobile network to route network traffic belonging to the UE <NUM> through the breakout point that is determined to be closest to the UE <NUM>. At operation <NUM>, the integration logic <NUM> sends the IP address of the edge server application corresponding to the closest breakout point to the DNS server <NUM>, which is IP address C in this example. At operation <NUM>, the DNS server <NUM> returns the IP address of the edge server application (IP address C in this example) to the UE <NUM>. At operation <NUM>, the UE <NUM> accesses the edge server application using the IP address returned by the DNS server <NUM> (the UE <NUM> accesses the edge server application in edge CSP premises 130C in this example). This network traffic is routed through UPF/PGW 180C (the network traffic breaks out on UPF/PGW 180C). As a result, the UE <NUM> is able to access the edge server application that is located in the closest edge location (CSP premises 130C in this example).

<FIG> is a diagram showing component interactions for providing location-aware breakout point selection and routing, according to some embodiments. As shown in the diagram, the UE <NUM> sends a query to resolve a FQDN associated with an application deployed in one or more edge clouds to the DNS server <NUM>. Responsive to receiving the query, the DNS server <NUM> calls the API provided by the integration logic <NUM> if it determines that the application is deployed in one or more edge clouds (the application is an edge cloud application). The integration logic <NUM> calls the UE location API provided by the NEF <NUM> to obtain location information for the UE <NUM>. The integration logic <NUM> then determines, based on accessing the network status database <NUM>, the closest breakout point to the UE <NUM> that can be used to access an edge server application. The integration logic <NUM> then calls the traffic routing API provided by the NEF <NUM> to configure the mobile network to route network traffic belonging to the UE <NUM> through the closest breakout point. The integration logic <NUM> then sends the IP address of the edge server application corresponding to the closest breakout point (e.g., the edge server application that is located in the same edge CSP premises <NUM> as the closest breakout point) to the DNS server <NUM>. The DNS server <NUM> then sends the IP address of the edge server application to the UE <NUM>. The UE <NUM> then uses the IP address returned by the DNS server <NUM> to access the edge server application, with its network traffic going through the closest breakout point.

<FIG> is a flow diagram showing a method performed by a DNS server for a cloud infrastructure to integrate a capability provided by a mobile network with a platform service provided by the cloud infrastructure, according to some embodiments. The method may be implemented using hardware, software, or a combination thereof.

The operations in the flow diagrams will be described with reference to the exemplary embodiments of the other figures. However, it should be understood that the operations of the flow diagrams can be performed by embodiments of the invention other than those discussed with reference to the other figures, and the embodiments of the invention discussed with reference to these other figures can perform operations different than those discussed with reference to the flow diagrams.

At operation <NUM>, the DNS server receives, from a UE connected to the mobile network, a query to resolve a FQDN associated with the platform service.

At operation <NUM>, the DNS server determines whether network integration is enabled for the platform service. In an embodiment, the determination that network integration is enabled for the platform service is based on accessing a DNS record for the FQDN associated with the platform service. If network integration is not enabled, then the method moves to operation <NUM>, where the DNS server sends an IP address of the platform service to the UE as a response to the query, and the method ends.

Otherwise, if network integration is enabled for the platform service, then at operation <NUM>, the DNS server calls a network integration API provided by the integration logic to configure the mobile network to provide the capability for the UE when the UE accesses the platform service. In an embodiment, the call to the network integration API includes an IP address of the UE. In an embodiment, the capability is dynamic QoS and/or sponsored data.

At operation <NUM>, the DNS server sends the IP address of the platform service to the UE as a response to the query.

In an embodiment, the cloud infrastructure provides a hyperscale cloud platform. In an embodiment, the platform service is a video processing service (e.g., Amazon Kinesis).

<FIG> is a flow diagram showing a method performed by an integration logic to integrate a capability provided by a mobile network with a platform service provided by a cloud infrastructure, according to some embodiments. The method may be implemented using hardware, software, or a combination thereof.

At operation <NUM>, the integration logic receives, from a DNS server for the cloud infrastructure via a network integration API, a request to configure the mobile network to provide the capability for a UE. In an embodiment, the request includes an IP address of the UE.

At operation <NUM>, responsive to receiving the request, the integration logic configures the mobile network to provide the capability for the UE when the UE accesses the platform service. This may involve operations <NUM>-<NUM>. As shown in the diagram, in an embodiment, at operation <NUM>, the integration logic calls a UE information API to obtain a subscription ID associated with the UE. In an embodiment (when the capability is dynamic QoS), at operation <NUM>, the integration logic calls a dynamic QoS API to configure the mobile network to provide a particular level of QoS for the UE when the UE accesses the platform service. Alternatively or additionally, in an embodiment (when the capability is sponsored data), at operation <NUM>, the integration logic calls a sponsored data API to configure the mobile network to provide sponsored data for the UE when the UE accesses the platform service.

<FIG> is a flow diagram showing a method performed by a DNS server for providing location aware breakout point selection and routing, according to some embodiments. The method may be implemented using hardware, software, or a combination thereof.

At operation <NUM>, the DNS server receives, from a UE connected to the mobile network, a query to resolve a FQDN associated with an application, wherein the application is deployed in one or more mobile edge clouds of the mobile network.

At operation <NUM>, the DNS server calls an API provided by an integration logic to determine an edge server application that the UE is to access.

At operation <NUM>, the DNS server sends the IP address of the edge server application to the UE as a response to the query.

<FIG> is a flow diagram showing a method performed by an integration logic for providing location aware breakout point selection and routing, according to some embodiments. The method may be implemented using hardware, software, or a combination thereof.

At operation <NUM>, the integration logic receives, from a DNS server for the cloud infrastructure via a network integration API, a request to determine an edge server application that the UE is to access.

At operation <NUM>, the integration logic calls a UE location API to obtain location information for the UE.

At operation <NUM>, the integration logic determines, based on accessing a network status database, a breakout point that the UE is to use to access an edge server application. This may be, for example, the closest breakout point to the UE that the UE can use to access an edge server application, as described above.

At operation <NUM>, the integration logic calls a traffic routing API to configure the mobile network to route network traffic belonging to the UE through the determined breakout point.

At operation <NUM>, the integration logic sends, to the DNS server via the network integration API, an IP address of the edge server application as a response to the request.

<FIG> shows an example of a communication system <NUM> in accordance with some embodiments.

In the example, the communication system <NUM> includes a telecommunication network <NUM> that includes an access network <NUM>, such as a radio access network (RAN), and a core network <NUM>, which includes one or more core network nodes <NUM>. The access network <NUM> includes one or more access network nodes, such as network nodes 1110a and 1110b (one or more of which may be generally referred to as network nodes <NUM>), or any other similar <NUM>rd Generation Partnership Project (3GPP) access node or non-3GPP access point. The network nodes <NUM> facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs 1112a, 1112b, 1112c, and 1112d (one or more of which may be generally referred to as UEs <NUM>) to the core network <NUM> over one or more wireless connections.

In some examples, the UEs <NUM> are configured to transmit and/or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network <NUM> on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network <NUM>. Additionally, a UE may be configured for operating in single or multi-RAT or multi-standard mode. For example, a UE may operate with any one or combination of Wi-Fi, NR (New Radio) and LTE, i.e. being configured for multi-radio dual connectivity (MR-DC), such as E-UTRAN (Evolved-UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).

In the example, the hub <NUM> communicates with the access network <NUM> to facilitate indirect communication between one or more UEs (e.g., UE 1112c and/or 1112d) and network nodes (e.g., network node 1110b). In some examples, the hub <NUM> may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub <NUM> may be a broadband router enabling access to the core network <NUM> for the UEs. As another example, the hub <NUM> may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes <NUM>, or by executable code, script, process, or other instructions in the hub <NUM>. As another example, the hub <NUM> may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub <NUM> may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub <NUM> may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub <NUM> then provides to the UE either directly, after performing local processing, and/or after adding additional local content. In still another example, the hub <NUM> acts as a proxy server or orchestrator for the UEs, in particular in if one or more of the UEs are low energy IoT devices.

The hub <NUM> may have a constant/persistent or intermittent connection to the network node 1110b. The hub <NUM> may also allow for a different communication scheme and/or schedule between the hub <NUM> and UEs (e.g., UE 1112c and/or 1112d), and between the hub <NUM> and the core network <NUM>. In other examples, the hub <NUM> is connected to the core network <NUM> and/or one or more UEs via a wired connection. Moreover, the hub <NUM> may be configured to connect to an M2M service provider over the access network <NUM> and/or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes <NUM> while still connected via the hub <NUM> via a wired or wireless connection. In some embodiments, the hub <NUM> may be a dedicated hub - that is, a hub whose primary function is to route communications to/from the UEs from/to the network node 1110b. In other embodiments, the hub <NUM> may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 1110b, but which is additionally capable of operating as a communication start and/or end point for certain data channels.

<FIG> shows a UE <NUM> in accordance with some embodiments. As used herein, a UE refers to a device capable, configured, arranged and/or operable to communicate wirelessly with network nodes and/or other UEs. Examples of a UE include, but are not limited to, a smart phone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage device, playback appliance, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), smart device, wireless customer-premise equipment (CPE), vehicle-mounted or vehicle embedded/integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and/or an enhanced MTC (eMTC) UE.

A UE, when in the form of an Internet of Things (IoT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an IoT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door/window sensor, a flood/moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an IoT device comprises circuitry and/or software in dependence of the intended application of the IoT device in addition to other components as described in relation to the UE <NUM> shown in <FIG>.

In practice, any number of UEs may be used together with respect to a single use case. For example, a first UE might be or be integrated in a drone and provide the drone's speed information (obtained through a speed sensor) to a second UE that is a remote controller operating the drone. When the user makes changes from the remote controller, the first UE may adjust the throttle on the drone (e.g. by controlling an actuator) to increase or decrease the drone's speed. The first and/or the second UE can also include more than one of the functionalities described above. For example, a UE might comprise the sensor and the actuator, and handle communication of data for both the speed sensor and the actuators.

<FIG> shows a network node <NUM> in accordance with some embodiments. As used herein, network node refers to equipment capable, configured, arranged and/or operable to communicate directly or indirectly with a UE and/or with other network nodes or equipment, in a telecommunication network.

Applications <NUM> (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment <NUM> to implement some of the features, functions, and/or benefits of some of the embodiments disclosed herein.

Hardware <NUM> includes processing circuitry, memory that stores software and/or instructions executable by hardware processing circuitry, and/or other hardware devices as described herein, such as a network interface, input/output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers <NUM> (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 1508a and 1508b (one or more of which may be generally referred to as VMs <NUM>), and/or perform any of the functions, features and/or benefits described in relation with some embodiments described herein. The virtualization layer <NUM> may present a virtual operating platform that appears like networking hardware to the VMs <NUM>.

Hardware <NUM> may be implemented in a standalone network node with generic or specific components. Hardware <NUM> may implement some functions via virtualization. Alternatively, hardware <NUM> may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration <NUM>, which, among others, oversees lifecycle management of applications <NUM>. In some embodiments, hardware <NUM> is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system <NUM> which may alternatively be used for communication between hardware nodes and radio units.

In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer-readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer-readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and/or by end users and a wireless network generally.

Claim 1:
A method performed by a domain name system, DNS, server for a cloud infrastructure to integrate a capability provided by a mobile network with a platform service provided by the cloud infrastructure, the method comprising:
receiving (<NUM>), from a user equipment, UE, connected to the mobile network, a query to resolve a fully qualified domain name, FQDN, associated with the platform service;
responsive to a determination that network integration is enabled for the platform service, calling (<NUM>) an application programming interface, API, provided by an integration logic to configure the mobile network to provide the capability for the UE when the UE accesses the platform service; and
sending (<NUM>) an internet protocol, IP, address of the platform service to the UE as a response to the query.