Method and device for reducing the processing time of data in communication networks
Abstract
Method to improve a processing time of data received in packet-oriented applications in a data transmission between a transmitter and a receiver each comprising a first and a second underlying layer of protocol through a communication network, in the that: - the data of the first protocol layer is released in the second protocol layer in the transmitter (20); - the data of the first protocol layer is divided into consecutive data packets of the second protocol layer generating a sequence of consecutive data packets with sequence numbers, whereby a data packet of the second protocol layer contains data of only one data packet of the first protocol layer (30); - the data packets of the second protocol layer are transmitted through the communication network (50); - the data packets of the second protocol layer received in the receiver (60) are classified in the second protocol layer in the sequence of consecutive data packets by means of the sequence numbers; - the received data packets are assigned to data packets of the first protocol layer in the second protocol layer; - after a data packet of the first protocol layer (100) has been completely generated, said data packet is examined for association with a data stream and is released in the first protocol layer (110);

Term
Term ended
Projected expiry passed 13 December 2019, 6.8 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
25 claims: 5 independent, 20 dependent
- 1ES 2 270 631 T3 REIVINDICACIONES 1. Método para mejorar un tiempo de procesamiento de datos recibidos en aplicaciones orientadas por paquetes en una transmisión de datos entre un transmisor y un receptor cada uno de ellos comprendiendo una capa primera y una segunda subyacente de protocolo a través de una red de comunicación, en el que:- los datos de la primera capa de protocolo son liberados en la segunda capa de protocolo en el transmisor (20);- los datos de la primera capa de protocolo están divididos en paquetes de datos consecutivos de la segunda capa de protocolo generando una secuencia de paquetes de datos consecutivos con números de secuencia, por lo que un paquete de datos de la segunda capa de protocolo contiene datos de solamente un paquete de datos de la primera capa de protocolo (30);- los paquetes de datos de la segunda capa de protocolo se transmiten a través de la red de comunicación (50);- los paquetes de datos de la segunda capa de protocolo recibidos en el receptor (60) se clasifican en la segunda capa de protocolo en la secuencia de paquetes de datos consecutivos por medio de los números de secuencia;- los paquetes de datos recibidos se asignan a paquetes de datos de la primera capa de protocolo en la segunda capa de protocolo;- después de haber sido generado completamente un paquete de datos de la primera capa de protocolo (100), dicho paquete de datos es examinado para la asociación a un flujo de datos y es liberado en la primera capa de protocolo (110);
- 2Método de acuerdo con la reivindicación 1, en el que un procesamiento de los datos en el transmisor y/o receptor está basado en una estructura modular de protocolo.
- 3Método de acuerdo con la reivindicación 1 ó 2, en el que los paquetes de datos de la segunda capa de protocolo están numerados consecutivamente y marcados por un número de secuencia correspondiente.
- 4Método de acuerdo con una de las reivindicaciones 1 a 3, en el que la primera capa de protocolo es soporte de al menos dos modos de transmisión, un modo fiable y un modo no fiable.
- 5Método de acuerdo con la reivindicación 4, en el que los paquetes de datos de la segunda capa de protocolo son corregidos por medio de transmisión repetida en caso de un error de transmisión y usando el modo de transmisión fiable.
- 6Método de acuerdo con una de las reivindicaciones 1 a 5, en el que los datos de la primera capa de protocolo están claramente diferenciados entre sí por medio de separadores.
- 7Método de acuerdo con la reivindicación 3, en el que los paquetes de datos recibidos se clasifican en una secuencia que corresponde a un número de secuencia.
- 8Método de acuerdo con la reivindicación 3 ó 7, en el que el número de secuencia es un número de secuencia RLP (Protocolo de Enlace por Radio) o un número de secuencia RLC (Control de Enlace por Radio).
- 9Método de acuerdo con una de las reivindicaciones precedentes 1 a 8, en el que los paquetes de datos recibidos son almacenados en una memoria intermedia del receptor.
- 10Método de acuerdo con una de las reivindicaciones 1 a 9, en el que un paquete de datos de la primera capa de protocolo es llevado a un estatus de paquete de datos generado completamente, si se ha recibido correctamente una marca inicial y una final dentro de los paquetes de datos de la segunda capa de protocolo , y si todos los paquetes de datos de la segunda capa de protocolo que descansa en medio han sido recibidos correctamente de acuerdo con su secuencia correcta.
- 11Método de acuerdo con la reivindicación 10, en el que los paquetes de datos generados de forma completa de la primera capa de protocolo se examinan de acuerdo con las reglas de un proceso de encapsulamiento para identificar paquetes de capas de protocolo adicionales.
- 12Método de acuerdo con la reivindicación 10 u 11, en el que al menos un campo de control que comprende datos de control está dispuesto en los paquetes de datos generados de forma completa de la primera capa de protocolo, para entregar la información referente a un flujo de datos pertinente.
- 13Método de acuerdo con la reivindicación 12, en el que los datos de control son adjuntados a las secuencias de datos reales como campos de control en las correspondientes capas de protocolo en forma de un encabezamiento y/o un pie de página.
- 14Método de acuerdo con una de las reivindicaciones 1 a 13, en el que un flujo de datos está diferenciado por medio de ciertos datos de control en los campos de control dispuestos para ello.
- 15Método de acuerdo con la reivindicación 14, en el que los datos de control de los flujos de datos diferenciadores son las direcciones del transmisor y/o del receptor en forma de direcciones de fuente, direcciones de destino y de números de puertos.
- 16Método de acuerdo con una de las reivindicaciones 1 a 15, en el que los paquetes de datos son liberados directamente en la primera capa de protocolo en la segunda capa de protocolo, si los paquetes de datos en la segunda capa de protocolo han sido primeramente recibidos de forma completa y correcta, y si en segundo lugar se ha garantizado que los datos posiblemente guardados en la memoria intermedia por el receptor de la segunda capa de protocolo no contienen paquetes de datos adicionales de la primera capa de protocolo que pertenecen al mismo flujo de datos de los paquetes de datos de la primera capa de protocolo para ser liberados.
- 17Método de acuerdo con una de las reivindicaciones 1 a 15, en el que en la segunda capa de protocolo los paquetes de datos de la primera capa de protocolo son liberados directamente en la primera capa de protocolo, si dichos paquetes de datos han sido recibidos completa y correctamente.
- 18Método de acuerdo con la reivindicación 1, en el que los paquetes de datos de la primera capa de protocolo son datagramas IP y los paquetes de datos ES 2 270 631 T3 de la segunda capa de protocolo son tramas PPP, en los que las tramas PPP son corregidas por medio de transmisión repetida cuando se produce un error.
- 19Método de acuerdo con la reivindicación 1, en el que los paquetes de datos de la primera capa de protocolo son tramas PPP y los paquetes de datos de la segunda capa de protocolo son tramas de datos RLP.
- 20Método de acuerdo con la reivindicación 1, en el que la transmisión de datos se realiza a través de una red IP y de una red de comunicación móvil.
- 21Método de acuerdo con la reivindicación 1, en el que las aplicaciones orientadas por paquetes son aplicaciones de Internet.
- 22Método de acuerdo con las reivindicaciones 18 a 21, en el que una aplicación de Internet se transmite por medio del protocolo de transporte Protocolo de Control de Transmisión (TCP).
- 23Método de acuerdo con las reivindicaciones 18 a 21, en el que una aplicación de Internet se transmite por medio del protocolo de transporte Protocolo de Datagramas de Usuario (UDP).
- 24Dispositivo para mejorar un tiempo de procesamiento de datos recibidos en aplicaciones orientadas por paquetes en una transmisión de datos entre un transmisor y un receptor, cada uno con una primera y una segunda capa de protocolo subyacente, a través de una red de comunicación, que comprende:- medios para proveer paquetes de datos de una primera capa de protocolo a una segunda capa de protocolo (10), que está adaptada para dividir los datos de la primera capa de protocolo en paquetes de datos consecutivos de la segunda capa de protocolo generando una secuencia de paquetes de datos consecutivos con números de secuencia, en los que un paquete de datos de la segunda capa de protocolo contiene datos de solamente un paquete de datos de la primera capa de protocolo (30);- medios de transmisión para transmitir los paquetes de datos (40);- medios de recepción para recibir los paquetes de datos (60);- medios de clasificación para clasificar los paquetes de datos recibidos en la secuencia de paquetes de datos consecutivos por medio de números de secuencia (70);- medios de reconocimiento para reconocer un paquete de datos combinado de forma completa de la primera capa de protocolo en la secuencia de datos consecutivos (100);- medios para examinar la asociación de los paquetes de datos de la primera capa de protocolo con un flujo de datos después de haber sido reconocido un paquete de datos de la primera capa de protocolo;- medios de liberación para liberar un paquete de datos generado de forma completa en la primera capa de protocolo (110).
- 25Dispositivo de acuerdo con la reivindicación 24 que comprende una memoria intermedia para almacenar temporalmente los paquetes de datos recibidos de la segunda capa de protocolo.
Independent claims25
80 paragraphs in 2 sections, as filed
270 631 T3
DESCRIPTION
Method and device to reduce data processing time in communication networks.
The invention relates to a method and device to improve the processing time of applications oriented to data received by packets in transmission over communication networks, especially through an IP network and a mobile communication network such as the System Global for Mobile Communication (GSM), the Universal Mobile Telecommunication System (UMTS) or the General Packet Radio Service (GPRS).
In document A-4,703,475 the problem of minimizing message delay is addressed by distributing message packets through various physical links and reordering the received packets on a message basis, in which a message is assigned to a channel. logical. For this purpose a session layer assigns the received message to an available logical channel and passes the message to the packet level, which divides the message into data packets and adds a header that includes the information about the assigned logical channel number. An additional multiple link is introduced to add a multilink header that includes a logical channel sequence number, which defines the sequential order of the data packets in the logical channel. In this way the established data packets are transmitted on a network. At the receiver the received data packets are classified according to the logical channel number and the logical channel sequence number and are passed to the packet layer when the correct sequential order is achieved on the particular logical channel.
The document "Reassembling Packets During Cell Loss" by GJ Armitage and KM Adams on the IEEE Network. Computer Communications Magazine, Volume 7, No. 5, September 1, 1993, Pages 26-34 explains how to reassemble data packets from a higher protocol layer from data received from a lower protocol layer. For this purpose, on the sender side a data packet is segmented into smaller data packets (cells) and each cell obtains a header with an entry on the type of information transport, which is received from the data packets of the upper protocol layer. The information can be the beginning of the message (BOM), the continuation of the message (COM), or the end of the message (EOM). Additionally, a MID entry is added in each cell to recognize the correspondence with a higher level packet. On the basis of this information, a higher layer data packet is reassembled at the receiver, in which COM or EOM cells with the MID value that do not correspond to a current reassembled packet are ignored. The reassembly procedure is interrupted when a package is received out of order. This is recognized when the sequence number is not the following.
A protocol is defined as a totality of all declarations between associated instances for the purpose of a common communication. In this way, a common joining protocol is a prerequisite for a data exchange between two nodes of the communication network. The protocols are required to be universally defined and compatible with each other, because only on a uniform basis is it possible to link different networks together in sequence to communicate also beyond the boundaries of a system.
From the point of view of a modular structure, the complete protocol of a communication is divided into layers. Each layer solves the tasks assigned to it through its own protocol. Communication between contiguous layers is guaranteed through clearly defined interfaces. In this case, a layer n is linked to layer n + 1 directly on top of it providing services to said layer, and to layer n-1 directly below said layer using the services of said layer. Additionally, there is a communication with layer n of the associated communication using the services of all the lower layers. Thus, the logical data flow of the protocol data PDUs is performed in respectively a protocol layer. On the receiving side the data is processed in an inverse sequence, that is, the data is released from the lower layers to the protocol layers directly on top of them.
The structure of the protocol stack can vary in response to the physical network and the application. The variation has, however, to be within compatible limits to guarantee communication between different networks. The standard protocol stack for Internet applications is the TCP / IP (Transmission Control Protocol / Internet Protocol) protocol stack. It consists of four layers. The highest layer - the application layer - comprises application protocols. For example, a transport protocol, the so-called TCP (Transmission Control Protocol) is arranged directly below it. The Internet protocol -the so-called IP- forms the network layer. The two lowest layers - the link layer and the physical layer - can be combined to form the term network-oriented layers, as they are specifically defined in response to the network arranged below them. Figure 2 illustrates said modular structure of the TCP / IP protocol stack and the communication links between the respective layers.
The TCP transport protocol provides a reliable transmission service for a stream of bytes. Reliability here refers to being error-free, maintaining sequences, and protecting against data loss and duplicates. Error correction is done using the method called ARQ (Automatic Repeat Request). A copy of the packets to be sent is generated on the transmission side and kept until the sent data packet is positively confirmed by the opposite side. The receiver examines the received packet and confirms the correct reception by means of a positive confirmation and rejects the reception of an incorrectly received packet. Regarding this, it should be noted that TCP does not allow the transmission of negative confirmations. The repetition of incorrectly transmitted packets is carried out by means of a mechanism based on positive confirmations, that is, if there is no positive confirmation, the transmitter deduces in certain circumstances that a packet has not been received.
The stream of bytes to be transmitted, which is passed from the application layer to the TCP layer, is divided by TCP into segments that are transmitted as IP datagrams. An IP datagram designates a
ES 2 270 631 T3 data packet being formed according to the rules of the IP protocol. The characteristic of the datagram is that the data exchange that takes place using datagrams is not reliable. In this way, IP does not guarantee that a packet is actually transmitted to a receiver. Also IP datagrams may be confused in their sequence, or may arrive at the receiver in duplicates. Within the limits of this concept, however, is the task of TCP to detect the faulty transmission and to correct the errors produced.
The IP datagrams are also transmitted according to the hierarchy principle to the link layer arranged directly below. This layer receives the IP datagrams and organizes them into so-called frames. This occurs by means of a method that is known by the name of framing, that is, the link layer packages an IP datagram in one or more frames, in which the frames are limited by the use of specific combinations of bits. It is specified as to which combinations of bits refer to the beginning separator, the so-called start mark, and to which the end separator, the so-called end mark, of a frame.
Aside from the fabric, the link layer performs two additional tasks. The link layer is also responsible for error detection. In this way, incorrectly transmitted frames are rejected in the usual way by the link layer receiver. For this purpose the data packet is provided with a field for applying a so-called cyclic code, the so-called FCS check sequence or the cyclic CRC redundancy check. The idea is to interpret a data packet as a polynomial. The transmitter supplements the data packet in such a way that the receiver receives the remainder 0 by division through a so-called generator polynomial. In this way, error detection is carried out. The link layer also optionally performs error correction. This is caused by incorrectly repeated received packets, for example using the ARQ method.
Link layer protocols are usually applied between directly physical contiguous network nodes. Several alternative protocols have been defined for this purpose. As for which protocol is applied between two network nodes, it depends on the network through which the two network nodes are linked. The well-known point-to-point protocol, PPP, is an example of a link layer protocol. PPP performs the first two tasks of the link layer, framing and error detection. Therefore, PPP does not repeat incorrectly received packets. Even though there is a specific way of implementing PPP in a so-called RFC 1663 "numbered mode", it is usually not used.
Due to the fact that PPP does not support a correction by means of repeated packet transmission, or because the process would be ineffective at high transmission error rates, an additional protocol is applied in networks that have a rate of especially high errors in a data transmission. For example, mobile communication networks are known to be networks with high transmission error rates. GSM (Global System for Mobile Communications) and GPRS (General Packet Radio Service) should be classified as such. An additional protocol, the so-called RLP (radio link protocol) is applied in the link layer of the GSM network. RLP segments the byte stream received from the PPP layer into frames, which are usually smaller than the frames at the PPP layer. The error correction is handled by the ARQ method on the basis of these frames. The ARQ functionality requires that the frames be numbered consecutively. Therefore, each frame receives a clear continuous sequence number during clustering. In the state of current implementations the byte stream is transparently segmented into RLP frames and is packed. So what kinds of data, data control, or current data it is still not considered. The RLP layer can only see a stream of bytes. This is why it can happen that the data from two different PPP frames are combined into one RLP frame. The RLP frame then receives the end mark of the first PPP frame and also the end mark of the next PPP packet. The solution to this problem is provided by document EP 0.973.302 which advises to examine the flow of bytes by separators at the sender. Thus, a difference is established between the different PPP packets by packing the stream of bytes into RLP packets on the transmission side, preventing data from two PPP packets from being combined into one RLP.
The same functionality is performed in the GPRS network by means of the RLC protocol, resulting from the fact that both protocols, RLP and RLC are similar to HDLC according to ISO (high-level data link control) standards ISO87 and that, consequently , have a similar structure. One difference between the protocols is in the generation of the frames.
The object of a hierarchical structure is to develop a protocol structure, in which the protocol layers are independent of each other with respect to a horizontal aspect. Thus, it is achieved that different applications and different transport protocols are transmitted by the same network protocol, such as the Internet IP protocol. In addition, it allows an IP protocol layer to work on different physical platforms. Therefore, IP datagrams can be transmitted through different physical networks, such as GSM, Internet, GPRS.
Communication at the protocol levels remains substantially invisible to the user. He hopes that the available system supports the different services, such as the transmission and reception of emails, data flow or reading web pages. The data made available for transmission frequently exceeds the size of the packets that can be transmitted on a physical link. For this reason, a message is divided into smaller packets, which are arranged consecutively for a transmission. The division of the data is part of the formatting. Data formatting is done at each protocol layer. In certain protocol layers, such as the RLP layer, a data division occurs, that is, said data is subdivided into smaller data blocks. The data blocks have different names in the different layers, for example, they are called datagrams in the IP protocol layer, and frames in the link layer. Furthermore, data blocks, which do not individually refer to a protocol layer, are designated by the term data packet.
Data formatting includes in particular
ES 2 270 631 T3 the addition of control data that are characteristic of each protocol layer. In most cases the control data is appended to the beginning of a data packet in the form of a so-called header and / or to the end in the form of a so-called footer. The actual data is contained in the user data field. This mechanism is explained in more detail below using a TCP / IP protocol stack.
According to figure 3 the user data is segmented in the application layer, and control information is added to each data packet. Said data packets are therefore sent to the TCP transport layer. This layer adds its control data in the form of a header. Such data is passed to a network layer where, for example, the IP contains the relevant control data such as routing information. In this way an IP datagram is formed, which in the next step is passed to a link layer. The protocols of the link layer, such as for example the PPP, process the received data adding their own control information such as the separators. The data packets that are generated at this level are called frames. Such frames are then transmitted over the available network. It happens that the data packets arrive at the receiver of a certain layer in a different sequence. It may be the task of the receiver of this layer to reproduce the transmitted sequence. This is the task of, for example, a TCP or RCP receiver, but not, for example, of an IP receiver.
The mechanism for packing the data in the protocol layers is known by the term encapsulation. The inverse function is called decapsulation and is performed on the receiving side.
In the following, the data packets, which either refer to RLP frames or RLC frames or also to PPP frames, each working in a numbered mode, are referred to by the general term L2ARQ frame.
User data is sent to the receiver in the form of L2ARQ frames. At the same time, the L2ARQ frames are stored in a transmitter buffer. This seems necessary in the event that the packet is repeated. By means of the consecutive numbers in the L2ARQ frames a receiver determines if a packet has been lost during transmission. If an L2ARQ frame has been lost, the repetition of that L2ARQ frame is started. By means of a corresponding mechanism, the transmitter receives a message about the error produced, and the packet with the corresponding number is taken from the buffer memory and transmitted again. If a packet is transmitted to the receiver successfully, it is removed from the buffer on the transmitting side.
The mechanism described refers to the so-called numbered mode. Said mode performs a reliable service by ensuring reliable data transmission from a transmitter to a receiver. There is also the so-called unnumbered mode. In such mode, no error correction is performed using the ARQ process. In this way the mode performs an unreliable service.
However, the repetition of the packets implies that the packets arriving on the receiving side are provided in a sequence that does not correspond to the transmitted sequence.
In current development procedures the task of the link layer protocol, as long as it supports ARQ, is to bring the L2ARQ frames into the transmitted sequence. This implies that, for example, the received RLP packets are accumulated in a buffer on the receiving side until the sequence of the RLP packets is reproduced. This means that an RLP frame is released into the layer directly at its top only when said frame has been completely received and when said frame is the next in sequence. If, for example, a frame is repeated due to an error, all subsequent frames already received are buffered until the repeated frame has been received without errors. Only when the RLP packets are arranged in a corresponding sequence, which is generated by means of a sequence of numbers, are they consequently passed to the PPP layer. Before this the control information is erased.
The PPP layer receiver performs an identification of the PPP frames. For this purpose the spacers are sought. When a PPP frame has been recognized as complete, the received IP datagram is passed to the IP layer which then passes the received TCP segment to the TCP protocol layer.
Due to the fact that the L2ARQ frames are temporarily stored in the link layer that allows to bring these frames to the corresponding sequence, high processing times can occur. In particular, this has a negative effect on applications that are sensitive to time lags. Long time delays in any case impair efficient data processing. In the case of applications that are sensitive to lag, this can even cause a job execution to stop. Additionally, this method requires a large buffer in the corresponding protocol layers, especially however, in the RLP protocol layer, because the packets are temporarily buffered at that level until the requested sequence has been reproduced. However, long data storage times lead to long time delays for data processing in a hierarchical protocol structure.
Therefore, it is an object of the present invention to provide a method and a device that ensures more efficient processing of data by the receiver for packet-oriented applications in a data transmission. In particular, it is an object of the invention to reduce the need for memory space on the receiving side.
According to the invention, said object is provided by the teaching of patent claim 1 and by the teaching of patent claim 24.
It is advantageous that long buffering times do not occur throughout the direct transmission of the packets generated entirely in the link layer to the protocol layer arranged directly on top of it.
For this reason it has also proven to be advantageous that the received data is transmitted more quickly to the application layer, which guarantees a more stable way of working for delay-sensitive applications.
Another advantage is the reduction of the necessary storage capacity in the corresponding protocol layer on the receiving side, since the received data is not stored in the buffer memory4
ES 2 270 631 T3 day until a corresponding sequence of received data is available, but the completely generated packets are released directly into the protocol layer on top of it, even if some data packets have not possibly been received before.
Further advantageous forms of the invention can be deduced from claims 2 to 23 and from claim 25 of the patent.
The invention is explained in more detail below by means of embodiments and figures, in which:
- figure 1 shows a flow chart of the method according to the invention,
- Figure 2 shows an illustration of protocol layers in the Internet,
- figure 3 shows a schematic diagram of user data,
- figure 4 shows an illustration of a network system,
- figure 5 shows a diagram of the Internet Protocol,
figure 6 shows an illustration of an RLP frame, figure 7 shows an illustration of an interflow mode, and
figure 8 shows an illustration of an intraflow mode.
The invention is explained below by means of FIG. 1 and patent claim 1.
According to figure 1 the data packets of a first protocol layer are arranged on a transmitting side 10 and are consequently passed to a second protocol layer 20 directly below it. This layer packages the received data in data packets of the second protocol layer 30. In this connection, attention is drawn to the fact that one data packet of the second protocol layer does not contain the data of two different data packets of the first protocol layer. Each data packet in the second protocol layer receives a unique sequence number. The data packets of the second protocol layer packed in this way are passed to an available network in the current sequence 40 and are consequently transmitted through the network 50. The individual data packets of the second protocol layer are received at the receiving side 60. The received second protocol layer data packets are classified into a sequence by means of the sequence number 70 and stored in the buffer memory provided. 80. They are examined in sequence to recognize the data packets of the first protocol layer 90. If a data packet is received from the second protocol layer, it is first examined whether this data packet contains separators from the first protocol layer. If it contains them, it is a start or end mark of a first protocol layer data packet. In case of an initial mark, this means that subsequent data packets of the second protocol layer belong to a new data packet of the first protocol layer. Data packets from the second protocol layer are buffered until a data packet from the first protocol layer 100 has been fully received. This is detected by receiving a data packet from the second protocol layer. protocol, in which the data field contains a final mark and is also the next in a sequence. Only a completely generated data packet is released from the first protocol layer to the protocol layer directly on top 110 of it.
Next, the invention is explained by means of patent claim 24.
A formatting of data packets from a first protocol layer into a second protocol layer and their arrangement according to a transmission sequence is performed by means for providing data packets from a first protocol layer to a second protocol layer. . Said data packets are transmitted through a network provided with transmission means. The receiving means for receiving the data packets on the receiving side receive the packets. With classification means for classifying the data packets, the received data packets are arranged in a sequence of consecutive data packets and stored in a buffer during the temporary storage of the received data packets from the second protocol layer. The data packets of the second protocol layer are examined as to whether a data packet of the first protocol layer can be recognized. This is done using detection means to detect a fully combined data packet from the first protocol layer. Therefore, a completely generated data packet is examined by an examination means for association with a data stream. Therefore, a data packet examined by a releasing means is released to release a data packet completely generated in the first protocol layer.
A possible field of application of the invention is in the field of Internet applications via a mobile data network, such as GSM. A possible application of the invention is explained in more detail below by means of an embodiment, in which the processing of the data is illustrated as from the application on the transmission side until the release of the data packets generated in full in the receiving side.
For this purpose a network system is used, which is shown schematically in Figure 4. It schematically illustrates a communication between a mobile subscriber, for example with a mobile station, and a subscriber integrated in a fixed network, the server. The upper part of the figure shows the physical link with the corresponding communication units, and the lower part constitutes the logical link with the protocols involved.
The mobile station MS can, for example, be a portable computer. Said laptop is connected via a terminal adaptation function (TAF), the task of which is, for example, performed by the PCMCIA card (Personal Computer Memory Cards International Association), with the mobile station MS, by example, a mobile phone. The mobile station MS communicates with a BTS (Base Transceiver Station), which again communicates with a BSC (Base Station Controller). The connection to an analog telephone network, the so-called public switched telephone network (PSTN) is done by means of a modem, which is integrated into the so-called interconnection function IWF. The IWF interconnection function is part of the mobile switching center, the so-called center of
ES 2 270 631 T3 switching services (MSC). In addition, the connection is made through a public PSTN telephone network to an Internet Service Provider (ISP). The connection to a subscriber terminal, the server, is established via the Internet. For reasons of clarity, the connection through the Internet has not been illustrated in more detail in Figure 4.
It should be noted that applications are implemented independently of the underlying protocol layers. The transmission of the data thus generated is carried out in a transparent way to the user. This is also the end of the hierarchical structure of the protocol stack, that is to say to guarantee an optimal and stable transmission without having to involve the user in the facts of the system. However, the underlying system is expected to support all applications used by the user, such as accessing the Internet or transferring video data. However, different applications have different requirements on the system.
Certain Internet applications such as a banking transaction, for example, require a secure transport protocol, only in this way to guarantee an error-free flow of data during monetary transactions over the Internet. A secure data transmission is guaranteed by the so-called TCP Transmission Control Protocol.
In contrast to this, it is not required in the case of a video transfer to use a protocol that guarantees a reliable secure data transmission, since the security of a reliable data stream is possibly associated with longer transmission times. In the case of video transmission, it is better to guarantee a faster transmission of data in sequence in order to obtain a real impression in the presentation of video images. Errors that may occur during a transmission are within certain limits and can be tolerated when video images are retransmitted. For this reason, an error correction protocol is not used. An example of such transmission layer protocols is the so-called UDP User Datagram Protocol.
In most cases, a user uses multiple applications during a session, for example, if they want to send an email and stream a video in the background at the same time. In this case, the user generates two different data streams, in which the email transmission is based on TCP and the video transmission is based on UDP. Another example is Internet access. In most cases, several Internet pages are accessed during a session, which are often located on different servers. Although the generated data flows are exclusively TCP flows, in this case different data flows are involved since the receivers are different.
Such a distinction is taken into account at the protocol layer of the network, such as the IP layer. Said layer comprises receiving packets from the transport protocol layer and packaging them to form packets with its own format. Figure 5 illustrates a format of an IP packet. Said packet contains control data including, for example, the version of the IP protocol, for example IPv4 or IPv6. This has not been shown in detail in Figure 5. Furthermore, the format of the IP data is provided with a field containing the information regarding the transport protocol. In the case of a UDP protocol, this means that a combination of bits is entered in this field, which corresponds to the UDP designation.
However, the decisive factor in distinguishing the data flow is not only the type of protocol but also the relative factor as to which addresses are contained in the IP header. This means that if both the IP address of the transmitter and the IP address of the receiver are identical in two IP packets according to Figure 5, the TCP header has to be further examined in sequence to find out the difference between the data streams. Different port numbers are assigned to different data streams. Said port numbers identify the corresponding data flow at the transmission level by means of which communication between the partner instances is guaranteed. The header of a TCP packet contains the information regarding the port number, which is compared by differentiating the data flow. Only when the port numbers of the transmitter and receiver are identical, the data flow is the same. If these addresses are different, that is, if both the IP addresses and the port numbers differ from each other, the receivers are different and, therefore, the data flows are different. This mechanism is applied in the current version of the IP used, the so-called IPv4 version 4 of the Internet Protocol. In the next IP version, the so-called version 6 of the Internet Protocol, IPv6, the definition is basically the same. Here, different data streams are differentiated by means of so-called data stream identifiers, also called stream identifiers. The described method can also be transferred in IPv6 and basically every protocol stack in which the data flow can be identified.
Depending on whether the packets at the IP layer come from identical or different data streams, a difference is made between two modes. In the case of IP packets of identical data flow, an interflow or intra-data flow mode is involved. The term interflow mode designates a mode, in which packets belonging to different data streams are differentiated.
According to figure 4, in the case where a link has already been created in the transport layer between a mobile station and a server on the Internet, an example of data flow from said server to the mobile station is shown below MS. This example shows the implication of communication units and communication protocols in more detail.
The IP datagrams packed in the network layer are transmitted over the Internet to a so-called Internet Service Provider ISP. The ISP transmits the received IP packets to the PPP layer. This layer generates a stream of bytes formatted in PPP frames from the data obtained. Separators are added to differentiate the respective packages. Therefore, the PPP frames are arranged for an analog transmission. The ISP provides a modem for transmission by modulating the data to an audio signal in response to the transmission rate and mode. In the illustrated example, in which a connection is made through an analog network, the PSTN, it is a
ES 2 270 631 T3 V.32 modem. If the connection is made through an ISDN network, a V.110 protocol is used, for example. To control the flow, ie in sequence to avoid data overflow in the IWF interconnect function, a V.42 protocol is used. This task corresponds to that of the RLP radio link protocol in GSM.
In the IWF interconnection function, the received data is converted into the desired format for GSM.
This means that the byte stream from the PPP layer is released at the RLP layer. This layer packs the received byte stream into RLP frames. A format of an RLP frame is illustrated in Figure 6. An RLP frame consists of 240 bits. 16 bits of them are for the header information and 24 bits for the FCS frame check sequence. A decisive factor in packing PPP frames into RLP frames is that the data packets from the upper protocol layers are not directly visible to the RLP layer in the received byte stream. This mainly means that the RLP layer cannot differentiate between PPP frames or between IP datagrams and therefore between packets in the transport layer. To differentiate the packets, the byte stream has to be checked for separators. This is necessary to prevent data from two different PPP frames from being packed into one RLP frame. Each newly generated RLP frame is provided with a sequence number. Packets arranged in this way are transmitted through an arranged mobile network. During transmission, the sequence of RLP frames can be confused due to the transmission errors produced and the ARQ process used for their correction. This, therefore, implies that the frames are received by the receiver in a changed sequence. The receiver first checks the sequence number of the received RLP frames to find out the position of the RLP frame in the current sequence. In another step it will be checked if the received RLP frame contains a separator. If it contains an initial mark, it is deduced that it is the first frame in a consecutive PPP frame and is stored in a buffer at the corresponding position. Consecutive RLP frames showing consecutive numbers are also later buffered at the corresponding location. This continues until a PPP frame receives the status of a fully generated frame. A PPP frame is fully generated if the start position and end mark have been correctly received and all RLP frames have been received correctly without free spaces and if they are located in the correct sequence between the RLP frame containing the start mark and the frame LP containing the final mark. Before the RLP frames are buffered the frames are de-encapsulated, ie the control data is removed from the RLP protocol layer.
When checking RLP packets, not only are PPP packets differentiated, but frame checking can be extended to detect IP packets. This is the basis for differentiating between interflow mode and intraflow mode. As already mentioned, the IP header contains the information regarding the transport protocol used and the corresponding addresses. Due to the fact that a complete datagram fits into a PPP frame, the examination of a completed PPP frame can be assigned to the recognition of a datagram and information about it, that is, as to whether the IP datagrams of the same or different data streams
For this purpose, the frame control data is checked after a full PPP frame has been generated. The data is examined in particular on the control data of the respective protocol layer. This is done by using a recognition means to recognize a completely combined data packet. This means that the information regarding the control data of the respective layer must be available to said media, in order only on this basis to make a decision whose data comes from the link layer, in particular from PPP, and from where they start in the PPP frame the control data from the IP control layer. Since the format of the data decapsulation is standardized in each layer, an implementation must be established in said mechanism that is similar to the valid encapsulation standards. In the embodiments explained below, a more detailed explanation of the examination of IP datagrams is given.
An IP datagram is transmitted to the protocol layer - the transport layer - directly on top of it. The TCP packets are numbered consecutively equally, and due to the current numbering the sequence of the TCP packets is generated in the transport layer. In other words, TCP is responsible for arranging TCP packets in correct sequence. At this level, faulty packets are also detected, and errors are removed by starting an investigation into the repeated transmission of the packets.
Due to the fact that TCP is responsible for the generation of the correct sequence of the transmitted TCP packets, it is no longer required to carry out the same also in the protocol layer of the network. This particularly allows IP datagrams to be received in a changed sequence. The cause of the reception of the IP datagrams in the wrong sequence is the asynchronous transmission of them. Individual packets can take different paths to the receiver, so it can happen that the sent packets pass each other on their way, thus arriving at the receiver in a changed sequence. Due to the fact that the transport layer, in particular TCP, is responsible for generating the sequence, it is not important as to how wide the sequence of the IP packets in the network is changed. This particularly means that the efficiency of the packet processing has not been influenced if the sequence is further changed by the RLP protocol layer.
The same happens with UDP, in which the change of the packet sequence is allowed.
Next, by means of FIG. 7, an application of the invention according to patent claim 16 for the interflow mode is explained in more detail.
In interflow mode, packets belonging to different data streams are differentiated. For this purpose, fully generated PPP frames are examined as described above. In this mode, the PPP frames are already released by the RLP receiver, first, when they have been received.
ES 2 270 631 T3 fully and correctly, and secondly when it has been ensured that no more PPP frames are contained in the data possibly buffered by the RLP receiver, belonging to the same data stream of PPP frames to be released.
After the IP layer control data has been recognized the transport protocol field can be searched within that data. If the entry in that field is different in the examined PPP frames, different data flows are definitely involved. However, if the input regarding the transport protocol is concurrent, the IP addresses of the transmitters and receivers are examined. In case of agreement of the addresses, the port number of the transmitters and receivers is examined. If differences cannot be detected during this examination, PPP frames from the same data stream are involved.
Next, according to Fig. 7, the case is assumed that the data transmitted from two different data streams, the UDP data stream and the TCP data stream, 170. The PPP data packets are generated from data in an encapsulation process, 180. Depending on whether a UDP data flow or a TCP data flow is involved, two types of PPP data packets are differentiated, PPP (IP (TCP (n))) and PPP (IP (UDP (n))). Here the n designates the sequence number of a UDP packet or a TCP packet. According to figure 7 two data packets, PPP (IP (UDP (1))), PPP (IP (UDP (2))) and two data packets PPP (IP (TCP (1))), PPP ( IP (TCP (2))) are generated at the PPP protocol layer. These are then transmitted to the RLP protocol layer which packages them into a stream of consecutive RLP frames RLP (1), RLP (2), ... RLP (12), 190. As already mentioned above, there is no difference between the different protocol layer data packets on top of it in the RLP protocol layer. According to figure 7, the PPP data packet (IP (TCP (1))) is divided into RLP (1), RLP (2), RLP (3) and RLP (4). The other data packets in the network protocol layer are also divided in this way. The completed RLP frames are then transmitted over a network 200. During transmission there may be a change in the sequence of the RLP frames, which may be due to the frequent repetition of incorrectly transmitted RLP frames of the TCP data stream.
Assuming that the receiver receives, according to figure 7, the RLP (1) frame first, 210, and the RLP frames RLP (5), RLP (6), RLP (7) are received later, 220. These are recognized as a package received in full. Therefore, such a packet is examined in sequence to detect the type of the data flow. It is recognized as a UDP packet, PPP (IP (UDP (1))) and is released at the PPP layer, 230. However, the PPP layer is only released when it is certain that there are definitely no PPP frames of the same data stream contained in the data possibly buffered by the receiver RLP. In this embodiment it is only supported to release PPP frames in the PPP protocol layer that belong to different data streams, or to the same data stream, however, only in the correct sequence with respect to the numbering of the RLP frames.
According to figure 7, the RLP, RLP (8), RLP (9), RLP (10) frames are next to be received, 240. These are then again buffered and recognized as a complete packet PPP (IP (UDP (2))), 250. As the RLP protocol has the information that the first UDP packet, PPP (IP (UDP (1))) belonging to the same data stream has already been released, a decision is now made on the basis of this information to release the PPP (IP (UDP (2))) at the PPP protocol layer. As the PPP frames of the TCP packet have not yet been fully generated, as the PPP (IP (TCP (1))) only contains the RLP (1), it is still buffered. However, if the PPP (IP (UDP (1))) is not complete either, the PPP (IP (UDP (2))) is kept in the buffer until the PPP (IP (UDP (1) ))).
The following embodiment advises an extended implementation, in which a release of fully generated PPP frames belonging to both different and identical data streams is supported.
In the following, said embodiment is explained in more detail by means of Fig. 8 and patent claim 17.
Assuming that due to a poor temporal quality of the connection produced during the transmission of the first PPP packets, first the PPP (IP (UDP (2))) is received completely. This occurs due to the reception of the RLP (8), RLP (9), RLP (10), 280 frames. The buffer only contains one RLP frame, the RLP (5) frame, 270. Due to the fact that intraflow mode is supported, of all fully generated frames, those belonging to the same data stream are also released. This only means that the integrity of a PPP frame has been notified. The upper layers are responsible for arranging the packets in the correct sequence. Also, the RLP (1), which was received first and which constitutes the first frame of an incompletely generated PPP (IP (TCP (1))), is kept in the buffer, 260.
In the above, the invention was presented by way of an exemplary application in the GSM field. In other networks, the same application possibilities exist, such as the GPRS network. Said network is intended for the transmission of a packet-oriented application from the transmitter to the receiver. The structure of the protocol stack is also compatible in both cases.
The invention can also be applied in an environment where only one protocol link is provided. This means that a single handshake protocol is implemented instead of PPP and RLP in GSM or LLC and RLC in GPRS. In this case, said protocols are required to work reliably. For example, it is possible to find this form of application in UMTS.
Contents2
7 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7
17 members in 10 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 19980124010 | European Patent Office (EPO) | – | |
| 98124010 | European Patent Office (EPO) | A | |
| 98124010 | European Patent Office (EPO) | A | |
| 9812401099965453 | – | – | – |
| EP19980124010 | – | – | – |
Members17
| Document | Office | Kind | |
|---|---|---|---|
| EP1014641A1 | European Patent Office (EPO) | A1 | |
| CA2356900A1 | Canada | A1 | |
| WO0038390A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2096300A | Australia | A | |
| EP1142263A1 | European Patent Office (EPO) | A1 | |
| CN1331877A | China | A | |
| JP2002534001A | Japan | A | |
| AU760994B2 | Australia | B2 | |
| US6948108B1 | United States of America | B1 | |
| EP1142263B1 | European Patent Office (EPO) | B1 | |
| AT332051T | Austria | T | |
| ATE332051T1 | Austria | T1 | |
| DE69932184D1 | Germany | D1 | |
| CN1287576C | China | C | |
| ES2270631T3This record | Spain | T3 | |
| DE69932184T2 | Germany | T2 | |
| JP4594530B2 | Japan | B2 |
Numbers
- Publication
- 2270631
- Publication, DOCDB
- 2270631
- Publication, EPODOC
- ES2270631T
- Application
- 99965453
- Application, DOCDB
- 99965453
- Application, EPODOC
- ES19990965453T
Titles2
- Spanish
- METODO Y DISPOSITIVO PARA REDUCIR EL TIEMPO DE PROCESO DE DATOS EN REDES DE COMUNICACION.
- English
- METHOD AND DEVICE FOR REDUCING THE TIME OF DATA PROCESS IN COMMUNICATION NETWORKS.
Classification
- CPC, 3
- H04L9/40
- H04L69/324
- H04L69/32
- IPC, 7
- H04L29 06
- H04L12 28
- H04L29 08
- H04W80 02
- H04W80 04
- H04W80 06
- H04W88 14