WO2017193274A1 - Radio-aware tcp congestion control optimization - Google Patents

Radio-aware tcp congestion control optimization Download PDF

Info

Publication number
WO2017193274A1
WO2017193274A1 PCT/CN2016/081514 CN2016081514W WO2017193274A1 WO 2017193274 A1 WO2017193274 A1 WO 2017193274A1 CN 2016081514 W CN2016081514 W CN 2016081514W WO 2017193274 A1 WO2017193274 A1 WO 2017193274A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
receiver
buffer
base station
transport block
Prior art date
Application number
PCT/CN2016/081514
Other languages
French (fr)
Inventor
Ruiming Zheng
Xipeng Zhu
Huichun LIU
Rulin XING
Jilei Hou
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Priority to PCT/CN2016/081514 priority Critical patent/WO2017193274A1/en
Publication of WO2017193274A1 publication Critical patent/WO2017193274A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0273Traffic management, e.g. flow control or congestion control adapting protocols for flow control or congestion control to wireless environment, e.g. adapting transmission control protocol [TCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0268Traffic management, e.g. flow control or congestion control using specific QoS parameters for wireless networks, e.g. QoS class identifier [QCI] or guaranteed bit rate [GBR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/52Allocation or scheduling criteria for wireless resources based on load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/54Allocation or scheduling criteria for wireless resources based on quality criteria
    • H04W72/542Allocation or scheduling criteria for wireless resources based on quality criteria using measured or perceived quality

Definitions

  • aspects of the present disclosure relate generally to wireless communication networks, and more particularly, to transmission control protocol (TCP) congestion control in a wireless communication network.
  • TCP transmission control protocol
  • Wireless communication networks are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on.
  • These systems may be multiple-access systems capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) .
  • Examples of such multiple-access systems include code-division multiple access (CDMA) systems, time-division multiple access (TDMA) systems, frequency-division multiple access (FDMA) systems, and orthogonal frequency-division multiple access (OFDMA) systems.
  • CDMA code-division multiple access
  • TDMA time-division multiple access
  • FDMA frequency-division multiple access
  • OFDMA orthogonal frequency-division multiple access
  • a wireless multiple-access communication system may include a number of base stations, each simultaneously supporting communication for multiple communication devices, otherwise known as user equipments (UEs) .
  • a base station may communicate with one or more UEs on downlink channels (e.g., for transmissions from a base station to a UE) and uplink channels (e.g., for transmissions from a UE to a base station) .
  • TCP congestion control is based on congestion signals.
  • TCP uses a network congestion-avoidance algorithm that includes various aspects of an additive increase/multiplicative decrease (AIMD) scheme, with other schemes such as slow-start to achieve congestion avoidance.
  • AIMD additive increase/multiplicative decrease
  • the TCP congestion-avoidance algorithm is the primary basis for congestion control in the Internet.
  • TCP uses a multi-faceted congestion-control strategy. Congestion collapse generally occurs at "choke points" in the network, where incoming traffic exceeds outgoing bandwidth.
  • TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end.
  • the congestion window is one of the factors that determines the number of bytes that can be outstanding at any time.
  • the congestion window is maintained by the sender, and it is calculated by estimating the congestion between the transmitting device and the receiving device based on packet loss (e.g., failure to receive an acknowledgement for transmitted packet) .
  • packet loss on a wireless link may also be caused by random interference, instead of congestion.
  • long TCP delay may be caused by handover, multi-user scheduling or low layer retransmission.
  • the TCP sender e.g., UE or base station
  • TCP congestion control mechanisms e.g., adjusting congestion window
  • the present disclosure solves the above-identified problem by implementing a close coupled radio-aware TCP congestion control technique.
  • This concept provides a ‘request-grant’ mechanism to replace the original TCP congestion control.
  • Aspects of the present disclosure provide an advantage over the current systems by maintaining L2 buffer at preferred levels that includes adjusting the L2 buffer level to reduce queuing delay and minimize the L2 buffer empty probability in order to improve TCP throughput.
  • a method and apparatus for wireless communication may include receiving, at a TCP layer, data for transmission to a receiver over a communication link, storing the data in an internet protocol (IP) buffer, and determining a transport block size based on a network scheduling parameter information, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver.
  • the method and apparatus may further include transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.
  • IP internet protocol
  • determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise determining an IP buffer status report associated with the transmitter.
  • the method and apparatus may further include generating an IP buffer status report associated with the transmitter when the transmitter is a UE, and transmitting, from a modem of the UE to the receiver of a base station, the IP buffer status report.
  • determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise receiving, at the modem of the UE, an uplink grant message from the receiver in response to transmission of the IP buffer status report, wherein the uplink grant message may include the transport block size, and transmitting, from the modem of the UE to an IP layer, a data request comprising the transport block size.
  • the method and apparatus may include retrieving, from the IP buffer, an amount of data that corresponds to the transport block size based on the data request.
  • the transmitter may be a base station
  • the method and apparatus may include determining a channel quality indicator (CQI) reported by a user equipment, determining a cell load associated with the base station, determining an internet protocol (IP) buffer status report associated with the base station, and scheduling traffic over the communication link based in part on one or more of the CQI, the cell load, or the IP buffer status report.
  • CQI channel quality indicator
  • IP internet protocol
  • the one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims.
  • the following description and the annexed drawings set forth in detail certain illustrative features of the one or more aspects. These features are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed, and this description is intended to include all such aspects and their equivalents.
  • FIG. 1 is a schematic diagram of a wireless communication network in accordance with an exemplary embodiment of the present disclosure
  • FIG. 2 is a schematic diagram of the TCP layers in accordance with an exemplary embodiment of the present disclosure
  • FIG. 3 is an example of TCP congestion control diagram in accordance with an exemplary embodiment of the present disclosure
  • FIG. 4 is a schematic diagram of an L2 buffer in accordance with an exemplary embodiment of the present disclosure.
  • FIG. 5 illustrates a call flow diagram between the UE and the base station for the proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure
  • FIG. 6 illustrates a call flow diagram between UE and base station for the proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure
  • FIG. 7 is a flowchart of an example method of a proposal for close coupled radio-aware TCP congestion control in accordance with aspects of the present disclosure
  • FIG. 8 is a schematic diagram of an aspect of an implementation of various components of the UE configured for communicating with the network entity, such as the base station in accordance with various aspects of the present disclosure.
  • FIG. 9 is a schematic diagram of an aspect of an implementation of various components of the base station configured for communication with a user equipment in accordance with various aspects of the present disclosure.
  • component as used herein may be one of the parts that make up a system, may be hardware, firmware, and/or software stored on a computer-readable medium, and may be divided into other components.
  • TCP congestion control is based on congestion signals.
  • TCP uses a network congestion-avoidance algorithm that includes various aspects of an AIMD scheme, with other schemes such as slow-start to achieve congestion avoidance.
  • the TCP congestion-avoidance algorithm is the primary basis for congestion control in the Internet.
  • TCP uses a multi-faceted congestion-control strategy. For each connection, TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end.
  • the congestion window is maintained by the sender, and it is calculated by estimating the congestion between the transmitting device and the receiving device based on packet loss (e.g., failure to receive an acknowledgement for transmitted packet) .
  • packet loss on a wireless link may also be caused by random interference, instead of congestion.
  • long TCP delay may be caused by handover, multi-user scheduling or low layer retransmission.
  • the TCP sender e.g., UE or base station
  • TCP congestion control mechanisms e.g., adjusting congestion window
  • the existing TCP congestion control is replaced with a request/grant mechanism.
  • the TCP to IP delivery does not utilize traditional TCP congestion control. Instead, the TCP layer sends data to the IP layer as the data becomes available.
  • the buffer status information is provided to the network that determines a transport block size based on scheduling parameter information to control traffic on the communication link.
  • the base station may determine scheduling parameters based on one or more of buffer status reports from the UE, channel status (measured from sounding reference signal (SRS) ) , or cell load (e.g., other UE’s traffic and channel status) .
  • SRS sounding reference signal
  • the modem of the transmitting device may utilize the transport block size information to retrieve the correct amount of IP packets that conform to the transport block size from the IP buffer for transmission over the communication link. Additional features of the present aspects are described in more detail below with respect to FIGS. 1-9.
  • CDMA Code Division Multiple Access
  • UTRA Universal Terrestrial Radio Access
  • CDMA2000 covers IS-2000, IS-95, and IS-856 standards.
  • IS-2000 Releases 0 and A are commonly referred to as CDMA2000 1X, 1X, etc.
  • IS-856 (TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc.
  • UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA.
  • a TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) .
  • GSM Global System for Mobile Communications
  • An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , IEEE 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDM TM , etc.
  • UMB Ultra Mobile Broadband
  • E-UTRA Evolved UTRA
  • Wi-Fi IEEE 802.11
  • WiMAX IEEE 802.16
  • IEEE 802.20 Flash-OFDM TM
  • UTRA and E-UTRA are part of Universal Mobile Telecommunication System (UMTS) .
  • 3GPP Long Term Evolution (LTE) and LTE-Advanced (LTE-A) are new releases of UMTS that use E-UTRA.
  • UTRA, E-UTRA, UMTS, LTE, LTE-A, and GSM are described in documents from an organization named “3rd Generation Partnership Project” (3GPP) .
  • CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) .
  • the techniques described herein may be used for the systems and radio technologies mentioned above as well as other systems and radio technologies, including cellular (e.g., LTE) communications over a shared radio frequency spectrum band.
  • LTE Long Term Evolution
  • an example wireless communication network 100 includes at least one UE 110 having a TCP congestion control component 140 for implementing various aspects of the present disclosure (e.g., methods 500, 600, and 902) .
  • the base station 105 may include a traffic scheduling component 145 that includes transport block component 148 for identifying the transport block size based on various aspects of the present disclosure discussed below.
  • the wireless communication network 100 may include one or more base stations 105, one or more UEs 110, and a core network 115.
  • the core network 115 may provide user authentication, access authorization, tracking, internet protocol (IP) connectivity, and other access, routing, or mobility functions.
  • IP internet protocol
  • the base stations 105 may interface with the core network 115 through backhaul links 120 (e.g., S1, etc. ) .
  • the base stations 105 may perform radio configuration and scheduling for communication with the UEs 110, or may operate under the control of a base station controller (not shown) .
  • the base stations 105 may communicate, either directly or indirectly (e.g., through core network 115) , with one another over backhaul links 125 (e.g., X1, etc. ) , which may be wired or wireless communication links.
  • backhaul links 125 e.g., X1, etc.
  • the base stations 105 may wirelessly communicate with the UEs 110 via one or more base station antennas. Each of the base stations 105 may provide communication coverage for a respective geographic coverage area 130.
  • base stations 105 may be referred to as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, eNodeB (eNB) , Home NodeB, a Home eNodeB, a relay, or some other suitable terminology.
  • the geographic coverage area 130 for a base station 105 may be divided into sectors or cells making up only a portion of the coverage area (not shown) .
  • the wireless communication network 100 may include base stations 105 of different types (e.g., macro base stations or small cell base stations, described below) . Additionally, the plurality of base stations 105 may operate according to different ones of a plurality of communication technologies (e.g., 5G, 4G/LTE, 3G, Wi-Fi, Bluetooth, etc. ) , and thus there may be overlapping geographic coverage areas 130 for different communication technologies.
  • a plurality of communication technologies e.g., 5G, 4G/LTE, 3G, Wi-Fi, Bluetooth, etc.
  • the wireless communication network 100 may be or include a Long Term Evolution (LTE) or LTE-Advanced (LTE-A) technology network.
  • the wireless communication network 100 may also be a next generation technology network, such as a 5G wireless communication network.
  • LTE/LTE-A networks the term evolved node B (eNB) may be generally used to describe the base stations 105, while the term UE may be generally used to describe the UEs 110.
  • the wireless communication network 100 may be a heterogeneous LTE/LTE-A network in which different types of eNBs provide coverage for various geographical regions. For example, each eNB or base station 105 may provide communication coverage for a macro cell, a small cell, or other types of cell.
  • cell is a 3GPP term that can be used to describe a base station, a carrier or component carrier associated with a base station, or a coverage area (e.g., sector, etc. ) of a carrier or base station, depending on context.
  • a macro cell may generally cover a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by the UEs 110 with service subscriptions with the network provider.
  • a small cell may include a relative lower transmit-powered base station, as compared with a macro cell, that may operate in the same or different frequency bands (e.g., licensed, unlicensed, etc. ) as macro cells.
  • Small cells may include pico cells, femto cells, and micro cells according to various examples.
  • a pico cell for example, may cover a small geographic area and may allow unrestricted access by the UEs 110 with service subscriptions with the network provider.
  • a femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access and/or unrestricted access by the UEs 110 having an association with the femto cell (e.g., in the restricted access case, the UEs 110 in a closed subscriber group (CSG) of the base station 105, which may include the UEs 110 for users in the home, and the like) .
  • An eNB for a macro cell may be referred to as a macro eNB.
  • An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB.
  • An eNB may support one or multiple (e.g., two, three, four, and the like) cells (e.g., component carriers) .
  • the communication networks may be packet-based networks that operate according to a layered protocol stack and data in the user plane may be based on the IP.
  • a radio link control (RLC) layer may perform packet segmentation and reassembly to communicate over logical channels.
  • a MAC layer may perform priority handling and multiplexing of logical channels into transport channels.
  • the MAC layer may also use HARQ to provide retransmission at the MAC layer to improve link efficiency.
  • the radio resource control (RRC) protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 110 and the base stations 105.
  • the RRC protocol layer may also be used for core network 115 support of radio bearers for the user plane data.
  • the transport channels may be mapped to physical channels.
  • the UEs 110 may be dispersed throughout the wireless communication network 100, and each UE 110 may be stationary or mobile.
  • a UE 110 may also include or be referred to by those skilled in the art as a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communications device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology.
  • a UE 110 may be a cellular phone, a personal digital assistant (PDA) , a wireless modem, a wireless communication device, a handheld device, a tablet computer, a laptop computer, a cordless phone, a wireless local loop (WLL) station, an entertainment device, a vehicular component, or any device capable of communicating in wireless communication network 100.
  • a UE 110 may be Internet of Things (IoT) and/or machine-to-machine (M2M) type of device, e.g., a low power, low data rate (relative to a wireless phone, for example) type of device, that may in some aspects communicate infrequently with wireless communication network 100 or other UEs.
  • IoT Internet of Things
  • M2M machine-to-machine
  • a UE 110 may be able to communicate with various types of base stations 105 and network equipment including macro eNBs, small cell eNBs, relay base stations, and the like.
  • a UE 110 may be configured to establish one or more wireless communication links 135 with one or more base stations 105.
  • the wireless communication links 135 shown in wireless communication network 100 may carry UL transmissions from a UE 110 to a base station 105, or downlink (DL) transmissions, from a base station 105 to a UE 110.
  • the downlink transmissions may also be called forward link transmissions while the uplink transmissions may also be called reverse link transmissions.
  • Each wireless communication link 135 may include one or more carriers, where each carrier may be a signal made up of multiple sub-carriers (e.g., waveform signals of different frequencies) modulated according to the various radio technologies described above.
  • Each modulated signal may be sent on a different sub-carrier and may carry control information (e.g., reference signals, control channels, etc. ) , overhead information, user data, etc.
  • the communication links 135 may transmit bidirectional communications using frequency division duplex (FDD) (e.g., using paired spectrum resources) or time division duplex (TDD) operation (e.g., using unpaired spectrum resources) .
  • FDD frequency division duplex
  • TDD time division duplex
  • Frame structures may be defined for FDD (e.g., frame structure type 1) and TDD (e.g., frame structure type 2) .
  • the communication links 135 may represent one or more broadcast channels.
  • base stations 105 or UEs 110 may include multiple antennas for employing antenna diversity schemes to improve communication quality and reliability between base stations 105 and UEs 110. Additionally or alternatively, base stations 105 or UEs 110 may employ multiple input multiple output (MIMO) techniques that may take advantage of multi-path environments to transmit multiple spatial layers carrying the same or different coded data.
  • MIMO multiple input multiple output
  • the wireless communication network 100 may support operation on multiple cells or carriers, a feature which may be referred to as carrier aggregation (CA) or multi-carrier operation.
  • a carrier may also be referred to as a component carrier (CC) , a layer, a channel, etc.
  • CC component carrier
  • the terms “carrier, ” “component carrier, ” “cell, ” and “channel” may be used interchangeably herein.
  • a UE 110 may be configured with multiple downlink CCs and one or more uplink CCs for carrier aggregation.
  • Carrier aggregation may be used with both FDD and TDD component carriers.
  • the receiver controls sender’s sending speed using a receiver window (rwnd) .
  • the receiver window may be sent by a TCP receiver to the sender in TCP ACK.
  • the receiver determines the receiver window based on the available receiver buffer.
  • the congestion control (vertical) role may be controlled by TCP buffer.
  • the congestion window may be determined by various congestion control algorithms (e.g. Reno, Westwood) .
  • data delivery and the size of TCP data to delivery to L3/L2 is determined by transmission window (twnd) .
  • the transmission window may be calculated based on the following expression:
  • TCP congestion control As noted above, for each connection, TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end. In some examples, this may be analogous to TCP's sliding window used for flow control. In some aspects, TCP may use a mechanism called slow start to increase the congestion window after a connection is initialized and after a timeout.
  • Slow-start begins initially with a congestion window Size (cwnd) of 1, 2 or 10.
  • the value of the congestion window may be increased with each acknowledgement (ACK) received, effectively doubling the window size each round trip time.
  • the transmission rate may increase with slow-start algorithm until either a loss is detected, or the receiver's advertised window (rwnd) reaches a limiting factor, or the slow start threshold (ssthresh) is reached. If a loss event occurs, TCP assumes that it is due to network congestion and takes steps to reduce the offered load on the network.
  • the behavior of the transmitting device upon detection of a packet loss depends on the TCP congestion avoidance algorithm that is used. For example, in the example of TCP Tahoe, when a loss occurs, fast retransmit is sent, half of the current CWND is saved as a Slow Start Threshold (SSThresh) and slow start begins again from its initial CWND. Once the CWND reaches the SSThresh, TCP changes to congestion avoidance algorithm where each new ACK increases the CWND by SS + SS /CWND. This results in a linear increase of the CWND.
  • TCP congestion avoidance algorithm For example, in the example of TCP Tahoe, when a loss occurs, fast retransmit is sent, half of the current CWND is saved as a Slow Start Threshold (SSThresh) and slow start begins again from its initial CWND. Once the CWND reaches the SSThresh, TCP changes to congestion avoidance algorithm where each new ACK increases the CWND by SS +
  • an L2 buffer and TCP congestion control is disclosed.
  • the congestion control controls the L2 buffer at an optimal level or preferred level.
  • aspects of the present disclosure minimize the L2 buffer level (to reduce queuing caused delay) and minimize the L2 buffer empty probability to improve TCP throughput.
  • L2 buffer level is impacted by: L2 throughput and incoming packets, i.e. leaky bucket model, L2 throughput fluctuates with radio channel status, cell load, the other UEs’channel status, mobility, etc.
  • the modem identifies the L2 buffer levels and forwards the L2 buffer levels to the TCP sender in order for the TCP sender to update its congestion window accordingly.
  • FIG. 5 illustrates a call flow diagram 700 between the UE 110 and the base station 105 for the proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure.
  • flow diagram 700 may be related to uplink TCP congestion control that allows the UE 110 to control uplink traffic between the base station 105 and the UE 110 based on transport block size information received from the network.
  • the UE 110 and base station 105 may be examples of UE 110 and base station 105 described with reference to FIG. 1. Aspects of the diagram 700 are further described with reference to method 902 in FIG. 9B.
  • the UE may include a TCP layer, an IP layer, and a modem.
  • TCP and IP may be either part of the same component or connected with an ideal link as to minimize or reduce any data flow delay between the two components.
  • the L2 layer requests data from the IP buffer when transmission scheduling information is received. Accordingly, the IP buffer sends data to the L2 layer in accordance with a L2 requested data block size, which is forwarded to the communication link by the UE modem.
  • the TCP layer of the UE may receive application data for transmission to the eNB over the communication link.
  • the TCP layer sends the received application data to the IP layer as the data becomes available. If the IP buffer is unable to accommodate the TCP protocol data units (PDUs) , the TCP layer may wait for a predetermined time period instead of discarding the packet.
  • the status information of the pending data and the data stored in the IP buffer is transmitted to the UE modem which further transmits the status information to the base station 105.
  • the base station utilizes the buffer status report (i.e., the status information of the IP buffer) received from the UE, in conjunction with the channel status measured on the sounding reference signal (SRS) , and cell load (e.g., other UEs traffic and channel status) to determine scheduling parameter information.
  • the scheduling parameter information may be used by the base station to calculate a transport block size (TBS) that identifies a size of data block that can be transferred over the communication link from the UE to the base station 105.
  • TBS transport block size
  • the base station 105 may communication the TBS to the UE 110 in an uplink grant message.
  • the UE modem may issue a data request to the IP layer to determine the amount of data identified by the TBS in the uplink grant. Accordingly, the IP layer may forward the requested amount of data packets to the modem, which may transmit the data over the communication link to the base station 105.
  • FIG. 6 illustrates a call flow diagram 800 between UE 110 and base station 105 for the second proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure.
  • flow diagram 800 may be related to downlink TCP congestion control by allowing the network to control downlink traffic between the base station 105 and the UE 110 based on network scheduling information.
  • the UE 110 and base station 105 may be examples of UE 110 and base station 105 described with reference to FIG. 1.
  • Aspects of the flow diagram 800 are also described with reference to the method 902 in FIG. 7.
  • the flow diagram 800 illustrates the base station 105 having a TCP layer, an IP layer and an L2 layer.
  • the base station 105 may be in communication with the UE 110.
  • the TCP layer of the base station 105 may receive application data for transmission to the UE 110 over the communication link.
  • the TCP layer may forward the received data to the IP buffer of IP layer associated with the base station 105.
  • the base station 105 may generate a scheduling request based on data in the IP buffer and the pending data scheduled for transmission.
  • the scheduling request may be based on the CQI/CSI reported by one or more UEs 110, IP buffer level, including the pending data, and cell load (e.g., other UE’s traffic and channel status) .
  • the data request may be sent to the TCP/IP with some advance so that data may be ready on the lower layer earlier and may be sent out shortly after the scheduling signal is transmitted (e.g., PDCCH) .
  • the L2 layer may transmit a data request to the IP layer with TBS information that identifies the size of the data block that can be transferred over the communication link from the base station 105 to the UE 110. Accordingly, the IP layer forwards the requested amount of IP packets conforming to the size identified in the TBS to the L2 layer, where the base station modem transmits the data on the downlink channel to the UE 110.
  • throughput may be improved with near 100%link utilization, because lower layer transmission capability is fully utilized. Additionally, significant delay reduction due to no L2 buffering, no L2/L3 buffer overflow caused packet loss and retransmission, and taken high layer pending data into consideration in scheduling.
  • FIG. 7 is a flowchart of an example method 902 of a second proposal for close coupled radio-aware TCP congestion control.
  • the method 902 may be performed using an apparatus (e.g., the UE 110 or the base station 105, for example) .
  • an apparatus e.g., the UE 110 or the base station 105, for example
  • the method 902 is described below with respect to the elements of the UE 110 or base station 105, other components may be used to implement one or more of the steps described herein.
  • the method may include receiving, at a transmission control protocol (TCP) layer, data for transmission to a receiver over a communication link.
  • receiving the data at the TCP layer may include receiving application data from a higher layer (e.g., application layer in UE 110 or eNB 105) for transmission over the communication link to another device (e.g., another UE or eNB) .
  • Aspects of block 925 may be performed by Application (s) 275 described with reference to FIG. 8 when the method 902 is performed by UE 110.
  • aspects of block 930 may be performed by application (s) 375 described with reference to FIG. 9 when the method 902 is performed by base station 105.
  • the method may include storing the data in an internet protocol (IP) buffer.
  • IP internet protocol
  • the TCP layer may send the received data to the IP layer as the data becomes available (e.g., without delay or minimum delay) .
  • the TCP layer may wait a predetermined time period prior to forwarding the data to the IP buffer.
  • the TCP layer may continuously monitor the status of the IP buffer.
  • the status of the pending data and the data in the IP buffer may be indicated to the lower layer for scheduling decision generation.
  • Aspects of block 930 may be performed by TCP congestion control component 140 described with reference to FIG. 8 when the method 902 is performed by UE 110.
  • aspects of block 935 may be performed by traffic scheduling component 145 described with reference to FIG. 9 when the method 902 is performed by base station 105.
  • the method may include determining a transport block size (TBS) based on a network scheduling parameter information, wherein the TBS identifies a size of data block that can be transferred over the communication link to the receiver.
  • TBS transport block size
  • the transport block size determination may be based on the scheduling information received from the base station 105.
  • the status of the pending data in the TCP layer
  • the status of the IP buffer is transmitted from the modem of the UE 105 to the base station 110.
  • the base station 110 makes scheduling decisions based on buffer status reports from the UE 105, channel status measured on sounding reference signal (SRS) , and cell load associated with the base station 105.
  • the base station 105 may generate network scheduling parameter information that includes the TBS that identifies a size of data block that may be transferred over the communication link by the UE 105 to the base station 110.
  • the base station 105 may communicate the identified TBS information to the UE 105 in an uplink grant such that the modem 314 of the UE 110 may request data from the UE IP layer in accordance with the TBS identified by the base station 105.
  • the IP layer of the UE 105 may forward amount of data that corresponds with the transport block size to the modem 314 of the UE to be transmitted over the communication link.
  • the base station 105 may similarly determine the network scheduling parameter information based on the CQI/CSI reported by one or more UEs 105 and the cell load in order to calculate the TBS. The only exception would be that the base station 105 may consider the IP buffer level associated with the base station (e.g., eNB IP buffer -instead of the UE IP buffer level) in its determination.
  • Aspects of block 935 may be performed by the transport block size component 146 described with reference to FIG. 8 for the UE 110 when the method 902 is executed by the UE 110.
  • aspects of block 940 may be performed by transport block component 148 described with reference to FIG. 9 when the method 902 is executed by the base station 110.
  • the method may include transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.
  • the transmitter may be a UE 110 or a base station 105.
  • the IP layer of either UE 110 or base station 105 sends data to L2 based on modem requested TBS and forwards the data over the communication link to another UE 110 or the base station 105.
  • aspects of block 945 may be performed by transceiver 302 described with reference to FIGs. 8 and 9.
  • FIGs 8 and 9 describe hardware components and subcomponents of the UE 110 and base station 105 for implementing one or more methods (e.g., methods 700, 800, and 902) described herein in accordance with various aspects of the present disclosure.
  • UE 110 may include a variety of components, some of which have already been described above, but including components such as one or more processors 312 and memory 316 and transceiver 302 in communication via one or more buses 344, which may operate in conjunction with TCP congestion control component 140 to enable one or more of the functions described herein related to including one or more methods of the present disclosure.
  • the one or more processors 312, modem 314, memory 316, transceiver 302, RF front end 288 and one or more antennas 286, may be configured to support voice and/or data calls (simultaneously or non-simultaneously) in one or more radio access technologies.
  • the one or more processors 312 can include a modem 314 that uses one or more modem processors.
  • the various functions related to chirp signaling component 140 may be included in modem 314 and/or processors 312 and, in an aspect, can be executed by a single processor, while in other aspects, different ones of the functions may be executed by a combination of two or more different processors.
  • the one or more processors 312 may include any one or any combination of a modem processor, or a baseband processor, or a digital signal processor, or a transmit processor, or a receiver processor, or a transceiver processor associated with transceiver 302. In other aspects, some of the features of the one or more processors 312 and/or modem 314 associated with TCP congestion control component 140 may be performed by transceiver 302.
  • the TCP congestion control component 140 and its subcomponents may be configured to receive, at a TCP layer, data for transmission to a receiver over a communication link, and store the data in an IP buffer.
  • the TCP congestion control component may further determine a transport block size based on a network scheduling parameter, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver.
  • determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise determining an IP buffer status report associated with the transmitter.
  • the TCP congestion control component 140 and its subcomponents may further be configured to generating an IP buffer status report associated with the transmitter and transmitting, from a modem of the UE to the receiver of a base station, the IP buffer status report.
  • determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may include receiving, at the modem of the UE, an uplink grant message from the receiver in response to transmission of the IP buffer status report.
  • the uplink grant message may comprise the transport block size.
  • the modem of the UE may transmit to an IP layer, a data request comprising the transport block size, and retrieve, from the IP buffer, an amount of data that corresponds to the transport block size based on the data request.
  • memory 316 may be configured to store data used herein and/or local versions of applications or TCP congestion control component 140 and/or one or more of its subcomponents being executed by at least one processor 312.
  • Memory 316 can include any type of computer-readable medium usable by a computer or at least one processor 312, such as random access memory (RAM) , read only memory (ROM) , tapes, magnetic discs, optical discs, volatile memory, non-volatile memory, and any combination thereof.
  • RAM random access memory
  • ROM read only memory
  • tapes such as magnetic discs, optical discs, volatile memory, non-volatile memory, and any combination thereof.
  • memory 316 may be a non-transitory computer-readable storage medium that stores one or more computer-executable codes defining chirp signaling component 140 and/or one or more of its subcomponents, and/or data associated therewith, when UE 110 is operating at least one processor 312 to execute chirp signaling component 140 and/or one or more of its subcomponents.
  • Transceiver 302 may include at least one receiver 306 and at least one transmitter 308.
  • Receiver 306 may include hardware, firmware, and/or software code executable by a processor for receiving data, the code comprising instructions and being stored in a memory (e.g., computer-readable medium) .
  • Receiver 306 may be, for example, a radio frequency (RF) receiver.
  • RF radio frequency
  • receiver 306 may receive signals transmitted by at least one base station 105. Additionally, receiver 306 may process such received signals, and also may obtain measurements of the signals, such as, but not limited to, Ec/Io, SNR, RSRP, RSSI, etc.
  • Transmitter 308 may include hardware, firmware, and/or software code executable by a processor for transmitting data, the code comprising instructions and being stored in a memory (e.g., computer-readable medium) .
  • a suitable example of transmitter 308 may including, but is not limited to, an RF transmitter.
  • UE 110 may include RF front end 288, which may operate in communication with one or more antennas 286 and transceiver 302 for receiving and transmitting radio transmissions, for example, wireless communications transmitted by at least one base station 105 or wireless transmissions transmitted by UE 110.
  • RF front end 288 may be connected to one or more antennas 286 and can include one or more low-noise amplifiers (LNAs) 290, one or more switches 292, 294, 300, one or more power amplifiers (PAs) 298, and one or more filters 296 for transmitting and receiving RF signals.
  • LNAs low-noise amplifiers
  • PAs power amplifiers
  • LNA 290 can amplify a received signal at a desired output level.
  • each LNA 290 may have a specified minimum and maximum gain values.
  • RF front end 288 may use one or more switches 292 to select a particular LNA 290 and its specified gain value based on a desired gain value for a particular application.
  • one or more PA (s) 298 may be used by RF front end 288 to amplify a signal for an RF output at a desired output power level.
  • each PA 298 may have specified minimum and maximum gain values.
  • RF front end 288 may use one or more switches 300 to select a particular PA 298 and its specified gain value based on a desired gain value for a particular application.
  • one or more filters 296 can be used by RF front end 288 to filter a received signal to obtain an input RF signal.
  • a respective filter 296 can be used to filter an output from a respective PA 298 to produce an output signal for transmission.
  • each filter 296 can be connected to a specific LNA 290 and/or PA 298.
  • RF front end 288 can use one or more switches 292, 294, 300 to select a transmit or receive path using a specified filter 296, LNA 290, and/or PA 298, based on a configuration as specified by transceiver 302 and/or processor 312.
  • transceiver 302 may be configured to transmit and receive wireless signals through one or more antennas 286 via RF front end 288.
  • transceiver may be tuned to operate at specified frequencies such that UE 110 can communicate with, for example, one or more base stations 105 or one or more cells associated with one or more base stations 105.
  • modem 314 can configure transceiver 302 to operate at a specified frequency and power level based on the UE configuration of the UE 110 and the communication protocol used by modem 314.
  • modem 314 can be a multiband-multimode modem, which can process digital data and communicate with transceiver 302 such that the digital data is sent and received using transceiver 302.
  • modem 314 can be multiband and be configured to support multiple frequency bands for a specific communications protocol.
  • modem 314 can be multimode and be configured to support multiple operating networks and communications protocols.
  • modem 314 can control one or more components of UE 110 (e.g., RF front end 288, transceiver 302) to enable transmission and/or reception of signals from the network based on a specified modem configuration.
  • the modem configuration can be based on the mode of the modem and the frequency band in use.
  • the modem configuration can be based on UE configuration information associated with UE 110 as provided by the network during cell selection and/or cell reselection.
  • base station 105 may include a traffic scheduling component 145 configured to perform the methods described in the present disclosure.
  • the traffic scheduling component 145 and more particularly the transport block component 148 may be configured to determine a transport block size that identifies a size of data block that can be transferred over the communication link to the receiver based on a scheduling parameter information.
  • the transport block component 148 may consider the CQI/CSI reported by one or more UEs, IP buffer level (e.g., UE IP buffer level for uplink transmission and/or eNB IP buffer level for downlink transmission) , and cell load (e.g., other UEs traffic and channel status) to determine scheduling parameter information.
  • the scheduling parameter information may include transport block size that identifies a size of data block that can be transferred over the communication link to the receive.
  • the traffic scheduling component 145 may comprise determining a CQI reported by a UE, determining a cell load associated with the base station, determining an IP buffer status report associated with the base station, and scheduling traffic over the communication link based in part on one or more of the CQI, the cell load, or the IP buffer status report.
  • the modem 314 requests, from the IP layer, to forward the amount of data that corresponds to the transport block size which is transmitted over the communication link.
  • the base station may further include some components similar to those described above with respect to UE 110, such as antennas 286, RF front end 288, LNAs 290, switches 292, 294, and 300, filters 296, PAs 298, transceiver 302 including receiver 306 and transmitter 308, processors 312, modem 314, and memory 316. It should be noted that these components may operate in a similar manner as described above, however, these components on base station 105 operate to receive and process wireless RF signals from UE 110 (and/or other base stations 105) and to transmit wireless RF signals to UE 110 (and/or other base stations 105) . For the sake of brevity, detailed description of each of such components is not repeated with reference to FIG. 9.
  • Information and signals may be represented using any of a variety of different technologies and techniques.
  • data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, computer-executable code or instructions stored on a computer-readable medium, or any combination thereof.
  • a specially-programmed device such as but not limited to a processor, a digital signal processor (DSP) , an ASIC, a FPGA or other programmable logic device, a discrete gate or transistor logic, a discrete hardware component, or any combination thereof designed to perform the functions described herein.
  • DSP digital signal processor
  • a specially-programmed processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine.
  • a specially-programmed processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
  • the functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a non-transitory computer-readable medium. Other examples and implementations are within the scope and spirit of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a specially programmed processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.
  • Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
  • a storage medium may be any available medium that can be accessed by a general purpose or special purpose computer.
  • computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor.
  • any connection is properly termed a computer-readable medium.
  • Disk and disc include compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.

