Constrained application protocol for computing services in cellular networks
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- INTEL CORP
- Filing Date
- 2023-07-20
- Publication Date
- 2026-07-01
AI Technical Summary
Current communication protocols in cellular networks face challenges in efficiently supporting constrained application protocols (CoAP) for machine-to-machine (M2M) devices, particularly in negotiating protocol options between User Equipment (UE) and Network Functions (NFs), and in delivering asynchronous computing results with low overhead.
A CoAP system that facilitates seamless integration of CoAP into communication flows between UE and NFs, enabling protocol negotiation and asynchronous data delivery through advanced algorithms and configurations, using identifiers in CoAP headers and messages to optimize delivery and interpretation, and acting as a proxy to map CoAP to HTTP when necessary.
Enhances the usage of CoAP by ensuring efficient negotiation and asynchronous delivery of computing results between UE and NFs, optimizing resource utilization and reducing overhead in cellular networks.
Smart Images

Figure 1.1
Abstract
Description
[0001] CONSTRAINED APPLICATION PROTOCOL FOR COMPUTING SERVICES IN CELLULAR NETWORKS
[0002] CROSS-REFERENCE TO RELATED PATENT APPLICATION(S)
[0003] This application claims the benefit of U.S. Provisional Application No. 63 / 391,238, filed July 21, 2022, the disclosure of which is incorporated herein by reference as if set forth in full.
[0004] TECHNICAL FIELD
[0005] This disclosure generally relates to systems and methods for wireless communications, particularly constrained application protocol (COAP) for computing services in cellular networks.
[0006] BACKGROUND
[0007] In the current landscape of wireless technology, a critical focus is the optimization of signaling pathways between User Equipment (UE) and network functions. These pathways involve complex systems such as Access and Mobility Management Function (AMF) and non-access stratum (NAS) messages. Against this backdrop, there is an emerging need for more efficient and robust communication protocols.
[0008] BRIEF DESCRIPTION OF THE DRAWINGS
[0009] FIG. 1 depicts an illustrative schematic diagram for CoAP, in accordance with one or more example embodiments of the present disclosure.
[0010] FIGs. 2-8 depict illustrative schematic diagrams for CoAP, in accordance with one or more example embodiments of the present disclosure.
[0011] FIG. 9 illustrates a flow diagram of a process for an illustrative CoAP system, in accordance with one or more example embodiments of the present disclosure.
[0012] FIG. 10 illustrates an example network architecture, in accordance with one or more example embodiments of the present disclosure.
[0013] FIG. 11 schematically illustrates a wireless network, in accordance with one or more example embodiments of the present disclosure.
[0014] FIG. 12 illustrates components of a computing device, in accordance with one or more example embodiments of the present disclosure. DETAILED DESCRIPTION
[0015] The following description and the drawings sufficiently illustrate specific embodiments to enable those skilled in the art to practice them. Other embodiments may incorporate structural, logical, electrical, process, algorithm, and other changes. Portions and features of some embodiments may be included in, or substituted for, those of other embodiments. Embodiments set forth in the claims encompass all available equivalents of those claims.
[0016] The Constrained Application Protocol (CoAP) is designed for machine-to-machine (M2M) devices with constrained power and bandwidth. The key features of CoAP are listed below:
[0017] • Constrained web protocol fulfilling M2M requirements.
[0018] • UDP binding with optional reliability supporting unicast and multicast requests. CoAP can run over UDP / DTLS, TCP / TLS, SMS, SCTP, etc.
[0019] • Asynchronous message exchanges.
[0020] • Low header overhead and parsing complexity (4 bytes).
[0021] • URI and Content-type support.
[0022] • Simple proxy and caching capabilities.
[0023] • A stateless HTTP mapping, allowing proxies to be built providing access to CoAP resources via HTTP in a uniform way or for HTTP simple interfaces to be realized alternatively over CoAP.
[0024] • Security binding to Datagram Transport Layer Security (DTLS).
[0025] CoAP has many HTTP like features yet is very lightweight compared to HTTP and widely used in IoT / M2M applications.
[0026] The mission to resolve certain networking challenges has witnessed various solutions in the past. For instance, Transport Layer Security (TLS) and tunneling over TLS have been recognized by 892. IX Extensible Authentication Protocol (EAP) such as EAP-TTLS. Moreover, tunneling strategies have been applied to different protocols, making it possible to tunnel HTTPS over HTTPS and CoAP over Secure HTTP (COAPS over HTTPS).
[0027] Despite these attempts, the previous solutions were not without shortcomings. EAP methods, for example, only applied to the network edge, limiting their functionality to layer 2. This restricted scope left other layers within the network architecture without an equivalent solution. Moreover, tunneling TLS over TLS presented its own set of challenges. Both TLS and Datagram Transport Layer Security (DTLS) operate under the assumption that multiple message exchanges can occur to negotiate the key exchange protocol. They also accommodate message fragmentation and reassembly, where the TLS frames are part of the cryptographic protections. This expectation of extensive interaction and the complexity involved poses a significant challenge in messaging environments that are based on store-and-forward or multi-hop Representational State Transfer (RESTful) exchanges. The intricacies of these exchanges limit the effectiveness of tunneling TLS over TLS as a universally applicable solution.
[0028] Example embodiments of the present disclosure relate to systems, methods, and devices for constrained application protocol (CoAP) for computing services in cellular networks.
[0029] In one or more embodiments, a CoAP system might provide a series of solutions to enhance the usage of the CoAP between UE and Network Functions (NFs).
[0030] The CoAP system could offer robust solutions to support CoAP as a protocol between UE and NFs. This support is facilitated through innovative strategies that ensure seamless integration of CoAP into the communication flow between these entities.
[0031] Simultaneously, the system is capable of facilitating the negotiation of the protocol option with the cellular network for CoAP between UE and NFs. Advanced algorithms and configurations implemented within the system ensure this negotiation process is efficient and effective.
[0032] Additionally, the CoAP system enables asynchronous delivery of computing results using CoAP. For example, asynchronous computing results / data delivery between UE and cellular networks using CoAP. It elaborates on the identifiers used for computing services in the CoAP header and message body. These identifiers are designed to optimize the delivery and interpretation of computational results within the network. For asynchronous responses supported in CoAP, the token is the identifier used to match a subsequent CoAP 2.00 to a previous request. The cellular network entities such as NFs have to use the token and the service / task ID to enable using CoAP for asynchronous delivery of comp results / data via CP and UP with different options of whether CU-CP or NF has CoAP support. It should be noted that CoAP 2.00, is a response code in the Constrained Application Protocol (CoAP). Specifically, 2.00 is the status code for a successful operation, analogous to HTTP 200 OK response. The 2.00 response code in CoAP is used to indicate that a request (like a GET, PUT, POST, or DELETE) has been successfully received, understood, and accepted. In one or more embodiments, a CoAP system may negotiate the protocol option upon registration with the AMF / SEAF. The information may be stored as part of the UE’s context by the CU-CP, aiding in the discovery of an NF with CoAP support. The CoAP system may use CoAP for asynchronous delivery of computing results / data bidirectionally between the UE and NF.
[0033] If the NF doesn’t support CoAP, the CU-CP of the CoAP system may act as a proxy to map CoAP to HTTP based on available mechanisms. The CoAP system may use a self-defined or previously assigned token in the CoAP request, and the CU-CP may maintain a mapping between the computing service / task ID to the token for the CoAP ACK and 2.00 message. Under one option, the CU-CP of the CoAP system may subscribe to the computing results / data identified by the computing service / task ID. An expected finish time and computing service / task ID can be piggybacked in the message between SOCF and UE and stored at the CU-CP for scheduling or other optimization.
[0034] Alternatively, the SOCF may subscribe to the computing results / data identified by the computing service / task ID and get notified by Comp CF when the computing results / data is ready. The CU-CP of the CoAP system may send an HTTP request (e.g., POST) to request the computing results / data from SOCF after some time calculated based on the expected finish time sent previously and get a response from SOCF about the computing results / data piggybacked with the HTTP 200 message.
[0035] If the NF supports CoAP, the CoAP system can exchange CoAP with SOCF for asynchronous computing results / data delivery. The CoAP system may use a self-defined or previously assigned token in the CoAP request, and SOCF may maintain a mapping between the computing service / task ID to the token for the CoAP ACK and 2.00 message. The SOCF of the CoAP system may subscribe to the computing results / data identified by the computing service / task ID with the Comp SF. An expected finish time and computing service / task ID can be piggybacked in the message between SOCF and UE.
[0036] Additionally, the Comp SF may support CoAP asynchronous delivery of computing results / data via UP. The token used in the CoAP request in UP traffic may include a token generated based on the computing service / task ID previously assigned by Comp CF or PCF in the computing service request and response between UE and SOCF. The service / task ID can be sent via NAS or RRC message from SOCF to UE within the CoAP system. The above descriptions are for purposes of illustration and are not meant to be limiting. Numerous other examples, configurations, processes, algorithms, etc., may exist, some of which are described in greater detail below. Example embodiments will now be described with reference to the accompanying figures.
[0037] FIG. 1 depicts an illustrative schematic diagram for CoAP, in accordance with one or more example embodiments of the present disclosure.
[0038] The mechanism to enable service based interface (SBI) is proposed, with the primary protocol considered being HTTP; however, for many of the constrained devices (UEs), support of HTTP may be cumbersome and challenging. Different from HTTP, CoAP supports asynchronous response as shown in FIG. 1. This feature is suitable for UE to request computing service with asynchronous computing results / data delivery. Therefore, CoAP is a lightweight alternative with unique features suitable for computing services in 6G.
[0039] FIGs. 2-8 depict illustrative schematic diagrams for CoAP, in accordance with one or more example embodiments of the present disclosure.
[0040] Referring to FIG. 2, there is shown an Option 1, Protocol Stack, where NF has CoAP support.
[0041] In this disclosure, SBI for N2 is assumed between CU-CP and CN, thus the protocol between CU-CP to other NFs is HTTP / HTTPs. To support CoAP as an option for the protocol between UE and NFs, there are three options:
[0042] Optionl : NF supports CoAP / CoAPs as a protocol
[0043] Option2: There is a CoAP / CoAPs to HTTP / HTTPs gateway proxy between CU-CP and NFs.
[0044] Option3 : NF supports both CoAP / CoAPs and HTTP / HTTPs
[0045] In one or more embodiments, a CoAP system may facilitate capability exchange about CoAP support between UE and NFs.
[0046] In one or more embodiments, a CoAP system may facilitate that a UE may include an indication of its support of CoAP / CoAPs, HTTP / HTTPs or both, the preference of using CoAP / CoAPs or HTTP / HTTPs supported in the registration NAS message / initial NAS message as cleartext IE (information element) with AMF / SEAF. Upon receiving the registration message, AMF / SEAF can decide whether CoAP can be used based on UE’s subscription such as device type, DNN, S-NSSAI, etc. If UE supports both CoAP and HTTP, AMF / SEAF can send an indication of which protocol is selected for the communication between UE and an NF and indicate it in the registration response. Note that the protocol may be selected only for a specific NF such as a Service Orchestration and Chaining Function (SOCF). NF can register the support of protocols as a capability to NRF which can be used later for NF selection. This protocol preference information can be sent from AMF to CU-CP as part of UE’s context to help select a NF with special capabilities such as protocol support.
[0047] In one or more embodiments, a CoAP system may facilitate Option 1, where NF supports CoAP as a protocol.
[0048] In this option, if NF supports CoAP as a protocol, the protocol stacks based on different options still apply by replacing HTTP / HTTPs with CoAP / CoAPs as shown in FIG. 2.
[0049] In this case, a Nnf_NASDirectTransfer service may be used by CU-CP with an indication of CoAP protocol carried in the HTTP message between CU-CP and NF. Nnf_NASDirectTransfer refers to a process of sending NAS messages between certain network entities.
[0050] In one or more embodiments, a CoAP system may facilitate Option2, where there is a CoAP to HTTP gateway proxy between CU-CP and NFs. In this option, protocol stacks are shown in FIG. 3 and FIG. 4.
[0051] FIG. 1 shows Option2.1, where protocol stack CoAP message visible to CU-CP (CU-CP as a GW to map CoAP message to HTTP message).
[0052] In this case, the CoAP message is fully visible to CU-CP which can map it into a HTTP message. CU-CP may act as a proxy gateway with protocol awareness capability by RRC Container type or by the scheme of URI or by the UDP / TCP port number.
[0053] FIG. 2 shows Option2.2, where protocol stack CoAP message is partially visible to CU- CP (GW / eSCP as a GW to map CoAP message to HTTP message). In this case, the CoAP message may not be visible to CU-CP but an identifier such as a message type may be. Alternatively, Object Security for Constrained RESTful Environments (OSCORE) is an IETF proposal that would enable message payloads to be encrypted end-end allowing protocol translations to occur without exposing cleartext payloads. Mechanisms like OSCORE can also apply. Additional information may be present and visible to CU-CP to help select a GW / eSCP to forward the CoAP message. The GW / eSCP is responsible for mapping the CoAP message to the HTTP message based on the available mechanisms. In one or more embodiments, a CoAP system may facilitate asynchronous delivery of computing results by CoAP via CP (CU-CP as a CoAP proxy).
[0054] When offloading a computing task between UE and cellular network (bi-directionally, but UE to NW shown as an example), the computing results / data are generally not available right away. The computing results / generated data are generally not ready until completing the processing. For HTTP based communication, mechanisms like notification callback URI during the request-response interaction (or subscription-notification interaction) or polling mechanism to support a-sync communication. It will introduce inefficiencies and HTTP overhead for constrained devices which may request smaller computing task and data for loT application and / or the computing task / or data is carried in the control plane signaling payload. As described in FIG. 1, CoAP is able to send an acknowledgment (ACK) to a request and then use a matching token to match a previous request and send the response in a later time. Therefore, CoAP can be used for the asynchronized delivery of computing results / data via CP or UP. The message flow for CP with CU-CP as a CoAP to HTTP proxy is depicted in FIG. 5 and FIG. 6.
[0055] FIG. 3 shows Option 1, where asynchronous computing results delivery via CP using CoAP (CU-CP as CoAP to HTTP proxy shown as an example).
[0056] 1) UE sends a service request for computing in CoAP to CU-CP via in a RRC or NAS container. The message shall include the token used in CoAP which is a client defined identifier or previously assigned by the cellular network. The message may also include the data and metadata as the input for the computing service in the message body.
[0057] 2) CU-CP acting as a CoAP to HTTP proxy maps the CoAP message received into a service request for computing in HTTP to the SOCF. The SOCF is selected based on Network Repository Function (NRF) or other mechanisms not shown here.
[0058] 3) SOCF makes a decision about the placement of the computing service / task.
[0059] 4) SOCF sends a request to the selected Comp CF with the requirements on the computing service / task.
[0060] 5) Comp CF conducts Comp SF selection and configuration about the computing service / task. This step may include the generation of a computing service / task ID to identify a computing service / task and its related context. The Comp CF shall subscribe to the computing results / data to the selected Comp SF if it decides to send an asynchronous delivery of the computing results / data to the UE. 6) Comp CF sends a response to SOCF about the status of the computing service / task. This message may include the computing service / task ID, result delivery mode, expected finish time, etc.
[0061] 7) SOCF sends a response to CU-CP about the asynchronous service / task ID, delivery of the computing results, the expected finish time, the Comp SF’s identifier (e.g., IP address #port, URI), etc.
[0062] 8) CU-CP may store the asynchronous service / task ID, delivery mode of the computing results, the expected finish time, etc. CU-CP shall store the Comp SF ID, the token of the CoAP message used in the request in Step 1) and the mapping to a service / task ID. OSCORE can be used here for privacy preserving compute.
[0063] 9) CU-CP subscribes to the results of the computing service / task if asynchronous results delivery is indicated in Step 8).
[0064] 10) CU-CP sends a CoAP ACK message with the same token used in Step 1) and indicate the results / data will be delivered in an asynchronized response.
[0065] 11) Comp SF notifies Comp CF about the computing results / data with the service / task ID.
[0066] 12) Comp CF notifies SOCF about the computing results / data with the service / task ID.
[0067] 13) CU-CP sends a CoAP 2.00 response to the UE for asynchronous delivery of the computing results / data. The token in this message shall be the same as in the request in Step 1). The CU-CP can retrieve the token by the service / task ID stored in Step 8).
[0068] FIG. 6 shows Option 2, where asynchronous computing results delivery via CP using CoAP (CU-CP as CoAP to HTTP proxy shown as an example).
[0069] 9) SOCF subscribes to the computing results / data based on the service / task ID to Comp CF and gets a subscription response.
[0070] 11) Comp SF sends a computing results / data notification to Comp CF and then Comp CF sends a computing results / data notification to SOCF. This message shall include the computing results / data and the service / task ID.
[0071] 12) CU-CP sends a HTTP request (e.g., POST) to SOCF to request for the computing results / data after some time calculated based on the finish time previously received from SOCF. SOCF responds with HTTP 200 to CU-CP with the computing results / data. The other steps are similar to FIG. 5 Option 1. Note that if the GW / eSCP act as a proxy to map CoAP and HTTP, the message flow in FIG. 5 and FIG. 6 applies with replacing CU-CP with GW / eSCP following the protocol stack in FIG. 4. Then the CoAP message may be transparent to CU-CP.
[0072] In one or more embodiments, a CoAP system may facilitate asynchronous delivery of computing results / data by CoAP between UE and NF.
[0073] If NF supports CoAP, then the CoAP message can be transparent to the CU-CP. The message flow for delivery of computing results / data between UE and SOCF is depicted in FIG. 7.
[0074] FIG. 4 shows asynchronous computing results delivery via CP using CoAP (SOCF supports CoAP).
[0075] 1) UE sends a CoAP request for Comp to SOCF via UE and NF SBI with CoAP support. This message is transparent to CU-CP. The token can be generated by UE or previous assigned by NW or generated based on UE’s identifiers.
[0076] 2) SOCF decides a placement for the computing service / task, request and configure the computing resource with Comp CF / SF similar to Step 2) to 6) in 5.1.4.
[0077] 3) SOCF subscribes to the computing results / data to the selected Comp SF using the comp service / task ID as the identifier in case of an asynchronous result / data delivery
[0078] 4) SOCF sends a CoAP ACK with the same token in the CoAP request in Step 1). SOCF maintains a mapping between the token and the comp service / task ID
[0079] 5) Comp SF sends a notification about the comp results / data with the comp service / task ID. The comp results / data is piggybacked in the message body.
[0080] 6) SOCF sends the CoAP 2.00 with the same token as used in Step 1) and Step 4) to UE with the comp results / data piggybacked to the message.
[0081] Asynchronous delivery of computing results / data by CoAP via UP
[0082] If CoAP is supported as a UP protocol between UE and Comp SF, the CoAP request / response is considered as computing user plane traffic. However, to enable an asynchronous response, the UE shall use a token generated by the cellular network based on the computing service / task ID. The message flow is depicted in FIG. 8.
[0083] FIG. 8 shows asynchronous computing results delivery via CP using CoAP (CU-CP as CoAP to HTTP proxy shown as an example).
[0084] 1) UE sends a service request for computing to SOCF via CU-CP in any supported protocol with indication of using CoAP on user plane. 2) SOCF decides a placement for the computing service / task, request and configure the computing resource with Comp CF / SF similar to Step 2) to 6) in 5.1.4. The Comp SF selected shall support CoAP for comp results / data for UP and asynchronous delivery of computing results / data. The computing service / task ID is also generated, e.g., by PCF or Comp CF. SOCF also communicate with Comm CF / SF to setup a PDU session for user plane traffic.
[0085] 3) SOCF sends a service response for Computing to UE with the assigned comp service / task ID and other related info about the PDU session.
[0086] 4) UE and Comp SF communicate via CoAP messages where the token is generated with the comp service / task ID. For example, the service / task ID can be part of the token. Or CoAP can include an extended header with the service / task ID.
[0087] In some embodiments, the electronic device(s), network(s), system(s), chip(s) or component(s), or portions or implementations thereof, of FIGs. 10-12, or some other figure herein, may be configured to perform one or more processes, techniques, or methods as described herein, or portions thereof. One such process is depicted in FIG. 9.
[0088] For example, the process may include, at 902, decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container.
[0089] The process further includes, at 904, mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy.
[0090] The process further includes, at 906, monitoring for the results of the computing service if asynchronous results delivery is indicated.
[0091] The process further includes, at 908, encoding a CoAP acknowledgement (ACK) message indicating asynchronous data delivery.
[0092] For one or more embodiments, at least one of the components set forth in one or more of the preceding figures may be configured to perform one or more operations, techniques, processes, and / or methods as set forth in the example section below. For example, the baseband circuitry as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below. For another example, circuitry associated with a UE, base station, network element, etc. as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below in the example section.
[0093] It is understood that the above descriptions are for purposes of illustration and are not meant to be limiting.
[0094] FIGs. 10-12 illustrate various systems, devices, and components that may implement aspects of disclosed embodiments.
[0095] FIG. 10 illustrates an example network architecture 1000 according to various embodiments. The network 1000 may operate in a manner consistent with 3GPP technical specifications for LTE or 5G / NR systems. However, the example embodiments are not limited in this regard and the described embodiments may apply to other networks that benefit from the principles described herein, such as future 3 GPP systems, or the like.
[0096] The network 1000 includes a UE 1002, which is any mobile or non-mobile computing device designed to communicate with a RAN 1004 via an over-the-air connection. The UE 1002 is communicatively coupled with the RAN 1004 by a Uu interface, which may be applicable to both LTE and NR systems. Examples of the UE 1002 include, but are not limited to, a smartphone, tablet computer, wearable computer, desktop computer, laptop computer, in-vehicle infotainment system, in-car entertainment system, instrument cluster, head-up display (HUD) device, onboard diagnostic device, dashtop mobile equipment, mobile data terminal, electronic engine management system, electronic / engine control unit, electronic / engine control module, embedded system, sensor, microcontroller, control module, engine management system, networked appliance, machine-type communication device, machine-to-machine (M2M), device-to-device (D2D), machine-type communication (MTC) device, Internet of Things (loT) device, and / or the like. The network 1000 may include a plurality of UEs 1002 coupled directly with one another via a D2D, ProSe, PC5, and / or sidelink (SL) interface. These UEs 1002 may be M2M / D2D / MTC / IoT devices and / or vehicular systems that communicate using physical sidelink channels such as, but not limited to, PSBCH, PSDCH, PSSCH, PSCCH, PSFCH, etc. The UE 1002 may perform blind decoding attempts of SL channels / links according to the various embodiments herein.
[0097] In some embodiments, the UE 1002 may additionally communicate with an AP 1006 via an over-the-air (OTA) connection. The AP 1006 manages a WLAN connection, which may serve to offload some / all network traffic from the RAN 1004. The connection between the UE 1002 and the AP 1006 may be consistent with any IEEE 802.11 protocol. Additionally, the UE 1002, RAN 1004, and AP 1006 may utilize cellular-WLAN aggregation / integration (e g., LWA / LWIP). Cellular- WLAN aggregation may involve the UE 1002 being configured by the RAN 1004 to utilize both cellular radio resources and WLAN resources.
[0098] The RAN 1004 includes one or more access network nodes (ANs) 1008. The ANs 1008 terminate air-interface(s) for the UE 1002 by providing access stratum protocols including RRC, PDCP, RLC, MAC, and PHY / L1 protocols. In this manner, the AN 1008 enables data / voice connectivity between CN 1020 and the UE 1002. The ANs 1008 may be a macrocell base station or a low power base station for providing femtocells, picocells or other like cells having smaller coverage areas, smaller user capacity, or higher bandwidth compared to macrocells; or some combination thereof. In these implementations, an AN 1008 be referred to as a BS, gNB, RAN node, eNB, ng-eNB, NodeB, RSU, TRxP, etc.
[0099] One example implementation is a “CU / DU split” architecture where the ANs 1008 are embodied as a gNB-Central Unit (CU) that is communicatively coupled with one or more gNB- Distributed Units (DUs), where each DU may be communicatively coupled with one or more Radio Units (RUs) (also referred to as RRHs, RRUs, or the like) (see e.g., 3GPP TS 38.401 vl6.1.0 (2020-03)). In some implementations, the one or more RUs may be individual RSUs. In some implementations, the CU / DU split may include an ng-eNB-CU and one or more ng-eNB-DUs instead of, or in addition to, the gNB-CU and gNB-DUs, respectively. The ANs 1008 employed as the CU may be implemented in a discrete device or as one or more software entities running on server computers as part of, for example, a virtual network including a virtual Base Band Unit (BBU) or BBU pool, cloud RAN (CRAN), Radio Equipment Controller (REC), Radio Cloud Center (RCC), centralized RAN (C-RAN), virtualized RAN (vRAN), and / or the like (although these terms may refer to different implementation concepts). Any other type of architectures, arrangements, and / or configurations can be used.
[0100] The plurality of ANs may be coupled with one another via an X2 interface (if the RAN 1004 is an LTE RAN or Evolved Universal Terrestrial Radio Access Network (E-UTRAN) 1010) or an Xn interface (if the RAN 1004 is a NG-RAN 1014). The X2 / Xn interfaces, which may be separated into control / user plane interfaces in some embodiments, may allow the ANs to communicate information related to handovers, data / context transfers, mobility, load management, interference coordination, etc. The ANs of the RAN 1004 may each manage one or more cells, cell groups, component carriers, etc. to provide the UE 1002 with an air interface for network access. The UE 1002 may be simultaneously connected with a plurality of cells provided by the same or different ANs 1008 of the RAN 1004. For example, the UE 1002 and RAN 1004 may use carrier aggregation to allow the UE 1002 to connect with a plurality of component carriers, each corresponding to a Pcell or Scell. In dual connectivity scenarios, a first AN 1008 may be a master node that provides an MCG and a second AN 1008 may be secondary node that provides an SCG. The first / second ANs 1008 may be any combination of eNB, gNB, ng-eNB, etc.
[0101] The RAN 1004 may provide the air interface over a licensed spectrum or an unlicensed spectrum. To operate in the unlicensed spectrum, the nodes may use LAA, eLAA, and / or feLAA mechanisms based on CA technology with PCells / Scells. Prior to accessing the unlicensed spectrum, the nodes may perform medium / carrier-sensing operations based on, for example, a listen-before-talk (LBT) protocol.
[0102] In V2X scenarios the UE 1002 or AN 1008 may be or act as a roadside unit (RSU), which may refer to any transportation infrastructure entity used for V2X communications. An RSU may be implemented in or by a suitable AN or a stationary (or relatively stationary) UE. An RSU implemented in or by: a UE may be referred to as a “UE-type RSU”; an eNB may be referred to as an “eNB-type RSU”; a gNB may be referred to as a “gNB-type RSU”; and the like. In one example, an RSU is a computing device coupled with radio frequency circuitry located on a roadside that provides connectivity support to passing vehicle UEs. The RSU may also include internal data storage circuitry to store intersection map geometry, traffic statistics, media, as well as applications / software to sense and control ongoing vehicular and pedestrian traffic. The RSU may provide very low latency communications required for high speed events, such as crash avoidance, traffic warnings, and the like. Additionally or alternatively, the RSU may provide other cellular / WLAN communications services. The components of the RSU may be packaged in a weatherproof enclosure suitable for outdoor installation, and may include a network interface controller to provide a wired connection (e.g., Ethernet) to a traffic signal controller or a backhaul network.
[0103] In some embodiments, the RAN 1004 may be an E-UTRAN 1010 with one or more eNBs 1012. The an E-UTRAN 1010 provides an LTE air interface (Uu) with the following characteristics: SCS of 15 kHz; CP-OFDM waveform for DL and SC-FDMA waveform for UE; turbo codes for data and TBCC for control; etc. The LTE air interface may rely on CSI-RS for CSI acquisition and beam management; PDSCH / PDCCH DMRS for PDSCHZPDCCH demodulation; and CRS for cell search and initial acquisition, channel quality measurements, and channel estimation for coherent demodulation / detection at the UE. The LTE air interface may operating on sub-6 GHz bands.
[0104] In some embodiments, the RAN 1004 may be an next generation (NG)-RAN 1014 with one or more gNB 1016 and / or on or more ng-eNB 1018. The gNB 1016 connects with 5G-enabled UEs 1002 using a 5G NR interface. The gNB 1016 connects with a 5GC 1040 through an NG interface, which includes an N2 interface or an N3 interface. The ng-eNB 1018 also connects with the 5GC 1040 through an NG interface, but may connect with a UE 1002 via the Uu interface. The gNB 1016 and the ng-eNB 1018 may connect with each other over an Xn interface.
[0105] In some embodiments, the NG interface may be split into two parts, an NG user plane (NG- U) interface, which carries traffic data between the nodes of the NG-RAN 1014 and a UPF 1048 (e.g., N3 interface), and an NG control plane (NG-C) interface, which is a signaling interface between the nodes of the NG-RAN 1014 and an AMF 1044 (e.g., N2 interface).
[0106] The NG-RAN 1014 may provide a 5G-NR air interface (which may also be referred to as a Uu interface) with the following characteristics: variable SCS; CP-OFDM for DL, CP-OFDM and DFT-s-OFDM for UL; polar, repetition, simplex, and Reed-Muller codes for control and LDPC for data. The 5G-NR air interface may rely on CSI-RS, PDSCH / PDCCH DMRS similar to the LTE air interface. The 5G-NR air interface may not use a CRS, but may use PBCH DMRS for PBCH demodulation; PTRS for phase tracking for PDSCH; and tracking reference signal for time tracking. The 5G-NR air interface may operating on FR1 bands that include sub-6 GHz bands or FR2 bands that include bands from 24.25 GHz to 52.6 GHz. The 5G-NR air interface may include an SSB that is an area of a downlink resource grid that includes PSS / SSS / PBCH.
[0107] The 5G-NR air interface may utilize BWPs for various purposes. For example, BWP can be used for dynamic adaptation of the SCS. For example, the UE 1002 can be configured with multiple BWPs where each BWP configuration has a different SCS. When a BWP change is indicated to the UE 1002, the SCS of the transmission is changed as well. Another use case example of BWP is related to power saving. In particular, multiple BWPs can be configured for the UE 1002 with different amount of frequency resources (e.g., PRBs) to support data transmission under different traffic loading scenarios. A BWP containing a smaller number of PRBs can be used for data transmission with small traffic load while allowing power saving at the UE 1002 and in some cases at the gNB 1016. A BWP containing a larger number of PRBs can be used for scenarios with higher traffic load.
[0108] The RAN 1004 is communicatively coupled to CN 1020 that includes network elements and / or network functions (NFs) to provide various functions to support data and telecommunications services to customers / subscribers (e.g., UE 1002). The components of the CN 1020 may be implemented in one physical node or separate physical nodes. In some embodiments, NFV may be utilized to virtualize any or all of the functions provided by the network elements of the CN 1020 onto physical compute / storage resources in servers, switches, etc. A logical instantiation of the CN 1020 may be referred to as a network slice, and a logical instantiation of a portion of the CN 1020 may be referred to as a network sub-slice.
[0109] The CN 1020 may be an LTE CN 1022 (also referred to as an Evolved Packet Core (EPC) 1022). The EPC 1022 may include MME 1024, SGW 1026, SGSN 1028, HSS 1030, PGW 1032, and PCRF 1034 coupled with one another over interfaces (or “reference points”) as shown. The NFs in the EPC 1022 are briefly introduced as follows.
[0110] The MME 1024 implements mobility management functions to track a current location of the UE 1002 to facilitate paging, bearer activation / deactivation, handovers, gateway selection, authentication, etc.
[0111] The SGW 1026 terminates an SI interface toward the RAN 1010 and routes data packets between the RAN 1010 and the EPC 1022. The SGW 1026 may be a local mobility anchor point for inter-RAN node handovers and also may provide an anchor for inter-3GPP mobility. Other responsibilities may include lawful intercept, charging, and some policy enforcement.
[0112] The SGSN 1028 tracks a location of the UE 1002 and performs security functions and access control. The SGSN 1028 also performs inter-EPC node signaling for mobility between different RAT networks; PDN and S-GW selection as specified by MME 1024; MME 1024 selection for handovers; etc. The S3 reference point between the MME 1024 and the SGSN 1028 enable user and bearer information exchange for inter-3 GPP access network mobility in idle / active states.
[0113] The HSS 1030 includes a database for network users, including subscription-related information to support the network entities’ handling of communication sessions. The HSS 1030 can provide support for routing / roaming, authentication, authorization, naming / addressing resolution, location dependencies, etc. An S6a reference point between the HSS 1030 and the MME 1024 may enable transfer of subscription and authentication data for authenticating / authorizing user access to the EPC 1020.
[0114] The PGW 1032 may terminate an SGi interface toward a data network (DN) 1036 that may include an application (app) / content server 1038. The PGW 1032 routes data packets between the EPC 1022 and the data network 1036. The PGW 1032 is communicatively coupled with the SGW 1026 by an S5 reference point to facilitate user plane tunneling and tunnel management. The PGW 1032 may further include a node for policy enforcement and charging data collection (e.g., PCEF). Additionally, the SGi reference point may communicatively couple the PGW 1032 with the same or different data network 1036. The PGW 1032 may be communicatively coupled with a PCRF 1034 via a Gx reference point.
[0115] The PCRF 1034 is the policy and charging control element of the EPC 1022. The PCRF 1034 is communicatively coupled to the app / content server 1038 to determine appropriate QoS and charging parameters for service flows. The PCRF 1032 also provisions associated rules into a PCEF (via Gx reference point) with appropriate TFT and QCI.
[0116] The CN 1020 may be a 5GC 1040 including an AUSF 1042, AMF 1044, SMF 1046, UPF 1048, NSSF 1050, NEF 1052, NRF 1054, PCF 1056, UDM 1058, and AF 1060 coupled with one another over various interfaces as shown. The NFs in the 5GC 1040 are briefly introduced as follows.
[0117] The AUSF 1042 stores data for authentication of UE 1002 and handle authentication- related functionality. The AUSF 1042 may facilitate a common authentication framework for various access types..
[0118] The AMF 1044 allows other functions of the 5GC 1040 to communicate with the UE 1002 and the RAN 1004 and to subscribe to notifications about mobility events with respect to the UE 1002. The AMF 1044 is also responsible for registration management (e.g., for registering UE 1002), connection management, reachability management, mobility management, lawful interception of AMF-related events, and access authentication and authorization. The AMF 1044 provides transport for SM messages between the UE 1002 and the SMF 1046, and acts as a transparent proxy for routing SM messages. AMF 1044 also provides transport for SMS messages between UE 1002 and an SMSF. AMF 1044 interacts with the AUSF 1042 and the UE 1002 to perform various security anchor and context management functions. Furthermore, AMF 1044 is a termination point of a RAN-CP interface, which includes the N2 reference point between the RAN 1004 and the AMF 1044. The AMF 1044 is also a termination point of NAS (Nl) signaling, and performs NAS ciphering and integrity protection.
[0119] AMF 1044 also supports NAS signaling with the UE 1002 over an N3IWF interface. The N3IWF provides access to untrusted entities. N3IWF may be a termination point for the N2 interface between the (R)AN 1004 and the AMF 1044 for the control plane, and may be a termination point for the N3 reference point between the (R)AN 1014 and the 1048 for the user plane. As such, the AMF 1044 handles N2 signalling from the SMF 1046 and the AMF 1044 for PDU sessions and QoS, encapsulate / de-encapsulate packets for IPSec and N3 tunnelling, marks N3 user-plane packets in the uplink, and enforces QoS corresponding to N3 packet marking taking into account QoS requirements associated with such marking received over N2. N3IWF may also relay UL and DL control-plane NAS signalling between the UE 1002 and AMF 1044 via an Nl reference point between the UE 1002and the AMF 1044, and relay uplink and downlink user-plane packets between the UE 1002 and UPF 1048. The N3IWF also provides mechanisms for IPsec tunnel establishment with the UE 1002. The AMF 1044 may exhibit an Namf service-based interface, and may be a termination point for an N14 reference point between two AMFs 1044 and an N17 reference point between the AMF 1044 and a 5G-EIR (not shown by FIG. 10).
[0120] The SMF 1046 is responsible for SM (e.g., session establishment, tunnel management between UPF 1048 and AN 1008); UE IP address allocation and management (including optional authorization); selection and control of UP function; configuring traffic steering at UPF 1048 to route traffic to proper destination; termination of interfaces toward policy control functions; controlling part of policy enforcement, charging, and QoS; lawful intercept (for SM events and interface to LI system); termination of SM parts of NAS messages; downlink data notification; initiating AN specific SM information, sent via AMF 1044 overN2 to AN 1008; and determining SSC mode of a session. SM refers to management of a PDU session, and a PDU session or “session” refers to a PDU connectivity service that provides or enables the exchange of PDUs between the UE 1002 and the DN 1036.
[0121] The UPF 1048 acts as an anchor point for intra-RAT and inter-RAT mobility, an external PDU session point of interconnect to data network 1036, and a branching point to support multihomed PDU session. The UPF 1048 also performs packet routing and forwarding, packet inspection, enforces user plane part of policy rules, lawfully intercept packets (UP collection), performs traffic usage reporting, perform QoS handling for a user plane (e.g., packet filtering, gating, UL / DL rate enforcement), performs uplink traffic verification (e.g., SDF-to-QoS flow mapping), transport level packet marking in the uplink and downlink, and performs downlink packet buffering and downlink data notification triggering. UPF 1048 may include an uplink classifier to support routing traffic flows to a data network.
[0122] The NSSF 1050 selects a set of network slice instances serving the UE 1002. The NSSF 1050 also determines allowed NSSAI and the mapping to the subscribed S-NSSAIs, if needed. The NSSF 1050 also determines an AMF set to be used to serve the UE 1002, or a list of candidate AMFs 1044 based on a suitable configuration and possibly by querying the NRF 1054. The selection of a set of network slice instances for the UE 1002 may be triggered by the AMF 1044 with which the UE 1002 is registered by interacting with the NSSF 1050; this may lead to a change of AMF 1044. The NSSF 1050 interacts with the AMF 1044 via an N22 reference point; and may communicate with another NSSF in a visited network via an N31 reference point (not shown).
[0123] The NEF 1052 securely exposes services and capabilities provided by 3 GPP NFs for third party, internal exposure / re-exposure, AFs 1060, edge computing or fog computing systems (e.g., edge compute node, etc. In such embodiments, the NEF 1052 may authenticate, authorize, or throttle the AFs. NEF 1052 may also translate information exchanged with the AF 1060 and information exchanged with internal network functions. For example, the NEF 1052 may translate between an AF-Service-Identifier and an internal 5GC information. NEF 1052 may also receive information from other NFs based on exposed capabilities of other NFs. This information may be stored at the NEF 1052 as structured data, or at a data storage NF using standardized interfaces. The stored information can then be re-exposed by the NEF 1052 to other NFs and AFs, or used for other purposes such as analytics.
[0124] The NRF 1054 supports service discovery functions, receives NF discovery requests from NF instances, and provides information of the discovered NF instances to the requesting NF instances. NRF 1054 also maintains information of available NF instances and their supported services. The NRF 1054 also supports service discovery functions, wherein the NRF 1054 receives NF Discovery Request from NF instance or an SCP (not shown), and provides information of the discovered NF instances to the NF instance or SCP.
[0125] The PCF 1056 provides policy rules to control plane functions to enforce them, and may also support unified policy framework to govern network behavior. The PCF 1056 may also implement a front end to access subscription information relevant for policy decisions in a UDR of the UDM 1058. In addition to communicating with functions over reference points as shown, the PCF 1056 exhibit an Npcf service-based interface.
[0126] The UDM 1058 handles subscription-related information to support the network entities’ handling of communication sessions, and stores subscription data of UE 1002. For example, subscription data may be communicated via an N8 reference point between the UDM 1058 and the AMF 1044. The UDM 1058 may include two parts, an application front end and a UDR. The UDR may store subscription data and policy data for the UDM 1058 and the PCF 1056, and / or structured data for exposure and application data (including PFDs for application detection, application request information for multiple UEs 1002) for the NEF 1052. The Nudr service-based interface may be exhibited by the UDR 221 to allow the UDM 1058, PCF 1056, and NEF 1052 to access a particular set of the stored data, as well as to read, update (e g., add, modify), delete, and subscribe to notification of relevant data changes in the UDR. The UDM may include a UDM-FE, which is in charge of processing credentials, location management, subscription management and so on. Several different front ends may serve the same user in different transactions. The UDM- FE accesses subscription information stored in the UDR and performs authentication credential processing, user identification handling, access authorization, registration / mobility management, and subscription management. In addition to communicating with other NFs over reference points as shown, the UDM 1058 may exhibit the Nudm service-based interface.
[0127] AF 1060 provides application influence on traffic routing, provide access to NEF 1052, and interact with the policy framework for policy control. The AF 1060 may influence UPF 1048 (re)selection and traffic routing. Based on operator deployment, when AF 1060 is considered to be a trusted entity, the network operator may permit AF 1060 to interact directly with relevant NF s. Additionally, the AF 1060 may be used for edge computing implementations,
[0128] The 5GC 1040 may enable edge computing by selecting operator / 3rd party services to be geographically close to a point that the UE 1002 is attached to the network. This may reduce latency and load on the network. In edge computing implementations, the 5GC 1040 may select a UPF 1048 close to the UE 1002 and execute traffic steering from the UPF 1048 to DN 1036 via the N6 interface. This may be based on the UE subscription data, UE location, and information provided by the AF 1060, which allows the AF 1060 to influence UPF (re)selection and traffic routing. The data network (DN) 1036 may represent various network operator services, Internet access, or third party services that may be provided by one or more servers including, for example, application (app) / content server 1038. The DN 1036 may be an operator external public, a private PDN, or an intra-operator packet data network, for example, for provision of IMS services. In this embodiment, the app server 1038 can be coupled to an IMS via an S-CSCF or the I-CSCF. In some implementations, the DN 1036 may represent one or more local area DNs (LADNs), which are DNs 1036 (or DN names (DNNs)) that is / are accessible by a UE 1002 in one or more specific areas. Outside of these specific areas, the UE 1002 is not able to access the LADN / DN 1036.
[0129] Additionally or alternatively, the DN 1036 may be an Edge DN 1036, which is a (local) Data Network that supports the architecture for enabling edge applications. In these embodiments, the app server 1038 may represent the physical hardware systems / devices providing app server functionality and / or the application software resident in the cloud or at an edge compute node that performs server function(s). In some embodiments, the app / content server 1038 provides an edge hosting environment that provides support required for Edge Application Server's execution.
[0130] In some embodiments, the 5GS can use one or more edge compute nodes to provide an interface and offload processing of wireless communication traffic. In these embodiments, the edge compute nodes may be included in, or co-located with one or more RANIOIO, 1014. For example, the edge compute nodes can provide a connection between the RAN 1014 and UPF 1048 in the 5GC 1040. The edge compute nodes can use one or more NFV instances instantiated on virtualization infrastructure within the edge compute nodes to process wireless connections to and from the RAN 1014 and UPF 1048.
[0131] The interfaces of the 5GC 1040 include reference points and service-based itnterfaces. The reference points include: N1 (between the UE 1002 and the AMF 1044), N2 (between RAN 1014 and AMF 1044), N3 (between RAN 1014 and UPF 1048), N4 (between the SMF 1046 and UPF 1048), N5 (between PCF 1056 and AF 1060), N6 (between UPF 1048 and DN 1036), N7 (between SMF 1046 and PCF 1056), N8 (between UDM 1058 and AMF 1044), N9 (between two UPFs 1048), N10 (between the UDM 1058 and the SMF 1046), Ni l (between the AMF 1044 and the SMF 1046), N12 (between AUSF 1042 and AMF 1044), N13 (between AUSF 1042 and UDM 1058), N14 (between two AMFs 1044; not shown), N15 (between PCF 1056 and AMF 1044 in case of a non-roaming scenario, or between the PCF 1056 in a visited network and AMF 1044 in case of a roaming scenario), N16 (between two SMFs 1046; not shown), and N22 (between AMF 1044 and NSSF 1050). Other reference point representations not shown in FIG. 10 can also be used. The service-based representation of FIG. 10 represents NFs within the control plane that enable other authorized NFs to access their services. The service-based interfaces (SBIs) include: Namf (SBI exhibited by AMF 1044), Nsmf (SBI exhibited by SMF 1046), Nnef (SBI exhibited by NEF 1052), Npcf (SBI exhibited by PCF 1056), Nudm (SBI exhibited by the UDM 1058), Naf (SBI exhibited by AF 1060), Nnrf (SBI exhibited by NRF 1054), Nnssf (SBI exhibited by NSSF 1050), Nausf (SBI exhibited by AUSF 1042). Other service-based interfaces (e.g., Nudr, N5g-eir, and Nudsf) not shown in FIG. 10 can also be used. In some embodiments, the NEF 1052 can provide an interface to edge compute nodes 1036x, which can be used to process wireless connections with the RAN 1014. In some implementations, the system 1000 may include an SMSF, which is responsible for SMS subscription checking and verification, and relaying SM messages to / from the UE 1002 to / from other entities, such as an SMS-GMSC / IWMSC / SMS-router. The SMS may also interact with AMF 1044 and UDM 1058 for a notification procedure that the UE 1002 is available for SMS transfer (e.g., set a UE not reachable flag, and notifying UDM 1058 when UE 1002 is available for SMS).
[0132] The 5GS may also include an SCP (or individual instances of the SCP) that supports indirect communication (see e.g., 3GPP TS 23.501 section 7.1.1); delegated discovery (see e.g., 3GPP TS 23.501 section 7.1.1); message forwarding and routing to destination NF / NF service(s), communication security (e.g., authorization of the NF Service Consumer to access the NF Service Producer API) (see e.g., 3GPP TS 33.501), load balancing, monitoring, overload control, etc.; and discovery and selection functionality for UDM(s), AUSF(s), UDR(s), PCF(s) with access to subscription data stored in the UDR based on UE's SUPI, SUCI or GPSI (see e.g., 3GPP TS 23.501 section 6.3). Load balancing, monitoring, overload control functionality provided by the SCP may be implementation specific. The SCP may be deployed in a distributed manner. More than one SCP can be present in the communication path between various NF Services. The SCP, although not an NF instance, can also be deployed distributed, redundant, and scalable.
[0133] FIG. 11 schematically illustrates a wireless network 1100 in accordance with various embodiments. The wireless network 1100 may include a UE 1102 in wireless communication with an AN 1104. The UE 1102 and AN 1104 may be similar to, and substantially interchangeable with, like-named components described with respect to FIG. 10. The UE 1102 may be communicatively coupled with the AN 1104 via connection 1106. The connection 1106 is illustrated as an air interface to enable communicative coupling, and can be consistent with cellular communications protocols such as an LTE protocol or a 5G NR protocol operating at mmWave or sub-6GHz frequencies.
[0134] The UE 1102 may include a host platform 1108 coupled with a modem platform 1110. The host platform 1108 may include application processing circuitry 1112, which may be coupled with protocol processing circuitry 1114 of the modem platform 1110. The application processing circuitry 1112 may run various applications for the UE 1102 that source / sink application data. The application processing circuitry 1112 may further implement one or more layer operations to transmit / receive application data to / from a data network. These layer operations may include transport (for example UDP) and Internet (for example, IP) operations
[0135] The protocol processing circuitry 1114 may implement one or more of layer operations to facilitate transmission or reception of data over the connection 1106. The layer operations implemented by the protocol processing circuitry 1114 may include, for example, MAC, RLC, PDCP, RRC and NAS operations.
[0136] The modem platform 1110 may further include digital baseband circuitry 1116 that may implement one or more layer operations that are “below” layer operations performed by the protocol processing circuitry 1114 in a network protocol stack. These operations may include, for example, PHY operations including one or more of HARQ acknowledgement (ACK) functions, scrambling / descrambling, encoding / decoding, layer mapping / de-mapping, modulation symbol mapping, received symbol / bit metric determination, multi-antenna port precoding / decoding, which may include one or more of space-time, space-frequency or spatial coding, reference signal generation / detection, preamble sequence generation and / or decoding, synchronization sequence generation / detection, control channel signal blind decoding, and other related functions.
[0137] The modem platform 1110 may further include transmit circuitry 1118, receive circuitry 1120, RF circuitry 1122, and RF front end (RFFE) 1124, which may include or connect to one or more antenna panels 1126. Briefly, the transmit circuitry 1118 may include a digital-to-analog converter, mixer, intermediate frequency (IF) components, etc.; the receive circuitry 1120 may include an analog-to-digital converter, mixer, IF components, etc.; the RF circuitry 1122 may include a low-noise amplifier, a power amplifier, power tracking components, etc.; RFFE 1124 may include filters (for example, surface / bulk acoustic wave filters), switches, antenna tuners, beamforming components (for example, phase-array antenna components), etc. The selection and arrangement of the components of the transmit circuitry 1118, receive circuitry 1120, RF circuitry 1122, RFFE 1124, and antenna panels 1126 (referred generically as “transmit / receive components”) may be specific to details of a specific implementation such as, for example, whether communication is TDM or FDM, in mmWave or sub-6 gHz frequencies, etc. In some embodiments, the transmit / receive components may be arranged in multiple parallel transmit / receive chains, may be disposed in the same or different chips / modules, etc.
[0138] In some embodiments, the protocol processing circuitry 1114 may include one or more instances of control circuitry (not shown) to provide control functions for the transmit / receive components.
[0139] A UE 1102 reception may be established by and via the antenna panels 1126, RFFE 1124, RF circuitry 1122, receive circuitry 1120, digital baseband circuitry 1116, and protocol processing circuitry 1114. In some embodiments, the antenna panels 1126 may receive a transmission from the AN 1104 by receive-beamforming signals received by a plurality of antennas / antenna elements of the one or more antenna panels 1126.
[0140] A UE 1102 transmission may be established by and via the protocol processing circuitry 1114, digital baseband circuitry 1116, transmit circuitry 1118, RF circuitry 1122, RFFE 1124, and antenna panels 1126. In some embodiments, the transmit components of the UE 1104 may apply a spatial filter to the data to be transmitted to form a transmit beam emitted by the antenna elements of the antenna panels 1126.
[0141] Similar to the UE 1102, the AN 1104 may include a host platform 1128 coupled with a modem platform 1130. The host platform 1128 may include application processing circuitry 1132 coupled with protocol processing circuitry 1134 of the modem platform 1130. The modem platform may further include digital baseband circuitry 1136, transmit circuitry 1138, receive circuitry 1140, RF circuitry 1142, RFFE circuitry 1144, and antenna panels 1146. The components of the AN 1104 may be similar to and substantially interchangeable with like-named components of the UE 1102. In addition to performing data transmission / reception as described above, the components of the AN 1108 may perform various logical functions that include, for example, RNC functions such as radio bearer management, uplink and downlink dynamic radio resource management, and data packet scheduling. FIG. 12 illustrates components of a computing device 1200 according to some example embodiments, able to read instructions from a machine-readable or computer-readable medium (e.g., a non-transitory machine-readable storage medium) and perform any one or more of the methodologies discussed herein. Specifically, FIG. 12 shows a diagrammatic representation of hardware resources 1201 including one or more processors (or processor cores) 1210, one or more memory / storage devices 1220, and one or more communication resources 1230, each of which may be communicatively coupled via a bus 1240 or other interface circuitry. For embodiments where node virtualization (e.g., NFV) is utilized, a hypervisor 1202 may be executed to provide an execution environment for one or more network slices / sub-slices to utilize the hardware resources 1201.
[0142] The processors 1210 include, for example, processor 1212 and processor 1214. The processors 1210 include circuitry such as, but not limited to one or more processor cores and one or more of cache memory, low drop-out voltage regulators (LDOs), interrupt controllers, serial interfaces such as SPI, I2C or universal programmable serial interface circuit, real time clock (RTC), timer-counters including interval and watchdog timers, general purpose I / O, memory card controllers such as secure digital / multi-media card (SD / MMC) or similar, interfaces, mobile industry processor interface (MLPI) interfaces and Joint Test Access Group (JTAG) test access ports. The processors 1210 may be, for example, a central processing unit (CPU), reduced instruction set computing (RISC) processors, Acorn RISC Machine (ARM) processors, complex instruction set computing (CISC) processors, graphics processing units (GPUs), one or more Digital Signal Processors (DSPs) such as a baseband processor, Application-Specific Integrated Circuits (ASICs), an Field-Programmable Gate Array (FPGA), a radio-frequency integrated circuit (RFIC), one or more microprocessors or controllers, another processor (including those discussed herein), or any suitable combination thereof. In some implementations, the processor circuitry 1210 may include one or more hardware accelerators, which may be microprocessors, programmable processing devices (e.g., FPGA, complex programmable logic devices (CPLDs), etc.), or the like.
[0143] The memory / storage devices 1220 may include main memory, disk storage, or any suitable combination thereof. The memory / storage devices 1220 may include, but are not limited to, any type of volatile, non-volatile, or semi-volatile memory such as random access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM), synchronous DRAM (SDRAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), Flash memory, solid-state storage, phase change RAM (PRAM), resistive memory such as magnetoresistive random access memory (MRAM), etc., and may incorporate three-dimensional (3D) cross-point (XPOINT) memories from Intel® and Micron®. The memory / storage devices 1220 may also comprise persistent storage devices, which may be temporal and / or persistent storage of any type, including, but not limited to, non-volatile memory, optical, magnetic, and / or solid state mass storage, and so forth.
[0144] The communication resources 1230 may include interconnection or network interface controllers, components, or other suitable devices to communicate with one or more peripheral devices 1204 or one or more databases 1206 or other network elements via a network 1208. For example, the communication resources 1230 may include wired communication components (e.g., for coupling via USB, Ethernet, Ethernet, Ethernet over GRE Tunnels, Ethernet over Multiprotocol Label Switching (MPLS), Ethernet over USB, Controller Area Network (CAN), Local Interconnect Network (LIN), DeviceNet, ControlNet, Data Highway+, PROFIBUS, or PROFINET, among many others), cellular communication components, NFC components, Bluetooth® (or Bluetooth® Low Energy) components, WiFi® components, and other communication components. Network connectivity may be provided to / from the computing device 1200 via the communication resources 1230 using a physical connection, which may be electrical (e g., a “copper interconnect”) or optical. The physical connection also includes suitable input connectors (e g., ports, receptacles, sockets, etc.) and output connectors (e g., plugs, pins, etc.). The communication resources 1230 may include one or more dedicated processors and / or FPGAs to communicate using one or more of the aforementioned network interface protocols.
[0145] Instructions 1250 may comprise software, a program, an application, an applet, an app, or other executable code for causing at least any of the processors 1210 to perform any one or more of the methodologies discussed herein. The instructions 1250 may reside, completely or partially, within at least one of the processors 1210 (e.g., within the processor’s cache memory), the memory / storage devices 1220, or any suitable combination thereof. Furthermore, any portion of the instructions 1250 may be transferred to the hardware resources 1201 from any combination of the peripheral devices 1204 or the databases 1206. Accordingly, the memory of processors 1210, the memory / storage devices 1220, the peripheral devices 1204, and the databases 1206 are examples of computer-readable and machine-readable media. For one or more embodiments, at least one of the components set forth in one or more of the preceding figures may be configured to perform one or more operations, techniques, processes, and / or methods as set forth in the example section below. For example, the baseband circuitry as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below. For another example, circuitry associated with a UE, base station, network element, etc. as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below in the example section.
[0146] Additional examples of the presently described embodiments include the following, nonlimiting implementations. Each of the following non-limiting examples may stand on its own or may be combined in any permutation or combination with any one or more of the other examples provided below or throughout the present disclosure.
[0147] For one or more embodiments, at least one of the components set forth in one or more of the preceding figures may be configured to perform one or more operations, techniques, processes, and / or methods as set forth in the example section below. For example, the baseband circuitry as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below. For another example, circuitry associated with a UE, base station, network element, etc. as described above in connection with one or more of the preceding figures may be configured to operate in accordance with one or more of the examples set forth below.
[0148] The following examples pertain to further embodiments.
[0149] Example 1 may include an apparatus comprising decode a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; map the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitor for the results of the computing service if asynchronous results delivery may be indicated; and encode a CoAP acknowledgement (ACK) message indicating asynchronous data delivery.
[0150] Example 2 may include the apparatus of example 1 and / or some other example herein, wherein the processing circuitry may be further configured to incorporate a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
[0151] Example 3 may include the apparatus of example 2 and / or some other example herein, wherein the processing circuitry may be further configured to preserve the token of the CoAP message used in the service request and the mapping to a service ID.
[0152] Example 4 may include the apparatus of example 1 and / or some other example herein, wherein the processing circuitry may be further configured to select the SOCF based on Network Repository Function (NRF).
[0153] Example 5 may include the apparatus of example 1 and / or some other example herein, wherein the processing circuitry may be further configured to utilize Object Security for Constrained RESTful Environments (OSCORE).
[0154] Example 6 may include the apparatus of example 1 and / or some other example herein, wherein the processing circuitry may be further configured to encode a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response.
[0155] Example 7 may include the apparatus of example 2 and / or some other example herein, wherein the processing circuitry may be further configured to encode a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the service request.
[0156] Example 8 may include the apparatus of example 3 and / or some other example herein, wherein the processing circuitry retrieves the token by decoding the service ID preserved from the earlier processing steps.
[0157] Example 9 may include the apparatus of example 3 and / or some other example herein, wherein the processing circuitry may be further configured to decode a notification about the computing results with the service ID from a Comp SF and a Comp CF.
[0158] Example 10 may include the apparatus of example 1 and / or some other example herein, wherein the decoded CoAP message may include data and metadata as input for the computing service in a message body.
[0159] Example 11 may include a computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations comprising: decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitoring for the results of the computing service if asynchronous results delivery may be indicated; and encoding a CoAP acknowledgement (ACK) message indicating asynchronous data delivery.
[0160] Example 12 may include the computer-readable medium of example 11 and / or some other example herein, wherein the operations further comprise incorporating a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
[0161] Example 13 may include the computer-readable medium of example 12 and / or some other example herein, wherein the operations further comprise preserving the token of the CoAP message used in the service request and the mapping to a service ID.
[0162] Example 14 may include the computer-readable medium of example 11 and / or some other example herein, wherein the operations further comprise selecting the SOCF based on Network Repository Function (NRF).
[0163] Example 15 may include the computer-readable medium of example 11 and / or some other example herein, wherein the operations further comprise utilizing Object Security for Constrained RESTful Environments (OSCORE).
[0164] Example 16 may include the computer-readable medium of example 11 and / or some other example herein, wherein the operations further comprise encoding a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response.
[0165] Example 17 may include the computer-readable medium of example 12 and / or some other example herein, wherein the operations further comprise encoding a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the service request.
[0166] Example 18 may include the computer-readable medium of example 13 and / or some other example herein, wherein the operations further comprise retrieving the token by decoding the service ID preserved from the earlier processing steps. Example 19 may include the computer-readable medium of example 13 and / or some other example herein, wherein the operations further comprise decoding a notification about the computing results with the service ID from a Comp SF and a Comp CF.
[0167] Example 20 may include the computer-readable medium of example 11 and / or some other example herein, wherein the decoded CoAP message may include data and metadata as input for the computing service in a message body.
[0168] Example 21 may include a method comprising: decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitoring for the results of the computing service if asynchronous results delivery may be indicated; and encoding a CoAP acknowledgment (ACK) message indicating asynchronous data delivery.
[0169] Example 22 may include the method of example 21 and / or some other example herein, further comprising incorporating a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
[0170] Example 23 may include the method of example 22 and / or some other example herein, further comprising preserving the token of the CoAP message used in the service request and the mapping to a service ID.
[0171] Example 24 may include the method of example 21 and / or some other example herein, further comprising selecting the SOCF based on Network Repository Function (NRF).
[0172] Example 25 may include the method of example 21 and / or some other example herein, further comprising utilizing Object Security for Constrained RESTful Environments (OSCORE).
[0173] Example 26 may include the method of example 21 and / or some other example herein, further comprising encoding a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response.
[0174] Example 27 may include the method of example 22 and / or some other example herein, further comprising encoding a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the service request. Example 28 may include the method of example 23 and / or some other example herein, further comprising retrieving the token by decoding the service ID preserved from the earlier processing steps.
[0175] Example 29 may include the method of example 23 and / or some other example herein, further comprising decoding a notification about the computing results with the service ID from a Comp SF and a Comp CF.
[0176] Example 30 may include the method of example 21 and / or some other example herein, wherein the decoded CoAP message may include data and metadata as input for the computing service in a message body.
[0177] Example 31 may include an apparatus comprising means for: decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitoring for the results of the computing service if asynchronous results delivery may be indicated; and encoding a CoAP acknowledgment (ACK) message indicating asynchronous data delivery.
[0178] Example 32 may include the apparatus of example 31 and / or some other example herein, further comprising incorporating a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
[0179] Example 33 may include the apparatus of example 32 and / or some other example herein, further comprising preserving the token of the CoAP message used in the service request and the mapping to a service ID.
[0180] Example 34 may include the apparatus of example 31 and / or some other example herein, further comprising selecting the SOCF based on Network Repository Function (NRF).
[0181] Example 35 may include the apparatus of example 31 and / or some other example herein, further comprising utilizing Object Security for Constrained RESTful Environments (OSCORE).
[0182] Example 36 may include the apparatus of example 31 and / or some other example herein, further comprising encoding a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response. Example 37 may include the apparatus of example 32 and / or some other example herein, further comprising encoding a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the service request.
[0183] Example 38 may include an apparatus comprising means for performing any of the methods of examples 1-37.
[0184] Example 39 may include a network node comprising a communication interface and processing circuitry connected thereto and configured to perform the methods of examples 1-37, wherein the network node may be a basestation (e.g., NodeB, eNodeB, gNodeB, or other nomenclature for a base station based on the generation of a cellular network).
[0185] Example 40 may include an apparatus comprising means to perform one or more elements of a method described in or related to any of examples 1-37, or any other method or process described herein.
[0186] Example 41 may include one or more non-transitory computer-readable media comprising instructions to cause an electronic device, upon execution of the instructions by one or more processors of the electronic device, to perform one or more elements of a method described in or related to any of examples 1-37 or any other method or process described herein.
[0187] Example 42 may include an apparatus comprising logic, modules, or circuitry to perform one or more elements of a method described in or related to any of examples 1-37, or any other method or process described herein.
[0188] Example 43 may include a method, technique, or process as described in or related to any of examples 1-37, or portions or parts thereof.
[0189] Example 44 may include an apparatus comprising: one or more processors and one or more computer-readable media comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform the method, techniques, or process as described in or related to any of examples 1-37, or portions thereof.
[0190] Example 454 may include a signal as described in or related to any of examples 1-37, or portions or parts thereof.
[0191] Example 46 may include a datagram, packet, frame, segment, protocol data unit (PDU), or message as described in or related to any of examples 1-37, or portions or parts thereof, or otherwise described in the present disclosure. Example 47 may include a signal encoded with data as described in or related to any of examples 1-37, or portions or parts thereof, or otherwise described in the present disclosure.
[0192] Example 48 may include a signal encoded with a datagram, packet, frame, segment, protocol data unit (PDU), or message as described in or related to any of examples 1 -37, or portions or parts thereof, or otherwise described in the present disclosure.
[0193] Example 49 may include an electromagnetic signal carrying computer-readable instructions, wherein execution of the computer-readable instructions by one or more processors is to cause the one or more processors to perform the method, techniques, or process as described in or related to any of examples 1-37, or portions thereof.
[0194] Example 50 may include a computer program comprising instructions, wherein execution of the program by a processing element is to cause the processing element to carry out the method, techniques, or process as described in or related to any of examples 1-37, or portions thereof.
[0195] Example 51 may include a signal in a wireless network as shown and described herein.
[0196] Example 52 may include a method of communicating in a wireless network as shown and described herein.
[0197] Example 53 may include a system for providing wireless communication as shown and described herein.
[0198] Example 54 may include a device for providing wireless communication as shown and described herein.
[0199] An example implementation is an edge computing system, including respective edge processing devices and nodes to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is a client endpoint node, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an aggregation node, network hub node, gateway node, or core data processing node, within or coupled to an edge computing system, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an access point, base station, road-side unit, street-side unit, or on-premise unit, within or coupled to an edge computing system, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an edge provisioning node, service orchestration node, application orchestration node, or multi-tenant management node, within or coupled to an edge computing system, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an edge node operating an edge provisioning service, application or service orchestration service, virtual machine deployment, container deployment, function deployment, and compute management, within or coupled to an edge computing system, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an edge computing system operable as an edge mesh, as an edge mesh with side car loading, or with mesh-to-mesh communications, operable to invoke or perform the operations of the examples above, or other subject matter described herein. Another example implementation is an edge computing system including aspects of network functions, acceleration functions, acceleration hardware, storage hardware, or computation hardware resources, operable to invoke or perform the use cases discussed herein, with use of the examples above, or other subject matter described herein. Another example implementation is an edge computing system adapted for supporting client mobility, vehicle-to-vehicle (V2V), vehicle-to-everything (V2X), or vehicle-to- infrastructure (V2I) scenarios, and optionally operating according to ETSI MEC specifications, operable to invoke or perform the use cases discussed herein, with use of the examples above, or other subject matter described herein. Another example implementation is an edge computing system adapted for mobile wireless communications, including configurations according to an 3GPP 4G / LTE or 5G network capabilities, operable to invoke or perform the use cases discussed herein, with use of the examples above, or other subject matter described herein. Another example implementation is a computing system adapted for network communications, including configurations according to an O-RAN capabilities, operable to invoke or perform the use cases discussed herein, with use of the examples above, or other subject matter described herein.
[0200] Any of the above-described examples may be combined with any other example (or combination of examples), unless explicitly stated otherwise. The foregoing description of one or more implementations provides illustration and description, but is not intended to be exhaustive or to limit the scope of embodiments to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments. TERMINOLOGY
[0201] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. As used herein, the singular forms “a,” “an” and “the” are intended to include plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and / or “comprising,” when used in this specification, specific the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operation, elements, components, and / or groups thereof.
[0202] For the purposes of the present disclosure, the phrase “A and / or B” means (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, and / or C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C). The description may use the phrases “in an embodiment,” or “In some embodiments,” which may each refer to one or more of the same or different embodiments. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments of the present disclosure, are synonymous.
[0203] The terms “coupled,” “communicatively coupled,” along with derivatives thereof are used herein. The term “coupled” may mean two or more elements are in direct physical or electrical contact with one another, may mean that two or more elements indirectly contact each other but still cooperate or interact with each other, and / or may mean that one or more other elements are coupled or connected between the elements that are said to be coupled with each other. The term “directly coupled” may mean that two or more elements are in direct contact with one another. The term “communicatively coupled” may mean that two or more elements may be in contact with one another by a means of communication including through a wire or other interconnect connection, through a wireless communication channel or ink, and / or the like.
[0204] The term “circuitry” as used herein refers to, is part of, or includes hardware components such as an electronic circuit, a logic circuit, a processor (shared, dedicated, or group) and / or memory (shared, dedicated, or group), an Application Specific Integrated Circuit (ASIC), a field- programmable device (FPD) (e.g., a field-programmable gate array (FPGA), a programmable logic device (PLD), a complex PLD (CPLD), a high-capacity PLD (HCPLD), a structured ASIC, or a programmable SoC), digital signal processors (DSPs), etc., that are configured to provide the described functionality. In some embodiments, the circuitry may execute one or more software or firmware programs to provide at least some of the described functionality. The term “circuitry” may also refer to a combination of one or more hardware elements (or a combination of circuits used in an electrical or electronic system) with the program code used to carry out the functionality of that program code. In these embodiments, the combination of hardware elements and program code may be referred to as a particular type of circuitry.
[0205] The term “processor circuitry” as used herein refers to, is part of, or includes circuitry capable of sequentially and automatically carrying out a sequence of arithmetic or logical operations, or recording, storing, and / or transferring digital data. Processing circuitry may include one or more processing cores to execute instructions and one or more memory structures to store program and data information. The term “processor circuitry” may refer to one or more application processors, one or more baseband processors, a physical central processing unit (CPU), a singlecore processor, a dual-core processor, a triple-core processor, a quad-core processor, and / or any other device capable of executing or otherwise operating computer-executable instructions, such as program code, software modules, and / or functional processes. Processing circuitry may include more hardware accelerators, which may be microprocessors, programmable processing devices, or the like. The one or more hardware accelerators may include, for example, computer vision (CV) and / or deep learning (DL) accelerators. The terms “application circuitry” and / or “baseband circuitry” may be considered synonymous to, and may be referred to as, “processor circuitry.”
[0206] The term “memory” and / or “memory circuitry” as used herein refers to one or more hardware devices for storing data, including RAM, MRAM, PRAM, DRAM, and / or SDRAM, core memory, ROM, magnetic disk storage mediums, optical storage mediums, flash memory devices or other machine readable mediums for storing data. The term “computer-readable medium” may include, but is not limited to, memory, portable or fixed storage devices, optical storage devices, and various other mediums capable of storing, containing or carrying instructions or data.
[0207] The term “interface circuitry” as used herein refers to, is part of, or includes circuitry that enables the exchange of information between two or more components or devices. The term “interface circuitry” may refer to one or more hardware interfaces, for example, buses, I / O interfaces, peripheral component interfaces, network interface cards, and / or the like. The term “user equipment” or “UE” as used herein refers to a device with radio communication capabilities and may describe a remote user of network resources in a communications network. The term “user equipment” or “UE” may be considered synonymous to, and may be referred to as, client, mobile, mobile device, mobile terminal, user terminal, mobile unit, mobile station, mobile user, subscriber, user, remote station, access agent, user agent, receiver, radio equipment, reconfigurable radio equipment, reconfigurable mobile device, etc. Furthermore, the term “user equipment” or “UE” may include any type of wireless / wired device or any computing device including a wireless communications interface.
[0208] The term “network element” as used herein refers to physical or virtualized equipment and / or infrastructure used to provide wired or wireless communication network services. The term “network element” may be considered synonymous to and / or referred to as a networked computer, networking hardware, network equipment, network node, router, switch, hub, bridge, radio network controller, RAN device, RAN node, gateway, server, virtualized VNF, NFVI, and / or the like.
[0209] The term “computer system” as used herein refers to any type interconnected electronic devices, computer devices, or components thereof. Additionally, the term “computer system” and / or “system” may refer to various components of a computer that are communicatively coupled with one another. Furthermore, the term “computer system” and / or “system” may refer to multiple computer devices and / or multiple computing systems that are communicatively coupled with one another and configured to share computing and / or networking resources.
[0210] The term “appliance,” “computer appliance,” or the like, as used herein refers to a computer device or computer system with program code (e.g., software or firmware) that is specifically designed to provide a specific computing resource. A “virtual appliance” is a virtual machine image to be implemented by a hypervisor-equipped device that virtualizes or emulates a computer appliance or otherwise is dedicated to provide a specific computing resource. The term “element” refers to a unit that is indivisible at a given level of abstraction and has a clearly defined boundary, wherein an element may be any type of entity including, for example, one or more devices, systems, controllers, network elements, modules, etc., or combinations thereof. The term “device” refers to a physical entity embedded inside, or attached to, another physical entity in its vicinity, with capabilities to convey digital information from or to that physical entity. The term “entity” refers to a distinct component of an architecture or device, or information transferred as a payload. The term “controller” refers to an element or entity that has the capability to affect a physical entity, such as by changing its state or causing the physical entity to move.
[0211] The term “cloud computing” or “cloud” refers to a paradigm for enabling network access to a scalable and elastic pool of shareable computing resources with self-service provisioning and administration on-demand and without active management by users. Cloud computing provides cloud computing services (or cloud services), which are one or more capabilities offered via cloud computing that are invoked using a defined interface (e.g., an API or the like). The term “computing resource” or simply “resource” refers to any physical or virtual component, or usage of such components, of limited availability within a computer system or network. Examples of computing resources include usage / access to, for a period of time, servers, processor(s), storage equipment, memory devices, memory areas, networks, electrical power, input / output (peripheral) devices, mechanical devices, network connections (e g., channel s / links, ports, network sockets, etc.), operating systems, virtual machines (VMs), software / applications, computer files, and / or the like. A “hardware resource” may refer to compute, storage, and / or network resources provided by physical hardware element(s). A “virtualized resource” may refer to compute, storage, and / or network resources provided by virtualization infrastructure to an application, device, system, etc. The term “network resource” or “communication resource” may refer to resources that are accessible by computer devices / systems via a communications network. The term “system resources” may refer to any kind of shared entities to provide services, and may include computing and / or network resources. System resources may be considered as a set of coherent functions, network data objects or services, accessible through a server where such system resources reside on a single host or multiple hosts and are clearly identifiable. As used herein, the term “cloud service provider” (or CSP) indicates an organization which operates typically large-scale “cloud” resources comprised of centralized, regional, and edge data centers (e g., as used in the context of the public cloud). In other examples, a CSP may also be referred to as a Cloud Service Operator (CSO). References to “cloud computing” generally refer to computing resources and services offered by a CSP or a CSO, at remote locations with at least some increased latency, distance, or constraints relative to edge computing.
[0212] As used herein, the term “data center” refers to a purpose-designed structure that is intended to house multiple high-performance compute and data storage nodes such that a large amount of compute, data storage and network resources are present at a single location. This often entails specialized rack and enclosure systems, suitable heating, cooling, ventilation, security, fire suppression, and power delivery systems. The term may also refer to a compute and data storage node in some contexts. A data center may vary in scale between a centralized or cloud data center (e.g., largest), regional data center, and edge data center (e.g., smallest).
[0213] As used herein, the term “edge computing” refers to the implementation, coordination, and use of computing and resources at locations closer to the “edge” or collection of “edges” of a network. Deploying computing resources at the network’s edge may reduce application and network latency, reduce network backhaul traffic and associated energy consumption, improve service capabilities, improve compliance with security or data privacy requirements (especially as compared to conventional cloud computing), and improve total cost of ownership). As used herein, the term “edge compute node” refers to a real -world, logical, or virtualized implementation of a compute-capable element in the form of a device, gateway, bridge, system or subsystem, component, whether operating in a server, client, endpoint, or peer mode, and whether located at an “edge” of an network or at a connected location further within the network. References to a “node” used herein are generally interchangeable with a “device”, “component”, and “subsystem”; however, references to an “edge computing system” or “edge computing network” generally refer to a distributed architecture, organization, or collection of multiple nodes and devices, and which is organized to accomplish or offer some aspect of services or resources in an edge computing setting.
[0214] Additionally or alternatively, the term “Edge Computing” refers to a concept, as described in [6], that enables operator and 3rd party services to be hosted close to the UE's access point of attachment, to achieve an efficient service delivery through the reduced end-to-end latency and load on the transport network. As used herein, the term “Edge Computing Service Provider” refers to a mobile network operator or a 3rd party service provider offering Edge Computing service. As used herein, the term “Edge Data Network” refers to a local Data Network (DN) that supports the architecture for enabling edge applications. As used herein, the term “Edge Hosting Environment” refers to an environment providing support required for Edge Application Server's execution. As used herein, the term “Application Server” refers to application software resident in the cloud performing the server function.
[0215] The term “Internet of Things” or “IoT” refers to a system of interrelated computing devices, mechanical and digital machines capable of transferring data with little or no human interaction, and may involve technologies such as real-time analytics, machine learning and / or Al, embedded systems, wireless sensor networks, control systems, automation (e.g., smarthome, smart building and / or smart city technologies), and the like. loT devices are usually low-power devices without heavy compute or storage capabilities. “Edge loT devices” may be any kind of loT devices deployed at a network’s edge.
[0216] As used herein, the term “cluster” refers to a set or grouping of entities as part of an edge computing system (or systems), in the form of physical entities (e.g., different computing systems, networks or network groups), logical entities (e g., applications, functions, security constructs, containers), and the like. In some locations, a “cluster” is also referred to as a “group” or a “domain”. The membership of cluster may be modified or affected based on conditions or functions, including from dynamic or property-based membership, from network or system management scenarios, or from various example techniques discussed below which may add, modify, or remove an entity in a cluster. Clusters may also include or be associated with multiple layers, levels, or properties, including variations in security features and results based on such layers, levels, or properties.
[0217] The term “application” may refer to a complete and deployable package, environment to achieve a certain function in an operational environment. The term “Al / ML application” or the like may be an application that contains some AI / ML models and application-level descriptions. The term “machine learning” or “ML” refers to the use of computer systems implementing algorithms and / or statistical models to perform specific task(s) without using explicit instructions, but instead relying on patterns and inferences. ML algorithms build or estimate mathematical model(s) (referred to as “ML models” or the like) based on sample data (referred to as “training data,” “model training information,” or the like) in order to make predictions or decisions without being explicitly programmed to perform such tasks. Generally, an ML algorithm is a computer program that learns from experience with respect to some task and some performance measure, and an ML model may be any object or data structure created after an ML algorithm is trained with one or more training datasets. After training, an ML model may be used to make predictions on new datasets. Although the term “ML algorithm” refers to different concepts than the term “ML model,” these terms as discussed herein may be used interchangeably for the purposes of the present disclosure. The term “machine learning model,” “ML model,” or the like may also refer to ML methods and concepts used by an ML-assisted solution. An “ML-assisted solution” is a solution that addresses a specific use case using ML algorithms during operation. ML models include supervised learning (e.g., linear regression, k-nearest neighbor (KNN), decision tree algorithms, support machine vectors, Bayesian algorithm, ensemble algorithms, etc.) unsupervised learning (e.g., K-means clustering, principle component analysis (PCA), etc.), reinforcement learning (e.g., Q-learning, multi-armed bandit learning, deep RL, etc.), neural networks, and the like. Depending on the implementation a specific ML model could have many sub-models as components and the ML model may train all sub-models together. Separately trained ML models can also be chained together in an ML pipeline during inference. An “ML pipeline” is a set of functionalities, functions, or functional entities specific for an ML-assisted solution; an ML pipeline may include one or several data sources in a data pipeline, a model training pipeline, a model evaluation pipeline, and an actor. The “actor” is an entity that hosts an ML assisted solution using the output of the ML model inference). The term “ML training host” refers to an entity, such as a network function, that hosts the training of the model. The term “ML inference host” refers to an entity, such as a network function, that hosts model during inference mode (which includes both the model execution as well as any online learning if applicable). The ML-host informs the actor about the output of the ML algorithm, and the actor takes a decision for an action (an “action” is performed by an actor as a result of the output of an ML assisted solution). The term “model inference information” refers to information used as an input to the ML model for determining inference(s); the data used to train an ML model and the data used to determine inferences may overlap, however, “training data” and “inference data” refer to different concepts.
[0218] The terms “instantiate,” “instantiation,” and the like as used herein refers to the creation of an instance. An “instance” also refers to a concrete occurrence of an object, which may occur, for example, during execution of program code. The term “information element” refers to a structural element containing one or more fields. The term “field” refers to individual contents of an information element, or a data element that contains content. As used herein, a “database object”, “data structure”, or the like may refer to any representation of information that is in the form of an object, attribute-value pair (A VP), key -value pair (KVP), tuple, etc., and may include variables, data structures, functions, methods, classes, database records, database fields, database entities, associations between data and / or database entities (also referred to as a “relation”), blocks and links between blocks in block chain implementations, and / or the like.
[0219] An “information object,” as used herein, refers to a collection of structured data and / or any representation of information, and may include, for example electronic documents (or “documents”), database objects, data structures, files, audio data, video data, raw data, archive files, application packages, and / or any other like representation of information. The terms “electronic document” or “document,” may refer to a data structure, computer file, or resource used to record data, and includes various file types and / or data formats such as word processing documents, spreadsheets, slide presentations, multimedia items, webpage and / or source code documents, and / or the like. As examples, the information objects may include markup and / or source code documents such as HTML, XML, JSON, Apex®, CSS, JSP, MessagePack™, Apache® Thrift™, ASN.l, Google® Protocol Buffers (protobuf), or some other document(s) / format(s) such as those discussed herein. An information object may have both a logical and a physical structure. Physically, an information object comprises one or more units called entities. An entity is a unit of storage that contains content and is identified by a name. An entity may refer to other entities to cause their inclusion in the information object. An information object begins in a document entity, which is also referred to as a root element (or "root"). Logically, an information object comprises one or more declarations, elements, comments, character references, and processing instructions, all of which are indicated in the information object (e.g., using markup).
[0220] The term “data item” as used herein refers to an atomic state of a particular object with at least one specific property at a certain point in time. Such an object is usually identified by an object name or object identifier, and properties of such an object are usually defined as database objects (e.g., fields, records, etc.), object instances, or data elements (e.g., mark-up language elements / tags, etc.). Additionally or alternatively, the term “data item” as used herein may refer to data elements and / or content items, although these terms may refer to difference concepts. The term “data element” or “element” as used herein refers to a unit that is indivisible at a given level of abstraction and has a clearly defined boundary. A data element is a logical component of an information object (e.g., electronic document) that may begin with a start tag (e.g., “<element>”) and end with a matching end tag (e.g., “< / element>”), or only has an empty element tag (e.g., “<element / >”). Any characters between the start tag and end tag, if any, are the element’s content (referred to herein as “content items” or the like).
[0221] The content of an entity may include one or more content items, each of which has an associated datatype representation. A content item may include, for example, attribute values, character values, URIs, qualified names (qnames), parameters, and the like. A qname is a fully qualified name of an element, attribute, or identifier in an information object. A qname associates a URI of a namespace with a local name of an element, attribute, or identifier in that namespace. To make this association, the qname assigns a prefix to the local name that corresponds to its namespace. The qname comprises a URI of the namespace, the prefix, and the local name. Namespaces are used to provide uniquely named elements and attributes in information objects. Content items may include text content (e.g., “<element>content item< / element>”), attributes (e g., “<element attribute="attributeValue">”), and other elements referred to as “child elements” (e g., “<elementl><element2>content item< / element2>< / elementl>”). An “attribute” may refer to a markup construct including a name-value pair that exists within a start tag or empty element tag. Attributes contain data related to its element and / or control the element’s behavior.
[0222] The term “channel” as used herein refers to any transmission medium, either tangible or intangible, which is used to communicate data or a data stream. The term “channel” may be synonymous with and / or equivalent to “communications channel,” “data communications channel,” “transmission channel,” “data transmission channel,” “access channel,” “data access channel,” “link,” “data link,” “carrier,” “radiofrequency carrier,” and / or any other like term denoting a pathway or medium through which data is communicated. Additionally, the term “link” as used herein refers to a connection between two devices through a RAT for the purpose of transmitting and receiving information. As used herein, the term “radio technology” refers to technology for wireless transmission and / or reception of electromagnetic radiation for information transfer. The term “radio access technology” or “RAT” refers to the technology used for the underlying physical connection to a radio based communication network. As used herein, the term “communication protocol” (either wired or wireless) refers to a set of standardized rules or instructions implemented by a communication device and / or system to communicate with other devices and / or systems, including instructions for packetizing / depacketizing data, modulating / demodulating signals, implementation of protocols stacks, and / or the like. As used herein, the term “radio technology” refers to technology for wireless transmission and / or reception of electromagnetic radiation for information transfer. The term “radio access technology” or “RAT” refers to the technology used for the underlying physical connection to a radio based communication network. As used herein, the term “communication protocol” (either wired or wireless) refers to a set of standardized rules or instructions implemented by a communication device and / or system to communicate with other devices and / or systems, including instructions for packetizing / depacketizing data, modulating / demodulating signals, implementation of protocols stacks, and / or the like. Examples of wireless communications protocols may be used in various embodiments include a Global System for Mobile Communications (GSM) radio communication technology, a General Packet Radio Service (GPRS) radio communication technology, an Enhanced Data Rates for GSM Evolution (EDGE) radio communication technology, and / or a Third Generation Partnership Project (3GPP) radio communication technology including, for example, 3GPP Fifth Generation (5G) or New Radio (NR), Universal Mobile Telecommunications System (UMTS), Freedom of Multimedia Access (FOMA), Long Term Evolution (LTE), LTE- Advanced (LTE Advanced), LTE Extra, LTE-A Pro, cdmaOne (2G), Code Division Multiple Access 2000 (CDMA 2000), Cellular Digital Packet Data (CDPD), Mobitex, Circuit Switched Data (CSD), High-Speed CSD (HSCSD), Universal Mobile Telecommunications System (UMTS), Wideband Code Division Multiple Access (W-CDM), High Speed Packet Access (HSPA), HSPA Plus (HSPA+), Time Division-Code Division Multiple Access (TD-CDMA), Time Division-Synchronous Code Division Multiple Access (TD-SCDMA), LTE LAA, MuLTEfire, UMTS Terrestrial Radio Access (UTRA), Evolved UTRA (E-UTRA), Evolution-Data Optimized or Evolution-Data Only (EV-DO), Advanced Mobile Phone System (AMPS), Digital AMPS (D-AMPS), Total Access Communication System / Extended Total Access Communication System (TACS / ETACS), Push-to-talk (PTT), Mobile Telephone System (MTS), Improved Mobile Telephone System (IMTS), Advanced Mobile Telephone System (AMTS), Cellular Digital Packet Data (CDPD), DataTAC, Integrated Digital Enhanced Network (iDEN), Personal Digital Cellular (PDC), Personal Handy-phone System (PHS), Wideband Integrated Digital Enhanced Network (WiDEN), iBurst, Unlicensed Mobile Access (UMA), also referred to as also referred to as 3 GPP Generic Access Network, or GAN standard), Bluetooth®, Bluetooth Low Energy (BLE), IEEE 802.15.4 based protocols (e.g., IPv6 over Low power Wireless Personal Area Networks (6L0WPAN), WirelessHART, MiWi, Thread, 802.11a, etc.) WiFi-direct, ANT / ANT+, ZigBee, Z-Wave, 3GPP device-to-device (D2D) or Proximity Services (ProSe), Universal Plug and Play (UPnP), Low-Power Wide- Area-Network (LPWAN), Long Range Wide Area Network (LoRA) or LoRaWAN™ developed by Semtech and the LoRa Alliance, Sigfox, Wireless Gigabit Alliance (WiGig) standard, Worldwide Interoperability for Microwave Access (WiMAX), mmWave standards in general (e g., wireless systems operating at 10-300 GHz and above such as WiGig, IEEE 802. Had, IEEE 802. Hay, etc.), V2X communication technologies (including 3GPP C-V2X), Dedicated Short Range Communications (DSRC) communication systems such as Intelligent-Transport-Systems (ITS) including the European ITS-G5, ITS-G5B, ITS-G5C, etc. In addition to the standards listed above, any number of satellite uplink technologies may be used for purposes of the present disclosure including, for example, radios compliant with standards issued by the International Telecommunication Union (ITU), or the European Telecommunications Standards Institute (ETSI), among others. The examples provided herein are thus understood as being applicable to various other communication technologies, both existing and not yet formulated.
[0223] The term “access network” refers to any network, using any combination of radio technologies, RATs, and / or communication protocols, used to connect user devices and service providers. In the context of WLANs, an “access network” is an IEEE 802 local area network (LAN) or metropolitan area network (MAN) between terminals and access routers connecting to provider services. The term “access router” refers to router that terminates a medium access control (MAC) service from terminals and forwards user traffic to information servers according to Internet Protocol (IP) addresses.
[0224] The term “SMTC” refers to an SSB-based measurement timing configuration configured by SSB-MeasiirementTimingConfigiiration. The term “SSB” refers to a synchronization signal / Physical Broadcast Channel (SS / PBCH) block, which includes a Primary Syncrhonization Signal (PSS), a Secondary Syncrhonization Signal (SSS), and a PBCH. The term “a “Primary Cell” refers to the MCG cell, operating on the primary frequency, in which the UE either performs the initial connection establishment procedure or initiates the connection re-establishment procedure. The term “Primary SCG Cell” refers to the SCG cell in which the UE performs random access when performing the Reconfiguration with Sync procedure for DC operation. The term “Secondary Cell” refers to a cell providing additional radio resources on top of a Special Cell for a UE configured with CA. The term “Secondary Cell Group” refers to the subset of serving cells comprising the PSCell and zero or more secondary cells for a UE configured with DC. The term “Serving Cell” refers to the primary cell for a UE in RRC_CONNECTED not configured with CA / DC there is only one serving cell comprising of the primary cell. The term “serving cell” or “serving cells” refers to the set of cells comprising the Special Cell(s) and all secondary cells for a UE in RRC CONNECTED configured with CA. The term “Special Cell” refers to the PCell of the MCG or the PSCell of the SCG for DC operation; otherwise, the term “Special Cell” refers to the Pcell.
[0225] The term “Al policy” refers to a type of declarative policies expressed using formal statements that enable the non-RT RIC function in the SMO to guide the near-RT RIC function, and hence the RAN, towards better fulfilment of the RAN intent.
[0226] The term “Al Enrichment information” refers to information utilized by near-RT RIC that is collected or derived at SMO / non-RT RIC either from non-network data sources or from network functions themselves.
[0227] The term “Al -Policy Based Traffic Steering Process Mode” refers to an operational mode in which the Near-RT RIC is configured through Al Policy to use Traffic Steering Actions to ensure a more specific notion of network performance (for example, applying to smaller groups of E2 Nodes and UEs in the RAN) than that which it ensures in the Background Traffic Steering.
[0228] The term “Background Traffic Steering Processing Mode” refers to an operational mode in which the Near-RT RIC is configured through 01 to use Traffic Steering Actions to ensure a general background network performance which applies broadly across E2 Nodes and UEs in the RAN.
[0229] The term “Baseline RAN Behavior” refers to the default RAN behavior as configured at the E2 Nodes by SMO
[0230] The term “E2” refers to an interface connecting the Near-RT RIC and one or more 0-CU- CPs, one or more O-CU-UPs, one or more O-DUs, and one or more O-eNBs.
[0231] The term “E2 Node” refers to a logical node terminating E2 interface. In this version of the specification, ORAN nodes terminating E2 interface are: for NR access: O-CU-CP, 0-CU-UP, 0-DU or any combination; and for E-UTRA access: 0-eNB.
[0232] The term “Intents”, in the context of 0-RAN systems / implementations, refers to declarative policy to steer or guide the behavior of RAN functions, allowing the RAN function to calculate the optimal result to achieve stated objective. The term “O-RAN non-real-time RAN Intelligent Controller” or “non-RT RIC” refers to a logical function that enables non-real-time control and optimization of RAN elements and resources, AI / ML workflow including model training and updates, and policy-based guidance of applications / features in Near-RT RIC.
[0233] The term “Near-RT RIC” or “O-RAN near-real-time RAN Intelligent Controller” refers to a logical function that enables near-real-time control and optimization of RAN elements and resources via fine-grained (e.g., UE basis, Cell basis) data collection and actions over E2 interface.
[0234] The term “O-RAN Central Unit” or “O-CU” refers to a logical node hosting RRC, SDAP and PDCP protocols.
[0235] The term “O-RAN Central Unit - Control Plane” or “O-CU-CP” refers to a logical node hosting the RRC and the control plane part of the PDCP protocol.
[0236] The term “O-RAN Central Unit - User Plane” or “O-CU-UP” refers to a logical node hosting the user plane part of the PDCP protocol and the SDAP protocol
[0237] The term “O-RAN Distributed Unit” or “O-DU” refers to a logical node hosting RLC / MAC / High-PHY layers based on a lower layer functional split.
[0238] The term “O-RAN eNB” or “O-eNB” refers to an eNB or ng-eNB that supports E2 interface.
[0239] The term “O-RAN Radio Unit” or “O-RU” refers to a logical node hosting Low-PHY layer and RF processing based on a lower layer functional split. This is similar to 3GPP’s “TRP” or “RRH” but more specific in including the Low-PHY layer (FFT / iFFT, PRACH extraction).
[0240] The term “01” refers to an interface between orchestration & management entities (Orchestration / NMS) and O-RAN managed elements, for operation and management, by which FCAPS management, Software management, File management and other similar functions shall be achieved.
[0241] The term “RAN UE Group” refers to an aggregations of UEs whose grouping is set in the E2 nodes through E2 procedures also based on the scope of Al policies. These groups can then be the target of E2 CONTROL or POLICY messages.
[0242] The term “Traffic Steering Action” refers to the use of a mechanism to alter RAN behavior. Such actions include E2 procedures such as CONTROL and POLICY.
[0243] The term “Traffic Steering Inner Loop” refers to the part of the Traffic Steering processing, triggered by the arrival of periodic TS related KPM (Key Performance Measurement) from E2 Node, which includes UE grouping, setting additional data collection from the RAN, as well as selection and execution of one or more optimization actions to enforce Traffic Steering policies.
[0244] The term “Traffic Steering Outer Loop” refers to the part of the Traffic Steering processing, triggered by the near-RT RIC setting up or updating Traffic Steering aware resource optimization procedure based on information from Al Policy setup or update, Al Enrichment Information (El) and / or outcome of Near-RT RIC evaluation, which includes the initial configuration (preconditions) and injection of related Al policies, Triggering conditions for TS changes.
[0245] The term “Traffic Steering Processing Mode” refers to an operational mode in which either the RAN or the Near-RT RIC is configured to ensure a particular network performance. This performance includes such aspects as cell load and throughput, and can apply differently to different E2 nodes and UEs. Throughout this process, Traffic Steering Actions are used to fulfill the requirements of this configuration.
[0246] The term “Traffic Steering Target” refers to the intended performance result that is desired from the network, which is configured to Near-RT RIC over 01.
[0247] Furthermore, any of the disclosed embodiments and example implementations can be embodied in the form of various types of hardware, software, firmware, middleware, or combinations thereof, including in the form of control logic, and using such hardware or software in a modular or integrated manner. Additionally, any of the software components or functions described herein can be implemented as software, program code, script, instructions, etc., operable to be executed by processor circuitry. These components, functions, programs, etc., can be developed using any suitable computer language such as, for example, Python, PyTorch, NumPy, Ruby, Ruby on Rails, Scala, Smalltalk, Java™, C++, C#, “C”, Kotlin, Swift, Rust, Go (or “Golang”), EMCAScript, JavaScript, TypeScript, Jscript, ActionScript, Server-Side JavaScript (SSJS), PHP, Pearl, Lua, Torch / Lua with Just-In Time compiler (LuaJIT), Accelerated Mobile Pages Script (AMPscript), VBScript, JavaServer Pages (JSP), Active Server Pages (ASP), Node.js, ASP.NET, JAMscript, Hypertext Markup Language (HTML), extensible HTML (XHTML), Extensible Markup Language (XML), XML User Interface Language (XUL), Scalable Vector Graphics (SVG), RESTful API Modeling Language (RAML), wiki markup or Wikitext, Wireless Markup Language (WML), Java Script Object Notion (JSON), Apache® MessagePack™, Cascading Stylesheets (CSS), extensible stylesheet language (XSL), Mustache template language, Handlebars template language, Guide Template Language (GTL), Apache® Thrift, Abstract Syntax Notation One (ASN.1), Google® Protocol Buffers (protobuf), Bitcoin Script, EVM® bytecode, Solidity™, Vyper (Python derived), Bamboo, Lisp Like Language (LLL), Simplicity provided by Blockstream™, Rholang, Michelson, Counterfactual, Plasma, Plutus, Sophia, Salesforce® Apex®, and / or any other programming language or development tools including proprietary programming languages and / or development tools. The software code can be stored as a computer- or processor-executable instructions or commands on a physical non-transitory computer-readable medium. Examples of suitable media include RAM, ROM, magnetic media such as a hard-drive or a floppy disk, or an optical medium such as a compact disk (CD) or DVD (digital versatile disk), flash memory, and the like, or any combination of such storage or transmission devices.
[0248] ABBREVIATIONS
[0249] Unless used differently herein, terms, definitions, and abbreviations may be consistent with terms, definitions, and abbreviations defined in 3GPP TR 21.905 vl6.0.0 (2019-06). For the purposes of the present document, the following abbreviations may apply to the examples and embodiments discussed herein.
[0250] Table 1 Abbreviations:
[0251] The foregoing description provides illustration and description of various example embodiments, but is not intended to be exhaustive or to limit the scope of embodiments to the precise forms disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of various embodiments. Where specific details are set forth in order to describe example embodiments of the disclosure, it should be apparent to one skilled in the art that the disclosure can be practiced without, or with variation of, these specific details. It should be understood, however, that there is no intent to limit the concepts of the present disclosure to the particular forms disclosed, but on the contrary, the intention is to cover all modifications, equivalents, and alternatives consistent with the present disclosure and the appended claims.
Claims
CLAIMSWhat is claimed is:
1. An apparatus for a network node comprising: a processor configured to: decode a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; map the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitor for the results of the computing service if asynchronous results delivery is indicated; and encode a CoAP acknowledgment (ACK) message indicating asynchronous data delivery; and a memory to store results.
2. The apparatus of claim 1, wherein the processing circuitry is further configured to incorporate a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
3. The apparatus of claim 2, wherein the processing circuitry is further configured to preserve the token of the CoAP message used in the service request and the mapping to a service ID.
4. The apparatus of claim 1, wherein the processing circuitry is further configured to select the SOCF based on Network Repository Function (NRF).
5. The apparatus of claim 1, wherein the processing circuitry is further configured to utilize Object Security for Constrained RESTful Environments (OSCORE).
6. The apparatus of claim 1, wherein the processing circuitry is further configured to encode a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response.
7. The apparatus of claim 2, wherein the processing circuitry is further configured to encode a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the CoAP ACK message.
8. The apparatus of claim 3, wherein the processing circuitry retrieves the token by decoding the service ID preserved from the earlier processing steps.
9. The apparatus of claim 3, wherein the processing circuitry is further configured to decode a notification about the computing results with the service ID from a Comp SF or a Comp CF or a Comp SF and a Comp CF.
10. The apparatus of claim 1, wherein the decoded CoAP message includes data and metadata as input for the computing service in a message body.
11. A computer-readable medium storing computer-executable instructions which when executed by one or more processors result in performing operations comprising: decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitoring for the results of the computing service if asynchronous results delivery is indicated; andencoding a CoAP acknowledgement (ACK) message indicating asynchronous data delivery.
12. The computer-readable medium of claim 11, wherein the operations further comprise incorporating a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
13. The computer-readable medium of claim 12, wherein the operations further comprise preserving the token of the CoAP message used in the service request and the mapping to a service ID.
14. The computer-readable medium of claim 11, wherein the operations further comprise selecting the SOCF based on Network Repository Function (NRF).
15. The computer-readable medium of claim 11, wherein the operations further comprise utilizing Object Security for Constrained RESTful Environments (OSCORE).
16. The computer-readable medium of claim 11, wherein the operations further comprise encoding a CoAP ACK message with the same token used in the service request, indicating that the results will be delivered in an asynchronous response.
17. The computer-readable medium of claim 12, wherein the operations further comprise encoding a CoAP 2.00 response to the UE for asynchronous delivery of the computing results, with the token in this message being the same as in the CoAP ACK message .
18. The computer-readable medium of claim 13, wherein the operations further comprise retrieving the token by decoding the service ID preserved from the earlier processing steps.
19. The computer-readable medium of claim 13, wherein the operations further comprise decoding a notification about the computing results with the service ID from a Comp SF or aComp CF or a Comp SF and a Comp CF.
20. The computer-readable medium of claim 11, wherein the decoded CoAP message includes data and metadata as input for the computing service in a message body.
21. A method comprising: decoding a service request for computing in Constrained Application Protocol (CoAP) message from User Equipment (UE) via a Radio Resource Control (RRC) or Non-Access Stratum (NAS) container; mapping the decoded CoAP message into a service request for computing in HTTP to a Service Communication Proxy Function (SOCF), by operating as a CoAP to HTTP proxy; monitoring for the results of the computing service if asynchronous results delivery is indicated; and encoding a CoAP acknowledgement (ACK) message indicating asynchronous data delivery.
22. The method of claim 21, further comprising incorporating a client-defined identifier or a previously assigned identifier from a cellular network as a token in the decoded CoAP message.
23. The method of claim 22, further comprising preserving the token of the CoAP message used in the service request and the mapping to a service ID.
24. The method of claim 21, further comprising selecting the SOCF based on Network Repository Function (NRF).
25. The method of claim 21, further comprising utilizing Object Security for Constrained RESTful Environments (OSCORE).