# Patent

## Title
Data transmission methods and appratuses using the same

## Abstract

A mobile communication device with a wireless module and a controller module is provided. The wireless module performs wireless transceiving to and from a service network. The controller module determines a data transmission parameter associated with a first protocol layer according to a link quality of the service network and a number of transmission layers supported for spatial multiplexing associated with a second protocol layer. Particularly, the first protocol layer is hierarchically higher than the second protocol layer in a multi-layer protocol stack. Also, the controller module detects a transfer failure rate for data transmission using the data transmission parameter via the wireless module, and reduces the data transmission parameter by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
This Application is a Continuation-In-Part (CIP) of U.S. patent application Ser. No. 13/350,829, filed on Jan. 16, 2012, which claims priority of Taiwan Patent Application No. 100140599, filed on Nov. 7, 2011. This Application claims priority of U.S. Provisional Application No. 61/619,834, filed on Apr. 3, 2012, the entirety of which is incorporated by reference herein. Also, this Application claims priority of U.S. Provisional Application No. 61/642,650, filed on May 4, 2012, the entirety of which is incorporated by reference herein.


BACKGROUND OF THE INVENTION
1. Field of the Invention
The invention generally relates to data throughput control, and more particularly, to apparatuses and methods for improving data throughput by dynamically adjusting a window size of a communication protocol layer.
2. Description of the Related Art
With rapid development in technology, a user may easily connect to a network using desktop computers, notebook computers, Personal Digital Assistants (PDAs) or smart phones. In order for electronic equipment having varying specifications to be able to communicate with the same network, an OSI (Open Systems Interconnection) network model has been provided by the ISO (International Organization for Standardization) for managing the network intercommunication between two systems.
In a network environment in compliance with the OSI model, each layer of a receiving device or a transmitting device is configured to recognize data from the same layer. Data packets are sequentially transmitted from the top layer to the bottom layer of a transmitting network device and then transmitted to a receiving network device using application programs. After receiving data packages, the receiving network device sequentially unpacks each data package, which is then distributed to a corresponding layer thereof. Note that each layer may have varying transmission parameters and buffer sizes for their respective processing tasks. However, data stall may occur when data is being transmitted from a faster higher layer to a slower lower layer. Meanwhile, a faster lower layer may not improve overall data throughput, if a higher layer encounters an insufficient data buffer or transmission blockages.
BRIEF SUMMARY OF THE INVENTION
Thus, the invention proposes solutions for resolving the aforementioned problems to improve overall data throughput for a mobile communication device, such as a User Equipment (UE), Mobile Station (MS), Mobile Terminal (MT), or others.
In one aspect of the invention, a mobile communication device comprising a wireless module and a controller module is provided. The wireless module performs wireless transceiving to and from a service network. The controller module determines a data transmission parameter associated with a first protocol layer according to a link quality of the service network and a number of transmission layers supported for spatial multiplexing associated with a second protocol layer, wherein the first protocol layer is hierarchically higher than the second protocol layer in a multi-layer protocol stack. Also, the controller module detects a transfer failure rate for data transmission using the data transmission parameter via the wireless module, and reduces the data transmission parameter by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold.
In another aspect of the invention, a data transmission method for a mobile communication device wirelessly connected to a service network according to a multi-layer protocol stack is provided. The method comprises the steps of determining a data transmission parameter associated with a first protocol layer according to a link quality of the service network and a number of transmission layers supported for spatial multiplexing associated with a second protocol layer, wherein the first protocol layer is hierarchically higher than the second protocol layer in the multi-layer protocol stack; detecting a transfer failure rate for data transmission using the data transmission parameter; and reducing the data transmission parameter by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold.
Other aspects and features of the invention will become apparent to those with ordinary skill in the art upon review of the following descriptions of specific embodiments of the mobile communication devices and data transmission methods.



