Introduction

Frequency-domain adaptation methods employed in loop controllers [2, 3] are rarely found in computer networks [13, 20], even if the topic of a self-adapting computer network [17], a derivative of the more general vision of adaptable systems [7, 11], is increasingly discussed. One of the reasons might be that traffic conditions in computer networks can be very variable, inducing in effect a strong noise on the system, which in itself may show a non-linear and non-deterministic behaviour, these factors decreasing the quality of frequency response. Together with the requirement of a proven reliability of a computer network, this may lead to a preference of precise, mathematically proven methods, like the many TCP flow control techniques.

To estimate the robustness of the loop control methods in question, here, we test the quality of a frequency-domain response on a highly noisy model of an experimental optical network NGREEN [4, 6], facing constant traffic change. A sinusoidal perturbation of the system constantly introduces small modifications into a main, strategy of self-adaptation of the network [4] which already contains its own feedback mechanisms. Possible resulting oscillations in the quality of the behaviour of the system are then detected, a response useful in loop control algorithms like the widely known Ziegler–Nichols method. For example, we may apply a low-amplitude sine wave into some strategy parameter \(a\) (so that it still oscillates around its original value) and search for a response wave of a similar frequency in some quality function \(q\). To test the limits of obtaining a response useful for adapting \(a\), we use a highly variable, noisy traffic generation.

The paper is constructed as follows. Section 3 precises the terminology, and then, Sect. 4 briefly describes a network architecture which we simulate to test our method. Section 5 defines the model of traffic applied. In Sect. 6, we analyse step and frequency responses of the system in question; finally, in Sect. 7, we observe the optimisation process. Section 8 concludes the paper.

Similar Work

Implementation of PID-based loop controllers in optical networks is limited. In [18, 19], the authors present methods of control which manage both computing and network resourcing. This is possible via managing certain tasks in optical grid networks and establishing dynamic light paths in wavelength-division multiplexing networks. In [9, 10], bandwidth allocation is managed to minimize delay in passive optical networks. Their strategy demonstrated a better performance and robustness than previously existing dynamic bandwidth allocation algorithms.

Terminology

Let there be a system \(S\), whose designer does not know, how should a set of its parameters \(P_i\) , \(i = 1, 2, \ldots K\) follow different operational conditions (like the traffic in the case of a computer network). Yet, the designer knows that some of these parameters may vary within a certain domain \(D\) with no critical change of the system’s behaviour, which must remain robust. The designer may choose a mean point within the domain in question and left it like that, which is a common practice. But why not take advantage of the arbitrariness provided by \(D\), and instead make the point \(\{P_1, P_2, \ldots P_K\}\) oscillate in a working device, looking at the same time at its momentary performance? The testing might possibly discover some dynamically changing sweet spot. It would not be explicitly defined, how the sweet spot changes its position, the system would just follow its own diagnostics in quasi-real time, thus a self-adaptation. This is opposed to, e.g., following an equation known a priori, like that of RTT defined in RFC 6298 [15].

A small \(D\) poses extra difficulties—\(P_i\) must oscillate with a small amplitude, likely much smaller than \(D\), as if we want to compare the quality of different regions within \(D\), a normal approach is to study them separately. Thus, the emitter signal is small. The receiver signal, e.g., some performance criteria like a queue length, might thus get lost in the noise produced by, amongst others, a varying traffic. As we are interested in the limits of the presented approach, we actually want a low signal-to-noise ratio. For this end, we will use a dedicated traffic generator, which constantly mixes several traffic streams to increase the heterogeneity. A sophisticated computer network often has internal optimisation mechanisms, which tune the network in a considerable range. An oscillation with a small \(D\) and thus a limited tuning range might be a secondary optimisation mechanism—in the further studied case, it is literally a tuning of tuning, i.e., searching for an optimal strategy of a primary tuning.

Studied System: An Optical NGREEN Ring

