PACKET DATA TRANSMISSION CONTROL

Abstract: A packet data transmission network system is disclosed which comprises a receiver (1), a sender (2) for transmitting data packets to the receiver (1) through a packet data connection via a network element (3). The receiver (1) acknowledges each received data packet by an acknowledgment message which contains header data comprising a window size, the number of transmitted bytes for which the sender (2) has not received an acknowledgment from the receiver (1) being not allowed to exceed the window size. The network element (3) buffers data packets transmitted by the sender (2) and examines and modifies the header data. According to the invention, the network element (3) detects transmission conditions and modifies the window size accordingly.

Description: TITLE OF THE INVENTION Packet data transmission control. FIELD OF THE INVENTION The present invention relates to a packet data transmission network system and method and a network element such as an SGSN (Serving GPRS Support Node) network element for setting a window size in a system like GPRS/3G (General Packet Radio Service/Third Generation) . BACKGROUND OF THE INVENTION In a network system in which a receiver like a mobile terminal has a packet data connection such as TCP/IP (Transport Control Protocol/Internet Protocol) to a sender like a service provider, a windowing mechanism is used to make transmitting operations more efficient. In a transmitting operation, the service provider sends TCP/IP data packets to the mobile terminal and the mobile terminal acknowledges the receipt of the packets via acknowledgment messages. The windowing mechanism allows the sender to send several packets before receiving an acknowledgment. The maximum window size is specified in each acknowledgment message as the number of bytes the receiver, i.e. the mobile terminal, is still able to receive. For this purpose, the TCP header contains a field in which the maximum window size is determined. The sender, i.e. the service provider, is not allowed to exceed the maximum window size and may only send packets up to this limit. In systems with a radio part such as GSM/GPRS (Global System for Mobile communications/ General Packet Radio Service) and UMTS (Universal Mobile Telecommunications System) the transmission rate can vary because of bad radio conditions. The rate decreases when the mobile system specific error correcting protocol such as LLC (Logical Link Control) has to interrupt the normal transmission and perform retransmissions. Also other factors like the available radio capacity may decrease the rate for most effective packet transmission. When the transmission rate decreases for a TCP/IP packet data connection the downlink IP packets (the packets sent by the service provider) have to be buffered. In GPRS the buffering takes place in an SGSN network element. If the rate decreases for a long time, TCP retransmission timers for the buffered packets might expire since they cannot be acknowledged. In addition, there might be not enough buffering space in the SGSN network element so that some packets have to be discarded. Therefore, an adverse change in radio conditions and/or buffering space results in transmission inefficiency and unnecessary retransmissions over the TCP connection because the sender is not aware of the changed conditions. Thus, the sender has somehow to be informed that the ability of the mobile terminal to receive packets has temporarily decreased and IP packets should not be sent as fast as before. This must be effected with standardized methods since it cannot be required for the sender to know any mobile system specific means. In normal operation, TCP/IP makes use of slow start and congestion avoidance algorithms to deal with errors. Hence, the window size is dropped when a time-out occurs and is then slowly increased. The sender then waits for an acknowledgment message of a TCP/IP packet from the receiver. Because the packet is buffered or discarded in the SGSN network element a timer in the sender expires and slow start and congestion avoidance are applied in combination with retransmission of the unacknowledged data packets. Thus, the sender sends only one packet (or a few packets) before it receives an acknowledgment message and then increases the window size step by step and sends more before next acknowledgments. This also works in cellular packet transmission but a retransmission is required for slow start and congestion avoidance to start. The slow start and congestion avoidance is even slower in again adapting to improved conditions if the decreased conditions where only temporal. The IP protocol family includes a protocol called ICMP (Internet Control Message Protocol) which specifies a message called Source Quench to advise the sender that it should slow down the transmission. Later, if no Source Quench messages are received for a while the sender again slowly increases the transmission rate. However, the adaptation speed to the changed conditions is slow. Moreover, some firewalls also filter out the Source Quench message so that the sender does not get the information. In the patent application WO96/36150 a digital data transmission system is defined in which the transmitting and receiving parties can change the size of a sliding window when one or both of them receive information from control means that the data transmission capacity of the connection has changed. However, in a case when the transmitting and receiving parties do not even know about any reason to change the window size, no adaptation to changed conditions takes place and unnecessary retransmission may have to be performed. Furthermore, a method called Fast Recovery is known that tries to enhance the adaptation speed to better conditions. However, this method still requires at least one retransmission. Moreover, the Fast Recovery is adapted to operate with congested routers and not radio conditions so that it does not work in a very optimal way with cellular packet data because the characteristics of the service degradation are very different. SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide a reliable and fast adaptation of the transmission speed of a sender while unnecessary retransmissions are avoided. According to the present invention, this object is achieved by a packet data transmission network system comprising: a receiver; and a sender for transmitting data packets to the receiver through a packet data connection via a network element, the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender has not received an acknowledgment from the receiver being not allowed to exceed the window size; wherein said network element buffers data packets transmitted by the sender and examines and modifies the header data; characterized in that said network element detects transmission conditions and modifies the window size accordingly. Moreover, the object is achieved by a packet data transmission method comprising the steps of: transmitting data packets from a sender to a receiver through a packet data connection via a network element, the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender has not received an acknowledgment from the receiver being not allowed to exceed the window size; and buffering, in said network element, transmitted data packets and examining and modifying the header data; characterized by the step of: detecting transmission conditions and modifying the window size accordingly. In addition, the object is achieved by a network element in a packet data transmission network system, comprising: buffering means for buffering data packets transmitted by a sender to a receiver through a packet data connection, the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender has not received an acknowledgment from the receiver being not allowed to exceed the window size; and examining means for examining and modifying the header data; characterized by detecting means for detecting transmission conditions; and modifying means for modifying the window size according to the detected transmission conditions. According to the present invention, the information about the receiving ability of a receiver can be sent to the sender right away or even in advance, in case decreasing conditions are detected in the mobile system. Furthermore, according to the present invention, the throughput and efficiency of TCP/IP connections through packet data in GPRS/3G is optimized. The present invention is fully compliant with existing TCP/IP stacks and requires therefore no modification of the involved parties. Only the header compression routine (or a routine logically close to the header compression) in the SGSN network element requires new code . Further features of the present invention are defined in the dependent claims. In the following, a preferred embodiment of the present invention will be described in connection with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 shows a schematic block diagram of a packet data transmission network system according to the present invention. Fig. 2 shows a flowchart of an example of the operation of an SGSN network element for optimizing a window size according to the present invention. DESCRIPTION OF THE PREFERRED EMBODIMENT Fig. 1 shows a schematic block diagram of a packet data transmission network system according to the present invention. According to Fig. 1, a receiver 1 like a mobile terminal has a packet data connection such us TCP/IP with a sender 2 like a service provider. In the system which may comprise a radio part, a network element 3 is used for buffering downlink TCP/IP data packets sent from the service provider 2 via a GGSN (Gateway GPRS Support Node) during a transmission operation and for performing TCP/IP header compression. In GPRS, the network element 3 may be a Serving GPRS Support Node (SGSN) . According to UMTS, the network element 3 may be a Radio Network Controller (RNC) . In a transmission operation, the service provider 2 sends TCP/IP data packets to the mobile terminal 1 via the GGSN, the network element 3 and an RAN (Radio Access Network) , and the mobile terminal 1 acknowledges the receipt of the data packets using acknowledgment messages. In order to make the transmission more efficient, in TCP/IP there is used a windowing mechanism. According to this windowing mechanism, each TCP packet contains a field that tells how many bytes the receiver is still able to receive. Thus, the service provider 2 knows how many bytes still can be sent, and it is possible to send the next packet before an acknowledgment message for the previous packet is received. Hence, the window size determines how many new packets can be sent before the acknowledgment for the previous packet is received. In the following, an example of the operation of the SGSN network element 3 for optimizing the window size will be described with reference to the flowchart in Fig. 2. The SGSN network element 3 which is aware of radio conditions and its buffering capacity present during a transmission operation monitors the TCP window field in the acknowledgment messages (step SI). When the SGSN network element 3 detects that the radio conditions are getting poorer, i.e. the transmission rate decreases (step S2), the SGSN network element 3 starts changing the window size field of the mobile terminal 1 to a lower value or even to 0 in the TCP/IP connection (step S3) . Hence, the service provider 2 is not allowed to send any packets when the window size is 0 and the downlink traffic will thus be decreased. In step S4, the SGSN network element checks whether the conditions are getting better or whether it has no large amount of data buffered anymore for the connection. If YES in step S4, the SGSN network element 3 quits changing the TCP window field and allows the mobile terminal 1 to specify a normal window size (step Sβ) . On the other hand, if NO in step S4, the SGSN network element checks whether the window size is larger than 0 (step S5) , and if YES, reduces the window size again. As a result, according to the present invention a method is provided to inform the service provider 2 as the sender of TCP/IP packets to decrease the sending rate so that retransmissions can be avoided. Conventionally, TCP fields are not touched by any intermediate node but according to the present invention, the SGSN network element 3 modifies the window field to achieve reliable and fast adaptation to changed conditions. With the TCP window size modification according to the present invention which is carried out by the SGSN network element 3, the adaptation to better conditions is very fast since the extra knowledge of the SGSN network element about changed conditions can be used in modifying the window size in the acknowledgment message. According to the TCP window size optimization of the present invention, the window size can be adapted with high speed to changed conditions. When the SGSN network element 3 detects an adversely change in conditions, the SGSN network element 3 sets the window size in the acknowledgment message to a lower value or even to 0. If the SGSN network element 3 detects that the conditions are getting better it stops setting the window size to a lower value and, thus, the rate can instantly be increased. Furthermore, the TCP window field approach according to the present invention enables better fine tuning of the connection since the window size has not to be set immediately to 0. The TCP window size optimization according to the present invention needs to be applied to all active TCP connections for the specific mobile terminal. This, however, does not increase the complexity since the same modifying operation can be done for all these connections as they end up in the same mobile terminal. The present invention can be implemented in connection with the TCP/IP header compression in which the SGSN network element examines and modifies the TCP headers anyway. This makes the implementation of this invention quite easy. According to the present invention, the throughput and efficiency of TCP/IP connections through packet data in GPRS/3G is optimized. The present invention is fully compliant with existing TCP/IP stacks and requires therefore no modification of the involved parties. Only the header compression routine (or a routine logically close to the header compression) in the SGSN network element requires new code. While the invention has been described with reference to a preferred embodiment, the description is illustrative of . the invention and is not to be construed as limiting the invention. Various modifications and applications may occur to those skilled in the art without departing from the true spirit and scope of the invention as defined by the appended claims .

