FR3077697A1 - METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK - Google Patents

METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK Download PDF

Info

Publication number
FR3077697A1
FR3077697A1 FR1851037A FR1851037A FR3077697A1 FR 3077697 A1 FR3077697 A1 FR 3077697A1 FR 1851037 A FR1851037 A FR 1851037A FR 1851037 A FR1851037 A FR 1851037A FR 3077697 A1 FR3077697 A1 FR 3077697A1
Authority
FR
France
Prior art keywords
label
identifier
data
mpls
packets
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.)
Withdrawn
Application number
FR1851037A
Other languages
French (fr)
Inventor
Bruno Decraene
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.)
Orange SA
Original Assignee
Orange SA
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 Orange SA filed Critical Orange SA
Priority to FR1851037A priority Critical patent/FR3077697A1/en
Priority to US16/967,953 priority patent/US11870687B2/en
Priority to EP19707436.2A priority patent/EP3750285B1/en
Priority to PCT/FR2019/050221 priority patent/WO2019155144A1/en
Publication of FR3077697A1 publication Critical patent/FR3077697A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • H04L45/507Label distribution

Landscapes

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

Abstract

L'invention concerne un procédé d'envoi de paquets de données encapsulés selon le protocole MPLS et un dispositif d'envoi d'un réseau IP/MPLS configuré pour mettre en œuvre ledit procédé. Le procédé d'envoi comprend l'obtention d'un identifiant représentatif d'un groupe de paquets de données comprenant au moins un paquet de données, l'insertion dudit identifiant dans au moins une partie d'un champ de données associé à une étiquette d'entropie du protocole MPLS dudit au moins un paquet de données, et l'envoi dudit au moins un paquet de données dans le réseau IP/MPLS.The invention relates to a method for sending data packets encapsulated according to the MPLS protocol and a device for sending an IP / MPLS network configured to implement said method. The sending method includes obtaining an identifier representative of a group of data packets comprising at least one data packet, inserting said identifier in at least a portion of a data field associated with a tag entropy MPLS of said at least one data packet, and sending said at least one data packet in the IP / MPLS network.

Description

PROCEDE ET DISPOSITIF D'ENVOI DE PAQUETS DE DONNEES SUR UN RESEAU IP/MPLS.METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK.

1. Domaine de l'invention1. Field of the invention

L'invention concerne les réseaux de communication, et plus particulièrement les réseaux de paquets IP/MPLS (Internet Protocol/ MultiProtocol Label Switching en anglais).The invention relates to communication networks, and more particularly to IP / MPLS (Internet Protocol / MultiProtocol Label Switching) packet networks.

2. Art Antérieur2. Prior Art

Un réseau IP/MPLS est un réseau constitué de routeurs acheminant des paquets IP ou MPLS. Le mécanisme de transport de données mis en oeuvre dans un tel réseau est basé sur la commutation d'étiquettes ou labels insérées dans les paquets à l'entrée du réseau MPLS et retirées des paquets à la sortie du réseau MPLS. Selon cette technologie, des chemins de transmission des paquets de données dans le réseau MPLS sont définis entre des routeurs du réseau MPLS, dit PE pour Provider Edge en anglais ou LER pour Label Edge Router en anglais.An IP / MPLS network is a network of routers carrying IP or MPLS packets. The data transport mechanism implemented in such a network is based on the switching of labels or labels inserted in the packets at the entry of the MPLS network and removed from the packets at the exit of the MPLS network. According to this technology, data packet transmission paths in the MPLS network are defined between routers in the MPLS network, known as PE for Provider Edge in English or LER for Label Edge Router in English.

A l'entrée du réseau MPLS, notamment, un routeur d'entrée insère au moins une étiquette dans les paquets de données reçus permettant la transmission dudit paquet à travers le réseau MPLS selon le chemin associé à la ou aux étiquette(s). L'étiquette ou les étiquettes insérées dans le paquet sont déterminées à partir de tables de correspondance, associant une ou plusieurs étiquettes à une classe, connue sous le nom de FEC pour Forwarding Equivalence Class en anglais. Une même classe FEC est affectée à un groupe de paquets de données ayant au moins une caractéristique commune. Les paquets associés à une même classe FEC suivront alors le même chemin de transmission dans le réseau MPLS.At the entry of the MPLS network, in particular, an entry router inserts at least one label into the received data packets allowing the transmission of said packet through the MPLS network according to the path associated with the label (s). The label or labels inserted in the package are determined from correspondence tables, associating one or more labels with a class, known as FEC for Forwarding Equivalence Class in English. The same FEC class is assigned to a group of data packets having at least one common characteristic. Packets associated with the same FEC class will then follow the same transmission path in the MPLS network.

Le mécanisme de transport MPLS permet ainsi d'établir des tunnels, aussi connus sous le nom de LSP pour Label Switched Path en anglais. Différents types de tunnels peuvent être définis, par exemple:The MPLS transport mechanism thus makes it possible to establish tunnels, also known as LSP for Label Switched Path in English. Different types of tunnels can be defined, for example:

- point à point, via le protocole RSVP-TE (pour Réservation Protocol Traffic Engineering en anglais),- point to point, via the RSVP-TE protocol (for Reservation Protocol Traffic Engineering in English),

- multipoint à point, via le protocole LDP pour Label Distribution Protocol en anglais ou le protocole Segment Routing,- multipoint to point, via the LDP protocol for Label Distribution Protocol in English or the Segment Routing protocol,

- point à multipoint, via le protocole RSVP-TE ou mLDP,- point to multipoint, via RSVP-TE or mLDP protocol,

- multipoint à multipoint.- multipoint to multipoint.

Un inconvénient de ces mécanismes est qu'il n'est pas possible pour un observateur placé sur le chemin d'un tunnel ou à l'extrémité sortante d'un tunnel, d'identifier la source d'un flux de données, ou d'identifier un flux de données ou encore un groupe de flux de données, ou un paquet ou un groupe de paquets transmis sur le chemin.A disadvantage of these mechanisms is that it is not possible for an observer placed on the path of a tunnel or at the outgoing end of a tunnel, to identify the source of a data flow, or d 'identify a data stream or a group of data streams, or a packet or a group of packets transmitted on the way.

Une telle limitation est problématique, notamment pour le contrôle de la qualité du réseau, ou pour surveiller les performances du réseau par des mesures des pertes de paquets ou du délai de transmission par exemple, ou pour la mesure du trafic dans le réseau à des fins de statistique ou de dimensionnement, ou encore pour la mesure du trafic dans le réseau à des fins de facturation à l'usage, ou encore pour assurer une protection des flux transmis de bout en bout.Such a limitation is problematic, in particular for controlling the quality of the network, or for monitoring network performance by measuring packet loss or transmission delay for example, or for measuring traffic in the network for statistics or sizing, or for measuring traffic in the network for billing purposes, or to ensure protection of flows transmitted from end to end.

Une solution pour résoudre ce problème pourrait consister à insérer dans chaque paquet MPLS reçu 2 ou 3 étiquettes MPLS supplémentaires portant une identification du chemin et une identification de la source du flux. Une telle solution n'est toutefois pas optimale car elle nécessite la mise à jour des routeurs déjà en place dans les réseaux MPLS pour prendre en compte ces nouveaux champs. Or, de tels routeurs sont difficilement modifiables.One solution to solve this problem could consist in inserting into each MPLS packet received 2 or 3 additional MPLS labels bearing an identification of the path and an identification of the source of the stream. However, such a solution is not optimal because it requires updating the routers already in place in MPLS networks to take these new fields into account. However, such routers are difficult to modify.

De plus, une telle solution nécessite l'utilisation d'une étiquette MPLS dite réservée, pour indiquer que les étiquettes suivantes correspondent à l'identification de la source et/ou du chemin. De telles étiquettes dites réservées sont en nombre limitées dans le standard MPLS, seulement 16 étiquettes réservées ont été définies pour tout le standard MPLS.In addition, such a solution requires the use of a so-called reserved MPLS label, to indicate that the following labels correspond to the identification of the source and / or of the path. Such so-called reserved labels are limited in number in the MPLS standard, only 16 reserved labels have been defined for the entire MPLS standard.

Une telle solution nécessite également de modifier toutes les entités destinataires des paquets reçus, ainsi qu'une signalisation supplémentaire dans le plan de contrôle afin qu'une entité destinataire annonce le support de ces nouveaux champs au routeur d'entrée du tunnel.Such a solution also requires modifying all the recipient entities of the received packets, as well as additional signaling in the control plane so that a recipient entity announces the support of these new fields to the tunnel entry router.

Une telle solution nécessite également d’ajouter des étiquettes MPLS supplémentaires sur les paquets, ce qui peut être difficile pour le routeur les ajoutant, et qui va également rendre plus difficile la lecture des entêtes placés derrière ces étiquettes, en particulier pour des besoins de partage de charge sur plusieurs chemins.Such a solution also requires adding additional MPLS labels on the packets, which can be difficult for the router adding them, and which will also make it more difficult to read the headers placed behind these labels, in particular for sharing purposes. load on multiple paths.

Il existe donc un besoin d'améliorer l'état de la technique.There is therefore a need to improve the state of the art.

3. Exposé de l'invention3. Statement of the invention

L'invention concerne, à cet effet, un procédé d'envoi de paquets de données encapsulés selon le protocole MPLS, mis en oeuvre par un dispositif d’envoi d'un réseau IP/MPLS. Le procédé d'envoi selon l'invention comprend:To this end, the invention relates to a method for sending packets of data encapsulated according to the MPLS protocol, implemented by a device for sending an IP / MPLS network. The sending method according to the invention comprises:

- l'obtention d'un identifiant représentatif d'un groupe de paquets de données comprenant au moins un paquet de données,- obtaining an identifier representative of a group of data packets comprising at least one data packet,

- l'insertion dudit identifiant dans au moins une partie d'un champ de données associé à une étiquette d'entropie du protocole MPLS dudit au moins un paquet de données,the insertion of said identifier into at least part of a data field associated with an entropy label of the MPLS protocol of said at least one data packet,

- l'envoi dudit au moins un paquet de données dans le réseau IP/MPLS.- sending said at least one data packet in the IP / MPLS network.

Le procédé selon l'invention permet ainsi de réutiliser des champs d'étiquettes existantes du standard MPLS, évitant l'ajout de nouvelles étiquettes MPLS dans les paquets ou l'utilisation d'étiquettes réservées. L'invention permet ainsi de fournir une solution d'identification de la source ou du flux compatibles avec les routeurs déjà en place dans un réseau MPLS. En particulier, les fonctions du plan de transfert mises en œuvre par des composants hardware des routeurs de transit et de destination ne sont pas modifiées.The method according to the invention thus makes it possible to reuse existing label fields of the MPLS standard, avoiding the addition of new MPLS labels in the packets or the use of reserved labels. The invention thus makes it possible to provide a solution for identifying the source or the flow compatible with the routers already in place in an MPLS network. In particular, the functions of the transfer plan implemented by hardware components of the transit and destination routers are not modified.