We have chosen an experimental optical network of an average complexity of packet management—an NGREEN ring of coloured packets [6]. It is normally predestined to be used in metropolitan aggregation networks based on 5G [12], but due to its low cost, an adaptation to a bursty traffic found, e.g., in data centres is considered [4]. We will improve that adaptation by the said tuning of tuning—one of the strategy-regulating coefficients which is normally constant will oscillate.

We will briefly describe the traits of the architecture relevant to the topic of this paper, and the details can be found in [4]. We simulate an unidirectional optical ring divided into \(M=1000\) fixed-size slots of \(S=12{,}500\) bytes each. There are \(N=10\) nodes \(N_i,i=1,\ldots N\), randomly distributed along the ring. A slot passes a node in the optical medium during \(s_t = 1\,\upmu\)s, which gives a transfer rate of 100 Gbps. Despite that the slots (or the packets in them) are coloured, to greatly decrease the costs, there is only a single, common optical gate/amplifier (SOA) [16] for all wavelengths. This means that a slot can only be dropped in its totality, as the wavelengths are all either amplified or suppressed. The trait makes the fact that there are multiple wavelengths, irrelevant to the further presented optimisation method.

Along the ring, there also exists a bidirectional control channel, which allows the nodes to exchange some control information or statistics. The channel is essential for the optimisation method presented in [4]—it turns out that if each node broadcasts in the two available directions and in each 1 \(\upmu\)s its momentary electronic input queue size, an effective optimisation can be employed called there GLOBAL. The name comes from the fact that each node \(N_i\) uses global, if delayed information about the momentary size in bytes of input queues \(S_j\), \(j = 1, \ldots N\) of all nodes along the ring, and not only its own local information about \(S_i\).

It is important to consider a bidirectional control channel, as it substantially decreases the delays of the propagation of \(S_i\). To keep the paper focused (no need to consider the routing) and to speed up the simulation, we do not take into account a bidirectional transmission possible for regular packets (as in some variants of NGREEN), assuming that for certain traffic models, the second ring would behave in a way symmetrical to the unidirectional one considered.

We consider a 10 Gbps Ethernet card at each node, which can thus produce together \(V_{\max }=100\,\text {Gbps}\) being the theoretical maximum transmission speed of the (unidirectional) ring. Let a load \(L\) represents a traffic of an average of \(LV_{\max }\). As logically no packet is transmitted around the whole ring, depending on the traffic model and the packet strategy, \(L\) can have a value of up to 1 without a resulting packet loss.

We consider that the ring (except for the special control channel) is in the broadcast-and-select mode (B&S) [1], where a slot can be filled only by a single node until it is dropped in its entirety after the last of its multiple destinations possible. To increase performance, packets can be segmented, i.e., their subsequent fragments can be scattered along multiple slots. There is a predefined function used by each \(N_i\) for each of the packets to be inserted into the ring:

$$\begin{aligned} \begin{array}{rcl} \displaystyle t_{\mathrm {opt}}(N_i, N_t) &{}=&{} a + a_S\frac{S_i}{d} + a_{\mathrm {mean}}\frac{S_{\mathrm {mean}}(N_i, N_t)}{d} \\ &{}&{} + a_{\max }\frac{S_{\max }(N_i, N_t)}{d}, \\ t_{\max }(N_i, N_t) &{}=&{} t_{\mathrm {lim}}\left( t_{\mathrm {opt}}(N_i, N_t)\right) , \\ \end{array} \end{aligned}$$
(1)

