CA2654969A1 - Process for routing virtual links in a frame-switching network - Google Patents

Process for routing virtual links in a frame-switching network Download PDF

Info

Publication number
CA2654969A1
CA2654969A1 CA002654969A CA2654969A CA2654969A1 CA 2654969 A1 CA2654969 A1 CA 2654969A1 CA 002654969 A CA002654969 A CA 002654969A CA 2654969 A CA2654969 A CA 2654969A CA 2654969 A1 CA2654969 A1 CA 2654969A1
Authority
CA
Canada
Prior art keywords
paths
link
links
network
process according
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.)
Granted
Application number
CA002654969A
Other languages
French (fr)
Other versions
CA2654969C (en
Inventor
Remi Andreoletti
Frederic Minot
Remi Cabaret
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.)
Airbus Operations SAS
Original Assignee
Individual
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
Priority claimed from FR0652093A external-priority patent/FR2902255B1/en
Application filed by Individual filed Critical Individual
Publication of CA2654969A1 publication Critical patent/CA2654969A1/en
Application granted granted Critical
Publication of CA2654969C publication Critical patent/CA2654969C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/243Multipath using M+N parallel active paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/76Routing in software-defined topologies, e.g. routing between virtual machines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast

Abstract

The invention relates to a method of routing virtual links in a frame-swi tching network comprising a plurality of source and/or destination terminals of said frames, frame switches being connected together by physical connect ions, each virtual link being defined, for a point-to-point type, by a path through said network between a source terminal and a destination terminal an d, for a multipoint type, by a plurality of paths through said network betwe en a source terminal on the one hand and a plurality of destination terminal s on the other hand. The method performs the routing of the links by minimiz ing at least one cost function over a set of solutions satisfying at least o ne predetermined topological constraint.

Description

PROCESS FOR ROUTING VIRTUAL LINKS
IN A FRAME-SWITCHING NETWORK
Technical field This invention relates to the field of routing in a frame-switching network and more specifically an AFDX
network.

Prior art The Ethernet networks are the best known among local networks. They can function under two modes that are distinct but compatible with one another: a so-called shared mode, in which a single physical medium is shared between the terminals, with random access and detection of frame collisions, and a so-called switched mode, in which the terminals exchange frames by means of virtual connections, thus guaranteeing the absence of collisions.

In a switched Ethernet network, each terminal, source or destination, is connected individually to a frame switch, and the switches are connected to one another by physical connections. More specifically, each switch has a plurality of ports connected to the ports of other switches or terminal couplers. A virtual connection between a source terminal and a destination terminal is defined as a path through the network followed by the frames from the source terminal intended for the destination terminal. Similarly, a virtual connection is defined by the list of switches through which these frames pass. For each switch traversed, the frame switching is performed on the
2 basis of the destination address, by means of a pre-established switching table. This switching table is very simple since it indicates, on the basis of the switch input port and the frame destination address, the corresponding output port.
Another well known example of a frame switching network is the ATM network in which a virtual circuit connection (VCC) can be established in order to route basic frames or cells between a source and destination terminal.
We will use the term "virtual link" to refer to a level-2 end-to-end connection in a frame switching network, such as a virtual connection in a switched Ethernet network or a virtual circuit connection in an ATM network. In a frame-switching network, the virtual links are routed through the network, either administratively or by signalling with the control plan.
The routing of links consists of defining and programming the switching tables of the various switches of the network. In general, these switching tables can be static (administrative routing) or dynamic (routing by signalling).

In some cases, it is possible to obtain a certain guarantee of service by virtual link. For example, in an ATM network, the CBR (Constant Bit Rate) service class enables a constant bandwidth and a minimum flow rate to be reserved on the link. However, as the switches can support only a given maximum flow rate, this service guarantee imposes constraints on the routing of links.
3 Similarly, the AFDX (Avionics Full Duplex Switched Ethernet) network, developed for aeronautical needs, is a switched Ethernet network in which it is possible to reserve a bandwidth by virtual link. More specifically, each virtual link is associated with a minimum interval between frames as well as a maximum frame size.
Moreover, a maximum time of routinq frames or a latency time is guaranteed for each virtual link. Given that the switches can ensure only a given flow rate per output port, the guarantee of virtual link characteristics is again subject to routing constraints.
This invention applies preferably but not exclusively to AFDX networks. A detailed description of this network can be found in the document entitled "AFDX protocol tutorial", available at the website www.condoreng.com as well as in the patent application FR-A-2832011 filed in the applicant's name. Its main characteristics will simply be summarized below.

As mentioned above, the AFDX network is based on a switched Ethernet network. It is also a full-duplex network, in which each terminal can simultaneously transmit and receive frames on distinct virtual links.
The AFDX network is also deterministic, in the sense that the virtual links have guaranteed characteristics in terms of latency time, physical segregation of streams, bandwidth and flow rate. Each virtual link thus has a path reserved from end-to-end, of a time fragmentation into transmission intervals (called BAG
for Bandwidth Allocation Gap) and with a maximum frame size. The frames are sent at the start of each transmission interval with a predetermined jitter
4 tolerance. Finally, the AFDX network is redundant, in the sense that it is duplicated for reasons of availability.

The data is transmitted in the form of IP packets encapsulated in Ethernet frames. By contrast with the classic Ethernet switching (using the destination Ethernet address), the frame switching on an AFDX
network uses a virtual link identifier concatenated to the frame header. When a switch receives a frame at one of its input ports, it reads the virtual link identifier and determines, on the basis of its switching table, the output port(s) from which it should be transmitted. The switches verify, during flight, the integrity of the frames transmitted, but do not request retransmission if a frame is incorrect: the frames detected as incorrect are removed. The frames carried on a virtual link are numbered in sequence. On reception, the destination terminal verifies the integrity of the frame sequence.

Each virtual link is one-way. It can be from only one source terminal at a time, but can arrive at a plurality of destinations. Virtual links in point-to-point mode, which serve only a single destination, are distinguished from virtual links in multipoint mode, which serve a plurality of destinations.

Figure 1 diagrammatically shows an AFDX network including terminals LRU1 to LRU5 and frame switches SW1, SW2. It can be seen that the virtual link VL3 connecting terminal LRU3 to LRU2 is of the point-to-point type while the virtual links VL2 serving LRU2 and LRU3, and VLl serving LRU3 to LRUS are of the multipoint type.

Some virtual links are strongly dependent on one another because they are involved in performing the
5 same function. For example, the virtual links from different navigation sensors of an aircraft participate in the same positioning function. Below, we will use the term "functional bundle" or simply "bundle" to refer to any set of virtual links, of the point-to-point or multipoint type, participating in the same function.
The frame-switching networks offering a service guarantee, such as ATM and AFDX networks, require routing constraints on the virtual links to be imposed.

Moreover, on-board applications, in particular aeronautical applications, require additional precautions in turn usually resulting in routing constraints.

Until now, the routing of links in an AFDX network has been performed empirically. This type of routing can be acceptable for a relatively small number of virtual links. With the increase in complexity of aeronautical systems, the number of virtual links can now reach several thousand. This invention is intended to provide a systematic and automatic routing process that takes into account all of the routing constraints and enables the safety of use of the network to be optimized.
6 Description of the invention This invention is defined by a process for routing virtual links in a frame-switching network including a plurality of frame source and/or destination terminals connected to one another by physical connections, in which each virtual link is defined, for a point-to-point type, by a path through said network between a source terminal and a destination terminal, and, for a multipoint type, by a plurality of paths through said network between a source terminal and a plurality of destination terminals. Said process includes the following steps for at least one virtual link:

