FR3017507A1 - METHOD FOR ANALYZING DATA PACKET STREAMS - Google Patents

METHOD FOR ANALYZING DATA PACKET STREAMS Download PDF

Info

Publication number
FR3017507A1
FR3017507A1 FR1450999A FR1450999A FR3017507A1 FR 3017507 A1 FR3017507 A1 FR 3017507A1 FR 1450999 A FR1450999 A FR 1450999A FR 1450999 A FR1450999 A FR 1450999A FR 3017507 A1 FR3017507 A1 FR 3017507A1
Authority
FR
France
Prior art keywords
stream
packets
packet
value
median
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
Application number
FR1450999A
Other languages
French (fr)
Inventor
Philippe Morel
Bertrand Provost
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
France Brevets SAS
Original Assignee
France Brevets SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Brevets SAS filed Critical France Brevets SAS
Priority to FR1450999A priority Critical patent/FR3017507A1/en
Priority to PCT/EP2015/052799 priority patent/WO2015118181A1/en
Publication of FR3017507A1 publication Critical patent/FR3017507A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention a pour objet un procédé d'analyse d'un flux de données transmis sous forme de paquets et appelé flux d'analyse, chaque paquet dudit flux comprenant un compteur dont la valeur est représentative de son ordre d'émission, ledit procédé comprenant les étapes suivantes : extraction (203) de valeurs de compteurs binaires associées aux paquets présents dans une fenêtre d'observation glissante d'une longueur correspondant à un nombre W impair de paquets consécutifs du flux d'analyse ; détermination (207) de la valeur de compteur médiane dans la fenêtre d'observation ; détermination (206) d'au moins un indicateur caractérisant le flux, cet indicateur étant déduit d'au moins une des valeurs médianes obtenue à un instant de mesure donné.The subject of the invention is a method for analyzing a stream of data transmitted in the form of packets and called the analysis stream, each packet of said stream comprising a counter whose value is representative of its transmission order, said method comprising the steps of: extracting (203) bit counter values associated with packets present in a sliding observation window of a length corresponding to an odd number W of consecutive packets of the analysis stream; determining (207) the median counter value in the observation window; determining (206) at least one indicator characterizing the flow, this indicator being deduced from at least one of the median values obtained at a given moment of measurement.

Description

PROCEDE D'ANALYSE DE FLUX DE PAQUETS DE DONNEES L'invention concerne un procédé d'analyse de flux de paquets et s'applique au domaine des réseaux de télécommunications.The invention relates to a packet flow analysis method and applies to the field of telecommunications networks.

La transmission de données binaires au travers de réseaux de télécommunications suppose que les transmissions soient configurées de manière à satisfaire des contraintes de qualité de service (QoS) propres au contenu concerné. A titre d'exemple, dans le cas de données de type vidéo, la transmission doit pouvoir s'effectuer en temps réel pour certaines applications comme par exemple la diffusion de contenus en « multicast ». Pour cela, des protocoles de communication adaptés au temps réel doivent être mis en oeuvre. Un protocole de transmission bien connu est le protocole RTP (Real-time Transport Protocol). Ce protocole est largement utilisé notamment dans le cadre de services de vidéo à la demande ou de voix sur IP (VolP). Pour ce qui est de la transmission en temps réel d'une vidéo numérique, plusieurs flux de type paquet peuvent être transmis, par exemple un flux vidéo et de flux audio. Les contraintes temps réel liées à ce type de flux ne sont pas compatibles avec l'utilisation de mécanismes de type ARQ (Automatic Repeat-reQuest) visant à résoudre le problème de la perte de paquets en réception par des demandes spécifiques de retransmission des paquets non reçus. Ainsi, des techniques alternatives sont utilisées. Il est par exemple possible d'utiliser une redondance de réseaux. En d'autres termes, un flux de paquets donné est transmis plusieurs fois en utilisant des réseaux de télécommunications distincts. En réception, les flux incidents peuvent être traités de manière différente. Une première technique consiste à sélectionner le flux incident de 30 données présentant les meilleures performances en termes de qualité de service. Par exemple, le flux pour lequel le taux de perte de paquets est minimum peut-être sélectionné. Dans un autre exemple, les flux redondants sont adaptés de manière à permettre une recombinaison des paquets en réception et ainsi obtenir un flux recombiné permettant d'améliorer le taux de correction FEC (Forward Error Correction).The transmission of binary data over telecommunications networks assumes that the transmissions are configured to meet QoS constraints specific to the content concerned. For example, in the case of video type data, the transmission must be able to be carried out in real time for certain applications such as for example the broadcasting of content in "multicast". For this, communication protocols adapted to the real time must be implemented. A well-known transmission protocol is the Real-time Transport Protocol (RTP). This protocol is widely used especially in the context of video-on-demand or Voice over IP (VolP) services. As regards the real-time transmission of a digital video, several packet-type streams may be transmitted, for example a video stream and audio stream. The real-time constraints related to this type of flow are not compatible with the use of Automatic Repeat-reQuest (ARQ) mechanisms aimed at solving the problem of packet loss on reception by specific requests for retransmission of non-packet data. received. Thus, alternative techniques are used. For example, it is possible to use network redundancy. In other words, a given packet stream is transmitted multiple times using separate telecommunications networks. In reception, the incident flows can be processed differently. A first technique is to select the incident data stream having the best performance in terms of quality of service. For example, the stream for which the packet loss rate is minimum may be selected. In another example, the redundant flows are adapted to allow recombination of the receive packets and thus obtain a recombined stream for improving the FEC (Forward Error Correction) correction rate.

Cependant, il est difficile dans le cadre de ces techniques d'analyser les flux de données reçues et en particulier de mesurer leur taux de perte de paquets, de déterminer si des paquets ont été reçus plusieurs fois de déterminer dans quelle mesure les paquets reçus ont été désordonnés par rapport à leur ordre de transmission.However, it is difficult in these techniques to analyze the received data streams and in particular to measure their packet loss rate, to determine if packets have been received several times to determine the extent to which received packets have been received. have been disordered in relation to their order of transmission.