BRIEF DESCRIPTION OF DRAWINGS
The invention can be more fully understood by reading the subsequent detailed description and examples with references made to the accompanying drawings, wherein:
FIG. 1 is a block diagram illustrating a network environment according to an embodiment of the invention;
FIG. 2 is a block diagram illustrating a multi-layer protocol stack in compliance with the OSI model according to an embodiment of the invention;
FIG. 3 is an exemplary diagram illustrating the mapping relations between the OSI-model protocol stack and the LTE protocol stack according to an embodiment of the invention;
FIG. 4 is a flow chart illustrating the data transmission method according to an embodiment of the invention; and
FIG. 5 is an exemplary diagram illustrating the reducing of the data transmission parameter according to an embodiment of the invention.



DETAILED DESCRIPTION OF THE INVENTION
The following description is of the best-contemplated mode of carrying out the invention. This description is made for the purpose of illustrating the general principles of the invention and should not be taken in a limiting sense. The scope of the invention is best determined by reference to the appended claims.
FIG. 1 is a block diagram illustrating a network environment according to an embodiment of the invention. In the network environment 100, the mobile communication device 110 is wirelessly connected to the service network 120 via the air interface for obtaining wireless services. The service network 120 comprises at least one cellular access network 121 and the core network 122. In general, the cellular access network 121 is controlled by the core network 122 to provide the functionality of wireless transceiving, and the cellular access network 121 may comprise one or more cellular stations, such as base stations, Node-Bs, or evolved Node-B (eNB), depending on the radio access technology in use. Although not shown, the core network 122 may further enable interfacing with external networks, such as the Public Switched Telephone Network (PSTN), which is called the Circuit Switched (CS) domain functionality, and/or interfacing with the Internet Protocol (IP) based Network, such as the Internet, which is called the Packet Switched (PS) domain functionality.
The mobile communication device 110 comprises a wireless module 111 and a controller module 112, wherein the wireless module 111 is configured to perform the functionality of wireless transceiving and the controller module 112 is configured to control the operation of the wireless module 111. To further clarify, the wireless module 111 may be a Radio Frequency (RF) unit (not shown), and the controller module 112 may be a general-purpose processor or Micro-Control Unit (MCU) of a baseband unit (not shown). The baseband unit may contain multiple hardware devices to perform baseband signal processing, including analog to digital conversion (ADC)/digital to analog conversion (DAC), gain adjusting, modulation/demodulation, encoding/decoding, and so on. The RF unit may receive RF wireless signals, convert the received RF wireless signals to baseband signals, which are processed by the baseband unit, or receive baseband signals from the baseband unit and convert the received baseband signals to RF wireless signals, which are later transmitted. The RF unit may also contain multiple hardware devices to perform radio frequency conversion. For example, the RF unit may comprise a mixer to multiply the baseband signals with a carrier oscillated in the radio frequency of the wireless communications system, wherein the radio frequency may be 900 MHz, 2100 MHz, or 2.6 GHz utilized in Long Term Evolution (LTE) or LTE-Advanced technology, or others depending on the radio access technology in use. Although not shown, the mobile communication device 110 may further comprise other functional components, such as a display unit and/or keypad serving as the Man-Machine Interface (MMI), a storage unit storing the program codes of applications, or others.
FIG. 2 is a block diagram illustrating a multi-layer protocol stack in compliance with the OSI model according to an embodiment of the invention. From bottom to top, Layer 1 ̃Layer 7 sequentially include a physical layer, data link layer, network layer, transport layer, session layer, presentation layer, and application layer. The physical layer is defined as the bottom layer closest to the hardware devices, while the application layer is defined as the top layer closest to the software programs. In general, Layers 1 through 3 deal with network access and Layers 4 through 7 deal with end-to-end communications between the message source and the message destination. Each layer includes at least one function that is contained between an upper and a lower logical boundary. The services of each layer are combined with the services of the lower layers to create new services that are made available to the higher layers.
Specifically, the physical layer and the data link layer in the OSI model are configured to handle network hardware connection and may be implemented on various network access interfaces, such as Ethernet, Token-Ring or Fiber Distributed Data Interface (FDDI), etc. The network layer in the OSI model is configured to deliver messages between a transmitting device and a receiving device using various protocols, such as identifying addresses or selecting transmission paths using Internet Protocol (IP), Address Resolution Protocol (ARP), Reverse Address Resolution Protocol (RARP), or Internet Control Message Protocol (ICMP). The transport layer in the OSI model is configured to deliver messages between different hosts using Transmission Control Protocol (TCP) and User Datagram Protocol (UDP). The session layer, the presentation layer, and the application layer in the OSI model are configured to provide various application protocols, such as TELNET, FTP, SMTP, POP3, SNMP, NNTP, DNS, NIS, NFS, and HTTP. The present invention may be applied to any wireless network system having a multi-layer structure of protocol layers for data transmission.
Note that, in the OSI model, various wireless communication standards, such as WiFi, GSM/GPRS, WCDMA, CDMA2000, LTE, and LTE-Advanced, etc., may be employed to enable signaling and communication between a transmitter and a receiver through the network layer. FIG. 3 is an exemplary diagram illustrating the mapping relations between the OSI-model protocol stack and the LTE protocol stack according to an embodiment of the invention. As shown in FIG. 3, the physical layer in the OSI model is replaced with the LTE Layer 1 which provides radio access using the Frequency-Division Duplexing/Time-Division Duplexing (FDD/TDD) or Orthogonal Frequency Division Multiplexing/Single-Carrier Frequency-Division Multiple Access (OFDMA/SC-FDMA) technology. The data link layer in the OSI model is replaced with the LTE Layer 2 which comprises the sub-layers Medium Access Control (MAC), Radio Link Control (RLC), and Packet Data Convergence Protocol (PDCP). The network layer in the OSI model is partially replaced with the LTE sub-layers Radio Resource Control (RRC) and Non-Access Stratum (NAS). In addition to the LTE sub-layers RRC and NAS, the network layer also comprises an entity which adopts IP for handling addressing, routing, service type specification, packet fragmentation, packet reassembling and security. The transport layer in the OSI model adopts TCP for handling packet sequence numbers, acknowledgement packets, checksums and re-transmissions. The session layer, the presentation layer, and the application layer in the OSI model are configured to provide application protocols.
FIG. 4 is a flow chart illustrating the data transmission method according to an embodiment of the invention. The data transmission method may be applied in a mobile communication device, such as the mobile communication device 110, for dynamically adjusting a window size of a communication protocol layer to improve data throughput. To begin, the mobile communication device determines a data transmission parameter associated with a first protocol layer according to a link quality of the service network and a number of transmission layers supported for spatial multiplexing associated with a second protocol layer (step 410). Specifically, the first protocol layer is hierarchically higher than the second protocol layer in the multi-layer protocol stack. Next, the mobile communication device detects a transfer failure rate for data transmission using the data transmission parameter (step S420). The transfer failure rate may be detected according to a transmission error rate, e.g., Bit Error Rate (BER), Packet Error Rate (PER), etc, or a number of retransmission attempts. After that, the mobile communication device reduces the data transmission parameter by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold (step S430). Note that, the data transmission parameter may be applied for downlink data transmission, or uplink data transmission, or both downlink and uplink data transmissions.
For the embodiment of FIG. 3, the link quality in step S410 may be a Channel Quality Indicator (CQI) of a downward transmission link from the service network, and the number of transmission layers in step S410 may be a Rank Indicator (RI) used in Multiple-Input Multiple-Output (MIMO), while the second protocol layer may be the physical layer in the LTE protocol stack. The data transmission parameter in step S410 may be a TCP/IP window size, while the first protocol layer may be the network layer or the transport layer in the OSI-model protocol stack which has the lower three layers replaced with the LTE protocol stack. For example, in step S410, if a 2×2 MIMO is employed, the RI equals to 2, or else, if MIMO is not employed, the RI equals to 1. To further clarify step S410, the data transmission parameter may be determined by applying the following formula:




  
    
      
        
          (
          
            MaxTCPWindowSize
            -
            MinTCPWindowSize
          
          )
        
        ×
        
          
            
              CQI_Indexed
              ⁢
              _TBS
            
            
              MAX_CQI
              ⁢
              _TBS
            
          
          ÷
          RI
        
        ×
        Weight
      
    
    
      
        (
        1
        )
      
    
  




