[go: up one dir, main page]

WO2001037493A1 - Method and device for improving a data throughput in a communication system - Google Patents

Method and device for improving a data throughput in a communication system Download PDF

Info

Publication number
WO2001037493A1
WO2001037493A1 PCT/EP2000/010693 EP0010693W WO0137493A1 WO 2001037493 A1 WO2001037493 A1 WO 2001037493A1 EP 0010693 W EP0010693 W EP 0010693W WO 0137493 A1 WO0137493 A1 WO 0137493A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
data packet
protocol layer
data packets
layer
Prior art date
Application number
PCT/EP2000/010693
Other languages
French (fr)
Inventor
Stephan Baucke
Reiner Ludwig
Michael Meyer
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
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 Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to EP00979524A priority Critical patent/EP1230764A1/en
Priority to JP2001538340A priority patent/JP2003515273A/en
Priority to AU16981/01A priority patent/AU1698101A/en
Publication of WO2001037493A1 publication Critical patent/WO2001037493A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/321Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]

Definitions

  • the invention relates to a method and a device for increasing a data throughput in a data transmission via a communication network .
  • Communication networks of this type include mobile cellular networks such as GSM (Global System for Mobile Communication) or GPRS (General Packet Radio Service) .
  • GSM Global System for Mobile Communication
  • GPRS General Packet Radio Service
  • the communication between partner instances is realized by means of a protocol stack.
  • a protocol stack comprises several protocol layers lying on top of each other, whereby a communication between the neighboring protocol layers takes place.
  • the data received or made available for the transmission are released from one layer to the directly neighboring layer. It is the task of a layer, among others, to process the data, whereby the segmentation thereof is one part of the processing.
  • the data size of a layer exceed the size of the data packets which can be transmitted via a physical connection. For this reason the data is divided into smaller data packets which are successively arranged for a transmission.
  • the data are formatted on each protocol layer.
  • the formatting of the data includes particularly the addition of the control data characteristic for each protocol layer.
  • control data are attached at the beginning of a data packet in the form of the so-called header and/or at the end in the form of the so-called tail.
  • the actual data are contained in the user field.
  • processing of the data packet is explained in more detail by means of the TCP/IP protocol stack.
  • the TCP/IP (Transmission Control Protocol/Internet Protocol) protocol stack is the standardized protocol stack for internet applications. Said protocol stack comprises five protocol layers.
  • the uppermost layer, the application layer comprises the application directly used by a user, e.g. WWW, FTP or email.
  • the application layer communicates with transport layer arranged thereunder.
  • the tasks of said layer are fulfilled by- transport protocols such as TCP (Transmission Control Protocol) or UDP (User Datagram Protocol) .
  • TCP Transmission Control Protocol
  • UDP User Datagram Protocol
  • the network layer including the internet protocol (IP) is arranged underneath the transport layer.
  • IP internet protocol
  • the two lowermost layers, the link layer and the physical layer can be combined under the term of network-oriented layer, since they are specifically defined in response to the underlying networ .
  • the transport protocol TCP offers a reliable transport service of data between two communicating partners. Reliability in this respect refers to the avoidance of errors, maintenance of sequence and protection against data losses and duplicates.
  • the transport protocol TCP was originally drafted for the application in fixed networks. In order to meet the conditions of a fixed network, a number of laborious algorithms were implemented in TCP, for example, for avoiding the occurrence of congestions in network nodes or overload situations of the network.
  • the individual mechanisms such as the so-called sliding window mechanism, the cumulative acknowledgment scheme, the so-called Slow-Start-Algorithm or the so-called Congestion Avoidance Algorithm, will not be described in more detail. The exact description of said methods can be inferred from combatTCP/ IP. Illustrated, Volume 1" by W. Richard Stevens.
  • a method which is hereinafter entered into more closely, refers to the detection and correction of packet losses .
  • the principal mechanism of TCP detecting the loss of data packets consists in the use of time alarms, the so-called timeouts .
  • a timeout is connected with a time interval provided for the implementation of a certain task. If the task is not realized within said time interval, a timeout occurs.
  • a time interval - the so-called RTT (Round Trip Time) - is defined, which specifies the time elapsing between the transport of a TCP packet to the IP layer and the receipt of a pertinent acknowledgment message from a receiver that said data packet was correctly received. Said time interval allows the adjustment to different transmission conditions.
  • An RTO Retransmission Timeout
  • An RTO relates to the time at which a retransmission of data packets takes place, for which no acknowledgment message on the receipt of said data packets has been received. The exact calculation of the RTO can be inferred from RFC 793,
  • GSM Global System for Mobile Communication
  • GPRS General Packet Radio Service
  • UMTS Universal Mobile Telecommunication System
  • EDGE Enhanced Data rates for GSM Evolution
  • IMT- 2000 IMT- 2000
  • An error recognized in the transmission of a data packet is corrected by a method for securing a reliable service.
  • a method for securing a reliable service is the ARQ (Automatic Repeat Request) .
  • ARQ Automatic Repeat Request
  • a copy of the data packet is prepared and stored on the sending side for each sent data packet, until the receiver acknowledges the correct receipt of the sent data packe .
  • the receiver checks the received data packet and acknowledges the correct receipt by sending an acknowledgment message, or he discards the data packet and informs the sender about the necessity of retransmitting the same data packet.
  • Said information either takes place by sending a message, or when the corresponding time interval for the receipt of a positive message at the sending side has expired, e.g. the RTO.
  • the sender takes the copy of the data packet from the buffer and transmits it anew.
  • the previous errors are corrected.
  • the strategy of the exponential enlargement of the RTO, the so-called exponential backoff, used by the TCP results in a deterioration of the transmission throughput. Said strategy is used for dealing with overload situations. Due to the fact that in general transmission errors rarely occur on the wire-bound transmission links, for which TCP was originally designed, the major part of all packet losses is due to congestions in network nodes caused by overload. For this reason strategies for avoiding the occurrence of congestions such as the so- called exponential backoff, are used in TCP.
  • the RTO is set at double the value of the previous RTO value once an error occurs . Assuming that the first retransmission of a non-received data packet takes place 1.5 seconds after the data packet was initially sent.
  • the RTO is increased by double the value, i.e. a retransmission takes place after 3, 6, 12, 24, 48 and 64 seconds.
  • the value then remains constant, i.e. always after 64 seconds a new attempt will be made to retransmit the unacknowledged data packet.
  • 64 seconds is the upper limit specified in the implementation of TCP/IP in the operating system Unix 4.3BSD by
  • the above-described example shows that the RTO rapidly grows if several successive retransmissions get lost during a temporary failure on the transmission route, whereby in the most unfavorable case a retransmission of a data packet takes place after 64 seconds. In other words, a long time may elapse until the retransmission takes place once the temporary failure has been removed.
  • the link layer is responsible for the so-called point-to-point connection, i.e. for the connection between two directly communicating network nodes. Therefore, it is not necessary on the link layer to provide mechanisms for avoiding overload situations in network nodes, as is the case in TCP. For this reason a TCP packet, which was previously formatted to an IP packet on the network layer and then released to the link layer, is immediately made available for the transmission on the link layer when the transmission link is working again.
  • the time during which a data packet is intermediately stored on the link layer depends on the underlying communication network. If the time, however, is correspondingly long, so that a data packet is retransmitted on the TCP layer, several duplicates of a data packet are buffered on the link layer in case of a lasting malfunction.
  • TCP attempts to retransmit a data packet for 9 minutes . If the above-described example mentioning the times at which a retransmission takes place is used in this case, it means that 12 retransmissions of the same data packet take place for 9 minutes. Accordingly 12 copies of the same data packet are buffered on the link layer. This happens on the basis of the assumption that the time, during which the data packets are stored on the link layer, is correspondingly long.
  • Another advantage relates to the reduction of the memory space on the sending side as well as on the receiving side, which is achieved by discarding redundant data packets on the sender's link layer.
  • Fig. 1 shows a flow chart of the inventive method
  • Fig. 2 shows an illustration of a GPRS protocol stack in a terminal
  • Fig. 3 shows an illustration of a TCP header
  • Fig. 4 shows an illustration of an IP header.
  • a first device for example a sender
  • data packets are generated from application data on the basis of a hierarchic structure of a protocol stack, in order to provide the application data for a transmission.
  • the data packets of a first protocol layer are generated in a first step 1, which layer will hereinafter be designated as protocol layer A.
  • Said data packets are exactly identified by means of corresponding features .
  • Upon the generation of the data packets they are provided for at least another protocol layer hereinafter designated as protocol layer B, 2. If no data packets of protocol layer A already exist in protocol layer B, the data packet released from protocol layer A is stored, 4.
  • step 5 it is compared in step 5 by means of the features exactly identifying each data packet whether the data packet present in protocol layer B and the just released data packet are redundant.
  • the number of comparisons to be made thereby depends on the number of data packets of protocol layer A present in protocol layer B. If a redundancy of two data packets is found, 6, a data packet is discarded, 7.
  • the data packet of protocol layer A is stored in protocol layer B, if the data packets are not redundant, 8. In this respect data packets are called redundant, if they are either identical or if it is found on the basis of the features exactly identifying each data packet that one data packet is contained in another one.
  • data packet contained in the other one is discarded.
  • data packets of protocol layer A when released to protocol layer B, can be sub-divided into smaller data packets of protocol layer B. In this case data packets are found to be redundant through the comparison of the data packet of protocol layer A with the data packets of protocol layer B, which in combination result in a data packet of protocol layer A. If a data packet just released from protocol layer A and a
  • ⁇ 1 data packet of protocol layer A sub-divided into smaller data packets on protocol layer B are found to be redundant, either the just released data packet of protocol layer A is discarded, or the data packets of protocol layer B forming the redundant data packet of protocol layer A are discarded.
  • data packets of protocol layer A are generated on a first protocol layer, protocol layer A, with means for generating data packets .
  • the means for providing data packets releases the data packets of protocol layer A for at least an additional protocol layer, protocol layer B.
  • Said data packets are stored on protocol layer B with means for buffering the data packets, unless a redundant data packet already exists on protocol layer B.
  • the redundancy of data packets is found with means for comparing data packets .
  • the comparison is carried out by means of the features exactly identifying each data packet.
  • the transport of the data packets provided for the transmission is realized with sending means.
  • the receipt of a data packet by a receiver is acknowledged by sending an acknowledgment message.
  • the receipt of said message at the sending side is realized with receiving means.
  • the present invention is used in each architecture, in which in a sending unit at least two separately operating methods for providing a reliable service are integrated in a protocol stack.
  • the task of a method for providing a reliable service is, for instance, fulfilled by the ARQ method.
  • a copy of each transmitted data packet is generated and stored at the sending side.
  • the copy of the sent data packet is deleted from the buffer, if an acknowledgment message on the correct receipt of the message is received from a receiver. If no acknowledgment message is received or if a negative acknowledgment message is received, the same data packet is retransmitted.
  • the missing acknowledgment receipt and the retransmission of a data packet are controlled by means of so- called timeouts.
  • the invention is applied in an architecture, in which methods for providing a reliable service are integrated in a protocol stack on different protocol layers forming part of different protocols, for example in a protocol stack, where the TCP is available on the transport layer and the RLC (Radio Link Control) on the link layer, or where a TCP is introduced over another TCP.
  • a protocol stack where the TCP is available on the transport layer and the RLC (Radio Link Control) on the link layer, or where a TCP is introduced over another TCP.
  • RLC Radio Link Control
  • GPRS General Packet Radio Service
  • IP internet protocol
  • TCP Transmission Control Protocol
  • the application layer comprises available applications.
  • the application layer forms the uppermost layer with the applications running on said layer such as WWW (World Wide Web) .
  • Said layer directly communicates with the transport layer, in this case the TCP, the task of which is to provide a reliable service.
  • the application data are first sub-divided into TCP data packets.
  • a TCP data packet comprises a header and a data field.
  • the data field comprises part of the application data.
  • the size of said field depends on the selected size of the TCP packet.
  • the structure of a TCP header is shown in igure 3.
  • a TCP message header comprises data among others required for the fragmentation and the error recognition.
  • Figure 3 illustrates a complete TCP header with the control data contained therein.
  • the sequence number identifies the position of the data of the data packet in the corresponding data flow. For this purpose an initial value for the sequence number of the respective data flow is declared when a connection is set up. Thereafter the sequence number for each byte is increased by one. The position of a byte in the data flow results from the difference of the sequence number of said byte and the initially declared sequence number. The sequence numbers thereby allow the combination of the received data packets at the receiving side in the correct order.
  • the source and destination port number identify the sending and the receiving application .
  • the RTO Retransmission Timeout
  • the RTO Retransmission Timeout
  • An additional processing of the data takes place on the network layer.
  • IP internet protocol
  • the tasks of the network layer are fulfilled by the internet protocol, the so-called IP.
  • IP has the property that the exchange of data is unreliable, i.e. the IP does not guarantee that every IP data packet reaches the receiver. Also IP data packets can be received by the receiver in an incorrect sequence or as duplicates.
  • TCP it is the task of TCP to detect the faulty transmission and to correct the errors. The errors can be detected in different ways, as was already explained. The correction of the error is done through a retransmission of the faulty data packet.
  • the data packets released to the network layer are intermediately stored on the TCP protocol layer. A data packet is only deleted from the buffer at the sending side when it has been secured that the data packet was really correctly received by the receiver, which takes place after the receipt of an acknowledgment message.
  • IP datagrams An important task of IP lies in the formatting of the TCP data packets, more exactly in the packing of the TCP data packets into IP data packets .
  • the IP data packets generated by IP are called IP datagrams .
  • an IP datagram consists of a header containing the control data and of a data field in which a TCP data packet is embedded.
  • the feasibility of the invention is based on the examination of an IP data packet and on the comparison with an additional IP data packet. In this respect particularly the fields of an IP data packet guaranteeing an exact identification of each packet are examined. For this reason said fields are referred to as features exactly identifying each data packet, and they will hereinafter be dealt with in more detail .
  • IP IP header
  • IP version 4 IP version 4
  • IP version 6 IP version 6
  • Figure 4 illustrates an IPv4 datagram.
  • the fields protocol, source address and destination address are particularly relevant for the invention.
  • the protocol field expresses the protocol type of the data flow in question, for example TCP.
  • TCP protocol type of the data flow in question
  • the fields source address and destination address correspondingly comprise the addresses of the receiver and the sender.
  • said fields correspond with each other in view of the data packets to be compared, another examination has to be performed in the TCP header in order to secure the redundancy or even identity of the data packets .
  • both applications are possibly carried out on one and the same terminal requesting access to one and the same server, both the destination address and the source address in the data packets to be compared correspond with each other.
  • different port numbers are allocated for the different applications and thus for the data flows . Said port numbers identify a corresponding data flow on the transport layer. The information in view of the port number are comprised in the header of a TCP packet, and when differentiating the data flow they are compared with each other in order to exactly determine the differences between the data flows.
  • sequence number is declared when setting up the connection. Thereafter the sequence number for each byte in the data flow is increased by one.
  • the sequence number of a following data packet is determined by means of the sequence number and the total length of the preceding data packet, and the position of a byte in the data flow results from the difference between the sequence number of said byte and the initial sequence number.
  • the redundancy of a data packet is determined, i.e. it is determined whether a data packet is contained in another one and whether they are even identical .
  • the described method for identifying the redundancy of a data packet is implemented in the presently used fourth version of the IP, the IPv4.
  • the IPv6 said method is based on the same principle, i.e. on the comparison of the information comprised by the data packet.
  • An allocation of a data packet to a data flow can be realized more efficiently by means of data flow identifiers, so-called flow label.
  • the major aim of the flow labels consists in a faster allocation of a data packet to a data flow, for example, in order to reduce the processing time in the intermediate nodes.
  • a header of an IPv6 datagram equally contains a destination and source address, which can be examined.
  • the IPv6 packet contains a TCP data packet, which can be analyzed in the same way as was already described.
  • the link layer Upon the generation of the IP datagrams, the latter are transferred to the directly underlying layer, the link layer.
  • the structure of the link layer depends on the underlying network. According to figure 2 the link layer in GPRS consists of several intermediate layers including the corresponding protocols .
  • the SNDCP (SubNetwork Dependent Convergence Protocol) provides convergence functionality to map different protocols of the
  • Said SNDCP includes, among others, the multiplexing of the data packets from the different protocols and the header compression, for example of the TCP/IP header. A segmentation of the data into packets equally takes place on said layer. Usually, however, the size of the SNDCP packets corresponds to the size of the IP packets.
  • the IP packets are buffered on said layer as long as the connection is not available for a transmission, for example, due to a temporary failure. If the time of the failure is correspondingly long so that the RTO value meanwhile runs on the TCP layer, a new transmission of an unacknowledged TCP data packet is initiated.
  • the TCP takes the data packet from its buffer and transfers it to the IP layer which generates an IP packet therefrom. Said packet again is transferred to the SNDCP.
  • the SNDCP examines the IP packet, in particular the fields in the IP and TCP header, and compares said fields with the corresponding fields of the data packets present on said layer. If it is found that an identical IP packet is already present on the SNDCP layer, one of the two packets is discarded. If the IP packet is not a redundant data packet of an already existing data packet, it is provided to the SNDCP layer and kept on said layer until the connection is again ready for a transmission.
  • the data packets are transferred from the SNDCP layer to the directly underlying layer, and according to figure 2 this is the LLC (Logical Link Control) layer.
  • LLC Logical Link Control
  • the LLC protocol can either operate in a so-called unreliable mode, in which packet losses are not taken into account, or in a so- called reliable mode guaranteeing a secured transport of data packets by means of repeating faulty data packets .
  • 1M invention is mainly used in the reliable mode, in which the data packets are buffered for being able to take them out of the buffer and transmit them anew in case a transmission error has occurred.
  • the present invention can equally be used on said layer, on which the SNDCP packets are intermediately stored.
  • Said layer keeps the SNDCP data packets in the buffer, until it is secured that said data packets have correctly been transmitted and received. If in the meantime a retransmission takes place on the transport layer, said data packet is transferred to the IP layer, to the SNDCP layer and consequently to the LLC layer.
  • the received data packet is compared with the data packets present on the LLC layer, anc. if a redundancy is detected, a redundant data packet is discarded.
  • the LLC data packets are thereupon transferred to the RLC (Radio Link Control) layer.
  • the data packets are subdivided again into smaller packets, the so-called frames, on said layer.
  • the error correction is carried out in the ARQ method in case the RLC operates in the reliable mode.
  • the reliable mode in which the occurred transmission errors are corrected
  • the unreliable mode in which the packet losses are not considered.
  • the LLC packets are buffered in the reliable mode.
  • the embodiment described in the invention relates to a GPRS network.
  • the invention may, however, be used in any other network, in which the data packets undelivered due to the nonavailability of a connection are buffered long enough, so that a retransmission of a data packet present on the link layer meanwhile takes place on the higher layers.
  • the invention may, however, be used in any other network having a first and at least one additional protocol layer.
  • the layers are provided with separately operating methods for providing a reliable service, and that the time interval for buffering a data packet on the at least one additional protocol layer is long enough to allow an initiation of a retransmission of a data packet on a first protocol layer resulting in the formation of redundant data packets on the at least one additional protocol layer.
  • the tasks of the first protocol layer are fulfilled by TCP and the tasks of the at least additional one of the protocol layers is fulfilled by the link layer. Both layers are provided with a method for providing a reliable service, which is fulfilled by means of the ARQ method.
  • networks in which the invention can be used, are a GSM (Global System for Mobile Communication) , a UMTS (Universal Mobile Telecommunication System) , an EDGE (Enhanced Data rates for GSM Evolution) or an IMT-2000 communicatior. network .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Small-Scale Networks (AREA)