De plus, selon l'invention, l'utilisation d'une étiquette existante permet de ne pas augmenter la taille de la pile d'étiquettes des paquets transmis.In addition, according to the invention, the use of an existing label makes it possible not to increase the size of the stack of labels of the transmitted packets.

L'identifiant représentatif d'un groupe de paquets de données peut correspondre à un identifiant indiquant la source ayant émis les paquets du groupe de paquets de données, ou bien à un identifiant du groupe de paquets lui-même ou encore un identifiant comprenant une partie permettant d'identifier la source ayant émis le paquet et une partie permettant d'identifier le groupe de paquets lui-même.The identifier representative of a group of data packets can correspond to an identifier indicating the source having sent the packets of the group of data packets, or to an identifier of the packet group itself or even an identifier comprising a part allowing to identify the source having emitted the packet and a part making it possible to identify the group of packets itself.

Le mécanisme d'entropie a été introduit dans les réseaux MPLS afin d'ajouter de l'entropie dans le réseau pour permettre de répartir la charge dans le réseau MPLS (i.e. permettre que des paquets de données affectés à une même classe puissent suivre des chemins différents dans le réseau), tout en s’assurant que l’ensemble des paquets d’un flux donné n’emprunte qu’un seul chemin (afin d’éviter le risque que les paquets n’arrivent dans un ordre différent). Pour cela, deux étiquettes spécifiques, appelées par la suite étiquettes d'entropie, sont insérées dans les paquets de données. Une première étiquette intitulée Label ELI selon le protocole MPLS dont le champ Label a une valeur bien connue et qui indique que l'étiquette suivante intitulée Label EL selon le protocole MPLS correspond au mécanisme d'entropie. La deuxième étiquette Label EL comprend dans un champ Label une valeur d'entropie.The entropy mechanism has been introduced in MPLS networks in order to add entropy in the network to allow load distribution in the MPLS network (ie allow that data packets assigned to the same class can follow paths different in the network), while ensuring that all the packets of a given flow take only one path (in order to avoid the risk that the packets arrive in a different order). For this, two specific labels, hereinafter called entropy labels, are inserted into the data packets. A first label titled Label ELI according to the MPLS protocol whose Label field has a well-known value and which indicates that the following label titled Label EL according to the MPLS protocol corresponds to the entropy mechanism. The second Label EL label includes an entropy value in a Label field.

Avantageusement, une telle étiquette d'entropie Label EL permet d'ajouter de l'entropie dans les paquets de données, tout en permettant de respecter la contrainte selon laquelle des paquets appartenant à un même flux de données sont transmis par un même chemin, i.e. la même succession de liens à travers le réseau, ceci afin d'éviter un ré-ordonnancement des paquets. Ainsi, pour les paquets d'un même flux de données, une même valeur d'entropie sera utilisée.Advantageously, such a Label EL entropy label makes it possible to add entropy to the data packets, while making it possible to comply with the constraint according to which packets belonging to the same data stream are transmitted by the same path, ie the same succession of links across the network, in order to avoid reordering of the packets. Thus, for the packets of the same data stream, the same entropy value will be used.

De par leur fonction, les étiquettes d'entropie ne sont pas utilisées pour l’aiguillage des paquets dans le réseau, on entend par là que les étiquettes d'entropie ne sont pas interprétées par les routeurs de la même manière que les étiquettes portant une information de type FEC.By their function, the entropy labels are not used for the routing of packets in the network, this means that the entropy labels are not interpreted by the routers in the same way as the labels carrying a FEC type information.

Ainsi, la valeur d'entropie portée par une étiquette d'entropie peut être quelconque, dès lors que les paquets d'un même flux de données portent la même valeur d'entropie. Les champs d'une étiquette d'entropie peuvent ainsi être avantageusement utilisés pour porter un identifiant de la source ayant émis le paquet de données et/ou d'un groupe de paquets, sans modifier le fonctionnement de la solution d'entropie du protocole MPLS.Thus, the entropy value carried by an entropy label can be arbitrary, as long as the packets of the same data stream carry the same entropy value. The fields of an entropy label can thus be advantageously used to carry an identifier of the source having sent the data packet and / or of a group of packets, without modifying the operation of the entropy solution of the MPLS protocol. .

Par la suite, on appelle étiquette, l'entête de 4 octets aussi connue sous le nom de label en anglais selon la norme RFC 6790 ou label stack entry en anglais selon la norme RFC 3032. Un tel entête de 4 octets ou étiquette comprend une valeur codée sur 20 bits, dans un champ de données également nommé Label. Pour des raisons de clarté, une telle valeur d'étiquette codée sur 20 bits sera appelée par la suite champ de données Label ou champ Label de l'étiquette.Thereafter, label is called, the header of 4 bytes also known by the name of label in English according to standard RFC 6790 or label stack entry in English according to standard RFC 3032. Such a header of 4 bytes or label comprises a value coded on 20 bits, in a data field also called Label. For reasons of clarity, such a label value coded on 20 bits will hereinafter be called Label data field or Label field Label.

Selon un mode particulier de réalisation de l'invention, ledit champ de données est compris dans la liste comprenant:According to a particular embodiment of the invention, said data field is included in the list comprising:

- un champ de données Label de l'étiquette d'entropie Label EL,- a Label data field of the Label EL entropy label,

- un champ de données TC de l'étiquette d'entropie Label EL,- a TC data field of the Label EL entropy label,

- un champ de données TTL de l'étiquette d'entropie Label EL,- a TTL data field of the Label EL entropy label,

- un champ de données TC de l'étiquette d'entropie Label ELI,- a TC data field of the Label ELI entropy label,

- un champ de données TTL de l'étiquette d'entropie Label ELI.- a TTL data field of the Label ELI entropy label.

Avantageusement, un champ ou plus de l'étiquette d'entropie MPLS Label EL et/ou de l'étiquette d'entropie MPLS Label ELI est utilisé pour porter l'identifiant de la source et/ou du groupe de paquets. De tels champs ne sont pas utilisés pour l’aiguillage des paquets, ils peuvent donc être utilisés en tout ou partie pour les besoins de l'invention, sans impact sur le fonctionnement de la solution d'entropie du standard MPLS.Advantageously, one or more fields of the MPLS Label EL entropy label and / or of the MPLS Label ELI entropy label is used to carry the identifier of the source and / or of the group of packets. Such fields are not used for the routing of packets, they can therefore be used in whole or in part for the needs of the invention, without impacting the operation of the entropy solution of the MPLS standard.

Selon un mode particulier de réalisation de l'invention, lorsqu'un flux comprend au moins deux groupes de paquets de données, une première partie dudit identifiant est insérée dans le champ de données Label de l'étiquette d'entropie Label EL de chacun des paquets de données des deux groupes, et une deuxième partie dudit identifiant est insérée dans un autre champ de l'étiquette d'entropie Label EL ou Label ELI de chacun des paquets de données des deux groupes, ladite deuxième partie étant identique pour tous les paquets d'un même groupe de paquets du flux, et distincte pour des paquets de données n'appartenant pas à un même groupe de paquets du flux.According to a particular embodiment of the invention, when a flow comprises at least two groups of data packets, a first part of said identifier is inserted in the Label data field of the label entropy label Label EL of each of the data packets of the two groups, and a second part of said identifier is inserted into another field of the Label EL or Label ELI entropy label of each of the data packets of the two groups, said second part being identical for all the packets of the same group of packets of the stream, and distinct for data packets not belonging to the same group of packets of the stream.

Selon ce mode particulier de réalisation de l'invention, il est ainsi possible d'identifier des groupes de paquets d'un même flux en insérant un identifiant distinct pour chaque groupe de paquets, tout en respectant la contrainte du mécanisme d'entropie selon laquelle les paquets d'un même flux suivent le même chemin. En effet, la première partie de l'identifiant insérée dans le champ de données Label de l'étiquette d'entropie Label EL est identique pour tous les paquets de données quel que soit le groupe de paquets auquel ils appartiennent.According to this particular embodiment of the invention, it is thus possible to identify groups of packets of the same stream by inserting a separate identifier for each group of packets, while respecting the constraint of the entropy mechanism according to which packets in the same stream follow the same path. Indeed, the first part of the identifier inserted in the Label data field of the Label EL entropy label is identical for all data packets regardless of the group of packets to which they belong.

Selon un autre mode particulier de réalisation de l'invention, ledit identifiant est un identifiant de flux auquel ledit groupe de paquets appartient et ledit identifiant est reçu par le dispositif d’envoi.According to another particular embodiment of the invention, said identifier is a stream identifier to which said group of packets belongs and said identifier is received by the sending device.

Selon ce mode particulier de réalisation de l'invention, l'identifiant de flux est déterminé de manière centralisée et transmis au dispositif d’envoi pour insertion dans les paquets de données. Par exemple, le dispositif d’envoi reçoit l'identifiant en provenance d'un serveur selon le protocole NETCONF/YANG, ou via le protocole PCEP (pour Path Computation Elément Communication Protocol en anglais).According to this particular embodiment of the invention, the stream identifier is determined centrally and transmitted to the sending device for insertion into the data packets. For example, the sending device receives the identifier from a server according to the NETCONF / YANG protocol, or via the PCEP protocol (for Path Computation Element Communication Protocol in English).

Selon un autre mode particulier de réalisation de l'invention, l'obtention d'un identifiant comprend:According to another particular embodiment of the invention, obtaining an identifier comprises:

- l'obtention d'un identifiant dudit dispositif d’envoi,- obtaining an identifier of said sending device,

- la détermination par le dispositif d’envoi d'un identifiant de flux auquel appartient le groupe de paquets,- the determination by the sending device of a stream identifier to which the group of packets belongs,

- la concaténation dudit identifiant du dispositif d’envoi et dudit identifiant de flux pour former l'identifiant à insérer dans ledit au moins un paquet.- the concatenation of said identifier of the sending device and of said flow identifier to form the identifier to be inserted into said at least one packet.

Selon ce mode particulier de réalisation de l'invention, l'identifiant de flux est déterminé localement par le dispositif d’envoi. Ainsi, il n'est pas nécessaire de gérer un serveur central allouant des identifiants de flux.According to this particular embodiment of the invention, the stream identifier is determined locally by the sending device. Thus, it is not necessary to manage a central server allocating flow identifiers.