La caractérisation des performances de transmission de flux de paquets tels que des flux vidéo est particulièrement utile notamment pour des entreprises diffusant des contenus. En effet ces sociétés peuvent recourir à différents opérateurs de télécommunications ou utiliser différents réseaux de télécommunications appartenant à un même opérateur de manière à transmettre des flux de données de manière redondante ou non. Il est donc particulièrement important de disposer d'outils permettant de mesurer la performance de transmission des flux empruntant un ou plusieurs réseaux de télécommunications. Cela permet par exemple au diffuseur d'optimiser sa stratégie de diffusion de contenu en sélectionnant les réseaux de télécommunications les mieux adaptés à son activité. Un but de l'invention est notamment de pallier les inconvénients précités. A cet effet l'invention a pour objet un procédé d'analyse d'un flux de 25 données transmis sous forme de paquets et appelé flux d'analyse, chaque paquet dudit flux comprenant un compteur dont la valeur est représentative de son ordre d'émission, ledit procédé comprenant les étapes suivantes : extraction de valeurs de compteurs binaires associées aux paquets présents dans une fenêtre d'observation glissante 30 d'une longueur correspondant à un nombre W impair de paquets consécutifs du flux d'analyse ; détermination de la valeur de compteur médiane dans la fenêtre d'observation ; détermination d'au moins un indicateur caractérisant le flux, cet indicateur étant déduit d'au moins une des valeurs médianes obtenue à un instant de mesure donné. Selon un aspect de l'invention, un indicateur est déduit de la comparaison d'au moins deux valeurs médianes obtenues à deux instants de mesure consécutifs. Un indicateur est par exemple mis en oeuvre pour détecter une perte de n 10 paquets consécutifs, ladite perte de n paquets consécutifs étant détectée lorsqu'un saut égal à n est identifié entre deux valeurs médianes successives, n étant un entier supérieur ou égal à un. Un indicateur est par exemple mis en oeuvre de manière à détecter qu'un paquet est reçu plusieurs fois, un paquet étant considéré reçu M fois lorsque 15 M valeurs médianes identiques sont identifiées successivement. Un indicateur est mis en oeuvre en identifiant la position de la valeur médiane dans une liste Li comprenant des valeurs de compteurs présentes dans la fenêtre de mesure, un paquet étant considéré comme ayant été reçu conformément à son instant d'émission lorsque la position de la valeur 20 médiane est positionnée au centre de la liste Li, un désordre étant détecté et mesuré lorsqu'il existe un écart entre la position trouvée et la position centrale de la liste Li. Un indicateur est par exemple mis en oeuvre de manière à comparer la valeur centrale d'une liste Lc avec la valeur centrale d'une la liste Li, ladite 25 liste Lc correspondant à la liste Li dont les valeurs de compteurs ont été classées dans un ordre croissant ou décroissant, un paquet étant considéré désordonné si ces deux valeurs centrales ne sont pas identiques. Selon un aspect de l'invention, un compteur spécifique représentatif du désordre des paquets est déterminé en incrémentant une variable entière à 30 chaque fois qu'un désordre est détecté à un instant de mesure donné. Selon un aspect de l'invention, les flux de données sont des flux RTP.The characterization of the performance of packet flow transmission such as video streams is particularly useful especially for companies broadcasting content. Indeed, these companies may use different telecommunication operators or use different telecommunications networks belonging to the same operator to transmit data streams redundantly or not. It is therefore particularly important to have tools to measure the transmission performance of flows using one or more telecommunications networks. This allows, for example, the broadcaster to optimize its content distribution strategy by selecting the telecommunication networks best suited to its activity. An object of the invention is in particular to overcome the aforementioned drawbacks. To this end, the subject of the invention is a method of analyzing a stream of data transmitted in the form of packets and called the analysis stream, each packet of said stream comprising a counter whose value is representative of its order of transmission, said method comprising the steps of: extracting binary counter values associated with packets present in a sliding observation window 30 of a length corresponding to an odd number W of consecutive packets of the analysis stream; determining the median counter value in the observation window; determining at least one indicator characterizing the flow, this indicator being deduced from at least one of the median values obtained at a given moment of measurement. According to one aspect of the invention, an indicator is deduced from the comparison of at least two median values obtained at two consecutive measurement instants. An indicator is for example used to detect a loss of n consecutive packets, said loss of n consecutive packets being detected when a jump equal to n is identified between two successive median values, n being an integer greater than or equal to one . An indicator is for example implemented so as to detect that a packet is received several times, a packet being considered received M times when 15 M identical median values are identified successively. An indicator is implemented by identifying the position of the median value in a list Li comprising counter values present in the measurement window, a packet being considered to have been received according to its instant of emission when the position of the The median value is positioned in the center of the list Li, a disorder being detected and measured when there is a difference between the position found and the central position of the list Li. An indicator is for example implemented so as to compare the central value of a list Lc with the central value of a list Li, said list Lc corresponding to the list Li whose counter values have been classified in ascending or descending order, a packet being considered disordered if these two Central values are not identical. According to one aspect of the invention, a specific counter representative of packet disorder is determined by incrementing an integer variable each time a disorder is detected at a given measurement instant. According to one aspect of the invention, the data streams are RTP streams.