Claims: CLAIMS : 1. A packet data transmission network system comprising: a receiver (1); and a sender (2) for transmitting data packets to the receiver (1) through a packet data connection via a network element (3) , the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender (2) has not received an acknowledgment from the receiver (1) being not allowed to exceed the window size; wherein said network element (3) buffers data packets transmitted by the sender (2) and examines and modifies the header data; characterized in that said network element (3) detects transmission conditions and modifies the window size accordingly. 2. The system according to claim 1, wherein said network element (3) modifies the window size to a lower value when it detects a decreasing quality of transmission conditions. 3. The system according to claim 1 or 2, wherein said network element (3) quits modifying the window size when it detects that the quality of transmission conditions is increasing and allows the receiver (1) to set the window size normally. 4. The system according to any one of claims 1 to 3, wherein the transmission conditions detected by said network element (3) comprise radio conditions. 5. The system according to any one of claims 1 to 3, wherein the transmission conditions detected by said network element (3) comprise buffering conditions of data packets at said network element (3) . 6. The system according to any one of claims 1 to 5, wherein the packet data connection is a TCP/IP connection. 7. The system according to any one of claims 1 to 6, wherein said network element (3) is an SGSN network element performing header compression, 8. A network element (3) in a packet data transmission network system, comprising: buffering means for buffering data packets transmitted by a sender (2) to a receiver (1) through a packet data connection, the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender (2) has not received an acknowledgment from the receiver (1) being not allowed to exceed the window size; and examining means for examining and modifying the header data; characterized by detecting means for detecting transmission conditions; and modifying means for modifying the window size according to the detected transmission conditions. 9. The network element according to claim 8, wherein said modifying means modifies the window size to a lower value when said detecting means detects a decreasing quality of transmission conditions. 10. The network element according to claim 8 or 9, wherein said modifying means quits modifying the window size when said detecting means detects that the quality of transmission conditions are increasing. 11. The network element according to any one of claims 8 to 10, wherein the transmission conditions detected by said detecting means comprise radio conditions. 12. The network element according to any one of claims 8 to 10, wherein the transmission conditions detected by said detecting means comprise buffering conditions of data packets at said buffering means. 13. A packet data transmission method comprising the steps of: transmitting data packets from a sender (2) to a receiver (1) through a packet data connection via a network element (3), the receiver acknowledging each received data packet by an acknowledgment message containing header data comprising a window size, the number of transmitted bytes for which the sender (2) has not received an acknowledgment from the receiver (1) being not allowed to exceed the window size; and buffering, in said network element (3) , transmitted data packets and examining and modifying the header data; characterized by the step of: detecting (SI, S2) transmission conditions and modifying (S3-S5) the window size accordingly.

Inventors: BERGENWALL MARTIN, BERGENWALL, MARTIN
Applicants: BERGENWALL MARTIN, NOKIA NETWORKS OY, BERGENWALL, MARTIN
Application year: 1999
Main classification: H04L12
IPC codes: H04L12, H04L29