where the empirical constant \(d=1 \times 10^{5}\) is meant to better the performance of direct optimisations like the Nelder–Mead method [14] by increasing the isotropy of the optimisation space—local quality maxima are not flattened or squashed in the direction of the three coefficients multiplied by queue-size-related values. The equation gives a “good” timer expiration value \(t_{\max }\), i.e., a packet age after which the packet is unconditionally inserted into the ring as soon as possible, even if the resulting slot fill ratio were not 100%. \(N_i\) and \(N_t\) are, respectively, a source and a destination node of a packet \(p\) (still in the input buffer of \(N_i\)) whose \(t_{\max }\) is calculated. \(S_{\mathrm {mean}}(N_i, N_t)\) and \(S_{\max }(N_i, N_t)\) are, respectively, the mean and the maximum buffer size in nodes within the future path of \(p\), computed on the basis of the most current information about \(S_i\) known by a node. See that for \(p\), we do not take here into account \(N_t\) and further nodes, which in the case of the mode B&S can be seen as a simplification—as said, a slot is removed from the ring after the last destination of packets within it, and thus, a packet with a destination \(N_t\) may still be a load to the ring even after \(N_t\) is reached.

There is an intermediary function \(t_{\mathrm {lim}}\) in (1)—in a simple case, it would just clamp \(t_{\mathrm {opt}}\) into a domain which makes sense for \(t_{\max }\)—in particular, it would prevent \(t_{\max }\) from being negative, which has no sense for an expiration time. We have two reason for not just clamping the value:

  • The coefficients \(a, a_S, a_{\mathrm {mean}}, a_{\max }\) are normally meant to be constants predefined once in a simulation, using a direct optimisation method. For such methods, it is essential that there are no flat quality regions in the optimisation space, as these are the different values of the quality function which direct the optimisation; otherwise, it might “get lost”, which may give reason to, e.g., a runaway effect leading to nonsensically large values of the optimised coefficients.

  • Instead, a new application is found for these regions—a temporal accumulation of \(t_{\max }\).

For this, we introduce an accumulation value \(C_i\) for each \(N_i\), with the following interpretation, allowing an optional temporal inertia when estimating \(t_{\max }\):

  • negative \(C_i\) means that \(t_{\max }\) should also be small in some short period in the future, i.e., something occurred which is a strong predictor, that there will not be a need for larger \(t_{\max }\) soon;

  • on the contrary, positive \(C_i\) indicates a strong predictor, that a large \(t_{\max }\) will be required for some time.

Let \(t_{\mathrm {lim}}(t)\) controls both \(t_{\max }\) and \(C_i\) as follows:

$$\begin{aligned} C'_i= & {} \max (-I_C, \min (I_C, C_i + t)) \nonumber \\ t_{\max }= & {} \max (t_l, \min (t_h, C'_i)) \nonumber \\ C_i= & {} C_i - t_{\max }. \end{aligned}$$
(2)

\(C_i\) stores either an “excessive” or an “insufficient” expiration time; these two extremes represented by \(t_l\) and \(t_h\), the storage to be reused as soon as possible. We limit the inertia by \(I_C = 1\,\text {ms}\) (a considerable period in the case of NGREEN) as we assume that long-term prediction of network conditions is not robust, and thus, long-term shaping of \(t_{\max }\) by \(C_i\) is not needed, and something not needed but active may potentially be harmful.

We allow \(t_l=0\) which equals to an opportunistic mode, e.g., any packet is inserted into the optical ring as soon as possible. On the basic of practical considerations found in [1], we set \(t_h=100\,\upmu \text {s}\), as higher expiration times were not found usable in the case of NGREEN.

The discussed run–once optimisation normally settle \(a, a_S, a_{\mathrm {mean}}\) and \(a_{\max }\) forever. We regard these four values as a representation of a possible strategy of packet management. So defined, the strategy is constant. To make it oscillate, we could constantly change one or more of these coefficients in a production NGREEN ring. Furthermore, we will apply different oscillations to \(a_{\mathrm {mean}}\). The response in question is \(\hat{S}_{\mathrm {mean}}\), a global average of evaluations of \(S_{\mathrm {mean}}\) in (1) within a further defined averaging period; we assume that \(\hat{S}_{\mathrm {mean}}\) is inversely related to quality. \(\hat{S}_{\mathrm {mean}}\) is not instantly available at a node—a delay of the order of \(s_t M/2\) (we divide by 2 as the control channel is bidirectional) is needed to exchange data required for the calculation of \(\hat{S}_{\mathrm {mean}}\) by each node.

