Models of group poisson flows in telecommunica-tion traffic control

Cover Page


Cite item

Full Text

Abstract

The lack of effectiveness of the use of models of self-similar processes to the analysis of queues telecommunications systems is presented. The evolution of the flow models managed by Markov’s chain is considered. The specifics of the use of Markov’s flows as models of telecommunications traffic systems are considered. Models of single-channel queueing systems with input flows that have an arbitrary correlation are presented. Generalizations of the Khinchin-Pollaczek formula are given for these systems. The perspective of the application of interval methods developed by the author for queue analysis in queueing systems with correlated input flows is shown. It is suggested to use the group Poisson extraordinary flow as a model of telecommunication traffic. Interval characteristics of the given flows are reviewed and the prospects of their application are shown. The issues of multiplexing these flows during processing in queueing systems are considered. It is demonstrated that the resulting flow is also a group Poisson flow when summing up several group Poisson flows. The conclusions are confirmed by the simulation modeling results. The examples show the validity of such models to the characteristics of real video traffic flows.

Full Text

Introduction

The emergence of data networks with packet commutation showed that Poisson flow models were not adequate and the development of new models based on non-Poisson distributions is required. Flows with Weibull, Erlang, Pareto, gamma distributions, etc. are investigated. All-time intervals represented by these probability distributions were still considered to be mutually independent. This enabled the use of a well-designed queue theory apparatus for analyzing packet-switched networks. Description of complex correlated flows in modern telecommunications networks was often performed using "fractal" processes. Hundreds of works are devoted to the analysis of "self-similar" traffic. However, these studies did not bring significant practical results.

Insufficient efficiency of traffic representation by " self-similar" process models led to the creation of an entire class of thread models controlled by the Markov chain. The development stages of the above models are presented in the review [1]. In Russia, they were called MS-streams, while in the USA they evolved from "versatile" threads through "N-threads” (Nyuts flows) [2] to Markovian input threads (MAR - Markovian Arrival Process) and their generalization - Markov group input threads (BMAR - Batch Markovian Arrival Process) [6-13].

The impetus for the development of BMAR-models was their matrix representations, proposed in the works of M. Nyuts. The transition to the matrix representations of the probability characteristics of BMAP flows made it possible to describe their work and opened a wide scope for analytical research. However, the determination of the input stream characteristics was often done separately from the characteristics of its processing system. At the same time, such a characteristic as the time of batch processing in telecommunications systems depends not only on the system capacity but also is closely related to the size of the batch, which is one of the characteristics of the input flow. The most significant work in the field queueing systems analysis with such flows can probably be considered [3]. In our point of view, one of the promising directions of studying batch traffic is the interval method that we are developing [4], allowing us to replace the analysis of time intervals between neighboring requests and time intervals of processing requests with the analysis of one random value - the number of requests received during successive time intervals of processing each of the requests. It is demonstrated that the dispersion and correlation properties of the specified random value, at a specified load, fully describe the average queue size in queueing systems [4]. For single-channel SMOs, a ratio was obtained (1) that generalizes the known Khinchin-Pollaczek formula for the average queue value and is fair for any stationary application flows at a given load factor :

q(ρ)¯=Dm(ρ)+2Cov[qi1(ρ);mi(ρ)]2(1ρ)ρ2=mE(ρ)2(1ρ)ρ2. (1)

The analysis of the numerator mE(ρ) of formula (1) shows that the average queue value for flows of any kind depends on two components: the first component is a dispersion Dm(ρ) of the number of requests (packets) mi(ρ) received during the processing time interval of one request, and the second is a component due to the presence of correlation relations in the specified flow. Correlation relationships are taken into account by the covariance Cov[qi1(ρ);mi(ρ)] between values mi(ρ) and queue values qi1(ρ) in the previous analysis interval.

In a particular case, for Poisson flow, the specified component is equal to zero, and the variance is equal to Dm(ρ)=ρ. The generalized formula (1) then becomes ordinary when the service time is constant:

q(ρ)¯=ρ22(1ρ). (2)

Group Poisson extraordinary flow