L'invention concerne également un dispositif de paquets de données transmis sur un réseau IP/MPLS, configuré pour:The invention also relates to a data packet device transmitted over an IP / MPLS network, configured for:

- obtenir un identifiant représentatif d'un groupe de paquets de données comprenant au moins un paquet de données,- obtain an identifier representative of a group of data packets comprising at least one data packet,

- insérer ledit identifiant dans au moins une partie d'un champ de données associé à une étiquette d'entropie du protocole MPLS dudit au moins un paquet de données,inserting said identifier into at least part of a data field associated with an MPLS protocol entropy label of said at least one data packet,

- envoyer ledit au moins un paquet de données dans le réseau IP/MPLS.- send said at least one data packet in the IP / MPLS network.

L'invention concerne aussi un procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données transmis sur un réseau IP/MPLS, comprenant:The invention also relates to a method for reading an identifier representative of a group of data packets transmitted over an IP / MPLS network, comprising:

- la réception d'au moins une partie d'un paquet de données appartenant audit groupe de paquets de données,- the reception of at least part of a data packet belonging to said group of data packets,

- l'obtention dudit identifiant depuis au moins une partie d'un champ de données associé à une étiquette d'entropie MPLS présente dans ledit paquet de données.- Obtaining said identifier from at least part of a data field associated with an MPLS entropy label present in said data packet.

Un tel procédé permet de lire l'identifiant de groupe de paquets insérés par un dispositif d’envoi du réseau IP/MPLS. Le procédé de lecture peut avantageusement être mis en œuvre par un routeur de sortie du réseau IP/MPLS, ou un routeur de transit du réseau IP/MPLS, ou encore un serveur applicatif quelconque en charge d'identifier les groupes de paquets transmis sur le réseau IP/MPLS pour différents usages.Such a method makes it possible to read the group identifier of packets inserted by a sending device of the IP / MPLS network. The reading process can advantageously be implemented by an output router of the IP / MPLS network, or a transit router of the IP / MPLS network, or even any application server in charge of identifying the groups of packets transmitted on the IP / MPLS network for different uses.

Corrélativement, l'invention concerne également un dispositif de lecture d'un identifiant représentatif d'un groupe de paquets de données transmis sur un réseau IP/MPLS, configuré pour:Correlatively, the invention also relates to a device for reading an identifier representative of a group of data packets transmitted over an IP / MPLS network, configured for:

- recevoir au moins une partie d'un paquet de données appartenant audit groupe de paquets de données,- receive at least part of a data packet belonging to said group of data packets,

- obtenir ledit identifiant depuis au moins une partie d'un champ de données associé à une étiquette d'entropie MPLS présente dans ledit paquet de données.- Obtaining said identifier from at least part of a data field associated with an MPLS entropy label present in said data packet.

Selon un mode particulier de réalisation de l'invention, un tel dispositif de lecture est compris dans un routeur de transit d'un réseau IP/MPLS ou un routeur de sortie d'un réseau IP/MPLS.According to a particular embodiment of the invention, such a reading device is included in a transit router of an IP / MPLS network or an output router of an IP / MPLS network.

L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre des procédés ci-dessus selon l'un quelconque des modes particuliers de réalisation décrits précédemment, lorsque ledit programme est exécuté par un processeur. Les procédés peuvent être mis en œuvre de diverses manières, notamment sous forme câblée ou sous forme logicielle.The invention also relates to a computer program comprising instructions for the implementation of the above methods according to any one of the particular embodiments described above, when said program is executed by a processor. The methods can be implemented in various ways, in particular in wired form or in software form.

Ces programmes peuvent utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.These programs can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other desirable form.

L'invention vise aussi un support d'enregistrement ou support d'informations lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné cidessus. Les supports d'enregistrement mentionnés ci-avant peuvent être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique. Un tel moyen de stockage peut par exemple être un disque dur, une mémoire flash, etc.... D'autre part, les supports d'enregistrement peuvent correspondre à un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Les programmes selon l'invention peuvent être en particulier téléchargés sur un réseau de type Internet.The invention also relates to a recording medium or information medium readable by a computer, and comprising instructions of a computer program as mentioned above. The recording media mentioned above can be any entity or device capable of storing the program. For example, the support may include a storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or also a magnetic recording means. Such storage means can for example be a hard disk, a flash memory, etc. On the other hand, the recording media can correspond to a transmissible medium such as an electrical or optical signal, which can be routed via an electrical or optical cable, radio or other means. The programs according to the invention can in particular be downloaded from a network of the Internet type.

Alternativement, les supports d'enregistrement peuvent correspondre à un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.Alternatively, the recording media can correspond to an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the process in question.

4. Liste des figures4. List of figures

D’autres caractéristiques et avantages de l’invention apparaîtront plus clairement à la lecture de la description suivante de modes de réalisation particuliers, donnés à titre de simples exemples illustratifs et non limitatifs, et des dessins annexés, parmi lesquels :Other characteristics and advantages of the invention will appear more clearly on reading the following description of particular embodiments, given by way of simple illustrative and nonlimiting examples, and of the appended drawings, among which:

- la figure 1 illustre un exemple d'un réseau ou d'une partie de réseau IP/MPLS dans lequel l'invention peut être mise en oeuvre,FIG. 1 illustrates an example of a network or part of an IP / MPLS network in which the invention can be implemented,

- la figure 2 illustre des étapes du procédé d'envoi d'un groupe de paquets de données MPLS selon un mode particulier de réalisation de l'invention,FIG. 2 illustrates steps of the method of sending a group of MPLS data packets according to a particular embodiment of the invention,

- la figure 3 illustre des étapes pour obtenir un identifiant représentatif d'une source et d'un flux transmis par la source selon un mode particulier de réalisation de l'invention,FIG. 3 illustrates steps for obtaining an identifier representative of a source and of a stream transmitted by the source according to a particular embodiment of the invention,

- la figure 4 illustre des étapes du procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données MPLS selon un mode particulier de réalisation de l'invention,FIG. 4 illustrates steps of the method for reading an identifier representative of a group of MPLS data packets according to a particular embodiment of the invention,

- la figure 5 illustre un dispositif configuré pour mettre en œuvre le procédé d'envoi d'un groupe de paquets de données MPLS selon un mode particulier de réalisation de l'invention,FIG. 5 illustrates a device configured to implement the method of sending a group of MPLS data packets according to a particular embodiment of the invention,

- la figure 6 illustre un dispositif configuré pour mettre en œuvre le procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données MPLS selon un mode particulier de réalisation de l'invention.- Figure 6 illustrates a device configured to implement the method of reading an identifier representative of a group of MPLS data packets according to a particular embodiment of the invention.

5. Description d'un mode de réalisation de l'invention5. Description of an embodiment of the invention

5.1 Principe général de l'invention5.1 General principle of the invention

Le principe général de l'invention consiste à réutiliser un entête MPLS d'une étiquette d'entropie, connue sous le nom Entropy Label, déjà définie dans le standard MPLS, afin de transporter un identifiant de source et/ou de flux transmis sur un réseau MPLS.The general principle of the invention consists in reusing an MPLS header of an entropy label, known under the name Entropy Label, already defined in the MPLS standard, in order to transport a source and / or stream identifier transmitted over a MPLS network.

Avantageusement, l'invention permet de résoudre le problème d'identification des groupes de paquets de données transitant dans le réseau IP/MPLS sans nécessiter de modifications lourdes des mécanismes MPLS existants. L'utilisation d'étiquettes d'entropie permet à la fois de transporter un identifiant de source, de flux, ou de groupes de paquets d'un flux, tout en conservant le fonctionnement du mécanisme d'entropie défini par le standard MPLS et utilisé pour la répartition de la charge dans le réseau MPLS.Advantageously, the invention makes it possible to solve the problem of identifying the groups of data packets passing through the IP / MPLS network without requiring heavy modifications of the existing MPLS mechanisms. The use of entropy tags makes it possible both to transport a source, flow or group of packet identifiers of a flow, while retaining the functioning of the entropy mechanism defined by the MPLS standard and used for load distribution in the MPLS network.

5.2 Modes particuliers de réalisation de l'invention.5.2 Special modes of carrying out the invention.

Pour rappel, le mécanisme d'entropie défini dans le document RFC6790 (The use of Entropy Labels in MPLS Forwarding, IETF, Novembre 2012) consiste à ajouter deux étiquettes spécifiques dans un paquet de données transporté par un réseau MPLS. Ces deux étiquettes sont insérées juste après l'étiquette indiquant la destination du tunnel (LSP). La table 1 ci-dessous illustre ces deux étiquettes.As a reminder, the entropy mechanism defined in the document RFC6790 (The use of Entropy Labels in MPLS Forwarding, IETF, November 2012) consists in adding two specific labels in a data packet transported by an MPLS network. These two labels are inserted just after the label indicating the destination of the tunnel (LSP). Table 1 below illustrates these two labels.

Une première étiquette appelée ELI pour Entropy Label Indicator en anglais est une étiquette MPLS réservée. Elle est utilisée pour indiquer que l'étiquette suivante est une étiquette codant l’entropie. Cette première étiquette n'est donc pas utilisée pour l’acheminement du paquet.A first label called ELI for Entropy Label Indicator in English is a reserved MPLS label. It is used to indicate that the next label is a label encoding entropy. This first label is therefore not used for the delivery of the package.

La deuxième étiquette appelée EL pour Entropy Label en anglais est une étiquette portant une valeur d'entropie. La valeur codée dans cette étiquette est une valeur quelconque, endehors des valeurs 0-15 qui sont réservées, mais elle doit être constante pour un flux donné. Une telle valeur sert à ajouter de l’entropie afin de mieux répartir les différents flux lors du partage de charge sur plusieurs chemins.The second label called EL for Entropy Label in English is a label with an entropy value. The value encoded in this label is any value, outside of the 0-15 values that are reserved, but it must be constant for a given stream. Such a value is used to add entropy in order to better distribute the different flows during load sharing on several paths.

12 312 3

0123456789012345678901234567890101234567890123456789012345678901

Label | TC |S| TTLLabel | TC | S | TTL

Figure FR3077697A1_D0001

( Label ELI) ( Label(ELI Label) (Label

EL) | Label | TC |S| TTL |EL) | Label | TC | S | TTL |

Table 1: Etiquettes d'entropie insérées dans un entête MPLSTable 1: Entropy labels inserted in an MPLS header

Comme illustré par la table 1 ci-dessus, chaque étiquette d'entropie ELI et EL comprend 4 champs: un champ Label codant sur 20 bits, un champ TC codé sur 3 bits, un champ S codé sur 1 bit et un champ TTL codé sur 8 bits.As illustrated by table 1 above, each entropy label ELI and EL comprises 4 fields: a Label field coding on 20 bits, a TC field coded on 3 bits, a field S coded on 1 bit and a field TTL coded on 8 bits.

