FR2941830A1 - Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data - Google Patents
Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data Download PDFInfo
- Publication number
- FR2941830A1 FR2941830A1 FR0900419A FR0900419A FR2941830A1 FR 2941830 A1 FR2941830 A1 FR 2941830A1 FR 0900419 A FR0900419 A FR 0900419A FR 0900419 A FR0900419 A FR 0900419A FR 2941830 A1 FR2941830 A1 FR 2941830A1
- Authority
- FR
- France
- Prior art keywords
- data
- frame
- unit
- received
- transfer
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1809—Selective-repeat protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements 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/1607—Details of the supervisory signal
- H04L1/1671—Details of the supervisory signal the supervisory signal being transmitted together with control information
- H04L1/1678—Details of the supervisory signal the supervisory signal being transmitted together with control information where the control information is for timing, e.g. time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements 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/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/187—Details of sliding window management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
Abstract
Description
10 La présente invention a pour objet un procédé permettant d'assurer le transfert séquentiel d'une suite de données entre une unité émettrice et une unité réceptrice. Elle s'applique notamment, mais non exclusivement, à un procédé permettant de transférer des données comprises dans un appareil - enregistreur, au travers d'un réseau, vers un serveur informatique, l'appareil - 15 enregistreur étant relié à un appareil de mesure de type compteur électrique. The present invention relates to a method for sequentially transferring a data stream between a transmitting unit and a receiving unit. It applies in particular, but not exclusively, to a method for transferring data included in a recording apparatus, via a network, to a computer server, the recording apparatus being connected to a measuring apparatus of type electric meter.
D'une façon générale, on sait qu'il existe des compteurs dont les données enregistrées peuvent être relevées à distance, en utilisant notamment le réseau GSM ("Global System for Mobile communications"). 20 Généralement, les protocoles mis en oeuvre pour permettre la transmission des données enregistrées dans ces compteurs "télé û relevables" sont notamment : • des protocoles propriétaires tels que le protocole "Trimaran" d'EDF ("Électricité de France"), qui sont liés à des modems anciens tels que le 25 V23HD, ce qui se traduit par une transmission lente des données. En outre, les acquittements nécessaires à chaque échange de données pénalisent fortement les adaptations aux réseaux de type GSM data ; • des protocoles propriétaires ultérieurs tels que les protocoles "DLMS" ("Device Language Message Specification") et "Trimaran +", qui sont 30 liés à des modems tels que le V22bis, la transmission des données en 1 2941830 -2- mettant en oeuvre ces protocoles, bien que plus rapide que celle reposant sur les protocoles précédents, demeure lente ; • des protocoles génériques tels que le protocole "DLMS / COSEM" ("Companion Specification for Energy Metering") qui permettent de transmettre les données plus rapidement que dans les cas précédents néanmoins, ce type de protocoles nécessite la transmission d'une quantité importante de données en raison d'un codage réalisé quasi - exclusivement en ASCII. In general, it is known that there are counters whose recorded data can be recorded remotely, using in particular the GSM network ("Global System for Mobile Communications"). Generally, the protocols implemented to enable the transmission of data recorded in these "liftable" tele-meters are in particular: • proprietary protocols such as the "Trimaran" protocol of EDF ("Électricité de France"), which are related to older modems such as the V23HD, which results in slow data transmission. In addition, the acknowledgments required for each data exchange strongly penalize the adaptations to networks of GSM data type; Subsequent proprietary protocols such as Device Language Message Specification (DLMS) and Trimaran + protocols, which are related to modems such as V22bis, data transmission in These protocols, although faster than those based on previous protocols, remain slow; • generic protocols such as the "DLMS / COSEM" protocol ("Companion Specification for Energy Metering"), which allow the data to be transmitted more quickly than in the previous cases. Nevertheless, this type of protocol requires the transmission of a large quantity of data. data due to coding done almost exclusively in ASCII.
L'invention a donc plus particulièrement pour but de supprimer ces inconvénients en proposant un procédé qui permet de transférer des données comprises dans un appareil - enregistreur, au travers d'un réseau, vers un serveur informatique, la mise en oeuvre de ce procédé permettant une transmission rapide des données même en circulant sur des réseaux à "allers ù retours" lents, tels que les réseaux du type GSM data. The invention is therefore more particularly intended to overcome these drawbacks by proposing a method that makes it possible to transfer data included in a recording device, via a network, to a computer server, the implementation of this method allowing fast data transmission even when traveling on slow "return-to-go" networks, such as networks of the GSM data type.
À cet effet, l'invention propose un procédé pour le transfert séquentiel d'une suite de données Do à Dm entre une unité émettrice E et une unité réceptrice R, dans lequel : • le transfert des données Do à Di _ 1, avec m > i > 0. s'effectue à la suite d'une requête de transfert Req, transmise à l'unité émettrice E par l'unité réceptrice R, i étant une constante ; • le transfert d'une donnée avec m > j > i, s'effectue à la suite de la réception de l'acquittement ACKK _ i par l'unité émettrice E en provenance de l'unité réceptrice R, d'une donnée Di _ i antérieurement transférée à l'unité réceptrice R, j étant une variable ; caractérisé en ce que : • les données Do à Dm sont transmises de façon à ce que le délai de transfert normal de deux données successives Dnt et Dnt +1, avec m > nt 0, soit sensiblement égal à une période T ; 2941830 -3- • la réception de l'acquittement ACKK _ i par l'unité émettrice E, d'une donnée transférée Di _ i, engendrant le transfert de la donnée Di ainsi que le transfert de la donnée suivante Di + 1, dans le cas où le transfert de cette donnée suivante Di + n'a pas été déclenché par la réception par 5 l'unité émettrice E de l'acquittement ACKU _ j) + du transfert de la donnée précédente Da _ j) + 1. To this end, the invention proposes a method for the sequential transfer of a data sequence C 1 to D 2 between a transmitting unit E and a receiving unit R, in which: the transfer of the data C 1 to D 1, with m > i> 0. is performed following a transfer request Req, transmitted to the transmitting unit E by the receiver unit R, i being a constant; The transfer of a data item with m> j> i is effected following the reception of the acknowledgment ACKK _ i by the sending unit E from the receiving unit R, of a datum Di _ i previously transferred to the receiving unit R, j being a variable; characterized in that: • the data Do to Dm are transmitted so that the normal transfer delay of two successive data Dnt and Dnt +1, with m> nt 0, is substantially equal to a period T; Receiving the acknowledgment ACKK _ i by the sending unit E, of a transferred data Di _ i, generating the transfer of the data Di and the transfer of the next data Di + 1, in the case where the transfer of this next data item Di + has not been triggered by the reception by the sending unit E of the acknowledgment ACKU (j) + of the transfer of the previous data Da (j) + 1.
Ainsi, à titre d'exemple, lorsque i = 2, la suite de données Do à Dm comprend deux séries de données entrelacées à savoir, une série de rang pair et une série 10 de rang impair. De cette façon, la réception d'un acquittement ACKK _ 2 par l'unité émettrice E, d'une donnée transférée Di _ 2 d'une série (par exemple de rang pair), engendrant le transfert de la donnée suivante Di de la même série, ainsi que le transfert de la donnée suivante Di + 1 de l'autre série (cette dernière étant dans ce cas, de rang impair) dans le cas où le transfert de cette donnée 15 suivante Di + 1 n'a pas été déclenché par la réception par l'unité émettrice E de l'acquittement ACKK du transfert de la donnée précédente Di de cette autre série. Thus, for example, when i = 2, the data sequence Do to Dm comprises two sets of interleaved data namely, a series of even rank and a series of odd rank. In this way, the reception of an acknowledgment ACKK _ 2 by the transmitting unit E, of a transferred data Di _ 2 of a series (for example of even rank), generating the transfer of the next data item Di of the same series, as well as the transfer of the next data Di + 1 of the other series (the latter being in this case of odd order) in the case where the transfer of this next data item Di + 1 has not been triggered by the reception by the transmitter unit E of the ACKK acknowledgment of the transfer of the previous data Di of this other series.
De cette manière, la mise en oeuvre du procédé selon l'invention permet le 20 transfert d'au moins i données successives d'une suite de données Do à Dm sans attendre la réception de l'acquittement de ces i données successives, ce qui permet de ne pas être pénalisé par les délais relativement longs des échanges "allers ù retours" des réseaux du type GSM data. En outre, l'absence de réception d'un acquittement par l'unité émettrice E n'interrompt pas forcément 25 le transfert des données, la réception d'un acquittement pouvant permettre de commander le transfert de plusieurs données. In this way, the implementation of the method according to the invention allows the transfer of at least i successive data of a sequence of data Do to Dm without waiting for the reception of the acknowledgment of these i successive data, which allows not to be penalized by the relatively long delays of exchanges "go back" returns networks of the type GSM data. In addition, the absence of receipt of an acknowledgment by the transmitting unit E does not necessarily interrupt the data transfer, the receipt of an acknowledgment that can be used to control the transfer of several data.
Avantageusement, le procédé selon l'invention peut comprendre une étape supplémentaire permettant de retransmettre des données dans l'hypothèse où 30 plusieurs acquittements consécutifs n'ont pas été reçus par l'unité émettrice E, au terme d'un délai prédéterminé. Advantageously, the method according to the invention may comprise an additional step for retransmitting data in the event that several consecutive acknowledgments have not been received by the transmitting unit E, after a predetermined delay.
Un mode d'exécution de l'invention sera décrit ci-après, à titre d'exemple non limitatif, avec référence aux dessins annexés dans lesquels : La figure 1 est une représentation schématique des échanges des données et des acquittements correspondants entre une unité émettrice et une unité réceptrice. An embodiment of the invention will be described hereinafter, by way of non-limiting example, with reference to the accompanying drawings in which: FIG. 1 is a schematic representation of data exchanges and corresponding acknowledgments between an emitting unit and a receiving unit.
La figure 2 est une représentation schématique des échanges des données et des acquittements correspondants entre une unité émettrice et une unité réceptrice, dans le cas où un acquittement n'est pas reçu par l'unité émettrice. FIG. 2 is a schematic representation of data exchanges and corresponding acknowledgments between a transmitting unit and a receiving unit, in the case where an acknowledgment is not received by the transmitting unit.
La figure 3 est une représentation schématique d'un organigramme d'étapes dont la mise en oeuvre permet l'initialisation de requêtes de transfert par l'unité réceptrice. FIG. 3 is a schematic representation of a flowchart of steps, the implementation of which allows initialization of transfer requests by the receiving unit.
La figure 4 est une représentation schématique d'un organigramme d'étapes dont la mise en oeuvre permet la réception des données et l'envoi des acquittements correspondants par l'unité réceptrice. FIG. 4 is a schematic representation of a flowchart of steps, the implementation of which allows the reception of the data and the sending of corresponding acknowledgments by the receiving unit.
La figure 5 est une représentation schématique d'un organigramme d'étapes dont la mise en oeuvre permet l'envoi des données par l'unité émettrice. La figure 6 est une représentation schématique de la structure et du format des trames échangées entre l'unité émettrice et l'unité réceptrice. FIG. 5 is a schematic representation of a flowchart of steps the implementation of which allows the sending unit to send data. Figure 6 is a schematic representation of the structure and format of the frames exchanged between the transmitting unit and the receiving unit.
La figure 7 est une représentation schématique du champ fonction codé 30 sur un octet d'une trame émise par l'unité réceptrice en direction de l'unité émettrice.25 La figure 8 est une représentation schématique du champ fonction codé sur un octet d'une trame émise par l'unité émettrice en direction de l'unité réceptrice. La figure 9 est une représentation schématique du champ fonction codé sur deux octets d'une trame émise par l'unité réceptrice en direction de l'unité émettrice. Fig. 7 is a schematic representation of the octet-coded function field of a frame transmitted by the receiver unit to the transmitting unit. Fig. 8 is a schematic representation of the octet-coded function field. a frame transmitted by the transmitting unit towards the receiving unit. Fig. 9 is a schematic representation of the double-byte function field of a frame transmitted by the receiving unit towards the transmitting unit.
10 À titre d'exemple non limitatif, tel que cela est illustré sur les figures 1 et 2, la mise en oeuvre du procédé selon l'invention, qui permet le transfert séquentiel d'une suite de données Do à Dm entre une unité émettrice E et une unité réceptrice R, se traduit par : • l'émission d'une requête de transfert Req par l'unité réceptrice R à 15 l'unité émettrice E ; • le transfert des données Do à Di _ 1, avec m > i > 0, qui s'effectue à la suite de la réception de la requête de transfert Req par l'unité émettrice E ; en l'espèce, i, qui définit la dimension d'une fenêtre d'émission, est égal à 2 par conséquent, dans cet exemple, les données Do à D1 sont 20 transmises à la suite de la réception de la requête de transfert Req ; • le transfert d'une donnée avec m > j > i, qui s'effectue à la suite de la réception de l'acquittement ACKi _ i par l'unité émettrice E en provenance de l'unité réceptrice R, d'une donnée Di _ i antérieurement transférée à l'unité réceptrice R ; à titre d'exemple, si j est égal à 3, la 25 donnée D3 est transmise à la réception de l'acquittement ACK1 par l'unité émettrice E ; • la réception de l'acquittement ACKi _ i par l'unité émettrice E, d'une donnée transférée Di _ i, engendrant le transfert de la donnée Di ainsi que le transfert de la donnée suivante Di + 1, dans le cas où le transfert de 30 cette donnée suivante Di + 1 n'a pas été déclenché par la réception par l'unité émettrice E de l'acquittement ACKü _ i) + 1 du transfert de la 2941830 -6- donnée précédente Do _ j) + 1 ; ainsi, tel que cela est représenté sur la figure 2, en prenant j égal à 3, la réception de l'acquittement ACK1 par l'unité émettrice E, de la donnée transférée D1, engendre le transfert de la donnée D3 ainsi que le transfert de la donnée suivante D4 même si le 5 transfert de cette donnée suivante D4 n'a pas été déclenché par la réception par l'unité émettrice E de l'acquittement ACK2 du transfert de la donnée précédente D2. By way of nonlimiting example, as is illustrated in FIGS. 1 and 2, the implementation of the method according to the invention, which allows the sequential transfer of a data sequence Do to Dm between an emitting unit E and a receiver unit R, results in: • the transmission of a transfer request Req by the receiver unit R to the sending unit E; • the transfer of the data Do to Di _ 1, with m> i> 0, which is performed following the receipt of the transfer request Req by the sending unit E; in this case, i, which defines the size of a transmission window, is therefore 2, in this example the data D 1 to D 1 are transmitted following receipt of the transfer request Req ; The transfer of a data item with m> j> i, which takes place following the reception of the acknowledgment ACKi _ i by the sending unit E from the receiving unit R, of a piece of data Di _ i previously transferred to the receiving unit R; for example, if j is 3, the data D3 is transmitted on receipt of the acknowledgment ACK1 by the transmitting unit E; The reception of the acknowledgment ACKi _ i by the sending unit E, of a transferred data Di _ i, generating the transfer of the data Di as well as the transfer of the next data Di + 1, in the case where the Transfer of this next data item Di + 1 has not been triggered by the reception by the transmitter unit E of the acknowledgment ACK (1) + 1 of the transfer of the preceding data item C (j) + 1. ; thus, as shown in FIG. 2, by taking j equal to 3, the reception of the acknowledgment ACK1 by the sending unit E of the transferred data D1 generates the transfer of the data item D3 as well as the transfer of the next data item D4 even if the transfer of this next data item D4 has not been triggered by the reception by the sending unit E of the acknowledgment ACK2 of the transfer of the previous data item D2.
A titre d'exemple, le processus d'initialisation de requêtes de transfert Req par l'unité réceptrice R est représenté schématiquement, sous forme d'organigramme, sur la figure 3. Ainsi, ce processus d'initialisation peut comprendre les étapes suivantes : • 1) la mise à o, à l'état inactif, des paramètres suivants : o "nrq" qui correspond au nombre de fois où une même requête de transfert Req est émise par l'unité réceptrice R ; o "nt" qui correspond au numéro de trame de chaque donnée de la suite de données Do à Dm à émettre ; o "tabort" qui est un compteur temps ; • 2) l'envoi par l'unité réceptrice R de la requête de transfert Req et le déclenchement du compteur temps "trep" qui était initialement à 0, le système passant d'un état inactif à un état d'initialisation de transaction ; • 3) la détermination du point de savoir si la durée définie par le compteur "trep" est supérieure à une constante "TR" qui correspond au délai au ù delà duquel l'émission de la requête de transfert Req est répétée ; • 4.a) si ce délai "TR" est dépassé sans qu'aucune réponse n'ait été reçue en retour par l'unité réceptrice R, le paramètre "nrq" est incrémenté d'une unité ; • 4.b) la détermination du point de savoir si la valeur du paramètre "nrq" est supérieure à une constante "NRP" qui correspond au nombre maximum possible de répétitions de l'émission de la requête de transfert Req en cas d'absence de réponse ; • 4.c.1) si la valeur du paramètre "nrq" est supérieure à la constante "NRP", la mise en oeuvre dudit processus d'initialisation est abandonnée; • 4.c.2) si la valeur du paramètre "nrq" n'est pas supérieure à la constante "NRP", le processus d'initialisation reprend à l'étape 2), la requête de transfert Req étant retransmise ; • 5) à la suite de l'étape 3), si le délai "TR" n'est pas dépassé, la détermination du point de savoir si la réponse reçue par l'unité réceptrice R consiste en une trame de numéro "nt", à savoir une trame de numéro 0 ; • 6) si cette réponse ne consiste pas une trame du type susdit, le processus d'initialisation reprend à l'étape 3) ; • 7) si cette réponse consiste en une trame du type susdit, la détermination du point de savoir s'il s'agit d'une trame de FIN ou NACK (non accusé de réception) ; • 8) si cette trame est une trame de FIN ou NACK, la constatation selon laquelle les données demandées ne sont pas disponibles ; • 9) si cette trame n'est pas une trame de FIN ou NACK, la détermination du point de savoir s'il s'agit d'une trame de données ; • 10) si cette trame n'est pas une trame de données, le processus d'initialisation reprend à l'étape 3) ; • 11) si cette trame est une trame de données, la constatation selon laquelle les données sont reçues. By way of example, the process of initializing transfer requests Req by the receiving unit R is shown schematically, in flowchart form, in FIG. 3. Thus, this initialization process may comprise the following steps: • 1) setting to o, in the idle state, the following parameters: o "nrq" which corresponds to the number of times that a same transfer request Req is sent by the receiver unit R; o "nt" which corresponds to the frame number of each data of the data sequence Do to Dm to be transmitted; o "tabort" which is a time counter; 2) the sending by the receiving unit R of the transfer request Req and the triggering of the time counter "trep" which was initially at 0, the system going from an inactive state to a state of transaction initialization; • 3) the determination of whether the duration defined by the counter "trep" is greater than a constant "TR" which corresponds to the time beyond which the transmission of the transfer request Req is repeated; • 4.a) if this "TR" delay is exceeded without any response being received by the receiving unit R, the parameter "nrq" is incremented by one unit; • 4.b) determining whether the value of the parameter "nrq" is greater than a constant "NRP" which corresponds to the maximum possible number of repetitions of the transmission of the transfer request Req in the event of absence Answer ; • 4.c.1) if the value of the parameter "nrq" is greater than the constant "NRP", the implementation of said initialization process is aborted; • 4.c.2) if the value of the parameter "nrq" is not greater than the constant "NRP", the initialization process resumes in step 2), the transfer request Req being retransmitted; • 5) following step 3), if the delay "TR" is not exceeded, determining whether the response received by the receiving unit R consists of a number frame "nt" namely, a frame of number 0; • 6) if this answer does not consist of a frame of the above type, the initialization process resumes in step 3); • 7) if this response consists of a frame of the above type, determining whether it is a FIN or NACK frame; • 8) if this frame is a frame of FIN or NACK, the finding that the requested data is not available; • 9) if this frame is not a frame of FIN or NACK, the determination of whether it is a frame of data; • 10) if this frame is not a data frame, the initialization process resumes in step 3); • 11) if this frame is a data frame, the finding that the data is received.
Le processus de réception de données par l'unité réceptrice R qui suit le processus d'initialisation de requêtes de transfert Req est représenté schématiquement, sous forme d'organigramme, sur la figure 4. Ainsi, ce processus de réception de données peut comprendre les étapes suivantes : • 1) l'envoi de l'acquittement ACK "nt" par l'unité réceptrice R dans le cas où cette dernière a reçu la trame de données de numéro "nt" ; • 2) l'enregistrement de cette trame de données de numéro "nt" par l'unité réceptrice R, l'incrémentation de "nt", et la mise à zéro suivie de l'initialisation du compteur "tabort" ; • 3) la détermination du point de savoir si la trame de données de numéro "nt" ("nt" ayant été incrémenté à l'étape précédente) a été reçue par l'unité réceptrice R ; • 4.a) si cette trame de numéro "nt" n'a pas été reçue par l'unité réceptrice R, la détermination du point de savoir si la durée définie par la valeur du paramètre "tabort" est supérieure à la constante "TAB" qui correspond à la durée de temporisation maximale avant arrêt du processus dans le cas où la trame de données de numéro "nt" n'a pas été reçue ; • 4.b.1) si la valeur du paramètre "tabort" est supérieure à la constante "TAB", la mise en oeuvre dudit processus de réception des données est abandonnée; • 4.b.2) si la valeur du paramètre "tabort" n'est pas supérieure à la constante "TAB", le processus de réception des données reprend à l'étape 3) ; • 5) à la suite de l'étape 3), si cette trame de numéro "nt" a été reçue par l'unité réceptrice R, la détermination du point de savoir s'il s'agit d'une trame de données ; • 6) si cette trame est une trame de données, le processus d'initialisation reprend à l'étape 1) ; • 7) si cette trame n'est pas une trame de données, la détermination du point de savoir s'il s'agit d'une trame de FIN ; • 8) si cette trame n'est pas une trame de FIN, le processus de réception des données reprend à l'étape 3) ; • 9) si cette trame est une trame de FIN, l'envoi par l'unité réceptrice R à l'unité émettrice E de l'acquittement ACK "nt" ; • 10) à la suite de l'étape 9), le passage de l'unité réceptrice R en état de veille. The process of receiving data by the receiving unit R which follows the process of initialization of transfer requests Req is shown schematically, in flow chart form, in FIG. 4. Thus, this data reception process can comprise the following: following steps: • 1) sending the acknowledgment ACK "nt" by the receiving unit R in the case where the latter has received the number data frame "nt"; • 2) the recording of this data frame of number "nt" by the receiver unit R, the incrementation of "nt", and the zeroing followed by the initialization of the "tabort" counter; • 3) determining whether the number data frame "nt" ("nt" having been incremented in the previous step) has been received by the receiver unit R; • 4.a) if this number frame "nt" has not been received by the receiving unit R, determining whether the duration defined by the value of the parameter "tabort" is greater than the constant " TAB "which corresponds to the maximum delay time before stopping the process in the case where the number data frame" nt "has not been received; • 4.b.1) if the value of the "tabort" parameter is greater than the "TAB" constant, the implementation of the said data reception process is aborted; • 4.b.2) if the value of the "tabort" parameter is not greater than the "TAB" constant, the data reception process resumes in step 3); • 5) following step 3), if this number frame "nt" has been received by the receiving unit R, determining whether it is a data frame; • 6) if this frame is a data frame, the initialization process resumes in step 1); • 7) if this frame is not a data frame, determining whether it is an END frame; • 8) if this frame is not an END frame, the data reception process resumes in step 3); • 9) if this frame is an END frame, the sending by the receiving unit R to the sending unit E of the acknowledgment ACK "nt"; • 10) following step 9), the passage of the receiving unit R in standby state.
Le processus d'envoi des données par l'unité émettrice E est représenté 5 schématiquement, sous forme d'organigramme, sur la figure 5. Ainsi, ce processus d'envoi des données peut comprendre les étapes suivantes : • 1) la mise à 0, à l'état inactif, des paramètres suivants : o "nt" qui correspond au numéro de trame de chaque donnée de la suite de données Do à Dm à émettre ; 10 o "nta" qui correspond au numéro de la dernière trame acceptée par l'unité réceptrice R au moyen d'un acquittement ACK ; o "tabort" qui est un compteur temps ; o "trep" qui est un compteur temps ; • 2) la détermination du point de savoir si la requête de numéro "nt" a été 15 reçue par l'unité réceptrice R ; • 3.a) si cette requête de numéro "nt" n'a pas été reçue par l'unité réceptrice R, la détermination du point de savoir : o si la durée définie par la valeur du paramètre "tabort" est égale à la constante "TAB" qui correspond à la durée de temporisation 20 maximale avant arrêt du processus dans le cas où la requête de numéro "nt" n'a pas été reçue ; ou o si une trame FIN a été reçue ; • 3.b) si la valeur du paramètre "tabort" est égale à la constante "TAB" ou si une trame FIN a été reçue, la mise en oeuvre dudit processus d'envoi 25 des données est abandonnée ; • 3.c) si la valeur du paramètre "tabort" n'est pas égale à la constante "TAB" ou si une trame FIN n'a pas été reçue, le processus d'envoi des données reprend à l'étape 2) ; • 4) à la suite de l'étape 2), si ladite requête a été reçue, l'analyse de cette 30 dernière est effectuée, à cette étape, le système passe d'un état inactif à un état de transaction ; 2941830 - 10- • 5) la préparation de la page de numéro "nt" ; • 6) l'envoi de la trame "nt" par l'unité émettrice E ; • 7) la détermination du point de savoir si l'acquittement ACK de numéro "x" a été reçu par l'unité émettrice E ; • 8.a) si cet acquittement ACK de numéro "x" a été reçu par l'unité émettrice E, la détermination du point de savoir si : "nta" < "x" < "nt" ; • 8.b) si "x" ne satisfait pas à cette double inégalité, la mise en oeuvre dudit processus d'envoi des données est abandonnée ; • 8.c) si "x" satisfait à cette double inégalité : o la variable "nta" est affectée de la valeur "x", la dernière trame acceptée par l'unité réceptrice R étant celle de numéro "x" ; o les compteurs "tabort" et "trep" sont mis à zéro ; • 9) à la suite de l'étape 7), si l'acquittement ACK de numéro "x" n'a pas été reçu par l'unité émettrice E, ou à la suite de l'étape 8.c), la détermination du point de savoir : o si la durée définie par la valeur du paramètre "tabort" est supérieure à la constante "TAB" ; ou o si une trame FIN a été reçue ; • 10) si la valeur du paramètre "tabort" est supérieure à la constante "TAB" ou si une trame FIN a été reçue, la mise en oeuvre dudit processus d'envoi des données est abandonnée ; • 11) si la valeur du paramètre "tabort" n'est pas supérieure à la constante "TAB" ou si une trame FIN n'a pas été reçue, la détermination du point de savoir si la page de numéro "nt" est la dernière page ; • 12.a) s'il s'agit de la dernière page, la détermination du point de savoir si "nt" = "nta" • 12.b) si "nt" = "nta", le processus d'envoi des données reprend à l'étape 1); • 13.a) à la suite de l'étape 1l, s'il ne s'agit pas de la dernière page, la détermination du point de savoir si "nt" ≠ "nta" + "i", "i" étant la dimension de la fenêtre d'émission ; 2941830 -11- • 13.b) si "nt" ≠ "nta" + "i", "nt" est incrémenté et le processus de réception des données reprend à l'étape 5) ; • 14) à la suite de l'étape 12.a) si "nt" ≠ "nta" ou à la suite de l'étape 13.b) si "nt" = "nta" + "i", la détermination du point de savoir si la durée 5 définie par le compteur "trep" est supérieure à une constante "TRP" qui correspond au délai au ù delà duquel l'émission de la dernière trame non acquittée est répétée ; • 15) si la durée définie par le compteur "trep" n'est pas supérieure à la constante "TRP", le processus d'envoi des données reprend à l'étape 7) ; 10 • 16) si la durée définie par le compteur "trep" est supérieure à la constante "TRP" : o "nt" est affectée de la valeur "nta" ; o "trep" est mis à zéro ; • 17) à la suite de l'étape 16, la variable "nt" est incrémentée ; 15 • 18) le processus d'envoi des données reprend à l'étape 5). The process of sending the data by the sending unit E is schematically shown in flowchart form in FIG. 5. Thus, this data sending process can comprise the following steps: 0, in the idle state, of the following parameters: o "nt" which corresponds to the frame number of each data element of the data sequence Do to Dm to be transmitted; O "nta" which corresponds to the number of the last frame accepted by the receiver unit R by means of an acknowledgment ACK; o "tabort" which is a time counter; o "trep" which is a time counter; • 2) determining whether the number request "nt" was received by the receiving unit R; • 3.a) if this request number "nt" was not received by the receiving unit R, the determination of the point of knowing: o if the duration defined by the value of the parameter "tabort" is equal to the constant "TAB" which corresponds to the maximum delay time before stopping the process in the case where the number request "nt" was not received; or o if a FIN frame has been received; • 3.b) if the value of the "tabort" parameter is equal to the "TAB" constant or if a FIN frame has been received, the implementation of said data sending process is aborted; • 3.c) if the value of the "tabort" parameter is not equal to the "TAB" constant or if a FIN frame has not been received, the data sending process resumes in step 2) ; 4) following step 2), if said request has been received, the analysis of the latter is carried out, at this step the system goes from an inactive state to a transaction state; 2941830 - 10- • 5) the preparation of the page number "nt"; • 6) sending the frame "nt" by the sending unit E; • 7) determining whether the ACK acknowledgment of number "x" was received by the sending unit E; 8.a) if this ACK acknowledgment of number "x" has been received by the sending unit E, determining whether: "nta" <"x" <"nt"; • 8.b) if "x" does not satisfy this double inequality, the implementation of the said data sending process is abandoned; • 8.c) if "x" satisfies this double inequality: o the variable "nta" is assigned the value "x", the last frame accepted by the receiving unit R being that of number "x"; o the "tabort" and "trep" counters are set to zero; • 9) following step 7), if the acknowledgment ACK of number "x" has not been received by the sending unit E, or following step 8.c), the determining the point of knowing: o whether the duration defined by the value of the "tabort" parameter is greater than the "TAB" constant; or o if a FIN frame has been received; • 10) if the value of the "tabort" parameter is greater than the "TAB" constant or if a FIN frame has been received, the implementation of the said data sending process is aborted; • 11) if the value of the "tabort" parameter is not greater than the "TAB" constant or if a FIN frame has not been received, the determination of whether the "nt" number page is the last page ; • 12.a) if it is the last page, determining whether "nt" = "nta" • 12.b) if "nt" = "nta", the process of sending the data is repeated in step 1); • 13.a) following step 1l, if it is not the last page, the determination of whether "nt" ≠ "nta" + "i", "i" being the dimension of the transmission window; 2941830 -11- • 13.b) if "nt" ≠ "nta" + "i", "nt" is incremented and the data reception process resumes in step 5); • 14) following step 12.a) if "nt" ≠ "nta" or following step 13.b) if "nt" = "nta" + "i", the determination of whether the duration defined by the counter "trep" is greater than a constant "TRP" which corresponds to the delay beyond which the transmission of the last unacknowledged frame is repeated; • 15) if the duration defined by the counter "trep" is not greater than the constant "TRP", the process of sending the data resumes in step 7); 10 • 16) if the duration defined by the counter "trep" is greater than the constant "TRP": o "nt" is assigned the value "nta"; o "trep" is set to zero; • 17) after step 16, the variable "nt" is incremented; 15 • 18) the data sending process resumes in step 5).
L'unité émettrice E et l'unité réceptrice R peuvent chacune comprendre notamment mais non exclusivement : • une unité centrale de traitement (UCT ù non représentée) qui permet 20 notamment de procéder aux traitements nécessaires à l'exécution desdites étapes ; • des moyens de mémoire (non représentés) tels que de la mémoire permanente (ROM) et/ou volatile (RAM) permettant notamment d'enregistrer les données reçues ou à émettre ; 25 • un moyen de gestion (non représenté) de transfert des données. The transmitting unit E and the receiving unit R can each comprise, in particular but not exclusively,: • a central processing unit (UCT, not shown) which makes it possible, in particular, to carry out the processing necessary for the execution of said steps; Memory means (not shown) such as permanent memory (ROM) and / or volatile memory (RAM) notably making it possible to record the data received or to be transmitted; A management means (not shown) for transferring the data.
Tel que cela est représenté sur la figure 6, une trame 1 échangée entre une unité émettrice E et une unité réceptrice R peut comprendre : • un champ "L" qui indique le nombre total d'octets de la trame, le 30 codage de cette longueur s'effectuant préférentiellement sur un octet ; • un champ "Fonction" ; 2941830 - 12 - • au moins un champ "Data" qui comprend les données à transférer ; • au moins un champ "CRC" ("Cyclic redundancy check" - "CRC h", "CRC 1") qui correspond à un contrôle de redondance cyclique. As shown in FIG. 6, a frame 1 exchanged between a transmitting unit E and a receiving unit R may comprise: • a field "L" which indicates the total number of bytes of the frame, the coding of this frame length preferably taking place on one byte; • a "Function" field; 2941830 - 12 - • at least one "Data" field that includes the data to be transferred; • at least one "CRC" ("Cyclic redundancy check" - "CRC h", "CRC 1") field which corresponds to a cyclic redundancy check.
5 Tel que cela est représenté sur la figure 7, dans le cas d'une trame émise par l'unité réceptrice R en direction de l'unité émettrice E, le champ "Fonction" peut être codé sur un seul octet et peut correspondre : • à un acquittement ACK : o les quatre premiers bits pouvant correspondre au numéro de la 10 dernière trame de la fenêtre ; o les quatre bits suivants pouvant eux équivaloir à "0 0 0 0" ; ou • à un non ù acquittement NACK : o les quatre premiers bits pouvant correspondre au numéro de la dernière trame de la fenêtre ; 15 o les quatre bits suivants pouvant eux équivaloir à "1 1 1 1" ; ou • à une fin de session "FIN SESSION". As shown in FIG. 7, in the case of a frame transmitted by the receiver unit R towards the transmitting unit E, the "Function" field may be coded on a single byte and may correspond to: An ACK acknowledgment: the first four bits that can correspond to the number of the last frame of the window; o the next four bits can be equivalent to "0 0 0 0"; or • a no to NACK acknowledgment: o the first four bits may correspond to the number of the last frame of the window; O the next four bits may be equivalent to "1 1 1 1"; or • at the end of the session "END SESSION".
Tel que cela est représenté sur la figure 8, dans le cas d'une trame émise par l'unité émettrice E en direction de l'unité réceptrice R, le champ "Fonction" 20 peut être codé sur un seul octet et peut correspondre : • à l'indication ("FIN DATA") selon laquelle les données ont été toutes transmises ; ou • à l'indication ("DATA") selon laquelle la trame comprend des données. As shown in FIG. 8, in the case of a frame transmitted by the transmitting unit E towards the receiver unit R, the "Function" field 20 may be coded on a single byte and may correspond to: • the indication ("FIN DATA") that the data has been transmitted; or • the indication ("DATA") according to which the frame comprises data.
25 Selon une variante d'exécution de l'invention, tel que cela est représenté sur la figure 9, dans le cas d'une trame émise par l'unité réceptrice R en direction de l'unité émettrice E, le champ "Fonction" peut être codé sur deux octets et peut permettre d'indiquer la date ou plus précisément la périodicité à laquelle les données seront transférées de l'unité émettrice E vers l'unité réceptrice R, ce 30 qui est particulièrement avantageux lorsque l'unité émettrice E est un appareil 2941830 - 13 - de mesure de type compteur électrique et l'unité réceptrice R un serveur informatique. A titre d'exemple non limitatif, le codage peut s'effectuer de la manière 5 suivante : • les cinq premiers bits de l'octet de poids faible peuvent correspondre au jour ; • le sixième bit de cet octet de poids faible est mis par défaut à zéro ; • les deux derniers bits de cet octet de poids faible peuvent correspondre 10 à l'intervalle (en minutes) de mémorisation des données ; dans ce cas, à titre d'exemple : o "0 0" peut correspondre à une minute ; o "0 1" peut correspondre à cinq minutes ; o "1 0" peut correspondre à dix minutes ; 15 o "1 1" peut correspondre à trente minutes ; • les quatre premiers bits de l'octet de poids fort peuvent correspondre au mois ; • le cinquième bit de l'octet de poids fort correspond à la valeur "Z" qui est une variable permettant d'augmenter les possibilités de codage ; 20 • les trois derniers bits de cet octet de poids fort sont mis par défaut à zéro. According to an alternative embodiment of the invention, as shown in FIG. 9, in the case of a frame transmitted by the receiver unit R towards the transmitting unit E, the "Function" field It may be double-byte and may indicate the date or, more precisely, the periodicity at which the data will be transferred from the transmitting unit E to the receiving unit R, which is particularly advantageous when the transmitting unit E is a meter-type measuring device and the receiver unit R a computer server. By way of nonlimiting example, the coding can be carried out in the following manner: the first five bits of the low byte can correspond to the day; • the sixth bit of this low byte is set to zero by default; The last two bits of this low byte may correspond to the interval (in minutes) for storing the data; in this case, for example: o "0 0" can be one minute; o "0 1" can be five minutes; o "1 0" can be ten minutes; 15 "1 1" may be thirty minutes; • the first four bits of the most significant byte may be the month; The fifth bit of the most significant byte corresponds to the value "Z" which is a variable making it possible to increase the coding possibilities; • The last three bits of this high byte are set to zero by default.
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0900419A FR2941830A1 (en) | 2009-01-30 | 2009-01-30 | Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0900419A FR2941830A1 (en) | 2009-01-30 | 2009-01-30 | Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2941830A1 true FR2941830A1 (en) | 2010-08-06 |
Family
ID=41226016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0900419A Pending FR2941830A1 (en) | 2009-01-30 | 2009-01-30 | Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2941830A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1463228A2 (en) * | 2003-03-25 | 2004-09-29 | NTT DoCoMo, Inc. | Communication device, transmission control method, and program product for controlling retransmission of data |
US7099273B2 (en) * | 2001-04-12 | 2006-08-29 | Bytemobile, Inc. | Data transport acceleration and management within a network communication system |
-
2009
- 2009-01-30 FR FR0900419A patent/FR2941830A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7099273B2 (en) * | 2001-04-12 | 2006-08-29 | Bytemobile, Inc. | Data transport acceleration and management within a network communication system |
EP1463228A2 (en) * | 2003-03-25 | 2004-09-29 | NTT DoCoMo, Inc. | Communication device, transmission control method, and program product for controlling retransmission of data |
Non-Patent Citations (1)
Title |
---|
TANNENBAUM A S ED - TANENBAUM A S: "COMPUTER NETWORKS", 1 January 1996, COMPUTER NETWORKS, LONDON : PRENTICE-HALL INTERNATIONAL; GB, PAGE(S) 202 - 219, ISBN: 9780133942484, XP002155806 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1217778B1 (en) | Data communication method and apparatus using automatic repeat request | |
EP0239453B1 (en) | Method and device for transmitting digital data by way of frame-organized messages | |
AU2005203662B2 (en) | Reliable messaging using clocks with synchronized rates | |
US7496036B2 (en) | Method and apparatus for determining client-perceived server response time | |
US9438653B2 (en) | Method for providing an adaptive streaming service | |
FR2906428A1 (en) | METHOD, DEVICE AND SOFTWARE APPLICATION FOR TRANSMITTING DATA PACKETS IN A COMMUNICATION SYSTEM. | |
FR2927749A1 (en) | METHOD AND DEVICE FOR TRANSMITTING DATA, IN PARTICULAR VIDEO. | |
US8341272B2 (en) | Method for improving a TCP data transmission in case the physical transmission medium is disconnected | |
KR20160135200A (en) | Transport accelerator implementing extended transmission control functionality | |
WO2008075600A1 (en) | Mobile communication network system, and server device | |
CN108173851B (en) | High-efficiency multimedia transmission method for spatial information network | |
CA2641244C (en) | Congestion management and latency prediction in csma media | |
EP3637845A1 (en) | Communication method | |
EP1161023B1 (en) | System and method to transmit data in two modes and corresponding transmitter and receiver | |
FR2941830A1 (en) | Data sequence's sequential transfer method for global system for mobile communication data network, involves performing transfer of data and following data based on reception of acknowledgement of transferred data | |
FR3095568A1 (en) | Fluid meter reading process | |
EP1745603B8 (en) | Method and device for transmitting data packets | |
EP1411689A1 (en) | Data retransmission control method and device for implementing such a method | |
WO2008077909A2 (en) | Incremental redundancy retransmission method for fragmented packets | |
EP2645647B1 (en) | Method for optimising the downstream rate of an asymmetric subscriber line, corresponding device, computer program product and storage medium | |
EP1199832B1 (en) | Transmission procedure to avoid useless retransmissions | |
WO2005011229A2 (en) | Method for evaluating the available bandwidth of a transmission channel during data transmission and a transmitter for carrying out said method | |
FR2925806A1 (en) | DATA TRANSMISSION METHOD AND CORRESPONDING DEVICE | |
WO2008148960A1 (en) | Method of controlling tcp packet transmission in an ad hoc network, associated computer program and transmitting/receiving station | |
EP3243356B1 (en) | System for transmitting data packets according to a multiple access protocol |