Traffic Model

As we talk about a constant adaptation of strategy in noisy conditions, let us make the traffic model very variable, much more variable that a bare CAIDA trace [5] used in [4]. We will make a mixture of two very different CAIDA traces and for contrast, of a node-symmetric traffic given by a Poisson process, with packets of an equal size. All the three sources have the same mean packet size and the CAIDA traces are individually processed as described in [4].

Fig. 1
figure 1

Normalised histograms (or discrete probability distributions) of the CAIDA traces a A and b B against a source and a target node, found by dividing the two MSB of anonymised IP addresses into ten equal fragments. c A cumulative flowchart showing the probabilities of acceptance of packets in three sources, \(m_n = 0.95\). Assuming that each of the sources has a mean rate of 1, the upper edge of the coloured area shows the effective packet rate

Figure 1a sums up these two traces; we see a purposely very different occupation of nodes as sources/destinations.

Let there be some sources to mix \(s_i\), \(i = 1, 2, \ldots s_{\mathrm {NUM}}\). At each time instant \(t\), a mixing function provides \(s_{\mathrm {NUM}}\) values \(k_i \in \left<0, 1\right>\). Let these be mapped to acceptance probabilities \(p^{\mathrm {acc}}_i\) of packets in each of the sources:

$$\begin{aligned} p^{\mathrm {acc}}_i = \left( 1 - m_\mathrm{n} + \frac{m_\mathrm{n}}{\sum _i k_i}\right) k_i, \end{aligned}$$
(3)

where \(m_\mathrm{n}\) is a normalisation factor, so that \(\sum _i p_i\) is always 1 for \(m_\mathrm{n} = 1\) and there is no normalisation at all for \(m_\mathrm{n} = 0\); see Fig. 1b for an example of the mixing function. We use a rather high \(m_\mathrm{n} = 0.95\), because even such a traffic was difficult to handle by the network at large \(L\), comparing to a single CAIDA trace. It is because given the different probability distributions in Fig. 1a and the burstiness of the CAIDA sources, the momentary rate of input traffic still varies a lot at individual nodes.

Instead of using a stochastic mathematical equation as a source of \(k_i\), we took three more CAIDA traces, calculated their instantaneous rates, and multiplied the time by \(m_{s}=500\) (i.e., made them \(m_{s}\) times slower, compared to the three mixed traces) and normalised then to have a mean of \(s_{\mathrm {NUM}}^{-1}\) each. This hopefully reflects better the phenomenons like a self-similarity, found in real telecommunication networks.

The traffic with the varying mixing function applied will further be called MIXED. For contrast, we will also use its homogeneous variant POISSON, where all packets from the Poisson source are accepted, the two CAIDA sources ignored.

Responses to Stimuli

Let the stimulus be a rectangular or a sine wave of a frequency \(f\). To gather a mean (step, frequency) response of the network, nodes will use local histograms that store \(S_{\mathrm {mean}}\) against \(\mod (t, f^{-1})\) where \(t\) is a time of evaluation of (1); a histogram is thus swept with a frequency of \(f\) similarly to an oscilloscope and for the same purpose—to observe a waveform of that frequency. These histograms will then be integrated over all nodes into a response given by \(\hat{S}_{\mathrm {mean}}\).

In case of the further simulations, let the total simulated time during which arrive packets, whose statistics are taken into account, be equal to \(T_s=\)10 s, unless otherwise stated. Actual simulated time lasts until the last of these packets leaves the network.

Step Response

To get some insights, we first analyse a response to a rectangular wave, emitted as said through \(a_{\mathrm {mean}}\). Let the coefficient vary between \(0\) and twice its optimal (predefined) value \(a^{\mathrm {mean}}_{\mathrm {opt}}.\)

Fig. 2
figure 2

