WO2019020582A1 - Addressing for a telecommunications network using multicasting - Google Patents

Addressing for a telecommunications network using multicasting Download PDF

Info

Publication number
WO2019020582A1
WO2019020582A1 PCT/EP2018/069957 EP2018069957W WO2019020582A1 WO 2019020582 A1 WO2019020582 A1 WO 2019020582A1 EP 2018069957 W EP2018069957 W EP 2018069957W WO 2019020582 A1 WO2019020582 A1 WO 2019020582A1
Authority
WO
WIPO (PCT)
Prior art keywords
name
address
multicast
bits
length
Prior art date
Application number
PCT/EP2018/069957
Other languages
French (fr)
Inventor
Laurent SEROR
Original Assignee
Outscale
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 Outscale filed Critical Outscale
Publication of WO2019020582A1 publication Critical patent/WO2019020582A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

A method for assigning an IP multicast address for a multicast mono-framework message comprising a space name (301) of variable bit-length and a command name (302) of variable bit-length, in an IP telecommunications network using a UDP multicast protocol, comprising the following steps: - hashing (306) the space name on a first fixed bit-length, in order to obtain a hashed space name; - hashing (306) the command name on a second fixed bit-length in order to obtain a hashed command name; - forming a hashed group identifier (303) with a third fixed bit-length, by juxtaposing (308) bits from the hashed space name and the hashed command name, the third fixed bit-length of the hashed group identifier being the sum of the first fixed bit-length and the second fixed bit-length; - forming (305) an IP address by juxtaposing (308) bits of a multicast prefix (304) and of the hashed group identifier (303), and - one-time transmission of the message using the UDP multicast protocol.

Description