One of the varieties of BMAR flows is an extraordinary Poisson flow of events. In such a flow, the stationarity property is executed and no consequence is produced, but the ordinariness property is not performed. Let us take a look at the Poisson flow of independent events with the parameter λ. Each event consists of a simultaneous appearance at the moment tk of a "batch" of μk independent randomly distributed numbers of applications, with the distribution Pμk=k=fk. Such a flow is called a Poisson extraordinary (group) flow of independent events and is considered in [5].

Assume that τ is a time interval for processing one application. We divide a sufficiently large interval of time T, during which the flow of the specified events is active, by Nτ of such successive intervals. We suppose that mi(τ) is the number of events that occurred during the i-th time interval τ. Then the probabilities of occurrence of exactly n events in the interval are subject to the Poisson law:

Pmi(τ)=n=Pn(λτ)=(λτ)nn!eλτ.

Each of the events is accompanied by the appearance of a "batch" with the distribution of probabilities of the number of requests fk. Let us introduce the producing function f(z)=k=0fkzk. All μk are mutually independent and equally distributed. This means that the appearance of exactly mi(τ) requests on the interval τ corresponds to probability (fk)n and the producing function [f(z)]n, provided that n events occurred on the specified interval.

The function producing the Gm(τ)(z) number of requests on the interval τ is:

Gm(τ)(z)=Pn(λτ)fzn=n=0(λτ)nn!eλτfzn==[n=0(λτf(z))nn!eλτf(z)]eλτ[f(z)1]=eλτ[f(z)1]..

Determine the average number of requests for τ:

m(τ)¯=i=0mi(τ)P1[mi(τ)]=Gm(τ)(z)zz=1=λτf1(z)eλτ[f(z)1]z=1=λτf1(1)

Considering that

f1(1)=ddzk=0fkzkz=1=k=0kfk=k¯,

We get: m(τ)¯=λτk¯, where k¯ – the average number of requests in the "batch". Defining the second starting point:

m(τ)2¯=i=0mi2(τ)P2[mi(τ)]=2Gm(τ)(z)z2z=1=λτf1(z)eλτ[f(z)1]z=1==[λτf11(z)+λτf1z2]eλτ[f(z)1]z=1=λτk2¯+λτk¯2=λτk2¯+m(τ)¯2.

Determining the dispersion of Dm(τ) number of requests at intervals τ: Dm(τ)=m(τ)2¯m(τ)¯2=λτk2¯=λτ(Dk+k¯2)=ρk¯(1+νk2), (3)

where ρ=λτk¯=m(τ)¯ – total load factor; νk2=Dk(k¯)2 – a square of the coefficient of variation of requests numbers in batches. Dispersion Dm(ρ) linearly depends on the load factor . Let us convert formula (1):

q(ρ)¯=Dm(ρ)J(ρ)2(1ρ)ρ2, (4)

where J(ρ)=1+2rqi1mi(ρ) – is called a covariance dispersion index and rqi1mi(ρ)=Cov[qi1(ρ);mi(ρ)]Dm(ρ) – is called normalized covariance function.

Further on with the help of simulation modeling, we show that at low load factors, the value of dispersion index for flows, with the Poisson distribution of requests numbers in batches, differs few from one. There the correlation component is practically absent. At the same time, the formula (1) is simplified mE(ρ)=Dm(ρ)=ρE and

q(ρ)¯=Dm(ρ)2(1ρ)ρ2=ρE2(1ρ)ρ2.., (5)

where E=k¯(1+νk2). Dispersion Dm(ρ) in (5) is linearly dependent on the load factor ρ, and its value is proportional to the average number of requests in a batch.

Allow us to consider private cases.

  1. Ordinary Poisson flow: ki=1,  k¯=1,   νk2=0E=1 – In this case, the formula (2) is valid.
  2. All batches have the same number of requests: k¯=k,   νk2=1k,    E=k¯+1, ki=1,  k¯=1,   νk2=0, E=k.
  3. The numbers of requests in batches are distributed according to Poisson law: k¯=k,   νk2=1k,    E=k¯+1.
  4. The numbers of requests in batches are integer and are distributed by exponential law: k¯=k,   νk2=1,    E=2k¯.

Group extraordinary Poisson flows with dependent number of requests in the batch