Les compteurs binaires associés aux flux d'analyse correspondent par exemple aux champs « sequence number » présents dans des en-têtes de paquets RTP. Le flux d'analyse correspond par exemple au multiplexage ou à la 5 recombinaison d'au moins deux flux de données reçus résultant respectivement de l'émission de deux flux de données identiques. L'invention a aussi pour objet un programme d'ordinateur comportant des instructions pour l'exécution du procédé décrit précédemment, lorsque le 10 programme est exécuté par un processeur. L'invention a aussi pour objet un système d'analyse d'un flux de données transmis sous forme de paquets et appelé flux d'analyse, chaque paquet du flux comprenant un compteur dont la valeur est représentative de leur ordre 15 d'émission, ledit système comprenant des moyens pour : - extraire des valeurs de compteurs binaires associées aux paquets présents dans une fenêtre d'observation glissante d'une longueur correspondant à un nombre W impair de paquets consécutifs du flux d'analyse ; 20 déterminer la valeur de compteur médiane dans la fenêtre d'observation ; déterminer au moins un indicateur caractérisant le flux, ledit indicateur étant déduit d'au moins l'une de ces valeurs médianes. 25 Selon un aspect de l'invention, le système est adapté pour mettre en oeuvre une implémentation de type incrémental. Selon un aspect de l'invention, le système comprend un module d'extraction permettant d'obtenir les valeurs de compteurs des paquets d'un flux d'analyse, un module de calcul ayant pour fonction de comparer 30 plusieurs valeurs de compteur de manière à déterminer l'emplacement dans une mémoire de la nouvelle valeur de compteur acquise de manière à générer une liste ordonnée Lc et un séquenceur contrôlant les opérations de lecture et d'écriture dans la mémoire en vue de la détermination des valeurs médianes. Selon un aspect de l'invention, le système comprend un registre 5 permettant de mémoriser la dernière valeur de compteur acquise, ce registre étant adapté pour informer un séquenceur de la réception d'une nouvelle valeur et de transmettre ladite valeur à un module de calcul. D'autres caractéristiques et avantages de l'invention apparaîtront à 10 l'aide de la description qui suit donnée à titre illustratif et non limitatif, faite en regard des dessins annexés parmi lesquels : - la figure 1 illustre schématiquement le principe de l'extraction d'un numéro de séquence médian dans une fenêtre 15 d'observation ; - la figure 2 est un diagramme représentant de manière simplifiée les étapes d'un procédé d'analyse de flux de type paquet ; - la figure 3 donne un exemple simple illustrant le principe du 20 procédé d'analyse de flux selon invention ; - les figures 4a à 4b illustrent la manière dont l'extraction d'un numéro de séquence médian dans une fenêtre d'observation peut être utilisé pour mesurer le désordre des paquets en réception ; 25 - la figure 5 donne un exemple de circuit d'analyse de flux de type paquet. La figure 1 illustre schématiquement le principe de l'extraction d'un numéro de séquence médian dans une fenêtre d'observation. 30 L'exemple de la transmission de flux de données composés de paquets RTP est utilisé dans la suite de la description. Cependant, l'invention peut être mise en oeuvre pour d'autres protocoles de transport s'appuyant sur la transmission de paquets de données, un paquet de données étant associé à un compteur incrémenté suite à l'émission de chaque paquet. Ce compteur est par exemple inclus dans un en-tête spécifique au format de transport considéré. L'invention décrite ci-après est donc applicable à d'autres protocoles de transport. Dans le cas du protocole RTP, un en-tête RTP est ajouté aux paquets. Cet en-tête comprend un compteur codé sur seize bits appelé numéro de séquence (en anglais « Sequence Number »). Pour un flux de paquets RTP donné, ce compteur est incrémenté à l'émission de chaque nouveau paquet. La transmission d'un flux RTP au travers d'un réseau de télécommunications implique habituellement que certains paquets peuvent être perdus. En outre, certains paquets RTP peuvent être reçus de manière désordonnée. L'invention s'appuie sur l'utilisation d'une fenêtre d'observation glissante 103. Cela correspond par exemple à une gestion des données de type FIFO (Fist In, First Out). Les paquets du flux d'analyse 104 entrent les uns après les autres dans cette FIFO 103 d'une profondeur correspondant à un nombre entier W de paquets. A chaque période d'analyse du flux, un nouveau paquet 105 du flux d'analyse entre dans la fenêtre d'analyse pouvant être matérialisée par la FIFO 103 et un paquet 106 en sort. Le nombre W de paquets est choisi impair. La valeur de W est en outre choisie en fonction du réseau, du flux et en particulier en tenant compte du cumul de la gigue temporelle. A titre d'exemple, W peut être choisi de manière à ce qu'il corresponde à une durée de l'ordre de quelques dizaines de millisecondes. Dans un mode de réalisation, les numéros de séquence contenus dans les en-têtes RTP des paquets sont extraits, et ce sont ces numéros de séquence qui remplissent la FIFO. Pour chaque période d'analyse, la FIFO comprend une suite décalée de numéros de séquence. L'invention s'appuie ensuite sur un traitement essentiel qui est effectué sur ces suites de numéros.The bit counters associated with the analysis flows correspond, for example, to the "sequence number" fields present in RTP packet headers. The analysis flow corresponds for example to the multiplexing or recombination of at least two received data streams respectively resulting from the emission of two identical data streams. The invention also relates to a computer program comprising instructions for the execution of the method described above, when the program is executed by a processor. The subject of the invention is also a system for analyzing a stream of data transmitted in the form of packets and called the analysis stream, each packet of the stream comprising a counter whose value is representative of their transmission order. said system comprising means for: extracting binary counter values associated with the packets present in a sliding observation window of a length corresponding to an odd number W of consecutive packets of the analysis stream; Determining the median counter value in the observation window; determining at least one indicator characterizing the flow, said indicator being derived from at least one of these median values. According to one aspect of the invention, the system is adapted to implement an incremental implementation. According to one aspect of the invention, the system comprises an extraction module making it possible to obtain the counter values of the packets of an analysis flow, a calculation module having the function of comparing several counter values so as to obtain determining the location in a memory of the acquired new counter value so as to generate an ordered list Lc and a sequencer controlling the read and write operations in the memory for the determination of the median values. According to one aspect of the invention, the system comprises a register 5 for storing the last acquired counter value, this register being adapted to inform a sequencer of the reception of a new value and to transmit said value to a calculation module . Other characteristics and advantages of the invention will become apparent from the following description given by way of nonlimiting illustration, with reference to the appended drawings in which: FIG. 1 schematically illustrates the principle of extraction a median sequence number in an observation window; FIG. 2 is a diagram showing in a simplified manner the steps of a packet type flow analysis method; FIG. 3 gives a simple example illustrating the principle of the flow analysis method according to the invention; FIGS. 4a to 4b illustrate how the extraction of a medial sequence number in an observation window can be used to measure the disorder of the packets in reception; FIG. 5 gives an example of packet type flow analysis circuit. Figure 1 schematically illustrates the principle of extracting a median sequence number in an observation window. The example of the transmission of data streams composed of RTP packets is used in the following description. However, the invention can be implemented for other transport protocols based on the transmission of data packets, a data packet being associated with an incremented counter following the transmission of each packet. This counter is for example included in a header specific to the transport format considered. The invention described hereinafter is therefore applicable to other transport protocols. In the case of the RTP protocol, an RTP header is added to the packets. This header includes a sixteen-bit coded counter called Sequence Number. For a given RTP packet stream, this counter is incremented upon transmission of each new packet. Transmission of an RTP stream over a telecommunications network usually implies that some packets may be lost. In addition, some RTP packets may be received in a disordered manner. The invention is based on the use of a sliding observation window 103. This corresponds, for example, to FIFO data management (Fist In, First Out). The packets of the analysis stream 104 enter one after the other in this FIFO 103 to a depth corresponding to an integer number W of packets. At each flow analysis period, a new packet 105 of the analysis stream enters the analysis window that can be materialized by the FIFO 103 and a packet 106 comes out. The number W of packets is chosen odd. The value of W is furthermore chosen as a function of the network, the flux and in particular taking into account the cumulation of the time jitter. By way of example, W may be chosen so that it corresponds to a duration of the order of a few tens of milliseconds. In one embodiment, the sequence numbers contained in the packet RTP headers are extracted, and it is these sequence numbers that fill the FIFO. For each analysis period, the FIFO includes an offset sequence of sequence numbers. The invention is then based on an essential treatment that is performed on these number sequences.

Ce traitement correspond à la détermination du numéro de séquence médian présent dans la suite de numéros de séquence présente dans la FIFO. L'obtention de ces numéros de séquence médians d'une fenêtre de mesure à l'autre va permettre d'analyser finement les caractéristiques du flux 104. La manière dont un numéro de séquence médian dans une liste de W éléments peut être déterminé fait partie des connaissances générales de l'homme du métier. A titre d'exemple, les numéros de séquences présents dans la FIFO à un instant de mesure donné peuvent être classés en ordre 1 0 croissant ou décroissant de manière à générer une liste ordonnée de numéros de séquences. Le numéro de séquence médian peut être estimé dans ce cas en sélectionnant le numéro présent dans la position centrale de la liste réordonnée. L'utilisation d'une fenêtre d'observation est mise en oeuvre notamment 15 parce qu'elle permet de détecter les paquets perdus et désordonnés simultanément. En outre, pour les paquets ayant été reçus, il est possible de déterminer s'ils ont été reçus plusieurs fois. La figure 2 est un diagramme représentant de manière simplifiée les 20 étapes d'un procédé d'analyse de flux de type paquet. Une première étape 201 pour objectif de recevoir N flux de données de type paquet. L'invention s'applique pour N supérieur ou égal à un. Une deuxième 202 étape optionnelle recombine ou multiplexe plusieurs flux de données incidents en un unique flux d'analyse. 25 Dans une troisième étape 203, sont extraites les valeurs des compteurs binaires associés aux paquets du flux d'analyse présents dans une fenêtre de mesures glissantes appelée fenêtre d'observation. Cette acquisition correspond par exemple en l'extraction des champs « numéro de séquence » présents dans les en-têtes de paquets RTP. Comme indiqué 30 précédemment, la longueur de la fenêtre glissante est égale à W éléments, W étant choisi impair. Dans la suite de la description, W = 2xS+1 où S désigne l'amplitude du désordre apporté par le réseau. Une étape 207 est ensuite mise en oeuvre pour déterminer la valeur médiane des numéros de séquence présents dans la fenêtre d'observation.This processing corresponds to the determination of the median sequence number present in the series of sequence numbers present in the FIFO. Obtaining these median sequence numbers from one measurement window to the other will allow finely analyzing the characteristics of the stream 104. The manner in which a medial sequence number in a list of W elements can be determined is part of general knowledge of the person skilled in the art. By way of example, the sequence numbers present in the FIFO at a given measurement instant can be classified in ascending or descending order of 1 0 so as to generate an ordered list of sequence numbers. The median sequence number can be estimated in this case by selecting the number present in the central position of the reordered list. The use of an observation window is implemented in particular because it makes it possible to detect the lost and disordered packets simultaneously. In addition, for packets that have been received, it is possible to determine whether they have been received several times. Fig. 2 is a diagram showing in a simplified manner the steps of a packet type flow analysis method. A first step 201 aims to receive N packet type data stream. The invention applies for N greater than or equal to one. A second optional step recombines or multiplexes multiple incident data streams into a single analysis stream. In a third step 203, the values of the bit counters associated with the packets of the analysis stream present in a sliding measurement window called the observation window are extracted. This acquisition corresponds, for example, to the extraction of the "sequence number" fields present in the RTP packet headers. As previously indicated, the length of the sliding window is equal to W elements, W being chosen odd. In the remainder of the description, W = 2xS + 1 where S denotes the amplitude of the disorder brought by the network. A step 207 is then implemented to determine the median value of the sequence numbers present in the observation window.