Step response: optimal \(a_{\mathrm {mean}}\) is multiplied by a square waveform of levels 0, 2, and a given frequency. Vertical dashed lines show, respectively, the beginning and the end of the higher value of \(a_{\mathrm {mean}}\)

To see clearly different elements in the network’s behaviour, Fig. 2a shows a case of a moderate oscillation frequency, a low traffic noise, and a moderate \(L\). Due to propagation delays along the control channel, \(\hat{S}_{\mathrm {mean}}\) is updated progressively, which is seen in the slopes in the response, found directly after each flip of \(a_{\mathrm {mean}}\). After any of the two slopes occurs an overshot followed by a slight ringing, a shape similar to that expected from an electrical serial RLC circuit with a near-critical damping. Several factors play a role here: an instantaneous increase of \(a_{\mathrm {mean}}\) is reflected by increased \(t_{\max }\); this slows down the insertion of packets into the ring. This in turn increases the queues, which due to positive \(a_{\mathrm {mean}}\) cause a further increase of \(t_{\max }\) (predefined constants and arguments in (1) are positive). This produces effects, which in contrast promote an increased packet insertion:

  • the ring becomes empty, the free slots reach the nodes which follow ring-wise;

  • the longer queues allow a more probable 100% fill ratio of a slot, thus less need for waiting for \(t_{\max }\).

These factors may decrease \(\hat{S}_{\mathrm {mean}}\) which decreases \(t_{\max }\), etc. As seen, there exist a set of complex circular dependencies, which may make it difficult to predict a better strategy. Yet, all in all, we see that in the analysed case, a stabilised high \(a_{\mathrm {mean}}\) increases buffer sizes and vice versa. We suppose that larger buffer sizes are expected to be proportional to the mean latency, an essential quality trait of a network. We thus conclude that for the operating point in Fig. 2a, the mean value of \(a_{\mathrm {mean}}\) should be decreased.

In Fig. 2b, comparing to (a), the traffic MIXED is used and also the load is increased. Due to the burstiness and heterogeneity of the traffic, we superimposed \(\hat{S}_{\mathrm {mean}}^0\), which is like \(\hat{S}_{\mathrm {mean}}\) but with a constant \(a_{\mathrm {mean}}\) (a fixed strategy). The visible unevenness of \(\hat{S}_{\mathrm {mean}}^0\) shows that at this operating point, the noisiness of the response is considerable.

The bottom row in Fig. 2 illustrates another problem: the two responses seem very similar, but the mechanism behind them is radically different: in (c), \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) are positively related: what is seen in the plot are small parts of slopes in (a). This is why the curve changes direction exactly when \(a_{\mathrm {mean}}\) changes, like in (a). In (d), similarly to (b), \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) are negatively related yet the phase delay between them makes (d) mimic (c)—it is betrayed by a change in the response direction seen slightly before the stimulus flips. This illustrates, though, potential difficulties in analysing the character of the response by, e.g., an FFT transform. See that the relatively high frequency of 977 Hz in (d) has also high phase delays, but on the contrary, \(\hat{S}_{\mathrm {mean}}^0\) is almost flat, and thus, the noise originating from the variable traffic is supposed to be low for that frequency. This trade-off may signify that there is some optimal frequency between the two considered here.

Frequency Response

The step response revealed traps which we need to avoid also in the case of the sinusoidal oscillation of \(a_{\mathrm {mean}}\), which we would rather want to use, as we are afraid of potential abrupt changes produced in the network by a rectangular oscillation (see the overshoots in Fig. 2) and also we expect a sinusoidal oscillation to produce a more focused answer in the further used frequency domain. Let for an amplitude of \(A=1\) the coefficient \(a_{\mathrm {mean}}\) oscillate in the same range of \(\big \{0, 2a^{\mathrm {mean}}_{\mathrm {opt}}\big \}\) as in Sect. 6.1.

Fig. 3
figure 3

Bode diagrams of an NGREEN ring against different \(L\) and traffic models, \(A=1\). As the stimulus and the response are in different units, we normalised the magnifications by comparing them at high frequencies and assuming 0 dB at low frequencies