Certains champs de cet entête définis pour le mécanisme d'entropie sont sous-utilisés.Certain fields of this header defined for the entropy mechanism are underused.

Par exemple, le champ Label de l'étiquette EL (EL.label) est destiné à porter une valeur d'entropie permettant de distinguer plusieurs flux vers une même destination, pour des raisons de répartition de charge. Un tel champ est globalement surdimensionné pour porter une valeur d'entropie. En effet, en pratique, les 20 bits de ce champ Label ne sont pas tous utilisés pour porter une valeur d'entropie. Ainsi, plusieurs bits (e.g. 10) de champ Label peuvent être utilisés pour identifier un flux ou un groupe de flux ou la source émettant ces flux.For example, the Label field of the EL label (EL.label) is intended to carry an entropy value making it possible to distinguish several flows towards the same destination, for reasons of load distribution. Such a field is globally oversized to carry an entropy value. Indeed, in practice, the 20 bits of this Label field are not all used to carry an entropy value. Thus, several bits (e.g. 10) of the Label field can be used to identify a flow or a group of flows or the source emitting these flows.

Avantageusement, les bits de ce champ qui seraient utilisés pour porter un identifiant de flux ou de source peuvent également être utilisés en même temps pour le partage de charge. En effet, la seule contrainte pour la valeur portée par ce champ est que la valeur portée ne doit pas changer pour un flux donné.Advantageously, the bits of this field which would be used to carry a stream or source identifier can also be used at the same time for load sharing. Indeed, the only constraint for the value carried by this field is that the carried value must not change for a given flow.

Le champ TC de l'étiquette d'entropie EL (EL.TC) sert habituellement à indiquer la classe de trafic du paquet de données. Or, l'étiquette d'entropie MPLS EL n’est jamais utilisée pour le transfert (forwarding en anglais) des paquets, donc pour déterminer la classe de transfert.The TC field of the EL entropy label (EL.TC) is usually used to indicate the traffic class of the data packet. However, the MPLS EL entropy label is never used for forwarding packets, so to determine the transfer class.

Ce champ peut donc être utilisé pour transporter un identifiant de flux, de groupe de flux ou de source.This field can therefore be used to transport a stream, stream group or source identifier.

Le champ TTL de l'étiquette EL (EL.TTL) sert habituellement à limiter le nombre de routeurs traversés dans le réseau. Or, l'étiquette d'entropie MPLS EL n’est jamais utilisée pour le transfert (forwarding) des paquets. Cependant, le mécanisme d'entropie défini dans le document RFC6790 spécifie que le champ EL.TTL doit être mis à zéro pour être sûr que cette étiquette ne soit jamais utilisée pour le transfert. Bien qu’une protection supplémentaire contre d’éventuels bugs soit toujours bienvenue quand son coût est nul, une telle mesure ne parait pas nécessaire. Une telle contrainte est également spécifiée pour d'autres types d'étiquettes qui ne devraient pas non plus être utilisées hors de leur cadre d’utilisation, mais en pratique cette contrainte est rarement respectée. Le champ EL.TTL peut donc être raisonnablement utilisé pour porter un identifiant ou une partie d'identifiant de flux, de groupe de flux ou de source.The TTL field of the EL label (EL.TTL) is usually used to limit the number of routers crossed in the network. However, the MPLS EL entropy label is never used for forwarding packets. However, the entropy mechanism defined in the document RFC6790 specifies that the EL.TTL field must be set to zero to be sure that this label is never used for the transfer. Although additional protection against possible bugs is always welcome when its cost is zero, such a measure does not seem necessary. Such a constraint is also specified for other types of labels which should also not be used outside their scope of use, but in practice this constraint is rarely observed. The EL.TTL field can therefore be reasonably used to carry an identifier or part of an identifier for a stream, group of streams or source.

Le champ TTL de l'étiquette ELI (ELI.TTL) sert habituellement à limiter le nombre de routeurs traversés dans le réseau. Or, ce champ n’est consulté que par le routeur de terminaison du LSP et potentiellement le routeur précédent. Pour plus de sûreté, ce champ ne peut donc pas être mis à 0 ou 1. Pour se prémunir d’une possible décrémentation, le bit de poids faible ne sera pas utilisé et sera positionné à 1. Il est à noter que le mécanisme d'entropie défini dans le document RFC6790 recommande de mettre une valeur de TTL habituelle. Mais, une telle valeur n’a pas vraiment d’intérêt et il reste autorisé de mettre une valeur quelconque.The TTL field of the ELI label (ELI.TTL) is usually used to limit the number of routers crossed in the network. However, this field is only consulted by the LSP termination router and potentially the previous router. For greater safety, this field cannot therefore be set to 0 or 1. To guard against possible decrementation, the least significant bit will not be used and will be set to 1. It should be noted that the mechanism d entropy defined in document RFC6790 recommends putting a usual TTL value. But, such a value is not really of interest and it remains authorized to put any value.

Le champ TC de l'étiquette ELI (ELI.TC) sert habituellement à indiquer la classe de trafic. Dans le cas où le réseau utilise le mécanisme de Penultimate Hop Popping (PHP), ce champ ne peut pas être réutilisé. Si le réseau n’utilise pas le mécanisme PHP, ce champ peut être réutilisé pour porter un identifiant ou une partie d'identifiant de flux, de groupe de flux ou de source.The TC field of the ELI label (ELI.TC) is usually used to indicate the traffic class. If the network uses the Penultimate Hop Popping (PHP) mechanism, this field cannot be reused. If the network does not use the PHP mechanism, this field can be reused to carry an identifier or part of an identifier for a stream, group of streams or source.

Ainsi, un identifiant de source, de flux ou de groupe de flux, de paquet ou de groupes de paquets peut être codé sur au moins une partie de champs d'une étiquette d'entropie EL ou ELI.Thus, an identifier for a source, a stream or a group of streams, packets or groups of packets can be coded on at least part of the fields of an EL or ELI entropy label.

Lorsque le mécanisme PHP est utilisé dans le réseau, le nombre de bits disponibles pour encoder un identifiant de source, de flux ou de groupe de flux est d'environ 21 bits, pris par exemple parmi les champs suivants: 10 bits du champ EL.label, 3 bits du champ EL.TC, 8 bits du champ EL.TTL et 7 bits du champ ELI.TTL. Le nombre de bit indiqué ici est un simple exemple illustratif, d'autres valeurs de nombre de bits pris sur les champs précités sont bien entendu possibles. Par exemple, 8 ou 12 bits peuvent être pris sur le champ EL.Label.When the PHP mechanism is used in the network, the number of bits available to encode a source, stream or group of stream identifier is approximately 21 bits, taken for example from the following fields: 10 bits of the EL field. label, 3 bits of the EL.TC field, 8 bits of the EL.TTL field and 7 bits of the ELI.TTL field. The number of bits indicated here is a simple illustrative example, other values of number of bits taken from the above fields are of course possible. For example, 8 or 12 bits can be taken from the EL.Label field.

Lorsque le mécanisme PHP n'est pas utilisé dans le réseau, le nombre de bits disponibles pour encoder un identifiant de source, de flux ou de groupe de flux est d'environ 30 bits, pris par exemple parmi les champs suivants: 10 bits du champ EL.label, 3 bits du champ EL.TC, 8 bits du champ EL.TTL, 8 bits du champ ELI.TTL et 8 bits du champ ELI.TC. Le nombre de bit indiqué ici est un simple exemple illustratif, d'autres valeurs de nombre de bits pris sur les champs précités sont bien entendu possibles. Par exemple, 8 ou 12 bits peuvent être pris sur le champ EL.Label.When the PHP mechanism is not used in the network, the number of bits available to encode a source, stream or group of stream identifier is approximately 30 bits, taken for example from the following fields: 10 bits of the EL.label field, 3 bits of EL.TC field, 8 bits of EL.TTL field, 8 bits of ELI.TTL field and 8 bits of ELI.TC field. The number of bits indicated here is a simple illustrative example, other values of number of bits taken from the above fields are of course possible. For example, 8 or 12 bits can be taken from the EL.Label field.

bits permettent d'encoder 221=2 087 152 valeurs distinctes. L'identification du nombre de routeurs sources dans un réseau MPLS nécessite une valeur par routeur source. Considérant un réseau de 5000 routeurs MPLS, ce qui est déjà un très grand réseau, 5000 valeurs sont donc nécessaires, soit 12 bits (4096 sources) ou 13 bits (8192 sources). Il reste alors 9 ou 8 bits par routeur source pour identifier des flux, soit 512 ou 256 flux.bits allow to encode 2 21 = 2 087 152 distinct values. Identifying the number of source routers in an MPLS network requires a value per source router. Considering a network of 5000 MPLS routers, which is already a very large network, 5000 values are therefore necessary, either 12 bits (4096 sources) or 13 bits (8192 sources). Then there are 9 or 8 bits per source router to identify flows, ie 512 or 256 flows.

Dans le cas d’une allocation centralisée des flux, l’ensemble des 21 bits peut être utilisé pour l’identification des flux, ce qui permet d’identifier 2 millions de flux différents.In the case of centralized allocation of flows, all 21 bits can be used for the identification of flows, which makes it possible to identify 2 million different flows.

De plus, dans le cas où le mécanisme PHP n’est pas utilisé, 9 bits supplémentaires sont disponibles, ce qui est considérable (30 bits permettent d’encoder 1 073 741 824 valeurs différentes, soit plus d’un milliard).In addition, in the case where the PHP mechanism is not used, 9 additional bits are available, which is considerable (30 bits make it possible to encode 1,073,741,824 different values, ie more than a billion).

Il apparaît donc que les champs des étiquettes d'entropie sont suffisants pour porter un identifiant de flux et/ou de source sans nécessiter l'ajout de nouvelles étiquettes ou la modification des plans de transfert des routeurs d'un réseau MPLS.It therefore appears that the fields of the entropy labels are sufficient to carry a stream and / or source identifier without requiring the addition of new labels or the modification of the transfer plans of the routers of an MPLS network.

La figure 1 illustre de manière simplifiée un exemple d'un réseau ou d'une partie de réseau IP/MPLS Res comprenant un routeur d'entrée Src aussi connu sous le nom de routeur ingress LSR pour Ingress Label Switching Router en anglais, des routeurs de transit Tr1Tr3, aussi connus sous le nom de transit LSR, et un routeur de sortie ou de destination Dest aussi connu sous le nom de routeur egress LSR. Différents tunnels pour transmettre des paquets de données reçus par le routeur d'entrée Src sont définis dans ce réseau Res .FIG. 1 illustrates in a simplified manner an example of an IP / MPLS Res network or part of a network comprising an Src input router also known by the name ingress router LSR (Ingress Label Switching Router in English), routers transit Tr1Tr3, also known as transit LSR, and an egress or destination router Dest also known as an egress router LSR. Different tunnels for transmitting data packets received by the input router Src are defined in this network Res.