A titre d'exemple, la détermination de la valeur médiane à un instant de mesure donné peut être déterminée en générant 204 une liste Lc générée correspondant aux valeurs des numéros de séquence acquises dans la fenêtre de mesure et classées dans l'ordre croissant ou décroissant puis en identifiant le numéro de séquence mémorisé en position centrale de la liste Lc. Ensuite, une étape 206 d'analyse du flux est mise en oeuvre afin, par exemple, d'identifier si des paquets du flux original manquent en réception et/ou si des paquets de ce flux ont été reçus plusieurs fois. Pour cela, les valeurs médianes successives identifiées à l'étape 207 sont comparées deux à deux et des indicateurs peuvent être déterminés. Des exemples d'indicateurs sont donnés plus loin dans la description. La méthode selon l'invention a été décrite pour un flux d'analyse résultant de la transmission d'un flux de paquets au travers d'un réseau de télécommunication donné. Cependant, pour améliorer la qualité de service associée à un flux donné, il est possible de transmettre plusieurs flux identiques. Ainsi, une redondance de transmission peut être introduite. En outre, chacun des flux dupliqués peut emprunter un réseau de télécommunications différent. Ainsi, si un premier réseau présente des défaillances pendant une durée donnée, la transmission d'un flux redondant sur un deuxième réseau pourra compenser les pertes et retards résultant de défaillances. Le procédé selon l'invention ainsi que les dispositifs le mettant en oeuvre peuvent être appliqués dans ce type de situation. Dans l'exemple de la figure 1, un exemple de transmission de deux flux de données redondants 101, 102 est représenté dans la boite 110. Le 30 procédé est donc applicable pour un nombre N supérieur ou égal à un de flux de données redondants. Si N égal un, le flux d'analyse correspond au résultat de la transmission d'un unique flux d'émission. Dans l'exemple 110, le flux de données incident 101 résulte de la transmission d'un flux de données d'origine sur un premier réseau de télécommunications et le flux de données incident 102 résulte de la transmission du même flux de données d'origine sur un second réseau de télécommunications. Les flux 101, 102 sont combinés ou multiplexés 100 de manière à générer un unique flux de donnés correspondant à une succession de paquets 104. Ce flux unique est dans ce cas utilisé comme flux d'analyse pour l'application du procédé décrit précédemment.By way of example, the determination of the median value at a given measurement instant can be determined by generating a generated list Lc corresponding to the values of the sequence numbers acquired in the measurement window and sorted in ascending or descending order. then identifying the stored sequence number in central position of the list Lc. Then, a flow analysis step 206 is implemented in order, for example, to identify if packets of the original stream are missing in reception and / or if packets of this stream have been received several times. For this, the successive median values identified in step 207 are compared in pairs and indicators can be determined. Examples of indicators are given later in the description. The method according to the invention has been described for an analysis flow resulting from the transmission of a packet stream through a given telecommunication network. However, to improve the quality of service associated with a given stream, it is possible to transmit several identical streams. Thus, transmission redundancy can be introduced. In addition, each of the duplicate flows can borrow a different telecommunications network. Thus, if a first network has failures for a given duration, the transmission of a redundant stream on a second network can compensate for the losses and delays resulting from failures. The method according to the invention as well as the devices implementing it can be applied in this type of situation. In the example of FIG. 1, an exemplary transmission of two redundant data streams 101, 102 is shown in the box 110. The method is therefore applicable for a number N greater than or equal to one of redundant data streams. If N equals one, the analysis flow corresponds to the result of the transmission of a single transmission stream. In Example 110, the incident data stream 101 results from the transmission of an original data stream over a first telecommunications network and the incident data stream 102 results from the transmission of the same original data stream. on a second telecommunications network. The streams 101, 102 are combined or multiplexed 100 so as to generate a single data stream corresponding to a succession of packets 104. This single stream is in this case used as an analysis flow for the application of the method described above.

Comme mentionné précédemment, lorsque plusieurs flux sont utilisés pour générer un unique flux d'analyse, plusieurs techniques sont envisageables. La première technique pouvant être mise en oeuvre est de recombiner les N flux incidents 101, 102. Dans cette description, la recombinaison correspond à la génération d'un flux unique à partir d'au moins deux flux de paquets dits incidents de manière à éviter que le flux unique comporte des paquets dupliqués. Une manière de mettre en oeuvre cette recombinaison est d'utiliser par exemple une mémoire avec N pointeurs d'écriture, soit un pointeur par flux incident et un pointeur de lecture unique. Lorsque la recombinaison est utilisée, chaque paquet reçu utilise son numéro de séquence comme adresse de base d'écriture, cette écriture décrétant alors la zone mémoire correspondante comme non vide. Si un même paquet est reçu plusieurs fois, soit en provenance des N flux, soit parce qu'il a été dupliqué sur certains flux, il sera alors réécrit à partir de la même adresse de base autant de fois qu'il a été dupliqué en provenance de N affluents ou bien à l'intérieur d'un même flux. Le pointeur unique de lecture est incrémenté et lit les adresses de base correspondant à des zones de mémoire non vides avec un retard par rapport aux écritures choisi en fonction de la gigue cumulée des réseaux. La lecture d'un paquet déclare la zone mémoire correspondante comme vide. Ainsi, les paquets manquants éventuels d'un flux sont compensés par les N-1 paquets identiques des autres flux sauf si un paquet est absent sur les N flux simultanément. En outre, les paquets redondants reçus sur plusieurs flux incidents sont supprimés. Lorsque la recombinaison est utilisée, il n'y a pas de paquets dupliqués et les paquets sont réordonnés.As mentioned above, when several streams are used to generate a single flow of analysis, several techniques are possible. The first technique that can be implemented is to recombine the N incident flows 101, 102. In this description, the recombination corresponds to the generation of a single stream from at least two so-called incident packet streams so as to avoid that the single stream has duplicate packets. One way of implementing this recombination is to use, for example, a memory with N write pointers, ie an incident flux pointer and a single read pointer. When recombination is used, each received packet uses its sequence number as the write base address, which writing then decrees the corresponding memory area as nonempty. If the same packet is received several times, either from the N streams or because it has been duplicated on some streams, it will be rewritten from the same base address as many times as it has been duplicated. from N tributaries or within a single flow. The single read pointer is incremented and reads the base addresses corresponding to non-empty memory areas with a delay with respect to the writes chosen according to the cumulative jitter of the networks. Reading a packet declares the corresponding memory area empty. Thus, the possible missing packets of a stream are compensated by the N-1 identical packets of the other streams except if a packet is absent on the N streams simultaneously. In addition, redundant packets received on multiple incident streams are deleted. When recombination is used, there are no duplicate packets and the packets are reordered.