(a) selection, from a set of possible paths between the source terminal and the destination terminal(s), of a subset of paths satisfying at least one predetermined topological constraint;

(b) determination, among said subset, of a path for a point-to-point virtual link, or of a plurality of paths for a multipoint virtual link, minimizing at least one given cost function;

(c) routing said virtual link according to the path(s) thus determined.
According to a first alternative, when said virtual link is a point-to-point link and the network is partitioned into distinct zones, said topological constraint is advantageously expressed as a constraint prohibiting crossing between zones if the switches connected respectively to the source terminal and the destination terminal belong to the same zone, and, in the opposite case, as a constraint allowing a single
7 crossing between zones belonging respectively to said source and destination terminals is applied. The selection step can take into account additional topological constraints of segregation and/or collocation of paths possible with respect to virtual links already routed or to be routed simultaneously with said link or switches of said network.
Alternatively, or cumulatively, the selection step can take into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality Nsg of sub-groups of said paths, and said additional constraints express that, at most, a number nsg of sub-groups such that 0<_ nsg < Nsg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.
Said aforementioned cost function can be chosen to be equal to the number of switches traversed by a path.
According to a second alternative, when said virtual link is of a multipoint type and the network is partitioned into distinct zones, a constraint prohibiting crossing between zones is advantageously applied to each possible path between said source terminal and a destination terminal of said link, if the switches connected respectively to the source terminal and to said destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belonging respectively to said source and destination terminals
8 is applied. As mentioned above, it is possible to apply, for each of the possible paths between said source and destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths with respect to virtual links already routed or to be routed simultaneously with said link or switches. Alternatively, or cumulatively, the selection step can take into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality NSa of sub-groups of said paths, and said z additional constraint expresses that, at most, a number nsg of sub-groups such that 0< nsg < Nsg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.

The cost function can be equal to the number of switches traversed by a path and will be minimized on each set of possible paths between said source terminal and a destination terminal of said link, in order to provide at least one candidate path per destination terminal. Advantageously, we combinations of K

candidate paths are produced in which K is the number of destination terminals of the link, and each combination corresponds to a possible routing solution of said multipoint link, and a second cost function is minimized on the set of said possible solutions thus obtained. This second cost function evaluates, for each
9 possible solution, the number of switches shared between its various constituent paths.

According to a third alternative, for at least one group of links involved in performing the same function, referred to as a bundle of links, each link being point-to-point and the network being partitioned into distinct zones, a constraint prohibiting crossing between zones is applied, for each of the links of said bundle, to each possible path between the source terminal and the destination terminal of said link, if the switches connected respectively to the source terminal and to the destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belongi ng respectively to said source and destination terminals is applied. As mentioned above, it is possible to apply, for each virtual link and for each of the possible paths between the source terminal and the destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths with respect to virtual links already routed or to be routed simultaneously with said link or switches.
Alternatively, or cumulatively, the selection step can take into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality Nsg of sub-groups of said paths, and said additional constraints express that, at most, a number nSg of sub-groups such that 0<_ nsg < NSg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.

Said cost function can be chosen to be equal to the number of switches traversed by a path and will be 5 minimized, for each of the links of said bundle, on each set of possible paths between the source terminal and the destination terminal of said link, in order to provide at least one candidate path per link.
Advantageously, combinations of N candidate paths where
10 N is the number of links of said bundle are produced, with each combination corresponding to a possible routing solution of said bundle, and a third cost function is minimized on the set of said possible solutions thus obtained. The third cost function evaluates, for each possible routing solution of the bundle, the number of switches shared between the paths of which said solution is the combination.

According to fourth alternative, for at least one group of links involved in performing the same function, referred to as a bundle of links, with each link being of a multipoint type and the network being partitioned into distinct zones, a constraint prohibiting crossing between zones is applied, for each of the links of said bundle, to each possible path between the source terminal and the destination terminal of said link, if the switches connected respectively to the source terminal and to the destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belonging respectively to said source and destination terminals is applied. As
11 mentioned above, it is possible to apply, for each virtual link and for each of the possible paths between the source terminal and the destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths with respect to virtual links already routed or to be routed simultaneously with said link or switches of said network. Alternatively, or cumulatively, the selection step can take into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality Nsg of sub-groups of said paths, and said additional constraints express that, at most, a number nsg of sub-groups such that 0<nsg <NSg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.

Said cost function can be chosen to be equal to the number of switches traversed by a path and will be minimized, for each of the links of said bundle, on each set of possible paths between the source terminal and the destination terminal of said link, in order to provide at least one candidate path per link and per destination terminal. Advantageously, combinations of K1+K2+...+KN candidate paths where Ki, 1<i<N are the numbers of respective paths of the N links of said bundle are produced, with each combination corresponding to a possible routing solution of said
12 bundle, and a fourth cost function is minimized on the set of said possible solutions thus obtained. The fourth cost function evaluates, for each possible routing solution of the bundle, the number of switches traversed by the links of the bundle corresponding to this solution.
In all of the alternatives above, said network zones are, for example, supplied by independent power supply sources.
Finally, regardless of the alternative, we will advantageously minimize a fifth cost function evaluating the traffic load of the most heavily loaded switch of the network, on the set of the routing solutions obtained by minimizing one of the second, third or fourth cost functions.
The invention also relates to a computer program including software means suitable for implementing the steps of the process defined above, when it is run on a computer.

Brief description of the drawings - Figure 1 diagrammatically shows an example of AFDX networks;
- Figure 2 diagrammatically shows an organizatio-nal chart of the virtual link routing method according to an embodiment of the invention;
- Figures 3A to 3E show a mechanism for minimizing cost functions in the case of a multipoint virtual link;
- Figure 4 shows an example of routing for a point-to-point virtual link;
13 - Figure 5 shows an example of routing for a multipoint virtual link;
- Figure 6 shows an example of routing for a bundle of point-to-point virtual links;
- Figure 7 shows an example of routing for a bundle of multipoint virtual links;
- Figure 8 shows an example of a group of paths forming virtual links, subject to a relaxed segregation constraint;
- Figure 9 shows an example of routing of virtual links under a relaxed segregation constraint;
- Figures 10A and 10B respectively show an acceptable routing configuration and an unacceptable routing configuration.

Detailed description of specific embodiments The basic idea of the invention is to perform the routing of a virtual link by selecting from among the possible paths, those that meet a predetermined topological constraint or a plurality of predetermined topological constraints, then of selecting from among those, the one(s) that minimize a predetermined cost function.
Figure 2 shows the principle of the routing process according to the invention.
Said process uses, at the input:
- a file 210 describing the topology of the network, namely the end nodes (terminals), the switching nodes and the physical connections between the nodes;
14 - a file 220 giving the status of the network, namely the capacities of the ports of the switches, and the virtual links already routed with their characteristics;

- a file 230 giving the characteristics of the virtual link(s) to be routed. Each virtual link is described therein by the identifiers of the switches connected respectively to the source terminal and to the destination terminal (point-to-point mode) or to the destination terminals (multipoint mode), the duration of the transmission interval (BAG) and the maximum length of the frames on the link, the possible belonging to a functional bundle and, as the case may be, the identifier of the bundle;

- a file 240 stating topological constraints, which will be described in detail below.

