Quality of Service Technology for QUIC Streams
By receiving data packets with headers in a wireless communication system and scheduling based on the QoS parameters in the headers, the problem of difficulty in QUIC streaming transmission scheduling is solved, and efficient and reliable communication performance is achieved.
Patent Information
- Application Number
- CN202180011523.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-02-04
- Filing Date
- 2021-01-07
- Publication Date
- 2025-04-18
- Estimated Expiration
- 2041-01-07
AI Technical Summary
In wireless communication systems, there are difficulties in scheduling the transmission quality of service (QoS) of QUIC streams, resulting in delay and interference problems in data transmission, affecting communication performance and reliability.
By receiving a data packet with a header, matching the first plurality of fields in the header with the second plurality of fields, the transmission of the data packet is scheduled based on the QoS parameters associated with the first plurality of fields, and efficient transmission scheduling of the QUIC stream is achieved.
It improves the transmission efficiency and reliability of QUIC streams in wireless communication systems, reduces delay and interference, and improves overall communication performance.
Smart Images

Figure CN115004834B_ABST
Abstract
Description
[0001] Claiming priority
[0002] This patent application claims priority to and the benefit of U.S. non-provisional patent application serial number 16 / 781,775, filed on February 4, 2020, entitled “QUALITY OF SERVICE TECHNIQUES FOR QUIC STREAMS,” which is incorporated herein by reference in its entirety. Technical Field
[0003] In general, aspects of the present disclosure relate to wireless communication systems, and more specifically, aspects of the present disclosure relate to quality of service (QoS) techniques for scheduling transmission of QUIC streams in wireless communication systems. Certain embodiments of the techniques discussed below may enable and provide enhanced communication features and techniques for communication systems, including high data rates, high capacity, high performance, high reliability, low latency, low complexity, low memory usage, and low power device operation. Background Art
[0004] Wireless communication networks are widely deployed to provide various communication services such as voice, video, packet data, messaging, broadcast, etc. Wireless networks may have multiple access network capabilities supporting multiple users by sharing the available network resources.
[0005] A wireless communication network may include multiple base stations or Node Bs that support communications for multiple user equipments (UEs). A UE may communicate with a base station via a downlink and an uplink. A downlink (or forward link) refers to a communication link from a base station to a UE, while an uplink (or reverse link) refers to a communication link from a UE to a base station.
[0006] The base station may send data and control information to the UE on the downlink and / or may receive data and control information from the UE on the uplink. On the downlink, the transmission from the base station may encounter interference due to transmissions from neighboring base stations or other wireless radio frequency (RF) transmitters. On the uplink, the transmission from the UE may encounter interference from other UEs communicating with neighboring base stations or uplink transmissions from other wireless RF transmitters. Such interference may degrade performance on both the downlink and uplink.
[0007] As the demand for mobile broadband access continues to grow, the potential for interference and network congestion also grows with more UEs accessing long-range wireless communication networks and more short-range wireless systems deployed in communities. Research and development continue to drive advances in wireless technology, not only to meet the growing demand for mobile broadband access, but also to advance and enhance the user experience of mobile communications. Summary of the invention
[0008] Some aspects of the present disclosure are summarized below to provide a basic understanding of the technology discussed. The present disclosure is not an exhaustive review of all considered features of the present disclosure, and is neither intended to identify the key or important elements of all aspects of the present disclosure, nor is it intended to describe the scope of any or all aspects of the present disclosure. Its sole purpose is to present some concepts of one or more aspects of the present disclosure in the form of an abstract as a preface to the more detailed description presented later.
[0009] In one aspect of the present disclosure, a wireless communication method is provided. For example, a method may include: receiving a data packet having a header, the header including a first plurality of fields. The method may also include: scheduling transmission of the data packet based on QoS parameters associated with the first plurality of fields. When the first plurality of fields matches a second plurality of fields, the transmission of the data packet may also be scheduled based on the QoS parameters associated with the first plurality of fields.
[0010] In another aspect of the present disclosure, a device configured for wireless communication is provided. For example, the device may include: a unit for receiving a data packet having a header, the header including a first plurality of fields. The device may also include: a unit for scheduling transmission of the data packet based on QoS parameters associated with the first plurality of fields. When the first plurality of fields matches the second plurality of fields, the transmission of the data packet may also be scheduled based on the QoS parameters associated with the first plurality of fields.
[0011] In yet another aspect of the present disclosure, a non-transitory computer-readable medium having program code recorded thereon is provided. The program code may include program code executable by a computer to cause the computer to perform the following operations: receiving a data packet having a header, the header including a first plurality of fields. The program code may also include program code executable by a computer to cause the computer to perform the following operations: scheduling transmission of the data packet based on QoS parameters associated with the first plurality of fields. When the first plurality of fields matches the second plurality of fields, the transmission of the data packet may also be scheduled based on the QoS parameters associated with the first plurality of fields.
[0012] In another aspect of the present disclosure, a device configured for wireless communication is provided. The device includes at least one processor; and a memory coupled to the processor. The at least one processor may be configured to: receive a data packet having a header, the header including a first plurality of fields. The at least one processor may also be configured to: schedule transmission of the data packet based on QoS parameters associated with the first plurality of fields. When the first plurality of fields matches a second plurality of fields, the transmission of the data packet may also be scheduled based on the QoS parameters associated with the first plurality of fields.
[0013] When browsing the following description of the specific, exemplary embodiments of the present invention in conjunction with the accompanying drawings, other aspects, features and embodiments of the present invention will become apparent to those of ordinary skill in the art. Although features of the present invention may be discussed with reference to certain embodiments and figures below, embodiments of the present invention may include one or more of the preferred features discussed herein. In other words, although one or more embodiments may be discussed as having certain preferred features, one or more of these features may also be used in conjunction with various embodiments. In a similar manner, although exemplary embodiments may be discussed hereinafter as devices, systems or methods, various devices, systems and methods may be used to implement these exemplary embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] A further understanding of the nature and advantages of the present disclosure may be achieved by reference to the following drawings. In the drawings, similar components or features may have the same reference numerals. In addition, individual components of the same type may be distinguished by following a second reference numeral to distinguish between similar components. If only a first reference numeral is used in this specification, the description applies to any of the similar components having the same first reference numeral, without regard to the second reference numeral.
[0015] Figure 1 is a block diagram showing details of a wireless communication system according to some aspects of the present disclosure.
[0016] Figure 2 is a block diagram conceptually illustrating a design of a base station and a UE configured according to some aspects of the present disclosure.
[0017] Figure 3 is a block diagram illustrating a method for QoS-based transmission scheduling of QUIC flows in a wireless communication system according to some aspects of the present disclosure.
[0018] Figure 4 A diagram illustrating various fields of a data packet header in accordance with some aspects of the present disclosure is shown.
[0019] Figure 5 Another diagram illustrating various fields of a data packet header in accordance with some aspects of the present disclosure is shown.
[0020] Figure 6 is a block diagram illustrating a UE configured according to some aspects of the present disclosure.
[0021] Figure 7 is a block diagram illustrating a base station (e.g., a gNB) configured according to some aspects of the present disclosure. DETAILED DESCRIPTION
[0022] The detailed description given below in conjunction with the drawings and appendices is intended as a description of various configurations and is not intended to limit the scope of the present disclosure. However, in order to provide a thorough understanding of the subject matter of the invention, the detailed description includes specific details. It will be apparent to those skilled in the art that these specific details are not required in every case, and in some cases, for clarity of presentation, well-known structures and components are shown in the form of block diagrams.
[0023] As previously mentioned, in general, the present disclosure relates to providing or participating in communications between two or more wireless devices in one or more wireless communication systems (also referred to as wireless communication networks). In various embodiments, these techniques and apparatuses may be used in wireless communication networks, such as code division multiple access (CDMA) networks, time division multiple access (TDMA) networks, frequency division multiple access (FDMA) networks, orthogonal FDMA (OFDMA) networks, single carrier FDMA (SC-FDMA) networks, LTE networks, GSM networks, fifth generation (5G) or new radio (NR) (sometimes referred to as "5G NR" networks / systems / devices"), and other communication networks. As described herein, the terms "network" and "system" may be used interchangeably.
[0024] For example, a CDMA network may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includes Wideband-CDMA (W-CDMA) and Low Chip Rate (LCR). CDMA2000 covers IS-2000, IS-95, and IS-856 standards.
[0025] For example, a TDMA network can implement a radio technology such as GSM. 3GPP defines standards for the GSM EDGE (Enhanced Data Rates for GSM Evolution) radio access network (RAN), also known as GERAN. GERAN is the radio component of GSM / EDGE, together with the network (e.g., Ater and Abis interfaces) and base station controllers (A interfaces, etc.) that join the base station. The radio access network represents the component of the GSM network through which phone calls and packet data are routed from the public switched telephone network (PSTN) and the Internet to user handsets (also known as user terminals or user equipment (UE)), and from user handsets to the PSTN and the Internet. The network of a mobile phone operator may include one or more GERANs, which may be coupled to a universal terrestrial radio access network (UTRAN) in the case of a UMTS / GSM network. The operator network may also include one or more LTE networks, and / or one or more other networks. Various network types may use different radio access technologies (RATs) and radio access networks (RANs).
[0026] OFDMA network can realize wireless technology such as Evolved UTRA (E-UTRA), IEEE 802.11, IEEE 802.16, IEEE802.20, Flash OFDM, etc. UTRA, E-UTRA and Global System for Mobile Communications (GSM) are parts of Universal Mobile Telecommunication System (UMTS). Specifically, Long Term Evolution (LTE) is a version of UMTS using E-UTRA. UTRA, E-UTRA, GSM, UMTS and LTE are described in documents provided by an organization named "3rd Generation Partnership Project" (3GPP), and cdma2000 is described in documents from an organization named "3rd Generation Partnership Project 2" (3GPP2). These various radio technologies and standards are known or under development. For example, the 3rd Generation Partnership Project (3GPP) is a collaboration between telecommunication association groups that aims to define globally applicable third generation (3G) mobile phone specifications. 3GPP Long Term Evolution (LTE) is a 3GPP project aimed at improving the Universal Mobile Telecommunication System (UMTS) mobile phone standard. 3GPP may define specifications for next generation mobile networks, mobile systems, and mobile devices. The present disclosure relates to the evolution of wireless technologies from LTE, 4G, 5G, NR, etc., which use a new and different set of radio access technologies or radio air interfaces to share access to the wireless spectrum between networks.
[0027] 5G networks cover multiple deployments, multiple spectrums, and multiple services and devices using a unified OFDM-based air interface. To achieve these goals, in addition to developing new radio technologies for 5G NR networks, additional enhancements to LTE and LTE-A are considered. 5G NR systems can be extended to provide coverage for (1) large-scale Internet of Things (IoT) with ultra-high density (e.g., ~1M nodes / km2), ultra-low complexity (e.g., tens of bits / second), ultra-low energy consumption (e.g., battery life of more than ten years), and deep coverage that can reach challenging locations; (2) including strong security, ultra-high reliability (e.g., high reliability) for protecting sensitive personal, financial, or confidential information. reliability), ultra-low latency (e.g. ) and mission-critical control of users with a wide range of mobility or lack of mobility; and (3) with enhanced mobile broadband, including very high capacity (e.g., ), extremely high data rates (e.g., multi-Gbps rates, 100+Mbps user experienced rates), and deep awareness enabled by advanced discovery and optimization.
[0028] 5G NR devices, networks, and systems can be implemented to use optimized OFDM-based waveform features. These features can include scalable digital parameters and transmission time intervals (TTIs); a common, flexible framework for efficient multiplexing of services and functions in dynamic, low-latency time division duplex (TDD) / frequency division duplex (FDD) designs; and advanced wireless technologies such as massive multiple-input multiple-output (MIMO), robust millimeter wave (mmWave) transmission, advanced channel coding, and device-centric mobility. The scalability of digital parameters in 5G NR and the scaling of subcarrier spacing can effectively address the operation of various services across different spectrums and different deployments. For example, in various outdoor and macro coverage deployments of less than 3GHz FDD / TDD implementations, subcarrier spacing may occur at 15kHz, such as over 1, 5, 10, 20MHz and similar bandwidths. For various other outdoor and small cell coverage deployments with TDD greater than 3GHz, subcarrier spacing may occur at 30kHz over 80 / 100MHz bandwidth. For various other indoor broadband implementations, using TDD in the unlicensed portion of the 5 GHz band, the subcarrier spacing may occur at 60 kHz over a 160 MHz bandwidth. Finally, for various deployments transmitting with a mmWave component at 28 GHz TDD, the subcarrier spacing may occur at 120 kHz over a 500 MHz bandwidth.
[0029] 5G NR's scalable digital parameters facilitate scalable TTIs to meet various latency and quality of service (QoS) requirements. For example, shorter TTIs can be used for low latency and high reliability, while longer TTIs can be used for higher spectral efficiency. Efficient multiplexing of long and short TTIs allows transmissions to start from symbol boundaries. 5G NR also envisions a self-contained integrated subframe design with uplink / downlink scheduling information, data, and acknowledgments in the same subframe. The self-contained integrated subframe supports communications in unlicensed or contention-based shared spectrum, adaptive uplink / downlink that can be flexibly configured on a cell-by-cell basis to dynamically switch between uplink and downlink to meet current traffic demands.
[0030] For clarity, certain aspects of the apparatus and techniques are described below with reference to exemplary LTE implementations or using an LTE-centric approach, and LTE terminology may be used as an illustrative example in portions of the description below; however, the description is not intended to be limited to LTE applications. In fact, the present disclosure relates to shared access to wireless spectrum between networks using different radio access technologies or radio air interfaces, such as those of 5G NR.
[0031] Furthermore, it should be understood that in operation, a wireless communication network adapted according to the concepts herein can operate with any combination of licensed spectrum or unlicensed spectrum depending on load and availability. Therefore, it will be apparent to those skilled in the art that the systems, devices, and methods described herein can be applied to other communication systems and applications beyond the specific examples provided.
[0032] Although various aspects and embodiments are described in this application by illustrating some examples, it will be understood by those skilled in the art that additional implementations and use cases may occur in many different arrangements and scenarios. The innovations described herein can be implemented across many different platform types, devices, systems, shapes, sizes, and packaging arrangements. For example, embodiments and / or uses may occur via integrated chip embodiments and / or other devices based on non-module components (e.g., end-user devices, vehicles, communication devices, computing devices, industrial devices, retail / purchasing devices, medical devices, devices with AI functions, etc.). Although some examples may or may not be specifically targeted at use cases or applications, the wide applicability of the described innovations may occur. The range of implementations can range from chip-level or modular components to non-modular, non-chip-level implementations, and further involve aggregated, distributed or OEM devices or systems that incorporate one or more of the described aspects. In some practical settings, the devices incorporating the described aspects and features may also necessarily include additional components and features for the implementation and implementation of the required and described embodiments. It is intended that the innovations described herein may be implemented in a wide variety of implementations including large / small devices of varying sizes, shapes, and configurations, chip-level components, multi-component systems (e.g., RF chains, communication interfaces, processors), distributed arrangements, end-user devices, etc.
[0033] Figure 1 A wireless network 100 for communication according to some embodiments is shown. The wireless network 100 may, for example, include a 5G wireless network. As will be appreciated by those skilled in the art, Figure 1 The components appearing in are likely to have relevant counterparts in other network arrangements, including, for example, cellular network arrangements and non-cellular network arrangements (e.g., device-to-device or ad-hoc or self-organizing network arrangements, etc.).
[0034] Figure 1The wireless network 100 shown includes multiple base stations 105 and other network entities. The base station can be a station that communicates with the UE, and can also be referred to as an evolved Node B (eNB), a next generation eNB (gNB), an access point, etc. Each base station 105 can provide communication coverage for a specific geographic area. In 3GPP, the term "cell" can refer to such a specific geographic coverage area of the base station and / or a base station subsystem serving the coverage area according to the context in which the term is used. In the implementation of the wireless network 100 herein, the base station 105 can be associated with the same operator or different operators (for example, the wireless network 100 can include multiple operator wireless networks), and can use one or more of the same frequencies (for example, one or more frequency bands in a licensed spectrum, an unlicensed spectrum, or a combination thereof) as a neighboring cell to provide wireless communication. In some examples, a single base station 105 or UE 115 can be operated by more than one network operating entity. In other examples, each base station 105 and UE115 can be operated by a single network operating entity.
[0035] A base station may provide communication coverage for a macro cell or a small cell (such as a pico cell or a femto cell) and / or other types of cells. A macro cell typically covers a relatively large geographic area (e.g., a radius of several kilometers) and may allow unrestricted access by UEs that have signed a service contract with a network provider. Small cells (such as pico cells) typically cover a relatively small geographic area and may allow unrestricted access by UEs that have signed a service contract with a network provider. Small cells (such as femto cells) also typically cover a relatively small geographic area (e.g., a home) and, in addition to unrestricted access, may also provide restricted access by UEs associated with a femto cell (e.g., UEs in a closed subscriber group (CSG) , UEs of users in a home, etc.). A base station for a macro cell may be referred to as a macro base station. A base station for a small cell may be referred to as a small cell base station, a pico base station, a femto base station, or a home base station. In Figure 1 In the example shown, base stations 105d and 105e are conventional macro base stations, while base stations 105a-105c are macro base stations enabled with one of 3D (3D), full dimensional (FD) or massive MIMO. Base stations 105a-105c utilize their higher dimensional MIMO capabilities to employ 3D beamforming in elevation and azimuth beamforming to increase coverage and capacity. Base station 105f is a small cell base station, which can be a home node or a portable access point. The base station can support one or more (e.g., two, three, four, etc.) cells.
[0036] Wireless network 100 can support synchronous or asynchronous operation. For synchronous operation, base stations can have similar frame timing, and transmissions from different base stations can be approximately aligned in time. For asynchronous operation, base stations can have different frame timing, and transmissions from different base stations cannot be aligned in time. In some cases, the network can be enabled or configured to handle dynamic switching between synchronous or asynchronous operation. In this way, the network can adopt different usages of various timing / frequency arrangements.
[0037] UE 115 is scattered throughout the wireless network 100, and each UE can be fixed or mobile. It should be understood that, although mobile devices are generally referred to as user equipment (UE) in the standards and specifications promulgated by the Third Generation Partnership Project (3GPP), these devices may also be referred to as mobile stations (MS), user stations, mobile units, user units, wireless units, remote units, mobile devices, wireless devices, wireless communication devices, remote devices, mobile user stations, access terminals (AT), mobile terminals, wireless terminals, remote terminals, handheld devices, terminals, user agents, mobile clients, clients or some other appropriate terms by those skilled in the art. In this article, a "mobile" device or UE does not necessarily have the ability to move and can be stationary. Some non-limiting examples of mobile devices, such as embodiments that may include one or more UEs in UE 115, include mobile phones, cellular (cell) phones, smart phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, laptop computers, personal computers (PCs), notebook computers, netbooks, smart books, tablet computers, and personal digital assistants (PDAs). The mobile device may also be an "Internet of Things" (IoT) or "Internet of Everything" (IoE) device, such as a car or other means of transportation, a satellite radio, a global positioning system (GPS) device, a logistics controller, a drone, a multi-rotor helicopter, a quad-rotor helicopter, a smart energy or security device, a solar panel or solar array, municipal lighting, water or other infrastructure; industrial automation and enterprise equipment; consumer devices and wearable devices, such as glasses, wearable cameras, smart watches, health or fitness trackers, mammal implantable devices, gesture tracking devices, medical devices, digital audio players (such as MP3 players), cameras, game consoles, etc.; and digital home or smart home devices, such as home audio, video and multimedia devices, home appliances, sensors, vending machines, smart lighting, home security systems, smart meters, etc. In one aspect, the UE may be a device including a universal integrated circuit card (UICC). In another aspect, the UE may be a device that does not include a UICC. In some aspects, a UE that does not include a UICC may also be referred to as an IoE device. Figure 1The UEs 115a-115d of the illustrated embodiment are examples of mobile smartphone-type devices accessing the wireless network 100. A UE may also be a machine specifically configured for connected communications, including machine type communications (MTC), enhanced MTC (eMTC), narrowband IoT (NB-IoT), etc. Figure 1 The illustrated UEs 115e - 115k are examples of various machines configured for communications accessing the wireless network 100 .
[0038] A mobile device (e.g., UE 115) may be able to communicate with any type of base station, whether macro, pico, femto, repeater, etc. Figure 1 , lightning marks (e.g., communication links) indicate wireless transmissions between a UE and a serving base station (which is a base station designated to serve the UE on a downlink and / or uplink), or desired transmissions between base stations, and backhaul transmissions between base stations. Backhaul communications between base stations of the wireless network 100 may occur using wired and / or wireless communication links.
[0039] In operation at the wireless network 100, base stations 105a-105c use 3D beamforming and cooperative spatial techniques (e.g., coordinated multipoint (CoMP) or multi-connectivity) to serve UEs 115a and 115b. Macro base station 105d performs backhaul communications with base stations 105a-105c and small cells, base station 105f. Macro base station 105d also transmits multicast services that are subscribed to and received by UEs 115c and 115d. Such multicast services may include mobile television or streaming video, or may include other services for providing community information, such as weather emergencies or alerts, such as Amber alerts or gray alerts.
[0040] The wireless network 100 of an embodiment supports mission-critical communications using ultra-reliable and redundant links for mission-critical devices (e.g., UE 115e, which is a drone). The redundant communication links with UE 115e include links from macro base stations 105d and 105e and small cell base station 105f. Other machine-type devices (e.g., UE 115f (thermometer), UE 115g (smart meter), and UE 115h (wearable device)) can communicate directly with base stations (e.g., small cell base station 105f and macro base station 105e) through the wireless network 100, or in a multi-hop configuration through another user device that relays its information to the network (e.g., UE 115f transmits temperature measurement information to the smart meter, and UE 115g reports it to the network through small cell base station 105f). The wireless network 100 may also provide additional network efficiency through dynamic, low-latency TDD / FDD communications, such as in a vehicle-to-vehicle (V2V) mesh network between UEs 115i-115k communicating with a macro base station 105e.
[0041] Figure 2 1 shows a block diagram of a design of a base station 105 and a UE 115, which may be Figure 1 For a restricted association scenario (as described above), the base station 105 can be Figure 1 The small cell base station 105f in the example of FIG. 105 and the UE 115 may be a UE 115c or 115D operating in the service area of the base station 105f, which will be included in the list of accessible UEs of the small cell base station 105f in order to access the small cell base station 105f. The base station 105 may also be some other type of base station. Figure 2 As shown, the base station 105 may be equipped with antennas 234a through 234t, and the UE 115 may be equipped with antennas 252a through 252r for facilitating wireless communications.
[0042] At the base station 105, the transmit processor 220 may receive data from the data source 212 and control information from the controller / processor 240. The control information may be for a physical broadcast channel (PBCH), a physical control format indicator channel (PCFICH), a physical hybrid ARQ (automatic repeat request) indicator channel (PHICH), a physical downlink control channel (PDCCH), an enhanced physical downlink control channel (EPDCCH), an MTC physical downlink control channel (MPDCCH), etc. The data may be for a PDSCH, etc. The transmit processor 220 may process (e.g., encode and symbol map) the data and the control information to obtain data symbols and control symbols, respectively. The transmit processor 220 may also generate reference symbols (e.g., for a primary synchronization signal (PSS) and a secondary synchronization signal (SSS)) and a cell-specific reference signal. If applicable, the transmit (TX) multiple-input multiple-output (MIMO) processor 230 can perform spatial processing (e.g., precoding) on data symbols, control symbols, and / or reference symbols, and can provide an output symbol stream to modulators (MOD) 232a to 232t. Each modulator 232 can process its own output symbol stream (e.g., for OFDM, etc.) to obtain an output sample stream. Each modulator 232 can additionally or alternatively process (e.g., convert to analog, amplify, filter, and up-convert) the output sample stream to obtain a downlink signal. The downlink signals from modulators 232a to 232t can be transmitted via antennas 234a to 234t, respectively.
[0043] At UE 115, antennas 252a to 252r can receive downlink signals from base station 105 and can provide received signals to demodulators (DEMOD) 254a to 254r, respectively. Each demodulator 254 can condition (e.g., filter, amplify, downconvert, and digitize) the respective received signals to obtain input samples. Each demodulator 254 can further process the input samples (e.g., for OFDM, etc.) to obtain received symbols. MIMO detector 256 can obtain received symbols from demodulators 254a to 254r, perform MIMO detection on the received symbols if applicable, and provide detected symbols. Receive processor 258 can process (e.g., demodulate, deinterleave, and decode) the detected symbols, provide decoded data for UE 115 to data sink 260, and provide decoded control information to controller / processor 280.
[0044] On the uplink, at the UE 115, a transmit processor 264 may receive and process data from a data source 262 (e.g., for a physical uplink shared channel (PUSCH)) and control information from a controller / processor 280 (e.g., for a physical uplink control channel (PUCCH)). The transmit processor 264 may also generate reference symbols for a reference signal. The symbols from the transmit processor 264 may be precoded by a TX MIMO processor 266 if applicable, further processed by modulators 254a through 254r (e.g., for SC-FDM, etc.), and transmitted to the base station 105. At the base station 105, the uplink signal from the UE 115 may be received by the antenna 234, processed by the demodulator 232, detected by the MIMO detector 236 if applicable, and further processed by the receive processor 238 to obtain decoded data and control information transmitted by the UE 115. The processor 238 may provide the decoded data to the data sink 239 and the decoded control information to the controller / processor 240.
[0045] The controllers / processors 240 and 280 may direct operations at the base station 105 and the UE 115, respectively. The controller / processor 240 and / or other processors at the base station 105 and / or the controller / processor 280 and / or other processors and modules at the UE 115 may perform or direct the execution of various processes for the techniques described herein, such as performing or directing Figure 3 The execution shown, and / or other processes for the techniques described herein. Memories 242 and 282 may store data and program codes for base station 105 and UE 115, respectively. Scheduler 244 may schedule UEs for data transmission on the downlink and / or uplink.
[0046] Wireless communication systems operated by different network operating entities (e.g., network operators) may share spectrum. In some cases, a network operating entity may be configured to use the entire designated shared spectrum at least for a period of time before another network operating entity uses the entire designated shared spectrum during a different time period. Therefore, in order to allow network operating entities to use the entire designated shared spectrum, and to mitigate interfering communications between different network operating entities, certain resources (e.g., time) may be divided and allocated to different network operating entities for certain types of communications.
[0047] For example, a network operating entity may be allocated certain time resources that are reserved for exclusive communications by the network operating entity using the entire shared spectrum. Other time resources may also be allocated to a network operating entity where the entity is given a higher priority than other network operating entities to communicate using the shared spectrum. If the preferred network operating entity does not utilize these time resources that are preferentially used by the network operating entity, these time resources may be utilized by other network operating entities on an opportunistic basis. Additional time resources may be allocated to any network operator for opportunistic use.
[0048] Access to the shared spectrum and arbitration of time resources between different network operating entities may be centrally controlled by a single entity, autonomously determined by a predefined arbitration scheme, or dynamically determined based on interactions between wireless nodes of the network operator.
[0049] In some cases, UE 115 and base station 105 may operate in a shared RF spectrum band. The shared RF spectrum band may include licensed or unlicensed (e.g., contention-based) spectrum. In the unlicensed frequency portion of the shared RF spectrum band, UE 115 or base station 105 may traditionally perform a medium sensing process to compete for access to the spectrum. For example, UE 115 or base station 105 may perform a listen-before-talk (LBT) process, such as a clear channel assessment (CCA), before communicating to determine whether the shared channel is available. CCA may include an energy detection process to determine whether there are any other active transmissions. For example, a device may infer that a change in a received signal strength indicator (RSSI) of a power meter indicates that a channel is occupied. Specifically, a signal power concentrated in a specific bandwidth and exceeding a predetermined background noise may indicate another wireless transmitter. CCA may also include detecting a specific sequence indicating channel usage. For example, another device may send a specific preamble before sending a data sequence. In some cases, the LBT process may include the wireless node adjusting its own backoff window based on the amount of energy detected on the channel and / or acknowledgement / negative acknowledgement (ACK / NACK) feedback for its own sent packets as a collision indicator.
[0050] Wireless communication devices (e.g., base stations 105 and / or UE 115) can use various protocols to perform wireless communication at various layers. For example, Internet Protocol (IP) can be used to provide Internet connection, and Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) can be used to provide actual connection between devices and provide associated port numbers. Transport Layer Security (TLS) protocol can be used to provide security. In addition, applications running on or in wireless communication devices can use application protocols such as Hypertext Transfer Protocol (HTTP), HTTP / 2 protocol and / or HTTP / 3 protocol to format, obtain, send, input and / or output content. Applications can refer to any type of application, such as mobile applications, desktop applications, software programs, widgets, machine learning applications and / or network applications. Content can refer to any content that can be sent wirelessly, such as images, text and / or videos. Some deployments may involve content distribution of content providers for use and / or reception by end-user devices (e.g., UE and / or base stations). The aforementioned protocols are merely examples, and are therefore not intended to limit the scope of the present disclosure. In particular, various other protocols at various other layers can also be used to provide the same functions or additional functions as those described above.
[0051] In some aspects of the present disclosure, the wireless communication device may perform wireless communication using the QUIC protocol. The QUIC protocol described herein may refer to the QUIC transport protocol described and standardized by the Internet Engineering Task Force (IETF). According to one aspect of the present disclosure, the QUIC protocol may be a multiplexing and secure transport protocol based on UDP. In some aspects of the present disclosure, the QUIC protocol may provide various functions typically provided by various protocols, such as the above-mentioned TCP, UDP, TLS, and / or various HTTP-based protocols.
[0052] Content from an application may be sent and / or received, for example, using various protocols, as one or more data packets. That is, a data packet may include a subset or all of the content data from an application, commonly referred to as the payload of the data packet. In addition to the payload, a data packet may also include a header. The header may include control information organized and placed in various information fields of the header. The control information in the information field of the header may provide the information required for a wireless communication device to send, receive and / or process the payload. A person of ordinary skill in the art may also refer to the data packets described herein as flows or streams. Therefore, data packets that conform to the QUIC protocol may also be interchangeably referred to herein as QUIC packets, QUIC flows or QUIC streams.
[0053] Data packets conforming to the QUIC protocol, such as QUIC streams, may have various advantageous features. For example, most fields of the QUIC header may be encrypted. In some aspects of the present disclosure, some fields of the QUIC header may not be encrypted, such as the connection ID field. According to one aspect of the present disclosure, the connection ID field of the QUIC stream header may be used to multiplex multiple streams. In another aspect of the present disclosure, one QUIC stream may not block the transmission of another QUIC stream. In some aspects of the present disclosure, QUIC streams may be added and / or removed independently of another QUIC stream. In another aspect of the present disclosure, a QUIC stream may depend on another QUIC stream, so that removing one QUIC stream (e.g., a parent QUIC stream) may require removing another QUIC stream (e.g., a child QUIC stream). According to one aspect of the present disclosure, each QUIC stream and / or QUIC connection may be scheduled for transmission independently of each other. In another aspect of the present disclosure, the scheduling of QUIC stream transmission may depend on the scheduling of transmission of another QUIC stream.
[0054] In some aspects of the present disclosure, a wireless communication device may prioritize and / or schedule the transmission of data packets based on QoS parameters associated with the data packets. Generally, QoS may refer to the ability to provide different priorities for different applications, users, and / or flows, or to guarantee a certain level of performance for a flow. As an example, in some aspects of the present disclosure, some QoS parameters may specify a data rate, delay, delay variation, packet loss, and / or bit error rate (BER) threshold, acceptable values, and / or ranges of acceptable values for data packets.
[0055] Figure 3 As an example, a block diagram illustrating a method for QoS-based transmission scheduling of QUIC flows in a wireless communication system according to some aspects of the present disclosure. Aspects of method 300 may utilize Figure 1-Figure 2 and Figure 4-Figure 7 Various other aspects of the present disclosure described herein may be implemented, for example, in a mobile device / UE or a base station / gNB. For example, referring to Figure 2 , the controller / processor 240 of the base station 105 may control the base station 105 to perform the method 300. As another example, refer to Figure 2 , the controller / processor 280 of the UE 115 may control the UE 115 to perform the method 300. In yet another example, aspects of the present disclosure may be performed by a content provider.
[0056] It will also target Figure 6 The UE 115 and Figure 7 Base station 105 is shown to describe example blocks of method 300 . Figure 61 is a block diagram illustrating a UE 115 configured according to one aspect of the present disclosure. The UE 115 may include various structures, hardware, and components, such as for Figure 2 115. For example, the UE 115 includes a controller / processor 280 that operates to execute logic or computer instructions stored in a memory 282. The controller / processor 280 may also control components of the UE 115 that provide features and functions of the UE 115. The UE 115 transmits and receives signals via the radio units 601a-r and the antennas 252a-r under the control of the controller / processor 280. Figure 2 As shown for UE 115 , radio units 601 a - r include various components and hardware, including modulator / demodulators 254 a - r , MIMO detector 256 , receive processor 258 , transmit processor 264 , and TX MIMO processor 266 . Figure 7 1 is a block diagram illustrating a base station 105 configured according to one aspect of the present disclosure. The base station 105 may include various structures, hardware, and components, such as for Figure 2 The base station 105 is shown as one of the base stations 105. For example, the base station 105 includes a controller / processor 240 that operates to execute logic or computer instructions stored in a memory 242. The controller / processor 240 may also control the components of the base station 105 that provide the features and functions of the base station 105. The base station 105 transmits and receives signals via wireless radio units 701a-t and antennas 234a-t under the control of the controller / processor 240. The radio units 701a-t include various components and hardware, such as Figure 2 1, shown for base station 105, includes modulators / demodulators 232a-t, MIMO detector 236, receive processor 238, transmit processor 220, and TX MIMO processor 230. Digital signals obtained from sampling received analog wireless signals may be provided to controller / processor 280 and / or controller / processor 240 to control communication operations.
[0057] Figure 3 A method 300 is shown that may be performed by a wireless communication device such as a base station 105 or a UE 115. The method 300 includes, at block 302, receiving a data packet. The data packet may have a header including a first plurality of fields. As an example, the base station 105 may, under the control of the controller / processor 240, receive a data packet having a header including a first plurality of fields. Specifically referring to Figure 2In some aspects of the present disclosure, the means for receiving a data packet having a header including a first plurality of fields may include the base station 105, and more specifically, components of the base station 105, such as the controller / processor 240 and components of the base station 105 that are controlled / instructed by the controller / processor 240 to cause the base station 105 to receive the data packet having a header including the first plurality of fields. As another example, the UE 115 may receive the data packet having a header including the first plurality of fields under the control of the controller / processor 280. Specifically referring to Figure 2 In some aspects of the present disclosure, a unit for receiving a data packet having a header including a first plurality of fields may include a UE 115, and more specifically, include components of the UE 115, such as a controller / processor 280 and components of the UE 115 that are controlled / instructed by the controller / processor 280 to cause the UE 115 to receive a data packet having a header including a first plurality of fields.
[0058] The wireless communication device may receive the data packet in various ways (e.g., at block 302). For example, in one aspect of the present disclosure, the wireless communication device may obtain a data packet having a header including a first plurality of fields from an application running within the wireless communication device. As another example, an application running within the wireless communication device may generate or cause generation of a data packet having a header including a first plurality of fields. Thus, the wireless communication device may obtain a data packet from an application within the wireless communication device that generates the data packet or causes the data packet to be generated.
[0059] In another aspect of the disclosure, a wireless communication device may receive a data packet from another wireless communication device, for example, at block 302. For example, in one aspect of the disclosure, a first wireless communication device may transmit a data packet having a header including a first plurality of fields. Then, a second wireless communication device may receive the transmitted data packet having a header including the first plurality of fields.
[0060] In some aspects of the present disclosure, the wireless communication device may determine whether the first plurality of fields matches the second plurality of fields. According to some aspects of the present disclosure, the second plurality of fields may refer to an information field of a header that uniquely identifies a data packet. As an example, the base station 105 may determine whether the first plurality of fields matches the second plurality of fields under the control of the controller / processor 240. Figure 2In some aspects of the present disclosure, the means for determining whether the first plurality of fields matches the second plurality of fields may include the base station 105, and more specifically, components of the base station 105, such as the controller / processor 240 and components of the base station 105 that are controlled / instructed by the controller / processor 240 to cause the base station 105 to determine whether the first plurality of fields matches the second plurality of fields. As another example, the UE 115 may determine whether the first plurality of fields matches the second plurality of fields under the control of the controller / processor 280. Specifically refer to Figure 2 In some aspects of the present disclosure, a unit for determining whether a first plurality of fields matches a second plurality of fields may include a UE 115, and more specifically, include components of the UE 115, such as a controller / processor 280 and components of the UE 115 that are controlled / instructed by the controller / processor 280 to cause the UE 115 to determine whether the first plurality of fields matches the second plurality of fields.
[0061] According to some aspects of the present disclosure, the second plurality of fields may refer to an information field that uniquely identifies a data packet or a group of data packets of a header. A data packet that is uniquely identified may refer to a data packet that is different from other data packets. In some aspects of the present disclosure, a group of data packets may be uniquely identified together. Therefore, in another aspect of the present disclosure, unique identification may also refer to an identification of a group of data packets that are similarly processed and uniquely identified from other data packets that are not a part of a uniquely identified data packet. In other aspects of the present disclosure, unique identification may refer to a unique identification of a user of a wireless communication device, a unique identification of a transmitter and / or a receiver of a wireless communication device, and / or a unique identification of content.
[0062] According to some aspects of the present disclosure, the second plurality of fields may refer to a reference plurality of fields. In some aspects of the present disclosure, the wireless communication device may compare the first plurality of fields to the reference plurality of fields to determine whether the first plurality of fields matches the reference plurality of fields. Thus, in some aspects of the present disclosure, the wireless communication device determining whether the first plurality of fields matches the second plurality of fields may include: the wireless communication device determining whether the first plurality of fields matches the reference plurality of fields.
[0063] Figure 4 As an example, a diagram illustrating multiple fields 400 of a data packet header according to some aspects of the present disclosure is shown. In one aspect of the present disclosure, Figure 4 The illustrated plurality of information fields 400 may correspond to a reference plurality of fields, eg, a second plurality of fields.
[0064] exist Figure 4In the example shown, the plurality of information fields 400 that uniquely identify a data packet may include separate fields to indicate a source IP address 402, a destination IP address 404, a source port 406, a destination port 408, a protocol identifier (ID) 410, a destination connection ID 412, and a source connection ID 414. Figure 4 As shown in the example shown in , the multiple information fields 400 that uniquely identify the data packet may include seven information fields. In some aspects of the present disclosure, the seven information fields 400 may be referred to as a 7-tuple. Therefore, in some aspects of the present disclosure, a data packet may be uniquely identified by its 7-tuple. According to one aspect of the present disclosure, Figure 4 The 7-tuple shown may be a reference to a plurality of fields, eg, a second plurality of fields.
[0065] In some aspects of the present disclosure, Figure 4 The destination connection ID 412 and the source connection ID 414 shown may be collectively referred to as a connection ID. In other words, in some aspects of the present disclosure, the information field of the header indicating the connection ID may include at least one of the following: a field indicating the source connection ID, such as Figure 4 and / or a field indicating a destination connection ID, such as a source connection ID 414 shown in FIG. Figure 4 The destination connection ID 412 is shown in FIG.
[0066] In other aspects of the present disclosure, the field indicating the connection ID may include only one of the source connection ID or the destination connection ID. For illustration, Figure 5 Another diagram illustrating multiple information fields of a data packet header according to some aspects of the present disclosure is shown as an example. Figure 5 In the example shown, the plurality of information fields 500 that uniquely identify a data packet may include separate fields to indicate a source IP address 502, a destination IP address 504, a source port 506, a destination port 508, a protocol identifier (ID) 510, and a destination connection ID 512. In another aspect of the present disclosure, the plurality of information fields 500 that uniquely identify a data packet may include separate fields to indicate a source IP address 502, a destination IP address 504, a source port 506, a destination port 508, a protocol identifier (ID) 510, and a destination connection ID 512. Figure 5 The destination connection ID 512 shown is replaced with the source connection ID, and Figure 5 The remaining information fields shown remain unchanged. Figure 5 As shown in the example shown in , the multiple information fields 500 that uniquely identify the data packet may include six information fields. In some aspects of the present disclosure, the six information fields 500 may be referred to as a 6-tuple. Therefore, in some aspects of the present disclosure, a data packet may be uniquely identified by its 6-tuple. According to one aspect of the present disclosure, Figure 5 The 6-tuple shown may be a reference to a plurality of fields, eg, a second plurality of fields.
[0067] all in all, Figure 4 and 5 Two different forms that may be taken by a reference to a plurality of fields (eg, a second plurality of fields) are shown. Figure 4 As shown in the example of , the second plurality of information fields may include separate fields to indicate source IP 402, destination IP 404, source port 406, destination port 408, protocol ID 410, and connection IDs including destination connection ID 412 and source connection ID 414. As another example, Figure 5 As shown in the example of , the second plurality of information fields may include separate fields to indicate source IP 502, destination IP 504, source port 506, destination port 508, protocol ID 510, and connection ID, which is Figure 5 The destination connection ID 512 shown is either a source connection ID. Thus, in various aspects of the present disclosure, the connection ID present in the second plurality of information fields may include at least one of a field indicating a source connection ID and / or a field indicating a destination connection ID.
[0068] In some aspects of the present disclosure, the reference to multiple fields may be a service flow template (TFT). For example, in some aspects of the present disclosure, a 7-tuple may reference multiple fields (e.g. Figure 4 7-tuple 400 shown) can be part of a TFT. Similarly, in another aspect of the present disclosure, a 6-tuple references multiple fields (e.g. Figure 5 6-tuple 500 shown) can be part of a TFT. Thus, like reference to multiple fields, a TFT can refer to an information field of a header that uniquely identifies a data packet or a group of data packets. According to some aspects of the present disclosure, a data packet or a group of data packets can be uniquely identified by a TFT to determine appropriate QoS parameters for transmission scheduling of the data packet or the group of data packets, as described in detail in the present disclosure.
[0069] In some aspects of the present disclosure, the same source port and destination port may be associated with multiple QUIC streams. For example, in one aspect of the present disclosure, a first value of a source port field associated with a received / obtained data packet may be the same as a second value of another source port field associated with another data packet that is also scheduled for transmission by a wireless communication device. In another aspect of the present disclosure, a first value of a destination port field associated with a received / obtained data packet may be the same as a second value of another destination port field associated with another data packet that is also scheduled for transmission by a wireless communication device. Therefore, in some aspects of the present disclosure, a first value of at least one of a field indicating a source port and / or a field indicating a destination port may be the same as a second value of at least one of the following: another field indicating another source port and / or another field indicating another destination port, the other field being included in another header of another data packet that is also scheduled for transmission by a wireless communication device.
[0070] According to some aspects of the present disclosure, the first plurality of fields mentioned at block 302 of method 300 may refer to specific information fields of the header that uniquely identify, for example, a data packet received / obtained by the wireless communication device at block 302 of method 300 .
[0071] Determining whether the first plurality of fields associated with the received / obtained data packet matches the second plurality of fields may be performed in a variety of ways. For example, in one aspect of the present disclosure, the wireless communication device may attempt to match the first plurality of fields to the second plurality of fields. Figure 4 As an example, the wireless communication device may determine whether the first plurality of fields matches the second plurality of fields by determining whether the first plurality of fields includes a 7-tuple. In other words, in one aspect of the present disclosure, the wireless communication device may determine whether the first plurality of fields matches the second plurality of fields by determining whether the first plurality of fields includes a 7-tuple to indicate a source IP 402, a destination IP 404, a source port 406, a destination port 408, a protocol ID 410, and a connection ID including both a destination connection ID 412 and a source connection ID 414, respectively. Figure 4 In some aspects of the present disclosure, when the wireless communication device determines that the first plurality of fields includes Figure 4 When the second plurality of fields 400 is shown, the wireless communication device may determine that there is a match.
[0072] In another aspect of the present disclosure, the wireless communication device may attempt to associate the first plurality of fields with Figure 5As an example, the wireless communication device may determine whether the first plurality of fields matches the second plurality of fields by determining whether the first plurality of fields includes respective fields for indicating source IP 502, destination IP 504, source port 506, destination port 508, protocol ID 510, and connection ID, such as Figure 5 As shown. Figure 5 As shown, the connection ID may be the destination connection ID 512, or may be the source connection ID. In some aspects of the present disclosure, when the wireless communication device determines that the first plurality of fields includes Figure 5 When the second plurality of fields 500 is shown, the wireless communication device may determine that there is a match.
[0073] In some aspects of the present disclosure, a wireless communication device may determine that a received / obtained data packet complies with the QUIC transport protocol. Compliance determination may include a series of options related to matching data fields. In some aspects, compliance with the QUIC transport protocol may be determined when a first plurality of fields matches a second plurality of fields. A match may mean that one or more data fields contain the same content, or that an interesting portion of a data field contains the same content. A match may also mean that one or more data or information fields are included in various data packets.
[0074] Continuing with method 300, at block 304, method 300 includes scheduling transmission of data packets based on QoS parameters associated with the first plurality of fields. In some aspects of the present disclosure, when the first plurality of fields matches a reference plurality of fields (e.g., the second plurality of fields), the transmission of the data packets may be scheduled based on the QoS parameters associated with the first plurality of fields. As an example, when the first plurality of fields matches the second plurality of fields, the base station 105 may, under the control of the controller / processor 240, schedule transmission of the data packets based on the QoS parameters associated with the first plurality of fields. Specifically referring to Figure 2 In some aspects of the present disclosure, a unit for scheduling transmission of data packets based on QoS parameters associated with the first plurality of fields when the first plurality of fields matches the second plurality of fields may include the base station 105, and more specifically, includes components of the base station 105, such as the controller / processor 240 and components of the base station 105 that are controlled / instructed by the controller / processor 240 to cause the base station 105 to schedule transmission of data packets based on QoS parameters associated with the first plurality of fields when the first plurality of fields matches the second plurality of fields. As another example, the UE 115 may, under the control of the controller / processor 280, schedule transmission of data packets based on QoS parameters associated with the first plurality of fields when the first plurality of fields matches the second plurality of fields. Specifically refer to Figure 2In some aspects of the present disclosure, a unit for scheduling transmission of data packets based on QoS parameters associated with the first plurality of fields when the first plurality of fields matches the second plurality of fields may include UE 115, and more specifically, includes components of UE 115, such as controller / processor 280 and components of UE 115 controlled / instructed by controller / processor 280 to cause UE 115 to schedule transmission of data packets based on QoS parameters associated with the first plurality of fields when the first plurality of fields matches the second plurality of fields.
[0075] In some aspects of the present disclosure, the first plurality of fields, whether or not associated with the Figure 4 or Figure 5 The second plurality of fields in the form shown can be associated with a specific set of QoS parameters. Therefore, in some aspects of the present disclosure, when the wireless communication device determines that the first plurality of fields matches the second plurality of fields, the wireless communication device can identify the specific QoS parameters associated with the specific first plurality of fields. As an example, after the wireless communication device determines that the first plurality of fields matches the second plurality of fields, the wireless communication device can process the value of each information field in the first plurality of fields to determine the specific value of the first plurality of fields. Based on the specific value of the information field of the first plurality of fields, the wireless communication device can obtain the QoS parameters associated with the specific first plurality of fields. For example, in some aspects of the present disclosure, the association between the specific QoS parameter and the specific value of the first plurality of fields can be stored in the memory of the wireless communication device. Therefore, in one aspect of the present disclosure, when the wireless communication device knows the specific value of the first plurality of fields, the wireless communication device can, for example, read the stored association between the specific QoS parameter and the specific value of the first plurality of fields from the memory to identify the specific QoS parameter associated with the specific value of the first plurality of fields. In some aspects of the present disclosure, the QoS parameters associated with the specific first plurality of fields can also be referred to as QoS parameters associated with the specific second plurality of fields. This may be the case when the first plurality of fields matches the second plurality of fields, because in this case the specific value of the first plurality of fields may be the same as the specific value of the second plurality of fields, eg, a specific reference plurality of fields or a 7-tuple TFT.
[0076] In some aspects of the present disclosure, for example at block 304, the wireless communication device may schedule the transmission of received / obtained data packets based on specific QoS parameters associated with specific values of the first plurality of fields. For example, as previously described, some QoS parameters may specify data rate, delay, delay variation, packet loss, and / or BER thresholds, acceptable values, and / or acceptable ranges of values for data packets. Thus, in some aspects of the present disclosure, for example at block 304, scheduling the transmission of data packets based on QoS parameters associated with the first plurality of fields may include considering thresholds, acceptable values, and / or acceptable ranges of values provided for respective QoS parameters when scheduling the transmission of data packets.
[0077] According to some aspects of the present disclosure, the wireless communication device may also send the data packet based at least in part on the schedule. For example, the wireless communication device may send the data packet having a header including the first plurality of fields based at least in part on the schedule (e.g., the schedule of block 304 of method 300). In some aspects of the present disclosure, another wireless communication device receiving the data packet may receive and / or process the data packet using the first plurality of fields within the header of the received data packet.
[0078] The wireless communication device may transmit data packets in various ways. For example, in one aspect of the present disclosure, the wireless communication device may transmit a data packet having a header including a first plurality of fields from a first component of the wireless communication device to another component of the wireless communication device, such as a component within the wireless communication device on which an application is running. Thus, in some aspects of the present disclosure, transmission of data packets by the wireless communication device may include transmissions occurring within the wireless communication device, such as transmissions from a first component of the wireless communication device to another component of the wireless communication device.
[0079] In another aspect of the present disclosure, a wireless communication device may send a data packet to another wireless communication device. For example, in one aspect of the present disclosure, a first wireless communication device may send a data packet having a header including a first plurality of fields. Then, a second wireless communication device may receive the sent data packet having a header including the first plurality of fields. Thus, in some aspects of the present disclosure, the transmission of data packets by a wireless communication device may include transmission from one or more wireless communication devices to another one or more wireless communication devices.
[0080] In other aspects of the present disclosure, the first plurality of fields received by another wireless communication device can be used by the other wireless communication device to perform a reflected QoS-based transmission scheduling on the data packet to be sent. For example, another wireless communication device can receive / obtain another data packet, which has another header, and the other header includes a reflected version of the first plurality of fields received from the wireless communication device. As an example, if another wireless communication device receives a data packet with a 7-tuple <source IP, destination IP, source port, destination port, protocol ID, source connection ID, destination connection ID> from the wireless communication device, then another data packet that the other wireless communication device may be scheduling for transmission may have a 7-tuple <destination IP, source IP, destination port, source port, protocol ID, destination connection ID, source connection ID>. Obviously, the 7-tuple of the other data packet is a reflected version of the 7-tuple of the originally received data packet, because each of the "source" field and the "destination" field is reflected, such as being exchanged. In some aspects, only the protocol ID field may not be reflected.
[0081] In some aspects of the present disclosure, another wireless communication device may perform various aspects of method 300 to perform reflective QoS-based transmission scheduling of a data packet. For example, another wireless communication device may receive / obtain another data packet having a header including a reflected version of the first plurality of fields received from the wireless communication device. In addition, the other wireless communication device may schedule transmission of the other data packet based on the QoS parameters associated with the reflected version of the first plurality of fields.
[0082] The QoS-based transmission scheduling of the reflection of the data packet by the wireless communication device may include various aspects of the method 300. For example, in one aspect of the present disclosure, the wireless communication device may receive another data packet having another header including a third plurality of fields. According to some aspects of the present disclosure, the third plurality of fields may refer to a specific information field of another header that uniquely identifies another data packet received / obtained by the wireless communication device, for example, at block 302 of the method 300. In another aspect of the present disclosure, for example, at block 304 of the method 300, the wireless communication device that receives the other data packet may schedule the transmission of the other data packet based on the QoS parameters associated with the third plurality of fields. According to some aspects of the present disclosure, when the third plurality of fields matches another reference plurality of fields (e.g., the fourth plurality of fields), the transmission of other data packets may be scheduled based on the QoS parameters associated with the third plurality of fields. For example, when the wireless communication device performs reflected QoS-based transmission scheduling of data packets, the source IP, destination IP, source port, destination port, protocol ID, source connection ID, and destination connection ID fields of the fourth plurality of fields can correspond to the destination IP, source IP, destination port, source port, protocol ID, destination connection ID, and source connection ID fields of the second plurality of fields, respectively.
[0083] In some aspects, a QoS technique for a QUIC stream may include a wireless communication device receiving a data packet having a header including a first plurality of fields. The QoS technique for the QUIC stream may also include the wireless communication device scheduling transmission of the data packet based on QoS parameters associated with the first plurality of fields. When the first plurality of fields matches the second plurality of fields, the transmission of the data packet may also be scheduled based on the QoS parameters associated with the first plurality of fields.
[0084] QoS techniques for QUIC streams may include additional aspects, such as any single aspect or any combination of aspects described below and / or in combination with one or more other processes described elsewhere herein.
[0085] In the first aspect, the second plurality of fields includes separate fields for indicating a source IP, a destination IP, a source port, a destination port, a protocol ID, and a connection ID.
[0086] In a second aspect, alone or in combination with the first aspect, the field indicating the connection ID includes at least one of a field indicating a source connection ID and / or a field indicating a destination connection ID.
[0087] In a third aspect, alone or in combination with one or more of the first and second aspects, the wireless communication device may receive another data packet having another header including a third plurality of fields.
[0088] In a fourth aspect, alone or in combination with one or more of the first to third aspects, when the third plurality of fields matches the fourth plurality of fields, the wireless communication device may schedule transmission of another data packet based on QoS parameters associated with the third plurality of fields.
[0089] In the fifth aspect, alone or in combination with one or more aspects of the first to fourth aspects, the source IP, destination IP, source port, destination port, protocol ID, source connection ID and destination connection ID fields of the fourth plurality of fields may respectively correspond to the destination IP, source IP, destination port, source port, protocol ID, destination connection ID and source connection ID fields of the second plurality of fields.
[0090] In the sixth aspect, alone or in combination with one or more of the first to fifth aspects, a first value of at least one of the fields indicating a source port and / or a field indicating a destination port may be the same as a second value of at least one of another field indicating another source port and / or another field indicating another destination port, the other field being included in another header of another data packet that is also scheduled for transmission.
[0091] In the seventh aspect, alone or in combination with one or more of the first to sixth aspects, when the first plurality of fields matches the second plurality of fields, the wireless communication device can determine that the data packet complies with the QUIC transmission protocol.
[0092] In an eighth aspect, alone or in combination with one or more of the first to seventh aspects, a content provider may cause a data packet having a header including a first plurality of fields to be received by a wireless communication device.
[0093] In a ninth aspect, alone or in combination with one or more of aspects one to eight, when a first plurality of fields matches a second plurality of fields, a content provider may enable a wireless communication device to schedule transmission of data packets based on QoS parameters associated with the first plurality of fields.
[0094] In a tenth aspect, alone or in combination with one or more of the first to ninth aspects, the content provider may cause another data packet having another header including a third plurality of fields to be received by the wireless communication device.
[0095] In the eleventh aspect, alone or in combination with one or more of the first to tenth aspects, when the third plurality of fields matches the fourth plurality of fields, the content provider may enable the wireless communication device to schedule transmission of another data packet based on QoS parameters associated with the third plurality of fields.
[0096] In a twelfth aspect, alone or in combination with one or more of the first to eleventh aspects, when the first plurality of fields matches the second plurality of fields, the content provider can enable the wireless communication device to determine that the data packet complies with the QUIC transport protocol.
[0097] It should be understood by those skilled in the art that any of a variety of different technologies and techniques may be used to represent information and signals. For example, data, instructions, commands, information, signals, bits, symbols, and chips mentioned throughout the above description may be represented by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, optical fields or optical particles, or any combination thereof.
[0098] The functional blocks and modules described herein (eg, Figure 2 The functional blocks and modules in the present invention may include various components and structures. These may include one or more of the following: processors, electronic devices, hardware devices, electronic components, logic circuits, memories, software codes, firmware codes, etc., or any combination thereof. In addition, the features discussed herein may be implemented via dedicated processor circuits, via executable instructions, and / or combinations thereof. These items may be used as one or more units that perform any one or more of the described functions as well as the units discussed herein.
[0099] Those skilled in the art should also understand that the various illustrative logical blocks, modules, circuits, and algorithmic processing (eg, Figure 3 The logic blocks in the embodiment of the present invention can be implemented as electronic hardware, computer software or a combination thereof. In order to clearly represent the interchangeability between hardware and software, the above generally describes each illustrative component, block, module, circuit and action around its function. As for whether this function is implemented as hardware or software, it depends on the specific application and the design constraints imposed on the entire system. Those skilled in the art can implement the described functions in an alternative manner for each specific application, but this implementation decision should not be interpreted as causing a deviation from the scope of the present disclosure. Those skilled in the art will also easily recognize that the order or combination of the components, methods or interactions described herein are only examples, and the components, methods or interactions of various aspects of the present disclosure can be combined or performed in other ways different from those shown and described herein.
[0100] The various illustrative logic blocks, modules, and circuits described in conjunction with the disclosure herein may be implemented or executed using a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic devices, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but, in an alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor may also be implemented as a combination of computing devices, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, a combination of one or more microprocessors and a DSP core, or any other such configuration.
[0101] The features of the method or algorithm described in conjunction with the disclosure herein can be directly implemented in hardware, in a software module executed by a processor, or in a combination of the two. The software module can be located in a RAM memory, a flash memory, a ROM memory, an EPROM memory, an EEPROM memory, a register, a hard disk, a mobile disk, a CD-ROM, or any other form of storage medium known to the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Alternatively, the storage medium can be an integral part of the processor. The processor and the storage medium can be located in an ASIC. The ASIC can be located in a user terminal. Alternatively, the processor and the storage medium can also be located in a user terminal as discrete components.
[0102] In one or more exemplary designs, the functions described herein can be implemented with hardware, software, firmware or any combination thereof. If implemented with software, these functions can be stored on a computer-readable medium or sent by a computer-readable medium as one or more instructions or codes. Computer-readable media include both computer storage media and communication media, and communication media include any media that helps to transfer a computer program from one location to another. Computer-readable storage media can be any available medium that can be accessed by a general-purpose computer or a special-purpose computer. By way of example and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, disk storage or other magnetic storage devices, or any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a general-purpose or special-purpose computer or a general-purpose or special-purpose processor. Connections can also be appropriately referred to as computer-readable media. For example, if software is sent from a website, server or other remote source using a coaxial cable, optical fiber cable, twisted pair, digital subscriber line (DSL), coaxial cable, optical fiber cable, twisted pair or DSL are included in the definition of the medium. As used herein, disk and disc include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), hard disk, solid state disk and Blu-ray disc, wherein disks usually reproduce data magnetically, while discs use lasers to reproduce data optically. Combinations of the above should also be included within the scope of computer-readable media.
[0103] As used herein, including in the claims, when the term "and / or" is used in a list of two or more items, it means that any one of the listed items can be used alone, or any combination of two or more of the listed items can be used. For example, if a composition is described as comprising components A, B, and / or C, the composition can comprise only A; only B; only C; a combination of A and B; a combination of A and C; a combination of B and C; or a combination of A, B, and C. Furthermore, as used herein, including in the claims, "or" used in a list of items preceded by "at least one of" indicates a separated list, so that, for example, a list of "at least one of A, B, or C" means any one of A, or B, or C, or AB, or AC, or BC, or ABC (i.e., A and B and C), or any combination thereof.
[0104] In order to enable any person skilled in the art to implement or use the present disclosure, a description of the present disclosure is provided above. Various modifications to the present disclosure will be apparent to those skilled in the art, and the general principles defined herein may be applied to other variations without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the examples and designs described herein, but to the widest range consistent with the principles and novel features disclosed herein.
Claims
1. A wireless communication method, comprising: receiving a data packet having a header including a first plurality of fields; In response to a match between the first plurality of fields and a second plurality of fields including a source Internet Protocol (IP) field, a destination IP field, a source port field, a destination port field, a protocol identification (ID) field, and one or more connection ID fields, performing the following operations: identifying a quality of service (QoS) parameter corresponding to the value of the first plurality of fields from a plurality of QoS parameters corresponding to a plurality of values; as well as Transmission of the data packets is scheduled based on the QoS parameters.
2. The method according to claim 1, wherein: The second plurality of fields are arranged in order in the header according to the following sequence: the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, and the one or more connection ID fields.
3. The method according to claim 1, wherein: The matching corresponds to each field type of the first plurality of fields matching the field type of a corresponding field of the second plurality of fields.
4. The method according to claim 1, further comprising: receiving another data packet having another header including a third plurality of fields; as well as Based on the matching of the third multiple fields with the fourth multiple fields, and based on the QoS parameters associated with the third multiple fields, the transmission of the other data packet is scheduled, wherein, for the fourth multiple fields, the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, the source connection ID field in one or more connection ID fields, and the destination connection ID field in the one or more connection ID fields correspond to the destination IP field, the source IP field, the destination port field, the source port field, the protocol ID field, the destination connection ID field in the one or more connection ID fields, and the source connection ID field in the one or more connection ID fields of the second multiple fields, respectively.
5. The method according to claim 1, wherein: A first value of at least one of the source port field and / or the destination port field in the first plurality of fields is the same as a second value of at least one of another source port field and / or another destination port field, and the other destination port field is included in another header of another data packet that is also scheduled for transmission.
6. The method according to claim 1, wherein: Identifying the QoS parameter corresponding to the value of the first plurality of fields from the plurality of QoS parameters corresponding to the plurality of values comprises reading from a memory one or more associations between the values of the first plurality of fields and at least some of the plurality of QoS parameters.
7. The method according to claim 1, wherein: The method also includes, in response to a match between the first plurality of fields and the second plurality of fields, processing the first plurality of fields to determine the values of the first plurality of fields.
8. An apparatus configured for wireless communication, comprising: means for receiving a data packet having a header including a first plurality of fields; as well as A unit for scheduling transmission of the data packet based on a quality of service (QoS) parameter corresponding to the value of the first plurality of fields, the QoS parameter being identified from a plurality of QoS parameters corresponding to a plurality of values, in response to a match between the first plurality of fields and a second plurality of fields including a source Internet Protocol (IP) field, a destination IP field, a source port field, a destination port field, a protocol identification (ID) field, and one or more connection ID fields.
9. The device according to claim 8, wherein: The second plurality of fields are arranged in order in the header according to the following sequence: the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, and the one or more connection ID fields.
10. The apparatus according to claim 8, further comprising: means for receiving another data packet having another header including a third plurality of fields; as well as A unit for scheduling the transmission of the other data packet based on matching the third plurality of fields with a fourth plurality of fields and based on QoS parameters associated with the third plurality of fields, wherein, for the fourth plurality of fields, the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, the source connection ID field in one or more connection ID fields, and the destination connection ID field in the one or more connection ID fields correspond to the destination IP field, the source IP field, the destination port field, the source port field, the protocol ID field, the destination connection ID field in the one or more connection ID fields, and the source connection ID field in the one or more connection ID fields of the second plurality of fields, respectively.
11. The device according to claim 8, wherein: A first value of at least one of the source port field and / or the destination port field in the first plurality of fields is the same as a second value of at least one of another source port field and / or another destination port field, and the other destination port field is included in another header of another data packet that is also scheduled for transmission.
12. The apparatus according to claim 8, further comprising: A unit for determining that the data packet complies with the QUIC transport protocol when the first plurality of fields matches the second plurality of fields.
13. A non-transitory computer-readable medium having program code recorded thereon, the program code comprising: program code executable by a computer for causing the computer to receive a data packet having a header including a first plurality of fields; as well as Program code executable by the computer to cause the computer, in response to a match between the first plurality of fields and a second plurality of fields including a source Internet Protocol (IP) field, a destination IP field, a source port field, a destination port field, a protocol identification (ID) field, and one or more connection ID fields, to: identify a quality of service (QoS) parameter corresponding to a value of the first plurality of fields from a plurality of QoS parameters corresponding to a plurality of values; And scheduling transmission of the data packets based on the QoS parameters.
14. The non-transitory computer readable medium of claim 13, wherein: The second plurality of fields are arranged in order in the header according to the following sequence: the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, and the one or more connection ID fields.
15. The non-transitory computer readable medium of claim 13, wherein: The one or more connection ID fields include a source connection ID field and a destination connection ID field.
16. The non-transitory computer readable medium of claim 13, further comprising: Program code executable by the computer to cause the computer to: receive another data packet having another header including a third plurality of fields; as well as The computer may execute program code for causing the computer to perform the following operations: scheduling the transmission of the other data packet based on the QoS parameters associated with the third plurality of fields when the third plurality of fields matches the fourth plurality of fields, wherein, for the fourth plurality of fields, the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, the source connection ID field in one or more connection ID fields, and the destination connection ID field in the one or more connection ID fields correspond to the destination IP field, the source IP field, the destination port field, the source port field, the protocol ID field, the destination connection ID field in the one or more connection ID fields, and the source connection ID field in the one or more connection ID fields of the second plurality of fields, respectively.
17. The non-transitory computer readable medium of claim 13, wherein: A first value of at least one of the source port field and / or the destination port field in the first plurality of fields is the same as a second value of at least one of another source port field and / or another destination port field, and the other destination port field is included in another header of another data packet that is also scheduled for transmission.
18. The non-transitory computer-readable medium of claim 13, further comprising program code executable by the computer for causing the computer to perform the following operations: when the first plurality of fields matches the second plurality of fields, determining that the data packet complies with the QUIC transport protocol.
19. An apparatus configured for wireless communication, the apparatus comprising: at least one processor, and a memory coupled to the at least one processor, Wherein, the at least one processor is configured to: receiving a data packet having a header including a first plurality of fields; In response to a match between the first plurality of fields and a second plurality of fields including a source Internet Protocol (IP) field, a destination IP field, a source port field, a destination port field, a protocol identification (ID) field, and one or more connection ID fields, performing the following operations: identifying a quality of service (QoS) parameter corresponding to the value of the first plurality of fields from a plurality of QoS parameters corresponding to a plurality of values; and Transmission of the data packets is scheduled based on the QoS parameters.
20. The device according to claim 19, wherein The second plurality of fields are arranged in order in the header according to the following sequence: the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, and the one or more connection ID fields.
21. The device according to claim 19, wherein The one or more connection ID fields include a source connection ID field and a destination connection ID field.
22. The device according to claim 19, wherein The at least one processor is further configured to: receiving another data packet having another header including a third plurality of fields; and Based on the matching of the third multiple fields with the fourth multiple fields, and based on the QoS parameters associated with the third multiple fields, the transmission of the other data packet is scheduled, wherein, for the fourth multiple fields, the source IP field, the destination IP field, the source port field, the destination port field, the protocol ID field, the source connection ID field in one or more connection ID fields, and the destination connection ID field in the one or more connection ID fields correspond to the destination IP field, the source IP field, the destination port field, the source port field, the protocol ID field, the destination connection ID field in the one or more connection ID fields, and the source connection ID field in the one or more connection ID fields of the second multiple fields, respectively.
23. The device according to claim 19, wherein: A first value of at least one of the source port field and / or the destination port field in the first plurality of fields is the same as a second value of at least one of another source port field and / or another destination port field, and the other destination port field is included in another header of another data packet that is also scheduled for transmission.
24. The device according to claim 19, wherein The at least one processor is also configured to determine that the data packet complies with the QUIC transport protocol when the first plurality of fields matches the second plurality of fields.
Citation Information
Patent Citations
Systems and methods for buffer management
US20180183724A1