Abstract

The invention relates to a method and a device for increasing a data throughput in a data transmission via a communication network. In this respect the data packets are examined for redundant data packets on the link layer (5). In case of a temporary transmission failure, the transmission of unacknowledged data packets is repeated on the transport layer (1). Said data packets are provided to the link layer (2). It is the task of the link layer to examine whether the released data packet is a redundant data packet of a data packet already present on the link layer (5). If the redundancy of the data packets is found, the redundant data packet is discarded (7). The data packet is stored on the link layer, if either no data packets are already present on the link layer (4) or if the data packets are not redundant (8).

Description

Method and device for improving a data throughput in a communication system
The invention relates to a method and a device for increasing a data throughput in a data transmission via a communication network .
Especially in communication networks having a low transmission rate it proves to be necessary to develop methods efficiently utilizing the low transmission rates between a sender and a receiver. Communication networks of this type include mobile cellular networks such as GSM (Global System for Mobile Communication) or GPRS (General Packet Radio Service) .
The communication between partner instances, for example between a sender and a receiver, is realized by means of a protocol stack. A protocol stack comprises several protocol layers lying on top of each other, whereby a communication between the neighboring protocol layers takes place. The data received or made available for the transmission are released from one layer to the directly neighboring layer. It is the task of a layer, among others, to process the data, whereby the segmentation thereof is one part of the processing. Frequently the data size of a layer exceed the size of the data packets which can be transmitted via a physical connection. For this reason the data is divided into smaller data packets which are successively arranged for a transmission. In addition, the data are formatted on each protocol layer. The formatting of the data includes particularly the addition of the control data characteristic for each protocol layer. Usually the control data are attached at the beginning of a data packet in the form of the so-called header and/or at the end in the form of the so-called tail. The actual data are contained in the user field. In the following the processing of the data packet is explained in more detail by means of the TCP/IP protocol stack.
The TCP/IP (Transmission Control Protocol/Internet Protocol) protocol stack is the standardized protocol stack for internet applications. Said protocol stack comprises five protocol layers. The uppermost layer, the application layer, comprises the application directly used by a user, e.g. WWW, FTP or email. The application layer communicates with transport layer arranged thereunder. The tasks of said layer are fulfilled by- transport protocols such as TCP (Transmission Control Protocol) or UDP (User Datagram Protocol) . In the following only TCP will be dealt with more closely, as this transport protocol is used for the communication of non-real time applications such as WWW, FTP or email. The network layer including the internet protocol (IP) is arranged underneath the transport layer. The two lowermost layers, the link layer and the physical layer, can be combined under the term of network-oriented layer, since they are specifically defined in response to the underlying networ .
The transport protocol TCP offers a reliable transport service of data between two communicating partners. Reliability in this respect refers to the avoidance of errors, maintenance of sequence and protection against data losses and duplicates. The transport protocol TCP was originally drafted for the application in fixed networks. In order to meet the conditions of a fixed network, a number of laborious algorithms were implemented in TCP, for example, for avoiding the occurrence of congestions in network nodes or overload situations of the network. The individual mechanisms such as the so-called sliding window mechanism, the cumulative acknowledgment scheme, the so-called Slow-Start-Algorithm or the so-called Congestion Avoidance Algorithm, will not be described in more detail. The exact description of said methods can be inferred from „TCP/ IP. Illustrated, Volume 1" by W. Richard Stevens.
1 A method, which is hereinafter entered into more closely, refers to the detection and correction of packet losses .
The principal mechanism of TCP detecting the loss of data packets, consists in the use of time alarms, the so-called timeouts . A timeout is connected with a time interval provided for the implementation of a certain task. If the task is not realized within said time interval, a timeout occurs. In the TCP, for example, a time interval - the so-called RTT (Round Trip Time) - is defined, which specifies the time elapsing between the transport of a TCP packet to the IP layer and the receipt of a pertinent acknowledgment message from a receiver that said data packet was correctly received. Said time interval allows the adjustment to different transmission conditions. An RTO (Retransmission Timeout) is calculated on the basis of the average value and the variance of the RTT. An RTO relates to the time at which a retransmission of data packets takes place, for which no acknowledgment message on the receipt of said data packets has been received. The exact calculation of the RTO can be inferred from RFC 793,
Transmission Control Protocol, September 1981. In view of the timeout-based error recognition the accuracy of the calculation of the RTO largely influences the throughput. If the timeout has been assessed too short, unnecessary data packets will be retransmitted. If, on the other hand, it is too long, too much time passes until the loss of a data packet is noticed and the data packet can be retransmitted. The calculation of an RTT is done dynamically during a transmission in order to capture the deviations in a transmission. Particularly problematical are networks having a specially high error rate in a data transmission thereby being characterized by high deviations in the transmission rates. Mobile cellular networks, such as GSM (Global System for Mobile Communication) , GPRS (General Packet Radio Service) , UMTS (Universal Mobile Telecommunication System) , EDGE (Enhanced Data rates for GSM Evolution) or IMT- 2000, are part of these networks.
^ An error recognized in the transmission of a data packet is corrected by a method for securing a reliable service. One example for said method is the ARQ (Automatic Repeat Request) . By this method a copy of the data packet is prepared and stored on the sending side for each sent data packet, until the receiver acknowledges the correct receipt of the sent data packe . The receiver checks the received data packet and acknowledges the correct receipt by sending an acknowledgment message, or he discards the data packet and informs the sender about the necessity of retransmitting the same data packet. Said information either takes place by sending a message, or when the corresponding time interval for the receipt of a positive message at the sending side has expired, e.g. the RTO. In this case the sender takes the copy of the data packet from the buffer and transmits it anew. Thus, the previous errors are corrected.
The strategy of the exponential enlargement of the RTO, the so- called exponential backoff, used by the TCP results in a deterioration of the transmission throughput. Said strategy is used for dealing with overload situations. Due to the fact that in general transmission errors rarely occur on the wire-bound transmission links, for which TCP was originally designed, the major part of all packet losses is due to congestions in network nodes caused by overload. For this reason strategies for avoiding the occurrence of congestions such as the so- called exponential backoff, are used in TCP. By means of this method the RTO is set at double the value of the previous RTO value once an error occurs . Assuming that the first retransmission of a non-received data packet takes place 1.5 seconds after the data packet was initially sent. Thereafter, the RTO is increased by double the value, i.e. a retransmission takes place after 3, 6, 12, 24, 48 and 64 seconds. The value then remains constant, i.e. always after 64 seconds a new attempt will be made to retransmit the unacknowledged data packet. 64 seconds is the upper limit specified in the implementation of TCP/IP in the operating system Unix 4.3BSD by
H the Computer Systems Research Group, University of California, Berkley.
The above-described example shows that the RTO rapidly grows if several successive retransmissions get lost during a temporary failure on the transmission route, whereby in the most unfavorable case a retransmission of a data packet takes place after 64 seconds. In other words, a long time may elapse until the retransmission takes place once the temporary failure has been removed.
For this reason it is more efficient to scan an unavailable connection on the link layer. The link layer is responsible for the so-called point-to-point connection, i.e. for the connection between two directly communicating network nodes. Therefore, it is not necessary on the link layer to provide mechanisms for avoiding overload situations in network nodes, as is the case in TCP. For this reason a TCP packet, which was previously formatted to an IP packet on the network layer and then released to the link layer, is immediately made available for the transmission on the link layer when the transmission link is working again. The time during which a data packet is intermediately stored on the link layer depends on the underlying communication network. If the time, however, is correspondingly long, so that a data packet is retransmitted on the TCP layer, several duplicates of a data packet are buffered on the link layer in case of a lasting malfunction.
Assuming the connection is not working for several minutes . This can happen if, for example, a subscriber is in an environment in which a radio connection is impossible, e.g. in a garage. In this case TCP attempts to retransmit a data packet for 9 minutes . If the above-described example mentioning the times at which a retransmission takes place is used in this case, it means that 12 retransmissions of the same data packet take place for 9 minutes. Accordingly 12 copies of the same data packet are buffered on the link layer. This happens on the basis of the assumption that the time, during which the data packets are stored on the link layer, is correspondingly long.
Accordingly it is an object of the present invention to provide a method and device that guarantees a more efficient provision of data at the sending side for an improved throughput in the data transmission in connection with packet-oriented applications .
According to the invention this object is provided by the teaching of patent claims 1 and 17 and by the teaching of patent claim 20.
It has thereby proved to be an advantage that the data throughput in the network is increased, for, due to the reduction of the number of redundant data packets or even of duplicates, the multiple transmission of an identical data packet via a communication network is not necessary.
Another advantage relates to the reduction of the memory space on the sending side as well as on the receiving side, which is achieved by discarding redundant data packets on the sender's link layer.
Further advantageous embodiments of the invention are disclosed in patent claims 2 to 16 and 18 and 19.
In the following the invention is explained in more detail by means of embodiments and figures, wherein
Fig. 1 shows a flow chart of the inventive method,
Fig. 2 shows an illustration of a GPRS protocol stack in a terminal ,
Fig. 3 shows an illustration of a TCP header, Fig. 4 shows an illustration of an IP header.
4 In the following the invention is explained in more detail by means of figure 1 and patent claim 1.
In a first device, for example a sender, data packets are generated from application data on the basis of a hierarchic structure of a protocol stack, in order to provide the application data for a transmission. According to figure 1 the data packets of a first protocol layer are generated in a first step 1, which layer will hereinafter be designated as protocol layer A. Said data packets are exactly identified by means of corresponding features . Upon the generation of the data packets, they are provided for at least another protocol layer hereinafter designated as protocol layer B, 2. If no data packets of protocol layer A already exist in protocol layer B, the data packet released from protocol layer A is stored, 4. If it is, however, found out in protocol layer B, 3, that in said protocol layer data packets of protocol layer A are already provided, it is compared in step 5 by means of the features exactly identifying each data packet whether the data packet present in protocol layer B and the just released data packet are redundant. The number of comparisons to be made thereby depends on the number of data packets of protocol layer A present in protocol layer B. If a redundancy of two data packets is found, 6, a data packet is discarded, 7. The data packet of protocol layer A is stored in protocol layer B, if the data packets are not redundant, 8. In this respect data packets are called redundant, if they are either identical or if it is found on the basis of the features exactly identifying each data packet that one data packet is contained in another one. In this case the data packet contained in the other one is discarded. Moreover, data packets of protocol layer A, when released to protocol layer B, can be sub-divided into smaller data packets of protocol layer B. In this case data packets are found to be redundant through the comparison of the data packet of protocol layer A with the data packets of protocol layer B, which in combination result in a data packet of protocol layer A. If a data packet just released from protocol layer A and a
~1 data packet of protocol layer A sub-divided into smaller data packets on protocol layer B are found to be redundant, either the just released data packet of protocol layer A is discarded, or the data packets of protocol layer B forming the redundant data packet of protocol layer A are discarded.
In the following the inventive device according to claim 17 is explained in more detail (without figure) . In the inventive device, data packets of protocol layer A are generated on a first protocol layer, protocol layer A, with means for generating data packets . The means for providing data packets releases the data packets of protocol layer A for at least an additional protocol layer, protocol layer B. Said data packets are stored on protocol layer B with means for buffering the data packets, unless a redundant data packet already exists on protocol layer B. The redundancy of data packets is found with means for comparing data packets . The comparison is carried out by means of the features exactly identifying each data packet. The transport of the data packets provided for the transmission is realized with sending means. The receipt of a data packet by a receiver is acknowledged by sending an acknowledgment message. The receipt of said message at the sending side is realized with receiving means.
The present invention is used in each architecture, in which in a sending unit at least two separately operating methods for providing a reliable service are integrated in a protocol stack. The task of a method for providing a reliable service is, for instance, fulfilled by the ARQ method. In the ARQ method a copy of each transmitted data packet is generated and stored at the sending side. The copy of the sent data packet is deleted from the buffer, if an acknowledgment message on the correct receipt of the message is received from a receiver. If no acknowledgment message is received or if a negative acknowledgment message is received, the same data packet is retransmitted. The missing acknowledgment receipt and the retransmission of a data packet are controlled by means of so- called timeouts. The invention is applied in an architecture, in which methods for providing a reliable service are integrated in a protocol stack on different protocol layers forming part of different protocols, for example in a protocol stack, where the TCP is available on the transport layer and the RLC (Radio Link Control) on the link layer, or where a TCP is introduced over another TCP. The latter case applies to a GGSN node in a GPRS network. A more detailed description can be inferred from GSM 03.60 Version 6.3.0.
In the following the invention is explained in more detail by means of an embodiment based on the GPRS communication network.
One example relating to a network, in which the invention can be used, is the GPRS (General Packet Radio Service) . GPRS is a packet-oriented network the principal task of which consists in an improved support of internet applications. For describing the invention, the GPRS protocol stack implemented in the terminal of a user is hereinafter illustrated by means of figure 2. The left-hand side of figure 2 shows a protocol stack with the corresponding protocols. The protocols on the physical layer, which can be seen on the right-hand side of figure 2, are designated Phy. The protocols of the physical layer will not be dealt with in more detail. MAC, RLD, LLC and SNDCP constitute the protocols of the link layer. The following embodiment is based on said protocols . The internet protocol (IP) represents a protocol of the network layer, and TCP (Transmission Control Protocol) a protocol of the transport layer. The application layer comprises available applications.
In the following the protocol stack illustrated by figure 2 is explained in more detail .
As was already mentioned, the application layer forms the uppermost layer with the applications running on said layer such as WWW (World Wide Web) . Said layer directly communicates with the transport layer, in this case the TCP, the task of which is to provide a reliable service. For this purpose the application data are first sub-divided into TCP data packets. A TCP data packet comprises a header and a data field. The data field comprises part of the application data. The size of said field depends on the selected size of the TCP packet. The structure of a TCP header is shown in igure 3. A TCP message header comprises data among others required for the fragmentation and the error recognition. Figure 3 illustrates a complete TCP header with the control data contained therein. In view of the present invention the fields source port number, destination port number and the sequence number are particularly significant and will hereinafter be described in more detail. The sequence number identifies the position of the data of the data packet in the corresponding data flow. For this purpose an initial value for the sequence number of the respective data flow is declared when a connection is set up. Thereafter the sequence number for each byte is increased by one. The position of a byte in the data flow results from the difference of the sequence number of said byte and the initially declared sequence number. The sequence numbers thereby allow the combination of the received data packets at the receiving side in the correct order. The source and destination port number identify the sending and the receiving application .
Moreover, different timeouts are started for a TCP data packet, for example, the RTO (Retransmission Timeout) is among others set for the data packet on the TCP layer upon the transport of the data packet to the network layer. An additional processing of the data takes place on the network layer.
The tasks of the network layer are fulfilled by the internet protocol, the so-called IP. The IP has the property that the exchange of data is unreliable, i.e. the IP does not guarantee that every IP data packet reaches the receiver. Also IP data packets can be received by the receiver in an incorrect sequence or as duplicates. It is the task of TCP to detect the faulty transmission and to correct the errors. The errors can be detected in different ways, as was already explained. The correction of the error is done through a retransmission of the faulty data packet. For this purpose the data packets released to the network layer are intermediately stored on the TCP protocol layer. A data packet is only deleted from the buffer at the sending side when it has been secured that the data packet was really correctly received by the receiver, which takes place after the receipt of an acknowledgment message.
An important task of IP lies in the formatting of the TCP data packets, more exactly in the packing of the TCP data packets into IP data packets . The IP data packets generated by IP are called IP datagrams . According to figure 4 an IP datagram consists of a header containing the control data and of a data field in which a TCP data packet is embedded. The feasibility of the invention is based on the examination of an IP data packet and on the comparison with an additional IP data packet. In this respect particularly the fields of an IP data packet guaranteeing an exact identification of each packet are examined. For this reason said fields are referred to as features exactly identifying each data packet, and they will hereinafter be dealt with in more detail .
The structure of an IP header is connected with the used version of the internet protocol. In the following two versions of the IP, the IP version 4, the IPv4, and the IP version 6, the IPv6, will be examined as examples. Figure 4 illustrates an IPv4 datagram.
For the sake of completeness figure 4 shows all fields of the IP header. The fields protocol, source address and destination address are particularly relevant for the invention. The protocol field expresses the protocol type of the data flow in question, for example TCP. When comparing data packets, said fields are examined first. In the case of non-congruence it can directly be concluded therefrom that said data packets cannot be redundant and that a comparison of further fields is not necessary. The fields source address and destination address correspondingly comprise the addresses of the receiver and the sender. In the case where said fields correspond with each other in view of the data packets to be compared, another examination has to be performed in the TCP header in order to secure the redundancy or even identity of the data packets . This is necessary because in most cases a user uses several applications at the same time during a session, for example, when using electronic mail and surfing in the internet simultaneously. Due to the fact that both applications are possibly carried out on one and the same terminal requesting access to one and the same server, both the destination address and the source address in the data packets to be compared correspond with each other. However, different port numbers are allocated for the different applications and thus for the data flows . Said port numbers identify a corresponding data flow on the transport layer. The information in view of the port number are comprised in the header of a TCP packet, and when differentiating the data flow they are compared with each other in order to exactly determine the differences between the data flows. Only when the port numbers of the destination in view of the data packets to be compared correspond with the port numbers of the source, is the data flow identical. The identity of the data flow is checked by comparing the protocol type, the destination and the source address and the port number of the destination and the source. The redundancy and even the identity of the data packets is determined by means of an additional comparison of the sequence number in the TCP header and the fields having the total length in the IP header. The field total length includes the entire IP datagram, i.e. the header and the data. When dividing the data into packets, each packet receives - as was already described - a precise continuous sequence number. The sequence number corresponds to the first data byte contained in the data field, which data byte indicates the position of the data byte relative to the first byte in the data flow. For this purpose an initial value
to for the sequence number is declared when setting up the connection. Thereafter the sequence number for each byte in the data flow is increased by one. The sequence number of a following data packet is determined by means of the sequence number and the total length of the preceding data packet, and the position of a byte in the data flow results from the difference between the sequence number of said byte and the initial sequence number. By means of said data the redundancy of a data packet is determined, i.e. it is determined whether a data packet is contained in another one and whether they are even identical .
The described method for identifying the redundancy of a data packet is implemented in the presently used fourth version of the IP, the IPv4. In the next version of the internet protocol, in the internet protocol version 6, the IPv6, said method is based on the same principle, i.e. on the comparison of the information comprised by the data packet. An allocation of a data packet to a data flow can be realized more efficiently by means of data flow identifiers, so-called flow label. The major aim of the flow labels consists in a faster allocation of a data packet to a data flow, for example, in order to reduce the processing time in the intermediate nodes. Apart from that, a header of an IPv6 datagram equally contains a destination and source address, which can be examined. Moreover, the IPv6 packet contains a TCP data packet, which can be analyzed in the same way as was already described.
Upon the generation of the IP datagrams, the latter are transferred to the directly underlying layer, the link layer. The structure of the link layer depends on the underlying network. According to figure 2 the link layer in GPRS consists of several intermediate layers including the corresponding protocols .
The SNDCP (SubNetwork Dependent Convergence Protocol) provides convergence functionality to map different protocols of the
To higher layers on a single link supported by the LLC (Logical Link Control) lying underneath the SNDCP . Said SNDCP includes, among others, the multiplexing of the data packets from the different protocols and the header compression, for example of the TCP/IP header. A segmentation of the data into packets equally takes place on said layer. Usually, however, the size of the SNDCP packets corresponds to the size of the IP packets.
The IP packets are buffered on said layer as long as the connection is not available for a transmission, for example, due to a temporary failure. If the time of the failure is correspondingly long so that the RTO value meanwhile runs on the TCP layer, a new transmission of an unacknowledged TCP data packet is initiated. For this purpose the TCP takes the data packet from its buffer and transfers it to the IP layer which generates an IP packet therefrom. Said packet again is transferred to the SNDCP. The SNDCP examines the IP packet, in particular the fields in the IP and TCP header, and compares said fields with the corresponding fields of the data packets present on said layer. If it is found that an identical IP packet is already present on the SNDCP layer, one of the two packets is discarded. If the IP packet is not a redundant data packet of an already existing data packet, it is provided to the SNDCP layer and kept on said layer until the connection is again ready for a transmission.
According to the hierarchic structure of a protocol stack the data packets are transferred from the SNDCP layer to the directly underlying layer, and according to figure 2 this is the LLC (Logical Link Control) layer. Due to the fact that the underlying network is characterized by high error rates in the transmission, protocols were developed on the link layer, which provide a reliable transmission via a physical connection. The LLC protocol can either operate in a so-called unreliable mode, in which packet losses are not taken into account, or in a so- called reliable mode guaranteeing a secured transport of data packets by means of repeating faulty data packets . The
1M invention is mainly used in the reliable mode, in which the data packets are buffered for being able to take them out of the buffer and transmit them anew in case a transmission error has occurred. Similar to the SNDCP layer, the present invention can equally be used on said layer, on which the SNDCP packets are intermediately stored. Said layer keeps the SNDCP data packets in the buffer, until it is secured that said data packets have correctly been transmitted and received. If in the meantime a retransmission takes place on the transport layer, said data packet is transferred to the IP layer, to the SNDCP layer and consequently to the LLC layer. By means of features exactly identifying each data packet the received data packet is compared with the data packets present on the LLC layer, anc. if a redundancy is detected, a redundant data packet is discarded.
The LLC data packets are thereupon transferred to the RLC (Radio Link Control) layer. First, the data packets are subdivided again into smaller packets, the so-called frames, on said layer. On the basis of these frames the error correction is carried out in the ARQ method in case the RLC operates in the reliable mode. Like with the LLC two modes are supported - the reliable mode, in which the occurred transmission errors are corrected, and the unreliable mode, in which the packet losses are not considered. For the purpose of correcting the errors on the RLC layer, the LLC packets are buffered in the reliable mode. Thus it is also possible that, if a packet is retransmitted, a comparison of LLC packets for finding and discarding redundant LLC packets on the RLC layer is performed.
The embodiment described in the invention relates to a GPRS network. The invention may, however, be used in any other network, in which the data packets undelivered due to the nonavailability of a connection are buffered long enough, so that a retransmission of a data packet present on the link layer meanwhile takes place on the higher layers. Due to the fact that the scanninσ of a meanwhile unavailable connection can best be performed on the link layer, as in the worst case the scanning on the TCP layer takes place every 64 seconds due to the so-called exponential backoff algorithm, or as the scanning is even impossible in the middle of the transmission route due to the fact that TCP is an end-to-end protocol, it is consequently best to use the invention, particularly to discard the redundant data packets, also on the link layer, because it is guaranteed on said layer that a data packet is directly sent once a connection is again available.
The invention may, however, be used in any other network having a first and at least one additional protocol layer. In this respect it is decisive that the layers are provided with separately operating methods for providing a reliable service, and that the time interval for buffering a data packet on the at least one additional protocol layer is long enough to allow an initiation of a retransmission of a data packet on a first protocol layer resulting in the formation of redundant data packets on the at least one additional protocol layer.
In the embodiment described in the specification, which is based on a GPRS network, the tasks of the first protocol layer are fulfilled by TCP and the tasks of the at least additional one of the protocol layers is fulfilled by the link layer. Both layers are provided with a method for providing a reliable service, which is fulfilled by means of the ARQ method. Other examples for networks, in which the invention can be used, are a GSM (Global System for Mobile Communication) , a UMTS (Universal Mobile Telecommunication System) , an EDGE (Enhanced Data rates for GSM Evolution) or an IMT-2000 communicatior. network .
,