Adressage pour réseau de télécommunications utilisant la multidiffusion  Addressing for telecommunications network using multicast
Domaine technique de l'invention Technical field of the invention
L'invention concerne les réseaux de télécommunication permettant le routage automatique de commande ou d'événements entre des micro-services informatiques (producteur/consommateur) sans que les producteurs n'aient besoin de connaître explicitement les consommateurs. L'invention concerne plus particulièrement les réseaux du type ci-dessus qui sont soumis à de grandes contraintes de disponibilité : nécessité de ne pas avoir à modifier la configuration ou à redémarrer le système pour supporter de nouvelles commandes/événements.  The invention relates to telecommunication networks enabling the automatic routing of commands or events between micro-computer services (producer / consumer) without the producers having to know the consumers explicitly. The invention relates more particularly to networks of the above type which are subject to high availability constraints: the need not to have to modify the configuration or restart the system to support new commands / events.
Art antérieur  Prior art
Les architectures en micro-services permettent :  Architectures in micro-services allow:
Le déploiement immédiat d'une fonctionnalité unique  Immediate deployment of a single feature
Différents niveaux d'élasticité adaptés à l'usage de chaque sous-ensemble de fonctionnalités  Different elasticity levels adapted to the use of each subset of functionalities
L'isolation d'un service défaillant avec un impact limité et maîtrisé sur le reste des services  Isolation of a failing service with a limited and controlled impact on the rest of the services
L'utilisation de technologies récentes et variées pour répondre au mieux à l'évolution technologique.  The use of recent and varied technologies to best respond to technological developments.
Néanmoins, l'un des challenges de ce type d'architecture est de faire communiquer ces micro-services. Pour ce faire, aujourd'hui, deux principales approches sont utilisées : Nevertheless, one of the challenges of this type of architecture is to communicate these micro-services. To do this today, two main approaches are used:
La communication synchrone point à point entre les micro-services, qui pose généralement les problèmes suivants :  Synchronous point-to-point communication between micro-services, which generally poses the following problems:
o Blocage du fil d'exécution du client  o Blocking the client's thread
o Pannes en cascade en cas d'appels imbriqués  o Cascading failures for nested calls
o Couplage temporel entre les services  o Time coupling between services
La communication asynchrone point à point en utilisant des systèmes de file de messages, qui pose, en ce qui la concerne les autres problèmes suivants :  Asynchronous point-to-point communication using message queue systems, which poses the following other problems:
o Augmentations de la latence des échanges due au fonctionnement en file de messages  o Increase in the latency of the exchanges due to the operation in message queue
o Diminution de la résilience des communications, induite par un point de passage central.  o Decreased resilience of communications, induced by a central gateway.
Il serait donc souhaitable d'échanger des « commandes » ou événements portées par des communications asynchrones pour permettre :  It would therefore be desirable to exchange "commands" or events carried by asynchronous communications to allow:
Un découplage temporel entre les micro-services Une forte résilience à la perte d'une partie du système A temporal decoupling between micro-services Strong resilience to loss of part of the system
La mise en place de flux de données complexes faisant interagir plusieurs sources d'information.  The establishment of complex data flows that interact with several sources of information.
Toutefois, aucune des solutions de l'art antérieur ne permet d'obtenir le résultat précédent.  However, none of the solutions of the prior art makes it possible to obtain the preceding result.
Cela est dû notamment pour les solutions envisageables, à la nécessité pratique, d'utiliser des réseaux IP (« internet protocol ») utilisant la multidiffusion. Les réseaux utilisant la multidiffusion ne sont pas auto-configurables, il n'existe pas d'outils permettant d'attribuer automatiquement un IP multidiffusion unique à une commande.  This is due in particular to the possible solutions, to the practical necessity, to use IP networks ("internet protocol") using multicasting. Networks using multicast are not self-configurable, there are no tools to automatically assign a single multicast IP to a command.
Aujourd'hui ce sont des routeurs applicatifs qui permettent à une commande d'être dirigée vers un groupe de multidiffusion particulier. Par conséquent, lorsqu'une nouvelle commande doit être supportée par un routeur, une intervention sur la configuration est nécessaire (statique ou dynamique) pouvant entraîner un redémarrage et donc une interruption de service.  Today they are application routers that allow a command to be directed to a particular multicast group. Therefore, when a new command has to be supported by a router, an intervention on the configuration is necessary (static or dynamic) which can lead to a restart and therefore a service interruption.
Il existe donc un problème difficile concernant l'attribution d'une adresse IP de multidiffusion unique dans l'art antérieur, pour les machines d'un réseau de télécommunications IP, par exemple utilisant UDP au travers d'un bus de communication asynchrone pour l'envoi de commandes ou événements.  There is therefore a difficult problem concerning the assignment of a unique multicast IP address in the prior art, for the machines of an IP telecommunications network, for example using UDP via an asynchronous communication bus for the purpose of sending orders or events.
Bien que le système de multidiffusion (« multicast ») soit plus efficace donc plus économique en énergie que la monodiffusion (« unicast »), il n'est ainsi pas utilisé, en pratique, pour les architectures à base de micro-services.  Although the multicast system is more efficient and therefore more energy efficient than unicast, it is not used in practice for micro-service architectures.
Exposé de l'invention  Presentation of the invention
Dans ce contexte, l'invention concerne un procédé d'attribution d'une adresse IP de multidiffusion pour un message multi-diffusé mono-trame comprenant_un nom d'espace de longueur en bits variable et un nom de commande de longueur en bits variable, dans un réseau de télécommunications IP utilisant un protocole de multidiffusion UDP, comprenant les étapes suivantes :  In this context, the invention relates to a method of assigning a multicast IP address for a single field multi-broadcast message comprising a variable bit length space name and a variable bit length command name, in an IP telecommunications network using a UDP multicast protocol, comprising the following steps:
Hacher sur une première longueur fixe en bits le nom d'espace pour obtenir un nom d'espace haché  Chipping on a fixed first bit length the space name to get a chopped space name
Hacher sur une seconde longueur fixe en bits le nom de commande pour obtenir un nom de commande haché  Chipping on a fixed second bit length the command name to get a chopped command name
Former un identificateur de groupe haché d'une troisième longueur fixe en bits, par juxtaposition des bits du nom d'espace haché et du nom de commande haché, la troisième longueur fixe en bits de l'identificateur de groupe haché étant la somme de la première longueur fixe en bits et de la seconde longueur fixe en bits, Former une adresse par juxtaposition des bits d'un préfixe de multidiffusion et de l'identificateur de groupe haché, Forming a chunked group identifier of a third fixed bit length, by juxtaposing the hashed space name and the chopped command name bits, the third fixed bit length of the chopped group identifier being the sum of the first fixed length in bits and the second fixed length in bits, forming an address by juxtaposing the bits of a multicast prefix and the hash group identifier,
Transmettre en une seule fois le message par le protocole de multidiffusion UDP.  Transmit the message in one go through the UDP multicast protocol.
Dans des variantes du procédé : In process variants:
- l'adresse IP formée est une adresse IP version 4 et la troisième longueur fixe en bits de l'identificateur de groupe haché est inférieure ou égale à 28 bits. the IP address formed is a version 4 IP address and the third fixed bit length of the hash group identifier is less than or equal to 28 bits.
- l'adresse IP formée est une adresse IP version 6 et la troisième longueur fixe en bits de l'identificateur de groupe haché est inférieure ou égale à 112 bits.  the IP address formed is a version 6 IP address and the third fixed bit length of the hash group identifier is less than or equal to 112 bits.
- la première longueur en bits du nom d'espace haché est de 32 bits  the first bit length of the hash space name is 32 bits
- la première longueur en bits du nom de commande haché est de 32 bits the first bit length of the hashed command name is 32 bits
- le nom d'espace est haché par un algorithme choisi dans l'ensemble des algorithmes suivants : Cyclic redundancy checking, Merkle-Damgârd, Miyaguchi-Preneel, Skein, RadioGatun and Keccak .  the space name is hashed by an algorithm chosen from the following set of algorithms: Cyclic redundancy checking, Merkle-Damgard, Miyaguchi-Preneel, Skein, RadioGatun and Keccak.
- le nom de commande est haché par un algorithme choisi dans l'ensemble des algorithmes suivants : Cyclic redundancy checking, Merkle-Damgârd, Miyaguchi-Preneel, the command name is hashed by an algorithm chosen from the following set of algorithms: Cyclic redundancy checking, Merkle-Damgard, Miyaguchi-Preneel,
Skein, RadioGatun and Keccak . Skein, RadioGatun and Keccak.
- le nom d'espace est un nom d'hôte URI (identifiant uniforme de ressource ou « Uniform Resource Identifier » en anglais) et le nom de commande est une méthode supportée par le protocole HTTP (protocole de transfert hypertexte ou « HyperText Transfer Protocol » en anglais).  the space name is a URI (Uniform Resource Identifier) host name and the command name is a method supported by the HTTP protocol (Hypertext Transfer Protocol or HyperText Transfer Protocol). " in English).
L'invention concerne aussi une utilisation du procédé ci-dessus pour l'attribution d'une adresse IP de multidiffusion à un paquet IP dans une passerelle entre un réseau de télécommunications IP utilisant la monodiffusion et un réseau de télécommunications IP utilisant la multidiffusion.  The invention also relates to a use of the above method for assigning a multicast IP address to an IP packet in a gateway between an IP telecommunication network using unicast and an IP telecommunication network using multicast.
Dans une variante, l'utilisation a lieu pour l'émission du paquet IP vers le réseau de télécommunications IP utilisant la multidiffusion. In a variant, the use takes place for the transmission of the IP packet to the IP telecommunications network using multicasting.
Liste des figures  List of Figures
L'invention sera décrite en lien avec la liste des figures ci-dessous et en référence avec les numéros entre parenthèses représentés sur ces figures.  The invention will be described in connection with the list of figures below and with reference to the numbers in parentheses shown in these figures.
La figure 1 représente la structure d'un ensemble de micro-services émettant des messages(DATA) vers un réseau de télécommunications via un routeur ou passerelle, nommé «routeur applicatif ». Un routeur applicatif, selon la présente demande, transmet un message au réseau de télécommunications, à une adresse de multidiffusion calculée par hachage, au moyen d'un algorithme normalisé, à une longueur en bits fixe, d'une partie normalisée du message, située à une position en bits fixe dans le message et constituée de façon non limitative dans les exemples choisis, par un nom d'espace et un nom de commande, transmis dans chaque message. FIG. 1 represents the structure of a set of micro-services sending messages (DATA) to a telecommunications network via a router or gateway, called an "application router". An application router, according to the present application, transmits a message to the telecommunications network, to a multicast address calculated by hashing, by means of a standardized algorithm, to a fixed bit length, of a normalized part of the message, located at a fixed bit position in the message and constituted in a nonlimiting manner in the examples chosen, by a name of space and a command name, transmitted in each message.
Le terme normalisé signifie, ci-dessus, que l'ensemble des machines du réseau de télécommunications utilise le même algorithme que le routeur applicatif et applique cet algorithme à la même partie des messages acheminés sur le réseau, pour le calcul de l'adresse de multidiffusion associée aux messages sur le réseau. The standardized term means, above, that all the machines of the telecommunications network use the same algorithm as the application router and applies this algorithm to the same part of the messages routed on the network, for the calculation of the address of multicast associated with messages on the network.
La figure 2 explicite la structure d'un message multi-diffusé mono-trame, c'est-à-dire qui est transmis en une seule fois par le protocole de multidiffusion, qui est le type de message auquel s'applique l'invention, le message comprenant un nom d'espace, suivi d'une commande et de données.  FIG. 2 illustrates the structure of a single-frame multi-broadcast message, that is to say which is transmitted in one go by the multicast protocol, which is the type of message to which the invention applies. , the message including a space name, followed by a command and data.
La figure 3 représente un schéma de formation de l'adresse IP d'un message mono-trame selon l'invention dans lequel la fonction de hachage « H » est appliquée à un nom d'espace et à une commande puis les résultats hachés sont ajoutés, au sens de mis bout à bout ou juxtaposés, par une opération symbolisée par un « + » pour obtenir un groupe qui est ensuite ajouté à un préfixe pour obtenir une adresse IPv6. L'IP est donc formée dans cet ordre du préfixe, suivi du nom d'espace haché et du nom de commande haché. Le hachage permettant de diminuer la probabilité de collision pour un nom de domaine ou d'espace et un nom de commande nouveau arbitraire, il est possible de définir des adresses de multidiffusion d'un paquet IP à partir d'information données dans le paquet IP lui-même ou associée au paquet par un protocole de plus haut niveau. Lorsque ce protocole est http ou HTTP (« Hypertext transfer protocol ») au moins 1.1, un couple nom d'espace plus nom de commande, particulièrement simple est de prendre la valeur hôte (« host ») de l'en-tête http comme nom d'espace et le nom de la méthode http extraite de la ligne de commande http comme nom de commande. L'invention permet alors à une passerelle entre un réseau utilisant le protocole HTTP en monodiffusion (TCP/IP) et un réseau utilisant la multidiffusion UDP de déterminer avec un temps de latence minimum, une adresse de multidiffusion UDP d'un paquet IP mono-trame, à partir d'information transmise avec le paquet IP à la passerelle. Il est à noter que de cette manière la passerelle peut prendre en charge de nouvelle commande sans modification de sa configuration ni redémarrage.  FIG. 3 represents a diagram for forming the IP address of a single-frame message according to the invention in which the hash function "H" is applied to a space name and to a command, then the hashed results are added, in the sense of being end-to-end or juxtaposed, by an operation symbolized by a "+" to obtain a group which is then added to a prefix to obtain an IPv6 address. The IP is formed in this prefix order, followed by the hashed space name and the hashed command name. Since the hash decreases the probability of collision for a domain or space name and a new arbitrary command name, it is possible to define multicast addresses of an IP packet from information given in the IP packet. itself or associated with the package by a higher level protocol. When this protocol is http or HTTP ("Hypertext transfer protocol") at least 1.1, a pair of space name plus command name, particularly simple is to take the host ("host") value of the http header as space name and the name of the http method retrieved from the http command line as the command name. The invention then allows a gateway between a network using unicast HTTP protocol (TCP / IP) and a network using UDP multicast to determine with a minimum latency time a UDP multicast address of a single IP packet. frame, from information transmitted with the IP packet to the gateway. It should be noted that in this way the gateway can support a new command without modification of its configuration or restart.
La figure 4 représente un exemple de la composition d'une adresse IPv6 résultant des opérations de la figure 1 dans lequel le préfixe est un préfixe de multidiffusion f005 ::/8 sur 64 bits, le « Groupe » est à sa suite et composé du nom d'espace haché sur 32 bits suivi du nom de commande haché sur 32 bits, résultant en une adresse IP sur 128 bits.  FIG. 4 represents an example of the composition of an IPv6 address resulting from the operations of FIG. 1 in which the prefix is a f005 :: / 8 multicast prefix on 64 bits, the "Group" is in its wake and composed of 32-bit hashed space name followed by the 32-bit hashed command name, resulting in a 128-bit IP address.
Description détaillée d'un mode de réalisation  Detailed description of an embodiment
L'invention est décrite dans un premier mode de réalisation pour des micro-services informatiques qui sont des programmes d'ordinateur, dédiés à une tâche particulière et réalisent sur un ordinateur muni d'une carte réseau connecté à un réseau de télécommunication, des fonctions permettant de transformer l'ordinateur exécutant le micro-service, notamment en émetteur de message ou en récepteur de message ou en réémetteur de message ou en passerelle(« Gateway »). The invention is described in a first embodiment for micro-services computer programs which are computer programs, dedicated to a particular task and perform on a computer equipped with a network card connected to a telecommunications network, functions making it possible to transform the computer running the micro-service, in particular into a transmitter of message or as a message receiver or as a message retransmitter or gateway ("Gateway").
Ce type d'architecture est notamment utile dans le domaine de l'informatique de service en nuage («Cloud Computing») pour acheminer des commandes ou messages ou événements pour des fournisseurs du service, chaque fournisseur étant identifié par un nom d'espace ou un nom de domaine sur le réseau de télécommunication, au niveau d'une passerelle vers le service.  This type of architecture is particularly useful in the field of cloud computing ("Cloud Computing") to route commands or messages or events for service providers, each provider being identified by a space name or a domain name on the telecommunication network, at a gateway to the service.
L'invention ne se limite toutefois pas à ce mode de réalisation, des matériels dédiés pouvant être construits pour l'émission, la réception ou la retransmission ou réémission de messages sur le réseau de télécommunications envisagé.  However, the invention is not limited to this embodiment, dedicated equipment can be constructed for the transmission, reception or retransmission or retransmission of messages on the envisaged telecommunications network.
Les termes d'émetteur, récepteur ou réémetteur (retransmetteur) ou passerelle seront ainsi considérés comme des synonymes sur le réseau de micro-service d'émission, de réception ou de réémission (retransmission) ou d'interface vers le réseau, au sens de la présente demande, pour laquelle le terme de procédé sera aussi synonyme de méthode. The terms transmitter, receiver or retransmitter (or retransmitter) or gateway will thus be considered as synonyms on the network of micro-service transmission, reception or retransmission (retransmission) or interface to the network, within the meaning of the present application, for which the term process will also synonymous method.
La description ci-dessous fait référence aux figures 1, 2 ,3 et 4 et pour les numéros entre parenthèses, chaque numéro commençant par le numéro de figure où apparaît l'élément. Architecture Globale The description below refers to Figures 1, 2, 3 and 4 and for numbers in parentheses, each number beginning with the figure number where the item appears. Global Architecture
Dans le cas de l'acheminement d'une commande DATA (106) avec un contenu normalisé (201) à destination d'un type micro-service MS-A (102) ou MS-B (104), l'architecture comporte les éléments suivants : un routeur applicatif (101) capable de rediriger la commande (106) et des instances de micro-service MS-A.1/2/... /N (103) et MS-B.1/2/.../N (105) en mesure de traiter une commande.  In the case of routing a DATA command (106) with a standardized content (201) to a micro-service type MS-A (102) or MS-B (104), the architecture comprises the following elements: an application router (101) capable of redirecting the command (106) and microservice instances MS-A.1 / 2 / ... / N (103) and MS-B.1 / 2 /. ../N (105) able to process an order.
Le routeur applicatif (101) communique avec les micro-services (102 et 104) au travers d'un canal UDP (111) en envoyant des commandes DATA mono-trame (107 et 108) vers des groupe de multidiffusion ou groupe de communication GRPl (109) et GRP2 (110) du réseau de télécommunication (100) constitué par l'ensemble des élément ci-dessus.  The application router (101) communicates with the micro services (102 and 104) through a UDP channel (111) by sending single-frame DATA commands (107 and 108) to multicast groups or GRPL communication group (109) and GRP2 (110) of the telecommunications network (100) constituted by all of the above elements.
Chaque instance de micro-service récepteur du type A s'abonne au (se met en écoute du) groupe de communication GRPl (109), associé à l'adresse de multidiffusion correspondant à la commande qu'ils doivent traiter. Each type A receiving micro-service instance subscribes to (listens for) the GRPL communication group (109) associated with the multicast address corresponding to the command they are to process.
Chaque instance de micro-service récepteur du type B s'abonne au (se met en écoute du) groupe de communication GRP2 (110), associé à l'adresse de multidiffusion correspondant à la commande qu'ils doivent traiter. Le message source (106) qui transit vers le routeur applicatif (101), de même que Les messages (107 et 108), mono-trames, qui transitent vers les groupes GRP1(109) et GRP2 (110) ont un contenu normalisé (211) composé de deux parties principales : Each type-B receiving micro-service instance subscribes to (listens for) the GRP2 communication group (110), associated with the multicast address corresponding to the command they are to process. The source message (106) that passes to the application router (101), as well as the messages (107 and 108), mono-frames, which transit to the groups GRP1 (109) and GRP2 (110) have a standardized content ( 211) composed of two main parts:
le nom d'espace ciblé par la commande (202)  the space name targeted by the command (202)
- le nom de la commande du message (203)  - the name of the message command (203)
et les données portées par le message (204).  and the data carried by the message (204).
Calcul des adresses réseau : Network address calculation:
Pour que le routeur applicatif soit, par exemple, en mesure de rediriger un message (106) à destination du groupe de communication GRP2 (110), il doit en calculer l'adresse IPv6 (305) et son contenu (401). Il en est de même pour les instances de micro-services de type B (105) qui doivent identifier l'adresse du groupe de communication GRP2 (110) où écouter les commandes qui y transitent.  In order for the application router, for example, to be able to redirect a message (106) to the GRP2 communication group (110), it must calculate the IPv6 address (305) and its content (401). The same is true for type B micro-service instances (105) which must identify the address of the GRP2 communication group (110) where to listen to the commands that pass through it.
Les adresses IP version 6 ou IPv6 (305) et leur contenu (401) sont composés de trois sous- ensembles :  The IP version 6 or IPv6 addresses (305) and their content (401) are composed of three subsets:
1. Le préfixe ou donnée « préfix » de multidiffusion (304) et son contenu (402) qui occupe les 64 premiers bits de l'adresse.  1. The prefix or multicast "prefix" data item (304) and its content (402) that occupies the first 64 bits of the address.
2. Le nom de l'espace de travail (301) qui est encodé sur une longueur fixe de 32 bits au travers d'une fonction de hachage (306) pour obtenir la première partie hachée (403) de l'identifiant de groupe (405)  2. The name of the workspace (301) that is encoded on a 32-bit fixed length through a hash function (306) to obtain the first hashed portion (403) of the group identifier ( 405)
3. Enfin le nom de commande (302) qui est encodé sur 32 bits au travers d'une fonction de hachage (306), par exemple la même fonction de hachage sur 32 bits que celle utilisée pour le nom d'espace de travail, pour obtenir la deuxième partie hachée (404) de l'identifiant du groupe (405).  3. Finally, the command name (302) which is 32-bit encoded through a hash function (306), for example the same 32-bit hash function as used for the workspace name. to obtain the second chopped portion (404) of the group identifier (405).
Selon le mode de réalisation, la fonction de hachage (306) peut être un algorithme connu dans l'art antérieur et choisi parmi CRC-32, fletcher-32, Adler-32, ou sum-32. According to the embodiment, the hash function (306) may be an algorithm known in the prior art and selected from CRC-32, fletcher-32, Adler-32, or sum-32.
Le même algorithme de hachage sera uniformément appliqué dans toutes les machines du réseau. The same hash algorithm will be uniformly applied in all machines in the network.
La même longueur de hachage sera appliquée uniformément dans toutes les machines ou passerelles du réseau, à la fois pour l'espace de travail haché pouvant jouer le rôle de sous- réseau afin d'alléger le routage et à la fois pour la commande hachée, pouvant jouer le rôle d'adresse de multidiffusion dans le sous-réseau. The same hash length will be applied uniformly across all machines or gateways in the network, both for the hashed workspace that can act as a subnet for lightening the routing and both for the hashed command. which can act as a multicast address in the subnet.
L'ordre préfixe puis espace de travail haché puis commande hachée sera aussi préférentiellement utilisé pour la constitution des adresses IP, ce mode constituant le meilleur mode de réalisation de l'invention. The prefix order then chopped workspace then chopped command will also be preferentially used for the constitution of the IP addresses, this mode constituting the best embodiment of the invention.
Le choix de l'algorithme sera fait pour éviter au mieux les collisions, c'est-à-dire le conflit d'adresse IP, en fonction du nombre de bits disponible pour le hachage de longueur fixe, dans ce but, une IPv6 qui permet 112 bits pour l'identificateur de groupe sera préférée à une adresse IP version 4 ou IPv4 et donc des réseaux IPv6 à des réseaux IPv4. L'invention peut toutefois être mise en œuvre avec toute longueur d'adresse IP, la plus grande longueur de groupe d'identification étant souhaitable pour l'invention. L'invention est particulièrement adaptée à l'émission, par une passerelle, de paquets IP vers une adresse de multidiffusion d'un réseau UDP à partir de paquets IP reçus par la passerelle sur une adresse de monodiffusion. Tout particulièrement lorsque le protocole au niveau de la couche application, utilisé en monodiffusion, pour la transmission des messages, sous forme de paquets mono-trame est http. Dans ce cas, l'utilisation de l'invention permet de déterminer en temps réel, c'est-à-dire avec une latence minimale, à partir de l'en-tête http, le nom de l'espace de travail, par exemple à partir du champ « host » de l'en-tête http et le nom de commande à partir du début de la première ligne de l'en-tête http par la commande http. La détermination de l'adresse de multidiffusion d'un paquet est alors particulièrement rapide et transparente et universelle. The choice of the algorithm will be made to avoid at best the collisions, that is to say the IP address conflict, according to the number of bits available for the fixed length hash, for this purpose, an IPv6 which allows 112 bits for the group identifier will be preferred to an IP version 4 or IPv4 address and thus IPv6 networks to IPv4 networks. The invention can, however, be implemented with any IP address length, the longest identification group length being desirable for the invention. The invention is particularly suited to the transmission, by a gateway, of IP packets to a multicast address of a UDP network from IP packets received by the gateway on a unicast address. Especially when the protocol at the application layer, used unicast, for the transmission of messages, in the form of single-frame packets is http. In this case, the use of the invention makes it possible to determine in real time, that is to say with a minimum latency, from the http header, the name of the workspace, by example from the "host" field of the http header and the command name from the beginning of the first line of the http header by the http command. The determination of the multicast address of a packet is then particularly fast and transparent and universal.
Le procédé de l'invention, son utilisation et les produits qui mettent en œuvre son procédé comme une passerelle inter-réseaux, sont susceptibles d'application industrielle dans la communication interne d'une application distribuée sur plusieurs machines physiques ou virtuelles. The method of the invention, its use and the products which implement its method as an inter-network gateway, are susceptible of industrial application in the internal communication of a distributed application on several physical or virtual machines.
Dans tous les modes de réalisation de la présente demande, la longueur en bits du nom d'espace et la longueur en bits du nom de commande pourront être différentes sans sortir de l'enseignement de la présente demande.  In all embodiments of the present application, the bit length of the space name and the bit length of the command name may be different without departing from the teaching of the present application.
Dans tous les modes de réalisation de la présente demande, la longueur de hachage en bits du nom d'espace et la longueur en bits du nom de commande pourra être fixée uniquement en considération du type de version du réseau IP et de la longueur en bits de son identificateur de groupe) « group ID »), tout spécialement à des valeurs différentes de cet identificateur à 32 bits pour IP version 4 (IPv4) ou 112 bits pour IP version 6(IPv6), sans sortir de l'enseignement de la présente invention.  In all embodiments of the present application, the bit hash length of the space name and the bit length of the command name may be set only in consideration of the type of IP network version and the bit length. group identifier) "group ID"), especially at different values of this 32-bit identifier for IP version 4 (IPv4) or 112 bits for IP version 6 (IPv6), without leaving the teaching of the present invention.
Dans tous les modes de réalisation de de la présente demande, la première longueur hachée du nom d'espace ajoutée à la seconde longueur hachée du nom de commande sera inférieure à la longueur d'identificateur de groupe de la version de réseau utilisé et ces première et seconde longueurs pourront être inégales sans sortir de l'enseignement de la présente invention. Au sens de la présente demande, un algorithme de hachage est un algorithme permettant d'obtenir de façon déterministe, i.e. reproductible, une séquence de bits de longueur fixe (« hash » ou hachage) à partir d'une séquence de bits de longueur arbitrairement grande ou variable, finie en pratique. Pour la présente demande, tous les algorithmes de hachage de l'art antérieur sont utilisables, il sera donc possible d'utiliser des fonctions de hachage parmi les familles d'algorithmes suivantes : Cyclic redundancy checking (CRC32, CRC64), Merkle-Damgârd (MD5), Miyaguchi-Preneel (Whirlpool), Skein and RadioGatun (SHA-3 candidats) and Keccak (SHA-3, lauréat) ou encore tout autre méthode de hachage de l'art antérieur, pour réaliser les modes ci-dessus. In all embodiments of the present application, the first chunk length of the space name added to the second chunk length of the command name will be less than the group identifier length of the network version being used and these first and second lengths may be unequal without departing from the teaching of the present invention. For the purposes of the present application, a hashing algorithm is an algorithm for deterministically obtaining, ie reproducible, a sequence of bits of fixed length ("hash" or hash) from a sequence of bits of length arbitrarily large or variable, finished in practice. For the present application, all the hashing algorithms of the prior art are usable, it will therefore be possible to use hash functions among the following families of algorithms: Cyclic redundancy checking (CRC32, CRC64), Merkle-Damgard ( MD5), Miyaguchi-Preneel (Whirlpool), Skein and RadioGatun (SHA-3 candidates) and Keccak (SHA-3, winner) or any other method of hashing of the prior art, to achieve the above modes.
De préférence, on choisira toutefois pour réaliser les modes de la présente demande des algorithmes de hachage minimisant le nombre de collisions qu'ils produisent pour des entrées données en termes de noms d'espaces de travail et de commandes, c'est-à-dire le nombre de cas où ils produisent en sortie deux séquences de longueur fixe qui sont identiques, à partir de deux séquences de longueur arbitraire distinctes, en entrée.  Preferably, however, the modes of the present application will be chosen to have hashing algorithms that minimize the number of collisions they produce for given entries in terms of names of workspaces and commands, that is, say the number of cases where they output two fixed-length sequences that are identical, from two distinct arbitrary length sequences, as input.
Il est aussi à noter que les algorithmes de hachage sont à sens unique et ne permettent pas ou pas facilement de remonter aux données avant hachage. Il n'est donc pas naturel d'utiliser de tels algorithmes, dans lesquels la signification de l'espace de travail et de la commande est définitivement perdue, pour un adressage, alors que justement l'homme du métier serait tenté de conserver un moyen mnémotechnique ou une relation pour relier l'information en entrée à l'adresse de multidiffusion en sortie, dans un schéma d'adressage. It should also be noted that the hashing algorithms are one-way and do not allow or do not easily go back to the data before hashing. It is therefore not natural to use such algorithms, in which the meaning of the workspace and the command is permanently lost, for an addressing, whereas precisely the person skilled in the art would be tempted to retain a means mnemonic or a relationship for connecting the input information to the output multicast address in an addressing scheme.
Un critère de présence d'un des modes de réalisation de la présente demande et notamment de sa mise en œuvre dans un produit comme un routeur ou « gateway » pourra s'inspirer des remarques ci-dessus. Ainsi, si une variation d'un seul bit sur le nom de l'espace de travail ou de commande, produit deux adresses IP non consécutives de destination des messages transmis par le routeur, la présence de l'invention sera probable. Il en sera de même si un message avec un nom d'espace de travail et de commande issu d'un générateur aléatoire est retransmis par le routeur, alors qu'une telle combinaison de nom d'espace et de commande n'ayant pu être anticipée par configuration, serait bloquée avec une probabilité très élevée par un routeur de l'art antérieur. A presence criterion of one of the embodiments of the present application and in particular its implementation in a product such as a router or "gateway" may be inspired by the remarks above. Thus, if a variation of a single bit on the name of the workspace or command, produces two non-consecutive IP addresses of destination of the messages transmitted by the router, the presence of the invention will be probable. It will be the same if a message with a name of workspace and command from a random generator is retransmitted by the router, whereas such a combination of namespace and command could not be anticipated by configuration, would be blocked with a very high probability by a router of the prior art.
Il est entendu que la présente demande concerne aussi un routeur « applicatif » ou dispositif ou produit spécialement pour la mise en œuvre du procédé décrit dans les modes de réalisation ci-dessus, ainsi que l'utilisation dans un tel routeur dudit procédé.  It is understood that the present application also relates to an "application" router or device or product specifically for the implementation of the method described in the embodiments above, as well as the use in such a router of said method.
Il est entendu que dans la présente demande, les termes « le protocole HTTP » désignent toute version ou variante du protocole de communication HTTP, et notamment la variante sécurisée dite « HTTPS » du protocole HTTP.  It is understood that in the present application, the terms "the HTTP protocol" designate any version or variant of the HTTP communication protocol, and in particular the secure variant known as "HTTPS" of the HTTP protocol.