We have analyzed group Poisson flows in which random, mutually independent numbers of requests μk in batches also do not depend on time intervals between neighboring events (neighboring batches). Now let us take a look at the flow in which the specified numbers of requests in batches are proportional to the lengths of time intervals ϑk=tk+1tk between the neighboring batches μk=k¯λϑk. It is obvious that μk¯=k¯. Since intervals ϑk between neighboring batches are mutually independent and have an exponential distribution, the numbers of requests μk in batches are also mutually independent and have an exponential distribution with an average value of k¯, parameters νk2=1 and E=2k¯.

Unlike the above example, the number of requests in each of the batches is proportional to the lengths of the corresponding intervals ϑk, and the queue that occurs with the appearance of each of the batches has time to end before the next batch of requests arrives, even at a load factor equal to one.  

Let us demonstrate it, taking into account that μkτ=k¯λτϑk=ρϑk is the processing time of all requests on the interval ϑk. Using Δk=ϑkρϑk=ϑk(1ρ), let us define the stock by the processing time of all requests at a specified interval. The relative time stock Δkϑk=1ρ remains constant at all intervals and depends only on the load factor. At maximum load ρ=1, the stock is equal to zero, but the processing of all the requests in the queue has time to complete before the next batch of requests appears (this is well illustrated by figures 7-8 in the section with simulation results).

Even in the case of maximum load, when in the interval preceding the interval of a batch, the last request is processed, the queue of requests qi1(ρ)=0, and, consequently: qi1(ρ)mi(ρ)¯=0. Considering that Cov[qi1(ρ);mi(ρ)]=qi1(ρ)[mi(ρ)ρ]¯, we transform formula (1):

q(ρ)¯(1ρ)=Dm(ρ)2+Cov[qi1(ρ);mi(ρ)]ρ(1ρ)2=Dm(ρ)2+qi1(ρ)mi(ρ)¯q(ρ)¯ρρ(1ρ)2.q(ρ)¯=Dm(ρ)2ρ(1ρ)2=Eρρ(1ρ)2.

q(ρ)¯=k¯ρρ(1ρ)2. (6)

The maximum value of a fraction in the obtained expression does not exceed 0.125. Even with small values of the number of requests in batches, the characteristic q(ρ)¯ is almost linear, as shown in Figure 9 in the simulation section.

Equality to zero of the mathematical expectation qi1(ρ)mi(ρ)¯=0 indicates that for this flow, the mutual covariance Cov[qi1(ρ);mi(ρ)] is not equal to zero. It is negative:

Cov[qi1(ρ);mi(ρ)]=qi1(ρ)mi(ρ)¯q(ρ)¯ρ=q(ρ)¯ρ.

By substituting q(ρ)¯ values from (6), we obtain:

Cov[qi1(ρ);mi(ρ)]=k¯ρ2+ρ2(1ρ)2=k¯ρ2(11ρ2k¯). (7)

The covariance has almost a quadratic dependence on the load factor at sufficiently large values of numbers of requests in batches.

The ratio (7) allows us to determine the numerator values in the first fraction (1), which we identified in the simulation section in Figure 9 - through mE(ρ).

mE(ρ)=2k¯ρ(1ρ)(1+ρ2k¯). (8)

The specified dependence has a maximum at values of ρ0,5 - see Fig. 9. The member N decreases when substituted in formula (1). It is the presence of the member (1ρ) that leads to the almost linear dependence of the average queue size on the load factor shown in (6) for this flow.

Group hyperpoisson flows

The sum of independent simultaneously running parallel flows considered above is called a group hyperpoisson flow. Unlike most of the flows controlled by the Markov chain, all the summed up flows run not sequentially but continuously and in parallel in time. When receiving a hyperpoisson flow there is a summing up of several Poisson events flows, each of which represents a batch of simultaneously incoming requests. However, the total flow of events (batches appearances) is a Poisson flow. Therefore, the total request flow is also a group Poisson flow.

The linear dependence of the numerator in the formula (5) on the load factor at small loads greatly simplifies the determination of average sizes of the queues of the total hyperpoisson flow when multiplexing mutually independent group Poisson flows:

ρΣ=j=1Mρj;    EΣ=j=1MρjρΣEj   .

For average values of the generated queues, the resulting total hyperpoisson flow is equivalent to the corresponding group Poisson flow. However, the characteristics of their instantaneous values may differ significantly. Further on, we will show that an aggregate hyperpoisson flow with characteristics very close to the actual modeled flow can be obtained by an appropriate selection of characteristics of the summarized flows.