La deuxième technique pouvant être utilisée comme une alternative à la recombinaison est le multiplexage. L'ensemble des paquets reçus sur les deux flux sont regroupés en un seul flux. A la différence de la recombinaison, les paquets ne sont pas réordonnés à l'aide de leur numéro de séquence et les paquets ayant été reçus plusieurs fois apparaîtront comme dupliqués dans le flux multiplexé. Dans le cas où plusieurs flux redondants sont reçus, le procédé de caractérisation d'un flux de paquet peut être mis en oeuvre sur un flux recombiné ou multiplexé, mais également sur un flux incident donné. Il est ainsi possible d'analyser les performances d'un réseau de télécommunications donné et/ou d'analyser les performances résultant de l'utilisation d'une pluralité de réseaux de télécommunications transmettant des flux de paquets redondants. Cela signifie qu'un dispositif mettant en oeuvre le procédé selon l'invention peut être positionné en aval du dispositif effectuant la recombinaison ou le multiplexage mais aussi en amont. En amont, un dispositif est associé à un flux incident donné. Pour ces dispositifs, le flux d'analyse correspond alors au flux incident leur étant associé. La figure 3 donne un exemple simple illustrant le principe du procédé d'analyse de flux selon invention. Une séquence 300 de paquets correspondant à une portion d'un flux d'analyse est représentée. Les numéros indiqués à l'intérieur de chaque paquet correspondent au compteur de paquets, par exemple le numéro de séquence dans le cas de paquets RTP. Dans cet exemple, la fenêtre d'observation est de longueur W=5. Des listes réordonnées Lc sont représentées pour différents coups d'horloge ainsi que les valeurs médianes 301 leur étant associées, lesdites valeurs médianes correspondant aux valeurs centrales de ces listes. Il apparaît que les valeurs 302 et 304 sont identiques. La comparaison deux à deux des valeurs médianes permet de détecter ce type d'événements. Le résultat de la comparaison se traduit dans ce cas par une information sur le fait qu'un paquet ayant un numéro de séquence égale à quatre a été reçu deux fois.The second technique that can be used as an alternative to recombination is multiplexing. All the packets received on the two streams are grouped into a single stream. Unlike recombination, packets are not reordered using their sequence number and packets that have been received multiple times will appear as duplicated in the multiplexed stream. In the case where several redundant flows are received, the method of characterizing a packet stream can be implemented on a recombined or multiplexed stream, but also on a given incident stream. It is thus possible to analyze the performance of a given telecommunications network and / or analyze the performance resulting from the use of a plurality of telecommunications networks transmitting redundant packet flows. This means that a device implementing the method according to the invention can be positioned downstream of the device performing the recombination or the multiplexing but also upstream. Upstream, a device is associated with a given incident flow. For these devices, the analysis flow then corresponds to the incident flow associated with them. FIG. 3 gives a simple example illustrating the principle of the flow analysis method according to the invention. A sequence 300 of packets corresponding to a portion of an analysis stream is represented. The numbers indicated within each packet correspond to the packet counter, for example the sequence number in the case of RTP packets. In this example, the observation window is of length W = 5. Lc reordered lists are shown for different clock ticks and the median values 301 associated with them, said median values corresponding to the central values of these lists. It appears that the values 302 and 304 are identical. The two-by-two comparison of the median values makes it possible to detect this type of event. In this case, the result of the comparison is an indication that a packet having a sequence number equal to four has been received twice.

Ainsi, un indicateur peut être mis en oeuvre afin de détecter dans la séquence 301 de valeurs médianes les numéros de séquence se suivant et ayant la même valeur afin de mesurer et de détecter les paquets du flux d'analyse ayant été reçus plusieurs fois. Ensuite, les numéros de séquence cinq 305, sept 306, huit 307 et huit 308 sont produits en tant que valeurs médianes des listes Lc obtenues pour différentes fenêtres d'observation. Un indicateur peut également être mis en oeuvre pour détecter les paquets perdus, identifiés par des discontinuités dans la séquence de valeurs médianes 301 produite. Une discontinuité correspond à un saut supérieur à un entre deux valeurs de compteurs successives dans la séquence 301 de valeurs médianes. Dans l'exemple de la figure trois, une discontinuité apparaît entre les valeurs médianes 305 et 306 correspondant respectivement aux numéros de séquence cinq et sept. La perte du paquet ayant le numéro de séquence six a ainsi été détectée. En outre, deux valeurs médianes 307, 308 sont identiques et égales à huit.Thus, an indicator may be implemented to detect in sequence 301 median values the sequence numbers following each other and having the same value in order to measure and detect the packets of the analysis stream that have been received several times. Then, the sequence numbers five 305, seven 306, eight 307 and eight 308 are produced as median values of the Lc listings obtained for different observation windows. An indicator may also be implemented to detect lost packets identified by discontinuities in the median value sequence 301 produced. A discontinuity corresponds to a jump greater than one between two successive counter values in the sequence 301 of median values. In the example of FIG. 3, a discontinuity appears between the median values 305 and 306 respectively corresponding to the sequence numbers five and seven. The loss of the packet having the sequence number six has thus been detected. In addition, two median values 307, 308 are identical and equal to eight.

Ainsi, il a été détecté que le paquet ayant un numéro de séquence égal à huit a été reçu en double. Les figures 4a et 4b illustrent la manière dont l'extraction d'un numéro de séquence médian dans une fenêtre d'observation peut être utilisée pour mesurer le désordre des paquets en réception. Dans ces exemples, la fenêtre d'extraction est de longueur W = 7. Dans ces exemples, les paquets reçus ont été mélangés durant la transmission. Dans la suite de la description, la liste Li correspond aux numéros de séquence présents dans la fenêtre d'observation sans que ceux-ci ait été réordonnés.Thus, it has been detected that the packet having a sequence number equal to eight has been received in duplicate. Figures 4a and 4b illustrate how the extraction of a medial sequence number in an observation window can be used to measure the disorder of the packets in reception. In these examples, the extraction window is of length W = 7. In these examples, the received packets were mixed during the transmission. In the remainder of the description, the list Li corresponds to the sequence numbers present in the observation window without these having been reordered.