La figure 2 illustre des étapes du procédé d'envoi d'un groupe de paquets de données sur un réseau IP/MPLS, par exemple le réseau Res de la figure 1, selon un mode particulier de réalisation de l'invention.FIG. 2 illustrates steps of the method of sending a group of data packets over an IP / MPLS network, for example the network Res of FIG. 1, according to a particular embodiment of the invention.

Selon le mode particulier de réalisation de l'invention décrit ici, le procédé d'envoi est mis en œuvre par un dispositif de routage placé à l'entrée d'un réseau MPLS, par exemple le routeur Src de la figure 1. Dans d'autres variantes de réalisation, le procédé d'envoi peut être mis en œuvre par un routeur de transit du réseau IP/MPLS.According to the particular embodiment of the invention described here, the sending method is implemented by a routing device placed at the input of an MPLS network, for example the Src router of FIG. 1. In d In other variant embodiments, the sending method can be implemented by a transit router of the IP / MPLS network.

On décrit ci-après une variante de réalisation selon laquelle un identifiant de la source émettant des paquets de données dans le réseau MPLS est inséré. Un tel identifiant de source est représentatif d'un groupe de paquets au sens de l'invention. En effet, l'identifiant de source sera alors porté par tous les paquets émis par cette source.An embodiment is described below according to which an identifier of the source sending data packets in the MPLS network is inserted. Such a source identifier is representative of a group of packets within the meaning of the invention. Indeed, the source identifier will then be carried by all the packets transmitted by this source.

Lors d'une étape 20, le routeur d'entrée Src reçoit un paquet de données Px d'un flux F à émettre. Classiquement, le routeur d'entrée Src encapsule le paquet Px selon le protocole MPLS en ajoutant au paquet Px des étiquettes MPLS obtenues à partir des tables de correspondance stockées en mémoire et définies par l'opérateur du réseau MPLS, ou échangées par les protocoles de routage et de signalisation, pour transmettre les paquets de données du flux F sur le chemin correspondant.During a step 20, the input router Src receives a data packet Px of a stream F to be sent. Conventionally, the input router Src encapsulates the Px packet according to the MPLS protocol by adding to the Px packet MPLS labels obtained from the correspondence tables stored in memory and defined by the operator of the MPLS network, or exchanged by the protocols of routing and signaling, to transmit the data packets of stream F on the corresponding path.

Lors d'une étape 21, le routeur d'entrée Src obtient son identifiant de source. Classiquement, le routeur Src est identifié avec un identifiant unique, en général un identifiant court.During a step 21, the input router Src obtains its source identifier. Conventionally, the Src router is identified with a unique identifier, generally a short identifier.

Dans les réseaux connus sous le nom de Segment Routing en anglais, un tel identifiant de source peut correspondre à l'identifiant de segment du routeur d'entrée (SID pour Segment IDdentification en anglais). Un tel identifiant a la forme d’un index ou d’un label provisionné sur le routeur et rempli déjà exactement le rôle d'identifiant de source.In networks known as Segment Routing in English, such a source identifier can correspond to the segment identifier of the input router (SID for Segment IDdentification in English). Such an identifier has the form of an index or label provisioned on the router and already fulfills exactly the role of source identifier.

Lors d'une étape 22, dans le cas où le paquet de données PX comprend déjà des étiquettes d'entropie MPLS EL et ELI, le routeur Src peut choisir d’insérer son identifiant de source dans un champ ou une partie d'un champ des étiquettes d'entropie, tels que décrit plus haut. Alternativement, le routeur Src peut choisir d’ajouter un autre couple d’étiquette d’entropie tel que décrit ci-dessus.During a step 22, in the case where the PX data packet already includes MPLS EL and ELI entropy labels, the Src router can choose to insert its source identifier in a field or part of a field entropy labels, as described above. Alternatively, the Src router can choose to add another pair of entropy labels as described above.

Les champs ou partie de champs des étiquettes d'entropie utilisés pour porter un identifiant peuvent soit être définis par l'opérateur du réseau MPLS, soit être figés par le standard MLPS si l'organisme de normalisation a défini les champs des étiquettes d'entropie devant être utilisés pour porter l'identifiant, soit figés ou contraint par l’implémentation utilisée en fonction du type de routeur par exemple et des caractéristiques matérielles et logicielles des routeurs.The fields or part of fields of the entropy labels used to carry an identifier can either be defined by the operator of the MPLS network, or be fixed by the MLPS standard if the standardization body has defined the fields of the entropy labels. to be used to carry the identifier, either frozen or constrained by the implementation used depending on the type of router for example and the hardware and software characteristics of the routers.

Lorsque l'utilisation des champs n'est pas figée, les champs à utiliser peuvent être choisis en fonction de la préférence de l’opérateur, du nombre de sources différentes, et donc du nombre de bits nécessaire pour encoder l'identifiant de source, de la capacité/des limitations des équipements de l'opérateur, de l’utilisation ou non du mécanisme PHP dans le réseau...When the use of the fields is not frozen, the fields to be used can be chosen according to the operator's preference, the number of different sources, and therefore the number of bits necessary to encode the source identifier, the capacity / limitations of the operator's equipment, the use or not of the PHP mechanism in the network ...

Par exemple, l'identifiant de source est codé sur 8 bits et est inséré dans le champ Label de l'étiquette EL.For example, the source identifier is coded on 8 bits and is inserted in the Label field of the EL label.

Dans le cas où le paquet de données PX ne comprend pas d'étiquettes d'entropie MPLS EL et ELI, lors de l'étape 22, le routeur Src insère une étiquette ELI et une étiquette EL, et au moins une partie d'un champ d'une de ces deux étiquettes comprend l'identifiant de source.In the case where the PX data packet does not include MPLS EL and ELI entropy labels, in step 22, the Src router inserts an ELI label and an EL label, and at least part of a field of one of these two labels includes the source identifier.

Par exemple, comme précédemment, l'identifiant de source est codé sur 8 bits et est inséré dans le champ Label de l'étiquette EL.For example, as before, the source identifier is coded on 8 bits and is inserted in the Label field of the EL label.

Selon un autre exemple, par exemple lorsque le mécanisme PHP n'est pas utilisé dans le réseau IP/MPLS, l'identifiant de source codé sur 8 bits est inséré dans le champ TTL de l'étiquette ELI.According to another example, for example when the PHP mechanism is not used in the IP / MPLS network, the source identifier coded on 8 bits is inserted in the TTL field of the ELI label.

D'autres emplacements d'insertion de l'identifiant sont possibles et n'importe quelle partie des champs des étiquettes EL et ELI décrits plus haut peuvent être utilisés.Other locations for inserting the identifier are possible and any part of the fields of the EL and ELI labels described above can be used.

Lors d'une étape 23, le routeur Src émet le paquet Px ainsi modifié à travers le réseau MPLS vers sa destination.During a step 23, the router Src sends the Px packet thus modified through the MPLS network to its destination.

On décrit ci-après une autre variante de réalisation selon laquelle un identifiant d'un flux est inséré dans les paquets de données. Un tel identifiant de flux est représentatif d'un groupe de paquets au sens de l'invention. En effet, l'identifiant de flux sera alors porté par tous les paquets de données appartenant au flux.Another variant embodiment is described below, according to which an identifier of a stream is inserted into the data packets. Such a stream identifier is representative of a group of packets within the meaning of the invention. Indeed, the stream identifier will then be carried by all the data packets belonging to the stream.

Dans cette variante, un identifiant de flux est alloué de manière centralisée, par exemple par un serveur central gérant tous les flux émis.In this variant, a stream identifier is allocated centrally, for example by a central server managing all the streams sent.

Lors de l'étape 21, l'identifiant de flux est alors distribué au routeur Src de manière classique, par exemple par configuration (par exemple selon les protocoles CLI, NETCONF/YANG) ou via les protocoles PCEP ou BGP (pour Border Gateway Protocol en anglais).During step 21, the stream identifier is then distributed to the Src router in a conventional manner, for example by configuration (for example according to the CLI, NETCONF / YANG protocols) or via the PCEP or BGP protocols (for Border Gateway Protocol in English).

Lors de l'étape 22, si les paquets de données du flux comprennent déjà des étiquettes d'entropie MPLS EL et ELI, le routeur Src peut insérer l'identifiant de flux reçu à l'étape 21 dans les paquets de ce flux. Pour cela, le routeur Src insère l'identifiant de flux dans les champs des étiquettes d'entropie MPLS EL et ELI, choisis par l'opérateur ou définis par la norme, de préférence sans modifier la valeur du label d’entropie existante. Alternativement, le routeur Src peut ajouter un nouveau couple (ELI, EL) d’étiquettes d’entropie et y insérer l’identifiant.During step 22, if the data packets of the stream already include MPLS EL and ELI entropy labels, the router Src can insert the stream identifier received in step 21 into the packets of this stream. For this, the Src router inserts the stream identifier into the fields of the MPLS EL and ELI entropy labels, chosen by the operator or defined by the standard, preferably without modifying the value of the existing entropy label. Alternatively, the Src router can add a new pair (ELI, EL) of entropy labels and insert the identifier.

Par exemple, l'identifiant de flux est codé sur 3 bits et est inséré dans le champ TC de l'étiquette EL. D'autres emplacements d'insertion de l'identifiant sont possibles et n'importe quelle partie des champs des étiquettes EL et ELI décrits plus haut peuvent être utilisés. Dans le cas où les paquets de données ne comprennent pas d'étiquettes d'entropie MPLS EL et ELI, lors de l'étape 22, le routeur Src insère une étiquette ELI et une étiquette EL, et l'identifiant de flux dans au moins une partie d'un champ d'une de ces deux étiquettes.For example, the stream identifier is coded on 3 bits and is inserted in the TC field of the EL label. Other locations for inserting the identifier are possible and any part of the fields of the EL and ELI labels described above can be used. In the case where the data packets do not include MPLS EL and ELI entropy labels, in step 22, the Src router inserts an ELI label and an EL label, and the stream identifier in at least part of a field from one of these two labels.

On décrit ci-après une autre variante de réalisation selon laquelle un identifiant de flux et un identifiant de source sont insérés dans les paquets de données. Selon cette variante, on suppose que le flux est identifié de manière décentralisée.Another embodiment is described below according to which a stream identifier and a source identifier are inserted into the data packets. According to this variant, it is assumed that the flow is identified in a decentralized manner.

