Uplink power limited scheduling
Patent Information
- Application Number
- PCT/IB2024/052129
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-05
- Publication Date
- 2025-10-02
Smart Images

Figure IB2024052129_02102025_PF_FP_ABST
Abstract
Description
UPLINK POWER LIMITED SCHEDULINGTECHNICAL FIELD
[0001] The present disclosure is related to wireless communication systems and more particularly to uplink power limited scheduling.BACKGROUND
[0002] FIG. 1 illustrates an example of a new radio (NR) network, such as a 5th Generation (5G) network. As shown, the NR network includes a 5G core (5GC) network 130, network nodes 120a-b (e.g., 5G base station (gNB)), and multiple communication devices 110 (also referred to as user equipment (UE)). A given communication device 100 communicates via a network node, such as network node 120a or 120b.
[0003] Because multiple communication devices 110 can be connected to the same network node, e.g., network node 120a or 120b, resources of the network node are allocated between the multiple communication devices 110. In particular, an uplink scheduling procedure is used to allocate resources (e.g., resource blocks) to entities (e.g., user equipment) that are communicating with the network node in the uplink direction.
[0004] When performing an uplink scheduling procedure, a scheduler typically considers the resource requirements of a current uplink scheduling entity (SE). As referred to herein, a scheduling entity refers to an entity that is communicating with the network node in an uplink direction, such as a communication device 110. For example, the scheduler could allocate as many resource blocks (RBs) as possible in order to satisfy the current uplink SE’s resource requirement. After scheduling the current uplink SE, the scheduler proceeds with scheduling the next uplink SE based on the resource requirements of the next uplink SE.
[0005] One problem with this approach for uplink scheduling is that the resource requirements of the other SEs are not considered when scheduling a current SE. For example, if the current SE has enough buffer, regardless of whether it is already power limited with low spectrum efficiency or not, the current SE will use all of the frequency domain resources. The other SEs will be not scheduled, even if those SEs have already been assigned a physical downlink control channel (PDCCH).
[0006] As a result of these issues, the network experiences poor uplink throughput, especially in a power limited scenario. For example, if two UEs are simultaneously performing full buffer uploading in a power limited scenario, the second UE will not be allocated resource blocks. Because of this, cell throughput in the uplink is limited, which further results in reduced spectrum efficiency.SUMMARY
[0007] According to some embodiments, a method for scheduling a frequency resource for uplink (UL) transmissions by a plurality of scheduling entities (SEs) is provided. The method includes determining, for each SE included in the plurality of SEs, a corresponding number of frequency resources that are required for UL transmission by the SE. The method further includes determining a total number of frequency resources that are available at a network node to be scheduled for UL transmission by the plurality of SEs. The method further includes assigning a first number of frequency resources for UL transmission by a first SE included in the plurality of SEs, based on: the total number of frequency resources that are available for UL transmission and the corresponding number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs.
[0008] According to other embodiments, a network node, a computer program, computer program product, non-transitory computer readable medium, host, or system is provided to perform the above method.
[0009] At least one technical advantage of the disclosed techniques is that, with the disclosed techniques, uplink system performance is improved relative to the prior art. In particular, when assigning resources for a given scheduling entity, a scheduler allocates resources based on both the number of available resources and the number of resources that are required by one or more scheduling entities that are not the given scheduling entity. In doing so, the scheduler is able to better optimize uplink resource allocation among a plurality of scheduling entities that require resources. As a result, using the disclosed techniques, uplink transmission is more efficient compared to previous approaches.BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this application, illustrate certain non-limiting embodiments of inventive concepts. In the drawings:
[0011] FIG. 1 is a schematic diagram illustrating an example of a 5thgeneration (5G) network;
[0012] FIG. 2 is a schematic diagram illustrating an example of a resource block (RB) assignment between a set of UEs;
[0013] FIG. 3 is a schematic diagram illustrating an example of a resource block (RB) assignment between a set of UEs based on each UE’s desire to drain a full buffer in accordance with some embodiments;
[0014] FIG. 4 is a schematic diagram illustrating an example of a resource block (RB) assignment between a set of UEs based on each UE’s desire to drain a limited buffer in accordance with some embodiments;
[0015] FIG. 5 is a flow chart illustrating an example of operations performed by a network node to estimate uplink required RBs at a power limited critical point in accordance with some embodiments;
[0016] FIGS. 6-7 are flow charts illustrating examples of operations performed by a network node to perform uplink power limited scheduling in accordance with some embodiments;
[0017] FIG. 8 is a block diagram of a communication system in accordance with some embodiments;
[0018] FIG. 9 is a block diagram of a user equipment in accordance with some embodiments;
[0019] FIG. 10 is a block diagram of a network node in accordance with some embodiments;
[0020] FIG. 11 is a block diagram of a host computer communicating with a user equipment in accordance with some embodiments;
[0021] FIG. 12 is a block diagram of a virtualization environment in accordance with some embodiments; and
[0022] FIG. 13 is a block diagram of a host computer communicating via a base station with a user equipment over a partially wireless connection in accordance with some embodiments.DETAILED DESCRIPTION
[0023] Some of the embodiments contemplated herein will now be described more fully with reference to the accompanying drawings. Embodiments are provided by way of example to convey the scope of the subject matter to those skilled in the art, in which examples of embodiments of inventive concepts are shown. Inventive concepts may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of present inventive concepts to those skilled in the art. It should also be noted that these embodiments are not mutually exclusive. Components from one embodiment may be tacitly assumed to be present / used in another embodiment. Similarly, embodiments may be practiced without one or more illustrated components and / or with components different from those illustrated.
[0024] As discussed above, there are currently challenges in scheduling uplink frequency resources for uplink transmission in a network. In some examples, if a current scheduling entity (SE) has enough buffer (thereby enough resource requirements), the current SE will use all the available uplink frequency resources, even if the current SE is already power limited with very low power efficiency. Therefore, the remaining SEs may not be scheduled, even if scheduling the remaining SEs would result in better spectrum efficiency compared to scheduling the current SE.
[0025] In other examples, the available resources could exceed the resource requirements of both the current SE and the remaining SEs. As a result, unallocated resources would remain after meeting the resource requirements of each SE. FIG. 2 illustrates an example of an inefficient allocation of RBs caused by a current uplink scheduling procedure. In this example, a network node may have 100 RBs available for scheduling between four UEs (UE0, UE1, UE2, and UE3). The UEs may have corresponding RB requirements of 10 RBs, 20 RBs, 10 RBs, and 20 RBs respectively. The RB requirements may be power limited RBs, where the number of RBs required is limited (e.g., fewer RBs than needed to fully drain an uplink buffer). As illustrated, each of the four UEs are assigned a number of RBs equal to the RB requirement, but 40 RBs are left unassigned.
[0026] These challenges can result in poor uplink throughput performance, especially in power limited scenarios. For example, if there are two UEs performing full buffer uploading simultaneously in a power limited scenario, the cell throughput in the uplink may be limited, resulting in less spectrum efficiency, as the second UE will not be allocated with resource blocks. As another example, if a UE has a full (or close to full buffer), the amount of RBs needed to drain the buffer could be greater than the power limited RB requirement. Referring to the above example, while the RB requirement for UE0 is 10 RBs, UE0 could need more than 100 RBs in order to drain its buffer. In such cases, having excess (unassigned or unused) RBs remaining after assigning RBs to various UEs also results in less spectrum efficiency, as the UE could have made use of the excess RBs.
[0027] Certain aspects of the disclosure and their embodiments provide solutions to these and other challenges with uplink scheduling. As discussed in further detail below, various embodiments herein consider the resource requirements of the other SEs when scheduling the current SE. In some embodiments, an uplink power limited critical point is used to determine whether to allocate more resources or not to the current SE. In doing so, the scheduler is able to better optimize uplink resource allocation among a plurality of scheduling entities that require resources. As a result, using the disclosed techniques, uplink transmission is more efficient (i.e.,leaves fewer resources unassigned / unused, satisfies the resource requirements of more SEs, and such) compared to previous approaches.
[0028] FIGS. 3-4 illustrate examples of improved allocation of RBs among a set of UEs, in accordance with some embodiments. For the purpose of illustrating a clear example, assume both FIGS. 3 and 4 are based on the same parameters as discussed above with respect to FIG. 2. For example, a network node may have 100 RBs available for scheduling between four UEs (UEO, UE1, UE2, and UE3). The UEs may have corresponding RB requirements (e.g., power limited RBs) of 10 RBs, 20 RBs, 10 RBs, and 20 RBs respectively.
[0029] FIG. 3 illustrates an example in which each UE desires to fully drain its UL buffer. Additionally, assume UEO has the highest priority, UE1 has the next highest, and so on. Using the disclosed techniques, because UEO has the highest priority, the network node allocates all available RBs to UEO, other than the RBs required by the other UEs (e.g., UE1, UE2, and UE3). Therefore, UEO is allocated 50 RBs, UE1 is allocated 20 RBs, UE2 is allocated 10 RBs, UE3 is allocated 20 RBs. Accordingly, all of the UEs received their required RBs, the highest priority UE (UEO) received the remaining available RBs, such that no RBs are left unused. As a result, the excess RBs are used more efficiently compared to approaches that allocate only as many RBs as requested, which would result in unused / unassigned RBs.
[0030] FIG. 4 illustrates an example in which each UE has a desire to drain a limited portion of its UL buffer. In this example, UE0-UE3 may desire to drain 15 RBs, 35 RBs, 35 RBs, and 25 RBs respectively. Again, assume UEO has the highest priority, UE1 has the next highest, and so on. Using the disclosed techniques, the network node allocates all available RBs to UEO other than the RBs required by the other UEs (UE1, UE2, and UE3) up to the amount desired by each UE. Therefore, UEO is allocated 15 RBs, UE1 is allocated 35 RBs, UE2 is allocated 30 RBs, UE3 is allocated 20 RBs. Accordingly, the highest priority UEs (UEO and UE1) received all of their desired RBs, the next highest priority UE (UE2) received some of its desired RBs, and all of the UEs received their required RBs. As a result, the limited amount of RBs are allocated more efficiently compared to approaches that may result in some UEs failing to receive the number of RBs that are required.
[0031] In some embodiments, for uplink scheduling, the resource requirement of SEs other than the current SE can be used to decide if scheduling will be continued for the current SE. The SE can be in, for example, single user (SU) single-input-multiple-output (SIMO), SU multiple-input-multiple-output (MIMO) mode, or multiple user (MU) MIMO mode. Some embodiments described herein can be used in a SU MIMO system, a MU MIMO system, or a system that uses multiple modes (e.g., mixed SU MIMO and MU MIMO).
[0032] FIG. 5 illustrates an example of operations performed by a network node to estimate uplink required RBs at a power limited critical point (RBNPL) for a SE. In some embodiments, these operations can be performed for each SE to determine it SE’s corresponding uplink required RBs at a the power limited critical point. In additional or alternative embodiments, the network node estimates the uplink required RB at a power limited critical point (e.g., the uplink required RB in linear area in terms of spectrum efficiency, not it as RBNPL.
[0033] At block 510, the network node can calculate the non-power limited RB as nonPower LimitRb = max(l, min^dB2Lin^Pc max— ulPsdTxPhr — clPcSurn), RBbw^, where: ulPsdTxPhr = (PCimax- Pheadroom) ~ Un2dB(noOfPrb).
[0034] In this example, ulPsdTxPhr can be the needed uplink Power Spectral Density (PSD) from a latest power headroom report, unit dBm. noOfPrb can be the RB of a physical uplink shared channel (PUSCH), which carries the power headroom report. Pheadroomcanbe the reported powerhead room from UE, and Pc maxcanbe the maximum transmission power of current carrier c. RBbwcan be the number of RBs in the whole bandwidth.
[0035] At block 520, the network node estimate the required RB assuming it is non-power limited based on required bits
[0036] At block 530, the network node determines the non-power limited required RB RBNPLas:
[0037] The operations of FIG. 5 is one of many procedures to get the required RB at power limited critical point, other estimation procedures can be used with embodiments described herein.
[0038] FIG. 6 illustrates an example of operations performed by a network node to perform uplink power limited scheduling based on the estimated uplink required RB at power limited critical points for each SE.
[0039] In this example, it can be assumed that there are N SEs which have successful physical downlink control channel (PDCCH) resources allocated. The SEs are noted as SE0, SE , ... , and SEN-1, their scheduling priority ordered from high to low. Available RB RBavaiiabe)canbe initialized by the whole uplink bandwidth, RBavaiiabe= RBbw.
[0040] At block 610, the network node can determine the non-power limited required RB for each SE. In some embodiments, the network node can determine the non-power limited required RB for each SE using the procedure described in FIG. 5. The non-power limited required RB for each SE can be referred to as RBNPL 0, RBNPL 1, ... , and RBfjpi^^.
[0041] An uplink scheduling loop can be initiated such that, for each SE in SEQ. SE^ ....SEf]^, the network node performs blocks 620, 630, and 640.
[0042] At block 620, the network node selects the highest priority SE as the current SE, note as SEi, i G [0, N — 1] with its required non-power limited RB, RBNPL i.
[0043] At block 630, the network node calculates the required non-power limited RB of the rest of the SEs [i + 1, N — 1] by:
[0044] At block 640, while ((( RBallocated:i< RBNPL:i) OR RBavailabe> RBrest,NPL) AND other predetermined conditions are met), the network node can allocate a RB to SE^ RB allocated ,i is the allocated RB for SEt, will be increased by RBaiiOcated,i+= RBstep.i, the increased granularity RBstePiifor SEi depends on configuration. The available RB, RBavaiiabe ■> will be updated as RBavaiiabe-= RBstep,i-
[0045] Once the while loop ends (e.g., because (( RBaii0Cated,i RBNPL.I) OR RBavaiiabe RBrest,NPi) the network node can return to block 620 to select the next highest priority SE as the current SE.
[0046] In some embodiments, if there is only one SE in current transmission time interval (TTI), the SE can be scheduled via a traditional algorithm because RBrestiNPL= 0.
[0047] Some embodiments described herein can be purpose-built and used with a multistandards radio base station (MSRBS) or a cloud radio access network (RAN). Additional or alternative embodiments can be used for a long-term evolution (LTE) system or a new radio (NR) system.
[0048] Operations of the network node 1000 (implemented using the structure of Figure 10) will now be discussed with reference to the flow chart of FIG. 7 according to some embodiments of inventive concepts. For example, modules may be stored in memory 1006 of Figure 10, and these modules may provide instructions so that when the instructions of a module are executed by respective communication device processing circuitry 1002, communication device 1000 performs respective operations of the flow chart.
[0049] FIG. 7 illustrates an example of operations performed by a network node to scheduled frequency resources for uplink (UL) transmission by a plurality of scheduling SEs. In some embodiments, the frequency resources include RBs.
[0050] At block 710, processing circuitry 1002 determines, for each SE, a corresponding number of frequency resources that are required for UL transmission by the SE. In some embodiments, determining, for each SE included in the plurality of SEs, the corresponding number of RBs that are required for UL transmission by the SE includes determining, for each SE included in the plurality of SEs, a corresponding required non-power limited RB, RBNPL, of the SE.
[0051] At block 720, processing circuitry 1002 determines a total number of frequency resources that are available to be scheduled for UL transmission by the SEs.
[0052] At block 730, processing circuitry 1002 selects a first SE based on the first SE having a highest priority of the SEs.
[0053] At block 740, processing circuitry 1002 assigns a first number of frequency resources for UL transmission by a first SE based on the total number of frequency resources and the number of frequency resources required by each SE.
[0054] In some embodiments, assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs includes determining that a number of frequency resources assigned to the SE for UL transmission is less than the corresponding number of frequency resources required for UL transmission by the SE. Responsive to determining that the number of frequency resources assigned to the SE for UL transmission is less than the corresponding number of frequency resources required for UL transmission by the SE, the network node can assign more frequency resources for UL transmission to the SE.
[0055] In additional or alternative embodiments, assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs includes determining that a number of frequency resources assigned to the SE for UL transmission is less than the number of frequency resources desired for UL transmission by the SE. The network node can further determine that the total number of frequency resources that are available for UL transmission is greater than a total number of frequency resources required for UL transmission by the plurality of SEs other than the SE, which have not been scheduled. Responsive to determining that the number of frequency resources assigned to the SE for UL transmission is less than the number of frequency resources desired for UL transmission by the SE and that the total number of frequency resources that are available for UL transmission is greater than the total number of frequency resources required for UL transmission by the plurality of SEs otherthan the SE, the network node can assign more frequency resources for UL transmission to the SE.
[0056] In additional or alternative embodiments, assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs includes assigning frequency resources for UL transmission by each SE included in the plurality of SEs based on a total number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs that has not been allocated its required frequency resources.
[0057] In additional or alternative embodiments, assigning the first number of frequency resources for the UL transmission by the SE of the plurality of SEs includes assigning the first number of frequency resources for the UL transmission by the SE of the plurality of SEs based on a number of frequency resources desired by the first SE.
[0058] In additional or alternative embodiments, assigning the first number of frequency resources for the UL transmission by the SE of the plurality of SEs includes determining the number of frequency resources desired for UL transmission by the SE based on a number of frequency resources needed to drain a full UL transmission buffer associated with the SE (e.g., as illustrated in FIG. 3).
[0059] In additional or alternative embodiments, assigning the first number of frequency resources for the UL transmission by the SE included in the plurality of SEs includes determining the number of frequency resources desired for UL transmission by the SE based on a number of frequency resources needed to drain a limited UL transmission buffer associated with the SE (e.g., as illustrated in FIG. 4).
[0060] At block 750, processing circuitry 1002 selects a second SE based on the second SE having a next highest priority of the SEs.
[0061] At block 760, processing circuitry 1002 determines a remaining number of frequency resources that are available to be scheduled for UL transmission by the SEs. In some embodiments, determining the remaining number of frequency resources includes determining the remaining number of frequency resources that are still available for UL transmission based on the total number of frequency resources that are available for UL transmission and the first number of frequency resources for UL transmission assigned to the first SE
[0062] At block 770, processing circuitry 1002 assigns a second number of frequency resources for UL transmission by the second SE based on the remaining number of frequency resources, a number of frequency resources desired by the second SE, and the number of frequency resources required by teach SE other than the first SE.
[0063] At block 780, processing circuitry 1002 determines a remaining number of frequency resources that are available to be scheduled for UL transmission by the SEs.
[0064] Various operations from the flow chart of FIG. 7 may be optional with respect to some embodiments of communication devices and related methods.
[0065] FIG. 8 shows an example of a communication system 800 in accordance with some embodiments.
[0066] In the example, the communication system 800 includes a telecommunication network 802 that includes an access network 804, such as a radio access network (RAN), and a core network 806, which includes one or more core network nodes 808. The access network 804 includes one or more access network nodes, such as network nodes 810a and 810b (one or more of which may be generally referred to as network nodes 810), or any other similar 3rd Generation Partnership Project (3 GPP) access node or non-3GPP access point. Moreover, as will be appreciated by those of skill in the art, the network nodes 810 are not necessarily limited to an implementation in which a radio portion and a baseband portion are supplied and integrated by a single vendor. Thus, it will be understood that the network nodes 810 may include disaggregated implementations or portions thereof. For example, in some embodiments, the telecommunication network 802 includes one or more Open-RAN (ORAN) network nodes. An ORAN network node is a node in the telecommunication network 802 that supports an ORAN specification (e.g., a specification published by the O-RAN Alliance, or any similar organization) and may operate alone or together with other nodes to implement one or more functionalities of any node in the telecommunication network 802, including one or more network nodes 810 and / or core network nodes 808.
[0067] Examples of an ORAN network node include an open radio unit (O-RU), an open distributed unit (O-DU), an open central unit (O-CU), including an O-CU control plane (O-CU- CP) or an O-CU user plane (O-CU-UP), a RAN intelligent controller (near-real time or non-real time) hosting software or software plug-ins, such as a near-real time RAN control application (e.g., xApp) or a non-real time RAN automation application (e.g., rApp), or any combination thereof (the adjective “open” designating support of an ORAN specification). The network node may support a specification by, for example, supporting an interface defined by the ORAN specification, such as an Al, Fl, Wl, El, E2, X2, Xn interface, an open fronthaul user plane interface, or an open fronthaul management plane interface. Intents and content-aware notifications described herein may be communicated from a 3 GPP network node or an ORAN network node over 3GPP-defined interfaces (e.g., N2, N3) and / or ORAN Alliance-defined interfaces (e.g., Al, 01). Moreover, an ORAN network node may be a logical node in a physical node. Furthermore, an ORAN network node may be implemented in a virtualization environment (described further below) in which one or more network functions are virtualized. For example, the virtualization environment may include an O-Cloud computing platformorchestrated by a Service Management and Orchestration Framework via an 0-2 interface defined by the 0-RAN Alliance. The network nodes 810 facilitate direct or indirect connection of user equipment (UE), such as by connecting wireless devices 812a, 812b, 812c, and 812d (one or more of which may be generally referred to as UEs 812) to the core network 806 over one or more wireless connections. The network nodes 810 facilitate direct or indirect connection of user equipment (UE), such as by connecting UEs 812a, 812b, 812c, and 812d (one or more of which may be generally referred to as UEs 812) to the core network 806 over one or more wireless connections.
[0068] Example wireless communications over a wireless connection include transmitting and / or receiving wireless signals using electromagnetic waves, radio waves, infrared waves, and / or other types of signals suitable for conveying information without the use of wires, cables, or other material conductors. Moreover, in different embodiments, the communication system 800 may include any number of wired or wireless networks, network nodes, UEs, and / or any other components or systems that may facilitate or participate in the communication of data and / or signals whether via wired or wireless connections. The communication system 800 may include and / or interface with any type of communication, telecommunication, data, cellular, radio network, and / or other similar type of system.
[0069] The UEs 812 may be any of a wide variety of communication devices, including wireless devices arranged, configured, and / or operable to communicate wirelessly with the network nodes 810 and other communication devices. Similarly, the network nodes 810 are arranged, capable, configured, and / or operable to communicate directly or indirectly with the UEs 812 and / or with other network nodes or equipment in the telecommunication network 802 to enable and / or provide network access, such as wireless network access, and / or to perform other functions, such as administration in the telecommunication network 802.
[0070] In the depicted example, the core network 806 connects the network nodes 810 to one or more hosts, such as host 816. These connections may be direct or indirect via one or more intermediary networks or devices. In other examples, network nodes may be directly coupled to hosts. The core network 806 includes one more core network nodes (e.g., core network node 808) that are structured with hardware and software components. Features of these components may be substantially similar to those described with respect to the UEs, network nodes, and / or hosts, such that the descriptions thereof are generally applicable to the corresponding components of the core network node 808. Example core network nodes include functions of one or more of a Mobile Switching Center (MSC), Mobility Management Entity (MME), Home Subscriber Server (HSS), Access and Mobility Management Function (AMF), Session Management Function (SMF), Authentication Server Function (AUSF), Subscription IdentifierDe-concealing function (SIDF), Unified Data Management (UDM), Security Edge Protection Proxy (SEPP), Network Exposure Function (NEF), and / or a User Plane Function (UPF).
[0071] The host 816 may be under the ownership or control of a service provider other than an operator or provider of the access network 804 and / or the telecommunication network 802, and may be operated by the service provider or on behalf of the service provider. The host 816 may host a variety of applications to provide one or more service. Examples of such applications include live and pre-recorded audio / video content, data collection services such as retrieving and compiling data on various ambient conditions detected by a plurality of UEs, analytics functionality, social media, functions for controlling or otherwise interacting with remote devices, functions for an alarm and surveillance center, or any other such function performed by a server.
[0072] As a whole, the communication system 800 of FIG. 8 enables connectivity between the UEs, network nodes, and hosts. In that sense, the communication system may be configured to operate according to predefined rules or procedures, such as specific standards that include, but are not limited to: Global System for Mobile Communications (GSM); Universal Mobile Telecommunications System (UMTS); Long Term Evolution (LTE), and / or other suitable 2G, 3G, 4G, 5G standards, or any applicable future generation standard (e.g., 6G); wireless local area network (WLAN) standards, such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11 standards (WiFi); and / or any other appropriate wireless communication standard, such as the Worldwide Interoperability for Microwave Access (WiMax), Bluetooth, Z-Wave, Near Field Communication (NFC) ZigBee, LiFi, and / or any low-power wide-area network (LPWAN) standards such as LoRa and Sigfox.
[0073] In some examples, the telecommunication network 802 is a cellular network that implements 3 GPP standardized features. Accordingly, the telecommunications network 802 may support network slicing to provide different logical networks to different devices that are connected to the telecommunication network 802. For example, the telecommunications network 802 may provide Ultra Reliable Low Latency Communication (URLLC) services to some UEs, while providing Enhanced Mobile Broadband (eMBB) services to other UEs, and / or Massive Machine Type Communication (mMTC) / Massive loT services to yet further UEs.
[0074] In some examples, the UEs 812 are configured to transmit and / or receive information without direct human interaction. For instance, a UE may be designed to transmit information to the access network 804 on a predetermined schedule, when triggered by an internal or external event, or in response to requests from the access network 804. Additionally, a UE may be configured for operating in single- or multi -RAT or multi -standard mode. For example, a UE may operate with any one or combination of Wi-Fi, NR (New Radio) and LTE,i.e. being configured for multi-radio dual connectivity (MR-DC), such as E-UTRAN (Evolved- UMTS Terrestrial Radio Access Network) New Radio - Dual Connectivity (EN-DC).
[0075] In the example, the hub 814 communicates with the access network 804 to facilitate indirect communication between one or more UEs (e.g., UE 812c and / or 812d) and network nodes (e.g., network node 810b). In some examples, the hub 814 may be a controller, router, content source and analytics, or any of the other communication devices described herein regarding UEs. For example, the hub 814 may be a broadband router enabling access to the core network 806 for the UEs. As another example, the hub 814 may be a controller that sends commands or instructions to one or more actuators in the UEs. Commands or instructions may be received from the UEs, network nodes 810, or by executable code, script, process, or other instructions in the hub 814. As another example, the hub 814 may be a data collector that acts as temporary storage for UE data and, in some embodiments, may perform analysis or other processing of the data. As another example, the hub 814 may be a content source. For example, for a UE that is a VR headset, display, loudspeaker or other media delivery device, the hub 814 may retrieve VR assets, video, audio, or other media or data related to sensory information via a network node, which the hub 814 then provides to the UE either directly, after performing local processing, and / or after adding additional local content. In still another example, the hub 814 acts as a proxy server or orchestrator for the UEs, in particular in if one or more of the UEs are low energy loT devices.
[0076] The hub 814 may have a constant / persistent or intermittent connection to the network node 810b. The hub 814 may also allow for a different communication scheme and / or schedule between the hub 814 and UEs (e.g., UE 812c and / or 812d), and between the hub 814 and the core network 806. In other examples, the hub 814 is connected to the core network 806 and / or one or more UEs via a wired connection. Moreover, the hub 814 may be configured to connect to an M2M service provider over the access network 804 and / or to another UE over a direct connection. In some scenarios, UEs may establish a wireless connection with the network nodes 810 while still connected via the hub 814 via a wired or wireless connection. In some embodiments, the hub 814 may be a dedicated hub - that is, a hub whose primary function is to route communications to / from the UEs from / to the network node 810b. In other embodiments, the hub 814 may be a non-dedicated hub - that is, a device which is capable of operating to route communications between the UEs and network node 810b, but which is additionally capable of operating as a communication start and / or end point for certain data channels.
[0077] FIG. 9 shows a UE 900 in accordance with some embodiments. As used herein, a UE refers to a device capable, configured, arranged and / or operable to communicate wirelessly with network nodes and / or other UEs. Examples of a UE include, but are not limited to, a smartphone, mobile phone, cell phone, voice over IP (VoIP) phone, wireless local loop phone, desktop computer, personal digital assistant (PDA), wireless cameras, gaming console or device, music storage device, playback appliance, wearable terminal device, wireless endpoint, mobile station, tablet, laptop, laptop-embedded equipment (LEE), laptop-mounted equipment (LME), smart device, wireless customer-premise equipment (CPE), vehicle-mounted or vehicle embedded / integrated wireless device, etc. Other examples include any UE identified by the 3rd Generation Partnership Project (3GPP), including a narrow band internet of things (NB-IoT) UE, a machine type communication (MTC) UE, and / or an enhanced MTC (eMTC) UE.
[0078] A UE may support device-to-device (D2D) communication, for example by implementing a 3 GPP standard for sidelink communication, Dedicated Short-Range Communication (DSRC), vehi cl e-to- vehicle (V2V), vehicle-to-infrastructure (V2I), or vehicle- to-everything (V2X). In other examples, a UE may not necessarily have a user in the sense of a human user who owns and / or operates the relevant device. Instead, a UE may represent a device that is intended for sale to, or operation by, a human user but which may not, or which may not initially, be associated with a specific human user (e.g., a smart sprinkler controller).Alternatively, a UE may represent a device that is not intended for sale to, or operation by, an end user but which may be associated with or operated for the benefit of a user (e.g., a smart power meter).
[0079] The UE 900 includes processing circuitry 902 that is operatively coupled via a bus 904 to an input / output interface 906, a power source 908, a memory 910, a communication interface 912, and / or any other component, or any combination thereof. Certain UEs may utilize all or a subset of the components shown in FIG. 9. The level of integration between the components may vary from one UE to another UE. Further, certain UEs may contain multiple instances of a component, such as multiple processors, memories, transceivers, transmitters, receivers, etc.
[0080] The processing circuitry 902 is configured to process instructions and data and may be configured to implement any sequential state machine operative to execute instructions stored as machine-readable computer programs in the memory 910. The processing circuitry 902 may be implemented as one or more hardware-implemented state machines (e.g., in discrete logic, field-programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), etc.); programmable logic together with appropriate firmware; one or more stored computer programs, general -purpose processors, such as a microprocessor or digital signal processor (DSP), together with appropriate software; or any combination of the above. For example, the processing circuitry 902 may include multiple central processing units (CPUs).
[0081] In the example, the input / output interface 906 may be configured to provide an interface or interfaces to an input device, output device, or one or more input and / or output devices. Examples of an output device include a speaker, a sound card, a video card, a display, a monitor, a printer, an actuator, an emitter, a smartcard, another output device, or any combination thereof. An input device may allow a user to capture information into the UE 900. Examples of an input device include a touch-sensitive or presence-sensitive display, a camera (e.g., a digital camera, a digital video camera, a web camera, etc.), a microphone, a sensor, a mouse, a trackball, a directional pad, a trackpad, a scroll wheel, a smartcard, and the like. The presence-sensitive display may include a capacitive or resistive touch sensor to sense input from a user. A sensor may be, for instance, an accelerometer, a gyroscope, a tilt sensor, a force sensor, a magnetometer, an optical sensor, a proximity sensor, a biometric sensor, etc., or any combination thereof. An output device may use the same type of interface port as an input device. For example, a Universal Serial Bus (USB) port may be used to provide an input device and an output device.
[0082] In some embodiments, the power source 908 is structured as a battery or battery pack. Other types of power sources, such as an external power source (e.g., an electricity outlet), photovoltaic device, or power cell, may be used. The power source 908 may further include power circuitry for delivering power from the power source 908 itself, and / or an external power source, to the various parts of the UE 900 via input circuitry or an interface such as an electrical power cable. Delivering power may be, for example, for charging of the power source 908. Power circuitry may perform any formatting, converting, or other modification to the power from the power source 908 to make the power suitable for the respective components of the UE 900 to which power is supplied.
[0083] The memory 910 may be or be configured to include memory such as random access memory (RAM), read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable readonly memory (EEPROM), magnetic disks, optical disks, hard disks, removable cartridges, flash drives, and so forth. In one example, the memory 910 includes one or more application programs 914, such as an operating system, web browser application, a widget, gadget engine, or other application, and corresponding data 916. The memory 910 may store, for use by the UE 900, any of a variety of various operating systems or combinations of operating systems.
[0084] The memory 910 may be configured to include a number of physical drive units, such as redundant array of independent disks (RAID), flash memory, USB flash drive, external hard disk drive, thumb drive, pen drive, key drive, high-density digital versatile disc (HD-DVD) optical disc drive, internal hard disk drive, Blu-Ray optical disc drive, holographic digital datastorage (HDDS) optical disc drive, external mini-dual in-line memory module (DIMM), synchronous dynamic random access memory (SDRAM), external micro-DIMM SDRAM, smartcard memory such as tamper resistant module in the form of a universal integrated circuit card (UICC) including one or more subscriber identity modules (SIMs), such as a USIM and / or ISIM, other memory, or any combination thereof. The UICC may for example be an embedded UICC (eUICC), integrated UICC (iUICC) or a removable UICC commonly known as ‘SIM card.’ The memory 910 may allow the UE 900 to access instructions, application programs and the like, stored on transitory or non-transitory memory media, to off-load data, or to upload data. An article of manufacture, such as one utilizing a communication system may be tangibly embodied as or in the memory 910, which may be or comprise a device-readable storage medium.
[0085] The processing circuitry 902 may be configured to communicate with an access network or other network using the communication interface 912. The communication interface 912 may comprise one or more communication subsystems and may include or be communicatively coupled to an antenna 922. The communication interface 912 may include one or more transceivers used to communicate, such as by communicating with one or more remote transceivers of another device capable of wireless communication (e.g., another UE or a network node in an access network). Each transceiver may include a transmitter 918 and / or a receiver 920 appropriate to provide network communications (e.g., optical, electrical, frequency allocations, and so forth). Moreover, the transmitter 918 and receiver 920 may be coupled to one or more antennas (e.g., antenna 922) and may share circuit components, software or firmware, or alternatively be implemented separately.
[0086] In the illustrated embodiment, communication functions of the communication interface 912 may include cellular communication, Wi-Fi communication, LPWAN communication, data communication, voice communication, multimedia communication, short- range communications such as Bluetooth, near-field communication, location-based communication such as the use of the global positioning system (GPS) to determine a location, another like communication function, or any combination thereof. Communications may be implemented in according to one or more communication protocols and / or standards, such as IEEE 802.11, Code Division Multiplexing Access (CDMA), Wideband Code Division Multiple Access (WCDMA), GSM, LTE, New Radio (NR), UMTS, WiMax, Ethernet, transmission control protocol / internet protocol (TCP / IP), synchronous optical networking (SONET), Asynchronous Transfer Mode (ATM), QUIC, Hypertext Transfer Protocol (HTTP), and so forth.
[0087] Regardless of the type of sensor, a UE may provide an output of data captured by its sensors, through its communication interface 912, via a wireless connection to a network node.Data captured by sensors of a UE can be communicated through a wireless connection to a network node via another UE. The output may be periodic (e.g., once every 15 minutes if it reports the sensed temperature), random (e.g., to even out the load from reporting from several sensors), in response to a triggering event (e.g., when moisture is detected an alert is sent), in response to a request (e.g., a user initiated request), or a continuous stream (e.g., a live video feed of a patient).
[0088] As another example, a UE comprises an actuator, a motor, or a switch, related to a communication interface configured to receive wireless input from a network node via a wireless connection. In response to the received wireless input the states of the actuator, the motor, or the switch may change. For example, the UE may comprise a motor that adjusts the control surfaces or rotors of a drone in flight according to the received input or to a robotic arm performing a medical procedure according to the received input.
[0089] A UE, when in the form of an Internet of Things (loT) device, may be a device for use in one or more application domains, these domains comprising, but not limited to, city wearable technology, extended industrial application and healthcare. Non-limiting examples of such an loT device are a device which is or which is embedded in: a connected refrigerator or freezer, a TV, a connected lighting device, an electricity meter, a robot vacuum cleaner, a voice controlled smart speaker, a home security camera, a motion detector, a thermostat, a smoke detector, a door / window sensor, a flood / moisture sensor, an electrical door lock, a connected doorbell, an air conditioning system like a heat pump, an autonomous vehicle, a surveillance system, a weather monitoring device, a vehicle parking monitoring device, an electric vehicle charging station, a smart watch, a fitness tracker, a head-mounted display for Augmented Reality (AR) or Virtual Reality (VR), a wearable for tactile augmentation or sensory enhancement, a water sprinkler, an animal- or item-tracking device, a sensor for monitoring a plant or animal, an industrial robot, an Unmanned Aerial Vehicle (UAV), and any kind of medical device, like a heart rate monitor or a remote controlled surgical robot. A UE in the form of an loT device comprises circuitry and / or software in dependence of the intended application of the loT device in addition to other components as described in relation to the UE 900 shown in FIG. 9.
[0090] As yet another specific example, in an loT scenario, a UE may represent a machine or other device that performs monitoring and / or measurements, and transmits the results of such monitoring and / or measurements to another UE and / or a network node. The UE may in this case be an M2M device, which may in a 3 GPP context be referred to as an MTC device. As one particular example, the UE may implement the 3GPP NB-IoT standard. In other scenarios, a UE may represent a vehicle, such as a car, a bus, a truck, a ship and an airplane, or other equipmentthat is capable of monitoring and / or reporting on its operational status or other functions associated with its operation.
[0091] In practice, any number of UEs may be used together with respect to a single use case. For example, a first UE might be or be integrated in a drone and provide the drone’s speed information (obtained through a speed sensor) to a second UE that is a remote controller operating the drone. When the user makes changes from the remote controller, the first UE may adjust the throttle on the drone (e.g. by controlling an actuator) to increase or decrease the drone’s speed. The first and / or the second UE can also include more than one of the functionalities described above. For example, a UE might comprise the sensor and the actuator, and handle communication of data for both the speed sensor and the actuators.
[0092] FIG. 10 shows a network node 1000 in accordance with some embodiments. As used herein, network node refers to equipment capable, configured, arranged and / or operable to communicate directly or indirectly with a UE and / or with other network nodes or equipment, in a telecommunication network. Examples of network nodes include, but are not limited to, access points (APs) (e.g., radio access points), base stations (BSs) (e.g., radio base stations, Node Bs, evolved Node Bs (eNBs), NR. NodeBs (gNBs)), 0-RAN nodes, or components of an 0-RAN node (e.g., intelligent controller, 0-RU, 0-DU, O-CU).
[0093] Base stations may be categorized based on the amount of coverage they provide (or, stated differently, their transmit power level) and so, depending on the provided amount of coverage, may be referred to as femto base stations, pico base stations, micro base stations, or macro base stations. A base station may be a relay node or a relay donor node controlling a relay. A network node may also include one or more (or all) parts of a distributed radio base station such as centralized digital units and / or remote radio units (RRUs), sometimes referred to as Remote Radio Heads (RRHs). Such remote radio units may or may not be integrated with an antenna as an antenna integrated radio. Parts of a distributed radio base station may also be referred to as nodes in a distributed antenna system (DAS).
[0094] Other examples of network nodes include multiple transmission point (multi-TRP) 5G access nodes, multi-standard radio (MSR) equipment such as MSR BSs, network controllers such as radio network controllers (RNCs) or base station controllers (BSCs), base transceiver stations (BTSs), transmission points, transmission nodes, multi-cell / multicast coordination entities (MCEs), Operation and Maintenance (O&M) nodes, Operations Support System (OSS) nodes, Self-Organizing Network (SON) nodes, positioning nodes (e.g., Evolved Serving Mobile Location Centers (E-SMLCs)), and / or Minimization of Drive Tests (MDTs).
[0095] The network node 1000 includes a processing circuitry 1002, a memory 1004, a communication interface 1006, and a power source 1008. The network node 1000 may becomposed of multiple physically separate components (e.g., a NodeB component and a RNC component, or a BTS component and a BSC component, etc.), which may each have their own respective components. In certain scenarios in which the network node 1000 comprises multiple separate components (e.g., BTS and BSC components), one or more of the separate components may be shared among several network nodes. For example, a single RNC may control multiple NodeBs. In such a scenario, each unique NodeB and RNC pair, may in some instances be considered a single separate network node. In some embodiments, the network node 1000 may be configured to support multiple radio access technologies (RATs). In such embodiments, some components may be duplicated (e.g., separate memory 1004 for different RATs) and some components may be reused (e.g., a same antenna 1010 may be shared by different RATs). The network node 1000 may also include multiple sets of the various illustrated components for different wireless technologies integrated into network node 1000, for example GSM, WCDMA, LTE, NR, WiFi, Zigbee, Z-wave, LoRaWAN, Radio Frequency Identification (RFID) or Bluetooth wireless technologies. These wireless technologies may be integrated into the same or different chip or set of chips and other components within network node 1000.
[0096] The processing circuitry 1002 may comprise a combination of one or more of a microprocessor, controller, microcontroller, central processing unit, digital signal processor, application-specific integrated circuit, field programmable gate array, or any other suitable computing device, resource, or combination of hardware, software and / or encoded logic operable to provide, either alone or in conjunction with other network node 1000 components, such as the memory 1004, to provide network node 1000 functionality.
[0097] In some embodiments, the processing circuitry 1002 includes a system on a chip (SOC). In some embodiments, the processing circuitry 1002 includes one or more of radio frequency (RF) transceiver circuitry 1012 and baseband processing circuitry 1014. In some embodiments, the radio frequency (RF) transceiver circuitry 1012 and the baseband processing circuitry 1014 may be on separate chips (or sets of chips), boards, or units, such as radio units and digital units. In alternative embodiments, part or all of RF transceiver circuitry 1012 and baseband processing circuitry 1014 may be on the same chip or set of chips, boards, or units.
[0098] The memory 1004 may comprise any form of volatile or non-volatile computer- readable memory including, without limitation, persistent storage, solid-state memory, remotely mounted memory, magnetic media, optical media, random access memory (RAM), read-only memory (ROM), mass storage media (for example, a hard disk), removable storage media (for example, a flash drive, a Compact Disk (CD) or a Digital Video Disk (DVD)), and / or any other volatile or non-volatile, non-transitory device-readable and / or computer-executable memory devices that store information, data, and / or instructions that may be used by the processingcircuitry 1002. The memory 1004 may store any suitable instructions, data, or information, including a computer program, software, an application including one or more of logic, rules, code, tables, and / or other instructions capable of being executed by the processing circuitry 1002 and utilized by the network node 1000. The memory 1004 may be used to store any calculations made by the processing circuitry 1002 and / or any data received via the communication interface 1006. In some embodiments, the processing circuitry 1002 and memory 1004 is integrated.
[0099] The communication interface 1006 is used in wired or wireless communication of signaling and / or data between a network node, access network, and / or UE. As illustrated, the communication interface 1006 comprises port(s) / terminal(s) 1016 to send and receive data, for example to and from a network over a wired connection. The communication interface 1006 also includes radio front-end circuitry 1018 that may be coupled to, or in certain embodiments a part of, the antenna 1010. Radio front-end circuitry 1018 comprises filters 1020 and amplifiers 1022. The radio front-end circuitry 1018 may be connected to an antenna 1010 and processing circuitry 1002. The radio front-end circuitry may be configured to condition signals communicated between antenna 1010 and processing circuitry 1002. The radio front-end circuitry 1018 may receive digital data that is to be sent out to other network nodes or UEs via a wireless connection. The radio front-end circuitry 1018 may convert the digital data into a radio signal having the appropriate channel and bandwidth parameters using a combination of filters 1020 and / or amplifiers 1022. The radio signal may then be transmitted via the antenna 1010. Similarly, when receiving data, the antenna 1010 may collect radio signals which are then converted into digital data by the radio front-end circuitry 1018. The digital data may be passed to the processing circuitry 1002. In other embodiments, the communication interface may comprise different components and / or different combinations of components.
[0100] In certain alternative embodiments, the network node 1000 does not include separate radio front-end circuitry 1018, instead, the processing circuitry 1002 includes radio front-end circuitry and is connected to the antenna 1010. Similarly, in some embodiments, all or some of the RF transceiver circuitry 1012 is part of the communication interface 1006. In still other embodiments, the communication interface 1006 includes one or more ports or terminals 1016, the radio front-end circuitry 1018, and the RF transceiver circuitry 1012, as part of a radio unit (not shown), and the communication interface 1006 communicates with the baseband processing circuitry 1014, which is part of a digital unit (not shown).
[0101] The antenna 1010 may include one or more antennas, or antenna arrays, configured to send and / or receive wireless signals. The antenna 1010 may be coupled to the radio front-end circuitry 1018 and may be any type of antenna capable of transmitting and receiving data and / orsignals wirelessly. In certain embodiments, the antenna 1010 is separate from the network node 1000 and connectable to the network node 1000 through an interface or port.
[0102] The antenna 1010, communication interface 1006, and / or the processing circuitry 1002 may be configured to perform any receiving operations and / or certain obtaining operations described herein as being performed by the network node. Any information, data and / or signals may be received from a UE, another network node and / or any other network equipment. Similarly, the antenna 1010, the communication interface 1006, and / or the processing circuitry 1002 may be configured to perform any transmitting operations described herein as being performed by the network node. Any information, data and / or signals may be transmitted to a UE, another network node and / or any other network equipment.
[0103] The power source 1008 provides power to the various components of network node 1000 in a form suitable for the respective components (e.g., at a voltage and current level needed for each respective component). The power source 1008 may further comprise, or be coupled to, power management circuitry to supply the components of the network node 1000 with power for performing the functionality described herein. For example, the network node 1000 may be connectable to an external power source (e.g., the power grid, an electricity outlet) via an input circuitry or interface such as an electrical cable, whereby the external power source supplies power to power circuitry of the power source 1008. As a further example, the power source 1008 may comprise a source of power in the form of a battery or battery pack which is connected to, or integrated in, power circuitry. The battery may provide backup power should the external power source fail.
[0104] Embodiments of the network node 1000 may include additional components beyond those shown in FIG. 10 for providing certain aspects of the network node’s functionality, including any of the functionality described herein and / or any functionality necessary to support the subject matter described herein. For example, the network node 1000 may include user interface equipment to allow input of information into the network node 1000 and to allow output of information from the network node 1000. This may allow a user to perform diagnostic, maintenance, repair, and other administrative functions for the network node 1000.
[0105] FIG. 11 is a block diagram of a host 1100, which may be an embodiment of the host 816 of FIG. 8, in accordance with various aspects described herein. As used herein, the host 1100 may be or comprise various combinations hardware and / or software, including a standalone server, a blade server, a cloud-implemented server, a distributed server, a virtual machine, container, or processing resources in a server farm. The host 1100 may provide one or more services to one or more UEs.
[0106] The host 1100 includes processing circuitry 1102 that is operatively coupled via a bus 1104 to an input / output interface 1106, a network interface 1108, a power source 1110, and a memory 1112. Other components may be included in other embodiments. Features of these components may be substantially similar to those described with respect to the devices of previous figures, such as FIGS. 9 and 10, such that the descriptions thereof are generally applicable to the corresponding components of host 1100.
[0107] The memory 1112 may include one or more computer programs including one or more host application programs 1114 and data 1116, which may include user data, e.g., data generated by a UE for the host 1100 or data generated by the host 1100 for a UE. Embodiments of the host 1100 may utilize only a subset or all of the components shown. The host application programs 1114 may be implemented in a container-based architecture and may provide support for video codecs (e.g., Versatile Video Coding (VVC), High Efficiency Video Coding (HEVC), Advanced Video Coding (AVC), MPEG, VP9) and audio codecs (e.g., FLAC, Advanced Audio Coding (AAC), MPEG, G.711), including transcoding for multiple different classes, types, or implementations of UEs (e.g., handsets, desktop computers, wearable display systems, heads-up display systems). The host application programs 1114 may also provide for user authentication and licensing checks and may periodically report health, routes, and content availability to a central node, such as a device in or on the edge of a core network. Accordingly, the host 1100 may select and / or indicate a different host for over-the-top services for a UE. The host application programs 1114 may support various protocols, such as the HTTP Live Streaming (HLS) protocol, Real-Time Messaging Protocol (RTMP), Real-Time Streaming Protocol (RTSP), Dynamic Adaptive Streaming over HTTP (MPEG-DASH), etc.
[0108] FIG. 12 is a block diagram illustrating a virtualization environment 1200 in which functions implemented by some embodiments may be virtualized. In the present context, virtualizing means creating virtual versions of apparatuses or devices which may include virtualizing hardware platforms, storage devices and networking resources. As used herein, virtualization can be applied to any device described herein, or components thereof, and relates to an implementation in which at least a portion of the functionality is implemented as one or more virtual components. Some or all of the functions described herein may be implemented as virtual components executed by one or more virtual machines (VMs) implemented in one or more virtual environments 1200 hosted by one or more of hardware nodes, such as a hardware computing device that operates as a network node, UE, core network node, or host. Further, in embodiments in which the virtual node does not require radio connectivity (e.g., a core network node or host), then the node may be entirely virtualized. In some embodiments, the virtualization environment 1200 includes components defined by the 0-RAN Alliance, such asan O-Cloud environment orchestrated by a Service Management and Orchestration Framework via an 0-2 interface.
[0109] Applications 1202 (which may alternatively be called software instances, virtual appliances, network functions, virtual nodes, virtual network functions, etc.) are run in the virtualization environment Q400 to implement some of the features, functions, and / or benefits of some of the embodiments disclosed herein.
[0110] Hardware 1204 includes processing circuitry, memory that stores software and / or instructions executable by hardware processing circuitry, and / or other hardware devices as described herein, such as a network interface, input / output interface, and so forth. Software may be executed by the processing circuitry to instantiate one or more virtualization layers 1206 (also referred to as hypervisors or virtual machine monitors (VMMs)), provide VMs 1208a and 1208b (one or more of which may be generally referred to as VMs 1208), and / or perform any of the functions, features and / or benefits described in relation with some embodiments described herein. The virtualization layer 1206 may present a virtual operating platform that appears like networking hardware to the VMs 1208.
[0111] The VMs 1208 comprise virtual processing, virtual memory, virtual networking or interface and virtual storage, and may be run by a corresponding virtualization layer 1206. Different embodiments of the instance of a virtual appliance 1202 may be implemented on one or more of VMs 1208, and the implementations may be made in different ways. Virtualization of the hardware is in some contexts referred to as network function virtualization (NFV). NFV may be used to consolidate many network equipment types onto industry standard high volume server hardware, physical switches, and physical storage, which can be located in data centers, and customer premise equipment.
[0112] In the context of NFV, a VM 1208 may be a software implementation of a physical machine that runs programs as if they were executing on a physical, non-virtualized machine. Each of the VMs 1208, and that part of hardware 1204 that executes that VM, be it hardware dedicated to that VM and / or hardware shared by that VM with others of the VMs, forms separate virtual network elements. Still in the context of NFV, a virtual network function is responsible for handling specific network functions that run in one or more VMs 1208 on top of the hardware 1204 and corresponds to the application 1202.
[0113] Hardware 1204 may be implemented in a standalone network node with generic or specific components. Hardware 1204 may implement some functions via virtualization.Alternatively, hardware 1204 may be part of a larger cluster of hardware (e.g. such as in a data center or CPE) where many hardware nodes work together and are managed via management and orchestration 1210, which, among others, oversees lifecycle management of applications1202. In some embodiments, hardware 1204 is coupled to one or more radio units that each include one or more transmitters and one or more receivers that may be coupled to one or more antennas. Radio units may communicate directly with other hardware nodes via one or more appropriate network interfaces and may be used in combination with the virtual components to provide a virtual node with radio capabilities, such as a radio access node or a base station. In some embodiments, some signaling can be provided with the use of a control system 1212 which may alternatively be used for communication between hardware nodes and radio units.
[0114] FIG. 13 shows a communication diagram of a host 1302 communicating via a network node 1304 with a UE 1306 over a partially wireless connection in accordance with some embodiments. Example implementations, in accordance with various embodiments, of the UE (such as a UE 812a of FIG. 8 and / or UE 900 of FIG. 9), network node (such as network node 810a of FIG. 8 and / or network node 1000 of FIG. 10), and host (such as host 816 of FIG. 8 and / or host 1100 of FIG. 11) discussed in the preceding paragraphs will now be described with reference to FIG. 13.
[0115] Like host 1100, embodiments of host 1302 include hardware, such as a communication interface, processing circuitry, and memory. The host 1302 also includes software, which is stored in or accessible by the host 1302 and executable by the processing circuitry. The software includes a host application that may be operable to provide a service to a remote user, such as the UE 1306 connecting via an over-the-top (OTT) connection 1350 extending between the UE 1306 and host 1302. In providing the service to the remote user, a host application may provide user data which is transmitted using the OTT connection 1350.
[0116] The network node 1304 includes hardware enabling it to communicate with the host 1302 and UE 1306. The connection 1360 may be direct or pass through a core network (like core network 806 of FIG. 8) and / or one or more other intermediate networks, such as one or more public, private, or hosted networks. For example, an intermediate network may be a backbone network or the Internet.
[0117] The UE 1306 includes hardware and software, which is stored in or accessible by UE 1306 and executable by the UE’s processing circuitry. The software includes a client application, such as a web browser or operator-specific “app” that may be operable to provide a service to a human or non-human user via UE 1306 with the support of the host 1302. In the host 1302, an executing host application may communicate with the executing client application via the OTT connection 1350 terminating at the UE 1306 and host 1302. In providing the service to the user, the UE's client application may receive request data from the host's host application and provide user data in response to the request data. The OTT connection 1350 may transferboth the request data and the user data. The UE's client application may interact with the user to generate the user data that it provides to the host application through the OTT connection 1350.
[0118] The OTT connection 1350 may extend via a connection 1360 between the host 1302 and the network node 1304 and via a wireless connection 1370 between the network node 1304 and the UE 1306 to provide the connection between the host 1302 and the UE 1306. The connection 1360 and wireless connection 1370, over which the OTT connection 1350 may be provided, have been drawn abstractly to illustrate the communication between the host 1302 and the UE 1306 via the network node 1304, without explicit reference to any intermediary devices and the precise routing of messages via these devices.
[0119] As an example of transmitting data via the OTT connection 1350, in step 1308, the host 1302 provides user data, which may be performed by executing a host application. In some embodiments, the user data is associated with a particular human user interacting with the UE 1306. In other embodiments, the user data is associated with a UE 1306 that shares data with the host 1302 without explicit human interaction. In step 1310, the host 1302 initiates a transmission carrying the user data towards the UE 1306. The host 1302 may initiate the transmission responsive to a request transmitted by the UE 1306. The request may be caused by human interaction with the UE 1306 or by operation of the client application executing on the UE 1306. The transmission may pass via the network node 1304, in accordance with the teachings of the embodiments described throughout this disclosure. Accordingly, in step 1312, the network node 1304 transmits to the UE 1306 the user data that was carried in the transmission that the host 1302 initiated, in accordance with the teachings of the embodiments described throughout this disclosure. In step 1314, the UE 1306 receives the user data carried in the transmission, which may be performed by a client application executed on the UE 1306 associated with the host application executed by the host 1302.
[0120] In some examples, the UE 1306 executes a client application which provides user data to the host 1302. The user data may be provided in reaction or response to the data received from the host 1302. Accordingly, in step 1316, the UE 1306 may provide user data, which may be performed by executing the client application. In providing the user data, the client application may further consider user input received from the user via an input / output interface of the UE 1306. Regardless of the specific manner in which the user data was provided, the UE 1306 initiates, in step 1318, transmission of the user data towards the host 1302 via the network node 1304. In step 1320, in accordance with the teachings of the embodiments described throughout this disclosure, the network node 1304 receives user data from the UE 1306 and initiates transmission of the received user data towards the host 1302. In step 1322, the host 1302 receives the user data carried in the transmission initiated by the UE 1306.
[0121] One or more of the various embodiments improve the performance of OTT services provided to the UE 1306 using the OTT connection 1350, in which the wireless connection 1370 forms the last segment. More precisely, the teachings of these embodiments may enable more efficient uplink transmission, which can improve uplink system performance in terms of spectrum efficiency when uplink power is limited.
[0122] In an example scenario, factory status information may be collected and analyzed by the host 1302. As another example, the host 1302 may process audio and video data which may have been retrieved from a UE for use in creating maps. As another example, the host 1302 may collect and analyze real-time data to assist in controlling vehicle congestion (e.g., controlling traffic lights). As another example, the host 1302 may store surveillance video uploaded by a UE. As another example, the host 1302 may store or control access to media content such as video, audio, VR or AR which it can broadcast, multicast or unicast to UEs. As other examples, the host 1302 may be used for energy pricing, remote control of non-time critical electrical load to balance power generation needs, location services, presentation services (such as compiling diagrams etc. from data collected from remote devices), or any other function of collecting, retrieving, storing, analyzing and / or transmitting data.
[0123] In some examples, a measurement procedure may be provided for the purpose of monitoring data rate, latency and other factors on which the one or more embodiments improve. There may further be an optional network functionality for reconfiguring the OTT connection 1350 between the host 1302 and UE 1306, in response to variations in the measurement results. The measurement procedure and / or the network functionality for reconfiguring the OTT connection may be implemented in software and hardware of the host 1302 and / or UE 1306. In some embodiments, sensors (not shown) may be deployed in or in association with other devices through which the OTT connection 1350 passes; the sensors may participate in the measurement procedure by supplying values of the monitored quantities exemplified above, or supplying values of other physical quantities from which software may compute or estimate the monitored quantities. The reconfiguring of the OTT connection 1350 may include message format, retransmission settings, preferred routing etc.; the reconfiguring need not directly alter the operation of the network node 1304. Such procedures and functionalities may be known and practiced in the art. In certain embodiments, measurements may involve proprietary UE signaling that facilitates measurements of throughput, propagation times, latency and the like, by the host 1302. The measurements may be implemented in that software causes messages to be transmitted, in particular empty or ‘dummy’ messages, using the OTT connection 1350 while monitoring propagation times, errors, etc.
[0124] Although the computing devices described herein (e.g., UEs, network nodes, hosts) may include the illustrated combination of hardware components, other embodiments may comprise computing devices with different combinations of components. It is to be understood that these computing devices may comprise any suitable combination of hardware and / or software needed to perform the tasks, features, functions and methods disclosed herein. Determining, calculating, obtaining or similar operations described herein may be performed by processing circuitry, which may process information by, for example, converting the obtained information into other information, comparing the obtained information or converted information to information stored in the network node, and / or performing one or more operations based on the obtained information or converted information, and as a result of said processing making a determination. Moreover, while components are depicted as single boxes located within a larger box, or nested within multiple boxes, in practice, computing devices may comprise multiple different physical components that make up a single illustrated component, and functionality may be partitioned between separate components. For example, a communication interface may be configured to include any of the components described herein, and / or the functionality of the components may be partitioned between the processing circuitry and the communication interface. In another example, non-computationally intensive functions of any of such components may be implemented in software or firmware and computationally intensive functions may be implemented in hardware.
[0125] In certain embodiments, some or all of the functionality described herein may be provided by processing circuitry executing instructions stored on in memory, which in certain embodiments may be a computer program product in the form of a non-transitory computer- readable storage medium. In alternative embodiments, some or all of the functionality may be provided by the processing circuitry without executing instructions stored on a separate or discrete device-readable storage medium, such as in a hard-wired manner. In any of those particular embodiments, whether executing instructions stored on a non-transitory computer- readable storage medium or not, the processing circuitry can be configured to perform the described functionality. The benefits provided by such functionality are not limited to the processing circuitry alone or to other components of the computing device, but are enjoyed by the computing device as a whole, and / or by end users and a wireless network generally.
Claims
CLAIMSWhat is claimed is:
1. A method for scheduling frequency resources for uplink (UL) transmissions by a plurality of scheduling entities (SEs), the method comprising: determining (710), for each SE included in the plurality of SEs, a corresponding number of frequency resources that are required for UL transmission by the SE; determining (720) a total number of frequency resources that are available in a corresponding network to be scheduled for UL transmission by the plurality of SEs; and assigning (740) a first number of frequency resources for UL transmission by a first SE included in the plurality of SEs, based on: the total number of frequency resources that are available for UL transmission, and the corresponding number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs.
2. The method of Claim 1, wherein the total number of frequency resources comprise a total number of resource blocks (RBs), and wherein the first number of frequency resources comprise a first number of RBs.
3. The method of Claim 2, wherein determining, for each SE included in the plurality of SEs, the corresponding number of RBs that are required for UL transmission by the SE comprises determining, for each SE included in the plurality of SEs, a corresponding required non-power limited RB, RBNPL, of the SE.
4. The method of any of Claims 1-3, wherein assigning the first number of frequency resources for the UL transmission by the SE included in the plurality of SEs comprises assigning the first number of frequency resources for the UL transmission by the SE included in the plurality of SEs based on a number of frequency resources that are desired for UL transmission by the first SE.
5. The method of Claim 4, wherein assigning the first number of frequency resources for the UL transmission by the SE included in the plurality of SEs comprises: determining the number of frequency resources desired for UL transmission by the SE based on a number of frequency resources needed to drain a limited UL transmission bufferassociated with the SE.
6. The method of Claim 4, wherein assigning the first number of frequency resources for the UL transmission by the SE of the plurality of SEs comprises: determining the number of frequency resources desired for UL transmission by the SE based on a number of frequency resources needed to drain a full UL transmission buffer associated with the SE.
7. The method of any of Claims 4-6, wherein assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs comprises: determining that a number of frequency resources assigned to the SE for UL transmission is less than the number of frequency resources desired for UL transmission by the SE; determining that the total number of frequency resources that are available for UL transmission is greater than a total number of frequency resources required for UL transmission by the plurality of SEs other than the SE, which have not been scheduled; and responsive to determining that the number of frequency resources assigned to the SE for UL transmission is less than the number of frequency resources desired for UL transmission by the SE and that the total number of frequency resources that are available for UL transmission is greater than the total number of frequency resources required for UL transmission by the plurality of SEs other than the SE, assigning more frequency resources for UL transmission to the SE.
8. The method of any of Claims 1-7, further comprising: selecting (730) the SE from the plurality of SEs based on the SE having a highest priority of the plurality of SEs.
9. The method of any of Claims 1-8, wherein assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs comprises: determining that a number of frequency resources assigned to the SE for UL transmission is less than the corresponding number of frequency resources required for UL transmission by the SE; and responsive to determining that the number of frequency resources assigned to the SE for UL transmission is less than the corresponding number of frequency resources required for UL transmission by the SE, assigning more frequency resources for UL transmission to the SE.
10. The method of any of Claims 1-9, wherein the SE is a first SE, the method further comprising: determining (760) a remaining number of frequency resources that are still available for UL transmission based on the total number of frequency resources that are available for UL transmission and the first number of frequency resources for UL transmission assigned to the first SE; and assigning (770) a second number of frequency resources for UL transmission by a second SE of the plurality of SEs based on: the remaining number of frequency resources that are still available for UL transmission, and the corresponding number of frequency resources that are required for UL transmission by each SE of the plurality of SEs except for the first SE.
11. The method of Claim 10, wherein assigning the second number of frequency resources for the UL transmission by the second SE of the plurality of SEs comprises assigning the second number of frequency resources for the UL transmission by the second SE of the plurality of SEs based on a number of frequency resources desired for the UL transmission by the second SE.
12. The method of any of Claims 10-11, further comprising: subsequent to assigning the first number of frequency resources for UL transmission by the first SE, selecting (750) the second SE from the plurality of SEs based on the second SE having a highest priority of the plurality of SEs other than the first SE.
13. The method of any of Claims 1-12, wherein assigning the first number of frequency resources for UL transmission by the SE included in the plurality of SEs comprises assigning frequency resources for UL transmission by each SE included in the plurality of SEs based on a total number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs that has not been allocated its required frequency resources.
14. A network node (1000), configured to perform operations comprising: determining (710), for each SE included in the plurality of SEs, a corresponding number of frequency resources that are required for UL transmission by the SE; determining (720) a total number of frequency resources that are available at a network node to be scheduled for UL transmission by the plurality of SEs; andassigning (740) a first number of frequency resources for UL transmission by a first SE included in the plurality of SEs, based on: the total number of frequency resources that are available for UL transmission, and the corresponding number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs.
15. The communication device of Claim 14, the operations further comprising any of the operations of Claims 2-13.
16. A computer program comprising program code to be executed by processing circuitry (1002) of a network node (1000), whereby execution of the program code causes the network node to perform operations comprising: determining (710), for each SE included in the plurality of SEs, a corresponding number of frequency resources that are required for UL transmission by the SE; determining (720) a total number of frequency resources that are available at a network node to be scheduled for UL transmission by the plurality of SEs; and assigning (740) a first number of frequency resources for UL transmission by a first SE included in the plurality of SEs, based on: the total number of frequency resources that are available for UL transmission, and the corresponding number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs.
17. The computer program of Claim 16, the operations further comprising any of the operations of Claims 2-13.
18. A computer program product comprising a non-transitory storage medium (1006) including program code to be executed by processing circuitry (1002) of a network node (1000), whereby execution of the program code causes the network node to perform operations comprising: determining (710), for each SE included in the plurality of SEs, a corresponding number of frequency resources that are required for UL transmission by the SE; determining (720) a total number of frequency resources that are available at a network node to be scheduled for UL transmission by the plurality of SEs; and assigning (740) a first number of frequency resources for UL transmission by a first SE included in the plurality of SEs, based on:the total number of frequency resources that are available for UL transmission, and the corresponding number of frequency resources that are required for UL transmission by each SE included in the plurality of SEs.
19. The computer program product of Claim 18, the operations further comprising any of the operations of Claims 2-13.
20. A network node for protecting a network form a malicious UE, the network node comprising: processing circuitry configured to perform any of the operations of Claims 1-13; power supply circuitry configured to supply power to the processing circuitry.
21. A host configured to operate in a communication system to provide an over-the-top (OTT) service, the host comprising: processing circuitry configured to provide user data; and a network interface configured to initiate transmission of the user data to a network node in a cellular network for transmission to a user equipment (UE), the network node having a communication interface and processing circuitry, the processing circuitry of the network node configured to perform any of the operations of Claims 1-13 to transmit the user data from the host to the UE.
22. The host of Claim 21, wherein: the processing circuitry of the host is configured to execute a host application that provides the user data; and the UE comprises processing circuitry configured to execute a client application associated with the host application to receive the transmission of user data from the host.
23. A method implemented in a host configured to operate in a communication system that further includes a network node and a user equipment (UE), the method comprising: providing user data for the UE; and initiating a transmission carrying the user data to the UE via a cellular network comprising the network node, wherein the network node performs any of the operations of Claims 1-13 to transmit the user data from the host to the UE.
24. The method of Claim 23, further comprising, at the network node, transmitting the user data provided by the host for the UE.
25. The method of any of Claims 23-24, wherein the user data is provided at the host by executing a host application that interacts with a client application executing on the UE, the client application being associated with the host application.
26. A communication system configured to provide an over-the-top (OTT) service, the communication system comprising: a host comprising: processing circuitry configured to provide user data for a user equipment (UE), the user data being associated with the over-the-top service; and a network interface configured to initiate transmission of the user data toward a cellular network node for transmission to the UE, the network node having a communication interface and processing circuitry, the processing circuitry of the network node configured to perform any of the operations of Claims 1-13 to transmit the user data from the host to the UE.
27. The communication system of Claim 26, further comprising: the network node; and / or the UE.
28. A host configured to operate in a communication system to provide an over-the-top (OTT) service, the host comprising: processing circuitry configured to initiate receipt of user data; and a network interface configured to receive the user data from a network node in a cellular network, the network node having a communication interface and processing circuitry, the processing circuitry of the network node configured to perform any of the operations of Claims 1- 13 to receive the user data from a user equipment (UE) for the host.
29. The host of Claim 28, wherein: the processing circuitry of the host is configured to execute a host application that receives the user data; and the host application is configured to interact with a client application executing on the UE, the client application being associated with the host application.
30. The host of any of Claims 28-29, wherein the initiating receipt of the user data comprises requesting the user data.
31. A method implemented by a host configured to operate in a communication system that further includes a network node and a user equipment (UE), the method comprising: at the host, initiating receipt of user data from the UE, the user data originating from a transmission which the network node has received from the UE, wherein the network node performs any of the operations of Claims 1-13 to receive the user data from the UE for the host.
32. The method of Claim 31, further comprising at the network node, transmitting the received user data to the host.