Simulation modeling

In this section, we confirm our conclusions with the results of simulation modeling using the software system developed by us [4]. The system allows us to obtain and study the main interval characteristics of flows presented in .txt format as a sequence of moments of receiving requests.

A group flow with the Poisson distribution of probabilities for independent numbers of requests in a batch. Two group Poisson flows with the same values of intensity λ=1 per second were generated. The first flow contained batches of requests having a Poisson distribution of numbers of requests in a batch with the average value of k1¯=10 requests in the batch and intensity of λ1=0,1 batches per second. λ=k¯1λ1=1 The second flow had the following characteristics:

λ=λ2=1  ;  k2¯=k2=1.

 

Fig. 1. Numbers of requests on service intervals for the first and second flows at load factor ρ=0,1

 

That is, each batch consisted of exactly one request and, therefore, the second flow was a common Poisson flow with an intensity equal to λ.

Figure 1 combines graphs of the number of requests at service intervals for the first and second flows with the load factor ρ=0,1. The Poisson flow is quite uniform and mainly has no more than one request, while the group batch flow in the same interval has more than 10 requests, the numbers of which are distributed by the Poisson law. The patchy nature of a group flow leads to the appearance of large queues during its maintenance.

 

Fig. 2. Queues arising from the maintenance of the group Poisson flow in a single-line queuing system at a load factor of ρ=0,5

 

In Figure 2 you can see a graph of the queue change when servicing a group Poisson flow in a single-line queuing system at load factor, ρ=0,5. The maximum values of request numbers in queues exceed 60, which is the result of high flow patchiness.

The most significant interval characteristic of the flows under consideration is the dependence of dispersion Dm(ρ) numbers of service interval requests on the load factor. We have shown that this dependence is linear and for the Poisson distribution of probabilities of numbers of requests in batches, it is determined by the ratio (3). At the specified parameters of the group flow:

νk2=Dk(k¯)2=1k¯=0,1;   E=k¯(1+νk2)=11,

while for the common Poisson flow E=1. The dependencies of the dispersion of Dm(ρ) numbers of requests at service intervals on the load factor, which were obtained as a result of simulation of both flows, are shown in figure 3. The above diagram corresponds to a group Poisson flow with an angle of slope E=11. The lower figure represents a normal Poisson flow with an angle of slope E=1.

 

Fig. 3. Dependencies of dispersion Dm(ρ) numbers of requests at service intervals on the load factor

 

The middle graph shows the flow obtained by summing up the specified flows. You can see that all dependencies are strictly linear. Figure 4 shows the dependencies of average sizes of q(ρ)¯ queues on the load factor derived from the simulation of both flows.

 

Fig. 4. Dependencies of average queues sizes q(ρ)¯ on load factor

 

The top graph is a group flow, the bottom graph is a Poisson flow. The upper corner shows the queue size value for the group flow, at load factor ρ=0,5 obtained directly from the graph, q(ρ)¯=5,186. The theoretical value is determined by the formula (4), q(ρ)¯=5,25. The slight difference is explained by the simulation process error and the influence of correlation relations.

Queues at small loads. A group Poisson flow was generated with the value of intensity λ=100 per second. The flow contained batches of requests having the Poisson distribution of numbers of requests in a batch with average value k1¯=100 of requests in a batch and intensity λ1=1 of receiving batches of a batch in a second, λ=k¯1λ1=100.

Figure 5 shows the change of numerator Dm(ρ)J(ρ) values in formula (4) (solid line) and the change of dispersion Dm(ρ) (dot line) for load factors ρ not exceeding 0,5.

 

Fig. 5. Change of numerator Dm(ρ)J(ρ) values and change of dispersion Dm(ρ) values

 

In the areas where the lines coincide, the dispersion index is equal to one, which means a small influence of the correlation component. The average value of the queue is determined mainly by the dispersion.

Figure 6 illustrates the change in average queue size and the change in dispersion Dm(ρ) (straight line) for load factors ρ not exceeding 0.5. In this section, the difference is about 30%. Let us study this parameter in more detail:

Δ(ρ)=Dm(ρ)q(ρ)¯=ρEρE2(1ρ)ρ2.

The point of lines crossing represents ρ0=E+12E0,5 loading. The maximum difference value represents ρm=E+12(2E1)0,25 loading.