Similarly to what we did in Sect. 6.1, let us start with low loads and the traffic POISSON. The respective bode diagram, at the top row of Fig. 3, like Fig. 2a, shows a characteristic similar to that of a low-pass filter made of passive electrical components. Due to the high speed of NGREEN, the part of a phase delay induced mostly by network delays (like the transmission of packets) should be at very low frequencies negligible. We see that for these frequencies, a low noise of the traffic POISSON allows an observed total phase delay of \(\approx 0\) which shows that \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) are positively related. At about 300 Hz, the relation between \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) should not radically change due to the small \(D\), and thus, the phase delays observed there are mostly by the network delays. At higher frequencies, besides an increasing phase delay, we possibly observe various aliasing effects, resulting from network delays or ringing frequencies being similar to the frequencies of the stimulus. Anyway, the uninterpretability of phase makes these regions unusable for our purposes.

The subsequent Bode diagram for the traffic MIXED shows a considerable noise at frequencies \(< 100\,\text {Hz}\) for the assumed \(T_s\). The noise could be reduced by longer simulation times, but we would want \(a_{\mathrm {mean}}\) to be able to traverse a considerable part of \(D\) within \(< T_s\), so that the self-adaptation reacts fast, and the noise is thus something to take into account instead. An apparent source of the noise might be the considerably uneven \(\hat{S}_{\mathrm {mean}}^0\), comparing to the response, seen in Fig. 2b.

Fig. 4
figure 4

\(S_{\mathrm {mean}}\) against different \(L\) and \(a_{\mathrm {mean}}\), both table during an entire simulation: lines for \(a^{\mathrm {mean}}_{\mathrm {opt}}\), triangles for \(a_{\mathrm {mean}}= \big \{0, 2a^{\mathrm {mean}}_{\mathrm {opt}}\big \}\); due to the limited effect of \(a_{\mathrm {mean}}\) on \(\hat{S}_{\mathrm {mean}}\), the actual distance of triangles to the line is exaggerated by a multiplier of 5 for a better visibility. Phase values interpreted as in Bode diagrams

The other cause might be a disappearing relation between \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\), seen between \(L=0.7\) and \(L=0.8\) in Fig. 4. This may make the oscillation of \(a_{\mathrm {mean}}\) has no considerable effect on the network, thus whichever the response is; it can be just noise with no relation to the phase of \(a_{\mathrm {mean}}\). The noise seems to slowly disappear at \(> 250\,\text {Hz}\), what is seen instead at \(\approx 300\,\text {Hz}\) and for larger \(L\) is a positive phase, which would correspond to delays \(> \pi\). Yet, we cannot explain it by network delays, as they were small for the traffic POISSON at the same frequencies and we find it unlikely that they radically changed due to the traffic MIXED (slots propagate at the same speed and the phase delay is similar for high frequencies). We find it more probable that the phase at \(\approx 300\,\text {Hz}\) is a transition between (1) a mixture of \(\approx 0\) and \(\approx \pi\), characteristic for \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) positively/negatively related, and (2) \(\approx -\pi /2\), observed at frequencies of about 1000 Hz, where the phase delays converge and magnifications decrease almost uniformly for all \(L\) (thus for all relations between \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\)), which suggest that the oscillation of \(a_{\mathrm {mean}}\) is too fast at these frequencies to considerably affect \(\hat{S}_{\mathrm {mean}}\). The hypothesis that the phases at \(\approx 300\,\text {Hz}\) are not just a random noise residue is strengthened by the Bode diagram for a simulation time of \(4T_s\), where the noise seems to decrease even earlier, at \(\approx 200\,\text {Hz}\).

The region of 350 Hz seems to be optimal—phases are considerably less noisy comparing to the lower frequencies, are not uniform for all \(L\) in the case of higher frequencies, and their values can be roughly mapped to the relation between \(a_{\mathrm {mean}}\) and \(\hat{S}_{\mathrm {mean}}\) seen in Fig. 4.