The algorithm involves, in a first step 250, the selection of paths between the source terminal and the destination terminal that satisfy a constraint or a plurality of topological constraints indicated in 240.
The algorithm involves, in a second step 260, the minimization of a cost function or the minimization of a plurality of cost functions, successively or jointly.
For the purposes of joint minimization, as detailed below, a composite cost function is created as a linear combination of the aforementioned cost functions, with the weighting coefficients being chosen so as to reflect the relative importance of the costs in the routing choice. Alternatively, the cost functions are minimized one after another in order of decreasing priority, with each minimization being performed on the subset of solutions provided by the preceding minimization step.
If the minimization of the cost function(s) gives a plurality of equivalent solutions, one solution is 5 chosen arbitrarily from them. The solution at the end of 260 provides the path (point-to-point mode) or the paths (multipoint mode) enabling the virtual link to be routed. In step 270, the status file of the network 220 is updated. The algorithm proceeds iteratively until 10 depletion of the virtual links to be routed.
In 280, it is verified that all of the virtual links are routed, and, if they are, according to an embodiment, a step of verifying the determinism of the network is performed in 290. This step is managed by an
15 algorithm called "network calculus" known from the prior art, for example the article of Jean-Yves Le Boudec entitled "Application of network calculus to guaranteed service networks", published in IEEE Trans.
on Information Theory, Vol. 44, n 3, May 1998. This algorithm calculates, on the basis of a traffic envelope at all of the points of the network, the latency terminals and the sizes of the queues for each element of the network. The determinism is guaranteed for a bounded latency and a correct sizing of the queues for each element of the network.
Finally, the switching tables of the frame switches are updated in 295. These switching tables unequivocally set the routing of the links on the network.
16 The routing process can be implemented a first time when the network is activated and/or each time a virtual link must be modified or added.
The topological constraints mentioned above are of two distinct types: absolute constraints and relative constraints.
The absolute constraints weigh on the routing of a virtual link independently of the presence of other links on the network. For example, in the case of an AFDX network on board an aircraft, the "left" and "right" "sides" of the network, corresponding to the "left" and "right" sides of the airpiane, are supplied by different supply buses. So that the failure of one power supply does not endanger the entire network, the following topological constraints are imposed:
- a virtual link from a source terminal located on one side of the network and leading to a destination terminal located on the opposite side can cross the border separating the two sides of the network only once. If the virtual link is of the multipoint type, the constraint is applied to each path forming the link;
- a virtual link from a source terminal located on one side of the network and serving a destination terminal located on the same side cannot cross the border separating the two sides of the network.
This rule is easily generalized to the case in which the network can be partitioned into any plurality of distinct zones, on the condition that any terminal of a zone can serve any terminal of another zone without passing through a third zone. The various zones of the network are, for example, supplied by
17 independent power supply sources. The intra-zone virtual links are routed within the zone in question, while the inter-zone virtual links cross the border separating said zones only once, without passing through a third zone.
Other absolute topological constraints can be established, such as collocation or segregation with an element of the network. By this, we mean that it can be specified that the virtual link necessarily passes through a given element of the network (for example, a switch or a physical connection) , or, on the contrary, that it necessarily avoids this element. Collocation with a plurality of elements of the network is considered to be capable of leading to unequivocal routing of the virtual link. The virtual link is then said to be "fixed".
The relative topological constraints concern the virtual links with one another. Thus, it is possible to establish collocation or segregation constraints between virtual links. By this, we mean that it can be specified that two virtual links must pass through the same switches of the network, or, on the contrary, that they must not share any common switch. The relative topological constraints may concern different virtual links of the same functional bundle, in which case the constraint presented is a segregation constraint. They can also concern virtual links belonging to distinct functional bundles. In both cases, the topological constraints on collocation/segregation of a virtual link can be expressed with regard to links already
18 routed or links to be routed simultaneously with said link.
It is possible that relative topological constraints expressed in terms of collocation and/or segregation are too strict to enable a routing solution to be obtained. In this case, some, or even all, of these constraints are relaxed, as indicated below.
A set of virtual links is considered, in which the routing is performed simultaneously, as their individual independent routing cannot be envisaged.

Each of these virtual links generally includes one (point-to-point link) or more (multipoint link) path (s) .
All of the paths forming these virtual links, hereinafter referred to as a group of virtual links, can be partitioned into sub-groups, with a path being capable of belonging to a plurality of sub-groups.
Generally, a sub-group corresponds to an instance of the function provided by said set of virtual links. In other words, the various sub-groups represent a certain degree of redundancy for the performance of a single function.

If Nsg is the number of sub-groups of the group of paths, a relaxed segregation constraint is imposed on said set of virtual links, according to which at most nSg sub-groups among Nsg , with 0_< nsg < Nsg , can be invalidated by the failure of a switch. The case nSg=O
corresponds to the specific situation in which no invalidated sub-group is tolerated. By failure of a switch, we mean either an erroneous or absent switch, or a corruption of switched frames. By invalidated sub-
19 groups, we mean a sub-group of which all of the paths are affected by the failure of the same switch.

It is understood that a relaxed segregation constraint provides more flexibility than a segregation constraint insofar as it takes into account the redundancy of the network and is not applied in an undifferentiated manner to all of the paths forming a virtual link.

Examples of relaxed segregation constraints are provided in the appendix.

As described above, after having selected a subset of possible candidates satisfying the aforementioned topological constraints, the routing algorithm searches among the possible candidates for the one(s) that minimize(s) one or more cost functions.

A first cost function considered is the number of switches traversed by the virtual link. More specifically, if the link is of the point-to-point type, it is sought to minimize the number of switches traversed by this link. If the link is of the multipoint type, the minimization concerns the number of switches traversed for each of the paths forming the link. A small number of switches traversed enables the probability of a failure of the virtual link or of each path forming said link to be reduced.

A second cost function concerns the multipoint virtual links. It is defined as the number of switches common to the paths forming a multipoint link.

A third cost function concerns the bundles of links. It is defined as the number of switches common to the virtual links belonging to the same bundle.

The minimization of the second or the third cost function enables, depending on the case, the probability of a joint failure of the paths of the same virtual link or of the virtual links of the same bundle 5 to be reduced.

A fourth cost function also concerns the bundles of links. This is defined as the total number of switches traversed by all of the virtual links of the same bundle.

10 A fifth cost function is defined as the flow rate of the output port of the most heavily loaded switch of the network. The minimization of this function is intended to optimize the distribution of the traffic load within the network.

15 These examples of cost functions are in no way limiting. Other cost functions can be considered, insofar as they are intended in particular to quantify the impact of the failure of an element or a plurality of elements of the network.
20 The successive minimization of cost functions can lead to a set of sub-optimal solutions. According to an alternative embodiment, a linear combination of cost functions is produced by means of weighting coefficients reflecting the relative importance of these functions in the routing, and the new cost function thus produced is minimized on the set of possible solutions. Similarly, the new cost function can be produced as a product of the cost functions, in which each one is assigned an exponent reflecting its relative importance in the routing.
21 Figures 3A to 3E show the mechanism for minimizing cost functions in the case of a multipoint virtual link.
The virtual link to be routed comes from the source terminal E1 and serves the destination terminals R1 and R2. It is assumed that the paths satisfying the topological constraints have been pre-selected. The minimization of the first cost function is performed by searching among each of the possible paths connecting E1 to R1 and E1 to R2, those that traverse the minimum number of switches. In this case, the minimum number is 3 for the path E1-R1 as well as for the path Ej-R2. The optimal solutions are shown in figures 3A to 3D.
However, it is noted that the solution shown in figure 3E is not optimal: indeed, it minimizes the number of switches on the entire virtual link, but not on each of its constituent paths (the path connecting El-R2 has a cost of 4).