Claims

1. Method for increasing a data throughput for transmitting data via a communication network between a sender having a first and at least one additional protocol layer and a receiver,
- wherein data packets with exactly identifying features are generated in the first protocol layer (1), - wherein the data packets are provided for at least an additional protocol layer (2),
- wherein the data packets in the at least one additional protocol layer are compared with already present data packets by means of the features exactly identifying each data packet (5),
- wherein, if a redundant data packet is present in the at least one additional protocol layer, one of the redundant data packets is discarded (7),
- wherein, if a data packet is not present in the at least one additional protocol layer, said data packet is stored (4) , (8) .
2. Method according to claim 1, wherein the exactly identifying features are the source address, the destination address, the port number of the source, the port number of the destination, the sequence number of a packet and the length of a packet .
3. Method according to claim 1 or 2 , wherein the exactly identifying features are comprised in at least one header.
4. Method according to one of the preceding claims, wherein a header is added to a data packet on a protocol layer.
5. Method according to one of the preceding claims, wherein on each protocol layer the data in a data packet are accessed.
6. Method according to claim 1, wherein the receipt of a data packet by a receiver is acknowledged by sending acknowledgment messages.
7. Method according to one of claims 1 to 6 , wherein a missing acknowledgment message or the receipt of a negative acknowledgment message results in a retransmission of the same data packet by the sender.
8. Method according to claim 7, wherein the retransmission of the same data packet is made feasible by the preceding generation of a copy of the sent data packet.
9. Method according to one of claims 1, 6, 7 or 8 , wherein the copy of a data packet is buffered on a protocol layer until an acknowledgment message on the correct receipt of a data packet is received or a timeout occurs .
10. Method according to one of claims 6 to 9 , wherein a retransmission of a data packet is controlled by timeouts .
11. Method according to one of claims 6 to 10, wherein the generation of a copy of a data packet, the receipt of an acknowledgment message and the retransmission of a data packet are secured by means of a method for providing a reliable service.
12. Method according to claim 10, wherein a correction of a faulty transmission of a data packet is performed by means of the method for providing a reliable service.
13. Method according to one of claims 10, 11 or 12, wherein the method for providing a reliable service is an ARQ (Automatic Repeat Request) method.
14. Method according to one of claims 1 or 6 to 13 , wherein the time interval for buffering a data packet on the at
tδ least one additional protocol layer is long enough to initiate a retransmission of a data packet on a first protocol layer resulting in the formation of redundant data packets on the at least one additional protocol layer .
15. Method according to one of the preceding claims, wherein a first and at least one additional protocol layer are protocol layers in a protocol stack.
16. Method according to claim 1, wherein the communication network is a GSM (Global System for Mobile Communication) , a GPRS (General Packet Radio Service) , a UMTS (Universal Mobile Telecommunication System) , an EDGE (Enhanced Data rates for GSM Evolution) or an IMT-2000 communication network.
17. Device for increasing a data throughput for transmitting data via a communication network between a sender having a first and at least one additional protocol layer and a receiver, comprising
- means for generating data packets of a first protocol layer,
- means for providing the data packets for at least one additional protocol layer,
- means for comparing data packets,
- means for buffering the data packets of the first protocol layer on the at least one additional protocol layer, - means for discarding redundant data packets .
18. Device according to claim 17 comprising sending means for sending a data packet via a communication network.
19. Device according to claim 18 comprising receiving means for receiving acknowledgment messages.
n data throughput of a protocol stack providing at least two separately operating methods for providing a reliable service .
PCT/EP2000/010693 1999-11-18 2000-10-31 Method and device for improving a data throughput in a communication system WO2001037493A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP00979524A EP1230764A1 (en) 1999-11-18 2000-10-31 Method and device for improving a data throughput in a communication system
JP2001538340A JP2003515273A (en) 1999-11-18 2000-10-31 Method and apparatus for improving data throughput in a communication system
AU16981/01A AU1698101A (en) 1999-11-18 2000-10-31 Method and device for improving a data throughput in a communication system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99122900.6 1999-11-18
EP99122900A EP1102441A1 (en) 1999-11-18 1999-11-18 Method and apparatus for the improvement of a data rate in a communication system