The maximum difference Δ(ρm)8,3 exceeds the value of queue q(ρm)¯ also by approximately 30%.

 

Fig. 6. The change of average values of the queue size and dispersion for load factors ρ not exceeding 0.5

 

A group flow with an exponential distribution of probabilities of numbers of requests in batches, depending on time intervals between batches

The modeling was carried out in comparison with a group flow with the Poisson distribution of the probability of independent requests in batches. Two flows of batches with the same intensity λ=1 and an exponential distribution of probability intervals between neighboring batches were generated. The numbers of requests in batches of the first flow have an exponential distribution of probabilities, with an average value of k¯1=100, and are proportional to the lengths of intervals between batches. The numbers of requests in batches of the second flow are distributed according to the Poisson law with the average number of requests in batch k¯2=200. This enabled both flows to make the same dispersion of the number of requests at service intervals. 105 requests were generated for each of the flows.

Figures 7-8 show graphs of queue changes at load factor ρ=0,9 for the first and second flows, respectively. From figure 7 you can see that the queues, which occur with the appearance of batches of requests, do not intersect in time. There is also no queue before the appearance of each next batch. However, for the second flow, shown in Figure 8, the queues intersect. Moreover, the maximum values of the queues far exceed the maximum values of the first flow.

In Figure 9, some characteristics of the flows are combined for comparison. The dependencies of dispersions Dm(ρ) for both flows are combined and represented by the top (solid) straight line. The dependency of the queue q(ρ)¯ for the first flow is also linear; it is represented by a lower (dotted) straight line having an angle of slope twice smaller than the dispersion line, which fully coincides with (6).

 

Fig. 7. Resizing queues in time for the first flow

 

Fig. 8. Resizing queues in time for the second flow

 

Fig. 9. Dependencies of dispersions Dm(ρ)

Both flows are combined (top solid straight line). Queue dependency q(ρ)¯ for the first flow (dotted straight line); queue dependency for the second flow (dotted curve line); numerator dependency mE(ρ) in formula (1) for the first flow (arc, solid line).

Approximation of average values of real traffic queues

Analysis of two threads considered above showed that they have fundamentally different characteristics of queue dependencies on load factor. Characteristics of a flow with dependent requests are strictly linear, and the characteristic of a flow with independent numbers of requests in batches increases non-linearly at large loads. Using these differences, we can create a group hyperpoisson flow from two such flows. By selecting the appropriate parameters of this flow, we can get dependencies of the average size of queues q(ρ)¯ on the load factor, which are very close to the appropriate characteristics of real traffic.

 

Fig. 10. Dependencies of the average size of queues q(ρ)¯ for real video traffic (dotted line) and for group flow (solid line)

 

Figure 10 shows the dependencies of average queue sizes q(ρ)¯ on the load factor for real video traffic and for a group flow that has a Poisson distribution of request numbers in batches with the value k¯=420. We observe a satisfactory coincidence. Nevertheless, the reasons for queues in both cases are significantly different. In the case of video traffic, the major contribution to queue formation is made by correlation relations. In the second case, the major contribution to the queue formation is caused by dispersion, with a slight influence of correlation relations.

This is well illustrated by the dependencies of dispersions of both flows on the load factor presented in Figure 11.

The dispersion sizes of the group Poisson flow request numbers at the same loads considerably exceed the corresponding dispersion values of the real video traffic flow.

 

Fig. 11. Dispersion dependencies for real video traffic (dotted line) and for group flow (solid line)

 

Conclusions

  1. The insignificant influence of correlation connections in the group Poisson flow makes it attractive as a model of telecommunication traffic.
  2. If several group Poisson flows are summed up, the resulting flow is also a group Poisson flow.
  3. The group Poisson flow proposed in this work with the dependent number of requests in batches has a linear characteristic of the average queue size q(ρ)¯.
  4. In a group flow with an independent number of requests in batches distributed by Poisson law, the covariance component of the numerator in the generalized Khinchin-Pollaczek formula is practically absent, and the average queue size is determined by the dispersion values Dm(ρ) linearly depending on the load factor.
  5. The principal difference of characteristics in multiplexing of the mentioned above flows allows to us get the total dependence, which approximates well the characteristic of real telecommunication traffic.
