If the best-effort flow is a single flow, the jitter is important (around .... [19] S. Jiwasurat and G. Kesidis, âA class of shaped deficit Round-Robin (SDRR) Schedulerâ ...
Stochastic upper bounds for heterogeneous flows using a Static Priority Queueing on an AFDX network Fr´ed´eric Ridouard, Jean-Luc Scharbarg, Christian Fraboul Universit´e de Toulouse - IRIT/ENSEEIHT 2, rue Camichel 31000 Toulouse - France {Frederic.Ridouard,Jean−Luc.Scharbarg,Christian.Fraboul}@enseeiht.fr
Abstract In the AFDX networks used in modern aircraft such as A380, Ethernet frames are exchanged through avionic flows. Mapping of many avionic flows on multi switches Ethernet architecture leads to variable end-to-end delays. Furthermore, there is a need to handle new classes of traffics with different priorities (voice, video, best-effort, ...) on the same AFDX network with no consequences on existing avionic flows. Consequently, previous works done in the context of homogeneous flows have to be extended in order to bound the end-to-end transfer delay through the network of each class of traffic. In this paper, we present how stochastic upper bounds can be obtained when a static priority queueing service policy can be implemented on existing AFDX switches.
1
Introduction
Modular Avionics [1, 2] aims at integrating an increasing number of avionics functions. But it drastically raised the communication needs beyond the traditional ARINC 429 capabilities [3]. Thus, the development of a new avionics communication network was necessary to address the amount of exchanged data and the number of connections between functions. The AFDX (Avionics Full Duplex Switched Ethernet) network based on Switched Ethernet technology is now the reference example of deterministic network defined as a subset of the profiled networks in the ARINC 664 standard [4, 5, 6]. Determinism is still an important issue: thanks to the Full-Duplex Switched Ethernet technology, no collision may occur [7], but confluent flows compete for the output ports inside the switches, and thus the latency inside the switches may be important due to waiting time in output files. Moreover, temporary congestions may occur in the output files, caused by confluent traffic bursts for example, with the consequence of frame losses if the queues overflow. As avionics flows on an AFDX network are statically identified (Virtual Links characterization), it allows the prediction of the temporal behavior of a given application on the shared network architecture. This prediction is necessary in order to prove the deterministic behavior of the application and is obtained by the analysis of end-to-end delays of frames. Different approaches have been proposed to analyze the end-to-end delays. A comparison of three approaches (deterministic Network calculus, simulation and model-checking) has been presented in [8]. More results using a simulation approach have been presented in [9, 10] and a stochastic network calculus approach has been proposed in [11, 12]. All of them consider a single type of flows, e.g. avionics flows with no differentiation between them. In avionics context, an important characteristic of the end-to-end delay of a given flow is its upper bound. It is mandatory for certification reasons. This upper bound can be either deterministic or probabilistic. A probabilistic upper bound can be exceeded with a probability p. When p = 0, the upper bound is deterministic. p corresponds to the acceptable probability that a frame misses its deadline in the context of avionics functions. It has been shown that a pessimistic upper bound can be obtained by a deterministic network calculus approach, while stochastic network calculus can give a stochastic upper bound. In this paper, we are interested in stochastic upper bounds and we only consider a stochastic network calculus approach. For future aircrafts, it is envisioned to add other types of flows (audio, video, best-effort, . . .) on the AFDX network. In such a configuration, it’s of course still mandatory to guarantee end-to-end delays on existing avionics flows. Moreover, timing properties have to be ensured on the other types of flows. For example, jitter has to be bounded on audio traffic.
The study presented in this paper considers audio and best-effort flows sharing an AFDX network with existing avionics flows. It evaluates the end-to-end delays encountered by each type of flows, considering two different service disciplines on switches output ports : First In First Out (FIFO) and Static Priority Queueing (SPQ). SPQ is the only possible evolution of FIFO if we refer to the current AFDX switches characteristics. Section 2 gives a short overview of the AFDX network and specifies the end-to-end delays analysis problem in the context of this paper. Section 3.1 summarize the stochastic network calculus approach in the context of a FIFO service discipline and shows how it can be extended in the context of a SPQ service discipline. Section 4 gives some results on an industrial AFDX configuration. Finally, section 5 summarizes the contribution of the paper and proposes some directions for future works.
2
Scope of the study
In this section, we first give a brief overview of the AFDX network. Then, we formulate the problem of end-to-end delay analysis and the way it is addressed in the remaining of the paper. 2.1 The AFDX network A small example of an AFDX network architecture is depicted on figure 1. It is composed of several interconnected switches (5 on the example of figure 1). There are no buffers on input ports and one FIFO buffer for each output port. The inputs and outputs of the networks are called End Systems (the 12 little circles on figure 1). Each port of en End System is connected to exactly one switch port and each switch port is connected to at most one End System. Links between switches are all full duplex. e1 e2
v1,v2
e5 e6
v5,v6
v1,v3
v1,v3,v4
s1 v2
v3
v5,v8
v8
v5 s3
v7
e3 e4
s2
e7
v6,v7
e8
v4
v4,v5 s4 e9 e10
v4,v5 v2 v8
s5
e11 e12
v5 v4
Figure 1. Small AFDX configuration The end-to-end traffic characterization is done by the definition of Virtual Links. As standardized by ARINC-664, Virtual Link (VL) is a concept of virtual communication channels. Thus it is possible to statically define the flows which enter the network [6]. End Systems exchange Ethernet frames through VL. Switching a frame from a transmitting to a receiving End System is based on a VL (deterministic routing). The Virtual Link defines a logical unidirectional connection from one source End System to one or more destination End Systems. The small AFDX configuration of figure 1 includes 8 VLs. v4 is a multicast VL with two paths (e8−s4−s2−e3 and e8−s4−s5−e12). v8 is an example of unicast VL (e10−s5−s2−e4). The routing of each multicast VL is statically defined. Only one End System within the Avionics network can be the source of one Virtual Link, (i.e., Mono Emitter assumption). A typical industrial configuration include two redundant AFDX sub-networks. Each one is composed of eight switches. There is a total of about 150 end systems and 1000 VLs. Most of the time, physical links of an AFDX network are lightly loaded. On a typical industrial configuration, most of the links are loaded at less than 15 % and no link is loaded at more than 21 %. However, a congestion can occur at any time at any output port in case of a transient burst of traffic. This lead to variable end-to-end delays for frames of a given VL. 2.2 End-to-end delay analysis Frames exchanged between End Systems have to respect temporal constraints, depending on the type of flow they belong to. On an A380 aircraft, the AFDX network is only used by avionics flows, which have to respect bounded end-to-end delays. For future aircrafts, it is envisioned to add at least two other types of flows : • audio flows which have to respect a bounded jitter and a bounded end-to-end delay, • best-effort flows which have no strict temporal constraints.
2
End-to-end delays of avionics flows have been studied in the AFDX context. The deterministic Network Calculus approach [13, 14] gives a deterministic, but pessimistic upper bound of the end-to-end delay of each avionics VL path. An open question is to determine how pessimistic this upper bound is. The model checking approach [15, 16] determines an exact upper bound for the end-to-end delay and the corresponding scenario [8, 17], but it cannot be applied to a realistic network configuration, due to combinatorial explosion. Nevertheless, this approach can help greatly to better understand the behavior of the network. A simulation approach has been proposed to evaluate the distribution of the end-to-end delay of each VL path between its lower bound and its upper bound. It has been shown in [9, 10] that the distribution can be obtained by focusing the simulation on the part of the AFDX configuration relevant for the VL path under study. Moreover, a generic simulation model has been proposed in [10]. Finally, the stochastic network calculus approach, based on works of Vojnovi´c and Le Boudec, has been applied in order to get a stochastic upper bound for each avionics VL path [11, 12]. This stochastic upper bound can be exceeded with a given probability p, which corresponds to the acceptable probability that a frame misses its deadline in the context of avionics functions. All those approaches have been studied considering no differentiation between flows (a first in first out service discipline on switch output ports). In the context of future aircrafts, the heterogeneous temporal constraints of flows (audio, avionics, best-effort) suggests the use of a more sophisticated service discipline in order to isolate the different classes of flows and/or to associate different priorities to them. Many literature has been devoted to the use of a service discipline in the context of a switched Ethernet network [18, 19, 20, 21]. In this paper, we consider a Static Priority Queueing (SPQ) discipline, since it is the only possible evolution of FIFO if we consider the AFDX current switches characteristics. Informally, we assume that a priority is associate to each type of flow and that on each output port, the waiting frame with the higher priority is transmitted in a non preemptive manner. We use the Stochastic Network Calculus approach to calculate a stochastic upper bound on the end-to-end delay of each flow. In the next section, we briefly summarize previous results concerning the application of stochastic network calculus in the FIFO service discipline context and we show how it can be extended to SPQ.
3
The stochastic network calculus approach
The stochastic network calculus approach has been proposed in [11, 12], in the context of homogeneous avionics flows and a FIFO service discipline. In this section, we first summarize the approach in this context. Then, we show how it can be extended to heterogeneous flows and a Static Priority Queueing service discipline. 3.1 Previous approach in the FIFO queueing context In the FIFO queueing context, all the flows (VLs) of the network have the same priority and each switch output port can be considered as servicing an aggregate traffic (all the VLs crossing this port) with a constant rate c which is the capacity of the output link (e.g. 100M bps). Moreover, the individual flows are shaped separately at network access, by the assumption of the minimum delay between the emission of two consecutive frames, i.e. BAG (Bandwidth Allocation Gap). It corresponds to a network considering EF PHB (Expedited Forwarding Per-Hop Behavior) service of DiffServ (Differentiated Services) architecture [22]. The nodes (i.e. the switch output ports) are said PSRG (Packet Scale Rate Guarantee) nodes [23] and the EF traffic at a node is served with a rate independently of any other traffic transiting the same node. The stochastic network calculus approach presented in [24] applies to such network configurations. The works presented by Vojnovi´c and Le Boudec in [24] and [25] about networks with EF PHB service can be used to calculate the distribution of this waiting time for each switch. It is based on the probability of bound buffer overflow in the switch output port. Such a problem was previously addressed in [26] and [27]. Results presented in [24] and [25] have proposed the tightest upper bounds. It has been shown in [11] that Vojnovi´c and Le Boudec assumptions (mandatory in order to apply their results) are respected in our context. The service curve for each node is β(t) = ct with c being the output link capacity. Each VL is regulated by a leaky-bucket (αi (t) = ρi t + σi ) defined in the following way. σi is the maximum length of a frame of the max , where BAG is the minimum delay between the emission of two VL, denoted Smax . ρi is the VL maximum flow, SBAG consecutive frames of the VL by its source end system. Considering flows crossing a single switch (cf. Figure 2), let d(0) denote the delay through a node of a frame arriving in the node at time 0. The probability P(d(0) > u) that d(0) exceeds the value u can be calculated in the following way. The end-to-end delay of a frame transmitted by Virtual Link depends on the waiting time in the output buffer that depends on the load of the output port (backlog) at the arrival time of the frame. Consequently, the first result concerns the probability that during a fraction of time, the backlog present in a output buffer exceeds a given value. In [25], the authors present the tightest bound. In order to determine the waiting delay in the output buffer, we need to know the backlog in the buffer at the arrival time of a frame f . It is called the complementary distribution of the backlog. Informally, it is the probability that the size
3
Figure 2. Mono hop flows of all frames in the output buffer, including f exceeds the level b. This probability is denoted PA and named the Palm probability [28]. Finally, P(d(0) > u) is directly obtained from the Palm probability. The generalization of the approach ([12] to flows crossing several switches is done in the following way. The principle is that the analysis of end-to-end delay of a flow crossing several switches through a network is similar to the analysis of the same flow crossing a single switch. For a flow, all the switches crossed by the flow with all the flows crossing the switches is similar to cross a single switch and without any other flow. Consider, the network configuration depicted Figure 3.a and the end-to-end delay of f 1 is computed. The construction of the switch similar to the whole network, for a flow, is done in two steps : • First step, we use a result presented in [29]. The authors proved that, for a switch, if we know the arrival curve of all input flows and if we know the service curve offered to the aggregate flow by the switch, it can determine the service cure offered to each flow and its output curve. For example, for the flow f1 , crossing the switch SX , we determine the service curve βf1 ,SX offered to f 1 (cf. Figure 3.b) and the output curve α1∗ (t).
a.
f1
βX
βY
βZ
SX
SY
SZ
βf1 ,SX α2 (t) b. α (t) 1
SX
α1∗ (t)
Figure 3. First step of multi hops flow transformation. • Second step, we use an other result proved in (cf. [29]) that is the concatenation of switches. For a flow (for example f 1, cf. Figure 4.a), if we know for each crossed switch, the real service curve offered to the flow, the switches can be concatenated to a single switch. The service curve of this new switch is the convolution (cf. Definition 1) between the previous computes service curve (cf. Figure 4.b).
a.
f1
βf1 ,SX
βf1 ,SY
βf1 ,SZ
SX
SY
SZ
βf1 ,SX ⊗ βf1 ,SY ⊗ βf1 ,SZ b. f 1 Figure 4. Second step of multi hops flow transformation. Definition 1 Let f and g be two functions. The convolution of f and g is the function (f ⊗ g)(t) = inf {f (t − s) + g(s)} 0≤s≤t
3.2 Extension of the approach to Static Priority Queuing context In the AFDX context, the flows have to respect different temporal constraints according to the type of the flow. To promote some flows, we add to each flow, a new characteristic that is a static non preemptive priority. We consider P (with P > 0) 4
different priority classes. The order of the priorities is decreasing : 1 (resp. P ) denotes the highest (resp. lowest) priority that can be assigned to a flow. In the output buffer, the FIFO queuing discipline cannot take into account the priorities of the flows. If the priority queuing is SPQ : at the arrival time of a frame with a high priority frame, if the buffer is idle, the frame is immediately scheduled but the newly arriving frame cannot interrupt transmission of an other packet that has already commenced even if it is a low priority packet since the priority are not preemptive. A low priority frame must wait that the buffer is idle to be scheduled. The frame having the same priority are scheduled with the queuing policy FIFO. Now, we must show that the stochastic Network Calculus can be applied in the AFDX network if the service discipline is SPQ in the output buffer of the switches. Service curve: β(t) 1 f1,1 ... f1,n2 ...fi,j ...
2 f2,1 ... f2,n2 ... P fP,1 ... fP,nP
Figure 5. Priority Queuing in an output buffer. The figure 5 presents an output buffer using the SPQ service discipline. The frames arrive in the buffer and are stored in its priority queue. The frames scheduled are, first, the frames in the high priority queue (priority queue 1) and after in the others decreasing priority queue (priority queue 2, priority queue 3... priority P ). We just know the service curve offered by the node to the aggregated flow. If we determine the exact service curve offered to the flow aggregated of each priority class, the problem of the evaluation of end-to-end delay of the frames crossing this port using the priority queuing policy is similar to P independent problem of evaluation of the end-to-end delay of the frames crossing a node using the priority queuing FIFO since frames with the same priority are served in the order of their arrival times. The Figure 6 depicts a node whose we know the service curve βp (t) offered to each priority class p (p ∈ {1, ..., P }). At this step, we can apply the results presented in previous section to determine the end-to-end delay of each frame crossing the node and to propagate these results to flows crossing several switches. Service curve: βp (t)
...fp,j ...
p fp,1 ... fp,np
Figure 6. A single level of priority in an output buffer.
5
To determine, the service curve offered to the aggregated flow of each priority class, we use a result demonstrated in [29]. It has been proved that if we consider a node serving two flows, fH and fL with non-preemptive priority given to flow fH . If β(t) = Rt + T is the service curve offered to the aggregate of the two flows : • The service curve offered to fH , denoted βH , is βH (t) = Rt + T + frame transmitted by fL .
L lmax R
L where lmax is the maximum length of a
• The low priority flow is guaranteed a service curve βL (t) = (R − ρH )t + T + fH is αH (t) = ρH t + σH .
σH R−ρH .
where the arrival curve of
Therefore, to determine the service curve offered to each priority class, we use the Algorithm 1. The priority classes are studied in the decreasing order of the priority: the algorithm begin by the class 1 and finishes with the class P . For each priority class, we use the result previously presented and proved [29], considering that the high priority flow is the aggregated flow of the priority class analyzed and the low priority flow is the aggregate of all lower priority flow than the priority class studied. Algorithm 1: Computation of the service curve offered to each priority class Data: P , the number of priority classes. Data: β(t) = Rt + T , the service curve offered by a node to the aggregated flow. begin βL (t) ←− β(t); foreach p ←− 1 to P do lmax ←− Maximum length of frames transmitted by the low priority flows; βp (t) ←− βL (t) + lmax R ; αH (t) = ρH t + σH ←− The arrival curve of the high priority aggregated flow; σH βL (t) ←− βL (t) − ρH t + R−ρ ; H end
4
Results on an industrial configuration
We apply the stochastic network calculus approach presented in the previous section to an industrial configuration. The goal is to study the static allocation of priorities to flows. More precisely, we analyze the jitter and the upper bound of the flows end-to-end delays. We first describe the network configuration under study. Then, we compare the FIFO and SPQ strategies, considering different priorities allocations and different types of best-effort flows. 4.1 The network configuration The industrial configuration that we consider includes 8 switches, about 1000 VLs and 120 end systems. We have extracted an average VL, called vl1 , from this configuration. It is depicted on Figure 7, with all the others virtual links influencing its end-to-end delay. Compared with the others VLs of the network configuration, vl1 has a mean BAG and a mean maximum frame length. The other VLs on figure7 influence the end-to-end delay of vl1 in the output ports of switches AFDX SW 1 and/or AFDX SW 2. It has been shown in [9, 10] that VLs that don’t cross those output ports don’t influence the distribution of end-to-end delays. The network configuration is composed of two switches, twenty end systems, twenty two different paths of VL and between ninety and one hundred VLs.
βX ...
SX
βY ...
...
SY
...
vl1 Figure 7. The network configuration End systems on figure 7 correspond to avionics functions. For instance, PRIM1a, PRIM1b, SEC1a andSEC1a correspond to flight control functions. 6
Each switch output port serves the aggregate traffic (all the VLs crossing this port) with a constant rate c = 100b/µs (see section 3.1) except the output port of the end systems EEC1b, EEC2a, EEC3a, EEC4b that have a rate c = 10b/µs. For each path, the number of VLs by path is different. In our context, traffic inputs are heterogeneously regulated. Then, the VLs have different maximum frame lengths Smax and different BAG. vl1 is generated by end system ADIRU1, it crosses, first, the switch AFDX SW 1, then, the switch AFDX SW 2 and finally it comes out the network by the end system ADIRU2. The maximum length of a frame transmitted by vl1 is 64 bytes and its BAG is 32000µs. The results presented in this paper are computed with the probability 10−8 that the upper bound can be exceeded. In the following, we consider that the virtual link vl1 is a multimedia flow and all the others flows are real time avionic flows. In the following, we consider and study two cases: • first, just this network configuration , • then, the same network configuration with others best-effort flows. 4.2 Analysis of the network configuration without best-effort flows In this section, we consider the network configuration presented in the previous section (cf. Section 4.1). For the static priority queuing policy, the virtual link vl1 has a high priority since it is a multimedia flow whereas all the others virtual links have low priority.
Figure 8. Analysis of end-to-end delay of vl1 without best-effort flow. The figure 8 presents the results about the end-to-end delay of the vl1 and another VL, vl10 for both service disciplines FIFO and SPQ. The VL vl10 has the same characteristics that the virtual link vl1 (its Smax is 64 bytes and its BAG is 32000µs. vl10 is generated by the end system FM2, it crosses switch AFDX SW 2 and its destination is the end system ADIRU2. When the queuing policy is FIFO, the multimedia flow has the same priority that others flows. Consequently, the upper bound of its end-to-end delay is 470 µs and is greater than the end-to-end delay (199 µs) of the virtual link vl10 . The difference between the upper bound of the end-to-end delay of vl1 and vl10 is due to the difference between the path and between the load of ports crossed. If the queuing policy is SPQ, the multimedia flow is the single high priority flow. Therefore, it crosses the two switches more speedily than before with the FIFO policy. Its end-to-end delay is 99 µs. Its end-to-end delay is much less important than the delay of the virtual link vl10 that is always 199 µs. Moreover, the end-to-end delay of others flows doesn’t vary significantly(the maximum difference is three µs). In order to evaluate the jitter of flows, we have to compute the end-to-end delay lower bound for each flow. This lower bound is obtained when all the buffers crossed by the VL are empty. This case is frequently encountered, since the network is lightly loaded. The minimum end-to-end delay of a given flow is the sum of the switching delay (in this paper, we assume a constant value of 16µs) for each crossed switch and the transmission time (64 × 8/100 = 5.12 µs) on each output link. Therefore, the VL vl1 crosses two switches and three links, thus its lower bound (denoted LB) of the end-to-end delay is LB = 2 ∗ 16 + 3 ∗ 5.12 = 47.36µs. Concerning the jitter of the multimedia flow, the utilization of the static priority queuing policy can help greatly to obtain a low jitter and then a good quality of service. In fact, the jitter is the difference between the lower bound and the upper bound. If the queuing policy is FIFO, the jitter of the multimedia flow is equal to 422.64 µs (470 − 47.36) and its jitter decreases sensitively to 41.64 when the static priority queuing policy is used. Consequently, using the service discipline static priority queuing allows to obtain a best quality of service for some important flows without increasing significantly the end-to-end delay of others flows, when the number of high priority 7
flow is low. Obviously the degradation for low priority flows would be much more important with more high priority flows. 4.3 Analysis of the network configuration with best-effort flows In this Section, we add a set of VLs dedicated to best-effort traffics. The best-effort flows have no temporal constraints. The only goal is to minimize the loss ratio. The best-effort flows considered in the following use the same path that vl1 . Therefore, it comes in by the end system ADIRU1, it crosses successively the switches AFDX SW 1 and AFDX SW 2 and finally it comes out the network by the end system ADIRU2. A first evaluation is conducted on the two following cases: 1. a single best-effort VL, with a maximum frame length of 1000 bytes and a BAG of 4000 µs 2. five best-effort VLs with identical characteristics, i.e Smax = 1600 bytes and a BAG of 4000 µs. For the two cases, best-effort VLs represent a 2 % load for the network. For each case, we analyze three queuing policies: FIFO, SPQ with two priority levels and SPQ with three priority levels. If there are only two priority levels, the best-effort flows have the same priority than avionic flows whereas, if there are three priority level, the high priority is still for the multimedia flow vl1 , the second priority level, for avionic flows and finally, the low priority level for the best-effort flows.
Figure 9. Analysis of end-to-end delay of vl1 with a single best-effort flow. Figure 9 depicts the results obtained for the first studied case (a single best-effort flow). SPQ 2 (resp. SPQ 3) denotes, the results computed with the queuing policy SPQ with two (resp. three) priority levels. If the service discipline is FIFO, the end-to-end delay of the flow vl1 is 717 µs against 786 µs for f be1 whereas vl10 crossing a single switch experiment an end-to-end delay of (283 µs). The static priority queuing help greatly the flow vl1 to have a better end-to-end delay, 306 µs. With three priority levels, the end-to-end delay of vl10 is better (283 µs for two levels against 277 µs for three) but in counter part, the best-effort flow is slower (786 µs against 792 µs). To conclude with this experiment, the use of several priority levels does not ameliorate the end-to-end of multimedia flows but can help to decrease the end-to-end delay of the avionics flows. for the second studied case, the best-effort traffic is represented by five identical flows. The results are depicted on Figure 10. The flow f be1 denotes, a best-effort flow. The results obtained with several best-effort flows are similar than the results obtained with a single best-effort flow but there are relevant differences. In fact, for the queuing policy FIFO, the results are similar: for the flow vl1 (resp. vl10 ), 717 µs (resp. 283 µs) with a single best-effort flow against 721 µs (resp. 285 µs when there are five best-effort flows. Finally, the end-to-end delay of a best-effort flow is greater than the end-to-end delay of f be1 (cf. Figure 9). These increasing of end-to-end delay are due to the pessimism of computation linked to the number of flows. If the queuing policy is SPQ, the results are relevant since the end-to-end delay of the high priority flows (multimedia and avionic flows) decreases sensitively: for the multimedia flow, the end-to-end delay is equal to 306 µs with a single besteffort flow and only 180 µs when the best-effort traffic is shared between five flows, whereas for the avionic flow vl10 , the end-to-end delay decreases when it has a better priority than the best-effort flows: 277 µs for a single best-effort flow against 215 µs for five best-effort flows. The end-to-end delay of best-effort flows is degraded, for example for the static priority queuing policy with three priority level: 736 µs for a single best-effort flow against 792 µs for five best-effort flows.
8
Figure 10. Analysis of end-to-end delay of vl1 with five identical best-effort flows. Now we analyze the jitter of the multimedia flow. If the best-effort flow is a single flow, the jitter is important (around 260 µs) since the priorities are non-preemptive and then, if a best-effort frame begin to be scheduled, the multimedia frame must wait the end of the treatment of this frame. Therefore, if the best-effort traffic is divided between five identical flows, the end-to-end delay of the multimedia flow decreases sensitively, (around 137.7 µs). As a last experiment, we consider that 20% of the available bandwidth of the end system ADIRU1 is use to transmit besteffort flows. We consider the SPQ service discipline with three priority levels, since it seems the most promising one. We evaluate this configuration increasing the number of VLs constituting the best-effort traffic. This number is successively, 5, 10, 50 and finally, 500 (cf. Figure 11).
Figure 11. Variation of the number of Best-Effort flows with the static priority queuing policy with three priority levels
As we have seen previously, the increasing of the number of best-effort flows to represent the best-effort traffic help greatly to decreases the end-to-end delay of the high priority flow, since it decreases the frame size. Moreover, a multimedia frame cannot more be delayed by a single best-effort frame. Therefore, the end-to-end delay of the multimedia flow (resp. avionic flows) is equal to 1186 µs (resp. 358 µs) for five flows and decreases to 1026 µs (resp. 278 µs) for ten flows, 898 µs (resp. 215 µs) for fifty flows and finally 896 µs (resp. 201 µs) for five hundred flows. But we can see that the benefit of this frame size reduction becomes negligible when the transmission time of the frames becomes small and therefore we assist to a convergence of the end-to-end delay of high priority flows. Therefore, the use of several best-effort flows is better for the end-to-end delay and the quality of service of the high priority flows but the main consequence is the degradation of end-to-end delay of best-effort flows. To conclude about our results, two relevant information can be extracted about the static priority queuing policy and the best-effort flows. Use the static priority queuing policy with several priority levels helps to obtain a better quality of service for high priority flow. Moreover, concerning the best-effort flows, the best solution is to divide the best-effort 9
traffic between several small identical best-effort flows. This solution allows the high priority flows to have a low end-toend delay and so a low jitter, since they never have to wait for a long time the end of the current frame transmission. Results shown in this section confirm a classical priority affectation. If we consider a network with three types of flows (multimedia, avionics and best-effort), taking in account the previous results, the best choice of affectation, is the high priority to flows with quality of service constraints (in particular about the jitter). After, the flows with temporal constraints (the end-to-end delay cannot exceed a given value) can have a priority equals to 2 (that is a mean priority) and finally, the best-effort flows without temporal constraints inherits of the low priority. Moreover, it is mandatory to limit the frame size of low priority flows, due to the non-preemptive nature of frame transmission.
5
Conclusion
It has been already proved [11, 12] that the stochastic Network Calculus approach can be applied to AFDX context for multi hop homogeneous flows and when the queuing policy is FIFO. In this paper we propose an extension of these results to network using heterogeneous flows handled by the SPQ queuing policy. Such a work is mandatory when audio and best-effort flows must share the same AFDX network with existing avionics flows. We focus on Static Priority Queueing (SPQ) service policy, since it is the only policy that can be implemented on existing AFDX switches. We show that such a SPQ priority policy gives acceptable end-to-end delay upper bounds and jitters for time critical flows (multimedia and avionics). Due to the non-preemptive characteristic of frame transmission, frame lengths of best-effort flows have to be limited. In further works, we want to extend the stochastic network calculus to others priority queuing, such as Weighted Round Robin or Weighted Fair Queueing.
References [1] [2] [3] [4] [5] [6] [7]
[8] [9] [10]
[11] [12]
[13] [14] [15] [16] [17] [18] [19]
ARINC 651, Aeronautical Radio Inc. ARINC specification 651. Design Guidance for Integrated Modular Avionics., 1991. ARINC 653, Aeronautical Radio Inc. ARINC specification 653. Avionics application Software Standard Interface., 1997. ARINC 429, Aeronautical Radio Inc. ARINC specification 429. Digital Information Transfer System (DITS) parts 1,2,3., 2001. ARINC 664, Aircraft Data Network, Part 1: Systems Concepts and Overview., 2002. ARINC 664, Aircraft Data Network, Part 2: Ethernet Physical and Data Link Layer Specification., 2002. ARINC 664, Aircraft Data Network, Part 7: Deterministic Networks., 2003. J. Jasperneite, P. Neumann, M. Theis, and K. Watson, “Deterministic Real-Time Communication with Switched Ethernet”, in Proceedings of the 4th IEEE International Workshop on Factory Communication Systems, August 2002, pp. 11–18, V¨asteras, Sweden. IEEE Press. H. Charara, J.-L. Scharbarg, J. Ermont, and C. Fraboul, “Methods for Bounding end-to-end Delays on an AFDX Network”, in Proceedings of the 18th ECRTS, July 2006, Dresde, Germany. J.-L. Scharbarg and C. Fraboul, “Simulation for end-to-end delays distribution on a switched Ethernet”, in Proc. of the 12th International Conference on Emerging Technologies and Factory Automation, September 2007, Patras, Greece. IEEE. J.-L. Scharbarg and C. Fraboul, “A generic simulation model for end-to-end delays evaluation on an avionics switched Ethernet”, in Proc. of the 7th International Conference on Fieldbuses and networks in industrial and embedded systems, November 2007, Toulouse, France. IFAC. F. Ridouard, J. Scharbarg, and C. Fraboul, “Stochastic network calculus for end-to-end delays distribution evaluation on an avionics switched Ethernet”, in Proceedings of INDIN, July 2007. IEEE. F. Ridouard, J. Scharbarg, and C. Fraboul, “Stochastic network calculus for multi-switches flows on an avionics switched Ethernet”, in Proc. of the 7th International Conference on Fieldbuses and networks in industrial and embedded systems, November 2007. IFAC. R. Cruz, “A Calculus for network delay, Part I”, IEEE Transactions on Information Theory, vol. 37, no. 1, pp. 114–131, January 1991. R. Cruz, “A Calculus for network delay, Part II”, IEEE Transactions on Information Theory, vol. 37, no. 1, pp. 132–141, January 1991. R. Alur and D. L. Dill, “Theory of Timed Automata”, Theoritical Computer Science, vol. 126, no. 2, pp. 183–235, 1994. K. G. Larsen, P. Pettersson, and W. Yi, “UPPAAL in a Nutshell”, International Journal on Software Tools for Technology Transfer, vol. 1, no. 1–2, pp. 134–152, 1997. J. Ermont, J.-L. Scharbarg, and C. Fraboul, “Worst-case analysis of a mixed CAN/Switched Ethernet architecture”, in Proc. of the Real-Time and Network System Conference, May 2006, Poitiers, France. H. M. Chaskar and U. Madhow, “Fair scheduling with tunable latency: a round-robin approach”, IEEE Transactions on networking, , pp. 592–601, August 2003. S. Jiwasurat and G. Kesidis, “A class of shaped deficit Round-Robin (SDRR) Scheduler”, Telecommunication Systems, vol. 25, no. 3,4, pp. 173–191, 2004.
10
[20] A. Parekh and R. Gallager, “A generalised processor sharing approach to flow control in integrated services networks: the single-node case”, IEEE transactions on networking, June 1993. [21] H. Zhang, “Service Disciplines for guaranteed performance service in packet-switching networks”, Proceedings of the IEEE, vol. 83, no. 10, pp. 1374–1396, October 1995. [22] B. Davie, A. Charny, J. Bennett, K. Benson, J. Le Boudec, W. Courtney, S. Davari, V. Firoiu, and D. Stiliadis, “An Expedited Forwarding PHB (Per-Hop Behavior)”, Network Working Group, March 2002. [23] J. Bennett, K. Benson, A. Charny, W. Courtney, and J. Le Boudec, “Delay jitter bounds and packet scale rate guarantee for expedited forwarding”, IEEE/ACM Transactions on Networking, vol. 10, no. 4, August 2002. [24] M. Vojnovi´c and J. Le Boudec, “Stochastic analysis of some expedited forwarding networks”, in Proceedings of Infocom, New-York, June 2002. [25] M. Vojnovi´c and J. Le Boudec, “Bounds for independent regulated inputs multiplexed in a service curve network element”, IEEE Trans. on Communications, vol. 51, no. 5, May 2003. [26] C.-S. Chang, Y. Chiu, and W. Song, “On the performance of multiplexing independent regulated inputs”, In proc. of ACM Sigmetrics, Massachussets, USA, May 2001. [27] G. Kesidis and T. Kostantopoulos, “Worst-case performance of a buffer with independent shaped arrival processes”, IEEE Communications Letters, vol. 4, January 2000. [28] F. Baccelli and P. Bremaud, Elements of queueing theory, Springer, Berlin, 2000. [29] J.-Y. Le Boudec and P. Thiran, Network Calculus: A Theory of Deterministic Queuing Systems for the Internet, volume 2050 of Lecture Notes in Computer Science, Springer-Verlag, 2001, ISBN: 3-540-42184-X.
11