Dans une première alternative (figure 4a), un indicateur est mis en oeuvre pour identifier la position de la valeur médiane 402 dans la liste Li. Si la position de la valeur médiane est la position centrale de cette liste, le paquet est considéré comme ayant été reçu conformément à son instant d'émission. Dans le cas où la position de la valeur médiane 402 est différente de la position centrale de la liste Li, l'écart 404 entre la position trouvée et la position centrale est déterminé et correspond à une mesure du désordre des paquets en réception. Dans une deuxième alternative (figure 4b), un autre indicateur du désordre des paquets est mis en oeuvre en comparant la valeur centrale 406 de la liste Lc avec la valeur centrale 405 de la liste Li, la liste Lc correspondant à la liste Li dont les éléments ont été classés en ordre croissant ou décroissants. Si ces deux valeurs sont identiques, cela signifie que le paquet n'a pas été mélangé dans le flux. Sinon, cela signifie que ce paquet à été désordonné dans le flux d'analyse. Ainsi, un compteur spécifique représentatif du désordre des paquets 15 peut être déterminé en incrémentant une variable entière à chaque période de mesure lorsqu'un désordre a été détecté dans la fenêtre de mesure. La figure 5 donne un exemple de circuit d'analyse de flux de type paquet. Bien que simple dans son principe, la mise en oeuvre de fonctions de 20 classement peut s'avérer complexe. Si l'algorithme décrit est mis en oeuvre entièrement avec un langage de description matérielle comme par exemple VHDL (VHSIC Hardware Description Langue) ou Verilog, une implémentation hybride (sur la base de logiciel et de matériel) est également adaptée, notamment dans le cadre d'un mode de réalisation incrémental. A titre 25 d'exemple, deux approches peuvent être considérées. Dans une première approche, un processeur CPU (Central Processing Unit) est utilisé pour mettre en oeuvre les étapes du procédé décrit précédemment. Un circuit de type FPGA (Field-Programmable Gate Array) peut alors mettre en oeuvre une mémoire tampon stockant les valeurs 30 de numéro de séquence consécutives au rythme de leur arrivée et en attendant que le CPU hôte vienne les lire pour les traiter.In a first alternative (FIG. 4a), an indicator is implemented to identify the position of the median value 402 in the list Li. If the position of the median value is the central position of this list, the packet is considered as having received according to its time of issue. In the case where the position of the median value 402 is different from the central position of the list Li, the difference 404 between the position found and the central position is determined and corresponds to a measure of the disorder of the packets in reception. In a second alternative (FIG. 4b), another indicator of the disorder of the packets is implemented by comparing the central value 406 of the list Lc with the central value 405 of the list Li, the list Lc corresponding to the list Li whose items were ranked in ascending or descending order. If these two values are identical, it means that the packet has not been mixed in the stream. Otherwise, it means that this package has been disordered in the scan stream. Thus, a specific counter representative of packet disorder can be determined by incrementing an integer variable at each measurement period when a disorder has been detected in the measurement window. FIG. 5 gives an example of a packet type flow analysis circuit. Although simple in principle, the implementation of ranking functions can be complex. If the algorithm described is implemented entirely with a hardware description language such as VHDL (VHSIC Hardware Description Language) or Verilog, a hybrid implementation (based on software and hardware) is also suitable, especially in the context of of an incremental embodiment. For example, two approaches can be considered. In a first approach, a CPU (Central Processing Unit) processor is used to implement the steps of the method described above. An FPGA (Field-Programmable Gate Array) circuit can then implement a buffer storing consecutive sequence number values at the rate of their arrival and waiting for the host CPU to read them for processing.

Dans une deuxième approche, un microcontrôleur embarqué met en oeuvre par logiciel les étapes 201-205 et transmet le résultat des traitements associés à un processeur CPU hôte pour qu'il mette en oeuvre l'analyse 206 et la génération d'indicateurs.In a second approach, an embedded microcontroller software implements steps 201-205 and transmits the result of processing associated with a host CPU processor for it to implement the analysis 206 and the generation of indicators.

Dans ces deux approches, les performances demandées au microcontrôleur embarqué ou à l'ordinateur hôte peuvent être élevées. Dans le cas correspondant à un débit de 1Gb/s, un cycle complet de traitement dure deux microsecondes incluant la restitution du contexte précédent c'est-à-dire l'état antérieur de la FIFO, le calcul de la nouvelle valeur médiane et la 1 0 mise à jour des estimateurs. Dans un mode de réalisation, un dispositif d'analyse de flux de type paquet selon l'invention peut être mis en oeuvre à l'aide d'une implémentation incrémentale. Celle ci est possible car : - un temps minimum de l'ordre de quelques microsecondes entre deux 15 paquets RTP peut être exploité, ce qui représente habituellement un grand nombre de coups d'horloge et permet d'envisager un traitement en série et non en parallèle ; - la fenêtre glissante d'analyse ne se déplace que d'une position entre 2 paquets RTP consécutifs. En conséquence la réactualisation du 20 numéro d'ordre de chaque échantillon déjà présent dans la mémoire peut se déduire d'un test simple à partir du numéro d'ordre précédent par simple comparaison du nouveau numéro de séquence incident et des numéros de séquence déjà présents en mémoire.In both of these approaches, the performance requirements of the embedded microcontroller or host computer can be high. In the case corresponding to a rate of 1Gb / s, a complete cycle of treatment lasts two microseconds including the restitution of the previous context that is to say the previous state of the FIFO, the calculation of the new median value and the 1 0 update estimators. In one embodiment, a packet type flow analysis device according to the invention can be implemented using an incremental implementation. This is possible because: a minimum time of the order of a few microseconds between two RTP packets can be exploited, which usually represents a large number of clock ticks and makes it possible to envisage a series of processing and not of parallel; - the sliding analysis window moves only one position between 2 consecutive RTP packets. Consequently, the update of the order number of each sample already present in the memory can be deduced from a simple test from the previous sequence number by simple comparison of the new incident sequence number and the sequence numbers already present. in memory.

