The present disclosure relates generally to the field of wireless communication networks, and more specifically to “edge computing” techniques that facilitate execution environments proximate to users and/or devices that provide and consume data, rather than in centralized, public network clouds.
Currently the fifth generation (“5G”) of cellular systems, also referred to as New Radio (NR), is being standardized within the Third-Generation Partnership Project (3GPP). NR is developed for maximum flexibility to support multiple and substantially different use cases. These include enhanced mobile broadband (eMBB), machine type communications (MTC), ultra-reliable low latency communications (URLLC), side-link device-to-device (D2D), and several other use cases.
In addition, the gNBs can be connected to each other via one or more Xn interfaces, such as Xn interface 140 between gNBs 100 and 150. The radio technology for the NG-RAN is often referred to as “New Radio” (NR). With respect the NR interface to UEs, each of the gNBs can support frequency division duplexing (FDD), time division duplexing (TDD), or a combination thereof. Each of the gNBs can serve a geographic coverage area including one more cells and, in some cases, can also use various directional beams to provide coverage in the respective cells.
NG-RAN 199 is layered into a Radio Network Layer (RNL) and a Transport Network Layer (TNL). The NG-RAN architecture, i.e., the NG-RAN logical nodes and interfaces between them, is defined as part of the RNL. For each NG-RAN interface (NG, Xn, F1) the related TNL protocol and the functionality are specified. The TNL provides services for user plane transport and signaling transport. In some exemplary configurations, each gNB is connected to all 5GC nodes within an “AMF Region”, with the term “AMF” being described in more detail below.
The NG RAN logical nodes shown in
A gNB-CU connects to one or more gNB-DUs over respective F1 logical interfaces, such as interfaces 122 and 132 shown in
Another change in 5G networks (e.g., in 5GC) is that traditional peer-to-peer interfaces and protocols found in earlier-generation networks are modified and/or replaced by a Service Based Architecture (SBA) in which Network Functions (NFs) provide one or more services to one or more service consumers. This can be done, for example, by Hyper Text Transfer Protocol/Representational State Transfer (HTTP/REST) application programming interfaces (APIs). In general, the various services are self-contained functionalities that can be changed and modified in an isolated manner without affecting other services. This SBA model also adopts principles like modularity, reusability, and self-containment of NFs, which can enable deployments to take advantage of the latest virtualization and software technologies.
Furthermore, the services are composed of various “service operations”, which are more granular divisions of the overall service functionality. The interactions between service consumers and producers can be of the type “request/response” or “subscribe/notify”. In the 5G SBA, network repository functions (NRF) allow every network function to discover the services offered by other network functions, and Data Storage Functions (DSF) allow every network function to store its context.
3GPP Rel-16 introduced a feature called authentication and key management for applications (AKMA) that is based on 3GPP user credentials in 5G, including the Internet of Things (IoT) use case. More specifically, AKMA leverages the user's AKA (Authentication and Key Agreement) credentials to bootstrap security between the UE and an application function (AF), which allows the UE to securely exchange data with an application server. The AKMA architecture can be considered an evolution of GBA (Generic Bootstrapping Architecture) specified for 5GC in 3GPP Rel-15 and is further specified in 3GPP TS 33.535 (v16.0.0).
It is expected that 5GC will support edge computing (EC), which enables operator and third-party services to be hosted close to a UE's access point of attachment. This can facilitate efficient service delivery through the reduced end-to-end latency and load on the transport network. The 5GC can select a user plane function (UPF) close to the UE and executes the traffic steering from the UPF to the local Data Network via an N6 interface. Both UPF and N6 are discussed in more detail below.
3GPP TR 23.748 (v17.0.0) discusses architectural enhancements that may be needed to support EC in 5GC for 3GPP Rel-17. In addition, 3GPP TR 33.839 (v0.7.0) discusses a study on security aspects of enhancement of support for EC in 5GC for 3GPP Rel-17. Key issues discussed in 3GPP TR 33.839 (v0.7.0) include authentication, authorization, and transport security solutions for interfaces between clients and servers and for interfaces between different servers in an Edge data network. These servers can include Edge Configuration Servers (ECS), Edge Enabler Servers (EES), and Edge Application Servers (EAS). Relevant clients include Edge Enabler Client (EEC), which can be regarded an application that runs on the UE and communicates with the ECS and EES.
Various solutions to these and other issues are discussed in 3GPP TR 33.839 (v0.7.0), and further solutions have been proposed in the development of normative 3GPP standards for Edge Computing security (e.g., in 3GPP SA3).
However, current solutions for EEC authentication have various difficulties, issues, and/or drawbacks. For example, many of these solution rely on access tokens that generally have relatively short lifetimes and may expire before the time they are needed by an EEC for access to EES/ECS.
Accordingly, embodiments of the present disclosure address these and other problems, issues, and/or difficulties related to security, thereby enabling the otherwise-advantageous deployment of EC solutions in relation to a 5G network.
Some embodiments of the present disclosure include methods (e.g., procedures) for a client (e.g., EEC) in an edge data network (e.g., 5G network).
These exemplary methods can include obtaining an initial access credential for a server in the edge data network, before accessing the server. These exemplary methods can also include providing the initial access credential to the server for authentication of the client. These exemplary methods can include obtaining an updated access credential for the server based on expiration of one of the following: the initial access credential, or a further access credential provided by the server. These exemplary methods can also include providing the updated access credential to the server for authentication of the client.
In some embodiments, these exemplary methods can also include establishing a first connection with a server of the edge data network based on TLS and authenticate the server via the first connection based on a server certificate. In such embodiments, the initial access credential is provided to the server via the first connection after authenticating the server.
In some embodiments, these exemplary methods can also, after authentication of the client based on the initial access credential, receiving a second access credential from the server via the first connection. Obtaining the updated access credential is based on expiration of the second access credential.
In some of these embodiments, these exemplary methods can also include the following operations: establishing a second connection with the server based on TLS; authenticating the server via the second connection based on a server certificate; and providing the second access credential to the server, via the second connection, for authentication of the client.
In some variants, these exemplary methods can also include, after authentication of the client based on the second access credential, receiving a third access credential from the server via the second connection. In such embodiments, obtaining the updated access credential is based on expiration of the third access credential.
In some embodiments, obtaining an updated access credential can include the operations sending a request for an updated access credential to a credential provider and receiving the updated access credential from the credential provider in response to the request.
In some of these embodiments, the client is an Edge Enabler Client (EEC), and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an Edge Configuration Server (ECS), and the initial access credential and the updated access credential are obtained from an edge computing service provider (ECSP) associated with the EEC. In other of these embodiments, the server is an Edge Enabler Server (EES), and the initial access credential and the updated access credential are obtained from the ECSP or an ECS.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
Other embodiments include complementary methods (e.g., procedures) for a server (e.g., ECS, EES) in an edge data network (e.g., 5G network).
These exemplary methods can include authenticating a client in the edge data network based on an initial access credential received from the client. These exemplary methods can also include, after expiration of the initial access credential or a further access credential provided by the server, authenticating the client based on an updated access credential received from the client. The initial access credential and the updated access credential are obtained by the client from a credential provider other than the server.
In some embodiments, these exemplary methods can also include establishing a first connection with a client of the edge data network based on TLS and providing a server certificate to the client, via the first connection, for authentication of the server. In some embodiments, these exemplary methods can also include, after authentication of the client based on the initial access credential, sending a second access credential to the client via the first connection. In such embodiments, authenticating the client based on the updated access credential is based on expiration of the second access credential.
In some of these embodiments, these exemplary methods can also include the following operations: establishing a second connection with the client based on TLS; providing the server certificate to the client, via the second connection, for authentication of the server; authenticating the client based on the second access credential received from the client via the second connection.
In some of these embodiments, these exemplary methods can also include, after authentication of the client based on the second access credential, selectively sending a third access credential to the client via the second connection. In such embodiments, authenticating the client based on the updated access credential is based on expiration of the third access credential.
In some embodiments, selectively sending can include the following operations: comparing a duration of validity of the second access credential to a predetermined threshold; sending the third access credential when the duration of validity is less than the predetermined threshold; and refraining from sending the third access credential when the duration of validity is not less than the predetermined threshold.
In some embodiments, the client is an EEC, and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an ECS and the credential provider is an ECSP associated with the EEC. In other of these embodiments, the server is an EES and the credential provider is the ECSP or an ECS.
In some of these embodiments, authenticating the client based on the initial access credential can include the following operations: validating the initial access credential based on one of the following: a certificate of the credential provider, a public key of the credential provider, or by contacting the credential provider; and verifying one or more of the following based on the initial access credential: that the EEC is a legitimate EEC, and that the EEC type associated with the EEC is a legitimate EEC type.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
Other embodiments include complementary methods (e.g., procedures) for a credential provider (e.g., ECSP, ECS) associated with an edge data network (e.g., 5G network).
These exemplary methods can include providing the client an initial access credential for a server in the edge data network, before the client accesses the server. These exemplary methods can also include receiving from the client a request for an updated access credential for the server. These exemplary methods can also include sending the updated access credential to the client in response to the request.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
In some embodiments, the client is an EEC, and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an ECS and the credential provider is an ECSP associated with the EEC. In other of these embodiments, the server is an EES and the credential provider is the ECSP or an ECS.
Other embodiments include clients, servers, and credential providers in or associated with an edge data network (or network nodes or computing systems hosting the same) that are configured to perform the operations corresponding to any of the exemplary methods described herein. Other embodiments also include non-transitory, computer-readable media storing computer-executable instructions that, when executed by processing circuitry, configure such clients, servers, and credential providers to perform operations corresponding to any of the exemplary methods described herein.
These and other embodiments described herein can enable EECs to obtain credentials that have longer lifetimes than typical token lifetimes and/or to obtain updated credentials from an associated ECSP when existing or current credentials have expired. This improves EEC access to relevant servers (e.g., EES, ECS) and more generally facilitates secure deployment of edge computing within 5G networks.
These and other objects, features, and advantages of the present disclosure will become apparent upon reading the following Detailed Description in view of the Drawings briefly described below.
Embodiments briefly summarized above will now be described more fully with reference to the accompanying drawings. These descriptions are provided by way of example to explain the subject matter to those skilled in the art and should not be construed as limiting the scope of the subject matter to only the embodiments described herein. More specifically, examples are provided below that illustrate the operation of various embodiments according to the advantages discussed above.
Generally, all terms used herein are to be interpreted according to their ordinary meaning in the relevant technical field, unless a different meaning is clearly given and/or is implied from the context in which it is used. All references to a/an/the element, apparatus, component, means, step, etc. are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any methods and/or procedures disclosed herein do not have to be performed in the exact order disclosed, unless a step is explicitly described as following or preceding another step and/or where it is implicit that a step must follow or precede another step. Any feature of any of the embodiments disclosed herein can be applied to any other embodiment, wherever appropriate. Likewise, any advantage of any of the embodiments can apply to any other embodiments, and vice versa. Other objects, features, and advantages of the disclosed embodiments will be apparent from the following description.
Furthermore, the following terms are used throughout the description given below:
Note that the description given herein focuses on a 3GPP cellular communications system and, as such, 3GPP terminology or terminology similar to 3GPP terminology is generally used. However, the concepts disclosed herein are not limited to a 3GPP system. Other wireless systems, including without limitation Wide Band Code Division Multiple Access (WCDMA), Worldwide Interoperability for Microwave Access (WiMax), Ultra Mobile Broadband (UMB) and Global System for Mobile Communications (GSM), may also benefit from the concepts, principles, and/or embodiments described herein.
In addition, functions and/or operations described herein as being performed by a wireless device or a network node may be distributed over a plurality of wireless devices and/or network nodes. Furthermore, although the term “cell” is used herein, it should be understood that (particularly with respect to 5G NR) beams may be used instead of cells and, as such, concepts described herein apply equally to both cells and beams.
As briefly mentioned above, current solutions for Edge Enabler Client (EEC) authentication-such as AKMA and transport layer security (TLS)—have various difficulties, issues, and/or drawbacks that make them unsuitable for use over interfaces between EEC and various servers (e.g., ECS and/or EES) in the proposed Edge network for the 5GS. This can create various problems, difficulties, and/or issues for deployment of EC solutions, which is discussed in more detail after the following description of 5G network and security architectures.
Communication links between the UE and a 5G network (AN and CN) can be grouped in two different strata. The UE communicates with the CN over the Non-Access Stratum (NAS), and with the AN over the Access Stratum (AS). All the NAS communication takes place between the UE and the AMF via the NAS protocol (N1 interface in
3GPP Rel-16 introduces a new feature called authentication and key management for applications (AKMA) that is based on 3GPP user credentials in 5G, including the Internet of Things (IoT) use case. More specifically, AKMA leverages the user's AKA (Authentication and Key Agreement) credentials to bootstrap security between the UE and an application function (AF), which allows the UE to securely exchange data with an application server. The AKMA architecture is an evolution of Generic Bootstrapping Architecture (GBA) specified for 5GC in 3GPP Rel-15 and is further specified in 3GPP TS 33.535 (v16.1.0).
In addition to the NEF, AUSF, and AF shown in
In general, security mechanisms for various 5GS protocols rely on multiple security keys. 3GPP TS 33.501 (v16.4.0) specifies these keys in an organized hierarchy. At the top is the long-term key part of the authentication credential and stored in the SIM card on the UE side and in the UDM/ARPF in the user's HPLMN.
A successful Primary Authentication run between the UE and the AUSF in the HPLMN leads to the establishment of KAUSF, the second level key in the hierarchy. This key is not intended to leave the HPLMN and is used to secure the exchange of information between UE and HPLMN, such as for the provisioning of parameters to the UE from UDM in HPLMN. More precisely, KAUSF is used for integrity protection of messages delivered from HPLMN to UE. As described in 3GPP TS 33.501 (v16.4.0), such new features include the Steering of Roaming (SoR) and the UDM parameter delivery procedures.
KAUSF is used to derive another key, KSEAF, that is sent to the serving PLMN. This key is then used by the serving PLMN to derive subsequent NAS and AS protection keys. These lower-level keys together with other security parameters (e.g., cryptographic algorithms, UE security capabilities, value of counters used for replay protection in various protocols, etc.) constitute the 5G security context as defined in 3GPP TS 33.501 (v16.4.0). However, KAUSF is not part of the UE's 5G security context that resides in the UE's serving PLMN.
3GPP TR 33.839 (v0.7.0) discusses a study on security aspects of enhancement of support for Edge Computing (EC) in 5GC for 3GPP Rel-17. Key issues discussed in 3GPP TR 33.839 (v0.7.0) include authentication, authorization, and transport security solutions for interfaces between clients and servers and for interfaces between different servers in an Edge data network. These servers can include Edge Configuration Servers (ECS), Edge Enabler Servers (EES), and Edge Application Servers (EAS). Relevant clients include Edge Enabler Client (EEC), which can be regarded an application that runs on the UE and communicates with the ECS and EES.
3GPP TS 23.558 (v17.1.0) specifies the various client/server and server/server interfaces in the Rel-17 EC architecture.
In the architecture shown in
3GPP TS 23.558 (v17.1.0) also specifies a new edge enabler layer that includes the UE's EEC. In this arrangement, the UE uses an EEC ID as the client identifier on the edge enabler layer. As such, the EEC uses two different identifiers towards EES: EEC ID and UE identifier (e.g., GPSI). In other words, EES/ECS may need to authenticate two different identifiers associated with the UE.
Currently 3GPP TR 33.839 (v0.7.0) includes some proposals for the authentication of the EEC and for the authentication of GPSI by the EES/ECS. Proposals for authentication of the EEC include the following:
3GPP TR 33.839 (v0.7.0) section 6.12.2 describes another proposal (referred to as “solution #12”) that is unrelated to authentication of EEC but uses token-based solution for EES onboarding. According to this proposal, the EES provider gives an access token to the EES, to be used for the EES onboarding. The EES sends the token to the ECS, which validates the token.
3GPP TR 33.839 (v0.7.0) describes another proposal (referred to as “solution #17”) that involves tokens provided by an edge computing service provider (ECSP) that is associated with the EEC. For the EDGE-4 interface, the authentication of the ECS and the interface transport security are realized using TLS with server based on using the server's certificate issued by CAs in the PKI. For the first authentication of the EEC by the ECS, the token, including the EEC ID, provided by the ECSP of the EEC or by a trusted new entity (that could or could not be collocated with the ECSP) to the EEC is used. In the case of provisioning of a token by ECSP, it is assumed that there is a business relationship between the ECSPs of the EEC and ECS, whereby ECSP of the EEC provisions an initial access token to the EEC, and the ECS can verify that token. After EEC authentication, the ECS provides a token to the EEC in the initial access to be used for the next establishment of the communication between them. In the subsequent accesses after the initial access, the ECS decides on whether a new access token is necessary or not, considering information such as the expiration time of the token.
For the EDGE-1 interface, the authentication of the EES and the interface transport security are realized using TLS with server authentication based on the server's certificate issued by CAs in the PKI. For the authentication of the EEC by the EES, the EEC first gets a token from the ECS and sends the token to the EES. It is assumed that there is a business relationship between the ECSPs of the ECS and EES such that the EES can verify the token.
The normative work has been started for Edge Computing Security in 3GPP SA3 working group. For this work, there have been some proposals for authentication of EEC towards EES/ECS Some of the proposals include token-based solutions, which are described in more detail below.
In operation 1, EEC and ECS establish TLS with the service-side authentication. If the EEC has the certificate, TLS with mutual authentication may be performed. In operation 2, EEC sends the service request to ECS, which may include the token and the GPSI.
In operation 3, ECS should use the static authorization defined in the 3GPP TS 33.501 (v16.4.0) section 13.3.0 to authorize EEC. ECS may authenticate and authorize EEC with the token if included in the service request. If the GPSI is received from the EEC, the ECS should use the IP translation defined in 3GPP SA2 to acquire the GPSI of the UE. Then the ECS verifies the GPSI by comparing the GPSI in the service request and GPSI retrieved from the 3GPP core network. If the authorization and the GPSI verification succeeds, ECS processes the request. ECS may generate an EES service token for the EES service authorization and sends the EES service token to EEC. In operation 4, ECS sends the service response back to EEC.
In operation 1, EEC and EES establish the TLS with service-side authentication. If EEC has the certificate, TLS with mutual authentication may be performed. In operation 2, EEC sends the service request to EES, which may include the EES service token and the GPSI.
In operation 3, ECS should use the static authorization defined in the 3GPP TS 33.501 (v16.4.0) section 13.3.0 to authorize the EEC. EES may authenticate and authorize EEC with the EES service token if included in the service request. If the GPSI is received from EEC, ECS should use the IP translation defined in 3GPP SA2 to acquire the GPSI of the UE. Then the ECS verifies the GPSI by comparing the GPSI in the service request and GPSI retrieved from the 3GPP core network. If the authorization and the GPSI verification succeeds, EES processes the service request. In operation 4, EES sends the service response back to EEC.
In operation 1, successful primary authentication results in KAUSF being stored at the AUSF and the UE. UE and AUSF generate AKMA Key material (i.e., KAKMA and A-KID) and AUSF sends this material to AAnF as specified in the 3GPP TS 33.535 (v16.0.0) section 6.1.
In operation 2, UE initiates a TLS procedure with ECS for mutual authentication between EEC and ECS, which is an AF for the AAnF as specified in 3GPP TS 33.535 (v16.0.0). A shared secret key KECS is established between EEC and ECS. The key KECS is an AKMA Application Key (KAF) and is derived by both UE and ECS as specified in 3GPP TS 33.535 (v16.0.0).
In operations 3-4, after successful derivation of KECS, a premaster secret key KECS-PSK is derived for establishing a secure TLS session. EEC initiates the service provisioning procedure with ECS over the established TLS session. If the UE is authorised to access EES, then ECS generates and provides the access token and ID token to the UE over the established TLS session. Additionally, ECS shall provide the EES root CA certificate to the EEC, which is used to validate the EES's certificate. Access token and ID token are utilized for authentication and authorization between EEC and EES.
In operation 1, UE and EES shall establish a secure TLS connection using EES server certificate. ECS may provide EES root CA certificate during the initial provisioning procedure to the EEC to validate the EES's certificate. TLS shall provide integrity protection, replay protection, and confidentiality protection over the EDGE-1 interface.
In operation 2, the UE initiates EEC registration procedure with the EES, including the access token and ID token obtained from the ECS. The access token and ID token shall be included in registration request which provides authentication and the authorization check for the EEC registration request by verifying of the access token and ID token issued by the ECS to the UE. In operation 3, EES obtains token validation from the ECS. In operation 4, EES completes the registration procedure by sending a response to EEC.
In operation 1, ECS issues a token for the EEC to be used for authentication of the EEC by the EES. In operation 2, EEC and EES establish a TLS session using the TLS certificate of the EES. In operation 3, during the established TLS session, EEC sends the token provided by ECS. In operation 4, EES verifies the token.
Other solutions for authentication of EEC towards to EES/ECS involve the service provider of EEC (i.e., ECSP) giving a token to EEC to be used for authentication of EEC by EES/ECS. Some examples are shown in
In the solutions shown in
Applicants have recognized that in current solutions for EEC authentication and authorization (e.g., as illustrated in
Embodiments of the present disclosure address these and other problems, issues, and/or difficulties by providing techniques that facilitate an EEC to obtain an updated token from its associated ECSP when a most recently obtained token has expired. Alternately or additionally, certificates can be obtained instead of tokens, such that the EEC can use a certificates to authenticate itself to EES and/or ECS. When a most recently obtained certificate has expired, the EEC obtains an updated certificate from its associated ECSP.
These embodiments can provide various benefits and/or advantages. For example, such techniques enable EECs to obtain credentials that have longer lifetimes than typical token lifetimes and/or to obtain updated credentials from an associated ECSP when existing or current credentials have expired. This improves EEC access to relevant servers (e.g., EES, ECS) and more generally facilitates secure deployment of edge computing within 5G networks.
After setup of a TLS connection with server authentication using the ECS certificate, the EEC uses the ECSP-provided access token for EEC authentication with the ECS. One pre-requisite is a business relationship between the ECSP and the ECS, such that the ECS can verify the access token provided by ECSP. The ECS then provides a new credential (e.g., access token) for subsequent access by the EEC. During the subsequent access, the ECS may decide whether to provide a new credential (e.g., access token) to the EEC based on, e.g., expiration time of the access token being used. If the ECS does not provide another credential, then the EEC can reuse the same credential for next access.
Upon expiration of the latest access token received by the EEC, the EEC sends a request to ECSP for a fresh or updated access token, and receives a new valid access token in response. The EEC can then proceed with the same operations as in previous accesses to ECS, but using the new access token instead.
After setup of a TLS connection with server authentication using the ECS certificate, the EEC uses the ECSP-provided certificate for EEC authentication with the ECS. One pre-requisite is a business relationship between the ECSP and the ECS, such that the ECS can verify the certificate provided by ECSP.
Upon expiration of the certificate received from ECSP, the EEC sends a request to ECSP for a fresh or updated certificate, and receives a new valid certificate in response. The EEC can then proceed with the same operations as in previous accesses to ECS, but using the new certificate instead.
There are at least two possible ways for an ECSP to issue a certificate to the EEC. First, the EEC can produce a public/private key pair and obtain a certificate from its provider for the public key. Second, the ECSP can produce a public/private key pair, issue a certificate for the public key, and send the private key and the certificate to the EEC.
After setup of a TLS connection with server authentication using the EES certificate, the EEC uses the ECSP-provided access token for EEC authentication with the EES. The EES then provides a new credential (e.g., access token) for subsequent access by the EEC. During the subsequent access, the EES may decide whether to provide a new credential (e.g., access token) to the EEC based on, e.g., expiration time of the access token being used. If the EES does not provide another credential, then the EEC can reuse the same credential for next access.
Upon expiration of the latest access token received by the EEC, the EEC sends a request to the provider (i.e., ECSP or ECS) for a fresh or updated access token, and receives a new valid access token in response. The EEC can then proceed with the same operations as in previous accesses to EES, but using the new access token instead.
Upon expiration of the certificate received by the EEC, the EEC sends a request to the provider (i.e., ECSP or ECS) for a fresh or updated certificate, and receives a new valid certificate in response. The EEC can then proceed with the same operations as in previous accesses to EES, but using the new certificate instead
The embodiments described above can be further illustrated with reference to
More specifically,
The exemplary method can include the operations of block 1910, where the client can obtain an initial access credential for a server in the edge data network, before accessing the server. The exemplary method can also include the operations of block 1940, where the client can provide the initial access credential to the server for authentication of the client. The exemplary method can include the operations of block 1980, where the client can obtain an updated access credential for the server based on expiration of one of the following: the initial access credential, or a further access credential provided by the server. The exemplary method can also include the operations of block 1990, where the client can provide the updated access credential to the server for authentication of the client. The initial access credential and the updated access credential are obtained by the client from a credential provider other than the server, as explained below.
In some embodiments, the exemplary method can also include the operations of blocks 1920-1930, where the client can establish a first connection with a server of the edge data network based on TLS and authenticate the server via the first connection based on a server certificate. In such embodiments, the initial access credential is provided to the server via the first connection after authenticating the server.
In some embodiments, the exemplary method can also include the operations of block 1945, where the client can, after authentication of the client based on the initial access credential, receive a second access credential from the server via the first connection. Obtaining the updated access credential (e.g., in block 1980) is based on expiration of the second access credential.
In some of these embodiments, the exemplary method can also include the operations of blocks 1950-1960. In block 1950, the client can establish a second connection with the server based on TLS. This can be done, for example, sometime after the first connection has been disconnected, removed, deactivated, etc. In block 1955, the client can authenticate the server via the second connection based on a server certificate. In block 1960, the client can provide the second access credential to the server, via the second connection, for authentication of the client.
In some variants, the exemplary method can also include the operations of block 1970, where the client can, after authentication of the client based on the second access credential, receive a third access credential from the server via the second connection. In such embodiments, obtaining the updated access credential (e.g., in block 1980) is based on expiration of the third access credential.
In some embodiments, obtaining an updated access credential in block 1980 can include the operations of sub-blocks 1981-1982, where the client can send a request for an updated access credential to a credential provider and receive the updated access credential from the credential provider in response to the request.
In some of these embodiments, the client is an Edge Enabler Client (EEC), and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an Edge Configuration Server (ECS), and the initial access credential and the updated access credential are obtained from an edge computing service provider (ECSP) associated with the EEC.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
In addition,
The exemplary method can include the operation of block 2030, where the server can authenticate a client in the edge data network based on an initial access credential received from the client. The exemplary method can include the operation of block 2090, where the server can, after expiration of the initial access credential or a further access credential provided by the server, authenticate the client based on an updated access credential received from the client. The initial access credential and the updated access credential are obtained by the client from a credential provider other than the server.
In some embodiments, the exemplary method can also include the operations of blocks 2010-2020, where the server can establish a first connection with a client of the edge data network based on TLS and provide a server certificate to the client, via the first connection, for authentication of the server. In some embodiments, the exemplary method can also include the operations of block 2040, where the server can, after authentication of the client based on the initial access credential, send a second access credential to the client via the first connection. In such embodiments, authenticating the client based on the updated access credential (e.g., in block 2090) is based on expiration of the second access credential.
In some of these embodiments, the exemplary method can also include the operations of blocks 2050-2070. In block 2050, the server can establish a second connection with the client based on TLS. This can be done, for example, sometime after the first connection has been disconnected, removed, deactivated, etc. In block 2060, the server can provide the server certificate to the client, via the second connection, for authentication of the server. In block 2070, the server can authenticate the client based on the second access credential received from the client via the second connection.
In some of these embodiments, the exemplary method can also include the operations of block 2080, where the server can, after authentication of the client based on the second access credential, selectively send a third access credential to the client via the second connection. In such embodiments, authenticating the client based on the updated access credential (e.g., in block 2090) is based on expiration of the third access credential.
In some embodiments, the selectively sending operations of block 2080 can include the operations of sub-blocks 2081-2083, where the server can compare a duration of validity of the second access credential to a predetermined threshold; send the third access credential when the duration of validity is less than the predetermined threshold; and refrain from sending the third access credential when the duration of validity is not less than the predetermined threshold.
In some embodiments, the client is an EEC, and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an ECS and the credential provider is an ECSP associated with the EEC.
In some of these embodiments, authenticating the client based on the initial access credential in block 2030 includes the operations of sub-blocks 2031-2032. In sub-block 2031, the server can validate the initial access credential based on one of the following: a certificate of the credential provider, a public key of the credential provider, or by contacting the credential provider. In sub-block 2032, the server can verify one or more of the following based on the initial access credential: that the EEC is a legitimate EEC, and that the EEC type associated with the EEC is a legitimate EEC type.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
In addition,
The exemplary method can include the operations of block 2110, where the credential provider can provide a client in the edge data network an initial access credential for a server in the edge data network, before the client accesses the server. The exemplary method can also include the operations of block 2120, where the credential provider can receive from the client a request for an updated access credential for the server. The exemplary method can also include the operation of block 2130, where the service provider can send the updated access credential to the client in response to the request.
In various embodiments, the initial access credential and the updated access credential include or are based on one or more of the following: an indication that the client is a legitimate client, a client type associated with the client, and an identifier of the client.
In some embodiments, the client is an EEC, and the initial access credential and the updated access credential are one of the following: a token or a certificate. In some of these embodiments, the server is an ECS and the credential provider is an ECSP associated with the EEC.
Although various embodiments are described above in terms of methods, techniques, and/or procedures, the person of ordinary skill will readily comprehend that such methods, techniques, and/or procedures can be embodied by various combinations of hardware and software in various systems, communication devices, computing devices, control devices, apparatuses, non-transitory computer-readable media, computer program products, etc.
Example wireless communications over a wireless connection include transmitting and/or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and/or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system 2200 may include any number of wired or wireless networks, network nodes, UEs, and/or any other components or systems that may facilitate or participate in the communication of data and/or signals whether via wired or wireless connections. The communication system 2200 may include and/or interface with any type of communication, telecommunication, data, cellular, radio network, and/or other similar type of system.
The UEs 2212 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and/or operable to communicate wirelessly with the network nodes 2210 and other communication devices. Similarly, the network nodes 2210 are arranged, capable, configured, and/or operable to communicate directly or indirectly with the UEs 2212 and/or with other network nodes or equipment in the telecommunication network 2202 to enable and/or provide network access, such as wireless network access, and/or to perform other functions, such as administration in the telecommunication network 2202.
In the depicted example, the core network 2206 connects the network nodes 2210 to one or more hosts, such as host 2216. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network 2206 includes one more core network nodes (e.g., core network node 2208) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and/or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node 2208. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription Identifier De-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and/or a User Plane Function (UPF).
The host 2216 may be under the ownership or control of a service provider other than an operator or provider of the access network 2204 and/or the telecommunication network 2202, and may be operated by the service provider or on behalf of the service provider. The host 2216 may host a variety of applications to provide one or more service. Examples of such applications include live and pre-recorded audio/video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.
As a whole, the communication system 2200 of
In some examples, the telecommunication network 2202 is a cellular network that implements 3GPP standardized features. Accordingly, the telecommunications network 2202 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 2202. For example, the telecommunications network 2202 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and/or Massive Machine Type Communication (mMTC)/Massive IoT services to yet further UEs.
In some examples, the UEs 2212 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 2204 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 2204. 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 2214 communicates with the access network 2204 to facilitate indirect communication between one or more UEs (e.g., UE 2212c and/or 2212d) and network nodes (e.g., network node 2210b). In some examples, the hub 2214 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 2214 may be a broadband router enabling access to the core network 2206 for the UEs. As another example, the hub 2214 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 2210, or by executable code, script, process, or other instructions in the hub 2214. As another example, the hub 2214 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 2214 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub 2214 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub 2214 then provides to the UE either directly, after performing local processing, and/or after adding additional local content. In still another example, the hub 2214 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 2214 may have a constant/persistent or intermittent connection to the network node 2210b. The hub 2214 may also allow for a different communication scheme and/or schedule between the hub 2214 and UEs (e.g., UE 2212c and/or 2212d), and between the hub 2214 and the core network 2206. In other examples, the hub 2214 is connected to the core network 2206 and/or one or more UEs via a wired connection. Moreover, the hub 2214 may be configured to connect to an M2M service provider over the access network 2204 and/or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 2210 while still connected via the hub 2214 via a wired or wireless connection. In some embodiments, the hub 2214 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 2210b. In other embodiments, the hub 2214 may be a non-dedicated hub—that is, a device which is capable of operating to route communications between the UEs and network node 2210b, but which is additionally capable of operating as a communication start and/or end point for certain data channels.
A UE may support device-to-device (D2D) communication, for example by implementing a 3GPP standard for sidelink communication, Dedicated Short-Range Communication (DSRC), vehicle-to-vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle-to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and/or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller). Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).
The UE 2300 includes processing circuitry 2302 that is operatively coupled via a bus 2304 to an input/output interface 2306, a power source 2308, a memory 2310, a communication interface 2312, and/or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in
The processing circuitry 2302 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory 2310. The processing circuitry 2302 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general-purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry 2302 may include multiple central processing units (CPUs).
In the example, the input/output interface 2306 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and/or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE 2300. Examples of an input device include a touch-sensitive or presence-sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or any combination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.
In some embodiments, the power source 2308 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source 2308 may further include power circuitry for delivering power from the power source 2308 itself, and/or an external power source, to the various parts of the UE 2300 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source 2308. Power circuitry may perform any formatting, converting, or other modification to the power from the power source 2308 to make the power suitable for the respective components of the UE 2300 to which power is supplied.
The memory 2310 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory 2310 includes one or more application programs 2314, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data 2316. The memory 2310 may store, for use by the UE 2300, any of a variety of various operating systems or combinations of operating systems.
The memory 2310 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital data storage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and/or ISIM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as ‘SIM card.’ The memory 2310 may allow the UE 2300 to access instructions, application programs and the like, stored on transitory or non-transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory 2310, which may be or comprise a device-readable storage medium.
The processing circuitry 2302 may be configured to communicate with an access network or other network using the communication interface 2312. The communication interface 2312 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna 2322. The communication interface 2312 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter 2318 and/or a receiver 2320 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter 2318 and receiver 2320 may be coupled to one or more antennas (e.g., antenna 2322) and may share circuit components, software or firmware, or alternatively be implemented separately.
In the illustrated embodiment, communication functions of the communication interface 2312 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short-range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and/or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol/internet protocol (TCP/IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.
Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface 2312, via a wireless connection to a network node. Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).
As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts the control surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.
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 2300 shown in
As yet another specific example, in an IoT scenario, a UE may represent a machine or other device that performs monitoring and/or measurements, and transmits the results of such monitoring and/or measurements to another UE and/or a network node. The UE may in this case be an M2M device, which may in a 3GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3GPP NB-IoT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipment that is capable of monitoring and/or reporting on its operational status or other functions associated with its operation.
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.
Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units and/or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).
Other examples of network nodes include multiple transmission point (multi-TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi-cell/multicast coordination entities (MCEs), Operation and Maintenance (O&M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and/or Minimization of Drive Tests (MDTs).
The network node 2400 includes a processing circuitry 2402, a memory 2404, a communication interface 2406, and a power source 2408. The network node 2400 may be composed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node 2400 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node 2400 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 2404 for different RATs) and some components may be reused (e.g., a same antenna 2410 may be shared by different RATs). The network node 2400 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 2400, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node 2400.
The processing circuitry 2402 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and/or encoded logic operable to provide, either alone or in conjunction with other network node 2400 components, such as the memory 2404, to provide network node 2400 functionality.
In some embodiments, the processing circuitry 2402 includes a system on a chip (SOC). In some embodiments, the processing circuitry 2402 includes one or more of radio frequency (RF) transceiver circuitry 2412 and baseband processing circuitry 2414. In some embodiments, the radio frequency (RF) transceiver circuitry 2412 and the baseband processing circuitry 2414 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry 2412 and baseband processing circuitry 2414 may be on the same chip or set of chips, boards, or units.
The memory 2404 may comprise any form of volatile or non-volatile computer-readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and/or any other volatile or non-volatile, non-transitory device-readable and/or computer-executable memory devices that store information, data, and/or instructions that may be used by the processing circuitry 2402. The memory 2404 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and/or other instructions capable of being executed by the processing circuitry 2402 and utilized by the network node 2400. The memory 2404 may be used to store any calculations made by the processing circuitry 2402 and/or any data received via the communication interface 2406. In some embodiments, the processing circuitry 2402 and memory 2404 is integrated.
The communication interface 2406 is used in wired or wireless communication of signaling and/or data between a network node, access network, and/or UE. As illustrated, the communication interface 2406 comprises port(s)/terminal(s) 2416 to send and receive data, for example to and from a network over a wired connection. The communication interface 2406 also includes radio front-end circuitry 2418 that may be coupled to, or in certain embodiments a part of, the antenna 2410. Radio front-end circuitry 2418 comprises filters 2420 and amplifiers 2422. The radio front-end circuitry 2418 may be connected to an antenna 2410 and processing circuitry 2402. The radio front-end circuitry may be configured to condition signals communicated between antenna 2410 and processing circuitry 2402. The radio front-end circuitry 2418 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry 2418 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 2420 and/or amplifiers 2422. The radio signal may then be transmitted via the antenna 2410. Similarly, when receiving data, the antenna 2410 may collect radio signals which are then converted into digital data by the radio front-end circuitry 2418. The digital data may be passed to the processing circuitry 2402. In other embodiments, the communication interface may comprise different components and/or different combinations of components.
In certain alternative embodiments, the network node 2400 does not include separate radio front-end circuitry 2418, instead, the processing circuitry 2402 includes radio front-end circuitry and is connected to the antenna 2410. Similarly, in some embodiments, all or some of the RF transceiver circuitry 2412 is part of the communication interface 2406. In still other embodiments, the communication interface 2406 includes one or more ports or terminals 2416, the radio front-end circuitry 2418, and the RF transceiver circuitry 2412, as part of a radio unit (not shown), and the communication interface 2406 communicates with the baseband processing circuitry 2414, which is part of a digital unit (not shown).
The antenna 2410 may include one or more antennas, or antenna arrays, configured to send and/or receive wireless signals. The antenna 2410 may be coupled to the radio front-end circuitry 2418 and may be any type of antenna capable of transmitting and receiving data and/or signals wirelessly. In certain embodiments, the antenna 2410 is separate from the network node 2400 and connectable to the network node 2400 through an interface or port.
The antenna 2410, communication interface 2406, and/or the processing circuitry 2402 may be configured to perform any receiving operations and/or certain obtaining operations described herein as being performed by the network node. Any information, data and/or signals may be received from a UE, another network node and/or any other network equipment. Similarly, the antenna 2410, the communication interface 2406, and/or the processing circuitry 2402 may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and/or signals may be transmitted to a UE, another network node and/or any other network equipment.
The power source 2408 provides power to the various components of network node 2400 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 2408 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 2400 with power for performing the functionality described herein. For example, the network node 2400 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source 2408. As a further example, the power source 2408 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.
Embodiments of the network node 2400 may include additional components beyond those shown in
The host 2500 includes processing circuitry 2502 that is operatively coupled via a bus 2504 to an input/output interface 2506, a network interface 2508, a power source 2510, and a memory 2512. Other components may be included in other embodiments. Features of these components may be substantially similar to those described with respect to the devices of previous figures, such as
The memory 2512 may include one or more computer programs including one or more host application programs 2514 and data 2516, which may include user data, e.g., data generated by a UE for the host 2500 or data generated by the host 2500 for a UE. Embodiments of the host 2500 may utilize only a subset or all of the components shown. The host application programs 2514 may be implemented in a container-based architecture and may provide support for video codecs (e.g., Versatile Video Coding (VVC), High Efficiency Video Coding (HEVC), Advanced Video Coding (AVC), MPEG, VP9) and audio codecs (e.g., FLAC, Advanced Audio Coding (AAC), MPEG, G.711), including transcoding for multiple different classes, types, or implementations of UEs (e.g., handsets, desktop computers, wearable display systems, heads-up display systems). The host application programs 2514 may also provide for user authentication and licensing checks and may periodically report health, routes, and content availability to a central node, such as a device in or on the edge of a core network. Accordingly, the host 2500 may select and/or indicate a different host for over-the-top services for a UE. The host application programs 2514 may support various protocols, such as the HTTP Live Streaming (HLS) protocol, Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Dynamic Adaptive Streaming over HTTP (MPEG-DASH), etc.
Applications 2602 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment Q400 to implement some of the features, functions, and/or benefits of some of the embodiments disclosed herein.
Hardware 2604 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 2606 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 2608a and 2608b (one or more of which may be generally referred to as VMs 2608), and/or perform any of the functions, features and/or benefits described in relation with some embodiments described herein. The virtualization layer 2606 may present a virtual operating platform that appears like networking hardware to the VMs 2608.
The VMs 2608 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 2606. Different embodiments of the instance of a virtual appliance 2602 may be implemented on one or more of VMs 2608, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.
In the context of NFV, a VM 2608 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs 2608, and that part of hardware 2604 that executes that VM, be it hardware dedicated to that VM and/or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs 2608 on top of the hardware 2604 and corresponds to the application 2602.
Hardware 2604 may be implemented in a standalone network node with generic or specific components. Hardware 2604 may implement some functions via virtualization. Alternatively, hardware 2604 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 2610, which, among others, oversees lifecycle management of applications 2602. In some embodiments, hardware 2604 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 2612 which may alternatively be used for communication between hardware nodes and radio units.
Like host 2500, embodiments of host 2702 include hardware, such as a communication interface, processing circuitry, and memory. The host 2702 also includes software, which is stored in or accessible by the host 2702 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE 2706 connecting via an over-the-top (OTT) connection 2750 extending between the UE 2706 and host 2702. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection 2750.
The network node 2704 includes hardware enabling it to communicate with the host 2702 and UE 2706. The connection 2760 may be direct or pass through a core network (like core network 2206 of
The UE 2706 includes hardware and software, which is stored in or accessible by UE 2706 and executable by the UE's processing circuitry. The software includes a client application, such as a web browser or operator-specific “app” that may be operable to provide a service to a human or non-human user via UE 2706 with the support of the host 2702. In the host 2702, an executing host application may communicate with the executing client application via the OTT connection 2750 terminating at the UE 2706 and host 2702. In providing the service to the user, the UE's client application may receive request data from the host's host application and provide user data in response to the request data. The OTT connection 2750 may transfer both the request data and the user data. The UE's client application may interact with the user to generate the user data that it provides to the host application through the OTT connection 2750.
The OTT connection 2750 may extend via a connection 2760 between the host 2702 and the network node 2704 and via a wireless connection 2770 between the network node 2704 and the UE 2706 to provide the connection between the host 2702 and the UE 2706. The connection 2760 and wireless connection 2770, over which the OTT connection 2750 may be provided, have been drawn abstractly to illustrate the communication between the host 2702 and the UE 2706 via the network node 2704, without explicit reference to any intermediary devices and the precise routing of messages via these devices.
As an example of transmitting data via the OTT connection 2750, in step 2708, the host 2702 provides user data, which may be performed by executing a host application. In some embodiments, the user data is associated with a particular human user interacting with the UE 2706. In other embodiments, the user data is associated with a UE 2706 that shares data with the host 2702 without explicit human interaction. In step 2710, the host 2702 initiates a transmission carrying the user data towards the UE 2706. The host 2702 may initiate the transmission responsive to a request transmitted by the UE 2706. The request may be caused by human interaction with the UE 2706 or by operation of the client application executing on the UE 2706. The transmission may pass via the network node 2704, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step 2712, the network node 2704 transmits to the UE 2706 the user data that was carried in the transmission that the host 2702 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step 2714, the UE 2706 receives the user data carried in the transmission, which may be performed by a client application executed on the UE 2706 associated with the host application executed by the host 2702.
In some examples, the UE 2706 executes a client application which provides user data to the host 2702. The user data may be provided in reaction or response to the data received from the host 2702. Accordingly, in step 2716, the UE 2706 may provide user data, which may be performed by executing the client application. In providing the user data, the client application may further consider user input received from the user via an input/output interface of the UE 2706. Regardless of the specific manner in which the user data was provided, the UE 2706 initiates, in step 2718, transmission of the user data towards the host 2702 via the network node 2704. In step 2720, in accordance with the teachings of the embodiments described throughout this disclosure, the network node 2704 receives user data from the UE 2706 and initiates transmission of the received user data towards the host 2702. In step 2722, the host 2702 receives the user data carried in the transmission initiated by the UE 2706.
One or more of the various embodiments improve the performance of OTT services provided to the UE 2706 using the OTT connection 2750, in which the wireless connection 2770 forms the last segment. More precisely, these embodiments can enable edge enabler clients (EECs) to obtain credentials that have longer lifetimes than typical token lifetimes and/or to obtain updated credentials from an associated edge computing service provider (ECSP) when existing or current credentials have expired. This improves EEC access to relevant servers (e.g., EES, ECS) and more generally facilitates secure deployment of edge computing within 5G networks. When edge computing deployed in this manner is used to provide and/or support OTT data services, it increases the value of such services to both end users and service providers.
In an example scenario, factory status information may be collected and analyzed by the host 2702. As another example, the host 2702 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host 2702 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host 2702 may store surveillance video uploaded by a UE. As another example, the host 2702 may store or control access to media content such as video, audio, VR or AR which it can broadcast, multicast or unicast to UEs. As other examples, the host 2702 may be used for energy pricing, remote control of non-time critical electrical load to balance power generation needs, location services, presentation services (such as compiling diagrams etc. from data collected from remote devices), or any other function of collecting, retrieving, storing, analyzing and/or transmitting data.
In some examples, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve. There may further be an optional network functionality for reconfiguring the OTT connection 2750 between the host 2702 and UE 2706, in response to variations in the measurement results. The measurement procedure and/or the network functionality for reconfiguring the OTT connection may be implemented in software and hardware of the host 2702 and/or UE 2706. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection 2750 passes; the sensors may participate in the measurement procedure by supplying values of the monitored quantities exemplified above, or supplying values of other physical quantities from which software may compute or estimate the monitored quantities. The reconfiguring of the OTT connection 2750 may include message format, retransmission settings, preferred routing etc.; the reconfiguring need not directly alter the operation of the network node 2704. Such procedures and functionalities may be known and practiced in the art. In certain embodiments, measurements may involve proprietary UE signaling that facilitates measurements of throughput, propagation times, latency and the like, by the host 2702. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection 2750 while monitoring propagation times, errors, etc.
The foregoing merely illustrates the principles of the disclosure. Various modifications and alterations to the described embodiments will be apparent to those skilled in the art in view of the teachings herein. It will thus be appreciated that those skilled in the art will be able to devise numerous systems, arrangements, and procedures that, although not explicitly shown or described herein, embody the principles of the disclosure and can be thus within the spirit and scope of the disclosure. Various exemplary embodiments can be used together with one another, as well as interchangeably therewith, as should be understood by those having ordinary skill in the art.
The term unit, as used herein, can have conventional meaning in the field of electronics, electrical devices and/or electronic devices and can include, for example, electrical and/or electronic circuitry, devices, modules, processors, memories, logic solid state and/or discrete devices, computer programs or instructions for carrying out respective tasks, procedures, computations, outputs, and/or displaying functions, and so on, as such as those that are described herein.
Any appropriate steps, methods, features, functions, or benefits disclosed herein may be performed through one or more functional units or modules of one or more virtual apparatuses. Each virtual apparatus may comprise a number of these functional units. These functional units may be implemented via processing circuitry, which may include one or more microprocessor or microcontrollers, as well as other digital hardware, which may include Digital Signal Processor (DSPs), special-purpose digital logic, and the like. The processing circuitry may be configured to execute program code stored in memory, which may include one or several types of memory such as Read Only Memory (ROM), Random Access Memory (RAM), cache memory, flash memory devices, optical storage devices, etc. Program code stored in memory includes program instructions for executing one or more telecommunications and/or data communications protocols as well as instructions for carrying out one or more of the techniques described herein. In some implementations, the processing circuitry may be used to cause the respective functional unit to perform corresponding functions according one or more embodiments of the present disclosure.
As described herein, device and/or apparatus can be represented by a semiconductor chip, a chipset, or a (hardware) module comprising such chip or chipset; this, however, does not exclude the possibility that a functionality of a device or apparatus, instead of being hardware implemented, be implemented as a software module such as a computer program or a computer program product comprising executable software code portions for execution or being run on a processor. Furthermore, functionality of a device or apparatus can be implemented by any combination of hardware and software. A device or apparatus can also be regarded as an assembly of multiple devices and/or apparatuses, whether functionally in cooperation with or independently of each other. Moreover, devices and apparatuses can be implemented in a distributed fashion throughout a system, so long as the functionality of the device or apparatus is preserved. Such and similar principles are considered as known to a skilled person.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms used herein should be interpreted as having a meaning that is consistent with their meaning in the context of this specification and the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
In addition, certain terms used in the present disclosure, including the specification and drawings, can be used synonymously in certain instances (e.g., “data” and “information”). It should be understood, that although these terms (and/or other terms that can be synonymous to one another) can be used synonymously herein, there can be instances when such words can be intended to not be used synonymously. Further, to the extent that the prior art knowledge has not been explicitly incorporated by reference herein above, it is explicitly incorporated herein in its entirety. All publications referenced are incorporated herein by reference in their entireties.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2022/078893 | 10/18/2022 | WO |
Number | Date | Country | |
---|---|---|---|
63273333 | Oct 2021 | US | |
63274183 | Nov 2021 | US |