wherein MaxTCPWindowSize represents the maximum TCP/IP window size, MinTCPWindowSize represents the minimum TCP/IP window size, CQI_Indexed_TBS represents a Transport Block Size (TBS) corresponding to the currently measured CQI, MAX_CQI_TBS represents another TBS corresponding to the maximum CQI, and Weight represents a constant or a weighting function of the TBS corresponding to the currently measured CQI.

Specifically, the maximum CQI may be determined according to the Table 7.2.3-1 specified in the 3GPP TS 36.213 specification, and the TBS corresponding to the currently measured CQI and the TBS corresponding to the maximum CQI may be determined by looking up the Tables 7.1.7.1-1 and 7.1.7.2.1-1 specified in the 3GPP TS 36.213 specification, wherein the Tables 7.1.7.1-1 and 7.1.7.2.1-1 describe the mapping relations between the Modulation and Coding Scheme (MCS) index and TBS index. If Weight is a weighting function of the currently measured CQI, the weighting function may be a linear function, a non-linear function, or a discrete function, as long as the weighting function keeps the currently measured CQI and the TCP/IP window size in a positive correlation.
To follow the embodiment using formula (1) for determining the data transmission parameter, the reducing of the data transmission parameter in step S430 may be performed by reducing the value of Weight in formula (1) with a predetermined ratio. FIG. 5 is an exemplary diagram illustrating the reducing of the data transmission parameter according to an embodiment of the invention. As shown in FIG. 5, if the transfer failure rate is too high, i.e., greater than a predetermined threshold, when the data transmission parameter determined in step S410 is used for data transmission, the value of Weight (denoted as W) in formula (1) may be reduced by half (denoted as 1⁄2W). Next, if the transfer failure rate is still too high when the data transmission parameter reduced with 1⁄2W is used for data transmission, the value of Weight in formula (1) may be further reduced by half (denoted as 1⁄4W). The reducing of the value of Weight in formula (1) may be repeated for a certain number of times (denoted as MAX_BACKWARD_TRY) until the transfer failure rate is low enough. Alternatively, until the transfer failure rate is low enough, the reducing of the value of Weight in formula (1) may be repeated as many times as needed, for the reduced data transmission parameter to remain greater than the minimum TCP/IP window size. It is to be understood that, other ratios, such as 4⁄5, 3⁄5, 5/2, and 1⁄3, etc., may be used for reducing the value of Weight in formula (1), and the invention is not limited thereto.
As known in the art, the concept of a sliding window is used in TCP/IP for allowing multiple packets to be transmitted before a receiving device accepts acknowledgement packets. This kind of multi-transmission-multi-acknowledgement technology can increase network bandwidth utilization and data transmission speed. Simply speaking, a receiving device may inform a transmitting device of the available buffer size for receiving packets using the TCP/IP window size. The transmitting device may decrease its data throughput when the TCP/IP window size drops, or increase its data throughput when the TCP/IP window size rises. Therefore, the invention may improve data throughput by determining a proper TCP/IP window size for the higher protocol layer, i.e., the network/transport layer, and reducing the TCP/IP window size by a predetermined ratio when the data transmission using the determined TCP/IP window size has a high transfer failure rate.
It is to be understood that, the CQI and the TCP/IP window size are merely illustrative embodiments, and other parameters associated with link quality and data transmission rates may be used instead, and the invention is not limited thereto. Likewise, the LTE protocol stack is merely an illustrative embodiment, and other wireless communications protocol may be used instead to replace the lower layers in the OSI model.
While the invention has been described by way of example and in terms of preferred embodiment, it is to be understood that the invention is not limited thereto. Those who are skilled in this technology can still make various alterations and modifications without departing from the scope and spirit of this invention. Therefore, the scope of the invention shall be defined and protected by the following claims and their equivalents.