Abstract

Method and apparatus for wireless communication are disclosed. The method comprises: receiving, at a transmission control protocol (TCP) layer, data for transmission to a receiver over a communication link; storing the data in an internet protocol (IP) buffer; determining a transport block size based on a network scheduling parameter information, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver; and transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.

Description

Radio-Aware TCP Congestion Control Optimization BACKGROUND
Aspects of the present disclosure relate generally to wireless communication networks, and more particularly, to transmission control protocol (TCP) congestion control in a wireless communication network.
Wireless communication networks are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be multiple-access systems capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) . Examples of such multiple-access systems include code-division multiple access (CDMA) systems, time-division multiple access (TDMA) systems, frequency-division multiple access (FDMA) systems, and orthogonal frequency-division multiple access (OFDMA) systems.
By way of example, a wireless multiple-access communication system may include a number of base stations, each simultaneously supporting communication for multiple communication devices, otherwise known as user equipments (UEs) . A base station may communicate with one or more UEs on downlink channels (e.g., for transmissions from a base station to a UE) and uplink channels (e.g., for transmissions from a UE to a base station) .
In a wireless multiple-access communication system, transmission control protocol (TCP) congestion control is based on congestion signals. Typically, TCP uses a network congestion-avoidance algorithm that includes various aspects of an additive increase/multiplicative decrease (AIMD) scheme, with other schemes such as slow-start to achieve congestion avoidance. In some aspects, the TCP congestion-avoidance algorithm is the primary basis for congestion control in the Internet. To avoid congestive collapse (e.g., a condition in which congestion prevents or limits useful communication) , TCP uses a multi-faceted congestion-control strategy. Congestion collapse generally occurs at "choke points" in the network, where incoming traffic exceeds outgoing bandwidth. For each connection, TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end. Thus, the congestion window is one of the factors that determines the number of bytes that can be outstanding at any time. The congestion window is maintained by the sender, and it is  calculated by estimating the congestion between the transmitting device and the receiving device based on packet loss (e.g., failure to receive an acknowledgement for transmitted packet) . However, packet loss on a wireless link may also be caused by random interference, instead of congestion. For example, long TCP delay may be caused by handover, multi-user scheduling or low layer retransmission. In such situations, although there may not be congestion between the transmitting device and the receiving device, the TCP sender (e.g., UE or base station) may nonetheless unnecessarily implement TCP congestion control mechanisms (e.g., adjusting congestion window) . Thus, inaccurate congestion signals may lead to inaccurate TCP congestion control or lead to low TCP throughput.
SUMMARY
The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects, and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
The present disclosure solves the above-identified problem by implementing a close coupled radio-aware TCP congestion control technique. This concept provides a ‘request-grant’ mechanism to replace the original TCP congestion control. Aspects of the present disclosure provide an advantage over the current systems by maintaining L2 buffer at preferred levels that includes adjusting the L2 buffer level to reduce queuing delay and minimize the L2 buffer empty probability in order to improve TCP throughput.
In accordance with aspects of the present disclosure, a method and apparatus for wireless communication is disclosed. The method and apparatus may include receiving, at a TCP layer, data for transmission to a receiver over a communication link, storing the data in an internet protocol (IP) buffer, and determining a transport block size based on a network scheduling parameter information, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver. The method and apparatus may further include transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.
In some aspects, determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise determining an IP buffer status report associated with the transmitter. In some examples, the method and apparatus may further include generating an IP buffer status report associated with the transmitter when the transmitter is a UE, and transmitting, from a modem of the UE to the receiver of a base station, the IP buffer status report. In further examples, determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise receiving, at the modem of the UE, an uplink grant message from the receiver in response to transmission of the IP buffer status report, wherein the uplink grant message may include the transport block size, and transmitting, from the modem of the UE to an IP layer, a data request comprising the transport block size. In further aspects, the method and apparatus may include retrieving, from the IP buffer, an amount of data that corresponds to the transport block size based on the data request.
In yet further examples, the transmitter may be a base station, and the method and apparatus may include determining a channel quality indicator (CQI) reported by a user equipment, determining a cell load associated with the base station, determining an internet protocol (IP) buffer status report associated with the base station, and scheduling traffic over the communication link based in part on one or more of the CQI, the cell load, or the IP buffer status report.
To the accomplishment of the foregoing and related ends, the one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative features of the one or more aspects. These features are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed, and this description is intended to include all such aspects and their equivalents.
BRIEF DESCRIPTION OF THE DRAWINGS
The disclosed aspects will hereinafter be described in conjunction with the appended drawings, provided to illustrate and not to limit the disclosed aspects, wherein like designations denote like elements, and in which:
FIG. 1 is a schematic diagram of a wireless communication network in accordance with an exemplary embodiment of the present disclosure;
FIG. 2 is a schematic diagram of the TCP layers in accordance with an exemplary embodiment of the present disclosure;
FIG. 3 is an example of TCP congestion control diagram in accordance with an exemplary embodiment of the present disclosure;
FIG. 4 is a schematic diagram of an L2 buffer in accordance with an exemplary embodiment of the present disclosure;
FIG. 5 illustrates a call flow diagram between the UE and the base station for the proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure;
FIG. 6 illustrates a call flow diagram between UE and base station for the proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure;
FIG. 7 is a flowchart of an example method of a proposal for close coupled radio-aware TCP congestion control in accordance with aspects of the present disclosure;
FIG. 8 is a schematic diagram of an aspect of an implementation of various components of the UE configured for communicating with the network entity, such as the base station in accordance with various aspects of the present disclosure; and
FIG. 9 is a schematic diagram of an aspect of an implementation of various components of the base station configured for communication with a user equipment in accordance with various aspects of the present disclosure.
DETAILED DESCRIPTION
Various aspects are now described with reference to the drawings. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more aspects. It may be evident, however, that such aspect (s) may be practiced without these specific details. Additionally, the term “component” as used herein may be one of the parts that make up a system, may be hardware, firmware, and/or software stored on a computer-readable medium, and may be divided into other components.
As noted above, in a wireless multiple-access communication system, In a wireless multiple-access communication system, TCP congestion control is based on  congestion signals. Typically, TCP uses a network congestion-avoidance algorithm that includes various aspects of an AIMD scheme, with other schemes such as slow-start to achieve congestion avoidance. In some aspects, the TCP congestion-avoidance algorithm is the primary basis for congestion control in the Internet. To avoid congestive collapse, TCP uses a multi-faceted congestion-control strategy. For each connection, TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end. The congestion window is maintained by the sender, and it is calculated by estimating the congestion between the transmitting device and the receiving device based on packet loss (e.g., failure to receive an acknowledgement for transmitted packet) . However, packet loss on a wireless link may also be caused by random interference, instead of congestion. For example, long TCP delay may be caused by handover, multi-user scheduling or low layer retransmission. In such situations, although there may not be congestion between the transmitting device and the receiving device, the TCP sender (e.g., UE or base station) may nonetheless implement TCP congestion control mechanisms (e.g., adjusting congestion window) . Thus, inaccurate congestion signals may lead to inaccurate TCP congestion control or lead to low TCP throughput.
Aspects of the present disclosure solve the above-identified problem. Particularly, in accordance with aspects of the present disclosure, the existing TCP congestion control is replaced with a request/grant mechanism. In some examples, the TCP to IP delivery does not utilize traditional TCP congestion control. Instead, the TCP layer sends data to the IP layer as the data becomes available. The buffer status information is provided to the network that determines a transport block size based on scheduling parameter information to control traffic on the communication link. In some aspects, the base station may determine scheduling parameters based on one or more of buffer status reports from the UE, channel status (measured from sounding reference signal (SRS) ) , or cell load (e.g., other UE’s traffic and channel status) . Accordingly, the modem of the transmitting device may utilize the transport block size information to retrieve the correct amount of IP packets that conform to the transport block size from the IP buffer for transmission over the communication link. Additional features of the present aspects are described in more detail below with respect to FIGS. 1-9.
It should be noted that the techniques described herein may be used for various wireless communication networks such as CDMA, TDMA, FDMA, OFDMA, SC- FDMA, and other systems. The terms “system” and “network” are often used interchangeably. A CDMA system may implement a radio technology such as CDMA2000, Universal Terrestrial Radio Access (UTRA) , etc. CDMA2000 covers IS-2000, IS-95, and IS-856 standards. IS-2000 Releases 0 and A are commonly referred to as CDMA2000 1X, 1X, etc. IS-856 (TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc. UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA. A TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) . An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , IEEE 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDMTM, etc. UTRA and E-UTRA are part of Universal Mobile Telecommunication System (UMTS) . 3GPP Long Term Evolution (LTE) and LTE-Advanced (LTE-A) are new releases of UMTS that use E-UTRA. UTRA, E-UTRA, UMTS, LTE, LTE-A, and GSM are described in documents from an organization named “3rd Generation Partnership Project” (3GPP) . CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) . The techniques described herein may be used for the systems and radio technologies mentioned above as well as other systems and radio technologies, including cellular (e.g., LTE) communications over a shared radio frequency spectrum band. The description below, however, describes an LTE/LTE-A system for purposes of example, and LTE terminology is used in much of the description below, although the techniques are applicable beyond LTE/LTE-A applications (e.g., to 5G networks or other next generation communication systems) .
The following description provides examples, and is not limiting of the scope, applicability, or examples set forth in the claims. Changes may be made in the function and arrangement of elements discussed without departing from the scope of the disclosure. Various examples may omit, substitute, or add various procedures or components as appropriate. For instance, the methods described may be performed in an order different from that described, and various steps may be added, omitted, or combined. Also, features described with respect to some examples may be combined in other examples.
Referring to FIG. 1, in accordance with various aspects of the present disclosure, an example wireless communication network 100 includes at least one UE 110 having a  TCP congestion control component 140 for implementing various aspects of the present disclosure (e.g., methods 500, 600, and 902) . Similarly, the base station 105 may include a traffic scheduling component 145 that includes transport block component 148 for identifying the transport block size based on various aspects of the present disclosure discussed below.
The wireless communication network 100 may include one or more base stations 105, one or more UEs 110, and a core network 115. The core network 115 may provide user authentication, access authorization, tracking, internet protocol (IP) connectivity, and other access, routing, or mobility functions. The base stations 105 may interface with the core network 115 through backhaul links 120 (e.g., S1, etc. ) . The base stations 105 may perform radio configuration and scheduling for communication with the UEs 110, or may operate under the control of a base station controller (not shown) . In various examples, the base stations 105 may communicate, either directly or indirectly (e.g., through core network 115) , with one another over backhaul links 125 (e.g., X1, etc. ) , which may be wired or wireless communication links.
The base stations 105 may wirelessly communicate with the UEs 110 via one or more base station antennas. Each of the base stations 105 may provide communication coverage for a respective geographic coverage area 130. In some examples, base stations 105 may be referred to as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, eNodeB (eNB) , Home NodeB, a Home eNodeB, a relay, or some other suitable terminology. The geographic coverage area 130 for a base station 105 may be divided into sectors or cells making up only a portion of the coverage area (not shown) . The wireless communication network 100 may include base stations 105 of different types (e.g., macro base stations or small cell base stations, described below) . Additionally, the plurality of base stations 105 may operate according to different ones of a plurality of communication technologies (e.g., 5G, 4G/LTE, 3G, Wi-Fi, Bluetooth, etc. ) , and thus there may be overlapping geographic coverage areas 130 for different communication technologies.
In some examples, the wireless communication network 100 may be or include a Long Term Evolution (LTE) or LTE-Advanced (LTE-A) technology network. The wireless communication network 100 may also be a next generation technology network, such as a 5G wireless communication network. In LTE/LTE-A networks, the term evolved node B (eNB) may be generally used to describe the base stations 105, while the  term UE may be generally used to describe the UEs 110. The wireless communication network 100 may be a heterogeneous LTE/LTE-A network in which different types of eNBs provide coverage for various geographical regions. For example, each eNB or base station 105 may provide communication coverage for a macro cell, a small cell, or other types of cell. The term “cell” is a 3GPP term that can be used to describe a base station, a carrier or component carrier associated with a base station, or a coverage area (e.g., sector, etc. ) of a carrier or base station, depending on context.
A macro cell may generally cover a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by the UEs 110 with service subscriptions with the network provider.
A small cell may include a relative lower transmit-powered base station, as compared with a macro cell, that may operate in the same or different frequency bands (e.g., licensed, unlicensed, etc. ) as macro cells. Small cells may include pico cells, femto cells, and micro cells according to various examples. A pico cell, for example, may cover a small geographic area and may allow unrestricted access by the UEs 110 with service subscriptions with the network provider. A femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access and/or unrestricted access by the UEs 110 having an association with the femto cell (e.g., in the restricted access case, the UEs 110 in a closed subscriber group (CSG) of the base station 105, which may include the UEs 110 for users in the home, and the like) . An eNB for a macro cell may be referred to as a macro eNB. An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB. An eNB may support one or multiple (e.g., two, three, four, and the like) cells (e.g., component carriers) .
The communication networks that may accommodate some of the various disclosed examples may be packet-based networks that operate according to a layered protocol stack and data in the user plane may be based on the IP. A radio link control (RLC) layer may perform packet segmentation and reassembly to communicate over logical channels. A MAC layer may perform priority handling and multiplexing of logical channels into transport channels. The MAC layer may also use HARQ to provide retransmission at the MAC layer to improve link efficiency. In the control plane, the radio resource control (RRC) protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 110 and the base stations 105. The RRC protocol layer may also be used for core network 115 support of radio bearers for  the user plane data. At the physical (PHY) layer, the transport channels may be mapped to physical channels.
The UEs 110 may be dispersed throughout the wireless communication network 100, and each UE 110 may be stationary or mobile. A UE 110 may also include or be referred to by those skilled in the art as a mobile station, a subscriber station, a mobile unit, a subscriber unit, a wireless unit, a remote unit, a mobile device, a wireless device, a wireless communications device, a remote device, a mobile subscriber station, an access terminal, a mobile terminal, a wireless terminal, a remote terminal, a handset, a user agent, a mobile client, a client, or some other suitable terminology. A UE 110 may be a cellular phone, a personal digital assistant (PDA) , a wireless modem, a wireless communication device, a handheld device, a tablet computer, a laptop computer, a cordless phone, a wireless local loop (WLL) station, an entertainment device, a vehicular component, or any device capable of communicating in wireless communication network 100. Additionally, a UE 110 may be Internet of Things (IoT) and/or machine-to-machine (M2M) type of device, e.g., a low power, low data rate (relative to a wireless phone, for example) type of device, that may in some aspects communicate infrequently with wireless communication network 100 or other UEs. A UE 110 may be able to communicate with various types of base stations 105 and network equipment including macro eNBs, small cell eNBs, relay base stations, and the like.
UE 110 may be configured to establish one or more wireless communication links 135 with one or more base stations 105. The wireless communication links 135 shown in wireless communication network 100 may carry UL transmissions from a UE 110 to a base station 105, or downlink (DL) transmissions, from a base station 105 to a UE 110. The downlink transmissions may also be called forward link transmissions while the uplink transmissions may also be called reverse link transmissions. Each wireless communication link 135 may include one or more carriers, where each carrier may be a signal made up of multiple sub-carriers (e.g., waveform signals of different frequencies) modulated according to the various radio technologies described above. Each modulated signal may be sent on a different sub-carrier and may carry control information (e.g., reference signals, control channels, etc. ) , overhead information, user data, etc. In an aspect, the communication links 135 may transmit bidirectional communications using frequency division duplex (FDD) (e.g., using paired spectrum resources) or time division duplex (TDD) operation (e.g., using unpaired spectrum resources) . Frame structures may  be defined for FDD (e.g., frame structure type 1) and TDD (e.g., frame structure type 2) . Moreover, in some aspects, the communication links 135 may represent one or more broadcast channels.
In some aspects of the wireless communication network 100, base stations 105 or UEs 110 may include multiple antennas for employing antenna diversity schemes to improve communication quality and reliability between base stations 105 and UEs 110. Additionally or alternatively, base stations 105 or UEs 110 may employ multiple input multiple output (MIMO) techniques that may take advantage of multi-path environments to transmit multiple spatial layers carrying the same or different coded data.
The wireless communication network 100 may support operation on multiple cells or carriers, a feature which may be referred to as carrier aggregation (CA) or multi-carrier operation. A carrier may also be referred to as a component carrier (CC) , a layer, a channel, etc. The terms “carrier, ” “component carrier, ” “cell, ” and “channel” may be used interchangeably herein. A UE 110 may be configured with multiple downlink CCs and one or more uplink CCs for carrier aggregation. Carrier aggregation may be used with both FDD and TDD component carriers.
Referring now to FIG. 2, various TCP layers are disclosed. In some examples, for the flow control role, the receiver controls sender’s sending speed using a receiver window (rwnd) . The receiver window may be sent by a TCP receiver to the sender in TCP ACK. The receiver determines the receiver window based on the available receiver buffer.
In some aspects, the congestion control (vertical) role may be controlled by TCP buffer. The congestion window may be determined by various congestion control algorithms (e.g. Reno, Westwood) . In some examples, data delivery and the size of TCP data to delivery to L3/L2 is determined by transmission window (twnd) . In some examples, the transmission window may be calculated based on the following expression:
twnd=min (cwnd, rwnd-TCPSentDataPendingACK, 0)
Referring to FIG. 3, an example of TCP congestion control is shown. As noted above, for each connection, TCP maintains a congestion window, limiting the total number of unacknowledged packets that may be in transit end-to-end. In some examples, this may be analogous to TCP's sliding window used for flow control. In some aspects, TCP may use a mechanism called slow start to increase the congestion window after a connection is initialized and after a timeout.
Slow-start begins initially with a congestion window Size (cwnd) of 1, 2 or 10. The value of the congestion window may be increased with each acknowledgement (ACK) received, effectively doubling the window size each round trip time. Thus, in some aspects, the transmission rate may increase with slow-start algorithm until either a loss is detected, or the receiver's advertised window (rwnd) reaches a limiting factor, or the slow start threshold (ssthresh) is reached. If a loss event occurs, TCP assumes that it is due to network congestion and takes steps to reduce the offered load on the network.
The behavior of the transmitting device upon detection of a packet loss depends on the TCP congestion avoidance algorithm that is used. For example, in the example of TCP Tahoe, when a loss occurs, fast retransmit is sent, half of the current CWND is saved as a Slow Start Threshold (SSThresh) and slow start begins again from its initial CWND. Once the CWND reaches the SSThresh, TCP changes to congestion avoidance algorithm where each new ACK increases the CWND by SS + SS /CWND. This results in a linear increase of the CWND. In the instance that TCP Reno algorithm is implemented, when a loss occurs, a fast retransmit is sent, half of the current CWND is saved as Slow Start Threshold (SSThresh) and as new CWND, thus skipping slow-start and going directly to Congestion Avoidance algorithm.
However, as previously noted, a lack of acknowledgement may be a result of situation other than network congestion. Thus, implementing the congestion avoidance techniques describe above, may result in low throughput. Aspects of the present disclosure resolve this inefficiency as described in figures below.
Referring to FIG. 4, an L2 buffer and TCP congestion control is disclosed. Ideally, the congestion control controls the L2 buffer at an optimal level or preferred level. Aspects of the present disclosure minimize the L2 buffer level (to reduce queuing caused delay) and minimize the L2 buffer empty probability to improve TCP throughput. In some examples, L2 buffer level is impacted by: L2 throughput and incoming packets, i.e. leaky bucket model, L2 throughput fluctuates with radio channel status, cell load, the other UEs’channel status, mobility, etc. In accordance with the first technique of the present disclosure, the modem identifies the L2 buffer levels and forwards the L2 buffer levels to the TCP sender in order for the TCP sender to update its congestion window accordingly.
FIG. 5 illustrates a call flow diagram 700 between the UE 110 and the base station 105 for the proposal of the close coupled radio-aware TCP congestion control in  accordance with various aspects of the present disclosure. Particularly, flow diagram 700 may be related to uplink TCP congestion control that allows the UE 110 to control uplink traffic between the base station 105 and the UE 110 based on transport block size information received from the network. In some examples, the UE 110 and base station 105 may be examples of UE 110 and base station 105 described with reference to FIG. 1. Aspects of the diagram 700 are further described with reference to method 902 in FIG. 9B.
The UE may include a TCP layer, an IP layer, and a modem. Aspects of the proposal of the close coupled radio-aware TCP congestion control replace existing TCP congestion control with a request/grant methodology. In order to achieve optimal or preferred results, the TCP and IP may be either part of the same component or connected with an ideal link as to minimize or reduce any data flow delay between the two components. Thus, in the proposal, the L2 layer requests data from the IP buffer when transmission scheduling information is received. Accordingly, the IP buffer sends data to the L2 layer in accordance with a L2 requested data block size, which is forwarded to the communication link by the UE modem.
As illustrated in flow diagram 700, the TCP layer of the UE may receive application data for transmission to the eNB over the communication link. The TCP layer sends the received application data to the IP layer as the data becomes available. If the IP buffer is unable to accommodate the TCP protocol data units (PDUs) , the TCP layer may wait for a predetermined time period instead of discarding the packet. In accordance with aspects of the present disclosure, the status information of the pending data and the data stored in the IP buffer is transmitted to the UE modem which further transmits the status information to the base station 105. The base station utilizes the buffer status report (i.e., the status information of the IP buffer) received from the UE, in conjunction with the channel status measured on the sounding reference signal (SRS) , and cell load (e.g., other UEs traffic and channel status) to determine scheduling parameter information. The scheduling parameter information may be used by the base station to calculate a transport block size (TBS) that identifies a size of data block that can be transferred over the communication link from the UE to the base station 105.
In some aspects, the base station 105 may communication the TBS to the UE 110 in an uplink grant message. Upon receiving the uplink grant message, the UE modem may issue a data request to the IP layer to determine the amount of data identified by the  TBS in the uplink grant. Accordingly, the IP layer may forward the requested amount of data packets to the modem, which may transmit the data over the communication link to the base station 105.
FIG. 6 illustrates a call flow diagram 800 between UE 110 and base station 105 for the second proposal of the close coupled radio-aware TCP congestion control in accordance with various aspects of the present disclosure. Particularly, flow diagram 800 may be related to downlink TCP congestion control by allowing the network to control downlink traffic between the base station 105 and the UE 110 based on network scheduling information. In some examples, the UE 110 and base station 105 may be examples of UE 110 and base station 105 described with reference to FIG. 1. Aspects of the flow diagram 800 are also described with reference to the method 902 in FIG. 7.
As with FIG. 5, the flow diagram 800 illustrates the base station 105 having a TCP layer, an IP layer and an L2 layer. The base station 105 may be in communication with the UE 110. In some aspects, the TCP layer of the base station 105 may receive application data for transmission to the UE 110 over the communication link. The TCP layer may forward the received data to the IP buffer of IP layer associated with the base station 105. In accordance with aspects of the present disclosure, the base station 105 may generate a scheduling request based on data in the IP buffer and the pending data scheduled for transmission. In some aspects, the scheduling request may be based on the CQI/CSI reported by one or more UEs 110, IP buffer level, including the pending data, and cell load (e.g., other UE’s traffic and channel status) . In some examples, the data request may be sent to the TCP/IP with some advance so that data may be ready on the lower layer earlier and may be sent out shortly after the scheduling signal is transmitted (e.g., PDCCH) .
Once the base station 105 determines the scheduling request, the L2 layer may transmit a data request to the IP layer with TBS information that identifies the size of the data block that can be transferred over the communication link from the base station 105 to the UE 110. Accordingly, the IP layer forwards the requested amount of IP packets conforming to the size identified in the TBS to the L2 layer, where the base station modem transmits the data on the downlink channel to the UE 110.
In accordance with aspects of the second proposal, throughput may be improved with near 100%link utilization, because lower layer transmission capability is fully utilized. Additionally, significant delay reduction due to no L2 buffering, no L2/L3 buffer  overflow caused packet loss and retransmission, and taken high layer pending data into consideration in scheduling.
FIG. 7 is a flowchart of an example method 902 of a second proposal for close coupled radio-aware TCP congestion control. The method 902 may be performed using an apparatus (e.g., the UE 110 or the base station 105, for example) . Although the method 902 is described below with respect to the elements of the UE 110 or base station 105, other components may be used to implement one or more of the steps described herein.
At block 930, the method may include receiving, at a transmission control protocol (TCP) layer, data for transmission to a receiver over a communication link. In some examples, receiving the data at the TCP layer may include receiving application data from a higher layer (e.g., application layer in UE 110 or eNB 105) for transmission over the communication link to another device (e.g., another UE or eNB) . Aspects of block 925 may be performed by Application (s) 275 described with reference to FIG. 8 when the method 902 is performed by UE 110. In contrast, aspects of block 930 may be performed by application (s) 375 described with reference to FIG. 9 when the method 902 is performed by base station 105.
At block 935, the method may include storing the data in an internet protocol (IP) buffer. Particularly, the TCP layer may send the received data to the IP layer as the data becomes available (e.g., without delay or minimum delay) . However, if the IP buffer is unable to accommodate the incoming data (e.g., if the IP buffer is full) , the TCP layer may wait a predetermined time period prior to forwarding the data to the IP buffer. During the predetermine time period, the TCP layer may continuously monitor the status of the IP buffer. In some aspects, the status of the pending data and the data in the IP buffer may be indicated to the lower layer for scheduling decision generation. Aspects of block 930 may be performed by TCP congestion control component 140 described with reference to FIG. 8 when the method 902 is performed by UE 110. In contrast, aspects of block 935 may be performed by traffic scheduling component 145 described with reference to FIG. 9 when the method 902 is performed by base station 105.
At block 940, the method may include determining a transport block size (TBS) based on a network scheduling parameter information, wherein the TBS identifies a size of data block that can be transferred over the communication link to the receiver. In some aspects, the transport block size determination may be based on the scheduling information received from the base station 105. Particularly, as noted above, in an  example of an uplink TCP transmission (where the method 902 is executed on a UE 105) , the status of the pending data (in the TCP layer) and the status of the IP buffer is transmitted from the modem of the UE 105 to the base station 110. In such example, the base station 110 makes scheduling decisions based on buffer status reports from the UE 105, channel status measured on sounding reference signal (SRS) , and cell load associated with the base station 105. Based on the above-identified considerations, the base station 105 may generate network scheduling parameter information that includes the TBS that identifies a size of data block that may be transferred over the communication link by the UE 105 to the base station 110. The base station 105 may communicate the identified TBS information to the UE 105 in an uplink grant such that the modem 314 of the UE 110 may request data from the UE IP layer in accordance with the TBS identified by the base station 105. In response, the IP layer of the UE 105 may forward amount of data that corresponds with the transport block size to the modem 314 of the UE to be transmitted over the communication link.
In the instance that the method 901 is executed on the base station 105 for downlink TCP transmission, the base station 105 may similarly determine the network scheduling parameter information based on the CQI/CSI reported by one or more UEs 105 and the cell load in order to calculate the TBS. The only exception would be that the base station 105 may consider the IP buffer level associated with the base station (e.g., eNB IP buffer -instead of the UE IP buffer level) in its determination. Aspects of block 935 may be performed by the transport block size component 146 described with reference to FIG. 8 for the UE 110 when the method 902 is executed by the UE 110. In contrast, aspects of block 940 may be performed by transport block component 148 described with reference to FIG. 9 when the method 902 is executed by the base station 110.
At block 945, the method may include transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining. As noted above, in some examples, the transmitter may be a UE 110 or a base station 105. Thus, in some aspects, the IP layer of either UE 110 or base station 105 sends data to L2 based on modem requested TBS and forwards the data over the communication link to another UE 110 or the base station 105. Aspects of block 945 may be performed by transceiver 302 described with reference to FIGs. 8 and 9.
FIGs 8 and 9 describe hardware components and subcomponents of the UE 110 and base station 105 for implementing one or more methods (e.g.,  methods  700, 800, and 902) described herein in accordance with various aspects of the present disclosure. For example, referring first to FIG. 8, one example of an implementation of UE 110 may include a variety of components, some of which have already been described above, but including components such as one or more processors 312 and memory 316 and transceiver 302 in communication via one or more buses 344, which may operate in conjunction with TCP congestion control component 140 to enable one or more of the functions described herein related to including one or more methods of the present disclosure. Further, the one or more processors 312, modem 314, memory 316, transceiver 302, RF front end 288 and one or more antennas 286, may be configured to support voice and/or data calls (simultaneously or non-simultaneously) in one or more radio access technologies.
In an aspect, the one or more processors 312 can include a modem 314 that uses one or more modem processors. The various functions related to chirp signaling component 140 may be included in modem 314 and/or processors 312 and, in an aspect, can be executed by a single processor, while in other aspects, different ones of the functions may be executed by a combination of two or more different processors. For example, in an aspect, the one or more processors 312 may include any one or any combination of a modem processor, or a baseband processor, or a digital signal processor, or a transmit processor, or a receiver processor, or a transceiver processor associated with transceiver 302. In other aspects, some of the features of the one or more processors 312 and/or modem 314 associated with TCP congestion control component 140 may be performed by transceiver 302.
In accordance with the proposal identified in the present disclosure, the TCP congestion control component 140 and its subcomponents may be configured to receive, at a TCP layer, data for transmission to a receiver over a communication link, and store the data in an IP buffer. The TCP congestion control component may further determine a transport block size based on a network scheduling parameter, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver. In some aspects, determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may comprise determining an IP buffer status report associated with the transmitter.
The TCP congestion control component 140 and its subcomponents may further be configured to generating an IP buffer status report associated with the transmitter and transmitting, from a modem of the UE to the receiver of a base station, the IP buffer status report. In such instance, determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver may include receiving, at the modem of the UE, an uplink grant message from the receiver in response to transmission of the IP buffer status report. In some example, the uplink grant message may comprise the transport block size. Thereafter, the modem of the UE may transmit to an IP layer, a data request comprising the transport block size, and retrieve, from the IP buffer, an amount of data that corresponds to the transport block size based on the data request.
Also, memory 316 may be configured to store data used herein and/or local versions of applications or TCP congestion control component 140 and/or one or more of its subcomponents being executed by at least one processor 312. Memory 316 can include any type of computer-readable medium usable by a computer or at least one processor 312, such as random access memory (RAM) , read only memory (ROM) , tapes, magnetic discs, optical discs, volatile memory, non-volatile memory, and any combination thereof. In an aspect, for example, memory 316 may be a non-transitory computer-readable storage medium that stores one or more computer-executable codes defining chirp signaling component 140 and/or one or more of its subcomponents, and/or data associated therewith, when UE 110 is operating at least one processor 312 to execute chirp signaling component 140 and/or one or more of its subcomponents.
Transceiver 302 may include at least one receiver 306 and at least one transmitter 308. Receiver 306 may include hardware, firmware, and/or software code executable by a processor for receiving data, the code comprising instructions and being stored in a memory (e.g., computer-readable medium) . Receiver 306 may be, for example, a radio frequency (RF) receiver. In an aspect, receiver 306 may receive signals transmitted by at least one base station 105. Additionally, receiver 306 may process such received signals, and also may obtain measurements of the signals, such as, but not limited to, Ec/Io, SNR, RSRP, RSSI, etc. Transmitter 308 may include hardware, firmware, and/or software code executable by a processor for transmitting data, the code comprising instructions and being stored in a memory (e.g., computer-readable medium) . A suitable example of transmitter 308 may including, but is not limited to, an RF transmitter.
Moreover, in an aspect, UE 110 may include RF front end 288, which may operate in communication with one or more antennas 286 and transceiver 302 for receiving and transmitting radio transmissions, for example, wireless communications transmitted by at least one base station 105 or wireless transmissions transmitted by UE 110. RF front end 288 may be connected to one or more antennas 286 and can include one or more low-noise amplifiers (LNAs) 290, one or  more switches  292, 294, 300, one or more power amplifiers (PAs) 298, and one or more filters 296 for transmitting and receiving RF signals.
In an aspect, LNA 290 can amplify a received signal at a desired output level. In an aspect, each LNA 290 may have a specified minimum and maximum gain values. In an aspect, RF front end 288 may use one or more switches 292 to select a particular LNA 290 and its specified gain value based on a desired gain value for a particular application.
Further, for example, one or more PA (s) 298 may be used by RF front end 288 to amplify a signal for an RF output at a desired output power level. In an aspect, each PA 298 may have specified minimum and maximum gain values. In an aspect, RF front end 288 may use one or more switches 300 to select a particular PA 298 and its specified gain value based on a desired gain value for a particular application.
Also, for example, one or more filters 296 can be used by RF front end 288 to filter a received signal to obtain an input RF signal. Similarly, in an aspect, for example, a respective filter 296 can be used to filter an output from a respective PA 298 to produce an output signal for transmission. In an aspect, each filter 296 can be connected to a specific LNA 290 and/or PA 298. In an aspect, RF front end 288 can use one or  more switches  292, 294, 300 to select a transmit or receive path using a specified filter 296, LNA 290, and/or PA 298, based on a configuration as specified by transceiver 302 and/or processor 312.
As such, transceiver 302 may be configured to transmit and receive wireless signals through one or more antennas 286 via RF front end 288. In an aspect, transceiver may be tuned to operate at specified frequencies such that UE 110 can communicate with, for example, one or more base stations 105 or one or more cells associated with one or more base stations 105. In an aspect, for example, modem 314 can configure transceiver 302 to operate at a specified frequency and power level based on the UE configuration of the UE 110 and the communication protocol used by modem 314.
In an aspect, modem 314 can be a multiband-multimode modem, which can process digital data and communicate with transceiver 302 such that the digital data is sent and received using transceiver 302. In an aspect, modem 314 can be multiband and be configured to support multiple frequency bands for a specific communications protocol. In an aspect, modem 314 can be multimode and be configured to support multiple operating networks and communications protocols. In an aspect, modem 314 can control one or more components of UE 110 (e.g., RF front end 288, transceiver 302) to enable transmission and/or reception of signals from the network based on a specified modem configuration. In an aspect, the modem configuration can be based on the mode of the modem and the frequency band in use. In another aspect, the modem configuration can be based on UE configuration information associated with UE 110 as provided by the network during cell selection and/or cell reselection.
Additionally, referring to FIG. 9, base station 105 may include a traffic scheduling component 145 configured to perform the methods described in the present disclosure.
In accordance with the proposal of the present disclosure, the traffic scheduling component 145, and more particularly the transport block component 148 may be configured to determine a transport block size that identifies a size of data block that can be transferred over the communication link to the receiver based on a scheduling parameter information. In some aspects, the transport block component 148 may consider the CQI/CSI reported by one or more UEs, IP buffer level (e.g., UE IP buffer level for uplink transmission and/or eNB IP buffer level for downlink transmission) , and cell load (e.g., other UEs traffic and channel status) to determine scheduling parameter information. In some aspects, the scheduling parameter information may include transport block size that identifies a size of data block that can be transferred over the communication link to the receive.
Thus, where the transmitter is a base station, the traffic scheduling component 145 may comprise determining a CQI reported by a UE, determining a cell load associated with the base station, determining an IP buffer status report associated with the base station, and scheduling traffic over the communication link based in part on one or more of the CQI, the cell load, or the IP buffer status report. Based on the identification of the transport block size, the modem 314 requests, from the IP layer, to forward the amount of data that corresponds to the transport block size which is transmitted over the communication link.
The base station may further include some components similar to those described above with respect to UE 110, such as antennas 286, RF front end 288, LNAs 290, switches 292, 294, and 300, filters 296, PAs 298, transceiver 302 including receiver 306 and transmitter 308, processors 312, modem 314, and memory 316. It should be noted that these components may operate in a similar manner as described above, however, these components on base station 105 operate to receive and process wireless RF signals from UE 110 (and/or other base stations 105) and to transmit wireless RF signals to UE 110 (and/or other base stations 105) . For the sake of brevity, detailed description of each of such components is not repeated with reference to FIG. 9.
The above detailed description set forth above in connection with the appended drawings describes examples and does not represent the only examples that may be implemented or that are within the scope of the claims. The term “example, ” when used in this description, means “serving as an example, instance, or illustration, ” and not “preferred” or “advantageous over other examples. ” The detailed description includes specific details for the purpose of providing an understanding of the described techniques. These techniques, however, may be practiced without these specific details. In some instances, well-known structures and apparatuses are shown in block diagram form in order to avoid obscuring the concepts of the described examples.
Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, computer-executable code or instructions stored on a computer-readable medium, or any combination thereof.
The various illustrative blocks and components described in connection with the disclosure herein may be implemented or performed with a specially-programmed device, such as but not limited to a processor, a digital signal processor (DSP) , an ASIC, a FPGA or other programmable logic device, a discrete gate or transistor logic, a discrete hardware component, or any combination thereof designed to perform the functions described herein. A specially-programmed processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A specially-programmed processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor,  multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a non-transitory computer-readable medium. Other examples and implementations are within the scope and spirit of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a specially programmed processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations. Also, as used herein, including in the claims, “or” as used in a list of items prefaced by “at least one of” indicates a disjunctive list such that, for example, a list of “at least one of A, B, or C” means A or B or C or AB or AC or BC or ABC (i.e., A and B and C) .
Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium may be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, include compact disc (CD) , laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data  optically with lasers. Combinations of the above are also included within the scope of computer-readable media.
The previous description of the disclosure is provided to enable a person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the common principles defined herein may be applied to other variations without departing from the spirit or scope of the disclosure. Furthermore, although elements of the described aspects and/or embodiments may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Additionally, all or a portion of any aspect and/or embodiment may be utilized with all or a portion of any other aspect and/or embodiment, unless stated otherwise. Thus, the disclosure is not to be limited to the examples and designs described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (7)

  1. A method for wireless communication, comprising:
    receiving, at a transmission control protocol (TCP) layer, data for transmission to a receiver over a communication link;
    storing the data in an internet protocol (IP) buffer;
    determining a transport block size based on a network scheduling parameter information, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver; and
    transmitting, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.
  2. The method of claim 1, wherein determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver, comprises:
    determining an IP buffer status report associated with the transmitter.
  3. The method of claim 1, further comprising:
    generating an IP buffer status report associated with the transmitter, wherein the transmitter is a user equipment (UE) ;
    transmitting, from a modem of the UE to the receiver of a base station, the IP buffer status report.
  4. The method of claim 1, wherein determining the transport block size that identifies the size of data block that can be transferred over the communication link to the receiver comprises:
    receiving, at the modem of the UE, an uplink grant message from the receiver in response to transmission of the IP buffer status report, wherein the uplink grant message includes the transport block size;
    transmitting, from the modem ofthe UE to an IP layer, a data request comprising the transport block size; and
    retrieving, from the IP buffer, an amount of data that corresponds to the transport block size based on the data request.
  5. The method of claim 1, wherein the transmitter is a base station, and the method further comprises:
    determining a channel quality indicator (CQI) reported by a user equipment;
    determining a cell load associated with the base station;
    determining an internet protocol (IP) buffer status report associated with the base station; and
    scheduling traffic over the communication link based in part on one or more of the CQI, the cell load, or the IP buffer status report.
  6. An apparatus for wireless communications, comprising:
    a memory configured to store instructions;
    a processor communicatively coupled with the memory, the processor configured to execute the instructions to:
    receive, at a transmission control protocol (TCP) layer, data for transmission to a receiver over a communication link;
    store the data in an internet protocol (IP) buffer;
    determine a transport block size based on a network scheduling parameter information, wherein the transport block size identifies a size of data block that can be transferred over the communication link to the receiver; and
    transmit, by a modem of a transmitter, the data from the IP buffer to the receiver based on the determining.
  7. The apparatus of claim 6, wherein the processor is further configured to execute the instructions to perform one or more of the methods in claims 2-5.
PCT/CN2016/081514 2016-05-10 2016-05-10 Radio-aware tcp congestion control optimization WO2017193274A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/081514 WO2017193274A1 (en) 2016-05-10 2016-05-10 Radio-aware tcp congestion control optimization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/081514 WO2017193274A1 (en) 2016-05-10 2016-05-10 Radio-aware tcp congestion control optimization

Publications (1)

Publication Number Publication Date
WO2017193274A1 true WO2017193274A1 (en) 2017-11-16

Family

ID=60266178

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/081514 WO2017193274A1 (en) 2016-05-10 2016-05-10 Radio-aware tcp congestion control optimization

Country Status (1)

Country Link
WO (1) WO2017193274A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3681227A1 (en) * 2019-01-10 2020-07-15 Panasonic Intellectual Property Corporation of America User equipment involved in transmitting ue assistance information
CN112840700A (en) * 2018-10-15 2021-05-25 富士通株式会社 Receiving apparatus, transmitting apparatus, wireless communication system, and communication status reporting method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102263618A (en) * 2010-05-31 2011-11-30 中国移动通信集团公司 Method, device and system for controlling wireless network congestion
CN102833783A (en) * 2012-07-02 2012-12-19 北京邮电大学 Method for optimizing terminal control protocol (TCP) under wireless environment
WO2013070164A2 (en) * 2011-11-09 2013-05-16 Telefonaktiebolaget L M Ericsson (Publ) Congestion control for multi flow data communication
CN104243090A (en) * 2013-06-19 2014-12-24 中国移动通信集团公司 Sending rate adjustment method and device based on wireless channel feedback
CN104254091A (en) * 2013-06-25 2014-12-31 中国移动通信集团公司 Air interface channel state parameter reporting method and equipment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102263618A (en) * 2010-05-31 2011-11-30 中国移动通信集团公司 Method, device and system for controlling wireless network congestion
WO2013070164A2 (en) * 2011-11-09 2013-05-16 Telefonaktiebolaget L M Ericsson (Publ) Congestion control for multi flow data communication
CN102833783A (en) * 2012-07-02 2012-12-19 北京邮电大学 Method for optimizing terminal control protocol (TCP) under wireless environment
CN104243090A (en) * 2013-06-19 2014-12-24 中国移动通信集团公司 Sending rate adjustment method and device based on wireless channel feedback
CN104254091A (en) * 2013-06-25 2014-12-31 中国移动通信集团公司 Air interface channel state parameter reporting method and equipment

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112840700A (en) * 2018-10-15 2021-05-25 富士通株式会社 Receiving apparatus, transmitting apparatus, wireless communication system, and communication status reporting method
EP3681227A1 (en) * 2019-01-10 2020-07-15 Panasonic Intellectual Property Corporation of America User equipment involved in transmitting ue assistance information
WO2020143935A1 (en) * 2019-01-10 2020-07-16 Panasonic Intellectual Property Corporation Of America User equipment involved in transmitting ue assistance information

Similar Documents

Publication Publication Date Title
US10659207B2 (en) Uplink power control in new radio (NR)
US11659438B2 (en) Streamlined user plane headers for high data rates
US20220104063A1 (en) Transmission of buffer status reports on multiple component carriers
EP3498022B1 (en) Techniques for managing a logical traffic connection that uses data aggregation
US9485692B2 (en) LTE handover parameter configuration for specific types of traffic
US20180034683A1 (en) Subframe structure for the co-existence network of sidelink and mission critical mobile devices
EP3219037B1 (en) Techniques for handling bursty interference in a shared radio frequency spectrum band
US11057181B2 (en) Control overhead reduction for low latency communication systems
US20160142932A1 (en) Evolved data compression scheme for unreliable transmission modes
US20180131640A1 (en) Techniques for encoding and decoding multiple acknowledgement signals in new radio
US20190053109A1 (en) Techniques for handover cell selection procedures in poor radio conditions
WO2017193274A1 (en) Radio-aware tcp congestion control optimization
EP3689008B1 (en) Prioritizing data packets when stateful compression is enabled
WO2019241942A1 (en) Apparatus and method for measurement report optimization

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16901229

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16901229

Country of ref document: EP

Kind code of ref document: A1