Publications (1)

Publication Number Publication Date
WO2001037493A1 true WO2001037493A1 (en) 2001-05-25

Family

ID=8239419

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2000/010693 WO2001037493A1 (en) 1999-11-18 2000-10-31 Method and device for improving a data throughput in a communication system

Country Status (5)

Country Link
EP (2) EP1102441A1 (en)
JP (1) JP2003515273A (en)
CN (1) CN1425237A (en)
AU (1) AU1698101A (en)
WO (1) WO2001037493A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003056744A1 (en) * 2001-12-27 2003-07-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus relating to retransmission of data between different protocol layers
EP1410230A1 (en) * 2001-07-20 2004-04-21 Telcordia Technologies, Inc. Ip flow discovery for ip probe auto-configuration and sla monitoring
WO2004109991A1 (en) * 2003-06-05 2004-12-16 Nokia Corporation Method for handling of suspension requests for data flows in a communication system
CN100417105C (en) * 2001-12-24 2008-09-03 Lg-北电株式会社 Processing repeat data block
US8503452B2 (en) 2005-03-21 2013-08-06 Qualcomm Incorporated Method and apparatus for improving data transmission reliability in a wireless communications system
US8705431B2 (en) 2004-05-10 2014-04-22 Telefonaktiebolaget L M Ericsson (Publ) Method and system for providing autonomous retransmissions in a wireless communication system

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1300991A1 (en) * 2001-10-02 2003-04-09 Lucent Technologies Inc. A method for filtering redundant data packets
US7072296B2 (en) 2002-08-02 2006-07-04 Nms Communications Corporation Methods and apparatus for network signal aggregation and bandwidth reduction
JP4894563B2 (en) 2007-03-07 2012-03-14 日本電気株式会社 Communication device
CN101409611B (en) * 2008-11-21 2011-05-18 北京佳讯飞鸿电气股份有限公司 Communication method for IP scheduling
US9661657B2 (en) * 2013-11-27 2017-05-23 Intel Corporation TCP traffic adaptation in wireless systems

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999037071A1 (en) * 1998-01-13 1999-07-22 Qualcomm Incorporated System, method and computer program product for eliminating unnecessary retransmissions

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999037071A1 (en) * 1998-01-13 1999-07-22 Qualcomm Incorporated System, method and computer program product for eliminating unnecessary retransmissions

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHUN B -G ET AL: "AUXILIARY TIMEOUT AND SELECTIVE PACKET DISCARD SCHEMES TO IMPROVE TCP PERFORMANCE IN PCN ENVIRONMENT", IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC),US,NEW YORK, NY: IEEE, 1997, pages 381 - 385, XP000740265, ISBN: 0-7803-3926-6 *
DESIMONE A ET AL: "THROUGHPUT PERFORMANCE OF TRANSPORT-LAYER PROTOCOLS OVER WIRELESS LANS", PROCEEDINGS OF THE GLOBAL TELECOMMUNICATIONS CONFERENCE (GLOBECOM),US,NEW YORK, IEEE, vol. -, 1993, pages 542 - 549, XP000428113 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1410230A1 (en) * 2001-07-20 2004-04-21 Telcordia Technologies, Inc. Ip flow discovery for ip probe auto-configuration and sla monitoring
EP1410230A4 (en) * 2001-07-20 2005-03-23 Telcordia Tech Inc Ip flow discovery for ip probe auto-configuration and sla monitoring
CN100417105C (en) * 2001-12-24 2008-09-03 Lg-北电株式会社 Processing repeat data block
WO2003056744A1 (en) * 2001-12-27 2003-07-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus relating to retransmission of data between different protocol layers
US7895343B2 (en) 2001-12-27 2011-02-22 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus relating to retransmission of data between different protocol layers
WO2004109991A1 (en) * 2003-06-05 2004-12-16 Nokia Corporation Method for handling of suspension requests for data flows in a communication system
US7266081B2 (en) 2003-06-05 2007-09-04 Nokia Corporation Method and system for arranging data flow control in a data transfer system
CN100444578C (en) * 2003-06-05 2008-12-17 诺基亚有限公司 Method for processing data flow suspension request in communication system
US8705431B2 (en) 2004-05-10 2014-04-22 Telefonaktiebolaget L M Ericsson (Publ) Method and system for providing autonomous retransmissions in a wireless communication system
US9356739B2 (en) 2004-05-10 2016-05-31 Telefonaktiebolaget L M Ericsson (Publ) Method and system for providing autonomous retransmissions in a wireless communication system
US8503452B2 (en) 2005-03-21 2013-08-06 Qualcomm Incorporated Method and apparatus for improving data transmission reliability in a wireless communications system
US9014192B2 (en) 2005-03-21 2015-04-21 Qualcomm Incorporated Method and apparatus for improving data transmission reliability in a wireless communications system