## Claims

1. A mobile communication device, comprising:
a wireless module, performing wireless transceiving to and from a service network; and
a processor, determining a Transmission Control Protocol (TCP) or Internet Protocol (IP) window size associated with a Transport layer or Network layer according to a Channel Quality Indicator (CQI) of a downward transmission link from the service network and a Rank Indicator (RI) used for Multiple-Input Multiple-Output (MIMO) associated with a Physical layer, detecting a transfer failure rate for data transmission using the TCP or IP window size via the wireless module, and reducing the TCP or IP window size by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold,
wherein the Transport layer or Network layer is hierarchically higher than the Physical layer in a multi-layer protocol stack,
wherein the TCP or IP window size is determined by:





  
    (
    
      MaxTCPWindowSize
      -
      MinTCPWindowSize
    
    )
  
  ×
  
    
      
        CQI_Indexed
        ⁢
        _TBS
      
      
        MAX_CQI
        ⁢
        _TBS
      
    
    ÷
    RI
  
  ×
  Weight



wherein the MaxTCPWindowSize represents a maximum TCP or IP window size, the MinTCPWindowSize represents a minimum TCP or IP window size, the CQI_Indexed_TBS represents a Transport Block Size (TBS) corresponding to a currently measured CQI, the MAX_CQI_TBS represents another TBS corresponding to a maximum CQI, and the Weight represents a constant or a weighting function of the currently measured CQI.