The minimization of the second cost function means that, among the four previous solutions, those shown in figures 3A, 3B and 3D are kept. Indeed, for those, the number of switches common between the two paths is equal to 1, while it is equal to 2 for that in figure 3C.

The minimization of the fifth cost function makes it possible to decide between the three solutions kept in the previous step. By default, the solution chosen is chosen arbitrarily from the remaining solutions.

The routing problem amounts to a problem of minimizing a cost function/ cost functions under constraints. Advantageously, the cost functions under constraints are expressed in the form of linear
22 inequalities and the cost functions are linear expressions of decision variables. The minimization can then be performed using the simplex algorithm. It is noted that the simplex algorithm enables a problem of the following type to be solved:

Argmin(bTx) with Ax_c and x>_0 (1) Y

where bT is the vector representing a linear form (cost function), x is the vector of the decision variables (positive), A represents the constraint matrix and c is a constant vector.

In practice, the routing algorithm has, at the input, the list of switches, noted SS and, for each pair of source and destination terminals, the list of paths making it possible to go from the first to the second, with each path being described by an ordered list of switches through which it passes. Below PP
will denote the list of paths indexed. Advantageously, PP will previously have been reduced to a list of paths already satisfying certain absolute topological constraints, for example those relating to the partition into independent zones.

Then, the matrices CPs9Cfs9C,S9CPss are produced, with the first three having dimensions PxS and the last having dimensions PxSxS where P is the total number of paths indexed in the file and S is the total number of switches of the network, with the elements of these matrices being defined by:

cPs(p,sw)=1 if sw belongs to the path p and cPs(p,sw)=0 if not;
23 cfs(p,sw)=1 if sw is the first switch of p and cfs(p,sw)=0 if not;

ci,(p,sw)=1 if sw is the last switch of p and cis(p,sw)=0 if not;

cpss(p,swj,sw2)=1- if sw, and sw2 are successive switches of the path p and cpSS(p,s"I,sw2)=0 if not;

where p is the identifier of a path between the two terminals and where sw, swl , sw2 are the identifiers of switches of the network.

To simplify the routing algorithm, it is considered that any virtual link is part of a functional bundle, which bundle can be reduced as necessary to a single link. FF denotes the list of functional bundles.

A bundle f of FF is determined by its attributes:
- f.profile indicates whether the bundle f contains a single virtual link ( f.proftle=l) or not ( f.profile=0) ;

- f.ocs gives the list identifiers of the virtual links belonging to the bundle.

A virtual link vl of a bundle f is defined by its attributes:

- vl.f gives the identifier of the bundle to which the link belongs;

- vl.cost indicates the cost in terms of traffic on the virtual link; this cost can be expressed in terms of traffic on the virtual link; this cost can be expressed, for example, as a function of the transmission interval and maximum frame length pair;
24 - vl.rted indicates whether the link has already been routed ( vl.rted =l ) or not ( vl.rted =0 );

- vl.txsw gives the identifier of the switch connected to the source terminal;

- vl.rxsw gives the identifier of the switch connected to the destination terminal (point-to-point link) or the identifiers or switches respectively connected to the destination terminals (multipoint link).

A path b forming a virtual link vl is defined by its attributes:

- b.vl identifier of the virtual link to which it belongs;

- b.swDest identifier of the switch connected to the destination terminal served by said path.

In addition, GG denotes the list of groups of paths forming virtual links subject to a relaxed segregation constraint. Each group g of GG is defined by:

- an attribute g.sgErrmax indicating the maximum acceptable number of subgroups invalidated in the group;

- the list of its subgroups g.sglist.

Finally, SG denotes the list of subgroups relating to the various groups of GG. Each subgroup sg of SG is defined by:
- an attribute sg.group indicating the group to which it belongs;

- the list sg.pathlist of paths forming this subgroup.

The following decision variables are also introduced, all with positive values:

- vlPathwl,p] is equal to 1 if the path p forms the virtual link vl and is equal to 0 if not. It is noted 5 that a path p forms vl if this path leaves the switch connected to the terminal vl.txsw and arrives at one of the switches of vl.rxsw;

- v1BrSw[v1,swDest,sw] is equal to 1 if the path forming the virtual link vl ending with swDest passes 10 through the switch sw and is equal to 0 if not;

- v1BrPerSw[-V'1,sw] is equal to the number of paths forming the virtual link vl passing through the switch su~ ;

- comBrSw[Vl,swI is equal to 1 if a plurality of 15 paths forming the virtual link vl pass through the switch sw;

- v1Sw[vl,sw] is equal to 1 if the virtual link vl passes through the switch sw and is equal to 0 if not;
- fvlPerSwGf,sw] is equal to the number of virtual 20 links of the functional bundle f passing through the switch sw;

- comfSwlf,swl is equal to 1 if a plurality of virtual links of the functional bundle f pass through the switch sw and is equal to 0 if not;
25 - fSwlf,swl is equal to 1 if one of the virtual links of the functional bundle f passes through the switch sw and is equal to 0 if not;
26 - v1SwNb[vl,swl,sw?] is equal to the number of paths forming the virtual link vl passing successively through the switches svil,sti72 ;

- vlSwwl,swl,sw-)] is equal to 1 if there is a path forming the virtual link vl passing successively through the switches swl,sw2;

- trfCst1sw1,sw21 is the sum of trfCstPast1swl,sw21 and the traffic cost between the switches swl,sw2 cumulated on the current subset of virtual links to be routed;