Also Published As

Publication number Publication date
EP1102441A1 (en) 2001-05-23
AU1698101A (en) 2001-05-30
EP1230764A1 (en) 2002-08-14
CN1425237A (en) 2003-06-18
JP2003515273A (en) 2003-04-22

Similar Documents

Publication Publication Date Title
US6992982B1 (en) Communication device and method
CN1134133C (en) Packet discard notification for semi-reliable retransmission protocol
EP1434380B1 (en) Data transmission control method and system
US9225473B2 (en) System and method for improving transport protocol performance in communication networks having lossy links
US7920477B2 (en) Network layer error control systems and methods
US7593338B2 (en) Congestion control method and system for reducing a retransmission timeout count in a transmission control protocol
EP1536589B1 (en) Transmitter device for controlling data transmission
WO2001037493A1 (en) Method and device for improving a data throughput in a communication system
US7590888B2 (en) Receiving device and transmitting device for determining errors in transmission
US20040042465A1 (en) Radio packet data transmission control system and method
JP3950865B2 (en) ATM communication system
JPH10243050A (en) Data communication system
KR100663465B1 (en) Method and apparatus for transmitting and receiving virtual block information for multi-segment recovery in data network using transmission control protocol
JP4617568B2 (en) Wireless communication device
Buchholcz et al. Explicit loss notification to improve TCP performance over wireless networks
EP1733527B1 (en) Technique for handling outdated information units
Cui et al. A Hierarchical Checksum Scheme for SCTP over Wireless Networks with Worse Channel Condition
JP2003023443A (en) Router and tcp/ip packet abort method therefor
Cui et al. Enhancement of SCTP Throughput using Chunk Checksum

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2000979524

Country of ref document: EP

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2001 538340

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 008184771

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2000979524

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWW Wipo information: withdrawn in national office

Ref document number: 2000979524

Country of ref document: EP