Systems and methods for power saving from radio access network (RAN) awareness
By establishing a reference time between the application server and the wireless communication node and transmitting data packets containing transmission policies, the energy consumption problem of equipment in the prior art when processing untimely data packets is solved, and a wireless access network is realized Energy-saving effect.
Patent Information
- Application Number
- CN202411098839.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-03-29
- Filing Date
- 2024-08-12
- Publication Date
- 2025-02-21
AI Technical Summary
Prior art In augmented reality, virtual reality and mixed reality devices, it is difficult to effectively manage and save energy, especially in real-time communication sessions, where devices consume unnecessary power when processing untimely data packets.
By establishing a reference time between the application server and the wireless communication node, the application server transmits data packets to the wireless communication node, including transmission policy information, such as PDU set timestamps and transmission time windows, so that the wireless communication node selectively follows the reference time to the wireless communication node. The user equipment transmits data packets.
Energy saving is achieved based on wireless access network perception, reducing the energy consumption of equipment when processing untimely data packets, and improving the energy efficiency of the system.
Smart Images

Figure CN119497204A_ABST
Abstract
Description
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application claims the benefit of and priority to U.S. Provisional Application No. 63 / 532,805, filed on August 15, 2023, and U.S. Non-Provisional Patent Application No. 18 / 622,195, filed on March 29, 2024, the contents of both applications are incorporated herein by reference in their entirety. Technical Field
[0003] The present disclosure relates generally to wireless communications between devices, including but not limited to systems and methods for power saving based on radio access network (RAN) awareness. Background Art
[0004] Augmented reality (AR), virtual reality (VR), and mixed reality (MR) are becoming more common, with these technologies supported on a wider range of platforms and devices. Some AR / VR / MR devices can communicate with other devices in the environment through real-time communication (RTC) sessions or links. Summary of the invention
[0005] In one aspect, the present disclosure relates to a method. The method may include an application server and a wireless communication node (e.g., a node of a RAN, such as a base station), establishing a reference time (e.g., a time difference, such as for synchronizing NTP-S and CPDU-S) between one or more first clocks (e.g., a protocol data unit (PDU) set clock) of the application server and one or more second clocks (e.g., a network time protocol (NTP) clock) of the wireless communication node. The method may include the application server transmitting one or more data packets (e.g., a PDU set) for providing to a user equipment (UE) to the wireless communication node, the one or more data packets including information (e.g., a PDU set timestamp (PST-S) and a transmission time window in the PDU set metadata) that the wireless communication node can use to apply a transmission strategy (e.g., a PDU set discard strategy), and the transmission strategy is used to transmit the one or more data packets to the UE according to the reference time.
[0006] In some embodiments, the one or more data packets include one or more first data packets. The method may include transmitting one or more second data packets to the wireless communication node by the application server, the one or more first data packets being transmitted via a first data pipe and the one or more second data packets being transmitted via a second data pipe (e.g., an audio data pipe and a video data pipe). In some embodiments, the one or more data packets include one or more first data packets, the one or more first data packets including a common identifier (e.g., a PSSI+correlation identifier) with the one or more second data packets, the common identifier linking the one or more first data packets to the one or more second data packets. In some embodiments, the wireless communication node applies a transmission policy to each of the one or more first data packets and the one or more second data packets according to the common identifier (e.g., applying the same policy to the linked data pipe). In some embodiments, the method includes setting a transmission state (e.g., a Late-Discard All indication) of the one or more first data packets and the one or more second data packets by the application server, wherein the wireless communication node applies the transmission policy according to the transmission state. In some embodiments, the transmission state indicates whether the wireless communication node is to discard each of the one or more first data packets and the one or more second data packets in response to determining that at least one of the one or more first data packets or the one or more second data packets cannot be provided to the UE within the time window.
[0007] In some embodiments, the transmission policy includes a discard policy that corresponds to a transmission time window (e.g., a PDU set discard timer) during which one or more data packets will be transmitted to the UE. In some embodiments, the above information includes a first timestamp (e.g., PST-S) indicating a first time, wherein the first timestamp is generated according to one or more first clocks (e.g., PDU set clocks). In some embodiments, the wireless communication node determines a time budget for transmitting one or more data packets to the UE. The wireless communication node may determine the time budget based on: 1) a first timestamp; 2) an arrival time of one or more data packets from an application server determined based on one or more second clocks (e.g., NTP clocks); 3) a reference time (e.g., NTP-S and / or CPDU-S); and 4) a transmission time window corresponding to the transmission policy. In some embodiments, the above information includes a transmission time window (e.g., a discard time window) corresponding to the transmission policy. In some embodiments, the wireless communication node applies the transmission policy to at least one of the following: scheduling the transmission of one or more data packets or discarding one or more data packets.
[0008] In another aspect, the present disclosure relates to a wireless communication node, the wireless communication node comprising a wireless transceiver and one or more processors, the one or more processors being configured to determine a reference time between one or more first clocks of an application server and one or more second clocks of the wireless communication node. The one or more processors may be configured to: receive one or more data packets from the application server via the wireless transceiver for providing to a user equipment (UE), the one or more data packets comprising information that the wireless communication node can use to apply a transmission policy. The one or more processors may be configured to apply the transmission policy to the one or more data packets for selectively transmitting the one or more data packets to the UE via the wireless transceiver according to the reference time.
[0009] In some embodiments, the one or more data packets include one or more first data packets, wherein the one or more first data packets include a common identifier with one or more second data packets, and the common identifier links the one or more first data packets to the one or more second data packets. In some embodiments, the one or more processors apply a transmission policy to each of the one or more first data packets and the one or more second data packets according to the common identifier. In some embodiments, the one or more processors are further configured to determine the transmission status of the one or more first data packets and the one or more second data packets based on the information of the one or more first data packets and the one or more second data packets. The one or more processors can apply the transmission policy based on the transmission status. In some embodiments, the transmission status indicates whether the wireless communication node is to discard each of the one or more first data packets and the one or more second data packets in response to determining that at least one of the one or more first data packets or the one or more second data packets cannot be provided to the UE within the time budget.
[0010] In some embodiments, the information includes a first timestamp indicating a first time, the first timestamp being generated according to one or more first clocks. In some embodiments, the one or more processors are configured to determine a time budget for transmitting one or more data packets to the UE, the time budget being determined according to: 1) the first timestamp; 2) an arrival time of one or more data packets from an application server determined based on one or more second clocks; 3) a reference time; and 4) a transmission time window corresponding to a transmission strategy. In some embodiments, the one or more processors are configured to apply the transmission strategy to at least one of: scheduling transmission of one or more data packets or discarding one or more data packets.
[0011] In yet another aspect, the present disclosure relates to an application server, the application server comprising a wireless transceiver and one or more processors, the one or more processors being configured to establish a reference time with a wireless communication node between one or more first clocks of the application server and one or more second clocks of the wireless communication node. The one or more processors may be configured to transmit, via the wireless transceiver, to the wireless communication node one or more data packets for providing to a user equipment (UE), the one or more data packets comprising information that the wireless communication node can use to apply a transmission strategy, the transmission strategy being used to transmit the one or more data packets to the UE according to the reference time. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The accompanying drawings are not intended to be drawn to scale. Like reference numbers and names in the various drawings refer to like elements. For clarity, not every component may be labeled in every drawing.
[0013] Figure 1 is a schematic diagram of an example wireless communication system according to an example implementation of the present disclosure.
[0014] Figure 2 is a schematic diagram of a console and a head wearable display for presenting augmented reality or virtual reality according to an example embodiment of the present disclosure.
[0015] Figure 3 is a schematic diagram of a head wearable display according to an example embodiment of the present disclosure.
[0016] Figure 4 is a block diagram of a computing environment according to an example implementation of the present disclosure.
[0017] Figure 5 is a block diagram of a system for power saving based on radio access network (RAN) awareness according to an example embodiment of the present disclosure.
[0018] Figure 6 is a timing diagram for transmitting a data packet according to an example embodiment of the present disclosure.
[0019] Figure 7 is a diagram showing a method for transmitting data through a core network (eg, Figure 5 The signal flow chart of the core network of the system sending signals.
[0020] Figure 8 is a flow chart illustrating an example method for power saving based on radio access network (RAN) awareness according to an example implementation of the present disclosure. DETAILED DESCRIPTION
[0021] Before turning to the drawings that show certain embodiments in detail, it should be understood that the present disclosure is not limited to the details or methods set forth in the specification or shown in the drawings. It should also be understood that the terminology used herein is for descriptive purposes only and should not be considered as limiting.
[0022] Disclosed herein is a system and method for energy saving based on radio access network (RAN) awareness. In a real-time communication (RTC) session, an endpoint / receiver can determine how to present media to an end user (e.g., in a multimodal stream, such as an audio stream and a video stream). For example, if all media types arrive within a time window, the receiver's decoder can synchronize the streams of these media types (e.g., lip sync and voice) to the end user. However, if a portion of the media arrives late (e.g., audio is received but video packets are late), the receiver can render only the audio, and outdated video packets can be discarded, or both audio packets and video packets can be discarded. In instances where received packets are not used by a device (e.g., because these packets arrive too late for real-time communication), the device or UE may still consume unnecessary power when processing these packets due to, for example, the use of a universal mobile telecommunications system (UMTS) air interface (or Uu interface) and any internal processing of these packets. In other words, the UE may waste unnecessary power or energy resources when processing packets that are otherwise discarded.
[0023] In a cellular communication system, energy saving can be achieved using discontinuous reception (DRX) at the UE, which allows the UE to enter a sleep mode periodically (e.g., outside a DRX window or cycle). For example, the device can wake up between DRX cycles to receive data packets (e.g., protocol data units or PDUs) from the network via a radio access network (RAN). If there are no PDUs scheduled for transmission to the UE, the UE can return to sleep (e.g., enter sleep mode), allowing the UE to reserve more energy for later use. Some solutions or standards may include PDU set awareness of the RAN for scheduling a quality of service (QoS) flow (e.g., video or audio). For example, if the transmission time of the PDU set exceeds the PDU set delay budget (PSDB), the RAN can avoid transmitting unnecessary PDUs to the device. Such a solution may define the functionality of a QoS flow. However, the correlation between two PDU sets may not be defined (e.g., for a multimodal flow with multiple related media streams (e.g., audio and video) carried by two different QoS flows).
[0024] According to the systems and methods described herein, the RAN may be made aware that each PDU set transmission has an absolute deadline based on or according to a transmission time window. This use case may be due to synchronization of multimodal streams at the receiver / decoder side. The RAN may be made aware of the PDU set transmission window. For example, at the control plane level, an application function (AF) may indicate to the RAN various parameters for signaling the PDU set transmission window. On the user plane, for each PDU set, the AF may include various information corresponding to these parameters for associating the PDU set with the PDU set transmission window. The RAN may determine a time budget for transmitting the PDU set based on the difference between the information corresponding to the PDU set and the PDU set transmission window. In an instance where the RAN determines that the PDU set cannot be transmitted within the time budget, the RAN may discard the PDU set.
[0025] In some embodiments, in the case where the RAN is to coordinate the scheduling of multiple modal flows together, the RAN can be made aware that the modal flows are related. For example, the PDU set source identifier may include a correlation identifier that associates multiple modal flows. If the RAN identifies multiple PDU sets carrying the same correlation identifier, the RAN can determine that the PDU sets are related (e.g., part of the same modal flow). In addition, the RAN can apply a policy for discarding PDU sets. If a PDU set fails to meet the time budget, the RAN can discard the related PDU set. The RAN can receive the policy based on an indication included in the metadata of the PDU set (e.g., sent by the AF on the user plane or via the control plane), an indication set or defined locally, and the like.
[0026] Figure 1An example wireless communication system 100 is shown. The wireless communication system 100 may include a base station 110 (also referred to as a "wireless communication node 110" or "station 110") and one or more user equipment (UE) 120 (also referred to as a "wireless communication device 120" or "terminal device 120"). The base station 110 and the UE 120 may communicate via wireless communication links 130A, 130B, 130N. The wireless communication link 130 may be a cellular communication link that complies with third generation mobile communication technology (3G), fourth generation mobile communication technology (4G), fifth generation mobile communication technology (5G), or other cellular communication protocols or Wi-Fi communication protocols. In one example, the wireless communication link 130 supports, employs, or is based on orthogonal frequency division multiple access (OFDMA). In one aspect, the UE 120 is located within a geographical boundary relative to the base station 110 and may communicate with or through the base station 110. In some embodiments, the wireless communication system 100 includes more than one wireless communication link. Figure 1 More, fewer, or more of the components shown may be included. Figure 1 For example, the wireless communication system 100 may include components other than Figure 1 One or more additional base stations 110 other than the base station 110 shown in FIG.
[0027] In some embodiments, UE 120 may be a user device, such as a mobile phone, a smart phone, a personal digital assistant (PDA), a tablet computer, a laptop computer, a wearable computing device, etc. Each UE 120 may communicate with a base station 110 via a corresponding wireless communication link 130. For example, UE 120 may transmit data to base station 110 via wireless communication link 130, and receive data from base station 110 via wireless communication link 130. Example data may include audio data, image data, text, etc. Communication or data transmission by UE 120 to base station 110 may be referred to as uplink communication. Communication or data reception by UE 120 from base station 110 may be referred to as downlink communication. In some embodiments, UE 120A includes a wireless interface 122, a processor 124, a storage device (also referred to as memory) 126, and one or more antennas 128. These components may be embodied in hardware, software, firmware, or a combination thereof. In some embodiments, UE 120A includes more than one wireless interface 122, a processor 124, a storage device (also referred to as memory) 126, and one or more antennas 128. These components may be embodied in hardware, software, firmware, or a combination thereof. In some embodiments, UE 120A includes more than one wireless interface 122, a processor 124, a storage device (also referred to as memory) 126, and one or more antennas 128. These components may be embodied in hardware, software, firmware, or a combination thereof. Figure 1 More, fewer, or more of the components shown may be included. Figure 1 For example, UE 120 may include an electronic display and / or input device. For example, UE 120 may include in addition to Figure 1 Additional antennas 128 and wireless interfaces 122 beyond the antennas 128 and wireless interfaces 122 shown in FIG.
[0028] Antenna 128 can be a component that receives radio frequency (RF) signals and / or transmits RF signals through a wireless medium. The frequency of the RF signal can be between 200 MHz and 100 GHz. The RF signal can have a data packet, symbol or frame corresponding to the data used for communication. Antenna 128 can be a dipole antenna, a patch antenna, a loop antenna or any suitable antenna for wireless communication. In one aspect, a single antenna 128 is used to transmit and receive RF signals. In one aspect, different antennas 128 are used to transmit and receive RF signals. In one aspect, multiple antennas 128 are used to support multiple-in, multiple-out (MIMO) communications.
[0029] The wireless interface 122 includes or is embodied as a transceiver for transmitting and receiving RF signals through a wireless medium. The wireless interface 122 can communicate with the wireless interface 112 of the base station 110 through a wireless communication link 130A. In one configuration, the wireless interface 122 is coupled to one or more antennas 128. In one aspect, the wireless interface 122 can receive an RF signal at an RF frequency received by the antenna 128, and down-convert the RF signal to a baseband frequency (e.g., 0 to 1 GHz). The wireless interface 122 can provide a down-converted signal to the processor 124. In one aspect, the wireless interface 122 can receive a baseband signal for transmission at a baseband frequency from the processor 124, and up-convert the baseband signal to generate an RF signal. The wireless interface 122 can transmit the RF signal through the antenna 128.
[0030] The processor 124 is a component that processes data. The processor 124 may be embodied as a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a logic circuit, etc. The processor 124 may obtain instructions from the storage device 126 and execute these instructions. In one aspect, the processor 124 may receive down-converted data at a baseband frequency from the wireless interface 122, and decode or process the down-converted data. For example, the processor 124 may generate audio data or image data based on the down-converted data, and present the audio indicated by the audio data and / or the image indicated by the image data to the user of the UE 120A. In one aspect, the processor 124 may generate or obtain data for transmission at a baseband frequency, and encode or process the data. For example, the processor 124 may encode or process image data or audio data at a baseband frequency, and provide the encoded or processed data to the wireless interface 122 for transmission.
[0031] The storage device 126 is a component that stores data. The storage device 126 may be embodied as a random access memory (RAM), a flash memory, a read only memory (ROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a register, a hard disk, a removable disk, a compact disc read-only memory (CD-ROM), or any device that can be used to store data. The storage device 126 may be embodied as a non-transitory computer-readable medium storing a plurality of instructions that may be executed by the processor 124 to perform various functions of the UE 120A disclosed herein. In some embodiments, the storage device 126 and the processor 124 are integrated into a single component.
[0032] In some embodiments, each of UEs 120B...120N includes similar components of UE 120A for communicating with base station 110. Therefore, for the sake of brevity, detailed descriptions of the repeated parts thereof are omitted herein.
[0033] In some embodiments, the base station 110 may be an evolved node B (eNB), a serving eNB, a target eNB, a femto station, or a pico station. The base station 110 may be communicatively coupled to another base station 110 or other communication device via a wireless communication link and / or a wired communication link. The base station 110 may receive data (or RF signals) from the UE 120 in an uplink communication. Additionally or alternatively, the base station 110 may provide data to another UE 120, another base station, or another communication device. Thus, the base station 110 allows communication between UEs 120 associated with the base station 110 or other UEs associated with different base stations. In some embodiments, the base station 110 includes a wireless interface 112, a processor 114, a storage device (also referred to as a memory) 116, and one or more antennas 118. These components may be embodied in hardware, software, firmware, or a combination thereof. In some embodiments, the base station 110 includes more than one embodiment of the present invention. Figure 1 More, fewer, or more of the components shown may be included. Figure 1 For example, base station 110 may include an electronic display and / or an input device. For example, base station 110 may include Figure 1 An additional antenna 118 and wireless interface 112 are provided in addition to the antenna 118 and wireless interface 112 shown in FIG.
[0034] Antenna 118 may be a component that receives radio frequency (RF) signals and / or transmits RF signals through a wireless medium. Antenna 118 may be a dipole antenna, a patch antenna, a loop antenna, or any suitable antenna for wireless communication. In one aspect, a single antenna 118 is used to both transmit and receive RF signals. In one aspect, different antennas 118 are used to transmit and receive RF signals. In one aspect, multiple antennas 118 are used to support multiple-input multiple-output (MIMO) communications.
[0035] The wireless interface 112 includes or is embodied as a transceiver for transmitting and receiving RF signals through a wireless medium. The wireless interface 112 can communicate with the wireless interface 122 of the UE 120 through a wireless communication link 130. In one configuration, the wireless interface 112 is coupled to one or more antennas 118. In one aspect, the wireless interface 112 can receive an RF signal at an RF frequency received by the antenna 118, and down-convert the RF signal to a baseband frequency (e.g., 0 GHz to 1 GHz). The wireless interface 112 can provide the processor 114 with a down-converted signal. In one aspect, the wireless interface 112 can receive a baseband signal for transmission at a baseband frequency from the processor 114, and up-convert the baseband signal to generate an RF signal. The wireless interface 112 can transmit the RF signal through the antenna 118.
[0036] The processor 114 is a component for processing data. The processor 114 may be embodied as an FPGA, an ASIC, a logic circuit, etc. The processor 114 may obtain instructions from the storage device 116 and execute these instructions. In one aspect, the processor 114 may receive down-converted data at baseband frequency from the wireless interface 112, and decode or process the down-converted data. For example, the processor 114 may generate audio data or image data based on the down-converted data. In one aspect, the processor 114 may generate or obtain data for transmission at baseband frequency, and encode or process the data. For example, the processor 114 may encode or process image data or audio data at baseband frequency, and provide the encoded or processed data to the wireless interface 112 for transmission. In one aspect, the processor 114 may set, specify, schedule or allocate communication resources for different UEs 120. For example, the processor 114 may set different modulation schemes, time slots, channels, frequency bands, etc. for each UE 120 to avoid interference. The processor 114 may generate data (or an uplink configuration grant (UL CG)) indicating the configuration of communication resources and provide the data (or UL CG) to the wireless interface 112 for transmission to the UE 120 .
[0037] The storage device 116 is a component that stores data. The storage device 116 may be embodied as a RAM, a flash memory, a ROM, an EPROM, an EEPROM, a register, a hard disk, a removable disk, a CD-ROM, or any device that can be used to store data. The storage device 116 may be embodied as a non-transitory computer-readable medium storing a plurality of instructions that can be executed by the processor 114 to perform various functions of the base station 110 disclosed herein. In some embodiments, the storage device 116 and the processor 114 are integrated into a single component.
[0038] In some embodiments, the communication between the base station 110 and the UE 120 is based on one or more layers of the Open Systems Interconnection (OSI) model. The OSI model may include: a physical layer, a medium access control (MAC) layer, a radio link control (RLC) layer, a packet data convergence protocol (PDCP) layer, a radio resource control (RRC) layer, a non-access stratum (NAS) layer or an Internet Protocol (IP) layer and other layers.
[0039] Figure 2 is a block diagram of an example artificial reality system environment 200. In some embodiments, the artificial reality system environment 200 includes a HWD 250 worn by a user, and a console 210 that provides artificial reality (e.g., augmented reality, virtual reality, mixed reality) content to the HWD 250. Each of the HWD 250 and the console 210 may be a separate UE 120. The HWD 250 may be referred to as, include, or be a part of a head mounted display (HMD), a head mounted device (HMD), a head wearable device (HWD), a head worn display (HWD), or a head worn device (HWD). The HWD 250 may detect the position and / or orientation of the HWD 250 and the shape, position and / or orientation of the user's body / hand / face, and provide the detected position and / or orientation of the HWD 250 and / or tracking information indicating the shape, position and / or orientation of the body / hand / face to the console 210. The console 210 may generate image data indicating an artificial reality image based on the detected position and / or orientation of the HWD 250, the detected shape, position and / or orientation of the user's body / hand / face, and / or the user input for artificial reality, and transmit the image data to the HWD 250 for presentation. In some embodiments, the artificial reality system environment 200 includes the following: Figure 2 More, fewer, or including components than those shown in Figure 2In some embodiments, the functionality of one or more components of the artificial reality system environment 200 may be distributed among the components in a manner different from that described herein. For example, some functions of the console 210 may be performed by the HWD 250. For example, some functions of the HWD 250 may be performed by the console 210. In some embodiments, the console 210 is integrated as part of the HWD 250.
[0040] In some embodiments, HWD 250 is an electronic component that can be worn by a user and can present or provide an artificial reality experience to the user. HWD 250 can render one or more images, videos, audio, or some combination thereof to provide an artificial reality experience to the user. In some embodiments, audio is presented via an external device (e.g., a speaker and / or headphones) that receives audio information from HWD 250, console 210, or both and presents audio based on the audio information. In some embodiments, HWD 250 includes a sensor 255, a wireless interface 265, a processor 270, an electronic display 275, a lens 280, and a compensator 285. These components can work in conjunction to detect the position of HWD 250 and the gaze direction of the user wearing HWD 250, and render an image of a field of view within an artificial reality corresponding to the detected position and / or orientation of HWD 250. In other embodiments, HWD 250 includes a sensor 255, a wireless interface 265, a processor 270, an electronic display 275, a lens 280, and a compensator 285. Figure 2 More, fewer, or including components than those shown in Figure 2 The components shown in the figure are different components.
[0041] In some embodiments, sensor 255 includes electronic components, or a combination of electronic components and software components, that detect the position and orientation of HWD 250. Examples of sensor 255 may include: one or more imaging sensors, one or more accelerometers, one or more gyroscopes, one or more magnetometers, or another suitable type of sensor that detects motion and / or position. For example, one or more accelerometers may measure translational motion (e.g., forward / backward, up / down, left / right), and one or more gyroscopes may measure rotational motion (e.g., pitch, left-right sway, roll). In some embodiments, sensor 255 detects translational motion and rotational motion, and determines the orientation and position of HWD 250. In one aspect, sensor 255 may detect translational motion and rotational motion relative to the previous orientation and position of HWD 250, and determine the new orientation and / or position of HWD 250 by accumulating or integrating the detected translational motion and / or rotational motion. For example, assuming that HWD 250 is facing a direction 25 degrees from a reference direction, sensor 255 may determine that HWD 250 is now facing or facing a direction 45 degrees from the reference direction in response to detecting that HWD 250 has turned 20 degrees. For another example, assuming that HWD 250 is located two feet from a reference point in a first direction, sensor 255 may determine that HWD 250 is now located at the vector product of two feet in the first direction and three feet in the second direction in response to detecting that HWD 250 has moved three feet in a second direction.
[0042] In some embodiments, the sensor 255 includes an eye tracker. The eye tracker may include an electronic component or a combination of an electronic component and a software component that determines the gaze direction of the user of the HWD 250. In some embodiments, the HWD 250, the console 210, or a combination thereof may generate image data for artificial reality in conjunction with the gaze direction of the user of the HWD 250. In some embodiments, the eye tracker includes two eye trackers, each of which captures an image of a corresponding eye and determines the gaze direction of the eye. In one example, the eye tracker determines the angular rotation of the eye, the translation of the eye, the torsion change of the eye, and / or the shape change of the eye based on the captured image of the eye, and determines the relative gaze direction relative to the HWD 250 based on the determined angular rotation of the eye, the translation of the eye, and the torsion change of the eye. In one method, the eye tracker may illuminate or project a predetermined reference pattern or structured pattern on a portion of the eye, and capture an image of the eye to analyze the pattern projected on the portion of the eye, thereby determining the relative gaze direction of the eye relative to the HWD 250. In some embodiments, the eye tracker determines the user's gaze direction in conjunction with the orientation of HWD 250 and the relative gaze direction relative to HWD 250. For example, assuming that HWD 250 is oriented at 30 degrees from a reference direction, and the relative gaze direction of HWD 250 is -10 degrees (or 350 degrees) relative to HWD 250, the eye tracker may determine that the user's gaze direction is 20 degrees from the reference direction. In some embodiments, the user of HWD 250 may configure HWD 250 (e.g., via user settings) to enable or disable the eye tracker. In some embodiments, the user of HWD 250 is prompted to enable or disable the eye tracker.
[0043] In some embodiments, the wireless interface 265 includes an electronic component or a combination of electronic components and software components that communicate with the console 210. The wireless interface 265 can be or correspond to the wireless interface 122. The wireless interface 265 can communicate with the wireless interface 215 of the console 210 through the base station 110 through a wireless communication link. The wireless interface 265 can transmit the following data to the console 210 through the communication link: the data indicates the determined position and / or orientation of the HWD 250, and / or the determined gaze direction of the user. In addition, the wireless interface 265 can receive image data indicating or corresponding to the image to be rendered from the console 210 through the communication link, as well as additional data associated with the image.
[0044] In some embodiments, the processor 270 includes an electronic component, or a combination of electronic components and software components, that generates one or more images for display (e.g., according to a change in the field of view in the space of the artificial reality). In some embodiments, the processor 270 is implemented as a part of the processor 124 or is communicatively coupled to the processor 124. In some embodiments, the processor 270 is implemented as a processor (or a graphical processing unit (GPU)) that executes instructions to perform various functions described herein. The processor 270 may receive image data describing an artificial reality image to be rendered and additional data associated with the image through the wireless interface 265, and may render the image through the electronic display 275 for display. In some embodiments, the image data from the console 210 may be encoded, and the processor 270 may decode the image data to render the image. In some embodiments, the processor 270 receives object information and depth information in the additional data from the console 210, the object information indicating a virtual object in the artificial reality space, and the depth information indicating the depth of the virtual object (or the distance from the HWD 250). In one aspect, the processor 270 may perform shading, reprojection, and / or blending based on the artificial reality image from the console 210, object information, depth information, and / or updated sensor measurements from the sensor 255 to update the artificial reality image to correspond to the updated position and / or orientation of the HWD 250. Assuming that the user turns his head after the initial sensor measurements, the processor 270 may generate a small portion (e.g., 10%) of the image corresponding to the updated field of view within the artificial reality based on the updated sensor measurements and append the portion to the image in the image data from the console 210 by reprojection, rather than reconstructing the entire image in response to the updated sensor measurements. The processor 270 may perform shading and / or blending on the appended edges. Thus, the processor 270 may generate an artificial reality image without reconstructing the artificial reality image based on the updated sensor measurements.
[0045] In some embodiments, the electronic display 275 is an electronic component that displays an image. The electronic display 275 can be, for example, a liquid crystal display or an organic light emitting diode display. The electronic display 275 can be a transparent display that allows the user to see through. In some embodiments, when the user wears the HWD 250, the electronic display 275 is located near the user's eyes (e.g., less than 3 inches). In one aspect, the electronic display 275 emits light or projects light toward the user's eyes based on the image generated by the processor 270.
[0046] In some embodiments, lens 280 is a mechanical component that changes the light received from electronic display 275. Lens 280 can magnify the light from electronic display 275 and correct the optical errors associated with the light. Lens 280 can be a Fresnel lens, a convex lens, a concave lens, a filter, or any suitable optical component that changes the light from electronic display 275. Although electronic display 275 is very close to both eyes, light from electronic display 275 can still pass through lens 280 to the pupil so that the user can see the image displayed by electronic display 275.
[0047] In some embodiments, compensator 285 includes an electronic component or a combination of electronic and software components that performs compensation to compensate for any distortion or aberration. In one aspect, lens 280 introduces optical aberrations (e.g., chromatic aberration), pincushion distortion, barrel distortion, etc. Compensator 285 can determine compensation (e.g., pre-distortion) to be applied to the image to be rendered from processor 270 to compensate for the distortion caused by lens 280, and apply the determined compensation to the image from processor 270. Compensator 285 can provide the pre-distorted image to electronic display 275.
[0048] In some embodiments, the console 210 is an electronic component, or a combination of electronic components and software components, that provides content to be rendered to the HWD 250. In one aspect, the console 210 includes a wireless interface 215 and a processor 230. These components can work together to determine the visual field of artificial reality corresponding to the position of the HWD 250 and the gaze direction of the user of the HWD 250 (e.g., the user's field of view (FOV)), and can generate image data indicating an artificial reality image corresponding to the determined visual field. In addition, these components can work together to generate additional data associated with the image. Additional data can be information associated with presenting or rendering artificial reality other than the artificial reality image. Examples of additional data include hand model data, mapping information (or simultaneous localization and mapping (SLAM) data) for converting the position and orientation of the HWD 250 in the physical space to the virtual space, eye tracking data, motion vector information, depth information, edge information, object information, etc. The console 210 may provide image data and additional data to the HWD 250 for use in presenting artificial reality. Figure 2 More, fewer, or more of the components shown may be included. Figure 2 In some embodiments, console 210 is integrated as part of HWD 250.
[0049] In some embodiments, the wireless interface 215 is an electronic component, or a combination of an electronic component and a software component, that communicates with the HWD 250. The wireless interface 215 may be the wireless interface 122 or may correspond to the wireless interface 122. The wireless interface 215 may be a corresponding component of the wireless interface 265 for communicating via a communication link (e.g., a wireless communication link). The wireless interface 215 may receive data from the HWD 250 via the communication link, the data indicating the determined position and / or orientation of the HWD 250, and / or the determined gaze direction of the user. In addition, the wireless interface 215 may transmit image data describing the image to be rendered and additional data associated with the artificial reality image to the HWD 250 via the communication link.
[0050] The processor 230 may include or correspond to a component that generates content to be rendered according to the position and / or orientation of the HWD 250. In some embodiments, the processor 230 is implemented as a part of the processor 124 or is communicatively coupled to the processor 124. In some embodiments, the processor 230 may be combined with the gaze direction of the user of the HWD 250. In one aspect, the processor 230 determines the field of view of the artificial reality according to the position and / or orientation of the HWD 250. For example, the processor 230 maps the position of the HWD 250 in the physical space to the position in the artificial reality space, and determines the field of view of the artificial reality space from the position in the mapped artificial reality space, along the direction corresponding to the mapped orientation. The processor 230 may generate image data describing the image of the field of view of the determined artificial reality space, and transmit the image data to the HWD 250 via the wireless interface 215. In some embodiments, the processor 230 may generate additional data associated with the image (the additional data includes motion vector information, depth information, edge information, object information, hand model data, etc.), and transmit the additional data and image data to the HWD 250 via the wireless interface 215. Processor 230 may encode image data describing the image, and may transmit the encoded data to HWD 250. In some embodiments, processor 230 generates image data and provides the image data to HWD 250 periodically (eg, every 11 milliseconds (ms)).
[0051] In one aspect, the process of detecting the position of the HWD 250 and the gaze direction of the user wearing the HWD, and rendering the image to the user should be performed within one frame time (e.g., 11ms or 16ms). The delay between the movement of the user wearing the HWD 250 and the image displayed corresponding to the user's movement may cause jitter, which may cause motion sickness and may reduce the user experience. In one aspect, the HWD 250 and the console 210 can prioritize the communication of AR / VR so that the delay between the movement of the user wearing the HWD 250 and the image displayed corresponding to the user's movement can be presented within one frame time (e.g., 11ms or 16ms), thereby providing a seamless experience.
[0052] Figure 3 2 is a schematic diagram of HWD 250 according to an exemplary embodiment. In some embodiments, HWD 250 includes a front rigid body 305 and a belt 310. Front rigid body 305 includes electronic display 275 ( Figure 3 Not shown), lens 280 ( Figure 3 ), sensor 255, wireless interface 265 and processor 270. Figure 3 In the illustrated embodiment, the wireless interface 265, processor 270, and sensor 255 are located within the front rigid body 305 and may not be visible to the outside. In other embodiments, the HWD 250 has a Figure 3 For example, the wireless interface 265, the processor 270, and / or the sensor 255 may be located in a different configuration than that shown. Figure 3 The positions shown are different positions.
[0053] Various operations described herein can be implemented on a computer system. Figure 4 A block diagram of a representative computing system 414 that can be used to implement the present disclosure is shown. In some embodiments, the base station 110, the UE 120, the console 210, and the HWD 250 are implemented by the computing system 414. The computing system 414 can be implemented as, for example, a consumer device (e.g., a smartphone, other mobile phones, a tablet computer, a wearable computing device (e.g., a smart watch, glasses, a head wearable display), a desktop computer, a laptop computer) or by a distributed computing device. The computing system 414 can be implemented to provide a VR experience, an AR experience, and an MR experience. In some embodiments, the computing system 414 may include conventional computer components, such as a processor unit 416, a storage device 418, a network interface 420, a user input device 422, and a user output device 424.
[0054] The network interface 420 can provide a connection to a wide area network (e.g., the Internet) to which a wide area network (WAN) interface of the remote server system is also connected. The network interface 420 can include a wired interface (e.g., Ethernet) and / or a wireless interface implementing various RF data communication standards, such as Wi-Fi, Bluetooth, or a cellular data network standard (e.g., 3G, 4G, 5G, 60 GHz, Long Term Evolution (LTE), etc.).
[0055] The network interface 420 may include a transceiver that allows the computing system 414 to transmit data to a remote device using a transmitter and receive data from a remote device using a receiver. The transceiver may be configured to support transmission / reception that supports industry standards for implementing bidirectional communications. An antenna may be attached to the transceiver housing and electrically coupled to the transceiver. Additionally or alternatively, a multi-antenna array may be electrically coupled to the transceiver so that multiple beams pointing in different directions may facilitate transmission and / or reception of data.
[0056] The transmitter may be configured to wirelessly transmit frames, time slots, or symbols generated by the processor unit 416. Similarly, the receiver may be configured to receive frames, time slots, or symbols, and the processor unit 416 may be configured to process the frames. For example, the processor unit 416 may be configured to determine the frame type and process the frame and / or fields of the frame accordingly.
[0057] User input device 422 may include any device (or devices) via which a user may provide signals to computing system 414; computing system 414 may interpret these signals as indicating a particular user request or information. User input device 422 may include any or all of the following: a keyboard; a touch pad; a touch screen; a mouse; or other pointing device; a scroll wheel; a click wheel; a dial; a button; a switch; a keypad; a microphone; and a sensor (e.g., a motion sensor, an eye tracking sensor, etc.), among others.
[0058] User output device 424 may include any device via which computing system 414 can provide information to a user. For example, user output device 424 may include a display for displaying images generated by or transmitted to computing system 414. The display may combine various image generation technologies with supporting electronic devices (e.g., digital-to-analog converters or analog-to-digital converters or signal processors, etc.), such as liquid crystal displays (LCDs), light-emitting diodes (LEDs) including organic light-emitting diodes (OLEDs), projection systems, or cathode ray tubes (CRTs). Devices such as touch screens may be used as both input devices and output devices. User output device 424 may be provided in addition to or in place of a display. Examples include indicator lights, speakers, tactile "display" devices, and printers, etc.
[0059] Some embodiments include storing computer program instructions in a plurality of electronic components such as microprocessors, storage devices and memories in a computer-readable storage medium (e.g., non-transient computer-readable media). Many features in each feature described in this specification can be implemented as the following process: the process is specified as a set of program instructions encoded on a computer-readable storage medium. When these program instructions are executed by one or more processors, these program instructions cause the processor to perform the various operations indicated in these program instructions. Examples of program instructions or computer codes include machine codes and files, and the machine codes are generated, for example, by a compiler, and the files include high-level codes executed by a computer, an electronic component or a microprocessor using an interpreter. Processor unit 416 can provide various functions for computing system 414 by suitable programming, and these functions include any functions performed by a server or a client as described herein, or other functions related to message management services.
[0060] It should be understood that computing system 414 is illustrative and can be subjected to various variations and modifications. The computer system used in conjunction with the present disclosure may have other functions not specifically described herein. In addition, although computing system 414 is described with reference to a specific block, it should be understood that these blocks are defined for the convenience of description and are not intended to imply a specific physical arrangement of each component part. For example, different blocks may be located in the same facility, in the same server frame, or on the same motherboard. In addition, these blocks do not need to correspond to physically different components. Each block may be configured to perform various operations, for example, by programming a processor or providing a suitable control circuit system, and various blocks may or may not be reconfigurable, depending on how the initial configuration is obtained. Various embodiments of the present disclosure may be implemented in a variety of devices, including electronic devices implemented using any combination of circuit systems and software.
[0061] Now refer to Figure 5 , depicted is a block diagram of a system 500 for implementing energy saving based on radio access network (RAN) awareness according to an example implementation of the present disclosure. The system 500 may include a user equipment (UE) 502, which is communicatively coupled to an application server 504 through a core network 508 via corresponding one or more base stations 506 (also referred to as "one or more wireless communication nodes"). The UE 502 may be configured to establish a connection with the application server 504 to send and / or receive data / information / traffic between the UE 502 and the application server 504. In various embodiments, the service may include multimodal services, such as audio services, video services, control services, etc., which may be part of a public network service. For example, the service may include both audio data and video data of a public media (e.g., including both audio and video).
[0062] As described in more detail below, the application server 504 may be configured to establish a reference time between the application server 504 and the base station 506, wherein the reference time is, for example, a difference or time interval / offset between one or more clocks of the application server 504 and one or more second clocks of the base station 506. The application server 504 may be configured to transmit one or more data packets to the base station 506 for provision to the UE 502. The one or more data packets may include information that the wireless communication node may use to apply a transmission policy for transmitting the one or more data packets to the UE 502 according to the reference time.
[0063] UE 502 and application server 504 (and Figure 5Other components or elements of the invention may include one or more processors 510 and a memory 512. The one or more processors 510 may be similar to Figure 1 processors 114 and 124, Figure 2 and Figure 3 One or more processors 230, 270 and / or Figure 4 The processor unit 416 of FIG. 512 can be similar to Figure 1 Memory 116, 126 and / or Figure 4 UE 502 and application server 504 (and Figure 5 Other components / elements of the invention may include a wireless interface 514, which may be similar to Figures 1 to 3 The wireless interface 112, 122, 215, 265 and / or Figure 4 The network interface 420 is provided.
[0064] UE 502 and application server 504 (and Figure 5 The one or more processing engines 516 may include other components or elements of the UE 502 and the application server 504. The one or more processing engines 516 may be or include any device, component, element or hardware designed or configured to perform various functions of the device. Although the one or more processing engines 516 are shown as being embodied on the corresponding UE 502 and the application server 504, in various embodiments, the one or more processing engines 516 may be or include hardware of the wireless interface 514. The one or more processing engines 516 may include a data packet generator 518 and a clock manager 520. Although these two processing engines 516 are shown and described, in various embodiments, additional processing engines 516 may be implemented at the UE 502, the application server 504 and / or in the wireless interface 510. In addition, in various embodiments, one or more processing engines 516 may be combined with another processing engine 516. Additionally or alternatively, one processing engine 516 may be divided into multiple processing engines 516.
[0065] The application server 504 and the UE 502 may be configured to generate, create, or otherwise establish a communication session. For example, the UE 502 may be configured to launch an application hosted on the application server 504, which may involve exchanging data packets / protocol data units (PDUs) between the UE 502 and the application server 504. The communication session may be or include multiple connections or channels between the UE 502 and the server 504 via one or more base stations 506 through the core network 508. For example, for the purpose of communicating with the application server 504, the UE 502 may establish a connection with a base station 506 within the wireless communication range of the UE 502. In various embodiments, although not shown, the application server 504 may be configured to communicate with the core network 508 via the base station 506, which may communicatively couple the application server 504 to the core network 508.
[0066] The core network 508 may include or may be configured to provide various functions. In various embodiments, the core network 508 may include various processors and computing devices, memory and wireless interfaces, etc., which together provide various functions described herein. The core network 508 may be configured to provide a user plane function (UPF) 522, an application function (AF) 524, a session management function (SMF) 526, a network exposure function (NEF) 528, and a policy control function (PCF) 530. Although these functions are shown and described in more detail below, the core network 508 may include, maintain or otherwise provide various additional functions, such as access and mobility management function (AMF), authentication server function (AUSF), unified data management (UDM), network slice selection function (NSSF), or any other function of the core network 508.
[0067] The core network 508 may include or provide a UPF 522. The UPF 522 may be or include the following functions of the core network 508: the function is configured to manage user data services, including routing and forwarding these services to the intended destination. The core network 508 may include or provide an AF 524. The AF 524 may be or include the following functions of the core network 508: the function supports application services to meet the requirements of specific applications for quality of service (QoS) and service flow support. The core network 508 may include or provide an SMF 526. The SMF 526 may be or include the following functions of the core network 508: the function manages network sessions, including establishing, maintaining and / or terminating network sessions. The SMF 526 may be configured to help select and connect to the appropriate UPF 522. The core network 508 may include or provide an NEF 528. The NEF 528 may be or include the following functions of the core network 508: the function serves as a security gateway between the core network 508 and external applications or services. For example, NEF528 can be configured to expose network functions to various third-party applications or servers, while executing or providing various policies and security measures regarding user data and / or network operations. The core network 508 may include or provide PCF 530. PCF 530 may be or include the following functions of the core network 508: This function performs various policy control decisions for managing business flows based on predefined policies, user data and / or various real-time conditions.
[0068] As part of a communication session between UE 502 and application server 504, data packet generator 518 may be configured to generate, establish, create, produce, or otherwise provide various data packets (or protocol data units (PDUs)) for transmission to UE 502. In various instances and use cases, such data packets may be time-sensitive. These data packets may be time-sensitive as data packets related to a real-time communication session (e.g., data packets that include or contain audio data or video data of a real-time communication session). Data packets that include audio data and / or video data may be time-sensitive because if such data packets are not provided to UE 502 in a timely manner, such data packets may cause increased latency / lag, thereby reducing the overall user experience. For example, in a real-time communication session that may involve multimodal streams (e.g., for an audio stream and a video stream), one of which arrives later than the other, rendering the two streams may reduce the user experience due to the lack of synchronization of the streams (thereby causing lag). Furthermore, if two streams are provided to the UE 502 and one of the streams actually lags behind the other stream, the UE 502 may discard some of the above packets (e.g., because they arrive too late for real-time communication). As a result, the UE 502 may consume unnecessary power to process those discarded packets by using the Uu interface (radio) and performing internal processing on those packets (e.g., only to discard those packets later).
[0069] Now refer to Figure 5 and Figure 6 , Figure 6 A timing diagram 600 for transmitting a data packet (e.g., a PDU set) is shown according to an example implementation of the present disclosure. The clock manager 520 can be configured to generate, negotiate, or otherwise establish a reference time between one or more clocks of an application server 504 and one or more clocks of a base station 506 (e.g., a base station 506 that transmits data packets generated by the application server 504 to the UE 502). The clock manager 520 can be configured to establish the reference time as part of ensuring that the PDU set 602 is transmitted from the application server 504 to the UE 502 in a timely manner (e.g., to reduce latency or lag, thereby improving the user experience). In some embodiments, the clock manager 520 can be configured to generate, negotiate, or otherwise establish a reference time between the application server 504's clocks for generating the PDU set 602 (and / or for transmitting the PDU set 602, in Figure 6 One or more clocks of the base station 506 (shown as the PDU set clock in Figure 6 The reference time is established between the BS clock (shown as the BS clock).
[0070] In some embodiments, the clock manager 520 may be configured to transmit, transfer, or otherwise provide the PDU set 602 to the AF 524. The PDU set 602 may include an identifier corresponding to a communication session between the application server 504 and the UE 502. For example, the data packet generator 518 may be configured to generate a PDU set source identifier (e.g., when generating the PDU set 602) or otherwise incorporate the PDU set source identifier into the PDU set 602. The PDU set source identifier may be used (e.g., by the base station 506) to associate or determine a correspondence between the PDU set 602 received via the AF 524 and the PDU set 602 received from the user plane (e.g., where different PDU sets 602 are sent via different data pipes or streams, such as one data pipe or stream for PDU sets 602 related to or carrying audio data, and one data pipe or stream for PDU sets 602 related to or carrying video data). For example, the PDU set source identifier may include a correlation identifier and a local PDU set source identifier. The correlation identifier may be used for each of the flows / data pipes / streams of the corresponding communication session. For example, a real-time communication session may involve a multimodal stream that includes different PDU sets 602 of different modal types (e.g., a first PDU set for audio data, a second PDU set for video data, etc.). Each PDU set 602 may include a corresponding local PDU set source identifier. However, because each of the multiple PDU sets 602 in this example involves a common real-time communication session, each of the PDU sets 602 may include the same correlation identifier.
[0071] The clock manager 520 may be configured to generate, include or otherwise incorporate one or more timestamps into the PDU set 602, wherein the one or more timestamps are used to generate / establish a reference time. In some embodiments, the clock manager 520 may be configured to incorporate multiple timestamps into the PDU set 602. For example, the clock manager 520 may be configured to incorporate a wall clock timestamp (NTP-S) based on the network time protocol. The wall clock timestamp may be a reference time set / determined / defined according to NTP. The clock manager 520 may also be configured to generate, communicate or otherwise provide a PDU timestamp (corresponding PDU timestamp or CPDU-S) to the AF 524. The PDU timestamp may be related to or correspond to the value of the NTP-S. The PDU timestamp may represent or indicate the difference between the NTP-S and the clock used to encode the PDU set 602 at the application server 504 and / or the AF 524 (e.g., related to the difference). In some embodiments, the application server 504 may be configured to encode the PDU set 602 at a certain time (such as a certain time indicated by the timestamp), and the AF 524 may be configured to set the PDU timestamp based on the timestamp indicating the time when the PDU set 602 was encoded and the NTP-S timestamp. In this way, the PDU timestamp can represent the difference between the NTP-S and the PDU clock signal. The clock manager 520 can be configured to generate a PDU set timestamp (PDU set timestamp, PST-S). The PDU set timestamp can be or include (e.g., at the AF 524 and / or the application server 504) the time instance at which the PDU set 602 was encoded. In Figure 6 In the example shown, the PDU set timestamp may represent or indicate a first time instance (t1), which may be based on a PDU set clock of the AF 524. In various examples, the AF 524 may be configured to periodically refresh the PDU set timestamp clock and the NTP-S clock to account for drift at the encoder.
[0072] The core network 508 and the base station 506 can be configured to use three timestamps (CPDU-S, NTP-S, and PST-S) to establish a reference time. For example, CPDU-S and NTP-S can represent the time difference or offset between the start time of the clock used to encode the PDU set 602 at the AF 524 / application server 504, and PST-S can represent the time when the PDU set 602 is encoded (as reflected by the CPDU-S). The core network 508 and the base station 506 can use these three timestamps to accurately determine the transmission time of sending the PDU set 602 to the UE 502.
[0073] In some embodiments, the clock manager 520 may be configured to set, determine, configure or otherwise establish a delivery time window (DTW). The DTW may be or include the time at which the PDU set 602 is to be transmitted to the UE 502. The clock manager 520 may be configured to establish a DTW (particularly a DTW for a multimodal real-time communication session) for proper synchronization with other related media. For example, the clock manager 520 may be configured to establish a DTW so that the base station 506 transmits a PDU set 602 of multiple streams (e.g., both an audio PDU set and a video PDU set sent via different data pipes or streams). In some embodiments, the clock manager 520 may be configured to negotiate with the core network 508 or otherwise establish a DTW. In some embodiments, the clock manager 520 may be configured to establish a DTW based on or according to an application level policy. For example, certain applications or application types may have a predetermined DTW. The clock manager 520 may be configured to determine the DTW based on or according to a specific application corresponding to the communication session between the application server 504 and the UE 502.
[0074] The clock manager 520 may be configured to include or otherwise incorporate data / information corresponding to the DTW into the PDU set 602. For example, the clock manager 520 may set an absolute transmission time, which the clock manager 520 may determine based on the DTW. Continuing with this example, the clock manager 520 may be configured to determine the absolute transmission time by adding a time offset corresponding to the DTW to a reference time (or one or more timestamps of a plurality of timestamps included in the PDU set 602). As another example, the clock manager 520 may be configured to include the DTW in the PDU set 602 together with one or more timestamps, and the base station 506 may be configured to determine the absolute transmission time by applying the DTW to the timestamps. Thus, the clock manager 520 may be configured to indicate or otherwise identify the DTW to the AF 524.
[0075] like Figure 6As shown, a PDU set 602 encoded by an application server 504 may be sent to a base station 506 via a core network 508 (e.g., via an AF 524 of the core network 508) at a first time instance (t1) (e.g., indicated by a PDU set timestamp). Due to transmission delays and jitter, the PDU set 602 may arrive at the base station 506 at a second time instance (t2) after the first time instance. The base station 506 may be configured to determine the time of arrival at the base station 506 and the DTW (e.g., based on information included in the PDU set 602). The base station 506 may be configured to determine a time budget based on a difference between a transmission time (e.g., an absolute transmission time) and an arrival time. For example, the base station 506 may be configured to determine the time budget as the sum of the PDU set timestamp (e.g., t1) and the DTW relative to a reference time minus the arrival time (e.g., t2). Because the PDU set clock and the BS clock of the base station 506 may not have the same starting point, the base station 506 may be configured to determine the offset between the clocks (eg, by subtracting the PDU set timestamp and the NTP-S).
[0076] In various examples, the base station 506 may perform various internal routing or processing on the PDU set 602 before transmitting the PDU set 602 to the UE 502, which may cause transmission delays. Figure 6 As shown, although the PDU set 602 may arrive at the second time instance, due to the internal routing and processing of the PDU set 602, the base station 506 may not be configured to transmit the PDU set 602 to the UE 502 until a third time instance (t3) after the second time instance. The base station 506 may be configured to apply a transmission strategy for transmitting the PDU set based on the difference between the third time instance and the DTW (e.g., the time budget). For example, the base station 506 may be configured to selectively discard the PDU set 602 if the base station 506 cannot transmit the PDU set 602 within the time budget. As another example, the base station 506 may be configured to preferentially transmit a PDU set 602 with a shorter time budget rather than other PDU sets 602 with a larger time budget.
[0077] Now refer to Figure 7 , depicted is a signal flow diagram 700 illustrating signaling through the core network 508 according to an example implementation of the present disclosure. Figure 7As shown, the AF 524 can be configured to receive one or more PDU sets 602 from the application server 502. In some embodiments, the AF 524 can be configured to receive multiple PDU sets 602, which will be sent to the UE 504 via different data pipes. For example, the AF 524 can be configured to receive one or more first PDU sets 602 to be sent via one data stream or pipe and one or more second PDU sets 602 to be sent via another data stream or pipe. In some embodiments, the one or more first PDU sets 602 may include a first type of data / information, such as audio data, and the one or more second PDU sets may include a second type of data / information, such as video data. The PDU set 602 may include media 702 for transmission to the UE 504 (e.g., via the UPF 522).
[0078] The AF 524 may be configured to generate, determine, set, establish, obtain, or otherwise configure the PDU set assistance information 704. The PDU set assistance information 704 may include an identifier (e.g., a PDU set source identifier) used by the base station 506 to associate different PDU sets 602 and / or a timestamp (e.g., an NTP timestamp and a corresponding PDU timestamp) used to configure a reference time. The AF 524 may be configured to transmit, send, or otherwise provide the PDU set assistance information 704 to the NEF 528 and / or PCF 530. The NEF 528 / PCF 530 may be configured to transmit the PDU set assistance information from the AF 524 to the SMF 526 (e.g., via an N7 interface). The SMF 526 may be configured to transmit the PDU set assistance information to the base station 506 (e.g., via an N2 interface). The base station 506 may use the PDU set assistance information 704 to determine an offset between a PDU timestamp and an NTP timestamp (eg, because corresponding clock signals may not have the same start time) to determine a time budget for transmitting the PDU set 602 to the UE 504 .
[0079] In parallel, the AF 524 may be configured to transmit, send, or otherwise provide the media 702 to the UPF 522. In some embodiments, the AF 524 may be configured to provide PDU set metadata along with the media 702. For example, the PDU set metadata may include a PDU set source identifier, a PDU set timestamp (e.g., a timestamp when the PDU set 602 is encoded by the AF 524 and / or the application server 502 or the PST-S as described above), and a DTW. The UPF 522 may be configured to generate a header for the media 702. For example, the header may be a general packet radio service (GRPS) tunneling protocol user plane (GTP-U) header for the media 702. The header 706 may include the PDU set metadata (e.g., the PDU set source identifier and the PST-S) provided by the AF 524. The UPF 524 may be configured to transmit the header 706 and the media 702 to the base station 506 serving the UE 504. In some embodiments, UPF 524 may be configured to transmit header 706 and media 702 to base station 506 via an N3 interface.
[0080] The base station 506 may be configured to receive the header 706 and the media 702 from the UPF 522, and the PDU set assistance information 704 from the SMF 526. The base station 506 may be configured to determine a time budget for transmitting the PDU set 602 (e.g., the media 702) based on or according to the PDU set metadata from the header 706 and the PDU set assistance information 704. For example, the base station 506 may be configured to determine an offset between a PDU set clock and a network time protocol clock (NTP clock) based on a difference between the NTP-S and the CPDU-S. The base station 506 may be configured to determine the time budget by applying the offset to the PDU set timestamp (e.g., to determine the corresponding time with reference to the NTP clock) and adding a transmission time window.
[0081] The base station 506 may be configured to apply a delivery policy to the PDU set 602 to deliver the PDU set 602 to the UE 504. In some embodiments, the delivery policy may be set locally at the base station 506 (e.g., by operations and maintenance (O&M)). In some embodiments, the delivery policy may be set / indicated / signaled / identified by the AF 524. For example, the PDU set 602 may include an indication of the delivery policy therein, which may be encoded by the AF 524 and / or the application server 502. The indication may include, for example, a drop-all policy (e.g., a "late drop-all" indication). The base station 506 may be configured to apply the delivery policy (e.g., as locally set and / or indicated by the AF 524) to schedule delivery of the PDU set 602, selectively drop the PDU set 602, and / or drop the packetized / associated PDU set 602.
[0082] In some embodiments, the base station 506 may apply the transmission policy on a per PDU set 602 basis. For example, in the case where the discard all policy indicates that each PDU set 602 of the common data stream is discarded (e.g., indicated by the correlation identifier) if one of the PDU sets 602 of the common data stream cannot be transmitted within the time budget, the base station 506 may be configured to apply the discard all policy to each PDU set 602 based on the time budget. Continuing with this example, in the case where the base station 506 receives a first PDU set 602 including audio data (which can be transmitted within the time budget) and a second PDU set 602 including video data (which cannot be transmitted within the time budget), in the case where the first PDU set 602 and the second PDU set 602 share the same correlation identifier, and in the case where the discard all policy indicates to the base station 506 to discard all PDU sets 602, the base station 506 may be configured to abandon transmitting the first PDU set 602 and the second PDU set 602 to the UE 504. On the other hand, in a case where the base station 506 receives a first PDU set 602 including audio data (which can be sent within the time budget) and a second PDU set 602 including video data (which cannot be sent within the time budget), in a case where the first PDU set 602 and the second PDU set 602 share the same correlation identifier, and in a case where the all-discarding policy indicates to the base station 506 that all PDU sets 602 are not to be discarded, the base station 506 may be configured to transmit the first PDU set 602 but to discard the second PDU set 602 (e.g., by giving up transmitting the second PDU set).
[0083] In some embodiments, the base station 506 may apply a transmission strategy to schedule the transmission of the PDU sets 602. For example, the base station 506 may be configured to receive multiple PDU sets 602 for transmission to one or more UEs 504 for different communication sessions. The PDU sets 602 may have different time budgets. In this example, the base station 506 may be configured to schedule the transmission of the PDU sets 602 to the corresponding UEs 504 according to the time budget. For example, the base station 506 may be configured to transmit the PDU sets 602 according to which PDU sets 602 have the shortest time budget, rather than a first-in-first-out scheme. In this regard, assuming that the base station 506 receives a first PDU set 602 at a first time instance and receives a second PDU set 602 at a second time instance, if the second PDU set 602 has a shorter time budget than the first PDU set 602, the base station 506 may be configured to transmit the second PDU set 602 before transmitting the first PDU set 602 (e.g., even if the first PDU set 602 is received before the second PDU set 602).
[0084] Now refer to Figure 8 , depicts a flow chart illustrating an example method 800 for energy saving based on RAN awareness according to an example implementation of the present disclosure. The method 800 may be referred to above. Figures 1 to 7 8. In some embodiments, some steps of method 800 may be performed by application server 502, some steps may be performed by core network 508, and / or some steps may be performed by base station 506. As a brief overview, at step 802, the application server may establish a reference time with the wireless communication node. At step 804, the application server may transmit one or more data packets. At step 806, the wireless communication node may receive the one or more data packets. At step 808, the wireless communication node may determine a time budget. At step 810, the wireless communication node may apply a transmission strategy. Applying a transmission strategy may include the wireless communication node determining whether one or more data packets can be transmitted within a time budget (e.g., determined at step 808), and either discarding the one or more data packets (at step 814) or transmitting the one or more data packets to the UE (at step 816).
[0085] At step 802, the application server may establish a reference time with the wireless communication node. In some embodiments, the application server may establish a reference time between one or more first clocks of the application server and one or more second clocks of the wireless communication node. For example, the application server may establish the reference time as an offset / difference between one or more first clocks and one or more second clocks. In some embodiments, the application server may establish the reference time by signaling, transmitting, or otherwise indicating a timestamp or time corresponding to a PDU set clock (e.g., for generating a PDU set and / or encoding a PDU set at the application server) to an application function (AF) of the core network. Thus, the timestamp may be a PDU timestamp. The AF may be configured to generate an NTP timestamp (NTP-S) and a corresponding PDU timestamp (CPDU-S) based on the PDU timestamp and one or more second clocks (e.g., a network time protocol (NTP)). The AF may be configured to provide the NTP-S and CPDU-S to the wireless communication node to establish the reference time. The wireless communication node may establish the reference time based on the difference between the NTP-S and the CPDU-S (e.g., indicating an offset between the start times of the corresponding clocks). In various embodiments, the application server and / or AF may be configured to periodically update the NTP-S and CPDU-S to accommodate drift.
[0086] At step 804, the application server may transmit one or more data packets. In some embodiments, the application server may transmit one or more data packets for providing to the UE to the wireless communication node. The application server may generate a data packet for transmission to the UE via the wireless communication node. As part of executing or hosting an application / resource / service at the application server, the application server may generate one or more data packets. One or more data packets may include information / data related to the real-time communication session. In some embodiments, the one or more data packets may include one or more protocol data units (PDUs) or PDU sets. In some embodiments, the one or more data packets may include multimodal data packets, which include one or more first groups of data packets carrying a first type of information or data (e.g., audio data) and one or more second groups of data packets carrying a second type of information or data (e.g., video data).
[0087] In some embodiments, the application server may encode the data packets in response to generating one or more data packets. As part of encoding the one or more data packets, the application server may include or incorporate a timestamp into the data packets. The timestamp may identify or indicate the time when the one or more data packets are encoded. The timestamp may be or include a PDU set timestamp (or PST-S). The timestamp may refer to a PDU set clock. In some embodiments, the application server may set a transmission state for one or more data packets generated by the application server. For example, the transmission state may be or include a late all discard indication. The application server may set or configure the transmission state based on an application or resource hosted on the application server, based on an application type of the application, etc. The transmission state may indicate, identify, or otherwise correspond to: a transmission strategy for selectively transmitting one or more data packets to a UE to be applied by a wireless communication node described in more detail below. The application server may set the transmission state of the one or more data packets in a header of one or more data packets, metadata of one or more data packets, etc. In some embodiments, the application server may set or otherwise configure a transmission time window (DTW) for one or more data packets. The DTW may be or include the time (e.g., absolute transmission time) at which the wireless communication node transmits one or more data packets to the UE. Similar to the transmission state, the application server can set the DTW according to the application / resource / application type. In addition, the application server can set the DTW in the header of one or more data packets, the metadata of one or more data packets, etc.
[0088] The application server may deliver, send, push or otherwise transmit the encoded data packet to the core network in response to generating the data packet and encoding the data packet. Specifically, the application server may transmit the encoded data packet to the AF of the core network. The AF may receive the encoded data packet from the application server. In the case where one or more data packets include one or more multimodal data packets carrying different types of information / data related to the same communication session, the AF may include or incorporate a common identifier into each data packet, which links the data packets together. The common identifier may include a related identifier. The AF may include / incorporate a common identifier into each data packet so that the wireless communication node may apply a transmission policy as indicated by the transmission status to each of the linked data packets.
[0089] In some embodiments, the AF may generate PDU set metadata and PDU set auxiliary information for one or more data packets received from an application server. The AF may generate the PDU set metadata and PDU set auxiliary information based on a reference time and information included in one or more data packets. For example, the AF may generate the PDU set metadata to include identifiers of one or more data packets (e.g., individual data packet identifiers of one or more data packets, and a common identifier), a timestamp indicating when the one or more data packets were encoded (e.g., PST-S), and DTW. Thus, the AF may generate the PDU set metadata based on the information included in the one or more data packets. The AF may generate the PDU set auxiliary information to include identifiers of one or more data packets, a timestamp corresponding to an NTP clock (e.g., NTP-S), and a corresponding PDU timestamp (e.g., CPDU-S).
[0090] The AF may transmit PDU set assistance information to a network open function (NEF) and / or a policy control function (PCF) of the core network. The NEF / PCF may forward the PDU set assistance information from the AF to a session management function (SMF) of the core network (e.g., via an N7 interface). The SMF may forward the PDU set assistance information from the NEF / PCF to the wireless communication node (e.g., via an N2 interface). Thus, the wireless communication node may receive the PDU set assistance information from the AF (e.g., via the NEF / PCF and the SMF). The AF may transmit the contents of one or more data packets (e.g., media such as audio or video) to a user plane function (UPF) of the core network. The AF may combine PDU set metadata (e.g., one or more identifiers, PDU set timestamps, and transmission time windows) into one or more contents. The UPF may generate a header for one or more contents of a data packet. The header may be or include a general packet radio service (GRPS) tunneling protocol user plane (GTP-U) header. The header may include PDU set metadata from the AF. The UPF may transmit the header and the contents to the wireless communication node (eg, via an N3 interface).
[0091] At step 806, the wireless communication node may receive one or more data packets. In some embodiments, the wireless communication node may receive one or more data packets from an application server. As described above, the wireless communication node may receive one or more data packets via the AF and UPF of the core network. The wireless communication node may receive one or more data packets including the following information: The information may be used by the wireless communication node to apply a transmission strategy for transmitting one or more data packets to the UE according to the reference time established at step 802. The information may include the above-mentioned PDU set metadata. In other words, the information may include a timestamp generated by the application server (e.g., based on a PDU clock, or PST-S). The timestamp may indicate the time at which the one or more data packets were encoded at the application server.
[0092] At step 808, the wireless communication node may determine a time budget. In some embodiments, the wireless communication node may determine the time budget based on or according to the reference time and information of one or more data packets. For example, the wireless communication node may determine the time budget based on PST-S, the arrival time of one or more data packets from the application server (e.g., via the core network), the reference time, and the DTW. The wireless communication node may determine the time budget by calculating the difference between NTP-S and CPDU-S (e.g., the difference indicating the offset time). The wireless communication node may determine the time budget by applying the difference to PST-S. At this point, by applying the difference to PST-S, the wireless communication node may map PST-S to NTP. The wireless communication node may determine the time budget by adding DTW to the mapped value (e.g., PST-S mapped to NTP by applying the difference), and then subtracting the arrival time. In other words, the wireless communication node may determine the time budget as equal to the sum of DTW, the difference between NTP-S and CPDU-S, and DTW, minus the arrival time.
[0093] At step 810, the wireless communication node may apply a transmission policy. In some embodiments, the wireless communication node may apply a transmission policy to selectively transmit one or more data packets to a UE (e.g., a wireless communication device) based on a reference time. The wireless communication node may apply a transmission policy to schedule transmission of one or more data packets and / or selectively discard the one or more data packets. The wireless communication node may apply a transmission policy to transmit one or more data packets to the UE based on the time budget determined at step 808.
[0094] In some embodiments, the wireless communication node may determine a transmission strategy. In the case where one or more data packets include information indicating or identifying a transmission strategy (e.g., a transmission state), the one or more data packets may apply the transmission strategy based on the information included in the one or more data packets. In some embodiments, the wireless communication node may determine the transmission strategy based on one or more local settings or configuration information. For example, the transmission strategy may be set or configured locally (e.g., through operation and maintenance configuration). The wireless communication node may determine (e.g., based on a relevant identifier) a transmission strategy for applying to multiple related / corresponding / related data packets. For example, the transmission state may indicate whether the wireless communication node is to discard each of the one or more first data packets and the one or more second data packets in response to determining that at least one of the one or more first data packets or the one or more second data packets cannot be provided to the UE within the time budget. The wireless communication node may apply a transmission strategy to determine whether / how to transmit one or more data packets to the UE.
[0095] Applying the transmission policy may include the wireless communication node determining whether one or more data packets can be transmitted within the time budget (e.g., step 812). In some embodiments, the wireless communication node may determine whether one or more data packets can be transmitted within the time budget by determining a difference between the time budget and the arrival time. For example, the wireless communication node may determine whether the difference is less than a threshold difference (e.g., where the threshold is set / determined / configured based on an average amount of time from the arrival time that is used by the wireless communication node for internal processing and routing of data packets until transmission).
[0096] In the event that the transmission policy indicates to discard one or more data packets that cannot be transmitted within the time budget, and in the event that the difference is less than the threshold difference, the wireless communication node may discard the one or more data packets at step 814. In some embodiments, in the event that the transmission status of the one or more data packets indicates to discard each of the one or more related / linked / related data packets related to the common communication session, and in the event that the wireless communication node determines at step 812 that at least one of the one or more data packets cannot be transmitted within the time budget, the wireless communication node may discard at least one of the one or more data packets and the one or more related data packets.
[0097] In the event that the wireless communication node determines that the one or more data packets can be transmitted within the time budget at step 812, the wireless communication node may transmit, send, or otherwise provide the one or more data packets to the UE at step 816. In some embodiments, the wireless communication node may schedule the transmission of one or more groups of one or more data packets based on the time budget for the corresponding one or more data packets. For example, in the event that one or more first data packets have a smaller time budget than one or more second data packets, the wireless communication node may schedule the transmission of the one or more first data packets to precede the transmission of the one or more second data packets.
[0098] Now that some illustrative embodiments have been described, it will be apparent that the foregoing, which has been presented by way of example, is illustrative and not restrictive. Specifically, although many of the examples presented herein involve specific combinations of method actions or system elements, these actions and these elements may be combined in other ways to achieve the same purpose. The actions, elements, and features discussed in conjunction with one embodiment are not intended to be excluded from similar roles in other embodiments or from the embodiments.
[0099] The hardware and data processing components for implementing the various processes, operations, illustrative logic, logic blocks, modules and circuits described in conjunction with the embodiments disclosed herein can be implemented or executed using the following components designed to perform the functions described herein: a general-purpose single-chip processor or a general-purpose multi-chip processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic, a discrete hardware component, or any combination thereof. A general-purpose processor may be a microprocessor, or may be any conventional processor, controller, microcontroller or state machine. The processor may also be implemented as a combination of multiple computing devices, such as a combination of a DSP and a microprocessor, a combination of multiple microprocessors, a combination of one or more microprocessors and a DSP core, or any other such configuration. In some embodiments, specific processes and methods may be performed by circuits specific to a given function. A memory (e.g., a memory, a memory unit, a storage device, etc.) may include one or more devices (e.g., RAM, ROM, flash memory, hard disk storage, etc.) for storing data and / or computer code, which is used to complete or facilitate the various processes, various layers and various modules described in this disclosure. The memory may be or may include volatile memory or non-volatile memory, and may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present disclosure. According to an exemplary embodiment, the memory is communicatively connected to the processor via the processing circuit, and the memory includes computer code for executing (e.g., by the processing circuit and / or the processor) one or more processes described herein.
[0100] The present disclosure contemplates methods, systems, and program products on any machine-readable medium for implementing various operations. The various embodiments of the present disclosure can be implemented using existing computer processors, or by a dedicated computer processor for an appropriate system combined for this purpose or another purpose, or by a hard-wired system. The various embodiments within the scope of the present disclosure include multiple program products, which include machine-readable media, which are used to carry or have machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available medium that can be accessed by a general-purpose computer or a special-purpose computer, or other machines with a processor. As an example, such machine-readable media can include RAM, ROM, EPROM, EEPROM, or other optical disk storage, disk storage, or other magnetic storage devices, or can include any other medium as follows: the other medium can be used to carry or store the desired program code in the form of machine-executable instructions or data structures, and can be accessed by a general-purpose computer or a special-purpose computer, or other machines with a processor. The above combinations are also included in the scope of machine-readable media. Machine-executable instructions, for example, include instructions and data that cause a general-purpose computer, a special-purpose computer, or a special-purpose processing machine to perform a certain function or a certain group of functions.
[0101] The words and terms used herein are for descriptive purposes and should not be considered limiting. The use of "comprises," "including," "having," "containing," "involving," "characterized by," "characterized by," and variations thereof herein is meant to encompass the items listed thereafter, their equivalents and additional items, and alternative embodiments consisting exclusively of the items listed thereafter. In one embodiment, the systems and methods described herein consist of one element, action, or component of each element, action, or component described, each combination of more than one of the elements, actions, or components described, or all of the elements, actions, or components described.
[0102] Any reference to an embodiment or element or action of the systems and methods herein in the singular may also encompass embodiments including a plurality of these elements, and any reference to any embodiment or element or action herein in the plural may also encompass embodiments including only a single element. References in the singular or plural are not intended to limit the systems or methods of the present disclosure, their parts, actions or elements to a singular or plural configuration. References to any action or element based on any information, action or element may include embodiments in which the action or element is based at least in part on any information, action or element.
[0103] Any embodiment disclosed herein may be combined with any other embodiment or example, and references to "an embodiment," "some embodiments," or "an embodiment," etc. are not necessarily mutually exclusive, but are intended to indicate that a particular feature, structure, or characteristic described in conjunction with the embodiment may be included in at least one embodiment or example. These terms as used herein do not necessarily all refer to the same embodiment. Any embodiment may be combined, inclusively or exclusively, with any other embodiment in any manner consistent with the various aspects and embodiments disclosed herein.
[0104] Where reference numerals are provided after technical features in the drawings, detailed description or any claims, these reference numerals have been included to increase the intelligibility of the drawings, detailed description and claims. Therefore, the presence or absence of these reference numerals has no limiting effect on the scope of any claim element.
[0105] The systems and methods described herein may be embodied in other specific forms without departing from the characteristics of the present invention. Unless otherwise expressly indicated, references to "approximately," "about," "substantially," or other degree terms include variations of plus or minus 10% (+ / -10%) from a given measurement, unit, or range. Coupled elements may be directly electrically, mechanically, or physically coupled to each other, or may be electrically, mechanically, or physically coupled to each other through intermediate elements. Therefore, the scope of the systems and methods described herein is indicated by the appended claims rather than the preceding description, and changes within the meaning and scope of the equivalents of the claims are included therein.
[0106] The term "coupled" and variations thereof include two members being directly joined to one another or indirectly joined. Such joining may be constant (e.g., permanent or fixed) or movable (e.g., removable or releasable). Such joining may be achieved by the two members being directly coupled or coupled to one another, by the two members being coupled to one another using a separate intermediate member, and by the two members being coupled to one another through any additional intermediate members, or by the two members being coupled to one another using an intermediate member that is integrally formed as a single, unitary body with one of the two members. If "coupled" or variations thereof are modified by additional terms (e.g., directly coupled), the general definition of "coupled" provided above is modified by the plain language meaning of the additional terms (e.g., "directly coupled" means that the two members are joined without any separate intermediate member), thereby producing a narrower definition than the general definition of "coupled" provided above. Such coupling may be mechanical, electrical, or fluid.
[0107] References to "or" may be interpreted as inclusive, such that any term described using "or" may mean any of a single described term, more than one described term, and all described terms. References to "at least one of 'A' and 'B'" may include only 'A', only 'B', and both 'A' and 'B'. Such references used in conjunction with "including" or other public terms may include additional items.
[0108] Various modifications may be made to the elements and actions described, such as variations in size, dimensions, structure, shape, and proportion of various elements, and variations in parameter values, mounting arrangements, use of materials, colors, orientations, without departing substantially from the teachings and advantages of the subject matter disclosed herein. For example, an element shown as being integrally formed may be composed of multiple parts or elements, the positions of the elements may be reversed or otherwise modified, and the nature or number or position of discrete elements may be changed or modified. Other substitutions, modifications, alterations, and omissions may also be made in the design, operating conditions, and arrangement of the disclosed elements and operations without departing from the scope of the present disclosure.
[0109] References herein to the positions of elements (e.g., "top," "bottom," "above," "below") are only used to describe the orientation of the various elements in the drawings. The orientation of the various elements may be different according to other exemplary embodiments, and these variations are intended to be encompassed by the present disclosure.
Claims
1. A method comprising: By the application server and the wireless communication node, a reference time is established between one or more first clocks of the application server and one or more second clocks of the wireless communication node; as well as The application server transmits one or more data packets for providing to a user equipment UE to the wireless communication node, the one or more data packets including information that the wireless communication node can use to apply a transmission strategy, the transmission strategy being used to transmit the one or more data packets to the UE according to the reference time.
2. The method according to claim 1, wherein: The one or more data packets include one or more first data packets, and the method further includes: One or more second data packets are transmitted by the application server to the wireless communication node, the one or more first data packets are transmitted via a first data pipe and the one or more second data packets are transmitted via a second data pipe.
3. The method according to claim 1, wherein: The one or more data packets include one or more first data packets, the one or more first data packets including a common identifier with one or more second data packets, the common identifier linking the one or more first data packets to the one or more second data packets.
4. The method according to claim 3, wherein: The wireless communication node applies the delivery policy to each of the one or more first data packets and the one or more second data packets based on the common identifier.
5. The method according to claim 3, further comprising: The application server sets the transmission status of the one or more first data packets and the one or more second data packets, The wireless communication node applies the transmission strategy according to the transmission status.
6. The method according to claim 5, wherein: The transmission status indicates whether the wireless communication node is to discard each of the one or more first data packets and the one or more second data packets in response to determining that at least one of the one or more first data packets or the one or more second data packets cannot be provided to the UE within a time window.
7. The method according to claim 1, wherein: The delivery policy includes a discard policy corresponding to a delivery time window during which the one or more data packets are to be delivered to the UE.
8. The method according to claim 1, wherein: The information includes a first timestamp indicating a first time, the first timestamp being generated according to the one or more first clocks.
9. The method according to claim 8, wherein: The wireless communication node determines a time budget for transmitting the one or more data packets to the UE, the time budget being determined based on: the first timestamp; an arrival time of the one or more data packets from the application server determined based on the one or more second clocks; the reference time; and a delivery time window corresponding to the delivery strategy.
10. The method according to claim 1, wherein: The information includes a delivery time window corresponding to the delivery strategy.
11. The method according to claim 1, wherein: The wireless communication node applies the transmission policy to at least one of: schedule transmission of the one or more data packets or drop the one or more data packets.
12. A wireless communication node, comprising: Wireless transceiver; as well as One or more processors configured to: determining a reference time between one or more first clocks of an application server and one or more second clocks of the wireless communication node; as well as receiving, via the wireless transceiver, one or more data packets from the application server for providing to a user equipment UE, the one or more data packets comprising information that the wireless communication node can use to apply a delivery policy; as well as The transmission policy is applied to the one or more data packets for selectively transmitting the one or more data packets to the UE via the wireless transceiver according to the reference time.
13. The wireless communication node according to claim 12, wherein: The one or more data packets include one or more first data packets, the one or more first data packets including a common identifier with one or more second data packets, the common identifier linking the one or more first data packets to the one or more second data packets.
14. The wireless communication node according to claim 13, wherein: The one or more processors apply the delivery policy to each of the one or more first data packets and the one or more second data packets based on the common identifier.
15. The wireless communication node according to claim 13, wherein: The one or more processors are further configured to determine a transmission status of the one or more first data packets and the one or more second data packets according to information of the one or more first data packets and the one or more second data packets, The one or more processors apply the transmission strategy according to the transmission status.
16. The wireless communication node according to claim 15, wherein: The transmission status indicates whether the wireless communication node is to discard each of the one or more first data packets and the one or more second data packets in response to determining that at least one of the one or more first data packets or the one or more second data packets cannot be provided to the UE within a time budget.
17. The wireless communication node according to claim 12, wherein: The information includes a first timestamp indicating a first time, the first timestamp being generated according to the one or more first clocks.
18. The wireless communication node according to claim 17, wherein: The one or more processors are configured to determine a time budget for transmitting the one or more data packets to the UE, the time budget being determined based on: the first timestamp; an arrival time of the one or more data packets from the application server determined based on the one or more second clocks; the reference time; and a delivery time window corresponding to the delivery strategy.
19. The wireless communication node according to claim 12, wherein: The one or more processors are configured to apply the transmission policy to at least one of: schedule transmission of the one or more data packets or drop the one or more data packets.
20. An application server, comprising: Wireless transceiver; as well as One or more processors configured to: establishing a reference time with a wireless communication node between one or more first clocks of the application server and one or more second clocks of the wireless communication node; as well as One or more data packets for providing to a user equipment UE are transmitted to the wireless communication node via the wireless transceiver, the one or more data packets including information that the wireless communication node can use to apply a transmission strategy, the transmission strategy being used to transmit the one or more data packets to the UE according to the reference time.