×

About the authors

Boris Y. Likhttsinder

Povolzhsky State University of Telecommunications and Informatic

Author for correspondence.
Email: lixt@psuti.ru

Dr. Sci. (Techn.), Professor

Russian Federation, 23, L. Tolstoy st., Samara, 443010

Yulia O. Bakai

Povolzhsky State University of Telecommunications and Informatic

Email: lixt@psuti.ru

Student

Russian Federation, 23, L. Tolstoy st., Samara, 443010

References

  1. Vishnevskiy, V.M.; Dudin, A.N. Mass service systems with the correlated input flows and their application for the telecommunication network modeling (in Russian) // Automatics and telemechanics. 2017. Vol. 8. P. 3–59.
  2. Neuts M.F. Versatile Markovian point process // Journal of Applied Probability. 1979. Vol. 16, Issue 4. P. 764-779. DOI: https://doi.org/10.2307/3213143.
  3. Dudin A.N., Klimenok V.I. Mass service systems with correlated flows (in Russian). Minsk: BSU, 2000. 175 p.
  4. Likhttsinder B.Ya. Traffic of multiservice access networks (interval analysis and design) (in Russian). Mos-cow: Hotline - Telecom, 2018. 290 p.
  5. Variants of Poisson flow of events (in Russian). URL: https://studfile.net/preview/7316586/ page:7/ (Ac-cessed: 26.09.2019).
  6. Ramaswami V. The N/G/1 queue and its detailed analysis // Advances in Applied Probability. 1980. Vol. 12. Issue 1. P. 222–261. DOI: https://doi.org/10.2307/1426503.
  7. Lakatos L., Szeidl L., Telek M. Introduction to Queueing Systems with Telecommunication Applications // Springer Science+Business Media. 2013. 388 p. DOI: https://doi.org/10.1007/978-1-4614-5317-8.
  8. Lema M.A., Pardo E., Galinina O., Andreev S., Dohler M. Flexible Dual-Connectivity Spectrum Aggrega-tion for Decoupled Uplink and Downlink Access in 5G Heterogeneous Systems // IEEE Journal on Selected Areas in Communications. 2016. Vol. 34. Issue 1. P. 2851–2865. DOI: https://doi.org/10.1109/ JSAC.2016.2615185.
  9. Niknam S., Nasir A.A., Mehrpouyan H., Natarajan B. A Multiband OFDMA Heterogeneous Network for Millimeter Wave 5G Wireless Applications // IEEE Access. 2016. Vol. 4. P. 5640–5648. DOI: https://doi.org/10.1109/ ACCESS.2016.2604364.
  10. Vishnevsky V., Larionov A., Frolov S. Design and Scheduling in 5G Stationary and Mobile Communication Systems Based on Wireless Millimeter-Wave Mesh Networks // Distributed Computer and Communication Networks. 2014. Vol. 279. P. 11-27. DOI: https://doi.org/10.1007/978-3-319-05209-0_2.
  11. Vishnevsky V.M., Larionov A.A., Ivanov R.E., Dudin M. Applying graph-theoretic approach for time-frequency resource allocation in 5G MmWave backhaul network // Advances in Wireless and Optical Com-munications (RTUWO). 2016. P. 221–224. DOI: https://doi.org/10.1109/RTUWO.2016.7821888.
  12. Leland W.E., Taqqu M.S., Willinger W., Wilson D.V. On the Self-Similar Nature of Ethernet Traffic // IEEE/ACM Transactions on Networking. 1994. Vol. 2. № 1. P. 1–15.
  13. Tsybakov B. S. Teletraffic model based on the self-similar random process (in Russian) // Radio engineering. 1999. Vol. 5. P. 24–31.

Supplementary files

Supplementary Files
Action
1. JATS XML
2. Fig. 1

Download (149KB)
3. Fig. 2

Download (193KB)
4. Fig. 3

Download (174KB)
5. Fig. 4

Download (120KB)
6. Fig. 5

Download (109KB)
7. Fig. 6

Download (142KB)
8. Fig. 7

Download (98KB)
9. Fig. 8

Download (112KB)
10. Fig. 9

Download (119KB)
11. Fig. 10

Download (125KB)
12. Fig. 11

Download (143KB)

Copyright (c) 2020 Samara State Technical University

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies