# Time-Dependent Performance of a Multi-Hop Software Defined Network
## 1 Introduction
SDN network performance has been analyzed using queueing theory [27; 28; 29; 30] and network calculus [31; 32; 33], but these performance evaluations are based on the assumption that the network is in steady state--i.e., after a sufficiently long time--so that network metrics such as queueing delays, the length of packet queue buffers of SDN switches, and packet losses become stable (or time-independent). On the other hand, it is important to understand the time-dependent behaviour of SDN switches affected by changes in paths notified by the SDN controller. The controller can suddenly change the flows that an SDN switch receives, changing its input traffic. Furthermore, for a given switch some flows may be moved from one output port to another to comply with the new path that they must follow. These sudden changes will have performance consequences, including queueing delays and packet losses, which can only be understood via time-dependent transient analysis. Unfortunately, conventional queueing network models are difficult to use in the transient regime because of the computational burden associated with their analysis; indeed, analyzing transients even in a simple single-server system with Poisson arrivals and exponential service times leads to the use of Bessel function expansions, and interconnected systems are quite hard to analyze in the transient case [34; 35; 36]. The analytical solution is known only in the case of single queues with Poisson input stream and exponentially distributed service times; see [37] for infinite and [38; 39] for finite queues. The models use Markov chains and solve Chapman-Kolmogorov equations (first-order linear differential equations), defining the state probabilities of \(n\) customers present in the system at time \(t\). The equations are solved analytically in the Laplace domain, and then the original functions in the time domain are found. Even in these relatively simple models, the solutions are quite complex--e.g., in the case of the infinite queue, the state probabilities are given in the form of the infinite series of modified Bessel functions of the first type and various order; the Bessel functions are themselves the infinite series. Some simplifications were proposed--e.g., the generating function of the distribution in the Laplace domain may be replaced by expressions with simpler original functions in the time domain [40], or Bessel functions may be replaced by easier-to-compute functions [41]. These analytical results do not fit well with the problem of modelling computer networks, where the streams incoming to switches are not Poisson and the sizes of packets--and therefore also the service times--are not exponentially distributed. We may introduce to Markov models interarrival and service times distributions composed of exponentially distributed phases--e.g., Cox distributions or hyper-Erlang distributions; the state definition is extended to include the current phase. There are numerous tools--e.g., [42]--that can match a phase-type distribution to any empirical histogram. However, the initial number of states should be multiplied--in this case, by the number of phases. This substantially increases the number of equations to be solved numerically. The solution is usually obtained using an existing tool--e.g., [43; 44]. We have applied this approach in modelling the transient states of an IP router, ref. [45]; to represent the service time distribution, we needed a hyper-Erlang distribution with three parallel Erlang distributions with 21, 1387, and 2 phases. This could be conducted in the case of a single queue, as we are able to solve systems of millions of equations numerically, but it is hard to use this approach in modelling a network of switches. The typical method is to use either fluid flow approximation [46] or diffusion approximation. The fluid flow approximation is much simpler, as it considers only the time-dependent mean values of flows, queues, and delays. However, its errors are much larger than those of diffusion approximation; see a comparison in [47].