Claims

Revendications claims
[1] Procédé d'attribution d'une adresse IP de multidiffusion pour un message multi-diffusé mono-trame comprenant un nom d'espace (301) de longueur en bits variable et un nom de commande (302) de longueur en bits variable, dans un réseau de télécommunications IP utilisant un protocole de multidiffusion UDP, caractérisé en ce qu'il comprend les étapes suivantes : [1] A method of assigning a multicast IP address for a single field multi-broadcast message comprising a variable bit length space name (301) and a variable bit length command name (302) , in an IP telecommunications network using a UDP multicast protocol, characterized in that it comprises the following steps:
Hacher(306) sur une première longueur fixe en bits le nom d'espace pour obtenir un nom d'espace haché  Chop (306) on a fixed first bit length the space name to get a chopped space name
Hacher(306) sur une seconde longueur fixe en bits le nom de commande pour obtenir un nom de commande haché  Chopping (306) over a fixed second bit length the command name to get a chopped command name
Former un identificateur de groupe haché (303) d'une troisième longueur fixe en bits, par juxtaposition (308) des bits du nom d'espace haché et du nom de commande haché, la troisième longueur fixe en bits de l'identificateur de groupe haché étant la somme de la première longueur fixe en bits et de la seconde longueur fixe en bits,  Forming a chunked group identifier (303) of a third fixed bit length, by juxtaposing (308) bits of the hashed space name and the chopped command name, the third fixed bit length of the group identifier chopped being the sum of the first fixed length in bits and the second fixed length in bits,
Former une adresse IP(305) par juxtaposition (308) des bits d'un préfixe de multidiffusion (304) et de l'identificateur de groupe haché(303),  Forming an IP address (305) by juxtaposing (308) the bits of a multicast prefix (304) and the hash group identifier (303),
Transmettre en une seule fois le message par le protocole de multidiffusion UDP.  Transmit the message in one go through the UDP multicast protocol.
[2] Procédé selon la revendication 1 dans lequel l'adresse IP formée est une adresse IP version 4 et la troisième longueur fixe en bits de l'identificateur de groupe haché est inférieure ou égale à 28 bits. The method of claim 1 wherein the formed IP address is a version 4 IP address and the third fixed bit length of the hash group identifier is less than or equal to 28 bits.
[3] Procédé selon la revendication 1 dans lequel l'adresse IP formée est une adresse IP version 6 et la troisième longueur fixe en bits de l'identificateur de groupe haché est inférieure ou égale à 112 bits.  The method of claim 1 wherein the formed IP address is a version 6 IP address and the third bit-fixed length of the hash group identifier is less than or equal to 112 bits.
[4] Procédé selon la revendication 3 dans lequel la première longueur en bits du nom d'espace haché est de 32 bits  The method of claim 3 wherein the first bit length of the hashed space name is 32 bits.
[5] Procédé selon la revendication 3 dans lequel la première longueur en bits du nom de commande haché est de 32 bits  The method of claim 3 wherein the first bit length of the hashed command name is 32 bits.
[6] Procédé selon la revendication 1 dans lequel le nom d'espace est haché par un algorithme choisi dans l'ensemble des algorithmes suivants : Cyclic redundancy checking, Merkle-Damgârd, Miyaguchi-Preneel, Skein, RadioGatun and Keccak. The method of claim 1 wherein the space name is hashed by an algorithm selected from the set of the following algorithms: Cyclic redundancy checking, Merkle-Damgard, Miyaguchi-Preneel, Skein, RadioGatun and Keccak.
[7] Procédé selon la revendication 1 dans lequel le nom de commande est haché par un algorithme choisi dans l'ensemble des algorithmes suivants : Cyclic redundancy checking, Merkle-Damgârd, Miyaguchi-Preneel, Skein, RadioGatun and Keccak . The method of claim 1 wherein the control name is hashed by an algorithm selected from the set of the following algorithms: Cyclic redundancy checking, Merkle-Damgard, Miyaguchi-Preneel, Skein, RadioGatun and Keccak.
[8] Procédé selon la revendication 1 dans lequel le nom d'espace est un nom d'hôte URI et le nom de commande est une méthode supportée par le protocole HTTP.  The method of claim 1 wherein the space name is a URI host name and the command name is a method supported by the HTTP protocol.
[9] Utilisation du procédé selon la revendication 1 pour l'attribution d'une adresse IP de multidiffusion à un paquet IP dans une passerelle entre un réseau de télécommunications IP utilisant la monodiffusion et un réseau de télécommunications IP utilisant la multidiffusion.  [9] Use of the method according to claim 1 for assigning a multicast IP address to an IP packet in a gateway between an IP telecommunication network using unicast and an IP telecommunications network using multicast.
[10] Utilisation selon la revendication 9 pour l'émission du paquet IP vers le réseau de télécommunications IP utilisant la multidiffusion. [10] Use according to claim 9 for transmitting the IP packet to the IP telecommunications network using multicast.
PCT/EP2018/069957 2017-07-24 2018-07-23 Addressing for a telecommunications network using multicasting WO2019020582A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1770790A FR3069400B1 (en) 2017-07-24 2017-07-24 ADDRESSING FOR TELECOMMUNICATIONS NETWORK USING MULTICAST
FR17/70790 2017-07-24

Publications (1)

Publication Number Publication Date
WO2019020582A1 true WO2019020582A1 (en) 2019-01-31

Family

ID=60888528

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/069957 WO2019020582A1 (en) 2017-07-24 2018-07-23 Addressing for a telecommunications network using multicasting

Country Status (2)

Country Link
FR (1) FR3069400B1 (en)
WO (1) WO2019020582A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081460A1 (en) * 2002-03-26 2003-10-02 Wiral Ltd. Method and system of using fixed-length addresses in message routing
US20150139225A1 (en) * 2013-11-18 2015-05-21 Cisco Technology, Inc., A Corporation Of California Filtering on Classes and Particulars of a Packet Destination Address at Lower-Protocol Layers in a Networked Device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081460A1 (en) * 2002-03-26 2003-10-02 Wiral Ltd. Method and system of using fixed-length addresses in message routing
US20150139225A1 (en) * 2013-11-18 2015-05-21 Cisco Technology, Inc., A Corporation Of California Filtering on Classes and Particulars of a Packet Destination Address at Lower-Protocol Layers in a Networked Device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CHEN JIACHEN ET AL: "Coexist: Integrating Content Oriented Publish/Subscribe Systems with IP", 2012 ACM/IEEE SYMPOSIUM ON ARCHITECTURES FOR NETWORKING AND COMMUNICATIONS SYSTEMS (ANCS), ACM, 29 October 2012 (2012-10-29), pages 223 - 234, XP033061689 *