La figure 3 illustre des étapes pour l'obtention de l'identifiant à insérer dans les paquets de données du flux F.FIG. 3 illustrates steps for obtaining the identifier to be inserted in the data packets of the flow F.

Lors d'une étape 30, comme pour la première variante, le routeur Src obtient son identifiant de source. Il est identifié avec un identifiant unique, en général court, par exemple un identifiant codé sur 10 bits si le réseau MPLS auquel il appartient comprend moins de 1000 routeurs sources.During a step 30, as for the first variant, the router Src obtains its source identifier. It is identified with a unique identifier, generally short, for example an identifier coded on 10 bits if the MPLS network to which it belongs comprises less than 1000 source routers.

Lors d'une étape 31, le routeur Src détermine un identifiant de flux pour le flux F à transmettre. Le flux étant identifié de manière décentralisé, le routeur Src choisit librement, i.e. localement, un identifiant de flux, court si possible. Par exemple, le routeur Src sélectionne un identifiant codé sur 8 bits, si ce routeur source n’a besoin d’identifier que 256 flux au maximum.During a step 31, the router Src determines a stream identifier for the stream F to be transmitted. The flow being identified in a decentralized manner, the Src router freely chooses, i.e. locally, a stream identifier, short if possible. For example, the Src router selects an identifier coded on 8 bits, if this source router needs to identify only 256 streams at most.

Lors d'une étape 32, le routeur Src concatène son identifiant de source et l’identifiant de flux déterminé à l'étape 31 pour former un identifiant de source+flux sur 18 bits.During a step 32, the Src router concatenates its source identifier and the stream identifier determined in step 31 to form an 18 bit source + stream identifier.

Puis, lors de l'étape 22, si les paquets de données du flux comprennent déjà des étiquettes d'entropie MPLS EL et ELI, le routeur Src peut insérer l'identifiant source+flux obtenu dans les champs adéquats des étiquettes d'entropie. Alternativement, le routeur Src peut choisir d’ajouter un nouveau couple (ELI, EL) d’étiquettes d’entropie, en plus des étiquettes d'entropie déjà présentes. Le routeur Src insère alors son identifiant de source+flux dans les champs du nouveau couple (ELI, EL) d'étiquettes d'entropie.Then, during step 22, if the data packets of the stream already include MPLS EL and ELI entropy labels, the Src router can insert the source + stream identifier obtained in the appropriate fields of the entropy labels. Alternatively, the Src router can choose to add a new pair (ELI, EL) of entropy labels, in addition to the entropy labels already present. The Src router then inserts its source + flow identifier in the fields of the new pair (ELI, EL) of entropy labels.

Par exemple, les 10 bits d'identifiants de source sont insérés dans le champ Label de l'étiquette EL et les 8 bits d'identifiants de flux sont insérés dans le champ TTL de l'étiquette EL.For example, the 10 bits of source identifiers are inserted in the Label field of the EL label and the 8 bits of stream identifiers are inserted in the TTL field of the EL label.

Si les paquets de données du flux ne comprennent pas d'étiquettes d'entropie MPLS EL et ELI, lors de l'étape 22, le routeur Src insère une étiquette ELI et une étiquette EL dans chaque paquet de données du flux, et dans au moins une partie d'un champ d'une de ces deux étiquettes l'identifiant de source+flux.If the data packets of the stream do not include MPLS EL and ELI entropy tags, in step 22, the Src router inserts an ELI tag and an EL tag in each data packet of the stream, and in minus part of a field from one of these two labels identifying the source + stream.

On décrit ci-après une autre variante de réalisation selon laquelle un identifiant de groupe de paquets d'un flux est inséré dans les paquets de données. Cette variante de réalisation permet ainsi d'identifier des groupes de paquets de données distincts appartenant à un même flux de données. Selon cette variante, l'identifiant de flux est identifié de manière centralisé et l'identifiant des groupes de paquets est déterminé de manière locale par le routeur Src.Another embodiment is described below, according to which a packet group identifier of a stream is inserted into the data packets. This variant embodiment thus makes it possible to identify groups of distinct data packets belonging to the same data stream. According to this variant, the stream identifier is identified centrally and the identifier of the packet groups is determined locally by the router Src.

Lors de l'étape 21, l'identifiant de flux est obtenu par le routeur Src de manière classique, par exemple par configuration (par exemple selon les protocoles CLI, NECONF/YANG) ou via le protocole PCEP, par exemple un tel identifiant de flux est codé sur 10 bits. Lors de l'étapeDuring step 21, the stream identifier is obtained by the Src router in a conventional manner, for example by configuration (for example according to the CLI, NECONF / YANG protocols) or via the PCEP protocol, for example such an identifier of stream is coded on 10 bits. During the stage

21, le routeur Src détermine aussi un identifiant de groupe pour chaque groupe de paquets de données du flux. Par exemple, un tel identifiant de groupe est codé sur 8 bits.21, the Src router also determines a group identifier for each group of data packets in the stream. For example, such a group identifier is coded on 8 bits.

L'identifiant de groupe est identique pour tous les paquets de données appartenant à un même groupe de paquets de données. Et, l'identifiant de groupe est distinct d'un groupe à l'autre afin de distinguer les groupes de paquets.The group identifier is identical for all data packets belonging to the same group of data packets. And, the group identifier is distinct from one group to another in order to distinguish the groups of packets.

Lors de l'étape 22, si les paquets de données du flux comprennent déjà des étiquettes d'entropie MPLS EL et ELI, le routeur Src insère alors l'identifiant de flux reçu à l'étape 21 dans le champ Label de l'étiquette d'entropie EL, et l'identifiant de groupe dans un autre champs de l'étiquette d'entropie EL ou ELI.During step 22, if the data packets of the stream already include MPLS EL and ELI entropy labels, the Src router then inserts the stream identifier received in step 21 in the Label field of the label entropy, and the group identifier in another field of the EL or ELI entropy label.

Par exemple, l'identifiant de groupe est inséré dans le champ TTL de l'étiquette d'entropie EL.For example, the group identifier is inserted in the TTL field of the EL entropy label.

Alternativement, le routeur Src peut choisir d’ajouter un nouveau couple (ELI, EL) d’étiquettes d’entropie, en plus des étiquettes d'entropie déjà présentes. Le routeur Src insère alors l'identifiant de flux et l'identifiant de groupe dans les champs du nouveau couple (ELI, EL) d'étiquettes d'entropie, comme indiqué ci-dessus.Alternatively, the Src router can choose to add a new pair (ELI, EL) of entropy labels, in addition to the entropy labels already present. The Src router then inserts the stream identifier and the group identifier into the fields of the new pair (ELI, EL) of entropy labels, as indicated above.

Dans le cas où les paquets de données du flux ne comprennent pas d'étiquettes d'entropie MPLS EL et ELI, lors de l'étape 22, le routeur Src insère une étiquette ELI et une étiquette EL, et l'identifiant de flux étant inséré dans le champ Label de l'étiquette d'entropie EL, et l'identifiant de groupe dans un autre champs de l'étiquette d'entropie EL ou ELI.In the case where the data packets of the stream do not include MPLS EL and ELI entropy tags, during step 22, the Src router inserts an ELI tag and an EL tag, and the stream identifier being inserted in the Label field of the EL entropy label, and the group identifier in another field of the EL or ELI entropy label.

Selon cette variante de réalisation, des groupes de paquets d'un même flux peuvent être identifiés via des identifiants de groupe distincts tout en permettant d'acheminer tous les groupes de paquets via le même chemin, grâce à l'identifiant de flux compris dans le champ Label de l'étiquette d'entropie EL qui est identique pour tous les paquets du flux.According to this alternative embodiment, groups of packets of the same flow can be identified via separate group identifiers while making it possible to route all the groups of packets via the same path, thanks to the flow identifier included in the Label field of the EL entropy label which is identical for all the packets in the stream.

La figure 4 illustre des étapes du procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données transmis sur un réseau IP/MPLS, selon un mode particulier de réalisation de l'invention. Un tel procédé est par exemple mis en œuvre par un dispositif de routage placé en sortie d'un réseau IP/MPLS, par exemple le routeur Dest de la figure 1, ou bien par un routeur de transit placé dans le réseau IP/MPLS, par exemple un des routeurs Tr1, Tr2 ou Tr3 de la figure 1 ou encore par un serveur applicatif (non représenté).FIG. 4 illustrates steps of the method for reading an identifier representative of a group of data packets transmitted over an IP / MPLS network, according to a particular embodiment of the invention. Such a method is for example implemented by a routing device placed at the output of an IP / MPLS network, for example the Dest router of FIG. 1, or else by a transit router placed in the IP / MPLS network, for example one of the routers Tr1, Tr2 or Tr3 in FIG. 1 or also by an application server (not shown).

Lors d'une étape 40, un paquet de données encapsulé selon le protocole IP/MPLS est classiquement reçu par le dispositif de routage. Lorsque le procédé est mis en œuvre par un serveur applicatif, lors de l'étape 40, le serveur reçoit par exemple seulement une partie du paquet de données comprenant notamment l'entête du paquet de données comprenant notamment les étiquettes MPLS.During a step 40, a data packet encapsulated according to the IP / MPLS protocol is conventionally received by the routing device. When the method is implemented by an application server, during step 40, the server receives for example only a part of the data packet comprising in particular the header of the data packet comprising in particular the MPLS labels.

Lors d'une étape 41, le dispositif de routage ou le serveur applicatif obtient un identifiant depuis au moins une partie d'un champ de données associé à une étiquette d'entropie présente dans le paquet de données reçu. Un tel identifiant a été inséré conformément à l'une quelconque des variantes du procédé d'envoi décrit en relation avec les figures 2 ou 3. L'identifiant est donc obtenu à partir des champs ou de la partie des champs des étiquettes d'entropie dans lesquels le routeur Src a insérer l'identifiant.During a step 41, the routing device or the application server obtains an identifier from at least part of a data field associated with an entropy label present in the received data packet. Such an identifier has been inserted in accordance with any one of the variants of the sending method described in relation to FIGS. 2 or 3. The identifier is therefore obtained from the fields or from the part of the fields of the entropy labels. in which the Src router has to insert the identifier.

Selon la variante de réalisation utilisée, l'identifiant obtenu peut correspondre à un identifiant de la source ayant émis le paquet de données, ou à un identifiant de groupe auquel le paquet appartient, ou à un identifiant de flux auquel le paquet appartient, ou bien à un identifiant comprenant une partie représentative de la source et une partie représentative du flux. Selon la variante de réalisation, un identifiant de flux et un identifiant de groupe de paquets peuvent être obtenus des champs des étiquettes d'entropie.Depending on the variant used, the identifier obtained can correspond to an identifier of the source having sent the data packet, or to a group identifier to which the packet belongs, or to a stream identifier to which the packet belongs, or to an identifier comprising a part representative of the source and a part representative of the flow. According to the variant embodiment, a stream identifier and a packet group identifier can be obtained from the fields of the entropy labels.

