The invention relates to a scheduler for a tcp/IP based data communication system and a method for the scheduler. The communication system comprises a tcp/IP transmitter and a receiving unit (ue). The scheduler is associated with a node comprising a rate measuring device for measuring a tcp/IP data rate from the tcp/IP transmitter and a queue buffer device for buffering data segments from the tcp/IP transmitter. The scheduler is arranged to receive information from the rate measuring device regarding the tcp/IP data rate and is arranged to adapt the permitted queue latency to a minimum value when the tcp/IP transmitter is in a slow start mode and to increase the permitted queue latency when the tcp/IP rate has reached a threshold value.
|
1. A scheduler for a tcp/IP based data communication system, comprising:
a tcp/IP transmitter and a receiving unit (ue), wherein the scheduler is associated with a node comprising a rate measuring device for measuring a tcp/IP data rate from the tcp/IP transmitter and a queue buffer device for buffering data segments from the tcp/IP transmitter,
wherein the scheduler receives information from the rate measuring device regarding the tcp/IP data rate,
wherein the scheduler communicates with the buffer device for active queue management (AQM),
wherein the scheduler performs the following steps:
adapt a permitted queue latency to a minimum value when the tcp/IP transmitter is in a slow start mode;
increase the permitted queue latency when the tcp/IP rate has reached a threshold value; and
transmit to a ue with a highest channel quality, such that transmission capacity for that ue is minimized.
11. A method for a scheduler for a tcp/IP based data communication system, comprising:
a tcp/IP transmitter and a receiving unit (ue), wherein the scheduler is associated with a node comprising a rate measuring device for measuring a tcp/IP data rate from the tcp/IP transmitter and a queue buffer device for buffering data segments from the tcp/IP transmitter,
wherein the scheduler receives information from the rate measuring device regarding the tcp/IP data rate,
wherein the scheduler communicates with the buffer device for active queue management AQM,
wherein the scheduler performs the following steps:
adapt a permitted queue latency to a minimum value when the tcp/IP transmitter is in a slow start mode;
increase the permitted queue latency when the tcp/IP rate has reached a threshold value; and
transmit to a ue with a highest channel quality, such that transmission capacity for that ue is minimized.
2. The scheduler according to
3. The scheduler according to
4. The scheduler according to
5. The scheduler according to
6. The scheduler according to
7. The scheduler according to
8. The scheduler according to
9. The scheduler according to
10. The scheduler according to
12. The method according to
13. The method according to
14. The method according to
15. The method according to
16. The method according to
17. The method according to
18. The method according to
19. The method according to
20. The method according to
|
The invention relates to a scheduler for a TCP/IP based data communication system comprising a TCP/IP transmitter and a receiving unit, UE. The scheduler is associated with a Node comprising a rate measuring device for measuring a TCP/IP data rate from the TCP/IP transmitter and a queue buffer device for buffering data segments from the TCP/IP transmitter. The scheduler is arranged to receive information from the rate measuring device regarding the TCP/IP data rate and the scheduler is arranged to communicate with the buffer device for active queue management AQM. The invention also relates to a method for such a scheduler.
The Transmission Control Protocol (TCP) is a virtual circuit protocol that is one of the core protocols of the Internet protocol suite, often simply referred to as TCP/IP. Using TCP, applications on networked hosts can create connections to one another, over which they can exchange streams of data. The protocol guarantees reliable and in-order delivery of data from sender to receiver. TCP also distinguishes data for multiple connections by concurrent applications (e.g. Web server and e-mail server) running on the same host.
TCP supports many of the Internet's most popular application protocols and resulting applications, including the World Wide Web, e-mail and Secure Shell.
In the Internet protocol suite, TCP is the intermediate layer between the Internet Protocol (IP) below it, and an application above it. Applications often need reliable pipe-like connections to each other, whereas the Internet Protocol does not provide such streams, but rather only best effort delivery (i.e. unreliable packets). TCP does the task of the transport layer in the simplified OSI model of computer networks. The other main transport-level Internet protocol is UDP.
Hence, TCP/IP is a protocol used for internet traffic for devices comprising a computer. This protocol allows for transmitting and receiving a data stream comprising a number of data segments in the form of packages. The data stream is advantageously broken up so that the segments may be sent to and from a user equipment (hereinafter called UE) with as high data transmission rate (hereinafter called the rate) as possible, i.e. with as many transmitted segments per time unit as possible. The UE intended to receive the data segments comprises a receiver for receiving the segments and for assembling the segments into a data stream corresponding to the transmitted data stream. When the UE has received a segment an acknowledgement signal, ACK, is sent back to the UE that transmitted the segment. If a segment is not acknowledged the transmitter retransmits the segment. The TCP/IP protocol includes rate control in order to avoid congestion in the network. Two different rate control phases (or control modes) exist and they are “slow start” and “congestion avoidance”. A transmission always starts in slow start mode with a low rate. Then for each roundtrip time, RTT, the rate is doubled. The TCP/IP transmitter also estimates the RTT based on the time when a message is transmitted until corresponding acknowledge message is received from the TCP/IP receiver.
Two different reasons result in that the TCP/IP transmitter reduces its rate:
In mobile networks, (e.g. IEEE 802.16 and 3rd Generation Partnership Project (3GPP)) a scheduler exists in order to distribute the transmission capacity fairly between different data transmission flows to different UEs in a cell over an air interface. At the same time the scheduler tries to utilize the transmission capacity in such a way so that the total transmission rate in the network, i.e. e.g. in the cell, can be maximized. Since the transmission capacity is limited in the air interface, the scheduler wants to control the rate of each transmission flow in a fair manner.
Several methods exist in order to regulate the transmission flow rate. One method is to incorporate a control-signaling interface between the mobile network and the TCP/IP transmitter side, where the network explicitly informs the transmitter what rate is acceptable for the scheduler.
Another method is that the mobile network provokes the TCP/IP protocol to reduce its rate, when needed, by discarding one segment but transmitting the following segments further to the receiver in the UE. This will result in a lost ACK and that the TCP/IP transmitter identifies that a segment is lost and that the transmitter will go into a fast retransmission mode according to item 1 above, i.e. to retransmit the lost segment and to reduce the TCP/IP rate to half the current transmission rate. This method strives to force the TCP/IP to a fast retransmission occasion instead of an RTO occasion that leads to the time-consuming slow start mode. Hence, the scheduler comprised in the mobile network can control the TCP/IP rate so that the scheduling rate control and the TCP/IP rate control interact in a good manner. This idea is adopted in a function often called Active Queue Management, AQM.
Furthermore, to establish a fast TCP/IP rate control, in order to get a high average transmission rate, it is known to minimize the round trip time. In order to minimize the RTT it is desired to minimize data latency time in the mobile network since the data latency is one parameter affecting the RTT. However, the TCP/IP protocol adjusts its rate for each received ACK. Hence, the faster an ACK is received, the faster the TCP/IP rate can increase, and the shorter RTT and latency time is necessary. This is a problem since channel performance between a base station and the UE always varies over time, especially when the UE is moving. When several UEs are connected to the cell, the channel performance is unique for each UE connection. Hence good channel performance will arise at different times for the different connections.
If then, according to the above, the permitted latency is minimized in the network in order to get a fast TCP/IP rate control the scheduler has to transmit data to an UE irrespective of whether if the momentary channel performance is good or bad. This means that the data may be transmitted on a poor channel requiring a lot of transmission capacity e.g. transmission power, and maybe a lot of retransmissions. This will have a negative impact on the scheduling gain for the network, i.e. for the total transmission rate in the network, i.e. e.g. in the cell. The problem also increases with the number of UEs in the cell since the more UEs being scheduled on bad channels; the more transmission capacity is required.
For the reasons above there exists a need for an improved scheduler that can manage the balance between TCP/IP rate using AQM and good channel performance for each UE in a cell controlled by the scheduler so that increased scheduling gain is achieved for the cell.
The object of the invention is to meet the above need with a scheduler that can handle a TCP/IP data communication system so that scheduling gain is increased in a system comprising a number of user equipments. Here scheduling gain refers to the situation where a scheduler in a TCP/IP based system can control and time a number of devices so that a TCP/IP transmitter can increase its transmission rate of TCP/IP based data segments.
Hence, the invention refers to a method for scheduling a TCP/IP based system and a scheduler for controlling the system. The TCP/IP based system comprises the TCP/IP transmitter and a receiving unit. The TCP/IP transmitter may be comprised in a user equipment, UE, during upload or may be comprised in a transceiver unit in a part of a wireless network during download. Here “upload” and “download” is with reference to the UE, i.e. when the UE sends information the UE performs an upload and when the UE receives information the UE performs a download. The Node may be a base transceiver station comprising a transmitter and a receiver.
The Node comprises a rate measuring device for measuring a TCP/IP data rate from the TCP/IP transmitter and a queue buffer device for buffering data segments from the TCP/IP transmitter. The scheduler is arranged to receive information from the rate measuring device regarding the TCP/IP data rate, i.e. the number of data segments being transmitted per time unit. The scheduler is arranged to communicate with the buffer device for active queue management, AQM, according to prior art.
The invention is characterised in that the scheduler is arranged to perform the following steps:
One advantage of the invention is that the adaptive increase of the permitted queue latency will allow for the scheduler to allocate the transmission of the segments buffered in the queue buffer device to a time period where the channel quality is good. Hence, there will be less use of transmission capacity, e.g. less lost segments and less retransmission and thus fewer periods where the TCP/IP transmitter is forced into the slow start mode, why the scheduling gain is increased.
One further advantage of the invention is that the permitted queue latency can be set to be very low during the slow start mode which will shorten the time period for the TCP/IP rate to reach a maximum value. In other words, the increase in the TCP/IP rate per time period can be increased by use of the short permitted queue latency.
The scheduler is arranged to increase the permitted queue latency until it reaches a selected maximum permitted latency time. This selected maximum permitted latency time depends on a number of factors, for example, the RTO and the number of UEs. However, the scheduler is arranged to increase the permitted queue latency with a rate low enough to avoid a round trip time out, RTO.
The scheduler is advantageously arranged to increase the permitted queue latency when, or after, the threshold value for the TCP/IP rate is reached. This threshold value corresponds to when the scheduler uses the AQM to force the TCP/IP transmitter to a fast retransmission mode. Here, the scheduler is arranged to use the AQM to control the queue buffer to drop at least one data segment, preferably the oldest segment, when the TCP/IP rate has reached its threshold value, in order to force the TCP/IP transmitter into a fast retransmission mode instead of risking a slow start mode.
The benefit of this embodiment is that the TCP/IP rate can be kept at a high level and that the scheduler continuously monitors the TCP/IP rate so that the permitted queue latency can be increased when the TCP/IP rate is high. The fast retransmission mode is an indicator of a high TCP/IP rate which is why this is a suitable trigger for increasing the permitted queue latency.
Furthermore, the monitoring of the TCP/IP rate allows for the scheduler to be arranged to reset the permitted queue latency to its minimum value if the measured TCP/IP rate is below a selected minimum rate in order to identify if the TCP/IP is in a slow start mode.
In one embodiment of the invention, the scheduler is advantageously arranged to increase the permitted queue latency stepwise when, or after, the scheduler uses the AQM to force the TCP/IP transmitter to the fast retransmission mode. However, the permitted queue latency may be increased continuously.
As mentioned above the data communication system may be a wireless network, for example, a telephone and/or data communication network, comprising an air interface between the TCP/IP transmitter and the receiving unit.
The invention will below be described in connection to a number of drawings in which;
The UE is a mobile unit in a wireless network that communicates with the transceiver unit via the Node. The UE communicates with the Node via an air interface, i.e. a wireless communication link. In GSM (Global System for Mobile Communication) and UMTS (Universal Mobile Telecommunications System) the air interface is called a radio access network and is the radio frequency portion of the circuit between the UE and the Node.
It should be noted that the transceiver unit can be a second UE or a UE fixed in a wired network or a server in a wired network or any equipment using TCP/IP for end-to-end communication, i.e. transmission and reception, of data to and from the UE. The Node can, for example, be a base transceiver station in a GSM system or a Node B in a WCDMA (Wideband Code Division Multiple Access) based system.
In a base transceiver station, latency refers to the amount of time it takes for a packet to travel from the input port to the output port of the base station. The latency in the base station contributes to the total round trip time, RTT, that a TCP/IP session observes.
The queue buffer stores a number of data packets, i.e. a number of data segments, and forwards the packets to the BTS transmitter dependent on the scheduler that controls the queue buffer. The BTS transmitter then forwards the packets to the actual UE.
The scheduler according to the invention is associated with the Node comprising a rate measuring device for measuring a TCP/IP data rate from the TCP/IP transmitter and a queue buffer device for buffering data segments from the TCP/IP transmitter. Here “associated” refers to the scheduler being comprised in the Node or that the scheduler is an external unit being connectable to the Node. The data transmission rate comprises information on momentary data rate. The rate measuring device forwards information about the data transmission rate to the scheduler.
In
As mentioned above, the scheduler is arranged to receive information from the rate measuring device regarding the TCP/IP data rate. The scheduler is also arranged to communicate with the buffer device for active queue management AQM. Hence, the scheduler comprises AQM. Here, the scheduler is arranged to use the AQM to control the queue buffer to drop at least one data segment, preferably the oldest segment, when the TCP/IP rate has reached its threshold value, in order to force the TCP/IP transmitter into a fast retransmission mode instead of risking a slow start mode.
In
In one embodiment of the invention the data stream from the transceiver unit is not only a single data stream but may be a multiplexed signal comprising a number of data streams, dedicated for one user, having been put together into one data stream queue. The rate measuring device then measures on the data stream queue instead of on the individual data streams. This is a problem for the scheduler since it is the individual data streams that have to be acknowledged by the UE in order for the UE to use the information in the individual data streams. Hence, in this embodiment the scheduler may use the AQM to force the TCP/IP transmitter into a fast retransmission mode not by dropping a dedicated segment from the buffer, but by dropping a segment chosen based on a statistic ground. By “statistic ground” is meant that one segment is lost at a certain point in time and a second segment at another point in time and so on, so that each individual data stream in the data stream queue has dropped a segment so that the TCP/IP transmitter is forced into a fast retransmission for all individual data streams. Another way to realise this is to de-multiplex the data stream queue in the Node before the rate measuring device so that the there is one queue buffer device for each data stream. In this case the scheduler can drop a dedicated segment in each queue buffer according to above.
In
In the case where there are several UEs in the cell the scheduler uses information about all the UEs for deciding to which UE the transmitter shall transmit data segments stored in the corresponding buffer device. The scheduler uses a lot of parameters for deciding which UE is next in line. The parameters comprise information that can be used by the scheduler for fairness, i.e. an algorithm that controls that all UEs are being equally treated. However, one parameter comprises information on channel quality and it should be noted that the channel quality fluctuates over time (see
Furthermore, if the TCP/IP transmitter goes into a slow start mode the scheduler according to the invention is arranged to adapt the permitted queue latency in the buffer device to a minimum value. The scheduler then increases the permitted queue latency when the TCP/IP rate has reached a threshold value.
It is thus obvious that the more UEs that are scheduled with the scheduler according to the invention, the higher the scheduling gain.
In
When the TCP/IP rate is equal to X_max the scheduler uses the AQM to force the TCP/IP transmitter into a fast retransmission mode with a TCP/IP rate being half the rate of the current rate at the time when the scheduler forced the TCP/IP transmitter into the fast retransmission mode. In
In
When the TCP/IP rate is equal to X_max the scheduler uses the AQM to force the TCP/IP transmitter into a fast retransmission mode with a TCP/IP rate being half the rate of the current rate at the time when the scheduler forced the TCP/IP transmitter into the fast retransmission mode. In
In
For this reason the inventive scheduler increases the permitted queue latency when the TCP/IP transmitter is forced into a fast retransmission. In
The permitted queue latency may be increased stepwise in the transition between the different zones, i.e. on or after the TCP/IP transmitter is forced into a fast retransmission, as depicted in
To sum up the invention the scheduler according to the invention selects the queue buffer device, or the queue buffer devices, that shall be used for transmitting data in the current scheduling interval based on channel performance for each UE and for allowed permitted queue latency for each queue. However, other mechanisms may also affect the queue selection decision for the scheduler.
Furthermore, the scheduler forces the TCP/IP transmitter to a fast retransmission mode in order to allow a longer latency time for a specific queue and thereby make it possible for the scheduler to select a more favourable scheduling interval, e.g. when the channel conditions for the UE that the queue belongs to are good, for that queue within the new longer maximum latency time.
The following description of the invention valid for
The rate measuring device measures the momentary data rate and forwards the information to the scheduler that comprises AQM. As long as the momentary rate increase, the scheduler knows that the TCP/IP-transmitter uses the slow start mode. During this phase the data latency in the queue is minimized by the scheduler (QUEUE_LATENCY=LATENCY_MIN), i.e. the queue buffer device is scheduled as often as possible in order to raise the TCP/IP rate as fast as possible. When the scheduler determines that the TCP-IP rate is too high due to e.g. fairness, the scheduler orders the queue to drop the latest segment. This means that the scheduler forces the TCP/IP transmitter to a fast retransmission mode and that the TCP/IP rate is reduced to half the current TCP/IP rate. At the same time, the scheduler increases an internal parameter QUEUE_LATENCY to QUEUE_LATENCY=QUEUE_LATENCY+DELTA_LATENCY. The scheduler will now permit longer latency times in the buffer. Hence the scheduling gain can increase.
After the fast retransmission, the TCP/IP-transmitter will use the congestion avoidance mode, which means that the TCP/IP rate will increase essentially linearly. When the scheduler again decides that the rate is too high, the same procedure is performed again. The scheduler orders the queue to drop the oldest segment which leads to fast retransmission and that the TCP/IP rate will be reduced to half the current TCP/IP rate. The QUEUE_LATENCY will again be increased with DELTA_LATENCY that again leads to that the scheduling gain will be increased.
This increment of QUEUE_LATENCY can continue until it reaches a maximum permitted latency time. In such a case QUEUE_LATENCY is not incremented.
The QUEUE_LATENCY may be increased more often than each time a fast retransmission is provoked. In such a case the DELTA_LATENCY has reasonably to be smaller. The absolute value shall be set so that it can be ensured that the RTT estimator in the TCP/IP transmitter can follow the changes in RTT.
The RATE MEASUREMENT measure continuously the momentary TCP/IP rate. If this measurement detects that the rate is under a certain minimum rate (MIN_RATE) it means that we have detected that the TCP/IP transmitter has restarted in ‘slow start mode’. There can be several reasons why the TCP/IP transmitter restarts in slow start.
When the RATE MEASUREMENT device informs the scheduler that the transmission has re-entered slow start-mode, the scheduler resets the QUEUE_LATENCY parameter to LATENCY_MIN. This leads to that the scheduler again minimizes the permitted queue latency in order to raise the TCP/IP rate as fast as possible.
One benefit of the invention is that the scheduler can wait with transmission until the channel performance to the UE is good. Such handling leads to increased scheduling gain since data is transmitted only when the channel is good. However, the higher latency will lead to higher RTT seen for the TCP/IP sender and thereby the TCP/IP rate will ramp up more slowly.
The invention minimizes the round trip time, RTT, during a slow start-phase resulting in that the TCP/IP rate increase is maximized. Then, when the TCP/IP rate have entered a congestion avoidance-phase (which is equal to that the TCP/IP rate has reached a high level), the permitted data latency in the base station can be increased for better scheduling gain.
Here “better scheduling gain” refers to the increased total data rate in a cell that can be achieved due to the fact that the probability to be able to send data over a good channel increases when the transmission opportunity can be selected over a longer time, i.e. the permitted data latency in the Node. Another prerequisite to utilize the scheduling gain is that the scheduler has several UEs to select between when it shall decide to which UE data shall be transmitted to in a specific transmission opportunity. Scheduling gain is achieved when at least one of these UEs has good channel quality
One advantage of the invention is that the permitted data latency time in the queue buffer is increased smoothly which gives a round trip time, RTT, estimator in the TCP/IP transmitter that can follow the changes in RTT. This will further lead to minimized risk of a round trip time timeout, RTO, which would have led to a slow start mode due to changes in RTT.
The RTT estimator is a function in the TCP protocol that is assigned to adapt the TCP protocol to a connection with arbitrary round trip time. The timer for round trip time out (RTO) is then set as a function of the estimated round trip time.
The invention allows the possibility to combine the desire to have low latency in the TCP/IP transmitter in order to have a fast rate ramp up, with the desire to have high latency in the scheduler in order to achieve high scheduling gain. High scheduling gain results in higher total data throughput that will be a benefit for all UEs in the cell.
Patent | Priority | Assignee | Title |
10079782, | Mar 31 2016 | Mellanox Technologies, LTD | Facilitating communication of data packets using credit-based flow control |
10235278, | Mar 07 2013 | International Business Machines Corporation | Software testing using statistical error injection |
10405238, | May 22 2015 | Samsung Electronics Co., Ltd. | Method and apparatus for managing buffer in wireless communication system |
10412634, | Aug 13 2015 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Predictive adaptive queue management |
10623997, | Feb 05 2016 | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | Mobile terminal, a buffering module, and methods therein for uploading a file in a communications network |
9647916, | Oct 27 2012 | ARRIS ENTERPRISES LLC; ARRIS | Computing and reporting latency in priority queues |
Patent | Priority | Assignee | Title |
5629937, | Mar 23 1994 | Roke Manor Research Limited; Siemens Aktiengesellschaft | Apparatus and method for ATM queuing and scheduling |
7065581, | Jun 27 2001 | International Business Machines Corporation | Method and apparatus for an improved bulk read socket call |
7272111, | Aug 09 2001 | The University of Melbourne; HEWLETT-PACKARD AUSTRALIA LIMITED; UNIVERSITY OF MELBOURNE, THE | Active queue management process |
7453801, | Nov 08 2001 | Qualcomm Incorporated | Admission control and resource allocation in a communication system supporting application flows having quality of service requirements |
7571247, | Dec 12 2005 | International Business Machines Corporation | Efficient send socket call handling by a transport layer |
7596086, | Nov 05 2003 | TP-LINK USA CORPORATION | Method of and apparatus for variable length data packet transmission with configurable adaptive output scheduling enabling transmission on the same transmission link(s) of differentiated services for various traffic types |
7720085, | May 06 2002 | CA, INC | Method and apparatus for controlling transmission flow using explicit rate control and queuing without data rate supervision |
20030088690, | |||
20040213264, | |||
20050226249, | |||
20060104313, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 18 2006 | Telefonaktiebolaget LM Ericsson (publ) | (assignment on the face of the patent) | / | |||
Dec 21 2006 | CARLSSON, ROLAND | TELEFONAKTIEBOLAGET LM ERICSSON PUBL | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 024145 | /0743 |
Date | Maintenance Fee Events |
Feb 08 2016 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Mar 30 2020 | REM: Maintenance Fee Reminder Mailed. |
Sep 14 2020 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Aug 07 2015 | 4 years fee payment window open |
Feb 07 2016 | 6 months grace period start (w surcharge) |
Aug 07 2016 | patent expiry (for year 4) |
Aug 07 2018 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 07 2019 | 8 years fee payment window open |
Feb 07 2020 | 6 months grace period start (w surcharge) |
Aug 07 2020 | patent expiry (for year 8) |
Aug 07 2022 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 07 2023 | 12 years fee payment window open |
Feb 07 2024 | 6 months grace period start (w surcharge) |
Aug 07 2024 | patent expiry (for year 12) |
Aug 07 2026 | 2 years to revive unintentionally abandoned end. (for year 12) |