Also Published As

Publication number Publication date
FR3069400B1 (en) 2019-12-13
FR3069400A1 (en) 2019-01-25

Similar Documents

Publication Publication Date Title
BE1022510B1 (en) Establish a data transfer connection
EP3053327B1 (en) Method of distributing identifiers of multicast sources
US10237189B2 (en) System and method for distance-based interest forwarding
EP3211852A1 (en) Ssh protocol-based session parsing method and system
KR20170038148A (en) System and method for stateless information-centric networking
KR20170037818A (en) Information-centric networking with small multi-path or single-path forwarding state
US11070424B2 (en) System and method for dynamic name configuration in content-centric networks
EP3476096A1 (en) Method for multi-path udp communication method between two terminals
EP2683123B1 (en) Flow management gateway for machine-to-machine network
US10237075B2 (en) Reconstructable content objects
FR2994623A1 (en) DEVICE AND METHOD FOR UNIDIRECTIONAL DATA TRANSFER
FR2834412A1 (en) NETWORK NODE, PHYSICAL INTERFACE CONTAINED BY THIS NODE AND PROCESS FOR PROCESSING PACKAGES CARRYING A VOICE PAYLOAD
Kopiczko et al. Stegtorrent: a steganographic method for the p2p file sharing service
WO2020260813A1 (en) Method for managing communication between terminals in a communication network, and devices for implementing the method
CN107026861A (en) A kind of plug-flow method and device
WO2019020582A1 (en) Addressing for a telecommunications network using multicasting
FR3072529A1 (en) ROUTING DATA IN A RESIDENTIAL GATEWAY IMPLEMENTING LINK AGGREGATION
EP2031809B1 (en) Method for processing data streams in a telecommunication network
EP3709185A1 (en) Method for optimising data exchange in a connected object infrastructure
WO2005008992A1 (en) Description of packet content in a packet communication network
EP3747238B1 (en) Aggregating a plurality of radio connections in a wireless network
CN101964733B (en) Method and system for implementing internet group management protocol snooping and modem
EP2835954A2 (en) Method for processing radio stations and corresponding computer programs in an ad hoc radio network
EP2534801B1 (en) Pseudo-link multipoint to point
FR3091120A1 (en) Method for optimizing the use of gateways according to the messages to be transmitted

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18740622

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18740622

Country of ref document: EP

Kind code of ref document: A1