Optimisation

Observing the Bode diagrams in Fig. 3 and the phases \(\phi\) in Fig. 4, especially at the tipping point for the traffic MIXED between \(L=0.7\) and \(L=0.8\), we classify \(\phi\) as follows:

  • let \(a_{\mathrm {mean}}\) be increased by \(a_{\mathrm {step}}\) iff \(\phi \in (\frac{3}{8} \pi , \pi \rangle\);

  • let \(a_{\mathrm {mean}}\) be decreased by \(a_{\mathrm {step}}\) iff \(\phi \in (-\pi /2, \frac{3}{8} \pi \rangle\);

  • otherwise, let \(a_{\mathrm {mean}}\) be not modified as we cannot say anything decided enough about this range of delays.

In this simple demonstrative scheme, we do not take into account the amplification. Yet, if the received signal is weak or nonexistent, this may make the strategy just randomly drift.

See that we allow an arbitrary value of \(t_{\max }\) which is obviously outside any reasonable limits of \(D\). This is done on purpose: we want to see if the accumulation of \(t_{\max }\), discussed in Sect. 4, helps in directing the optimisation, and also what happens with the quality if there is a possible runaway.

Fig. 5
figure 5

Adaptation of \(a_{\mathrm {mean}}\) during different optimisation processes; the central frequency is always 354 Hz

Figure 5a shows an optimisation process, where after each \(F=27\) oscillations of 354 Hz, an averaged response is processed with a Fast Fourier Transform, and then, \(a_{\mathrm {mean}}\) is modified with a step of \(a_{\mathrm {step}} = a^{\mathrm {mean}}_{\mathrm {opt}}/20\), depending on the phase. \(F\) and \(a_{\mathrm {step}}\) were found experimentally as providing an adaptation time of the order of \(T_s\), so that the level of noise which we considered in the averaged responses is more or less apt. Longer adaptation times would likely decrease the noise—see \(\phi\) for \(2T_s\) in Fig. 4, where the phase increases the most between the two borderline cases of \(L=0.7\) and \(L=0.8\). We also reduced the oscillation amplitude from \(A = 1\) to 0.5 to keep better with the idea of minimally intrusive modification of strategy. The adaptation of \(a_{\mathrm {mean}}\) roughly follows the direction to smaller \(\hat{S}_{\mathrm {mean}}\) depicted by the triangles in Fig. 4, except for the borderline cases where \(a_{\mathrm {mean}}\) changes undecidedly.

Fig. 6
figure 6

Quality for different loads and the traffic model MIXED, without and with different types of strategy oscillation. See that an extended simulation time \(2T_s\) is important for larger \(L\)

Figure 6 shows the performance of the frequency-domain strategy tuning, comparing to the original strategy GLOBAL: given the limited effect of \(a_{\mathrm {mean}}\) seen in the exaggerated Fig. 4, the tuning works well as a “tuning of tuning”, even for the smaller oscillation amplitude. Predictably, there is no improvement for the borderline cases, i.e., \(a_{\mathrm {mean}}\) is meaningless there. An occasional runaway effect which makes \(a_{\mathrm {mean}}< -2 \times 10^{-4}\) for \(L=0.5\) (compare Fig. 6 to Fig. 5) is detrimental. This shows the importance of keeping the strategy within \(D\) to keep the system robust—in Fig. 5b, we prevent \(a_{\mathrm {mean}}\) from being negative.

Discussion

The results point to a potential usefulness of traditional frequency-domain control loop methods in optimising a noisy telecommunication infrastructure, if a suitable range of frequencies is chosen. To increase robustness, we would consider an automated online method.

We work on a variant of the method with frequency modulation, where to test a response at some frequency \(f\), we use a sequence of frequencies close to \(f\). A cross-correlation technique similar to [8] might then be used to increase the resistance to noise, and thus improve the response quality.