EP3580898A1 - Method and device for determining an energy-saving routing path - Google Patents

Method and device for determining an energy-saving routing path

Info

Publication number
EP3580898A1
EP3580898A1 EP18701196.0A EP18701196A EP3580898A1 EP 3580898 A1 EP3580898 A1 EP 3580898A1 EP 18701196 A EP18701196 A EP 18701196A EP 3580898 A1 EP3580898 A1 EP 3580898A1
Authority
EP
European Patent Office
Prior art keywords
network
path
links
nodes
metric
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
EP18701196.0A
Other languages
German (de)
French (fr)
Inventor
Siwar BEN HADJ SAID
Alexandre Petrescu
Christophe JEANNETEAU
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.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Commissariat a lEnergie Atomique CEA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
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 Commissariat a lEnergie Atomique CEA, Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Commissariat a lEnergie Atomique CEA
Publication of EP3580898A1 publication Critical patent/EP3580898A1/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/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations

Definitions

  • the invention lies in the field of computer and telecommunications networks and relates to optimizing the routing of data flows in an IP network.
  • the European Commission has issued a Code of Conduct (CoC) on the energy consumption of broadband equipment that indicates the maximum power consumption allowed for each link technology.
  • CoC Code of Conduct
  • each technology has its own energy consumption regardless of the associated bandwidth. For example, a point-to-point fiber with a bandwidth of 10 Gbps consumes about 8 Watts, while an EPON fiber with the same bandwidth consumes about 13.4 Watts.
  • Figures 1a and 1b illustrate for the same network configuration (100), the power that is consumed on a routing path according to which criteria are taken into account to determine the routing path.
  • the network (100) type 5G is composed of two parts: a so-called access network and aggregation portion (102), and a so-called core network portion (104).
  • the two parts of the network are coupled via a router (103) also called edge node.
  • the network comprises in each part, nodes or routers (106-1, 106-i, .... 106-n) which are connected to one another via links (108-1, 108-j, ... 108- m) may be of different technologies.
  • each router involved in a routing path develops a power consumption on its network interface that is a function of the technology of the link.
  • the values indicated in FIGS. 1a and 1b are given by way of example, and corresponding to actual values given in the aforementioned code of conduct, for fiber types of 1 Gbit / s and 10 Gbit / s, depending on the number of ports.
  • a client terminal (1 10) is connected to a WiFi terminal (1 12).
  • a user requests a streamed video from a server (1 14) of the content provider.
  • the packet routing (path 1 1 6) is done based on the metric bandwidth. Thus, the links with the largest passerby are favored.
  • This routing policy entails a total energy consumption of the path of 132W, corresponding to the sum of the energy consumption of each link involved in the path between the source and the destination.
  • the packet routing (path 1 18) is made according to the bandwidth and the energy consumption of the links.
  • links that provide adequate bandwidth and consume less in terms of energy are favored.
  • This routing policy entails a total energy consumption of the path of 74W.
  • This example illustrates the problem related to the need to have a routing protocol that reduces energy consumption.
  • the first approach is to propose a new routing metric that considers energy related parameters, such as the remaining level of a device's battery.
  • a routing algorithm calculates the paths using this metric.
  • the second approach is to introduce changes to the routing protocol itself in order to achieve energy savings. In this second approach, the routing metric does not undergo any modification.
  • the existing solutions target networks of nodes with limited energy power such as ad-hoc networks or sensors.
  • the node energy is a critical resource that must be used effectively to increase network life. Therefore, a routing metric based on node battery level or link quality is most appropriate for preserving node energy.
  • U.S. Patent Application 2013/0315257 A1 to Welin et al. presents a method that uses the power consumption metric when switching traffic in routers or switches.
  • This metric can be based on the power consumption in the link interfaces, in the links and in the node.
  • Each node receives energy consumption from the rest of the nodes that are in the same routing domain. It also sends its energy consumption to other nodes.
  • This type of solution does not ensure a Quality of Service (QoS) required by the applications. Considering only energy as the only end-to-end selection criterion, this solution can choose to route latency-sensitive traffic (for example, emergency call, IPTV, etc.) by a path not respecting their need (for example, long path causing high latency).
  • QoS Quality of Service
  • U.S. Patent 6,301,244 B1 to Huang et al. describes a method for finding a path between a source node and each node in a communication network, so that the path delay does not exceed a path delay constraint or first metric and the cost of the path or second metric is minimized, each metric being additive.
  • a first path that is the shortest path from a source node to each network node in terms of a first metric is selected using the Dijkstra algorithm. Nodes associated with paths whose metric exceeds the imposed constraint are eliminated.
  • An accessibility graph is then constructed based on the remaining nodes. The Dijkstra algorithm is then applied to the accessibility graph to determine the shortest path between a source node and each node in terms of a second metric.
  • the basic idea is to route the data packets over a given subset of network links during periods of low traffic, using a coordination strategy between the routers. In this way, interfaces that do not participate in traffic switching can be turned off, in standby mode, without causing problems with network availability.
  • Zhang's US Patent Application 2015/0222537 A1 provides a method for aggregating traffic to disable or suspend network interfaces and thereby use as few links as possible in the network, thereby reducing the overall consumption of the network. network.
  • This method uses a linear programming algorithm whose objective is to maximize the number of links to put on standby and taking as constraint the traffic state in the nodes of the network.
  • the method needs the following parameters: the source node, the destination node, data on the topology of the network as well as data on the state of the traffic in each node.
  • the method considers that the energy consumption of interfaces is the same regardless of the technology used.
  • the method is not compatible with Open Shortest Path First (OSPF) distributed routing protocols. Indeed, once the interface is disabled, the OSPF protocol considers that the link is down and will flood the network with messages "Link-state advertisements" (LSA) to inform other routers.
  • OSPF Open Shortest Path First
  • the present invention meets this need.
  • An object of the present invention is to propose a routing path determination method which reduces the total energy consumption in the networks, taking into account both the available bandwidth of the path and the energy consumption of the networks. nodes, and without degrading the quality of service offered to users.
  • the present invention has the advantage of being able to be implemented on concave metrics, for example for the bandwidth where the metric of the end-to-end path is the minimum of the metric of the links, or to be implemented on metrics additives, for example for energy consumption where the end-to-end path metric is the sum of the link metrics.
  • Another object of the present invention is to propose a method of determining an energy-efficient routing path while preserving the quality of service constraints required by the data streams, whatever the heterogeneity of the technologies of the networks used.
  • the method of the invention relies on the implementation of an algorithm that comprises two levels of filtering: a first filtering to target all the best possible paths according to a first priority metric followed by a second filtering to select the best path according to a second metric.
  • the invention will find advantageous applications in all areas where telecommunication network providers and operators are eager to reduce the energy consumption of the networks while ensuring the quality of service required by the data flows to transit.
  • the invention can be implemented:
  • the method of the invention is easy to implement, and adaptable according to the needs of the operator, depending on the priority performance sought, whether it is to ensure the quality of service for the flows, or to reduce energy consumption. .
  • the method makes it possible to determine the paths having the best available bandwidth, and then to select among these, the one presenting the consumption. lowest energy level. If the priority is to reduce the energy consumption, in the case for example of flows that do not have a specific need in terms of quality of services as certain types of communications related to connected objects, the method makes it possible to determine the paths that have the lowest energy consumption, then select from those the one with the best available bandwidth.
  • the method implements a Yen algorithm, which makes it possible to find the best k paths without a loop.
  • a method of determining a data packet routing path between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second performance metrics, the method comprising the steps of:
  • the ranking step consists in ordering the candidates according to an increasing or decreasing value of the second performance metric, and the selection step consists in selecting the candidate presenting the highest or lowest value;
  • the calculation step consists in operating an algorithm for calculating 'k' shortest paths without a loop on a graph representative of the nodes of the network, 'k' being a predefined non-zero integer;
  • the algorithm is the Yen algorithm
  • the performance metrics are the available bandwidth and the energy consumption of each link
  • the first metric is the available bandwidth and the second metric is the energy consumption
  • the calculation step consists in determining a set of loopless paths having the highest available bandwidth and the selection step consists in selecting the path having the lowest energy consumption between the source node and the destination node;
  • the first metric is the energy consumption and the second metric is the available bandwidth
  • the calculation step consists in determining a set of loopless paths having the lowest power consumption and the selection step consists in selecting the path presenting the highest available bandwidth between the source node and the destination node;
  • the method further comprises, after the calculation step, a step for filtering among the candidates a subset of candidates according to quality of service parameters for the data stream;
  • the quality of service parameters are chosen from among the bit rate, the latency, the maximum loss rate of data packets, the jitter.
  • the invention covers a data packet routing path determining device between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second links. metrics of performance, the device comprising means for implementing the steps of the claimed method.
  • the links between the nodes of the network are wired and / or not wired; the data packets are packets of a multimedia data stream.
  • the invention also covers a communication system able to route in a network data packets between a source node and a destination node among a plurality of nodes connected by links, the links having at least first and second performance metrics, the system comprising at least one device as claimed.
  • the claimed device is implemented in at least one node of the network.
  • the network is of the "Software-
  • SDN Networking
  • the claimed device is implemented in the SDN controller of that network.
  • the invention also covers a method operated by an SDN controller in a Software-Challenge Networking (SDN) network, for constructing a data flow route, the network comprising a plurality of nodes and links between the nodes. the links having at least first and second performance metrics, the SDN controller being adapted to detect a stream routing request and identify the address of a source node and the address of a destination node for the stream, the method comprising the steps of the routing path determination method as claimed.
  • SDN Software-Challenge Networking
  • the execution of the steps of the data packet routing path determination method is done according to whether the quality of service for a data stream has priority or not
  • the invention may operate in the form of a computer program product that includes code instructions for performing the claimed process steps when the program is run on a computer.
  • Figures 1a and 1b illustrate the power that is consumed on a routing path according to which criteria are taken into account to determine the routing path;
  • FIG. 2 illustrates a sequence of steps according to the method of the invention, to determine a routing path
  • FIG. 3 details the steps of the method of the invention in one embodiment
  • FIG. 4 details the steps of the method of the invention in another embodiment
  • Figure 5 illustrates a sequence of steps according to a variant of the method of the invention in another embodiment
  • Figure 6 illustrates a sequence of steps of the method of the invention in one embodiment for an SDN network
  • FIG. 7 schematically shows an SDN environment in which the invention can be implemented.
  • a major advantage of the process of the invention is to reduce energy consumption in networks when calculating a routing path, taking into account both the available bandwidth of links between nodes and their energy consumption.
  • FIGS. 1a and 1b illustrate a sequence of steps (200) of the GoGreen process of the invention.
  • the method makes it possible to determine a routing path in communication networks, such as, for example, the 5G cellular network as illustrated in FIGS. 1a and 1b.
  • the Gogreen method can also be operated in networks implementing a distributed routing protocol, such as the OSPF protocol.
  • the method is executed in each router of the network, and the router block "Router Link State Advertisment" (Router LSA) in the message “Link State Update” (LSU) which is used for each router announces its interfaces , its neighbors and metric values to reach these neighbors, is modified to include a field announcing the two metrics of bandwidth and energy consumption.
  • Router LSA Route Link State Advertisment
  • LSU Link State Update
  • a source-destination pair corresponding to a transmitter of a data stream and a receiver of the stream
  • 'k' varies between 1 and 5 for a graph with nodes that vary between 10 and 100.
  • a first step (202) the method makes it possible to determine a non-zero set of candidates of 'k' paths between the source and the destination presenting the first performance metric 'w1', without impose a minimum constraint or restriction on this first metric.
  • the method selects (206) directly the corresponding path.
  • the method makes it possible to classify (204) the candidates according to the second performance metric 'w2'.
  • the ranking step consists of ordering the 'k' candidates according to an increasing or decreasing value of the second performance metric.
  • the method makes it possible to select
  • the selection step consists of selecting the candidate with the highest or lowest value in the ranking to enable the transmission of the data stream between the source and the destination via this path.
  • the selected candidate then corresponds to the path offering optimized performance with respect to the two metrics.
  • the step of determining paths I having the best values of the performance metric considered further comprises the classification step, a step of sorting the candidates to keep as candidates only the paths without loop.
  • the step of determining the best paths according to a performance metric is based on the well-known Yen algorithm (JK Yen, "Finding the Shortest Loop Paths in a Network", Management Science (Vol 17 , No. 1 1, pp. 712-71 6), 1971) which makes it possible to generate the 'k' shortest paths without loops in a graph, and the classification step is done directly on the candidates without loop.
  • Such an implementation corresponds to the scenarios where the performance priority is given to the bandwidth.
  • the GoGreen method calculates (step 304) a non-zero set of k best paths by considering as first metric the available bandwidth (w1) of the links, without imposing a minimum constraint or a restriction on this first metric. It determines the k loopless paths that have the highest available bandwidth, the bandwidth of a path being considered to be equal to the minimum bandwidths of the links that make up that path. If only one path is candidate (OUI branch of 306), the method makes it possible to select it (31 0) to make it possible to activate the transmission of the data flow between the source and the destination via this path. If several paths are candidates (branch NO of 306), the method makes it possible to classify (308) the candidates according to the value of the consumption
  • the energy consumption of a path being calculated by summing the energy consumption of the links composing the path.
  • the method makes it possible to select the path which has the smallest end-to-end energy consumption to enable the transmission of the data stream between the source and the destination via this process. path.
  • the GoGreen method calculates (step 404) a non-zero set of k best paths by considering as first metric the energy consumption (w1) of the links, without imposing a minimum constraint or a restriction on this first metric. It determines the k loopless paths that have the lowest end-to-end energy consumption, the energy consumption of a path being calculated by summing the energy consumption of the links making up the path.
  • the method allows to select it (410) to enable the transmission of data flow between the source and the destination via this path. If several paths are candidates (NOT branch of 406), the method makes it possible to classify (408) the candidates according to the value of the available bandwidth of each candidate, the bandwidth of a path being considered as being equal to the minimum of the bands passers of the links that make up this path. In the next step (410), the method makes it possible to select the path that has the largest bandwidth available to enable the transmission of the data stream between the source and the destination via this path.
  • the calculation step (304, 404) applies a Yen-type algorithm that makes it possible to determine the k shortest paths without a loop.
  • Figure 5 illustrates a sequence of steps (500) of a variant of the method of the invention in an embodiment where the traffic requirements to be routed in terms of quality of service (QoS) are considered.
  • QoS quality of service
  • the previously described GoGreen method operates without having to know beforehand the specific traffic requirements to be routed in terms of QoS (for example, the threshold rate required by the traffic of data).
  • QoS for example, the threshold rate required by the traffic of data.
  • the method makes it possible to generate the k paths, where 'k' is a non-zero integer having the best available bandwidth, without imposing a minimum constraint or a restriction on this first metric. Then, it selects, among these k paths, the one with the best value of energy consumption. However, in this mode, it may happen that the path ultimately selected is a path that reduces energy consumption but which however does not ensure the quality of service required by the traffic to route.
  • An advantageous variant of the method of the invention in the embodiment according to FIG. 3 consists in taking into account the traffic requirements in the selection of the routing path.
  • the method has a prior knowledge of the bit rate required by the data traffic to be routed (502).
  • the method determines a group 'R' of k paths that offer the best bandwidth (504). If the group R contains only one path (YES branch of 506), the method selects (51 6) this path to initiate the transmission of data between the source and the destination.
  • the method makes it possible to select (508) from among the candidates, a subgroup 'R_QoS' of candidates that make it possible to ensure the traffic requirements.
  • the traffic requirements may include selected quality of service parameters among rate, latency, maximum data packet loss rate, jitter.
  • the method makes it possible to classify (512) the candidates of the initial group R according to the second metric of energy consumption, and to select (51 6) from the group R the path presenting the best value according to the second metric of energy consumption.
  • the method makes it possible to classify (514) the candidates of the subgroup R_QoS according to the second metric of energy consumption, and to select (516) among the group R_QoS the path presenting the best value according to the second metric of energy consumption.
  • FIG. 6 illustrates a sequence of stream route construction steps (600) incorporating the routing path determination method of the invention, in one embodiment where the network is an SDN network, controlled by an SDN controller.
  • Fig. 7 schematically shows an SDN environment in which the method of Fig. 6 can be implemented at the SDN controller (702).
  • SDN controller One of the features of the SDN controller is its ability to have a global view of the network topology. This allows it to execute the method of the invention to calculate the optimal routing path while taking into account different objectives and constraints.
  • the network (SDN) includes SDN switches for the transfer of traffic from the user in the data plane.
  • the implementation of the method of the invention at the level of the SDN controller does not imply any modification or adaptation in the SDN switches or in the exchange protocol (ie Openflow) between the controller and the switch.
  • the network devices in the data plane for example, routers, switches, radio cells, etc.
  • the OpenFlow protocol while the calculation of the routing path is performed in the SDN controller, for example in a "data center" or a server having high performance.
  • the method (600) is triggered by the arrival of a new OpenFlow message "OF PACKETJN" from a given switch or router.
  • This message allows the SDN controller to detect (602) the need to route a new stream within the network. From this message, the SDN controller identifies the source address, the destination address, the transport protocol used, the source and destination port number.
  • the method allows the SDN controller to determine (604) whether the QoS quality of service has priority based on various parameters such as the transport protocol used, the port number that identifies the application, and the destination address. If the QoS has priority (YES branch of 604), the method executes the routing path selection steps according to the operating mode described when the priority is the bandwidth (according to FIG.
  • the method executes the routing path selection steps according to the operating mode described when the priority is the energy consumption (according to FIG. 4).
  • the SDN may decide to use different values of the parameter k for different flow subgroups.
  • the choice of the parameter k makes it possible to limit the number of the best paths selected according to the first metric, for reasons of performance. Indeed, the fact of calculating a precise number of possible paths (in this case k) is more efficient in terms of computing time than calculating all the possible paths.
  • the computation of the paths must be done in real time as soon as a new flow appears in the network, at the level of a router or input switch. This new stream is then detected by the SDN controller which must therefore quickly calculate the path for this stream and set up the corresponding routing configurations in the routers of the calculated path, in order to allow the routing of the stream.
  • the SDN controller determines (610) the switches / routers that are part of this routing path. Then, it prepares (612) the "OF PACKET_OUT" messages which make it possible to configure (614) these switches / routers.
  • SDN updates (61 6) the value of available bandwidth of links on which the stream was routed.
  • the switch / router sends a message to the SDN controller to indicate the end of the transmission of the stream at its level. This allows the controller to update the bandwidth value available to the links.
  • each switch rule in a switch / router is associated with a timer that expires when the switch / router no longer receives packet linked to the stream. In this case, the switch rule is removed and a notification message is sent to the SDN controller.
  • the described stream route construction method makes it possible to coexist in the same network flows having different needs, by the execution of the method of the invention:
  • the available bandwidth at initialization corresponds to the nominal bandwidth. After installing a new path for a given stream, the available bandwidth is then the nominal bandwidth minus the estimated load for that stream.
  • the SDN controller initializes the available bandwidth to the nominal bandwidth value. After installing a path in the data transfer plan for a given stream, the controller updates this metric by subtracting the estimated load for this stream, and this for each link participating in the routing of this stream.
  • the controller updates the bandwidth metric for each link in that path.
  • the bandwidth of the first link 11 becomes 9Mbps
  • that of the second link 12 becomes 8Mbps
  • that of the third link 13 becomes 9Mbps.
  • the X path then has an available bandwidth of 9Mbps. To determine the available bandwidth of a path, it is sufficient to determine the minimum of the values of the available bandwidth of the links that constitute this path.
  • the present invention can be implemented from hardware and / or software elements and operate on a computer. It may be available as a computer program product on a computer readable medium.
  • the support can be electronic, magnetic, optical, electromagnetic or be an infrared type of diffusion medium.
  • Such supports are, for example, Random Access Memory RAMs (ROMs), magnetic or optical tapes, disks or disks (Compact Disk - Read Only Memory (CD-ROM), Compact Disk - Read / Write (CD-R / W) and DVD).
  • ROMs Random Access Memory RAMs
  • CD-ROM Compact Disk - Read Only Memory
  • CD-R / W Compact Disk - Read / Write
  • DVD Compact Disk - Read / Write

Abstract

The present invention relates to a method and a device for determining a data-routing path that can be used to reduce total energy consumption in networks. The methods takes account of both the available bandwidth of the path and the energy consumption of the links, without reducing the quality of service offered to users.

Description

PROCEDE ET DISPOSITIF DE DETERMINATION DE CHEMIN DE ROUTAGE ECONOME EN ENERGIE  METHOD AND DEVICE FOR DETERMINING ENERGY-EFFICIENT ROUTING PATH
Domaine de l'invention Field of the invention
L'invention se situe dans le domaine des réseaux informatiques et télécommunications et concerne l'optimisation du routage des flux de données dans un réseau IP.  The invention lies in the field of computer and telecommunications networks and relates to optimizing the routing of data flows in an IP network.
Etat de la Technique State of the art
Récemment, l'efficacité énergétique est devenue un facteur clé dans la conception des réseaux cellulaires, en particulier les réseaux cellulaires de 5e génération (5G). Ce besoin est animé par une volonté de réduire l'empreinte carbone des communications, minimiser les factures de l'électricité de l'opérateur de réseau ainsi que de prolonger la durée de vie des équipements fonctionnant avec des batteries. En particulier, cette exigence est d'une importance primordiale pour les opérateurs de réseaux dont l'infrastructure réseau est en constante expansion en intégrant de nouvelles technologies d'accès et en augmentant le nombre de points d'accès pour satisfaire le nombre croissant de clients. Recently, energy efficiency has become a key factor in the design of cellular networks, especially cellular networks 5th generation (5G). This need is driven by a desire to reduce the carbon footprint of communications, minimize the grid operator's electricity bills, and extend the life of equipment running on batteries. In particular, this requirement is of paramount importance for network operators whose network infrastructure is constantly expanding by integrating new access technologies and increasing the number of access points to satisfy the growing number of clients. .
Plusieurs études prévoient une croissance spectaculaire du trafic Internet en raison de services de médias en streaming tels que l'IPTV, la vidéo à la demande (VoD) et la vidéoconférence. En effet, ces services nécessitent des chemins de routage avec une bande passante suffisante qui permet d'assurer une faible gigue et peu de perte de paquets. Par conséquent, l'un des principaux défis dans les réseaux 5G est de trouver des chemins qui permettent de réduire la consommation d'énergie sans compromettre les autres indicateurs de performance tels que le débit de l'utilisateur, la gigue ou le pourcentage des paquets perdus. Considérant tous ces paramètres et ces contraintes, les algorithmes de routage deviennent complexes avec de multiples objectifs et contraintes. L'efficacité énergétique dans les réseaux d'accès et d'agrégation 5G constitue ainsi un problème d'optimisation bi-objectif qui doit tenir compte à la fois de la bande passante disponible et de la consommation énergétique des liens, au lieu de ne seulement considérer la bande passante. Several studies predict spectacular growth in Internet traffic due to streaming media services such as IPTV, Video on Demand (VoD) and video conferencing. Indeed, these services require routing paths with sufficient bandwidth that ensures low jitter and little loss of packets. Therefore, one of the biggest challenges in 5G networks is finding ways to reduce power consumption without compromising other performance metrics such as user throughput, jitter, or percentage of packets. lost. Considering all these parameters and constraints, routing algorithms become complex with multiple objectives and constraints. Energy efficiency in 5G access and aggregation networks is therefore a bi-objective optimization problem that must take into account both the available bandwidth and the energy consumption of the links, instead of just consider the bandwidth.
Par ailleurs, la Commission européenne a émis un code de conduite (CoC) sur la consommation d'énergie des équipements haut débit qui indique la consommation électrique maximale autorisée pour chaque technologie de liens. Selon ce rapport, chacune des technologies a sa propre consommation énergétique indépendamment de la bande passante associée. Par exemple, une fibre point-à-point avec une bande passante de 10 Gbps consomme environ 8 Watts, alors qu'une fibre EPON avec la même bande passante consomme environ 13,4 Watts.  In addition, the European Commission has issued a Code of Conduct (CoC) on the energy consumption of broadband equipment that indicates the maximum power consumption allowed for each link technology. According to this report, each technology has its own energy consumption regardless of the associated bandwidth. For example, a point-to-point fiber with a bandwidth of 10 Gbps consumes about 8 Watts, while an EPON fiber with the same bandwidth consumes about 13.4 Watts.
Les figures 1 a et 1 b illustrent pour une même configuration de réseau (100), la puissance qui est consommée sur un chemin de routage selon quels critères sont pris en compte pour déterminer le chemin de routage. Dans cet exemple simplifié, le réseau (100) de type 5G, est composé de deux parties : une partie dite réseau d'accès et d'agrégation (102), et une partie dite réseau cœur (104). Les deux parties du réseau sont couplées via un routeur (103) aussi appelé nœud de bord. Le réseau comprend dans chaque partie, des nœuds ou routeurs (106-1 , 106-i, .... 106-n) qui sont connectés entre eux via des liens (108-1 , 108-j, ... 108-m) pouvant être de différentes technologies.  Figures 1a and 1b illustrate for the same network configuration (100), the power that is consumed on a routing path according to which criteria are taken into account to determine the routing path. In this simplified example, the network (100) type 5G is composed of two parts: a so-called access network and aggregation portion (102), and a so-called core network portion (104). The two parts of the network are coupled via a router (103) also called edge node. The network comprises in each part, nodes or routers (106-1, 106-i, .... 106-n) which are connected to one another via links (108-1, 108-j, ... 108- m) may be of different technologies.
Lors de la transmission ou la réception de paquets, chaque routeur impliqué dans un chemin de routage développe une consommation d'énergie sur son interface réseau qui est fonction de la technologie du lien. Les valeurs indiquées sur les figures 1 a et 1 b sont données à titre d'exemple, et correspondant à des valeurs réelles données dans le code de conduite précité, pour des types de fibres de 1 Gbits/s et 10 Gbits/s, selon le nombre de ports. Un terminal client (1 10) est connecté à une borne WiFi (1 12). Un utilisateur fait une requête pour une vidéo en streaming à partir d'un serveur (1 14) du fournisseur des contenus. Dans le cas de la figure 1 a, le routage des paquets (chemin 1 1 6) est fait en se basant sur la métrique de la bande passante. Ainsi, les liens avec la plus grande passante sont favorisés. Cette politique de routage entraine une consommation énergétique totale du chemin de 132W, correspondant à la somme des consommations énergétiques de chaque lien impliqué dans le chemin entre la source et la destination. Dans le cas de la figure 1 b, le routage des paquets (chemin 1 18) est fait en fonction de la bande passante et de la consommation énergétique des liens. Ainsi, les liens qui assurent une bande passante adéquate et qui consomment moins en termes d'énergie sont favorisés. Cette politique de routage entraine une consommation énergétique totale du chemin de 74W. When transmitting or receiving packets, each router involved in a routing path develops a power consumption on its network interface that is a function of the technology of the link. The values indicated in FIGS. 1a and 1b are given by way of example, and corresponding to actual values given in the aforementioned code of conduct, for fiber types of 1 Gbit / s and 10 Gbit / s, depending on the number of ports. A client terminal (1 10) is connected to a WiFi terminal (1 12). A user requests a streamed video from a server (1 14) of the content provider. In the case of Figure 1a, the packet routing (path 1 1 6) is done based on the metric bandwidth. Thus, the links with the largest passerby are favored. This routing policy entails a total energy consumption of the path of 132W, corresponding to the sum of the energy consumption of each link involved in the path between the source and the destination. In the case of Figure 1b, the packet routing (path 1 18) is made according to the bandwidth and the energy consumption of the links. Thus, links that provide adequate bandwidth and consume less in terms of energy are favored. This routing policy entails a total energy consumption of the path of 74W.
Cet exemple illustre la problématique liée au besoin d'avoir un protocole de routage qui permette de réduire la consommation énergétique.  This example illustrates the problem related to the need to have a routing protocol that reduces energy consumption.
Il existe deux approches principales pour relever le défi d'avoir un protocole de routage qui permet de réduire la consommation énergétique. La première approche consiste à proposer une nouvelle métrique de routage qui prend en considération les paramètres liés à l'énergie, comme le niveau restant de la batterie d'un équipement. Un algorithme de routage calcule les chemins en utilisant cette métrique. La deuxième approche consiste à introduire des modifications dans le protocole de routage lui-même afin de réaliser des économies en termes d'énergie. Dans cette seconde approche, la métrique de routage ne subit aucune modification.  There are two main approaches to meeting the challenge of having a routing protocol that can reduce energy consumption. The first approach is to propose a new routing metric that considers energy related parameters, such as the remaining level of a device's battery. A routing algorithm calculates the paths using this metric. The second approach is to introduce changes to the routing protocol itself in order to achieve energy savings. In this second approach, the routing metric does not undergo any modification.
En ce qui concerne la première approche, les solutions existantes ciblent les réseaux des nœuds ayant une puissance énergétique limitée comme les réseaux ad-hoc ou capteurs. En effet, dans un tel contexte, l'énergie du nœud est une ressource critique qui doit être utilisée efficacement afin d'augmenter la durée de vie du réseau. Par conséquent, une métrique de routage basé sur le niveau de batterie des nœuds ou de la qualité de la liaison est la plus appropriée pour préserver l'énergie de nœuds. With regard to the first approach, the existing solutions target networks of nodes with limited energy power such as ad-hoc networks or sensors. Indeed, in such a context, the node energy is a critical resource that must be used effectively to increase network life. Therefore, a routing metric based on node battery level or link quality is most appropriate for preserving node energy.
La demande de brevet U.S. 2013/0315257 A1 de Welin et al. présente une méthode qui utilise la métrique de consommation d'énergie lors de la commutation du trafic dans les routeurs ou les commutateurs. Cette métrique peut se fonder sur la consommation d'énergie dans les interfaces de liaison, dans les liaisons et dans le nœud. Chaque nœud reçoit la consommation énergétique du reste des nœuds qui se trouvent dans le même domaine de routage. Il envoie également sa consommation énergétique vers les autres nœuds. Ce type de solution ne permet pas d'assurer une Qualité de Service (QoS) requise par les applications. En ne considérant que l'énergie comme unique critère de sélection de la route de bout en bout, cette solution peut opter de router un trafic sensible aux latences (par exemple, appel d'urgence, télévision IP, etc.) par un chemin ne respectant pas leur besoin (par exemple, chemin long causant une grande latence). Bien que cette approche permette de réduire la consommation énergétique du réseau, en ayant considéré la consommation énergétique des interfaces comme métriques, elle ne permet pas d'assurer la qualité de service demandée par les applications, en particulier les applications multimédia qui ont un besoin très spécifique en termes de débit, délais et pourcentages des paquets perdus.  U.S. Patent Application 2013/0315257 A1 to Welin et al. presents a method that uses the power consumption metric when switching traffic in routers or switches. This metric can be based on the power consumption in the link interfaces, in the links and in the node. Each node receives energy consumption from the rest of the nodes that are in the same routing domain. It also sends its energy consumption to other nodes. This type of solution does not ensure a Quality of Service (QoS) required by the applications. Considering only energy as the only end-to-end selection criterion, this solution can choose to route latency-sensitive traffic (for example, emergency call, IPTV, etc.) by a path not respecting their need (for example, long path causing high latency). Although this approach makes it possible to reduce the energy consumption of the network, having considered the energy consumption of the interfaces as metrics, it does not make it possible to ensure the quality of service required by the applications, in particular the multimedia applications which have a very strong need. specific in terms of throughput, delays and percentages of lost packets.
Le brevet U.S. 6,301 ,244 B1 de Huang et al. décrit une méthode pour trouver un chemin entre un nœud source et chaque nœud dans un réseau de communication, de sorte que le retard du chemin n'excède pas une contrainte de délai de chemin ou première métrique et que le coût du chemin ou seconde métrique soit minimisé, chaque métrique étant additive. Un premier chemin qui est le chemin le plus court d'un nœud source à chaque nœud du réseau en termes de première métrique est sélectionné en utilisant l'algorithme de Dijkstra. Les nœuds associés à des chemins dont la métrique dépasse la contrainte imposée sont éliminés. Un graphe d'accessibilité est ensuite construit sur la base des nœuds restants. L'algorithme de Dijkstra est ensuite appliqué sur le graphe d'accessibilité pour déterminer le plus court chemin entre un nœud source et chaque nœud en termes de seconde métrique. Les limites de cette approche sont qu'elle ne vise qu'une utilisation de métriques additives, et non aussi de métriques concaves, telle la bande passante. Par ailleurs le fait d'imposer une contrainte sur la première métrique peut, dans le cas où tous les chemins ont des latences qui dépassent la latence maximale exigée, conduire que l'algorithme de Dijkstra ne propose aucun premier chemin, tous les nœuds étant éliminés. Il existe ainsi un risque de ne pas trouver de route pour acheminer un flux entre une source et une destination. U.S. Patent 6,301,244 B1 to Huang et al. describes a method for finding a path between a source node and each node in a communication network, so that the path delay does not exceed a path delay constraint or first metric and the cost of the path or second metric is minimized, each metric being additive. A first path that is the shortest path from a source node to each network node in terms of a first metric is selected using the Dijkstra algorithm. Nodes associated with paths whose metric exceeds the imposed constraint are eliminated. An accessibility graph is then constructed based on the remaining nodes. The Dijkstra algorithm is then applied to the accessibility graph to determine the shortest path between a source node and each node in terms of a second metric. The limitations of this approach are that it only targets the use of additive metrics, not concave metrics such as bandwidth. In addition, the fact of imposing a constraint on the first metric may, in the case where all the paths have latencies which exceed the maximum latency required, lead that the Dijkstra algorithm does not propose any first path, all the nodes being eliminated. . There is a risk of not finding a route to route a flow between a source and a destination.
En ce qui concerne la seconde approche, l'idée de base consiste à acheminer les paquets de données sur un sous-ensemble donné de liaisons réseau pendant les périodes de faible trafic, au moyen d'une stratégie de coordination entre les routeurs. De cette façon, les interfaces qui ne participent pas dans la commutation du trafic peuvent être mises hors tension, en mode veille, sans provoquer des problèmes de la disponibilité du réseau.  With respect to the second approach, the basic idea is to route the data packets over a given subset of network links during periods of low traffic, using a coordination strategy between the routers. In this way, interfaces that do not participate in traffic switching can be turned off, in standby mode, without causing problems with network availability.
La demande de brevet U.S. 2015/0222537 A1 de Zhang propose une méthode qui permet d'agréger le trafic pour désactiver des interfaces de réseaux ou les mettre en veille et utiliser ainsi le minimum possible des liens dans le réseau, réduisant ainsi la consommation globale du réseau. Cette méthode utilise un algorithme de programmation linéaire dont l'objectif est de maximiser le nombre de liens à mettre en veille et prenant comme contrainte l'état du trafic dans les nœuds du réseau. Ainsi, pour le bon déroulement de l'algorithme, la méthode a besoin des paramètres suivants : le nœud source, le nœud destination, des données sur la topologie du réseau ainsi que des données sur l'état du trafic dans chaque nœud. La méthode considère que la consommation d'énergie des interfaces est la même quelle que soit la technologie utilisée. De plus, la méthode n'est pas compatible avec les protocoles de routages distribués de type « Open Shortest Path First » (OSPF). En effet, une fois que l'interface est désactivée, le protocole OSPF considère que le lien est en panne et va inonder le réseau avec des messages « Link-state advertisements » (LSA) pour informer les autres routeurs. Zhang's US Patent Application 2015/0222537 A1 provides a method for aggregating traffic to disable or suspend network interfaces and thereby use as few links as possible in the network, thereby reducing the overall consumption of the network. network. This method uses a linear programming algorithm whose objective is to maximize the number of links to put on standby and taking as constraint the traffic state in the nodes of the network. Thus, for the smooth running of the algorithm, the method needs the following parameters: the source node, the destination node, data on the topology of the network as well as data on the state of the traffic in each node. The method considers that the energy consumption of interfaces is the same regardless of the technology used. In addition, the method is not compatible with Open Shortest Path First (OSPF) distributed routing protocols. Indeed, once the interface is disabled, the OSPF protocol considers that the link is down and will flood the network with messages "Link-state advertisements" (LSA) to inform other routers.
Il existe alors le besoin d'une solution appropriée pour déterminer pour chaque flux à router, un chemin de routage permettant à la fois de satisfaire les besoins en termes de qualité de service du flux tout en minimisant la consommation énergétique globale du réseau.  There is then the need for an appropriate solution to determine for each stream to be routed, a routing path that both meets the needs in terms of quality of service of the stream while minimizing the overall energy consumption of the network.
La présente invention répond à ce besoin.  The present invention meets this need.
Résumé de l'invention Summary of the invention
Un objet de la présente invention est de proposer un procédé de détermination de chemin de routage qui permet de réduire la consommation d'énergie totale dans les réseaux, qui tienne compte à la fois de la bande passante disponible du chemin et de la consommation énergétique des interfaces des nœuds, et sans dégrader la qualité de service offerte aux utilisateurs. La présente invention présente l'avantage de pouvoir être mise en œuvre sur des métriques concaves, par exemple pour la bande passante où la métrique du chemin de bout en bout est le minimum de la métrique des liens, ou être mise en œuvre sur des métriques additives, par exemple pour la consommation énergétique où la métrique du chemin de bout en bout est la somme des métriques de liens.  An object of the present invention is to propose a routing path determination method which reduces the total energy consumption in the networks, taking into account both the available bandwidth of the path and the energy consumption of the networks. nodes, and without degrading the quality of service offered to users. The present invention has the advantage of being able to be implemented on concave metrics, for example for the bandwidth where the metric of the end-to-end path is the minimum of the metric of the links, or to be implemented on metrics additives, for example for energy consumption where the end-to-end path metric is the sum of the link metrics.
Un autre objet de la présente invention est de proposer un procédé de détermination de chemin de routage économe en énergie tout en préservant les contraintes de qualité de service requises par les flux de données, quelle que soit l'hétérogénéité des technologies des réseaux utilisées. D'une manière générale, le procédé de l'invention s'appuie sur la mise en œuvre d'un algorithme qui comporte deux niveaux de filtrage : un premier filtrage pour cibler l'ensemble des meilleurs chemins possibles selon une première métrique prioritaire suivi d'un second filtrage pour y sélectionner le meilleur chemin selon une seconde métrique. Another object of the present invention is to propose a method of determining an energy-efficient routing path while preserving the quality of service constraints required by the data streams, whatever the heterogeneity of the technologies of the networks used. In general, the method of the invention relies on the implementation of an algorithm that comprises two levels of filtering: a first filtering to target all the best possible paths according to a first priority metric followed by a second filtering to select the best path according to a second metric.
L'invention trouvera des applications avantageuses dans tous les domaines où fournisseurs et opérateurs de réseaux de télécommunication sont désireux de réduire la consommation énergétique des réseaux tout en assurant la qualité de service requise par les flux de données devant y transiter. Ainsi sans limitation, l'invention peut être implémentée:  The invention will find advantageous applications in all areas where telecommunication network providers and operators are eager to reduce the energy consumption of the networks while ensuring the quality of service required by the data flows to transit. Thus without limitation, the invention can be implemented:
- dans le domaine des réseaux cellulaires 5G pour tout opérateur ou équipementier ;  - in the field of 5G cellular networks for any operator or equipment manufacturer;
- dans le domaine des réseaux de distribution vidéo ;  - in the field of video distribution networks;
- dans le domaine des réseaux temps-réel événementiels (spectacles) ;- in the field of real-time event networks (shows);
- dans le domaine des réseaux domestiques ; - in the field of home networks;
- dans le domaine des réseaux sans-fil pour applications industrielles, dont en particulier les réseaux avec équipements alimentés par batteries ;  - in the field of wireless networks for industrial applications, including networks with battery-powered equipment;
- potentiellement pour les industriels fournisseurs de solutions de communication sans-fil sans infrastructure pour la sécurité publique ou la logistique. - potentially for industrial providers of wireless communication solutions without infrastructure for public security or logistics.
Avantageusement, le procédé de l'invention est facile à implémenter, et adaptable suivant le besoin de l'opérateur, selon la performance prioritaire recherchée, qu'elle soit d'assurer la qualité de service pour les flux, ou de réduire la consommation énergétique.  Advantageously, the method of the invention is easy to implement, and adaptable according to the needs of the operator, depending on the priority performance sought, whether it is to ensure the quality of service for the flows, or to reduce energy consumption. .
Si la priorité est d'assurer la qualité de service pour les flux, par exemple pour un flux vidéo, le procédé permet de déterminer les chemins ayant la meilleure bande passante disponible, puis ensuite de sélectionner parmi ceux-ci, celui qui présente la consommation énergétique la plus basse. Si la priorité est de réduire la consommation énergétique, dans le cas par exemple de flux qui n'ont pas un besoin spécifique en termes de qualité de services comme certains types de communications liés à des objets connectés, le procédé permet de déterminer les chemins qui présentent la plus petite consommation énergétique, puis de sélectionner parmi ceux-ci, celui qui a la meilleure bande passante disponible. If the priority is to ensure the quality of service for the streams, for example for a video stream, the method makes it possible to determine the paths having the best available bandwidth, and then to select among these, the one presenting the consumption. lowest energy level. If the priority is to reduce the energy consumption, in the case for example of flows that do not have a specific need in terms of quality of services as certain types of communications related to connected objects, the method makes it possible to determine the paths that have the lowest energy consumption, then select from those the one with the best available bandwidth.
Dans une implémentation préférentielle, pour calculer les meilleurs chemins suivant une métrique de performance donnée, le procédé met en œuvre un algorithme de Yen, qui permet de trouver les k meilleurs chemins sans boucle.  In a preferred implementation, for calculating the best paths according to a given performance metric, the method implements a Yen algorithm, which makes it possible to find the best k paths without a loop.
Pour obtenir les résultats recherchés, il est proposé un procédé de détermination de chemin de routage de paquets de données entre un nœud source et un nœud destinataire d'un réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des premières et seconde métriques de performance, le procédé comprenant les étapes de :  To obtain the desired results, it is proposed a method of determining a data packet routing path between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second performance metrics, the method comprising the steps of:
- calculer selon la première métrique de performance sur un graphe représentatif des nœuds du réseau, un ensemble de candidats représentant les meilleurs chemins sans boucle entre le nœud source et le nœud destinataire, un chemin incluant au moins un lien, l'ensemble de candidats contenant un ou plusieurs candidats;  calculating, according to the first performance metric on a representative graph of the nodes of the network, a set of candidates representing the best paths without a loop between the source node and the destination node, a path including at least one link, the set of candidates containing one or more candidates;
- classer les candidats selon la seconde métrique de performance ; et - classify the candidates according to the second performance metric; and
- sélectionner un candidat selon le résultat de l'étape de classement, ledit candidat sélectionné représentant le chemin de routage des paquets de données entre le nœud source et le nœud destinataire. selecting a candidate according to the result of the ranking step, said selected candidate representing the routing path of the data packets between the source node and the destination node.
Selon des modes de réalisation :  According to embodiments:
- l'étape de classement consiste à ordonner les candidats selon une valeur croissante ou décroissante de la second métrique de performance, et l'étape de sélection consiste à sélectionner le candidat présentant la valeur la plus haute ou la plus basse ; - l'étape de calcul consiste à opérer un algorithme de calcul de 'k' chemins les plus courts sans boucle sur un graphe représentatif des nœuds du réseau, 'k' étant un nombre entier non nul prédéfini ; the ranking step consists in ordering the candidates according to an increasing or decreasing value of the second performance metric, and the selection step consists in selecting the candidate presenting the highest or lowest value; the calculation step consists in operating an algorithm for calculating 'k' shortest paths without a loop on a graph representative of the nodes of the network, 'k' being a predefined non-zero integer;
- l'algorithme est l'algorithme de Yen ;  the algorithm is the Yen algorithm;
- les métriques de performance sont la bande passante disponible et la consommation énergétique de chaque lien ; - the performance metrics are the available bandwidth and the energy consumption of each link;
- la première métrique est la bande passante disponible et la deuxième métrique est la consommation énergétique ;  the first metric is the available bandwidth and the second metric is the energy consumption;
- l'étape de calcul consiste à déterminer un ensemble de chemins sans boucle possédant une bande passante disponible la plus élevée et l'étape de sélection consiste à sélectionner le chemin présentant la plus petite consommation énergétique entre le nœud source et le nœud destinataire ;  the calculation step consists in determining a set of loopless paths having the highest available bandwidth and the selection step consists in selecting the path having the lowest energy consumption between the source node and the destination node;
- la première métrique est la consommation énergétique et la deuxième métrique est la bande passante disponible ;  - the first metric is the energy consumption and the second metric is the available bandwidth;
- l'étape de calcul consiste à déterminer un ensemble de chemins sans boucle présentant une consommation énergétique la plus petite et l'étape de sélection consiste à sélectionner le chemin présentant la bande passante disponible la plus élevée entre le nœud source et le nœud destinataire ;  the calculation step consists in determining a set of loopless paths having the lowest power consumption and the selection step consists in selecting the path presenting the highest available bandwidth between the source node and the destination node;
- le procédé comprend de plus après l'étape de calcul, une étape pour filtrer parmi les candidats, un sous-ensemble de candidats selon des paramètres de qualité de service pour le flux de données ;  the method further comprises, after the calculation step, a step for filtering among the candidates a subset of candidates according to quality of service parameters for the data stream;
- les paramètres de qualité de service sont choisis parmi le débit, la latence, le taux de perte maximal de paquets de données, la gigue.  the quality of service parameters are chosen from among the bit rate, the latency, the maximum loss rate of data packets, the jitter.
L'invention couvre un dispositif de détermination de chemin de routage de paquets de données entre un nœud source et un nœud destinataire d'un réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des premières et seconde métriques de performance, le dispositif comprenant des moyens pour mettre en œuvre les étapes du procédé revendiqué. The invention covers a data packet routing path determining device between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second links. metrics of performance, the device comprising means for implementing the steps of the claimed method.
Selon les modes de réalisation :  According to the embodiments:
- les liens entre les nœuds du réseau sont filaires et/ou non filaires ; - les paquets de données sont des paquets d'un flux de données multimédia. - the links between the nodes of the network are wired and / or not wired; the data packets are packets of a multimedia data stream.
L'invention couvre aussi un système de communication apte à router dans un réseau des paquets de données entre un nœud source et un nœud destinataire parmi une pluralité de nœuds reliés par des liens, les liens présentant au moins des premières et seconde métriques de performance, le système comprenant au moins un dispositif tel que revendiqué.  The invention also covers a communication system able to route in a network data packets between a source node and a destination node among a plurality of nodes connected by links, the links having at least first and second performance metrics, the system comprising at least one device as claimed.
Dans une réalisation, le dispositif revendiqué est implémenté dans au moins un nœud du réseau.  In one embodiment, the claimed device is implemented in at least one node of the network.
Dans une autre réalisation, le réseau est de type « Software- In another embodiment, the network is of the "Software-
Defined Networking » (SDN) comprenant un contrôleur SDN, et le dispositif revendiqué est implémenté dans le contrôleur SDN de ce réseau. Defined Networking "(SDN) including an SDN controller, and the claimed device is implemented in the SDN controller of that network.
L'invention couvre aussi un procédé opéré par un contrôleur SDN dans un réseau de type « Software- Défi ned Networking » (SDN), pour construire une route par flux de données, le réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des premières et seconde métriques de performance, le contrôleur SDN étant apte à détecter une requête de routage de flux et identifier l'adresse d'un nœud source et l'adresse d'un nœud destinataire pour le flux, le procédé comprenant les étapes du procédé de détermination de chemin de routage tel que revendiqué.  The invention also covers a method operated by an SDN controller in a Software-Challenge Networking (SDN) network, for constructing a data flow route, the network comprising a plurality of nodes and links between the nodes. the links having at least first and second performance metrics, the SDN controller being adapted to detect a stream routing request and identify the address of a source node and the address of a destination node for the stream, the method comprising the steps of the routing path determination method as claimed.
Selon des modes de réalisation, l'exécution des étapes du procédé de détermination de chemin de routage de paquets de données est faite selon que la qualité de service pour un flux de données est prioritaire ou non L'invention peut opérer sous la forme d'un produit programme d'ordinateur qui comprend des instructions de code permettant d'effectuer les étapes du procédé revendiqué lorsque le programme est exécuté sur un ordinateur. According to embodiments, the execution of the steps of the data packet routing path determination method is done according to whether the quality of service for a data stream has priority or not The invention may operate in the form of a computer program product that includes code instructions for performing the claimed process steps when the program is run on a computer.
Description des figures  Description of figures
Différents aspects et avantages de l'invention vont apparaître en appui de la description d'un mode préféré d'implémentation de l'invention mais non limitatif, avec référence aux figures ci-dessous : Various aspects and advantages of the invention will appear in support of the description of a preferred embodiment of the invention, but not limiting, with reference to the figures below:
Les figures 1 a et 1 b illustrent la puissance qui est consommée sur un chemin de routage selon quels critères sont pris en compte pour déterminer le chemin de routage; Figures 1a and 1b illustrate the power that is consumed on a routing path according to which criteria are taken into account to determine the routing path;
La figure 2 illustre un enchaînement d'étapes selon le procédé de l'invention, pour déterminer un chemin de routage; FIG. 2 illustrates a sequence of steps according to the method of the invention, to determine a routing path;
La figure 3 détaille les étapes du procédé de l'invention dans un mode de réalisation; Figure 3 details the steps of the method of the invention in one embodiment;
La figure 4 détaille les étapes du procédé de l'invention dans un autre mode de réalisation; Figure 4 details the steps of the method of the invention in another embodiment;
La figure 5 illustre un enchaînement d'étapes selon une variante du procédé de l'invention dans un autre mode de réalisation ; La figure 6 illustre un enchaînement d'étapes du procédé de l'invention dans un mode de réalisation pour un réseau SDN ; Figure 5 illustrates a sequence of steps according to a variant of the method of the invention in another embodiment; Figure 6 illustrates a sequence of steps of the method of the invention in one embodiment for an SDN network;
La figure 7 montre schématiquement un environnement de réseau SDN dans lequel l'invention peut être implémentée. Figure 7 schematically shows an SDN environment in which the invention can be implemented.
Description détaillée de l'invention Un avantage majeur du procédé de l'invention, aussi désigné procédé « GoGreen », est de réduire la consommation d'énergie dans les réseaux lors du calcul d'un chemin de routage, en tenant compte à la fois de la bande passante disponible des liens entre les nœuds et de leur consommation énergétique. DETAILED DESCRIPTION OF THE INVENTION A major advantage of the process of the invention, also referred to as the "GoGreen" process, is to reduce energy consumption in networks when calculating a routing path, taking into account both the available bandwidth of links between nodes and their energy consumption.
La figure 2 illustre un enchaînement d'étapes (200) du procédé GoGreen de l'invention. Le procédé permet de déterminer un chemin de routage dans des réseaux de communication, tels que par exemple, le réseau cellulaire 5G comme illustré sur les figures 1 a et 1 b. Le procédé Gogreen peut aussi être opéré dans des réseaux mettant en œuvre un protocole de routage distribué, comme par exemple le protocole OSPF. Dans ce dernier cas, le procédé est exécuté dans chaque routeur du réseau, et le bloc routeur « Router Link State Advertisment » (Router LSA) dans le message « Link State Update » (LSU) qui est utilisé pour que chaque routeur annonce ses interfaces, ses voisins et les valeurs des métriques pour atteindre ces voisins, est modifié pour inclure un champ annonçant les deux métriques de bande passante et de consommation énergétique.  Figure 2 illustrates a sequence of steps (200) of the GoGreen process of the invention. The method makes it possible to determine a routing path in communication networks, such as, for example, the 5G cellular network as illustrated in FIGS. 1a and 1b. The Gogreen method can also be operated in networks implementing a distributed routing protocol, such as the OSPF protocol. In the latter case, the method is executed in each router of the network, and the router block "Router Link State Advertisment" (Router LSA) in the message "Link State Update" (LSU) which is used for each router announces its interfaces , its neighbors and metric values to reach these neighbors, is modified to include a field announcing the two metrics of bandwidth and energy consumption.
Pour initier le procédé, plusieurs paramètres sont requis, à savoir :To initiate the process, several parameters are required, namely:
- une représentation sous forme de graphe des nœuds du réseau où chaque lien entre les nœuds est caractérisé par deux métriques de performance (w1 , w2) ; a graphical representation of the nodes of the network where each link between the nodes is characterized by two performance metrics (w1, w2);
- une paire source-destination (src,dst) correspondant à un émetteur d'un flux de données et un récepteur du flux ; et  a source-destination pair (src, dst) corresponding to a transmitter of a data stream and a receiver of the stream; and
- un nombre maximal 'k' des meilleurs chemins à calculer, le paramètre 'k' étant un nombre entier non nul prédéfini.  a maximum number 'k' of the best paths to be computed, the parameter 'k' being a predefined non-zero integer.
Typiquement, 'k' varie entre 1 et 5 pour un graphe ayant des nœuds qui varient entre 10 et 100.  Typically, 'k' varies between 1 and 5 for a graph with nodes that vary between 10 and 100.
Dans une première étape (202), le procédé permet de déterminer un ensemble non nul de candidats de 'k' chemins entre la source et la destination présentant la première métrique de performance 'w1 ', sans imposer une contrainte minimale ou une restriction sur cette première métrique. In a first step (202), the method makes it possible to determine a non-zero set of candidates of 'k' paths between the source and the destination presenting the first performance metric 'w1', without impose a minimum constraint or restriction on this first metric.
Dans le cas où un seul candidat est proposé, le procédé sélectionne (206) directement le chemin correspondant.  In the case where only one candidate is proposed, the method selects (206) directly the corresponding path.
Dans le cas où plusieurs candidats sont obtenus du calcul précédent, le procédé permet de classer (204) les candidats selon la deuxième métrique de performance 'w2'. L'étape de classement consiste à ordonner les 'k' candidats selon une valeur croissante ou décroissante de la seconde métrique de performance.  In the case where several candidates are obtained from the above calculation, the method makes it possible to classify (204) the candidates according to the second performance metric 'w2'. The ranking step consists of ordering the 'k' candidates according to an increasing or decreasing value of the second performance metric.
Après l'étape de classement, le procédé permet de sélectionner After the classification step, the method makes it possible to select
(206) un candidat présentant la meilleure valeur pour la deuxième métrique w2. L'étape de sélection consiste à sélectionner le candidat présentant la valeur la plus haute ou la plus basse dans le classement pour permettre d'activer l'émission du flux de données entre la source et la destination via ce chemin. Le candidat sélectionné correspond alors au chemin offrant des performances optimisées relativement au deux métriques. (206) a candidate with the best value for the second metric w2. The selection step consists of selecting the candidate with the highest or lowest value in the ranking to enable the transmission of the data stream between the source and the destination via this path. The selected candidate then corresponds to the path offering optimized performance with respect to the two metrics.
Dans une implémentation, l'étape de détermination de chemins I présentant les meilleurs valeurs de la métrique de performance considérée comprend de plus avant l'étape de classement, une étape de tri des candidats pour ne conserver comme candidats que les chemins sans boucle.  In an implementation, the step of determining paths I having the best values of the performance metric considered further comprises the classification step, a step of sorting the candidates to keep as candidates only the paths without loop.
Dans une implémentation préférentielle, l'étape de détermination des meilleurs chemins selon une métrique de performance est basée sur l'algorithme bien connu de Yen (J. K. Yen, « Finding the k shortest loopless paths in a network », Management science (vol. 17, no. 1 1 , pp. 712-71 6), 1971 ) qui permet de générer les 'k' plus courts chemins sans boucles dans un graphe, et l'étape de classement est faite directement sur les candidats sans boucle. La figure 3 détaille les étapes (300) du procédé de l'invention, dans un mode de réalisation (302) où la première métrique 'w1 =BP' est la bande passante disponible, et la deuxième métrique 'w2=PW est la consommation énergétique. Une telle implémentation correspond aux scénarios où la priorité de performance est donnée à la bande passante. In a preferred implementation, the step of determining the best paths according to a performance metric is based on the well-known Yen algorithm (JK Yen, "Finding the Shortest Loop Paths in a Network", Management Science (Vol 17 , No. 1 1, pp. 712-71 6), 1971) which makes it possible to generate the 'k' shortest paths without loops in a graph, and the classification step is done directly on the candidates without loop. FIG. 3 details the steps (300) of the method of the invention, in one embodiment (302) where the first metric 'w1 = BP' is the available bandwidth, and the second metric 'w2 = PW is the consumption energy. Such an implementation corresponds to the scenarios where the performance priority is given to the bandwidth.
Le procédé GoGreen calcule (étape 304) un ensemble non nul des k meilleurs chemins en considérant comme première métrique la bande passante disponible (w1 ) des liens, sans imposer une contrainte minimale ou une restriction sur cette première métrique. Il détermine les k chemins sans boucle qui possèdent la bande passante disponible la plus élevée, la bande passante d'un chemin étant considérée comme étant égale au minimum des bandes passantes des liens qui constituent ce chemin. Si un seul chemin est candidat (branche OUI de 306), le procédé permet de le sélectionner (31 0) pour permettre d'activer l'émission du flux de données entre la source et la destination via ce chemin. Si plusieurs chemins sont candidats (branche NON de 306), le procédé permet de classer (308) les candidats selon la valeur de la consommation The GoGreen method calculates (step 304) a non-zero set of k best paths by considering as first metric the available bandwidth (w1) of the links, without imposing a minimum constraint or a restriction on this first metric. It determines the k loopless paths that have the highest available bandwidth, the bandwidth of a path being considered to be equal to the minimum bandwidths of the links that make up that path. If only one path is candidate (OUI branch of 306), the method makes it possible to select it (31 0) to make it possible to activate the transmission of the data flow between the source and the destination via this path. If several paths are candidates (branch NO of 306), the method makes it possible to classify (308) the candidates according to the value of the consumption
énergétique de bout-en-bout, la consommation énergétique d'un chemin étant calculée en faisant la somme des consommations énergétiques des liens composant le chemin. A l'étape suivante (31 0), le procédé permet de sélectionner le chemin qui présente la plus petite consommation énergétique de bout-en-bout pour permettre d'activer l'émission du flux de données entre la source et la destination via ce chemin. end-to-end energy consumption, the energy consumption of a path being calculated by summing the energy consumption of the links composing the path. In the next step (31 0), the method makes it possible to select the path which has the smallest end-to-end energy consumption to enable the transmission of the data stream between the source and the destination via this process. path.
La figure 4 détaille les étapes (400) du procédé de l'invention, dans un mode de réalisation (402) où la première métrique 'w1 =PW est la consommation énergétique, et la deuxième métrique 'w2=BP' est bande passante disponible. Une telle implémentation correspond aux scénarios où la priorité de performance est donnée à la consommation énergétique. Le procédé GoGreen calcule (étape 404) un ensemble non nul des k meilleurs chemins en considérant comme première métrique la consommation énergétique (w1 ) des liens, sans imposer une contrainte minimale ou une restriction sur cette première métrique. Il détermine les k chemins sans boucle qui possèdent la consommation énergétique de bout-en-bout la plus basse, la consommation énergétique d'un chemin étant calculée en faisant la somme des consommations énergétiques des liens composant le chemin. Si un seul chemin est candidat (branche OUI de 406), le procédé permet de le sélectionner (410) pour permettre d'activer l'émission du flux de données entre la source et la destination via ce chemin. Si plusieurs chemins sont candidats (branche NON de 406), le procédé permet de classer (408) les candidats selon la valeur de la bande passante disponible de chaque candidat, la bande passante d'un chemin étant considérée comme étant égale au minimum des bandes passantes des liens qui constituent ce chemin. A l'étape suivante (410), le procédé permet de sélectionner le chemin qui présente la plus grande bande passante disponible pour permettre d'activer l'émission du flux de données entre la source et la destination via ce chemin. FIG. 4 details the steps (400) of the method of the invention, in one embodiment (402) where the first metric 'w1 = PW is the energy consumption, and the second metric' w2 = BP 'is available bandwidth . Such an implementation corresponds to the scenarios where the priority of performance is given to energy consumption. The GoGreen method calculates (step 404) a non-zero set of k best paths by considering as first metric the energy consumption (w1) of the links, without imposing a minimum constraint or a restriction on this first metric. It determines the k loopless paths that have the lowest end-to-end energy consumption, the energy consumption of a path being calculated by summing the energy consumption of the links making up the path. If only one path is candidate (YES branch of 406), the method allows to select it (410) to enable the transmission of data flow between the source and the destination via this path. If several paths are candidates (NOT branch of 406), the method makes it possible to classify (408) the candidates according to the value of the available bandwidth of each candidate, the bandwidth of a path being considered as being equal to the minimum of the bands passers of the links that make up this path. In the next step (410), the method makes it possible to select the path that has the largest bandwidth available to enable the transmission of the data stream between the source and the destination via this path.
Dans une implémentation préférentielle, l'étape de calcul (304, 404) applique un algorithme de type Yen qui permet de déterminer les k chemins les plus courts sans boucle. In a preferred implementation, the calculation step (304, 404) applies a Yen-type algorithm that makes it possible to determine the k shortest paths without a loop.
La figure 5 illustre un enchaînement d'étapes (500) d'une variante du procédé de l'invention dans un mode de réalisation où les exigences du trafic à router en termes de qualité de service (QoS) sont considérées. Figure 5 illustrates a sequence of steps (500) of a variant of the method of the invention in an embodiment where the traffic requirements to be routed in terms of quality of service (QoS) are considered.
Cette variante s'applique particulièrement pour le cas où la consommation énergétique est la performance prioritaire. En effet, le procédé GoGreen décrit précédemment opère sans avoir besoin de connaître au préalable les exigences spécifiques du trafic à router en termes de QoS (par exemple, le débit seuil requis par le trafic des données). Dans l'implémentation selon la figure 3, le procédé permet de générer les k chemins, 'k' étant un entier non nul, ayant la meilleure bande passante disponible, sans imposer une contrainte minimale ou une restriction sur cette première métrique. Ensuite, il sélectionne, parmi ces k chemins, celui qui a la meilleure valeur de consommation énergétique. Cependant, dans ce mode, il peut arriver que le chemin sélectionné au final soit un chemin qui permet de réduire la consommation énergétique mais qui cependant ne permet pas d'assurer la qualité de service requise par le trafic à router. En effet, quand le procédé considère les exigences spécifiques de chaque flux de données lors de la détermination des candidats, il peut satisfaire au mieux les différentes exigences du trafic. Par exemple, le procédé doit déterminer un chemin de routage pour un flux vidéo qui requiert un débit de 0.5 Mbits/s. Si on suppose 'k=4', le procédé génère 4 chemins (ch) qui présentent les meilleurs débits : ch1 = (5Mbits/s, 10Watts), ch2 = (2Mbits/s, 6Watts), ch3 = (1 Mbits/s, 4Watts) et ch4 = (0.2Mbits/s, 2Watts). Dans l'étape de sélection, le procédé va sélectionner le quatrième chemin ch4 pour router le trafic puisqu'il possède la consommation énergétique la plus petite. Cependant, le débit que le chemin ch4 peut assurer ne permet pas de satisfaire les exigences du trafic spécifique en termes de débit qui est de (0.5Mbits/s). This variant is particularly applicable for the case where energy consumption is the priority performance. Indeed, the previously described GoGreen method operates without having to know beforehand the specific traffic requirements to be routed in terms of QoS (for example, the threshold rate required by the traffic of data). In the implementation according to FIG. 3, the method makes it possible to generate the k paths, where 'k' is a non-zero integer having the best available bandwidth, without imposing a minimum constraint or a restriction on this first metric. Then, it selects, among these k paths, the one with the best value of energy consumption. However, in this mode, it may happen that the path ultimately selected is a path that reduces energy consumption but which however does not ensure the quality of service required by the traffic to route. Indeed, when the method considers the specific requirements of each data stream during the determination of the candidates, it can best meet the different requirements of the traffic. For example, the method must determine a routing path for a video stream that requires a bit rate of 0.5 Mbps. Assuming 'k = 4', the process generates 4 paths (ch) with the best rates: ch1 = (5Mbits / s, 10Watts), ch2 = (2Mbits / s, 6Watts), ch3 = (1 Mbps) , 4Watts) and ch4 = (0.2Mbits / s, 2Watts). In the selection step, the method will select the fourth path ch4 to route the traffic since it has the lowest power consumption. However, the bit rate that the ch4 path can provide does not satisfy the specific traffic requirements in terms of bit rate (0.5Mbps).
Une variante avantageuse du procédé de l'invention dans le mode de réalisation selon la figure 3, consiste à prendre en compte les exigences du trafic dans la sélection du chemin de routage. Dans cette version qui considère comme première métrique la bande passante des liens (w1 ) et comme deuxième métrique la consommation énergétique (w2), le procédé a une connaissance préalable du débit requis par le trafic des données à router (502). Le procédé détermine un groupe 'R' des k chemins qui offrent la meilleure bande passante (504). Si le groupe R ne contient qu'un seul chemin (branche OUI de 506), le procédé sélectionne (51 6) ce chemin pour initier la transmission des données entre la source et la destination. Si plusieurs chemins sont candidats (branche NON de 506), le procédé permet de sélectionner (508) parmi les candidats, un sous-groupe 'R_QoS' de candidats qui permettent d'assurer les exigences du trafic. Les exigences du trafic peuvent englober des paramètres de qualité de service choisis parmi le débit, la latence, le taux de perte maximal de paquets de données, la gigue. An advantageous variant of the method of the invention in the embodiment according to FIG. 3 consists in taking into account the traffic requirements in the selection of the routing path. In this version, which considers as first metric the bandwidth of the links (w1) and as the second metric the energy consumption (w2), the method has a prior knowledge of the bit rate required by the data traffic to be routed (502). The method determines a group 'R' of k paths that offer the best bandwidth (504). If the group R contains only one path (YES branch of 506), the method selects (51 6) this path to initiate the transmission of data between the source and the destination. If several paths are candidates (branch NO of 506), the method makes it possible to select (508) from among the candidates, a subgroup 'R_QoS' of candidates that make it possible to ensure the traffic requirements. The traffic requirements may include selected quality of service parameters among rate, latency, maximum data packet loss rate, jitter.
Si la liste de candidats du sous-groupe R_QoS est vide (branche OUI de 510), le procédé permet de classer (512) les candidats du groupe initial R selon la seconde métrique de consommation énergétique, et sélectionner (51 6) parmi le groupe R le chemin présentant la meilleure valeur selon la seconde métrique de consommation énergétique.  If the candidate list of the R_QoS subgroup is empty (YES branch of 510), the method makes it possible to classify (512) the candidates of the initial group R according to the second metric of energy consumption, and to select (51 6) from the group R the path presenting the best value according to the second metric of energy consumption.
Si la liste de candidats du sous-groupe R_QoS n'est pas vide (branche NON de 510), le procédé permet de classer (514) les candidats du sous-groupe R_QoS selon la seconde métrique de consommation énergétique, et sélectionner (516) parmi le groupe R_QoS le chemin présentant la meilleure valeur selon la seconde métrique de consommation énergétique.  If the list of candidates of the subgroup R_QoS is not empty (branch NOT of 510), the method makes it possible to classify (514) the candidates of the subgroup R_QoS according to the second metric of energy consumption, and to select (516) among the group R_QoS the path presenting the best value according to the second metric of energy consumption.
Dans une réalisation particulière de l'invention, les exigences de QoS d'un flux de données peuvent être indiquées dans les entêtes des paquets du flux. La figure 6 illustre un enchaînement d'étapes (600) de construction de route par flux intégrant le procédé de détermination de chemin de routage de l'invention, dans un mode de réalisation où le réseau est un réseau SDN, contrôlé par un contrôleur SDN. La figure 7 montre schématiquement un environnement de réseau SDN dans lequel le procédé de la figure 6 peut être implémenté au niveau du contrôleur SDN (702). Une des caractéristiques du contrôleur SDN est sa capacité à avoir une vision globale de la topologie du réseau. Ceci lui permet d'exécuter le procédé de l'invention pour calculer le chemin de routage optimal tout en tenant en compte des différents objectifs et contraintes. Le réseau (SDN) comprend des commutateurs SDN pour le transfert du trafic de l'utilisateur dans le plan des données. Ces équipements sont contrôlés par le contrôleur SDN. Avantageusement, l'implémentation du procédé de l'invention au niveau du contrôleur SDN n'implique aucune modification ou adaptation dans les commutateurs SDN, ni dans le protocole d'échange (i.e. Openflow) entre contrôleur et commutateur. Les dispositifs du réseau dans le plan de données (par exemple, des routeurs, des commutateurs, des cellules de radio, etc.) ont juste besoin d'être équipés d'un protocole permettant la configuration de leur table de routage par le contrôleur SDN, comme par exemple le protocole OpenFlow, alors que le calcul du chemin de routage est effectué dans le contrôleur SDN, par exemple dans un « data center » ou un serveur ayant de hautes performances. In a particular embodiment of the invention, the QoS requirements of a data stream may be indicated in the headers of the packets of the stream. FIG. 6 illustrates a sequence of stream route construction steps (600) incorporating the routing path determination method of the invention, in one embodiment where the network is an SDN network, controlled by an SDN controller. . Fig. 7 schematically shows an SDN environment in which the method of Fig. 6 can be implemented at the SDN controller (702). One of the features of the SDN controller is its ability to have a global view of the network topology. This allows it to execute the method of the invention to calculate the optimal routing path while taking into account different objectives and constraints. The network (SDN) includes SDN switches for the transfer of traffic from the user in the data plane. These devices are controlled by the SDN controller. Advantageously, the implementation of the method of the invention at the level of the SDN controller does not imply any modification or adaptation in the SDN switches or in the exchange protocol (ie Openflow) between the controller and the switch. The network devices in the data plane (for example, routers, switches, radio cells, etc.) just need to be equipped with a protocol allowing the configuration of their routing table by the SDN controller. , as for example the OpenFlow protocol, while the calculation of the routing path is performed in the SDN controller, for example in a "data center" or a server having high performance.
Le procédé (600) est déclenché par l'arrivée d'un nouveau message OpenFlow « OF PACKETJN » venant d'un commutateur ou routeur donné. Ce message permet au contrôleur SDN de détecter (602) le besoin de router un nouveau flux au sein du réseau. A partir de ce message, le contrôleur SDN identifie l'adresse source, l'adresse destination, le protocole de transport utilisé, le numéro de port source et destination. Dans une étape suivante, le procédé permet au contrôleur SDN de déterminer (604) si la qualité de service QoS est prioritaire en fonction de différents paramètres tels que le protocole de transport utilisé, le numéro de port qui permet d'identifier l'application et l'adresse de destination. Si la QoS est prioritaire (branche OUI de 604), le procédé exécute les étapes de sélection du chemin de routage suivant le mode opératoire décrit quand la priorité est la bande passante (selon la figure 3 ou sa variante selon la figure 5). Dans le cas contraire où la QoS n'est pas prioritaire (branche NON de 604), le procédé exécute les étapes de sélection du chemin de routage suivant le mode opératoire décrit quand la priorité est la consommation énergétique (selon la figure 4). Dans chaque mode opératoire, le contrôleur SDN peut décider d'utiliser des valeurs du paramètre k différentes pour différents sous- groupes de flux. The method (600) is triggered by the arrival of a new OpenFlow message "OF PACKETJN" from a given switch or router. This message allows the SDN controller to detect (602) the need to route a new stream within the network. From this message, the SDN controller identifies the source address, the destination address, the transport protocol used, the source and destination port number. In a next step, the method allows the SDN controller to determine (604) whether the QoS quality of service has priority based on various parameters such as the transport protocol used, the port number that identifies the application, and the destination address. If the QoS has priority (YES branch of 604), the method executes the routing path selection steps according to the operating mode described when the priority is the bandwidth (according to FIG. 3 or its variant according to FIG. 5). In the opposite case where the QoS is not a priority (NO branch of 604), the method executes the routing path selection steps according to the operating mode described when the priority is the energy consumption (according to FIG. 4). In each mode of operation, the SDN may decide to use different values of the parameter k for different flow subgroups.
Le choix du paramètre k, comme entier non nul, permet de limiter le nombre des meilleurs chemins sélectionnés selon la première métrique, pour des raisons de performance. En effet, le fait de calculer un nombre précis des chemins possibles (en l'occurrence k) est plus performant en termes de temps de calcul que de calculer tous les chemins possibles. Dans le contexte de réseau SDN, le calcul des chemins doit se faire en temps réel dès qu'un nouveau flux apparaît dans le réseau, au niveau d'un routeur ou switch d'entrée. Ce nouveau flux est alors détecté par le contrôleur SDN qui doit donc calculer rapidement le chemin pour ce flux et mettre en place les configurations de routage correspondantes dans les routeurs du chemin calculé, afin de permettre l'acheminement du flux. Si le contrôleur mettait trop de temps pour calculer un chemin avec des solutions qui cherchent à calculer tous les chemins possibles, telle que l'approche du brevet précité U.S. 6,301 ,244 B1 qui comprend de surcroît deux applications successives de l'algorithme de calcul Dijkstra, il y aurait alors un délai trop long pour la mise en place de la configuration du chemin dans le réseau. Ceci se traduirait par une dégradation forte de la qualité de services pour ce flux avec un long délai à l'établissement du flux et de la connexion de bout en bout, un fort risque que le flux s'interrompe, un grand taux de pertes des paquets, de grandes latences, entre autres.  The choice of the parameter k, as a non-zero integer, makes it possible to limit the number of the best paths selected according to the first metric, for reasons of performance. Indeed, the fact of calculating a precise number of possible paths (in this case k) is more efficient in terms of computing time than calculating all the possible paths. In the SDN context, the computation of the paths must be done in real time as soon as a new flow appears in the network, at the level of a router or input switch. This new stream is then detected by the SDN controller which must therefore quickly calculate the path for this stream and set up the corresponding routing configurations in the routers of the calculated path, in order to allow the routing of the stream. If the controller took too long to calculate a path with solutions that seek to calculate all the possible paths, such as the approach of the aforementioned US Patent 6,301, 244 B1 which furthermore comprises two successive applications of the calculation algorithm Dijkstra , there would then be a delay too long for setting up the configuration of the path in the network. This would result in a significant degradation of the quality of services for this flow with a long delay in the establishment of the flow and the end-to-end connection, a high risk that the flow is interrupted, a high rate of losses of packages, great latencies, among others.
Ainsi, l'exécution du procédé GoGreen fournit le chemin de routage qui permet de satisfaire les besoins du flux. Le contrôleur SDN détermine (610) les commutateurs/routeurs qui font partie de ce chemin de routage. Puis, il prépare (612) les messages « OF PACKET_OUT » qui permettent de configurer (614) ces commutateurs/routeurs.  Thus, the execution of the GoGreen process provides the routing path that satisfies the needs of the flow. The SDN controller determines (610) the switches / routers that are part of this routing path. Then, it prepares (612) the "OF PACKET_OUT" messages which make it possible to configure (614) these switches / routers.
Une fois le chemin établi dans le plan des donnés, le contrôleur Once the path is established in the data plane, the controller
SDN met à jour (61 6) la valeur de la bande passante disponible des liens sur lesquels le flux a été routé. Quand la transmission du flux de données est terminée, le commutateur/routeur envoie un message vers le contrôleur SDN pour lui indiquer la fin de la transmission du flux à son niveau. Ceci permet au contrôleur de mettre à jour la valeur de bande passante disponible des liens. En effet, dans le protocole OpenFlow, chaque règle de commutation dans un commutateur/routeur est associée à une minuterie qui expire lorsque le commutateur/routeur ne reçoit plus de paquet lié au flux. Dans ce cas, la règle de commutation est supprimée et un message de notification est envoyé vers le contrôleur SDN. SDN updates (61 6) the value of available bandwidth of links on which the stream was routed. When the transmission of the data flow is complete, the switch / router sends a message to the SDN controller to indicate the end of the transmission of the stream at its level. This allows the controller to update the bandwidth value available to the links. Indeed, in the OpenFlow protocol, each switch rule in a switch / router is associated with a timer that expires when the switch / router no longer receives packet linked to the stream. In this case, the switch rule is removed and a notification message is sent to the SDN controller.
Avantageusement, le procédé de construction de route par flux décrit permet de faire coexister dans un même réseau des flux ayant des besoins différents, par l'exécution du procédé de l'invention :  Advantageously, the described stream route construction method makes it possible to coexist in the same network flows having different needs, by the execution of the method of the invention:
- en mode où la priorité est d'assurer la QoS, tout en cherchant à réduire la consommation énergétique ; et - in a mode where the priority is to ensure QoS, while seeking to reduce energy consumption; and
- en mode où il n'y a pas de contraintes de QoS imposées mais où il est important de minimiser la consommation énergétique. - in mode where there are no imposed QoS constraints but where it is important to minimize energy consumption.
Il est à noter que la bande passante disponible, à l'initialisation correspond à la bande passante nominale. Après l'installation d'un nouveau chemin pour un flux donné, la bande passante disponible correspond alors à la bande passante nominale moins la charge estimée pour ce flux. Dans le cas du réseau SDN, le contrôleur SDN initialise la bande passante disponible à la valeur de bande passante nominale. Après installation d'un chemin dans le plan de transfert des données pour un flux donné, le contrôleur met à jour cette métrique en soustrayant la charge estimée pour ce flux, et ceci pour chaque lien participant dans le routage de ce flux. Ainsi, dans l'exemple d'une bande passante disponible de 10Mbps et d'un chemin X composé de trois liens (11 , 12, 13) ayant respectivement des bandes passantes de (1 1 Mbps, 10Mbps, 1 1 Mbps), après l'installation de ce chemin pour un flux de vidéo qui a besoin de 2Mbps, le contrôleur met à jour la métrique de la bande passante de chaque lien de ce chemin. Ainsi la bande passante du premier lien 11 devient 9Mbps, celle du deuxième lien 12 devient 8Mbps et celle du troisième lien 13 devient 9Mbps. Le chemin X a alors une bande passante disponible de 9Mbps. Pour déterminer la bande passante disponible d'un chemin, il suffit de déterminer le minimum parmi les valeurs de la bande passante disponible des liens qui constituent ce chemin. It should be noted that the available bandwidth at initialization corresponds to the nominal bandwidth. After installing a new path for a given stream, the available bandwidth is then the nominal bandwidth minus the estimated load for that stream. In the case of the SDN, the SDN controller initializes the available bandwidth to the nominal bandwidth value. After installing a path in the data transfer plan for a given stream, the controller updates this metric by subtracting the estimated load for this stream, and this for each link participating in the routing of this stream. Thus, in the example of an available bandwidth of 10 Mbps and a path X composed of three links (11, 12, 13) respectively having bandwidths of (11 Mbps, 10 Mbps, 11 Mbps), after installing this path for a video stream that needs 2Mbps, the controller updates the bandwidth metric for each link in that path. So the bandwidth of the first link 11 becomes 9Mbps, that of the second link 12 becomes 8Mbps and that of the third link 13 becomes 9Mbps. The X path then has an available bandwidth of 9Mbps. To determine the available bandwidth of a path, it is sufficient to determine the minimum of the values of the available bandwidth of the links that constitute this path.
L'homme du métier considérera que la présente invention peut s'implémenter à partir d'éléments matériel et/ou logiciel et opérer sur un ordinateur. Elle peut être disponible en tant que produit programme d'ordinateur sur un support lisible par ordinateur. Le support peut être électronique, magnétique, optique, électromagnétique ou être un support de diffusion de type infrarouge. De tels supports sont par exemple, des mémoires à semi-conducteur (Random Access Memory RAM, Read-Only Memory ROM), des bandes, des disquettes ou disques magnétiques ou optiques (Compact Disk - Read Only Memory (CD-ROM), Compact Disk - Read/Write (CD-R/W) et DVD). Ainsi la présente description illustre une implémentation préférentielle de l'invention, mais n'est pas limitative. Un exemple a été choisi pour permettre une bonne compréhension des principes de l'invention, et une application concrète, mais il n'est en rien exhaustif et doit permettre à l'homme du métier d'apporter des modifications et variantes d'implémentation en conservant les mêmes principes. Those skilled in the art will consider that the present invention can be implemented from hardware and / or software elements and operate on a computer. It may be available as a computer program product on a computer readable medium. The support can be electronic, magnetic, optical, electromagnetic or be an infrared type of diffusion medium. Such supports are, for example, Random Access Memory RAMs (ROMs), magnetic or optical tapes, disks or disks (Compact Disk - Read Only Memory (CD-ROM), Compact Disk - Read / Write (CD-R / W) and DVD). Thus, the present description illustrates a preferred implementation of the invention, but is not limiting. An example has been chosen to allow a good understanding of the principles of the invention, and a concrete application, but it is in no way exhaustive and should allow the skilled person to make changes and implementation variants in keeping the same principles.

Claims

Revendications claims
Un procédé de détermination de chemin de routage de paquets de données entre un nœud source et un nœud destinataire d'un réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des première et seconde métriques de performance, le procédé comprenant les étapes de : A method of determining a data packet routing path between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second performance metrics, the method comprising the steps of:
- calculer selon la première métrique de performance sur un graphe représentatif des nœuds du réseau, un ensemble de candidats représentant les meilleurs chemins sans boucle entre le nœud source et le nœud destinataire, un chemin incluant au moins un lien, un ensemble contenant un ou plusieurs candidats ;  calculating, according to the first performance metric on a representative graph of the nodes of the network, a set of candidates representing the best paths without a loop between the source node and the destination node, a path including at least one link, a set containing one or more candidates;
- classer les candidats selon la seconde métrique de performance ; et  - classify the candidates according to the second performance metric; and
- sélectionner un candidat selon le résultat de l'étape de classement, ledit candidat sélectionné représentant le chemin de routage des paquets de données entre le nœud source et le nœud destinataire.  selecting a candidate according to the result of the ranking step, said selected candidate representing the routing path of the data packets between the source node and the destination node.
Procédé selon la revendication 1 dans lequel l'étape de classement consiste à ordonner les candidats selon une valeur croissante ou décroissante de la seconde métrique de performance, et l'étape de sélection consiste à sélectionner le candidat présentant la valeur la plus haute ou la plus basse. The method of claim 1 wherein the ranking step includes ordering the candidates to an increasing or decreasing value of the second performance metric, and the selecting step includes selecting the candidate with the highest or the highest value. low.
3. Procédé selon l'une quelconque des revendications 1 à 2 dans lequel l'étape de calcul consiste à opérer un algorithme de calcul de 'k' chemins les plus courts sans boucle sur un graphe représentatif des nœuds du réseau, 'k' étant un nombre entier prédéfini. 3. Method according to any one of claims 1 to 2 wherein the calculation step consists in operating a calculation algorithm of 'k' shortest paths without a loop on a representative graph of the nodes of the network, 'k' being a predefined integer.
4. Procédé selon la revendication 3 dans lequel l'algorithme est l'algorithme de Yen. The method of claim 3 wherein the algorithm is the Yen algorithm.
5. Procédé selon l'une quelconque des revendications 1 à 4 dans lequel les métriques de performance sont la bande passante disponible et la consommation énergétique de chaque lien. 5. Method according to any one of claims 1 to 4 wherein the performance metrics are the available bandwidth and energy consumption of each link.
6. Procédé selon l'une quelconque des revendications 1 à 5 dans lequel la première métrique est la bande passante disponible et la deuxième métrique est la consommation énergétique. 7. Procédé selon la revendication 6 dans lequel l'étape de calcul consiste à déterminer un ensemble de chemins sans boucle possédant une bande passante disponible la plus élevée et l'étape de sélection consiste à sélectionner le chemin présentant la plus petite consommation énergétique entre le nœud source et le nœud destinataire. 6. Method according to any one of claims 1 to 5 wherein the first metric is the available bandwidth and the second metric is the energy consumption. The method of claim 6 wherein the computing step is to determine a set of loopless paths having the highest available bandwidth and the selecting step is to select the path with the lowest power consumption between the source node and the destination node.
8. Procédé selon l'une quelconque des revendications 1 à 5 dans lequel la première métrique est la consommation énergétique et la deuxième métrique est la bande passante disponible. 8. Method according to any one of claims 1 to 5 wherein the first metric is the energy consumption and the second metric is the available bandwidth.
9. Procédé selon la revendication 8 dans lequel l'étape de calcul consiste à déterminer un ensemble de chemins présentant une consommation énergétique la plus petite et l'étape de sélection consiste à sélectionner le chemin présentant la bande passante disponible la plus élevée entre le nœud source et le nœud destinataire. 9. The method of claim 8 wherein the computing step is to determine a set of paths with the lowest energy consumption and the selection step consists of select the path with the highest available bandwidth between the source node and the destination node.
10. Procédé selon la revendication 6 comprenant de plus après l'étape de calcul, une étape de filtrage pour filtrer parmi les candidats, un sous- ensemble de candidats selon des paramètres de qualité de service pour le flux de données. The method of claim 6 further comprising after the computing step, a filtering step for filtering among candidates a subset of candidates according to quality of service parameters for the data stream.
1 1 . Procédé selon la revendication 10 dans lequel les paramètres de qualité de service sont choisis parmi le débit, la latence, le taux de perte maximal de paquets de données, la gigue. 1 1. The method of claim 10 wherein the quality of service parameters are selected from the throughput, latency, maximum data packet loss rate, jitter.
12. Un produit programme d'ordinateur, ledit programme d'ordinateur comprenant des instructions de code permettant d'effectuer les étapes du procédé selon l'une quelconque des revendications 1 à 1 1 , lorsque ledit programme est exécuté sur un ordinateur. 12. A computer program product, said computer program comprising code instructions for performing the steps of the method according to any one of claims 1 to 11, when said program is executed on a computer.
13. Dispositif de détermination de chemin de routage de paquets de données entre un nœud source et un nœud destinataire d'un réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des premières et seconde métriques de performance, le dispositif comprenant des moyens pour mettre en œuvre les étapes du procédé selon l'une quelconque des revendications 1 à 1 1 . 13. A data packet routing path determining device between a source node and a destination node of a network comprising a plurality of nodes and links between the nodes, the links having at least first and second performance metrics, the device comprising means for implementing the steps of the method according to any one of claims 1 to 1 1.
14. Le dispositif selon la revendication 13 dans lequel les liens entre les nœuds du réseau sont filaires et/ou non filaires. 14. The device of claim 13 wherein the links between the nodes of the network are wired and / or non-wired.
15. Le dispositif selon la revendication 13 ou 14 dans lequel les paquets de données sont des paquets d'un flux de données multimédia. The device of claim 13 or 14 wherein the data packets are packets of a multimedia data stream.
16. Un système de communication apte à router dans un réseau des paquets de données entre un nœud source et un nœud destinataire parmi une pluralité de nœuds reliés par des liens, les liens présentant au moins des premières et seconde métriques de performance, le système comprenant au moins un dispositif selon l'une quelconque des revendications 13 à 15. A communication system capable of routing in a network data packets between a source node and a destination node among a plurality of nodes connected by links, the links having at least first and second performance metrics, the system comprising at least one device according to any one of claims 13 to 15.
17. Le système selon la revendication 1 6 dans lequel ledit au moins un dispositif est implémenté dans au moins un nœud du réseau. The system of claim 1 6 wherein said at least one device is implemented in at least one node of the network.
18. Le système selon la revendication 1 6 ou 17 dans lequel le réseau est de type « Software-Defined Networking » (SDN) et ledit au moins un dispositif est implémenté dans le contrôleur SDN dudit réseau. 18. The system of claim 1 6 or 17 wherein the network is of the "Software-Defined Networking" (SDN) type and said at least one device is implemented in the SDN controller of said network.
19. Procédé de construction de route par flux de données dans un réseau de type « Software-Defined Networking » (SDN), le réseau comprenant une pluralité de nœuds et de liens entre les nœuds, les liens présentant au moins des premières et seconde métriques de performance, le réseau comprenant un contrôleur SDN apte à détecter une requête de routage de flux et identifier l'adresse d'un nœud source et l'adresse d'un nœud destinataire pour le flux, le procédé étant opéré par ledit contrôleur SDN et comprenant les étapes du procédé de détermination de chemin de routage de paquets de données entre le nœud source et le nœud destinataire selon l'une quelconque des revendications 1 à 1 1 . 19. Method of constructing a route by data flow in a network of the "Software-Defined Networking" (SDN) type, the network comprising a plurality of nodes and links between the nodes, the links having at least first and second metrics the network comprising an SDN controller adapted to detect a stream routing request and identify the address of a source node and the address of a destination node for the stream, the method being operated by said SDN controller and comprising the steps of the data packet routing path determining method between the source node and the destination node according to any one of claims 1 to 1 1.
20. Le procédé selon la revendication 19 dans lequel l'exécution des étapes du procédé de détermination de chemin de routage de paquets de données est faite selon que la qualité de service pour un flux de données est prioritaire ou non. The method of claim 19 wherein the execution of the steps of the data packet routing path determining method is performed according to whether or not the quality of service for a data stream is a priority.
21 . Un produit programme d'ordinateur, ledit programme d'ordinateur comprenant des instructions de code permettant d'effectuer les étapes du procédé selon l'une quelconque des revendications 19 à 20, lorsque ledit programme est exécuté sur un ordinateur. 21. A computer program product, said computer program comprising code instructions for performing the steps of the method of any of claims 19 to 20, when said program is run on a computer.
EP18701196.0A 2017-02-13 2018-01-30 Method and device for determining an energy-saving routing path Withdrawn EP3580898A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1751146A FR3062976B1 (en) 2017-02-13 2017-02-13 ENERGY-SAVING ROUTING PATH DETERMINATION METHOD AND DEVICE
PCT/EP2018/052216 WO2018145945A1 (en) 2017-02-13 2018-01-30 Method and device for determining an energy-saving routing path

Publications (1)

Publication Number Publication Date
EP3580898A1 true EP3580898A1 (en) 2019-12-18

Family

ID=58707755

Family Applications (1)

Application Number Title Priority Date Filing Date
EP18701196.0A Withdrawn EP3580898A1 (en) 2017-02-13 2018-01-30 Method and device for determining an energy-saving routing path

Country Status (3)

Country Link
EP (1) EP3580898A1 (en)
FR (1) FR3062976B1 (en)
WO (1) WO2018145945A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740487B (en) * 2019-09-17 2021-10-29 天津大学 Underwater routing method with effective energy and obstacle avoidance
CN114827018B (en) * 2021-01-28 2023-09-08 北京邮电大学 SDN route selection method and device based on service class and electronic equipment
FR3126576A1 (en) * 2021-09-01 2023-03-03 Latelec Method for determining an interconnection topology between switches of a communication network, computer program product and corresponding device.

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6301244B1 (en) * 1998-12-11 2001-10-09 Nortel Networks Limited QoS-oriented one-to-all route selection method for communication networks
US20130315257A1 (en) 2010-12-20 2013-11-28 Telefonaktiebolaget L M Ericsson (Publ) Energy efficient routing and switching
CN103685011B (en) 2012-09-14 2017-03-15 华为技术有限公司 A kind of method and apparatus for determining energy-efficient routing
US20160234234A1 (en) * 2015-02-05 2016-08-11 Cisco Technology, Inc. Orchestrating the Use of Network Resources in Software Defined Networking Applications

Also Published As

Publication number Publication date
FR3062976A1 (en) 2018-08-17
FR3062976B1 (en) 2021-06-04
WO2018145945A1 (en) 2018-08-16

Similar Documents

Publication Publication Date Title
US7920572B2 (en) Modifying operation of peer-to-peer networks based on integrating network routing information
EP1589709B1 (en) Method of routing in an ad hoc network
WO2017205099A1 (en) Route selection system for a communication network and method of operating the same
WO2006059040A1 (en) Method and system for the dynamic adaptation of service quality metrics in an ad hoc network
EP2005668A1 (en) Routing method in an ad hoc network
EP3580898A1 (en) Method and device for determining an energy-saving routing path
EP2510656A1 (en) Method for the qualitative routing in a multi-hop communication network, and network node management facility
WO2011086250A1 (en) Virtual link between network operators
EP2345210B1 (en) Management of routing topology in a network
WO2011144871A1 (en) Link-state routing method for routing data streams in a meshed network comprising nodes connected by three-state links
Muscariello et al. Do next generation networks need path diversity?
Mawji et al. P2P overlay topology control in MANETs
Kandavanam et al. PaCRA: A path-aware content replication approach to support QoS guaranteed video on demand service in metropolitan IPTV networks
WO2008074817A1 (en) Method for optimising the sharing of a plurality of network resources between a plurality of application flows
EP4020926B1 (en) Routing method for routing an elastic flow in a transport network
EP2008489B1 (en) Management of applicative streams in mobile networks
Dort-Golts et al. Load balancing algorithm exploiting overlay techniques
Byun et al. A tracker-based P2P system for live multimedia streaming services
Newton et al. A refined algorithm for efficient route identification in future generation networks
WO2024068725A1 (en) Method for managing data traffic between a source entity and a recipient entity, and corresponding entity and computer program
Norouzi Cooperative intradomain routing for quality of service aware networking
EP2553888B1 (en) Method and system for transmitting multimedia streams
WO2012167549A1 (en) Method and device for data exchange between network administrator and network element
Wang Controlling P2P Traffic in Cooperative and Non-Cooperative Network Environments
Velayutham et al. Distributed heuristic algorithm to optimize the throughput of data driven streaming in peer to peer networks

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20190731

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20200903

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20210114