- fixvl[swl,sw21 is equal to 1 if there is a virtual link already routed from said current subset, passing successively through the switches swi and sw2 , and is equal to 0 if not;

- sgSw[sg,sw] is equal to 1 if the switch sw is common to all of the paths forming the subgroup sg and is equal to 0 if not.
The basic constraint that is imposed on a solution (or candidate virtual link) is that the path(s) forming the solution come from the source terminal and end(s) at the destination terminal, i.e.:
df E FF; dvl E f.ocs; b'p E PP

vlPath[vl, p]< cfs(p,vl.txsw) and vlPath[vl,p]<_ Ycis(p,sw) (2) swEvl.rxsw and that, for each destination terminal of the virtual link, there be a single constituent path from the source terminal, i.e.:
bf E FF; b'vl E f.ocs; b'sw E vl.rxsw, Y vlPath[vl, plcls (p, sw).cfs (p, vl.txsw) = 1 (3) pEPP
27 Most of the absolute topological constraints are capable of the same formalism. The remaining constraints are taken into account, as indicated above, by restricting the set PP from the start.

The relative topological constraints can also be expressed on the basis of the aforementioned decision variables in the form of linear inequalities or equalities. Thus, for each set II of constituent paths to be segregated, i.e. not capable of sharing any common switch, the segregation constraint is expressed by:

b'sw E SS ; Yv1BrSw[b.vl, b.swDest, sw]<_ 1 (4) beII

Similarly, for a set II of constituent paths to be subjected to a collocation constraint, i.e. that must pass through the same switches:

'dsw E SS ; db1,b2 E II;

v1BrSw[bi.vl, b1.swDest, sw] = v1BrSw[b2.vl, b2.swDest, swI (5) Of course, the constraints must be verified for all of the segregation and collocation instances to be taken into account, each instance being associated with a determined set II.
Alternatively, if relaxed segregation constraints are used, for any group g E GG , there will be paths forming virtual links, subject to such a constraint:

b'sw E SS , 1: sgSw[sg, sw]_< g.sgErrmax ( 5' ) Sg e g. sg11St sg.group=g
28 in which the decision variable sgSw[sg,sw] is defined by the following constraints:

-(Q+1)+(Q+l).sgSw[sg,sw]S v1BrSw[b.vl,b.swDest,sw] -Card(sg.pathlist) bEsg.pathlist and v1BrSw[b.vl, b.swDest, sw] - Card (sg.pathlist) + 1-< Q.sgSw[sg, sw]
bEsg.pathlist (5~~) with Q = Max (Card(sg.pathlist)) sgESG
The expressions (5" ) indeed mean:

sgSw[sg, sw] =1 i f v1BrSw[b.vl, b.swDest, sw] ? Card(sg.pathlist) besg.pathlist and sgSw[sg,sN]=0 if not.
The cost functions are also expressed on the basis of the aforementioned decision variables.

For example, the first cost function CF1 intended to independently minimize the number of switches traversed by the paths forming a virtual link can be expressed by:

C F 1 j:vlPath[vl, pjcard(p) ( 6 ) f EFF v1 E f.ocs pEPP

where card(p) is the cardinality of the numbered list p in other words the number of switches traversed by the path p .
29 It is possible to mathematically show that the second cost function, intended to minimize the number of switches common to the various paths of each multipoint virtual link can be expressed by:

(7) CFZ = Y, Y comBrSwwl, swl fEFF L'IEf.OCSSWESS
f.profile=1 Similarly, the third cost function, intended to minimize the number of switches common to the virtual links of a single functional bundle can be written:

CF3 = YcomfSwG f, swl ( 8) f EFF
f . profile=0 SWESS
It is also possible to show that the fourth cost function, intended to minimize the number of switches traversed by links of a functional bundle can simply be expressed by:

CF4= YfSw[f,sw1 ( 9 ) fEFF
f . profile=0 swESS
The fifth cost function is intended to route the virtual links so as to pass through the switches with the lightest loads. It is possible to determine, on the basis of the status file of the network and the links to be routed, the traffic cost between two adjacent switches. The term "adjacent switches" is used here to refer to switches swl,sw2 connected by a direct physical link. More specifically, it is first determined, for each of any pairs of adjacent switches swl,sw2, whether there is at least one virtual link passing successively through them:

Vf (=- FF; Vvl E f.ocs; b'swl,sw,) E SS;

v1SwNb[vl, swi , sw2 1= jvlPath[vl, pIcpss ( p, sw1, sw2 ) (10) pEPP

The decision variable v1Sw[vl,sw,,sw21 is expressed as a function of v1SwNbwl,sw,,sw 1 by means of the following linear constraints:

Vf E FF; dvl E f.ocs; b'swl,sw2 E SS;

10 vlSw[vl,swl,sw2 ]<_ v1SwNb[vl,sw,,swd v1SwNb[vl, swi, swz ]<_ (P + 1)vlSwwl, swj, swz ~ (11) This set of linear constraints indeed means:
v1Sw[vl,swi,sw,]=0 if v1SwNb[vl,swl,swz]=0 15 vlSw[vl,sw,,sw2~=1 if v1SwNb[vl,swj,sw21_1 (12) Similarly, the decision variable fixvl[sw1,sw21 is expressed as a function of the sum jv1Swwl,swI,sw21 by f EFF
V[E f .OCs vl.rted=0 means of the following linear constraints:
20 df E FF; dvl E f.ocs; b'swl, sw2 E SS;

fixvlIswI,sw1 1< IvlSw[Vl,swl, sw2 ]
f EFF
VIEf.OCS
vl. rted =0 Yv1Sw[vl, swõ sw2 ]_< (M +1)fixvl[sw,,sw1 I
fEFF
vtEf.ocs vl.rted=0 (13) with M=F.max(Card(f.ocs)) where F=Card(FF) f EFF

This set of linear constraints indeed means:
fixvl[sw,,swz 1= 0 if Y vlSwwl, sw/, swz 0 fEFF
v1E (.ocs vl. rted =0 fixv1[swl,sw ]=1 if v1Sww1,swl,sw2~>
f EFF
vlEf.ocs vl. rted =0 (14) The traffic cost of the output port of swl connected to sw2 is then evaluated for any pair of adjacent switches:

Vswl,sw2 E SS;

trfCst[swl, sw,]= trfCstPast[swl, sw2]+ y (Vl.cost).vlSwwl, sw,, swz ~
fEFF
v/E f.oCS
vLrted=0 (15) where trfCstPast1sw1,sw2] is the traffic cost between the switches swl,sw2 , i.e. at the output port of sM

connected to sw2 , cumulated over all of the virtual links already routed.
In other words, the calculation of the traffic cost is performed on the links already routed (vl.rted =1) and on the links to be routed (vl.rted =0) . The value trfCstPast[sw1,sw2] is initialized by that of the traffic cost induced by the fixed virtual links, i.e. of which the routing is unequivocal. It can be stored in the status file of the network.

The fifth cost function is then expressed as follows:

CF5 = max (trfCstw[swPsw2D (16) Sriy.SWZSSs by imposing the linear constraints:
bswl,sw2 ESS;

trfCstw[swl,sw, 1- trfCst[sw,,swz 1 _ M(fixAsw,,swz 1-1) trfCstw[swPsw2 1< trfCst[swl,swz 1 trfCstwlsw,,swz ] _ Mfixvl[sw,,swz 1 trfCst[sw,,sw1 ] < M (17) with M = max max (vl.cost) fEFF
v!E r.ocs This set of linear constraints indeed means, for any pair of switches siv,,swz :

trfCstw[sw,,sw, trfCst[sw,,sw, I if fixvl[sw,,swz 1=1 trfCstw[swi,sw 0 if fixvl[sw,,sw1]= 0 (18) This makes it possible to consider, in the decision variable trfCstw[sw,,swz] , only the contribution of the virtual links to be routed and, among these, only those that pass through swl,sw2.

If it is desired to perform a joint minimization of the cost functions, a new function CF =zalCFl is I

produced, a linear combination of the functions CFt with the weighting coefficients 0<_ al<1 . This is ultimately the search for the minimum cost function CF

that gives the optimal routing solution in the form of decision values. If a plurality of optimal solutions exist in the above sense, one of them is chosen arbitrarily.
Alternatively, the cost functions can be minimized one after the other, in order of decreasing priority, with each one being on the subset of solutions provided by the previous minimization step. In this embodiment, constraints can be taken into account between the minimization steps.
Whether it is by joint or successive minimization of the cost functions, the overall optimization on the set FF can lead to very long calculation times if the number of virtual links is high.
Advantageously, this set is then partitioned into independent subsets with the lowest cardinality possible, and the relative topological constraints and the minimization of the cost functions are applied only within each subset. Given that the virtual links of a single functional bundle cannot be routed independently, each subset is necessarily formed by one or more bundles. The routing algorithm is applied in sequence to said subsets.
It should be noted however that the independence of the subsets can be uncomplete. Thus, the minimisation of the cost function CF5 in principle involves all of the virtual links to be routed. In this case, the subsets of virtual links with the least routing freedom are preferred, for example those of which the links will in principle be shorter, with these subsets being treated in priority by the routing process.
Routing examples according to the invention will be provided below for an on-board network. In these examples, the cost functions are minimized successively.

The routing unit considered is in this case the functional bundle, with a virtual link being considered to be a bundle with a single link.
Figure 4 diagrammatically shows an example of routing of a point-to-point virtual link (or a one-link bundle), between a source terminal El and a destination terminal R1.
In step 410, the basic constraint is applied in order to determine the possible paths between the source terminal and the destination terminal.
In step 420, the relative topological constraints are applied, taking into account virtual links that have already been routed, if they exist, then, in 430, it is determined whether the terminals are on the same side of the network. If this is the case, in 435, a non-crossing (intra-zone routing) constraint is applied, and the cost function CF1 is minimized on the set of possible solutions by the previous constraints. However, if the terminals are not on the same side of the network, in 437, a crossing (one single inter-zone crossing) constraint is applied, and, as for the first case, the cost function CF1 is minimized on the set of possible solutions.

If steps 435 or 437 do not provide a single routing solution, the process is continued by minimizing, in 440, the cost function CF5 on the remaining solutions. The status file of the network is updated in 450.

Figure 5 diagrammatically shows an example of routing a multipoint virtual link (or one-link bundle), 5 between a source terminal E1 and a plurality K of destination terminals R1r R2, .., RK.

For each pair of terminals (E1r Rk) , in 5101, 5102, .., 510K, the basic constraint is applied so as to keep only the possible paths between E1 and 10 Rl,R?, ..,RK.
In 5201, 5202, .., 520K, the relative topological constraints are applied individually to the various paths, taking into account links already routed.

In each of the K sets of possible paths, the cost 15 functions CF1 are minimized individually, in 530,, 5302, . . , 530n,, respectively.
Then, in 540, all of the combinations of paths given by 5301, 5302, .., 530K, are produced, respectively.
A set of possible routing solutions for the virtual 20 link in question is thus obtained.

In 550, the cost function CF2 is then minimized on the set of these possible solutions.

If step 550 does not provide a single solution, in 560, the cost function CF4 is minimized on the set of 25 remaining solutions.
If step 560 still does not provide a single solution, the cost function CF5 is minimized in 570 on the set of remaining solutions, and the status file of the network is updated in 580.
30 Figure 6 diagrammatically shows an example of routing of a bundle of N point-to-point virtual links.

Each link is from a source terminal Ei and serves a destination terminal Rl, 1<i:~N.

For each pair of terminals (Ei, Rl) in 610i, the basic constraint is applied so as to keep only the paths possible between Ei and Ri.

Steps 620;, 630i, and 640 are equivalent to steps 520k, 530k, 540 except that, in 640, all of the possible routing solutions are obtained for the bundle of links.

Then, in 650, the cost function CF3 is minimized on the set of possible solutions.

If step 650 does not provide a single solution, in 660, the cost function CF4 is minimized on the set of remaining solutions.

If step 660 still does not provide a single solution, the cost function CF5 is minimized in 670 on the set of remaining solutions, and the status file of the network is updated in 680.

Figure 7 diagrammatically shows an example of routing of a bundle of N multipoint virtual links. It is assumed that each virtual link VLi is from a source terminal Ei and serves Ki destination terminals Rik with 1<i<-N and 1<k<-Ki.

In 710i the basic constraint is applied for all of the pairs of terminals (Ei, R;,k) , 1<k:~Ki then in 720i the relative topological constraints are applied, as in figure S.

At the end of 720i, Ki sets Pik of possible paths are obtained to form the virtual link VLi, with a set Pik being relative to a given pair (Ei, Rik) .

In step 7301, the cost function CF1 is minimized on each of these sets, as in steps 5301 to 530K of figure S.

In step 740, all of the possible combinations of all of the paths kept in step 730; are produced, with the understanding that, for each combination, only one path per pair (Ei,Rik) is selected. Each combination thus corresponds to K1+K2+...+KN paths kept. Thus, a set of possible routing solutions is obtained for the various virtual links VLi, i.e. a set of possible routing solutions of the bundle.

The remainder of the organizational chart is identical to that of figure 6, and steps 750, 760, 770 and 780 are respectively identical to those shown in 650, 660, 670 and 680.

S P 3 0 2 2 3 E.71 CA 02654969 2008-12-10 APPENDIX
The relaxed segregation constraints generally concern a group of paths forming virtual links to be routed simultaneously.

In figure 8, such a group of paths is shown symbolically.

It is assumed that three virtual links VL1,Vh,VU;
are to be routed simultaneously, and that their constituent paths are:

VL1 = P1' P1 , Pl ~P~
VL, = 2"P22'P2~
j%

VL3-P3'P3}%

In the example shown, the group GG of paths subjected to the relaxed segregation constraint is partitioned into Nsg = 4 subgroups sgl = W 1 , P12 ~ , sg2 = {Pl , P2 } ' sg3 - {P2 ;P1 } ' sg4 = ~P31 } =

The relaxed segregation constraint is expressed by a maximum number nsg < Nsg of subgroups capable of being invalidated by the failure of a single switch (for example, the failure of a switch will affect paths pl,p2 de sgl ). In other words, at least Nsg -nsg subgroups must each contain at least one path not corrupted by the failure of a switch.

An example of the application of a relaxed segregation constraint is provided below. The routing of virtual links between the flight management systems (FMS) and the flight control and guidance unit (FCGU) are considered. The first are classically responsible for assisting the pilot in navigation and flight management operations. The second calculate guidance and flight control orders.

We will assume that the aircraft includes two FMS
systems and four FCGU calculators, with each FMS system being at the source of a (multipoint) virtual link intended for the four FCGU calculators, as shown in figure 9. The architecture shown is of the "cross-check" type: each FCGU calculator receives flight parameters from the two FMS systems and performs a comparison. if the parameters received by a single calculator differ, the calculator indicates an error and does not perform the processing on the parameter.
The safety requirements require that an error on a parameter not remain undetected by more than one calculator. a denotes the parameter, or even a frame of such parameters, transmitted by the FMS systems, *
assumed to be correct, and a denotes an incorrect parameter, or even an incorrect frame of parameters, received by a FCGU calculator, in which the error is due to the failure of a switch.

As shown in figures 10A and 10B, a calculator may not detect an error in the case of bilateral corruption (case of FCGUlA in figure 10A and FCGUlA and FCGU2A in figure lOB), when the two incorrect parameters/incorrect frames are identical. This situation must not occur for more than one calculator.
Thus, the situation shown in figure 10A (a single undetected error) is acceptable, while that in figure lOB (two undetected errors) is not.

The group GG is considered to be made up of paths forming two virtual links to be routed:

VLl = ~PI 1 ' Pl , Pl , Pl VL2 - {P2,P2,P2,P2) and the group GG is partitioned into as many subgroups 10 as there are FCGU calculators, i.e. sg1,sg2,sg3,sg¾ , with each subgroup containing the two paths from the FMS
systems intended for the calculator considered. It is then required that the failure of a switch invalidates no more than one subgroup ( nsg =1 ) among the 4 (NSg = 4).

15 This relaxed segregation constraint makes it possible to ensure that no more than one FCGU calculator misses diagnosing an error due to a failure of a switch of the network.

Claims (26)

1. Process for routing virtual links in a frame-switching network including a plurality of source and/or destination terminals of said frames, in which frame switches are connected to one another by physical connections, with each virtual link being defined, for a point-to-point type, by a path through said network between a source terminal and a destination terminal, and, for a multipoint type, by a plurality of paths through said network between a source terminal and a plurality of destination terminals, which process is characterized in that, for at least one virtual link, it includes the following steps:

(a) selection (250), from a set of possible paths between the source terminal and the destination terminal(s), of a subset of paths satisfying at least one predetermined topological constraint;

(b) determination (260), among said subset, of a path for a point-to-point virtual link, or of a plurality of paths for a multipoint virtual link, minimizing at least one given cost function;
(c) routing (295) said virtual link according to the path(s) thus determined.
2. Routing process according to claim 1, characterized in that, with said virtual link being a point-to-point link and the network being partitioned into distinct zones, said topological constraint is a constraint (435) prohibiting crossing between zones if the switches connected respectively to the source terminal and the destination terminal belong to the same zone, and, in the opposite case, is a constraint (437) allowing a single crossing between zones belonging respectively to said source and destination terminals.
3. Routing process according to claim 1 or 2, characterized in that the selection step takes into account additional topological constraints (420) of segregation and/or collocation of paths possible with respect to virtual links already routed or to be routed simultaneously with said link or switches of said network.
4. Routing process according to claim 1 or 2, characterized in that the selection step takes into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality N sg of sub-groups of said paths, and said additional constraints express that, at most, a number n sg of sub-groups such that 0<=n sg < N sg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.
5. Routing process according to claim 2, 3 or 4, characterized in that said cost function (440) is the number of switches traversed by a path.
6. Routing process according to claim 1, characterized in that, with said virtual link being of a multipoint type and the network being partitioned into distinct zones, a constraint (520 1,..,520K) prohibiting crossing between zones is applied to each possible path between said source terminal and a destination terminal of said link, if the switches connected respectively to the source terminal and to said destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belonging respectively to said source and destination terminals is applied.
7. Routing process according to claim 6, characterized in that, in (520 1,..,520K), for each of the possible paths between said source and destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths are applied with respect to virtual links already routed or to be routed simultaneously with said link or switches.
8. Routing process according to claim 6, characterized in that the selection step takes into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality N sg of sub-groups of said paths, and said additional constraint expresses that, at most, a number n sg of sub-groups such that 0<=n sg < N sg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.
9. Routing process according to claim 6, 7 or 8 characterized in that said cost function is the number of switches traversed by a path, and is minimized (530 1,..,530K) on each set of possible paths between said source terminal and a destination terminal of said link, in order to provide at least one candidate path per destination terminal.
10. Routing process according to claim 9 characterized in that combinations of K candidate paths are produced (540) in which K is the number of destination terminals of the link, and each combination corresponds to a possible routing solution of said multipoint link, and a second cost function is minimized (550) on the set of said possible solutions thus obtained.
11. Routing process according to claim 10, characterized in that the second cost function evaluates, for each possible solution, the number of switches shared between its various constituent paths.
12. Routing process according to claim 1, characterized in that, for at least one group of links involved in performing the same function, referred to as a bundle of links, each link being point-to-point and the network being partitioned into distinct zones, a constraint prohibiting crossing between zones is applied, for each of the links of said bundle (620 1,..,620 N), to each possible path between the source terminal and the destination terminal of said link, if the switches connected respectively to the source terminal and to the destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belonging respectively to said source and destination terminals is applied.
13. Routing process according to claim 12, characterized in that, for each virtual link and for each of the possible paths between the source terminal and the destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths are applied (620 1,..,620K) with respect to virtual links already routed or to be routed simultaneously with said link or switches.
14. Routing process according to claim 12, characterized in that the selection step takes into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality N sg of sub-groups of said paths, and said additional constraints express that, at most, a number n sg of sub-groups such that 0<=n sg < N sg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.
15. Routing process according to claim 12, 13 or 14, characterized in that said cost function is the number of switches traversed by a path and is minimized (630 1,..,630 N), for each of the links of said bundle, on each set of possible paths between the source terminal and the destination terminal of said link, in order to provide at least one candidate path per link.
16. Routing process according to claim 15, characterized in that combinations of N candidate paths where N is the number of links of said bundle are produced (640), with each combination corresponding to a possible routing solution of said bundle, and a third cost function is minimized (650) on the set of said possible solutions thus obtained.
17. Routing process according to claim 16, characterized in that the third cost function evaluates, for each possible routing solution of the bundle, the number of switches shared between the paths of which said solution is the combination.
18. Routing process according to claim 1, characterized in that, for at least one group of links involved in performing the same function, referred to as a bundle of links, with each link being of a multipoint type and the network being partitioned into distinct zones, a constraint prohibiting crossing between zones is applied, for each of the links of said bundle (720 1,..,720N), to each possible path between the source terminal and the destination terminal of said link, if the switches connected respectively to the source terminal and to the destination terminal belong to the same zone, and, in the opposite case, a constraint allowing a single crossing between the zones belonging respectively to said source and destination terminals is applied.
19. Routing process according to claim 18, characterized in that, for each virtual link and for each of the possible paths between the source terminal and the destination terminal of said link, additional topological constraints of segregation and/or collocation of these paths are applied (720 1,..,770N) with respect to virtual links already routed or to be routed simultaneously with said link or switches of said network.
20. Routing process according to claim 18, characterized in that the selection step takes into account additional topological constraints, in which each additional topological constraint concerns a group of paths forming a set of virtual links to be routed simultaneously, in which said group is made up of a plurality N sg of sub-groups of said paths, and said additional constraints express that, at most, a number n sg of sub-groups such that 0<=n sg < N sg can be invalidated, with a sub-group being invalidated if all of the paths belonging to it are affected by the failure of the same switch of said network.
21. Routing process according to claim 18, 19 or 20, characterized in that said cost function is the number of switches traversed by a path and will be minimized (730 1,.., 730N), for each of the links of said bundle, on each set of possible paths between the source terminal and the destination terminal of said link, in order to provide at least one candidate path per link and per destination terminal.
22. Routing process according to claim 21, characterized in that combinations of K1+K2+...+K N
candidate paths where K i, 1<i<=N are the numbers of respective paths of the N links of said bundle are produced (740), with each combination corresponding to a possible routing solution of said bundle, and a fourth cost function is minimized (750) on the set of said possible solutions thus obtained.
23. Routing process according to claim 22, characterized in that the fourth cost function evaluates, for each possible routing solution of the bundle, the number of switches traversed by the links of the bundle corresponding to this solution.
24. Routing process according to one of claims 2, 6, 12 or 18, characterized in that said network zones are supplied by independent power supply sources.
25. Routing process according to one of the previous claims, characterized in that a fifth cost function evaluating the traffic load of the most heavily loaded switch of the network is minimized, on the set of the routing solutions obtained by minimizing one of the second, third or fourth cost functions.
26. Computer program including software means suitable for implementing the steps of the process according to one of the previous claims, when it is run on a computer.
CA2654969A 2006-06-12 2007-05-24 Process for routing virtual links in a frame-switching network Expired - Fee Related CA2654969C (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
FR0652093A FR2902255B1 (en) 2006-06-12 2006-06-12 METHOD FOR ROUTING VIRTUAL LINKS IN A FRAME SWITCHED NETWORK
FR0652093 2006-06-12
FR0752972 2007-01-30
FR0752972A FR2902256B1 (en) 2006-06-12 2007-01-30 METHOD FOR ROUTING VIRTUAL LINKS IN A FRAME SWITCHED NETWORK
PCT/FR2007/051323 WO2007144527A1 (en) 2006-06-12 2007-05-24 Method of routing virtual links in a frame-switching network

Publications (2)

Publication Number Publication Date
CA2654969A1 true CA2654969A1 (en) 2007-12-21
CA2654969C CA2654969C (en) 2016-04-05

Family

ID=38515530

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2654969A Expired - Fee Related CA2654969C (en) 2006-06-12 2007-05-24 Process for routing virtual links in a frame-switching network

Country Status (8)

Country Link
US (1) US8208476B2 (en)
EP (1) EP2030367B1 (en)
JP (1) JP5112426B2 (en)
BR (1) BRPI0712116A2 (en)
CA (1) CA2654969C (en)
FR (1) FR2902256B1 (en)
RU (1) RU2451410C2 (en)
WO (1) WO2007144527A1 (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2914519B1 (en) * 2007-03-26 2009-06-12 Airbus France Sas METHOD FOR CONTROLLING INTEGRITY OF DATA IN AN AFDX NETWORK
US9306766B2 (en) 2011-03-28 2016-04-05 Honeywell International Inc. Versatile source port enforcement for data networks
US8665884B2 (en) 2011-08-25 2014-03-04 Honeywell International Inc. Embedded end-to-end delay information for data networks
FR2984644B1 (en) * 2011-12-15 2014-01-17 Airbus Operations Sas AFDX NETWORK WITH PASSIVE OPTICAL ACCESS NETWORK
US20130208630A1 (en) * 2012-02-15 2013-08-15 Ge Aviation Systems Llc Avionics full-duplex switched ethernet network
GB2505203B (en) * 2012-08-22 2017-09-13 Ge Aviat Systems Ltd Method for allocation of network resources in an operations network for a selected environment
WO2014147453A1 (en) 2013-03-22 2014-09-25 Freescale Semiconductor, Inc. A multi-port transmitter device for transmitting at least partly redundant data, an associated control system, an associated method and an associated computer program product
US9813301B2 (en) * 2014-08-20 2017-11-07 Nec Corporation Optimization framework for multi-tenant data centers
US9913195B2 (en) * 2015-06-19 2018-03-06 Terranet Ab Mesh path selection
EP3313118A1 (en) * 2016-10-24 2018-04-25 Thomson Licensing Method to be implemented at a device configured to be connected to a customer premise equipment of a first type network, corresponding device
US10778575B2 (en) 2017-02-20 2020-09-15 Ge Aviation Systems Llc Systems and methods for scheduling a message
RU2757781C1 (en) * 2021-01-08 2021-10-21 Юрий Иванович Стародубцев Method for stable data routing in a virtual communication network

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623492A (en) * 1995-03-24 1997-04-22 U S West Technologies, Inc. Methods and systems for managing bandwidth resources in a fast packet switching network
US6175870B1 (en) * 1995-11-30 2001-01-16 Lucent Technologies Inc. Method of admission control and routing of virtual circuits
AU734747B2 (en) * 1996-01-31 2001-06-21 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US5682301A (en) * 1996-05-14 1997-10-28 Kraft; James L. Modular network cabling system for enterprise with multiple sites
US5754543A (en) * 1996-07-03 1998-05-19 Alcatel Data Networks, Inc. Connectivity matrix-based multi-cost routing
JP3332733B2 (en) * 1996-07-11 2002-10-07 株式会社東芝 Node device and packet transfer method
JP2964957B2 (en) * 1996-08-15 1999-10-18 日本電気株式会社 High-speed routing control method
KR100194608B1 (en) * 1996-11-20 1999-06-15 이계철 Multicast Path Allocation Method in ATM Networks
US6041057A (en) * 1997-03-24 2000-03-21 Xylan Corporation Self-configuring ATM network
US6584093B1 (en) * 1998-08-25 2003-06-24 Cisco Technology, Inc. Method and apparatus for automatic inter-domain routing of calls
US6363319B1 (en) * 1999-08-31 2002-03-26 Nortel Networks Limited Constraint-based route selection using biased cost
US6707820B1 (en) * 1999-12-16 2004-03-16 Intervoice Limited Partnership Virtual circuit network dynamic channel management
US7123620B1 (en) * 2000-04-25 2006-10-17 Cisco Technology, Inc. Apparatus and method for scalable and dynamic traffic engineering in a data communication network
GB0010514D0 (en) * 2000-05-03 2000-06-21 Marconi Comm Ltd Communications network
US6775271B1 (en) * 2000-05-17 2004-08-10 Intel Corporation Switching system and method for communicating information at a customer premises
US6785737B2 (en) * 2001-07-31 2004-08-31 Tropic Networks Inc. Network resource allocation methods and systems
FR2832011B1 (en) * 2001-11-05 2005-05-20 Airbus France COMMUTED FULL DUPLEX ETHERNET TYPE COMMUNICATION NETWORK AND METHOD FOR IMPLEMENTING THE SAME
US7889675B2 (en) * 2003-01-31 2011-02-15 Tellabs Operations, Inc. Method and system for multi-layer network routing
US7085242B2 (en) * 2002-03-22 2006-08-01 Telcordia Technologies, Inc. Virtual IP topology reconfiguration migration
JP4374307B2 (en) * 2004-10-20 2009-12-02 株式会社日立コミュニケーションテクノロジー Label switch path routing control method

Also Published As

Publication number Publication date
JP2009540713A (en) 2009-11-19
RU2008152059A (en) 2010-07-20
US20090180482A1 (en) 2009-07-16
EP2030367A1 (en) 2009-03-04
WO2007144527A1 (en) 2007-12-21
JP5112426B2 (en) 2013-01-09
US8208476B2 (en) 2012-06-26
EP2030367B1 (en) 2018-07-04
FR2902256B1 (en) 2009-09-25
RU2451410C2 (en) 2012-05-20
BRPI0712116A2 (en) 2012-01-31
CA2654969C (en) 2016-04-05
FR2902256A1 (en) 2007-12-14

Similar Documents

Publication Publication Date Title
CA2654969C (en) Process for routing virtual links in a frame-switching network
JP5418925B2 (en) Dynamic route branching system, dynamic route branching device, dynamic route branching method, communication system, node, control device, packet transfer method and program
JP4822997B2 (en) Communication apparatus and communication method
US20070070993A1 (en) Butterfly network with switches set for two node disjoint paths and method for forming the paths
JP5753917B2 (en) Network relay system and network relay device
CN108306777B (en) SDN controller-based virtual gateway active/standby switching method and device
US7660239B2 (en) Network data re-routing
KR101328355B1 (en) Method of reducing traffic of a network
CN104426720A (en) Network relay system and switching device
EP1471698B1 (en) Network fabric access device with multiple system side interfaces
KR101409919B1 (en) Method and apparatus for routing in a single tier switched network
US7346050B2 (en) Method, system, and storage medium for delay optimization for scheduling in bufferless crossbar switches
US20140098810A1 (en) Fabric chip having a port resolution module
KR20160003762A (en) Communication node, communication system, packet processing method and program
US9479391B2 (en) Implementing a switch fabric responsive to an unavailable path
CN101467390B (en) Process for routing virtual links in a frame-switching network
WO2012111808A1 (en) Network system
WO2021155663A1 (en) Method and apparatus for determining link forwarding service flow
KR101519517B1 (en) Control apparatus and method thereof in software defined network
CN115604174A (en) Cross-device link aggregation route calculation method, switch, system and storage medium

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20210525