Lors d'une étape 42, le dispositif de routage ou le serveur applicatif ayant obtenu l'identifiant peut alors l'utiliser par exemple pour mesurer la qualité du réseau, le taux de pertes de paquets, le nombre de paquets, les délais entre les paquets...During a step 42, the routing device or the application server having obtained the identifier can then use it for example to measure the quality of the network, the packet loss rate, the number of packets, the delays between packets ...

La figure 5 présente la structure simplifiée d’un dispositif Src adapté pour mettre en œuvre le procédé d'envoi d'un paquet de données MPLS selon l'un quelconque des modes particuliers de réalisation de l’invention décrits précédemment.FIG. 5 shows the simplified structure of an Src device suitable for implementing the method of sending an MPLS data packet according to any one of the particular embodiments of the invention described above.

Selon un mode particulier de réalisation de l'invention, le dispositif Src comprend notamment un module de contrôle Src_PC configuré pour mettre en œuvre les fonctions de plan de contrôle et un module de transfert Src_PT configuré pour mettre en œuvre les fonctions de plan de transfert. Classiquement, le module de transfert Src_PT est constitué d'un processeur HDW configuré pour recevoir et émettre des paquets de données depuis et vers un réseau de données, sur instructions du module de contrôle Src_PC.According to a particular embodiment of the invention, the Src device comprises in particular a control module Src_PC configured to implement the control plane functions and a transfer module Src_PT configured to implement the transfer plan functions. Conventionally, the Src_PT transfer module consists of an HDW processor configured to receive and transmit data packets from and to a data network, on instructions from the Src_PC control module.

Le module de contrôle Src_PC a l'architecture classique d'un ordinateur et comprend notamment une mémoire MEM, une unité de traitement UT, équipée par exemple d'un processeur PROC, et piloté par le programme d'ordinateur PG stocké en mémoire MEM. Le programme d'ordinateur PG peut comprendre notamment des instructions pour mettre en œuvre les fonctions du plan de contrôle, comme les protocoles de routage, en fonction de tables de routage stockées dans la mémoire MEM, par exemple. Alternativement, les protocoles de routage peuvent être mis en œuvre par une ou plusieurs cartes d'interfaces (non représentées) du dispositif Src.The control module Src_PC has the conventional architecture of a computer and in particular comprises a memory MEM, a processing unit UT, equipped for example with a processor PROC, and controlled by the computer program PG stored in memory MEM. The computer program PG can in particular include instructions for implementing the functions of the control plane, such as the routing protocols, as a function of routing tables stored in the memory MEM, for example. Alternatively, the routing protocols can be implemented by one or more interface cards (not shown) of the Src device.

Selon un mode particulier de réalisation de l'invention, le dispositif Src est configuré pour encapsuler les paquets de données reçus selon le protocole MPLS.According to a particular embodiment of the invention, the Src device is configured to encapsulate the data packets received according to the MPLS protocol.

Le dispositif Src comprend également un récepteur (REC) et un émetteur (EMT) adaptés pour recevoir et émettre des paquets de données.The Src device also includes a receiver (REC) and a transmitter (EMT) adapted to receive and transmit data packets.

Selon l'invention, le programme d'ordinateur PG stocké dans la mémoire du dispositif Src comprend également des instructions pour mettre œuvre les étapes du procédé d'envoi d'un groupe de paquets de données MPLS tel que décrit précédemment, lorsque le programme est exécuté par le processeur PROC.According to the invention, the computer program PG stored in the memory of the device Src also includes instructions for implementing the steps of the method of sending a group of MPLS data packets as described above, when the program is executed by the PROC processor.

A l'initialisation, les instructions de code du programme d'ordinateur PG sont par exemple chargées dans une mémoire avant d'être exécutées par le processeur PROC. Le processeur PROC de l'unité de traitement UT met notamment en œuvre les étapes du procédé d'envoi d'un paquet de données MPLS selon l'un quelconque de modes particuliers de réalisation décrits en relation avec la figure 2 ou 3, selon les instructions du programme d'ordinateur PG stocké dans la mémoire MEM.On initialization, the code instructions of the computer program PG are for example loaded into a memory before being executed by the processor PROC. The processor PROC of the processing unit UT implements in particular the steps of the method of sending an MPLS data packet according to any one of specific embodiments described in relation to FIG. 2 or 3, according to the instructions of the PG computer program stored in the memory MEM.

Selon un mode particulier de réalisation de l'invention, le dispositif Src est compris dans un routeur d'entrée d'un réseau MPLS.According to a particular embodiment of the invention, the Src device is included in an input router of an MPLS network.

La figure 6 présente la structure simplifiée d’un dispositif Dest adapté pour mettre en œuvre le procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données MPLS selon l'un quelconque des modes particuliers de réalisation de l’invention décrits précédemment.FIG. 6 presents the simplified structure of a device Dest suitable for implementing the method of reading an identifier representative of a group of MPLS data packets according to any one of the particular embodiments of the invention described previously.

Selon un mode particulier de réalisation de l'invention, le dispositif Dest comprend notamment un module de contrôle Dest_PC configuré pour mettre en œuvre les fonctions de plan de contrôle et un module de transfert Dest_PT configuré pour mettre en œuvre les fonctions de plan de transfert. Classiquement, le module de transfert Dest_PT est constitué d'un processeur HDW6 configuré pour recevoir et émettre des paquets de données depuis et vers un réseau de données, sur instructions du module de contrôle Dest_PC.According to a particular embodiment of the invention, the Dest device notably comprises a Dest_PC control module configured to implement the control plane functions and a Dest_PT transfer module configured to implement the transfer plan functions. Conventionally, the Dest_PT transfer module consists of an HDW6 processor configured to receive and transmit data packets from and to a data network, on instructions from the Dest_PC control module.

Le module de contrôle Dest_PC a l'architecture classique d'un ordinateur et comprend notamment une mémoire MEM6, une unité de traitement UT6, équipée par exemple d'un processeur PROC6, et pilotée par le programme d'ordinateur PG6 stocké en mémoire MEM6.The Dest_PC control module has the conventional architecture of a computer and notably comprises a memory MEM6, a processing unit UT6, equipped for example with a processor PROC6, and controlled by the computer program PG6 stored in memory MEM6.

Selon un mode particulier de réalisation de l'invention, le dispositif Dest comprend également un récepteur (REC6) et éventuellement un émetteur (EMT6) adaptés pour respectivement recevoir et retransmettre des paquets de données encapsulés selon le protocole MPLS.According to a particular embodiment of the invention, the Dest device also comprises a receiver (REC6) and possibly a transmitter (EMT6) adapted to respectively receive and retransmit packets of data encapsulated according to the MPLS protocol.

Selon un autre mode particulier de réalisation de l'invention, le dispositif Dest est un serveur applicatif configuré pour recevoir et lire au moins une partie d'un paquet de données MPLS.According to another particular embodiment of the invention, the Dest device is an application server configured to receive and read at least part of an MPLS data packet.

Selon l'invention, le programme d'ordinateur PG6 stocké dans la mémoire du dispositif Dest comprend également des instructions pour mettre œuvre les étapes du procédé de lecture tel que décrit précédemment, lorsque le programme est exécuté par le processeur PROC6.According to the invention, the computer program PG6 stored in the memory of the device Dest also includes instructions for implementing the steps of the reading method as described above, when the program is executed by the processor PROC6.

A l'initialisation, les instructions de code du programme d'ordinateur PG6 sont par exemple chargées dans une mémoire avant d'être exécutées par le processeur PROC6. Le processeur PROC6 de l'unité de traitement UT6 met notamment en œuvre les étapes du procédé de réception d'un paquet de données MPLS selon l'un quelconque de modes 5 particuliers de réalisation décrits en relation avec la figure 4, selon les instructions du programme d'ordinateur PG6 stocké dans la mémoire MEM6.On initialization, the code instructions of the computer program PG6 are for example loaded into a memory before being executed by the processor PROC6. The processor PROC6 of the processing unit UT6 implements in particular the steps of the method for receiving an MPLS data packet according to any one of specific embodiments described in relation to FIG. 4, according to the instructions of the PG6 computer program stored in MEM6 memory.

Le dispositif Dest est également configuré pour utiliser l'identifiant obtenu d'un paquet reçu en fonction d'une configuration déterminée par l'opérateur du réseau MPLS.The Dest device is also configured to use the identifier obtained from a received packet according to a configuration determined by the operator of the MPLS network.

Selon un mode particulier de réalisation de l'invention, le dispositif Dest est compris dans un 10 routeur de sortie d'un réseau MPLS.According to a particular embodiment of the invention, the device Dest is included in an output router of an MPLS network.

Selon un autre mode particulier de réalisation de l'invention, le dispositif Dest est compris dans un routeur de transit d'un réseau MPLS.According to another particular embodiment of the invention, the device Dest is included in a transit router of an MPLS network.

Claims (13)