25 Dans l'exemple de la figure 5, le système d'analyse de flux comprend un module d'extraction 505 permettant d'obtenir les valeurs de numéro de séquence des paquets du flux d'analyse 506. Un registre 500 permet de mémoriser la dernière valeur de numéro de séquence acquise. Ce registre permet en outre d'informer un séquenceur 501 de la réception d'une nouvelle 30 valeur et de transmettre ladite valeur à une module de calcul 503. Le module de calcul a pour fonction de comparer plusieurs valeurs de numéro de séquence de manière à déterminer l'emplacement dans une mémoire 504 de la nouvelle valeur de numéro de séquence acquise. Cette mémoire 504 est utilisée pour mémoriser W valeurs de numéro de séquence classées par exemple dans l'ordre croissant. En d'autres termes, la mémoire 504 est 5 actualisée de manière à mémoriser une liste Li représentative de la période de mesure courante. Le séquenceur 501 contrôle 507, 508 les opérations de lecture et d'écriture dans la mémoire 504 et détermine la valeur médiane de compteur à chaque période de mesure. Ces valeurs médianes 502 sont transmises à un module déterminant des estimateurs caractérisant le flux 10 ainsi analysé. La mémoire 504 de préférence à double port est par exemple mise en oeuvre avec un circuit FPGA. L'organe de calcul rapide 503 peut être mis en oeuvre par un circuit dédié. Considérons qu'au moment de la réception d'une nouvelle valeur de 15 numéro de séquence Tmp(o).SeqNum dans le registre 500, la mémoire 504 contient les W derniers numéros de séquence reçus MEM(j).SeqNum ainsi que leur numéro d'ordre MEMÙ).Order supposé croissant c'est à dire que la donnée la plus antérieure présente le numéro d'ordre 0 alors que la donnée la plus récente présente le numéro d'ordre W résultant de l'étape précédente 20 de traitement. Pour réactualiser le contenu de la mémoire, il suffira alors : - de comparer la nouvelle valeur de numéro de séquence reçue Tmp(o).SeqNum avec toutes les valeurs de numéro de séquence MEMOE1).SeqNum en mémoire, et de mémoriser au passage le 25 numéro de séquence correspondant au numéro d'ordre recherché (Median = Memum).SeqNum tel que Memùm).Order = S), ainsi éventuellement de mesurer le désordre (Shuffle_est = jm- S) ; - de décrémenter MEMù - 1).Order. si MEMù - 1).SeqNum < Tmp(o).SeqNum 30 - de décaler tous les MEMa-i).SeqNum et MEMù - 1).Order d'une position vers le haut dans la mémoire ; - afin de stocker MEM(o).SeqNum et son MEM(o).Order en position 0 de la mémoire en fin du cycle.In the example of FIG. 5, the flow analysis system comprises an extraction module 505 making it possible to obtain the sequence number values of the packets of the analysis stream 506. A register 500 makes it possible to memorize the last acquired sequence number value. This register furthermore makes it possible to inform a sequencer 501 of the reception of a new value and to transmit said value to a calculation module 503. The function of the calculation module is to compare several sequence number values so as to determining the location in a memory 504 of the new acquired sequence number value. This memory 504 is used to store W sequence number values classified for example in ascending order. In other words, the memory 504 is updated to store a list Li representative of the current measurement period. Sequencer 501 controls 507, 508 the read and write operations in memory 504 and determines the median counter value at each measurement period. These median values 502 are transmitted to a module determining estimators characterizing the flow thus analyzed. The memory 504 preferably dual port is for example implemented with an FPGA circuit. The fast calculation unit 503 can be implemented by a dedicated circuit. Consider that upon receipt of a new sequence number value Tmp (o) .SeqNum in the register 500, the memory 504 contains the last W received sequence numbers MEM (j) .SeqNum and their number. order MEMÙ) .Order assumed to be increasing, that is to say that the most anterior data item has the order number 0 while the most recent data item has the order number W resulting from the previous processing step 20 . To reactualize the contents of the memory, it will be enough then: - to compare the new value of received sequence number Tmp (o) .SeqNum with all the values of sequence number MEMOE1) .SeqNum in memory, and to memorize in the passage the Sequence number corresponding to the searched sequence number (Median = Memum) .SeqNum such as Memum) .Order = S), thus possibly measuring the disorder (Shuffle_est = jm- S); - to decrement MEMù - 1) .Order. if MEMù - 1) .SeqNum <Tmp (o) .SeqNum 30 - to shift all MEMa-i) .SeqNum and MEMù - 1) .Order one position up in the memory; in order to store MEM (o) .SeqNum and its MEM (o) .Order in position 0 of the memory at the end of the cycle.

Claims (15)

REVENDICATIONS1- Procédé d'analyse d'un flux de données transmis sous forme de paquets et appelé flux d'analyse, chaque paquet dudit flux comprenant un compteur dont la valeur est représentative de son ordre d'émission, ledit procédé comprenant les étapes suivantes : - extraction (203) de valeurs de compteurs binaires associées aux paquets présents dans une fenêtre d'observation glissante d'une longueur correspondant à un nombre W impair de paquets consécutifs du flux d'analyse ; détermination (207) de la valeur de compteur médiane dans la fenêtre d'observation ; - détermination (206) d'au moins un indicateur caractérisant le flux, cet indicateur étant déduit d'au moins une des valeurs médianes obtenue à un instant de mesure donné.CLAIMS1- A method of analyzing a stream of data transmitted in packet form and called analysis stream, each packet of said stream comprising a counter whose value is representative of its transmission order, said method comprising the following steps: extraction (203) of bit counter values associated with the packets present in a sliding observation window of a length corresponding to an odd number W of consecutive packets of the analysis stream; determining (207) the median counter value in the observation window; determination (206) of at least one indicator characterizing the flow, this indicator being deduced from at least one of the median values obtained at a given instant of measurement. 2- Procédé selon la revendication 1 dans lequel un indicateur est déduit de la comparaison d'au moins deux valeurs médianes obtenues à deux instants de mesure consécutifs.2. The method of claim 1 wherein an indicator is derived from the comparison of at least two median values obtained at two consecutive measurement times. 3- Procédé selon la revendication 2 dans lequel un indicateur est mis en oeuvre pour détecter une perte de n paquets consécutifs, ladite perte de n paquets consécutifs étant détectée lorsqu'un saut égal à n est identifié entre deux valeurs médianes successives, n étant un entier supérieur ou égal à un.The method of claim 2 wherein an indicator is implemented to detect a loss of n consecutive packets, said loss of n consecutive packets being detected when a jump equal to n is identified between two successive median values, n being a integer greater than or equal to one. 4- Procédé selon l'une des revendications 2 ou 3 dans lequel un indicateur est mis en oeuvre de manière à détecter qu'un paquet est reçu plusieurs fois, un paquet étant considéré reçu M fois lorsque M valeurs médianes identiques sont identifiées successivement.4- Method according to one of claims 2 or 3 wherein an indicator is implemented to detect that a packet is received several times, a packet being considered received M times when M identical median values are identified successively. 5- Procédé selon l'une des revendications 2 à 4 dans lequel un indicateur est mis en oeuvre en identifiant la position (402) de la valeur médiane dans une liste Li comprenant des valeurs de compteurs présentes dans la fenêtre de mesure, un paquet étant considéré comme ayant été reçu conformément à son instant d'émission lorsque la position de la valeur médiane est positionnée au centre de la liste Li, un désordre étant détecté et mesuré lorsqu'il existe un écart (404) entre la position trouvée (402) et la position centrale de la liste Li.5- Method according to one of claims 2 to 4 wherein an indicator is implemented by identifying the position (402) of the median value in a list Li comprising counter values present in the measurement window, a packet being considered to have been received according to its moment of emission when the position of the median value is positioned in the center of the list Li, a disorder being detected and measured when there is a difference (404) between the position found (402) and the central position of the Li list. 6- Procédé selon l'une des revendications 2 à 4 dans lequel un indicateur est mis en oeuvre de manière à comparer la valeur centrale (406) d'une liste Lc avec la valeur centrale (405) d'une liste Li, ladite liste Lc correspondant à la liste Li dont les valeurs de compteurs ont été classées dans un ordre croissant ou décroissant, un paquet étant considéré désordonné si ces deux valeurs centrales ne sont pas identiques.6. Method according to one of claims 2 to 4 wherein an indicator is implemented so as to compare the central value (406) of a list Lc with the central value (405) of a list Li, said list. Lc corresponding to the list Li whose counter values have been classified in ascending or descending order, a packet being considered disordered if these two central values are not identical. 7- Procédé selon l'une des revendications 5 ou 6 dans lequel un compteur spécifique représentatif du désordre des paquets est déterminé en incrémentant une variable entière à chaque fois qu'un désordre est détecté à un instant de mesure donné.7- Method according to one of claims 5 or 6 wherein a specific counter representative of the disorder of the packets is determined by incrementing an integer variable each time a disorder is detected at a given measurement instant. 8- Procédé selon l'une des revendications précédentes dans lequel les flux de données sont des flux RTP.8. Method according to one of the preceding claims wherein the data streams are RTP streams. 9- Procédé selon la revendication 8 dans lequel les compteurs binaires associés aux flux d'analyse correspondent aux champs « sequence number » présents dans des en-têtes de paquets RTP.The method of claim 8 wherein the bit counters associated with the analysis streams correspond to the sequence number fields present in RTP packet headers. 10- Procédé selon l'une des revendications précédentes dans lequel le flux d'analyse correspond au multiplexage ou à la recombinaison d'aumoins deux flux de données reçus résultant respectivement de l'émission de deux flux de données identiques.10- Method according to one of the preceding claims wherein the analysis stream corresponds to the multiplexing or recombination of at least two received data streams resulting respectively from the emission of two identical data streams. 11- Programme d'ordinateur comportant des instructions pour l'exécution du procédé selon l'une quelconque des revendications 1 à 10, lorsque le programme est exécuté par un processeur11- computer program comprising instructions for the execution of the method according to any one of claims 1 to 10, when the program is executed by a processor 12- Système d'analyse d'un flux de données transmis sous forme de paquets et appelé flux d'analyse, chaque paquet du flux comprenant un compteur dont la valeur est représentative de leur ordre d'émission, ledit système comprenant des moyens pour : extraire des valeurs de compteurs binaires associées aux paquets présents dans une fenêtre d'observation glissante d'une longueur correspondant à un nombre W impair de paquets consécutifs du flux d'analyse ; déterminer la valeur de compteur médiane dans la fenêtre d'observation ; déterminer au moins un indicateur caractérisant le flux, ledit indicateur étant déduit d'au moins l'une de ces valeurs médianes.A system for analyzing a stream of data transmitted in the form of packets and called the analysis stream, each packet of the stream comprising a counter whose value is representative of their transmission order, said system comprising means for: extracting binary counter values associated with the packets present in a sliding observation window of a length corresponding to an odd number W of consecutive packets of the analysis stream; determine the median counter value in the observation window; determining at least one indicator characterizing the flow, said indicator being derived from at least one of these median values. 13- Système selon la revendication 12 adapté pour mettre en oeuvre une implémentation de type incrémental.13- System according to claim 12 adapted to implement an implementation of incremental type. 14- Système selon la revendication 13 comprenant un module d'extraction (505) permettant d'obtenir les valeurs de compteurs des paquets d'un flux d'analyse (506), un module de calcul (503) ayant pour fonction de comparer plusieurs valeurs de compteur de manière à déterminer l'emplacement dans une mémoire (504) de la nouvelle valeur de compteur acquise de manière à générer un liste ordonnée Lc et un séquenceur (501) contrôlant (507, 508) les opérations delecture et d'écriture dans la mémoire (504) en vue de la détermination des valeurs médianes.14- System according to claim 13 comprising an extraction module (505) for obtaining the counter values of the packets of an analysis stream (506), a calculation module (503) having the function of comparing several counter values to determine the location in a memory (504) of the newly acquired counter value to generate an ordered list Lc and a sequencer (501) controlling (507, 508) the read and write operations in the memory (504) for determining the median values. 15- Système selon la revendication 14 comprenant un registre (500) permettant de mémoriser la dernière valeur de compteur acquise, ce registre étant adapté pour informer un séquenceur (501) de la réception d'une nouvelle valeur et de transmettre ladite valeur à un module de calcul (503).15- System according to claim 14 comprising a register (500) for storing the last acquired counter value, this register being adapted to inform a sequencer (501) of the receipt of a new value and to transmit said value to a module of calculation (503).
FR1450999A 2014-02-10 2014-02-10 METHOD FOR ANALYZING DATA PACKET STREAMS Pending FR3017507A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1450999A FR3017507A1 (en) 2014-02-10 2014-02-10 METHOD FOR ANALYZING DATA PACKET STREAMS
PCT/EP2015/052799 WO2015118181A1 (en) 2014-02-10 2015-02-10 Method for analyzing data packet streams

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1450999A FR3017507A1 (en) 2014-02-10 2014-02-10 METHOD FOR ANALYZING DATA PACKET STREAMS

