The idea underlying the invention is to provide for each output port of an AFDX network switch, at least two queues one of which is reserved for the deterministic flows.
In a first embodiment of the switch according to the invention, two FIFO buffers are associated with each output port, one of them being dedicated to the deterministic flows. The queue of the FIFO buffer dedicated to the deterministic flows has priority relative to the other. To be more precise, the buffer relating to the non-deterministic flows is only stripped when the one dedicated to the deterministic flows is empty. In this way, given the frames of the deterministic flows, the network behaves practically as it does in the absence of any non-deterministic flow.
An AFDX network equipped with switches of this kind can support two service classes: a deterministic flow class and a class of the “best effort” type.
For the first service class, a prior check is made analytically, for example using the “network calculus” algorithm, that the routing solution for the virtual links belonging to the service class meets the latency limit and proper routing constraints in full.
On the other hand, for the second service class, neither latency limit nor probability of proper routing of the frames between the source terminal and the destination terminals is guaranteed.
According to a first variant, the switching table, shown at (B) additionally includes, for each virtual link, an identifier of the service class associated with it, here d for a link with a determinism guarantee and
According to a second variant, the switching table is identical to that in
It should be noted that if the virtual link is of the multi-point type, the frames may be switched to a plurality of output ports. In this case, as a function of the service class, the frame will be copied and stored in the buffers 440 or the buffers 441 associated with said output ports. The Output Port field then contains the list of output ports towards which the frame is to be switched.
At (C) it can be seen that the frames of VL1 are arranged in the order of their arrival in the buffer 540 and the frames of VL2, VL3 are arranged in the order of their arrival in the buffer 541. At (D) have been shown the frames emanating from the output port s3 as a function of time. The buffer 540 is emptied first, and then the frames contained in the buffer 541 are stripped.
In a second embodiment of the switch according to the invention, shown in
The elements 615, 630, 645 are identical to the elements 215, 230, 245 in
Statistical quality of service is defined as a probability of proper routing or, in an equivalent way as a loss rate. Another potential type of statistical quality of service is that of a median bandwidth. As far as the loss rate is concerned, a frame will be lost when the output buffer in which it is to be stored has reached saturation. The loss rate may be estimated in different ways particularly by statistical calculation, by Monte Carlo type simulation or by using measurements on representative networks. In the event of frame loss, a error recovery mechanism will be provided at a higher protocol level.
A check is made at 710 as to whether the buffer 640 is empty and, in the negative, it is used at 720, in other words its oldest frame is stripped. The process is iterated until the buffer 640 is empty. The next stage is testing 730 where a check is made as to whether the or all the buffers 641 are empty. In the affirmative, the testing stage 750 is implemented. In the negative, a distinction is made between a single buffer 641 and a plurality of buffers 641. In the first case, the single non-empty buffer is served at 740. In the second case, a selection strategy explained in detail below is applied. Then go back to testing 710.
At 750, a check is made as to whether the buffer 642 is empty. In the affirmative go back to testing 710. In the negative, this buffer is used at 760 then go back to testing 710.
According to a first strategy, the buffer 641 to be used at 740 is selected as a function of a priority level assigned to each buffer: a non-empty buffer of given priority level is only used if the non-empty buffers of higher priority levels have all been used. To do this, a service flag is used for each buffer and when all the buffers 641 have either been used or are empty, the flags are re-initialised.
According to a second strategy, the buffer to be stripped is selected according to a cyclical or pseudo-random sequence, each buffer 641 having on average a probability pi of being used at stage 740, with of course
Among these service quality classes, only the deterministic flow class allows a virtual circuit to be established between any two terminals of an AFDX network. On the other hand, the statistical service quality classes and all the more so the class with no service quality guarantee are not able to guarantee the proper routing of the frames. They do however allow the network resources left available by the deterministic flows to be used effectively.
Number | Date | Country | Kind |
---|---|---|---|
06 53382 | Aug 2006 | FR | national |