1. Procédé d'envoi de paquets de données encapsulés selon le protocole MPLS, mis en œuvre par un dispositif d'envoi d'un réseau IP/MPLS, comprenant:1. Method for sending packets of data encapsulated according to the MPLS protocol, implemented by a device for sending an IP / MPLS network, comprising: - l'obtention (21) d'un identifiant représentatif d'un groupe de paquets de données comprenant au moins un paquet de données,obtaining (21) an identifier representative of a group of data packets comprising at least one data packet, - l'insertion (22) dudit identifiant dans au moins une partie d'un champ de données associé à une étiquette d'entropie du protocole MPLS dudit au moins un paquet de données,the insertion (22) of said identifier into at least part of a data field associated with an entropy label of the MPLS protocol of said at least one data packet, - l'envoi (23) dudit au moins un paquet de données dans le réseau IP/MPLS.- sending (23) of said at least one data packet in the IP / MPLS network. 2. Procédé d'envoi selon la revendication 1, dans lequel ledit champ de données est compris dans la liste comprenant:2. The sending method according to claim 1, in which said data field is included in the list comprising: - un champ de données Label de l'étiquette d'entropie Label EL,- a Label data field of the Label EL entropy label, - un champ de données TC de l'étiquette d'entropie Label EL,- a TC data field of the Label EL entropy label, - un champ de données TTL de l'étiquette d'entropie Label EL,- a TTL data field of the Label EL entropy label, - un champ de données TC de l'étiquette d'entropie Label ELI,- a TC data field of the Label ELI entropy label, - un champ de données TTL de l'étiquette d'entropie Label ELI.- a TTL data field of the Label ELI entropy label. 3. Procédé d'envoi selon la revendication 2, dans lequel lorsqu'un flux comprend au moins deux groupes de paquets de données, une première partie dudit identifiant est insérée dans le champ de données Label de l'étiquette d'entropie Label EL de chacun des paquets de données des deux groupes, et une deuxième partie dudit identifiant est insérée dans un autre champ de l'étiquette d'entropie Label EL ou Label ELI de chacun des paquets de données des deux groupes, ladite deuxième partie étant identique pour tous les paquets d'un même groupe de paquets du flux, et distincte pour des paquets de données n'appartenant pas à un même groupe de paquets du flux.3. The sending method according to claim 2, in which when a stream comprises at least two groups of data packets, a first part of said identifier is inserted in the Label data field of the label entropy label Label EL each of the data packets of the two groups, and a second part of said identifier is inserted in another field of the entropy label Label EL or Label ELI of each of the data packets of the two groups, said second part being identical for all the packets of the same group of packets of the stream, and distinct for data packets not belonging to the same group of packets of the stream. 4. Procédé d'envoi selon l'une quelconque des revendications 1 à 3, dans lequel ledit identifiant est un identifiant de flux auquel ledit groupe de paquets appartient et ledit identifiant est reçu par le dispositif de routage.4. The sending method according to claim 1, in which said identifier is a stream identifier to which said group of packets belongs and said identifier is received by the routing device. 5. Procédé d'envoi selon l'une quelconque des revendications 1 à 3, dans lequel l'obtention d'un identifiant comprend:5. A sending method according to any one of claims 1 to 3, in which obtaining an identifier comprises: - l'obtention (30) d'un identifiant dudit dispositif d'envoi,- obtaining (30) an identifier of said sending device, - la détermination (31) par le dispositif d'envoi d'un identifiant de flux auquel appartient le groupe de paquets,- the determination (31) by the sending device of a stream identifier to which the group of packets belongs, - la concaténation (32) dudit identifiant du dispositif d'envoiet dudit identifiant de flux pour former l'identifiant à insérer dans ledit au moins un paquet.- the concatenation (32) of said identifier of the sending device and of said stream identifier to form the identifier to be inserted into said at least one packet. 6. Dispositif d'envoi de paquets de données transmis sur un réseau IP/MPLS, comprenant un récepteur (REC), un émetteur (EMT), un processeur (PROC), et une mémoire (MEM) couplée au processeur avec des instructions destinées à être exécutées par le processeur pour:6. Device for sending data packets transmitted over an IP / MPLS network, comprising a receiver (REC), a transmitter (EMT), a processor (PROC), and a memory (MEM) coupled to the processor with instructions intended to be executed by the processor for: - obtenir un identifiant représentatif d'un groupe de paquets de données comprenant au moins un paquet de données,- obtain an identifier representative of a group of data packets comprising at least one data packet, - insérer ledit identifiant dans au moins une partie d'un champ de données associé à une étiquette d'entropie du protocole MPLS dudit au moins un paquet de données,inserting said identifier into at least part of a data field associated with an MPLS protocol entropy label of said at least one data packet, - envoyer ledit au moins un paquet de données dans le réseau IP/MPLS.- send said at least one data packet in the IP / MPLS network. 7. Procédé de lecture d'un identifiant représentatif d'un groupe de paquets de données transmis sur un réseau IP/MPLS, comprenant:7. Method for reading an identifier representative of a group of data packets transmitted over an IP / MPLS network, comprising: - la réception (40) d'au moins une partie d'un paquet de données appartenant audit groupe de paquets de données,- receiving (40) at least part of a data packet belonging to said group of data packets, - l'obtention (41) dudit identifiant depuis au moins une partie d'un champ de données associé à une étiquette d'entropie MPLS présente dans ledit paquet de données.- Obtaining (41) said identifier from at least part of a data field associated with an MPLS entropy label present in said data packet. 8. Dispositif de lecture d'un identifiant représentatif d'un groupe de paquets de données transmis sur un réseau IP/MPLS, comprenant un récepteur (REC6), un processeur (PROC6), et une mémoire (MEM6) couplée au processeur avec des instructions destinées à être exécutées par le processeur pour:8. Device for reading an identifier representative of a group of data packets transmitted over an IP / MPLS network, comprising a receiver (REC6), a processor (PROC6), and a memory (MEM6) coupled to the processor with instructions to be executed by the processor for: - recevoir au moins une partie d'un paquet de données appartenant audit groupe de paquets de données,- receive at least part of a data packet belonging to said group of data packets, - obtenir ledit identifiant depuis au moins une partie d'un champ de données associé à une étiquette d'entropie MPLS présente dans ledit paquet de données.- Obtaining said identifier from at least part of a data field associated with an MPLS entropy label present in said data packet. 9. Routeur de transit d'un réseau IP/MPLS comprenant un dispositif de lecture selon la revendication 8.9. Transit router of an IP / MPLS network comprising a reading device according to claim 8. 10. Routeur de sortie d'un réseau IP/MPLS comprenant un dispositif de lecture selon la revendication 8.10. Output router of an IP / MPLS network comprising a reading device according to claim 8. 11. Routeur d'un réseau IP/MPLS comprenant un dispositif d'envoi selon la revendication 6.11. Router of an IP / MPLS network comprising a sending device according to claim 6. 12. Programme d'ordinateur comportant des instructions pour la mise en œuvre du procédé d'envoi selon l'une quelconque des revendications 1 à 5, ou pour la mise en œuvre du procédé de réception selon la revendication 7, lorsque les instructions sont exécutées par un12. Computer program comprising instructions for implementing the sending method according to any one of claims 1 to 5, or for implementing the receiving method according to claim 7, when the instructions are executed by a 5 processeur.5 processor. 13. Support d'informations lisible par un ordinateur, et comportant des instructions pour la mise en œuvre du procédé d'envoi selon l'une quelconque des revendications 1 à 5, ou pour la mise en œuvre du procédé de réception selon la revendication 7, lorsque les instructions13. Information medium readable by a computer, and comprising instructions for the implementation of the sending method according to any one of claims 1 to 5, or for the implementation of the receiving method according to claim 7 , when the instructions 10 sont exécutées par un processeur.10 are executed by a processor. 1/21/2
FR1851037A 2018-02-07 2018-02-07 METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK Withdrawn FR3077697A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR1851037A FR3077697A1 (en) 2018-02-07 2018-02-07 METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK
US16/967,953 US11870687B2 (en) 2018-02-07 2019-01-31 Method and device for sending data packets over an IP/MPLS network
EP19707436.2A EP3750285B1 (en) 2018-02-07 2019-01-31 Method and device for sending data packets over an ip / mpls network
PCT/FR2019/050221 WO2019155144A1 (en) 2018-02-07 2019-01-31 Method and device for sending data packets on an ip/mpls network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1851037 2018-02-07
FR1851037A FR3077697A1 (en) 2018-02-07 2018-02-07 METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK

Publications (1)

Publication Number Publication Date
FR3077697A1 true FR3077697A1 (en) 2019-08-09

Family

ID=62092089

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1851037A Withdrawn FR3077697A1 (en) 2018-02-07 2018-02-07 METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK

Country Status (1)

Country Link
FR (1) FR3077697A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150030020A1 (en) * 2013-07-29 2015-01-29 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for using entropy labels in segment routed networks
US20150200843A1 (en) * 2014-01-15 2015-07-16 Cisco Technology, Inc. A Corporation Of California Packet Labels For Identifying Synchronization Groups of Packets
WO2016157133A1 (en) * 2015-03-31 2016-10-06 Telefonaktiebolaget L M Ericsson (Publ) Method of packet marking for flow analytics

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150030020A1 (en) * 2013-07-29 2015-01-29 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for using entropy labels in segment routed networks
US20150200843A1 (en) * 2014-01-15 2015-07-16 Cisco Technology, Inc. A Corporation Of California Packet Labels For Identifying Synchronization Groups of Packets
WO2016157133A1 (en) * 2015-03-31 2016-10-06 Telefonaktiebolaget L M Ericsson (Publ) Method of packet marking for flow analytics

Similar Documents

Publication Publication Date Title
EP3750285B1 (en) Method and device for sending data packets over an ip / mpls network
WO2019002754A1 (en) Method of quic communication via multiple paths
US7787454B1 (en) Creating and/or managing meta-data for data storage devices using a packet switch appliance
US20150256577A1 (en) Directing Fragmented Content
WO2008125437A1 (en) Multitopology routing method and system
US10812393B2 (en) Packet distribution based on an identified service function
EP3732829B1 (en) Method of routing data from an initialized session between terminal and server
EP2095570B1 (en) System for reserving bandwidth for different classes of traffic
EP2460322B1 (en) Method and system for the automatic selection of transmission media
FR2925808A1 (en) COMMUNICATION METHOD IN A NETWORK COMPRISING A PRIMARY NETWORK AND A SECONDARY NETWORK
FR3077697A1 (en) METHOD AND DEVICE FOR SENDING DATA PACKETS OVER AN IP / MPLS NETWORK
EP2103055B1 (en) Method for optimising the sharing of a plurality of network resources between a plurality of application flows
EP3085035B1 (en) Technique for signalling congestion in a packet communication network
FR2851705A1 (en) METHOD FOR TRANSMITTING DATA BASED ON THE SONET / SDH HIERARCHY
EP1575211A2 (en) Multicast transmission method by decrementing an associated counter
FR3003109A1 (en) METHOD OF CONGESTION CONTROL FOR TELECOMMUNICATIONS NETWORKS
EP2119140B1 (en) Method for conveying a data packet through a router in a packet communication network supported by a transport network
FR2866497A1 (en) BANDWIDTH CONTROLLER, NETWORK AND METHOD FOR MANAGING IP SUB-NETWORK
EP2476225B1 (en) Method and system for controlling the routing of a data stream from a class of service through a meshed and encrypted network
WO2024068725A1 (en) Method for managing data traffic between a source entity and a recipient entity, and corresponding entity and computer program
EP4020926A1 (en) Routing method for routing an elastic flow in a transport network
WO2007125259A1 (en) Method for transmitting a plurality of identifier fields in a packet switch network
FR3081645A1 (en) COMMUNICATION METHOD IMPLEMENTED BY A FIRST ROUTER OF AN AUTONOMOUS SYSTEM USING AN INTERNAL ROUTING PROTOCOL
EP2178253A1 (en) Transmission of signaling information between communicating entities
WO2009050369A2 (en) Method for establishing intercommunication between a plurality of end nodes via a communication network

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20190809

ST Notification of lapse

Effective date: 20201006