Publications (1)

Publication Number Publication Date
FR3017507A1 true FR3017507A1 (en) 2015-08-14

Family

ID=51260954

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1450999A Pending FR3017507A1 (en) 2014-02-10 2014-02-10 METHOD FOR ANALYZING DATA PACKET STREAMS

Country Status (2)

Country Link
FR (1) FR3017507A1 (en)
WO (1) WO2015118181A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114979092B (en) * 2022-05-13 2024-04-02 深圳智慧林网络科技有限公司 RTP-based data transmission method, device, equipment and medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020174216A1 (en) * 2001-05-17 2002-11-21 International Business Machines Corporation Internet traffic analysis tool
US7417991B1 (en) * 2003-12-18 2008-08-26 Avaya Inc. Network quality estimation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020174216A1 (en) * 2001-05-17 2002-11-21 International Business Machines Corporation Internet traffic analysis tool
US7417991B1 (en) * 2003-12-18 2008-08-26 Avaya Inc. Network quality estimation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JAYASUMANA COLORADO STATE UNIVERSITY N PIRATLA DEUTSCHE TELEKOM LABS T BANKA COLORADO STATE UNIVERSITY A BARE R WHITNER AGILENT TE: "Improved Packet Reordering Metrics; rfc5236.txt", 20080601, 1 June 2008 (2008-06-01), XP015057215, ISSN: 0000-0003 *

Also Published As

Publication number Publication date
WO2015118181A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
US8509072B2 (en) Network congestion analysis
US9692671B2 (en) Method and apparatus for automatically determining causes of service quality degradation
EP1743454A1 (en) Performance measurement in a packet transmission network
JPWO2013094032A1 (en) Information processing apparatus, information processing method, and program
US9210058B2 (en) Systems and methods for assessing jitter buffers
CN108235149B (en) Method and device for optimizing video playing fluency
Basso et al. Measuring DASH streaming performance from the end users perspective using neubot
JP2022106771A (en) Data processing method, server, and data collection device
FR3086823A1 (en) METHOD AND SYSTEM FOR MONITORING A CONNECTION BETWEEN TWO END EQUIPMENT, CORRESPONDING COMPUTER PROGRAM PRODUCT.
EP1306689B1 (en) Method and system for recording and synchronized reading of data coming from a plurality of terminals
US10171326B2 (en) Method and apparatus for estimating a maximum time interval error in a data transmission network
US8671183B2 (en) System for internet scale visualization and detection of performance events
Lei et al. PrintQueue: performance diagnosis via queue measurement in the data plane
EP2923461A1 (en) Device and method for retransmitting data in a network switch
de Fréin et al. Detecting network state in the presence of varying levels of congestion
CN109981550B (en) Game service quality evaluation method and device
FR3017507A1 (en) METHOD FOR ANALYZING DATA PACKET STREAMS
FR2834847A1 (en) NETWORK OR SERVICE MANAGEMENT SYSTEM FOR DETERMINING SYNCHRONIZATION BETWEEN TWO PACKET FLOWS
US9210453B1 (en) Measuring quality of experience and identifying problem sources for various service types
JP5768722B2 (en) Program for verification test, information processing method, and information processing apparatus
Baldesi et al. Improving P2P streaming in community-lab through local strategies
EP2497235B1 (en) Diagnostic tool for broadband networks
US20200296189A1 (en) Packet analysis apparatus, packet analysis method, and storage medium
EP2359535A1 (en) Method for measuring the performance of an ip network and associated system
Ahsan et al. DASHing towards hollywood

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2