2. The mobile communication device of claim 1, wherein the reducing of the TCP or IP window size is performed by reducing a value of Weight by the predetermined ratio.

3. The mobile communication device of claim 1, wherein the TCP or IP window size is applied for downlink data transmission, or uplink data transmission, or both downlink and uplink data transmissions.

4. The mobile communication device of claim 1, wherein the transfer failure rate is detected according to a transmission error rate or a number of retransmission attempts.

5. The mobile communication device of claim 1, wherein the wireless transceiving to and from the service network is performed using the Long Term Evolution (LTE) technology.

6. A data transmission method for a mobile communication device wirelessly connected to a service network according to a multi-layer protocol stack, comprising:
determining a Transmission Control Protocol (TCP) or Internet Protocol (IP) window size associated with a Transport layer or Network layer according to a Channel Quality Indicator (CQI) of a downward transmission link from the service network and a Rank Indicator (RI) used for Multiple-Input Multiple-Output (MIMO) associated with a Physical layer,
wherein the Transport layer or Network layer is hierarchically higher than the Physical layer in the multi-layer protocol stack, and
wherein the TCP or IP window size is determined by:





  
    (
    
      MaxTCPWindowSize
      -
      MinTCPWindowSize
    
    )
  
  ×
  
    
      
        CQI_Indexed
        ⁢
        _TBS
      
      
        MAX_CQI
        ⁢
        _TBS
      
    
    ÷
    RI
  
  ×
  Weight



wherein the MaxTCPWindowSize represents a maximum TCP/IP window size, the MinTCPWindowSize represents a minimum TCP/IP window size, the CQI_Indexed_TBS represents a Transport Block Size (TBS) corresponding to a currently measured CQI, the MAX_CQI_TBS represents another TBS corresponding to a maximum CQI, and the Weight represents a constant or a weighting function of the currently measured CQI;
detecting a transfer failure rate for data transmission using the TCP or IP window size; and
reducing the TCP or IP window size by a predetermined ratio in response to the transfer failure rate being higher than a predetermined threshold.

7. The data transmission method of claim 6, wherein the reducing of the TCP or IP window size is performed by reducing a value of Weight by the predetermined ratio.

8. The data transmission method of claim 6, wherein the TCP or IP window size is applied for downlink data transmission, or uplink data transmission, or both downlink and uplink data transmissions.

9. The data transmission method of claim 6, wherein the transfer failure rate is detected according to a transmission error rate or a number of retransmission attempts.

10. The data transmission method of claim 6, wherein communications between the mobile communication device and the service network are performed using the Long Term Evolution (LTE) technology.