Modeling of Complex Non-Full-Availability Systems

This article presents an analytical model of complex non-full-availability telecommunications systems. The high degree of accuracy of the model is demonstrated by a comparison with the results of simulation experiments. Due to the introduction of an availability parameter, this model may be used in the future for analyzing real systems, such as, for example, cloud computing infrastructure. This will be possible provided that the function combining the physical structure of the system and the availability parameter is specified. This problem will be addressed in our future work and will constitute the next stage of research undertaken by the authors. Keywords—analytical model, availability, non-full-availability systems.


Introduction
From the traffic engineering perspective, telecommunications and computer systems that are currently under development are characterized by a peculiar but rarely noticed property, namely they constitute non-full-available systems. Non-full-availability is based on the fact that calls arriving at the input end of a system have no access to all of the system's resources. Instead, they only have access to a certain subset of those resources. In the literature, this subset is referred to as availability [1], [2]. Basically, systems of this type have existed in telecommunications from the very inception of the domain. Over time, however, the source of non-full-availability has changed. Originally, non-fullavailability resulted from the limited nature of telecommunication networks' resources, e.g. outputs of communications networks and telephone exchange systems, where the number of such outputs exceeded the capacities of output groups. Today, non-full-availability of a system results primarily from the individual traffic management mechanisms that are used by networks operators to optimize the use of the available resources (e.g. resource reservation, compression, priorities and queuing) and, very frequently, from the wide area or distributed nature of the physical infrastructure. Non-full-availability of a system may be illustrated with an example of a dynamic resource reservation system [3], [4]. Its operating principle is based on the system's occupancy limit (boundary) adopted which, when exceeded, causes the resources of the system to be available only to certain pre-defined calls, at the expense of the remaining calls.
Concurrent use of a number of mechanisms means that the degree of dependence between the amount of resourcesavailable to a given call and the system occupation level becomes even higher. Physical infrastructure of a cloud computing system may serve as the best example of a modern non-full-availability solution. A high number of devices, the distributed nature of the system, the mechanisms used to optimize of the utilization of resources in cloud computing, the mechanisms that guarantee safe provision of the services, the algorithms employed to reduce power consumption, as well as the nature of the services offered [5]- [8] all make it possible for new calls to be supported and serviced by the resources in the cloud. There is a number of models available in the literature concerned with analyzing current telecommunications systems. As a rule, however, these models deal with a single traffic management mechanism, while a real system is approximated by a model of a full-availability system (historically known as a full-availability group model), e.g. shown in [9]- [15]. Models of non-full-availability systems, such as the limited-availability group model (LAG) or Erlang's ideal grading (EIG), are used for that purpose less frequently [16]- [19]. Non-full-availability systems belong to a group of the socalled state-dependent systems [20], [11]. This dependence may result from the existence of the function that relates the number of busy resources in a system to the calls that arrive at the input, or, alternatively, dependence between the number of occupied system resources and the decision to admit a new call for service may exist. In the former case, we deal with systems with a state-dependent call stream. In the latter case, we deal with systems with a state-dependent service process. [20] presents general rules applicable to modeling this type of systems with the use of a one-dimensional Markov process, after the so-called state transition coefficient has been taken into account. This coherent methodology makes it possible to model very complicated systems as well, providing that the relevant transition coefficients may be determined. This article presents an analytical model of a complex nonfull-availability system. The structure of the system shows some non-full-availability features, i.e. it is composed of a group of separated resources that are non-full-availability systems themselves. It is the authors' opinion that the model may be relied upon, in the future, to model the physical infrastructure of cloud computing solutions. The authors of the article are currently conducting research on the conditions under which this may become feasible. The remaining part of the article is structured as follows. Section 2 presents the main assumptions for modeling statedependent systems. Section 3 provides a description of the structure of this complex non-full-availability system and the corresponding analytical model proposed. On account of the approximate nature of the model, Section 4 presents a comparison between the results obtained with the analytical model and the results obtained during simulation experiments. The article is summarized in Section 5.

Resources and Traffic in Telecommunications Networks
Today's telecommunications networks are primarily packetswitched networks based on the IP protocol. The analysis of a network at the packet level is complicated and time consuming. Papers [9], [21], [22] prove that it is possible to analyze packet networks at the call level, where calls correspond to packet streams (with constant or variable transmission rates) that are sent between a given source and the receiver. Thus, the network traffic represented has the properties of Poisson traffic flow. Thanks to this operation, it is possible to express the amount of resources of the system in dimensionless units, i.e. in resource allocation units (AU). This transition from dimensional units to dimensionless units is known as discretization. The said operation increases versatility of models, since the scope of their operation is not limited to the analysis of the link bit rate (in bps), but is expanded to include other system resources, such as storage memory, RAM memory or processors [23]. The above-mentioned discretization process will be illustrated with an example of a network resource (e.g. a link between routers) with the capacity of C bps. This resource services constant bit rate (CBR) streams and variable bit rate (VBR) streams. In the discretization process, the VBR streams are represented by streams with a constant bit rate, with the transmission speed equal to the so-called equivalent bandwidth (EB). EB for individual call classes may be determined either on the basis of the maximum bit rates or on the basis of heuristic algorithms, in line with the principle that the result of a VBR call service in the network is the same as the result of a CBR call service with the bit rate equal to EB [24]. Most frequently, these algorithms take into account such traffic parameters and networks system parameters as the maximum and the average bit rate of a call, bit rate variance, acceptable delay, jitter and quality of service (QoS) parameters adopted for a given service, etc. It is worth emphasizing at this point that the determination of the EB value on the basis of the maximum bit rates makes it possible to analyze the system under consideration for the worst conditions, i.e. for the highest offered traffic. The knowledge of EB values (the manner in which EB is determined for individual packet streams is beyond the scope of the present article) for all traffic classes offered to the system makes it possible to determine the resource allocation unit of the system, as the traffic class is composed of all packet streams with similar parameters. The general assumption is that 1 AU is equal to the greatest common divisor of the equivalent bandwidths of all traffic classes that are offered to the system: where c i (bps) is the equivalent bandwidth of class i, whereas m is the number of traffic classes offered to the system. The parameter c AU determines the bit rate per a single AU.
After the determination of c AU it is possible to express the capacity of resource V and the demands of individual traffic classes t i in the AUs, where C is the resource capacity: Call classes are described by: this parameter characterizes the frequency at which new calls arrive, this parameter characterizes call service time, • a i average intensity of traffic of class i (in relation to calls): To simplify the analysis of modern networks, an additional assumption may be made that 1 AU corresponds to the bit rate of 1 bps (or 1 kbps): This choice of the AU value causes the demands of individual classes -Eq. (3) and the capacity of the system -Eq. (2) to be equal, in terms of their value, with the demanded bit rates and the total capacity of the system:

General Model of State-dependent Systems
The general method for modeling state-dependent systems by a one-dimensional Markov process is presented in [20]. The dependence of a system on its state (i.e. resource occupancy) may be a result of the following: • limited number of traffic sources -in this case, we deal with systems with a state-dependent call stream -a single source can generate a new call only when it is unoccupied. As a consequence, the ration the number of calls that arrive at the input of the sys-between tem within a given time unit and the number of calls admitted earlier is changed. For instance, for Engset traffic, this number decreases along with an increase in the number of occupied traffic sources; • system structure -in this case, we deal with a system with a state-dependent service stream. The structure of the system and the call service process may cause only a part of the resources to be available, just as it is the case with switching networks, for example. The structure of the connections within the network and the calls that are currently serviced may then affect the setting up of a connection between a free input and a free output of the network, rendering it impossible; • algorithms operating the call admission control function -similarly as in the former case, we deal with a state-dependent service stream. Call admission control algorithms may prevent new calls from being serviced under certain operating conditions, e.g. based on a dynamic resource reservation in relation to the total number of busy AUs in the system.
In state-dependent systems, the transition between states depends not only on the parameters λ i and µ i , but additionally on the so-called conditional transition coefficient σ i (n), where i is the number of a call classes, and n is the number of busy AUs in the system. This is presented, in a simplified form, in Fig. 1. It is proved in [20] that in the case of systems in which state-dependence is the result of a number of different and independent sources, the total conditional transition coefficient may be determined in the following way: where: • [σ i (n)] R is the conditional transition coefficient of class i in occupancy state n, resulting from the properties of a call stream of this class, • [σ i (n)] A is the conditional transition coefficient of class i in occupancy state n, resulting from the structure of the system, • [σ i (n)] P is the conditional transition coefficient of class i in occupancy state n, resulting from the function of new call admission in the system.
The knowledge of the values of all σ i (n) parameters makes it possible to determine occupancy distribution within the system with the use of the following formula [20]: where [P n ] V is the probability of occupancy n AUs in the system.

Model of a Complex
Non-full-availability System

Structure of Complex Non-full-availability Systems
The analytical model proposed in the article was developed for a system that is presented, in its simplified form, in Fig. 2. The assumption was that the system was composed of k separated resources (subgroups) with the capacity of f AUs. The total capacity of the system is: The division of all AUs within the system into separated full-availability resources renders the system a non-fullavailable solution. The literature of the subject describes its analytical model, known as the limited-availability group model [25]. In this paper, we assumed that each of k separated resources shows the properties of a non-fullavailability system. Non-full-availability of a single separated resource may stem from its internal structure or from the call admission control algorithm. The literature presents a small number of analytical models pertaining to non-full-availability systems, e.g. Palm-Jacobeus formula, modified Palm-Jacobeus formula or the EIG model [1].

Fig. 2.
Simplified diagram of the structure of a complex nonfull-availability system.
In analytical models, non-full-availability of resources is characterized by a parameter knowns as availability d i (1 ≤ i ≤ m) [1], [26]. This parameter determines the number of AUs in the system to which calls of a given class have access. It is unique for each class of calls (and it may assume different values for each of those classes), while its value is based on the structure of the system and on the call admission control mechanism. It should be stressed that if calls of class i have availability equal to d i AUs of the system, this does not necessarily mean that all of them have access to the same AUs. Typically, they have access to different AUs of the system. Calls or, to be more precise, their sources that have access to the same AUs in the system are called a load group. In EIG, the number of load groups (for calls of class i) is equal to the number of choices of d AUs from V : In real world systems, this number is typically lower. Figure 3 shows a simple single-service system with the capacity of 3 AUs and availability of d = 2 AUs that illustrates the idea of availability and presents an example of a blocking state. The assumption is that in the complex non-full-availability system under consideration, new calls are admitted according to the following algorithm. Assume that a call of class i that demands t i AUs for service arrives at the input to the system. In the first instance, the number of unoccupied AUs in the entire system is checked. If the number of free AUs in the entire system is lower than t i AUs, then the call is lost. When this is not the case, a further check is performed to verify whether in a single separated resource there exist at least t i unoccupied AUs. This condition is particularly important, as calls may be supported only by AUs that belong to one separated resource. If such resources are not available, then the call is rejected. In the case where the system has separated resources that have at least t i free AUs available, one of the available resources is chosen randomly and the system checks whether the resource may admit the call under consideration for service. The absence of a possibility to admit a new call may result from the fact that this new call has no access to (i.e. cannot occupy) free AUs in the resource. If the selected separated resource does not offer such a possibility, then the next one is selected. In the worst case, all k separated resources will be checked. If none of k resources can service the new call, the call is lost again.

Analytical Model
To determine occupancy distribution in the system under consideration, as given by Eq. (8), and, in consequence the blocking probability, it is necessary to determine the values of the conditional transition coefficient σ i (n) for all call classes offered and for all system occupancy states. The state-dependence of the service stream and, consequently, the non-full-availability in the system under consideration, results from two factors: • all AUs in the system are divided into k identical separated resources (subsystems), while a call may be completely serviced by one separated resource only, • each separated resource has limited access to its own AUs which leads, in consequence, to a situation in which -despite a sufficient number of free AUs -the call cannot be admitted for service due to the lack of access to free AUs.
On the basis of Eq. (7), we can write: where [σ i (n)] SZ is the transition coefficient that results from the division of the AUs of the system into the separated resources, whereas [σ i (n)] S results from the non-fullavailability of a single separated resource.

Now, let us consider the manner in which parameters
[σ i (n)] SZ and [σ i (n)] S may be determined. The values of the coefficient [σ i (n)] SZ may be determined as follows. Since calls may be completely serviced only by a single separated resource, this resource has to have at least t i unoccupied AUs. To satisfy this condition, an appropriate distribution of free AUs between all separated resources is required. An unfavorable distribution of free AUs within the system may be followed by new calls being rejected, as presented in Fig. 4. The said figure shows the distribution of three free AUs in a system that is composed of two separated resources. If, at the input to this system, a call that demands 3 AUs arrives, then it may be admitted for service only in the case of 2 from 4 potential distributions of unoccupied AUs within the entire system. To determine the conditional transition coefficient, the dependence proposed in [25] can be used: where the function F(x, k, f ) is given by: Parameter [σ i (n)] SZ V is calculated based on the assumption that separated resources are of the full-availability variety. This assumption is based on the new connection setup algorithm implemented. According to this algorithm, the separated resources are checked for free AUs first, without checking whether there is access to them. Each of the separated resources may be the source for nonfull-availability as well. Systems in which calls have limited access to their own AUs may be modeled by EIG [26], [1]. In this model, the conditional transition coefficient is determined with the use of the following formula: where: In order to substitute Eqs. (12) and (14) into Eq. (11), two problems have to be solved first. Firstly, the occupancy of a single separated resource changes from 1 to f , while the occupancy of the whole of the system changes from 1 to V . Secondly, the call admission algorithm allows all separated resources that have at least t i free AUs to be checked. In the proposed analytical model, the first problem was solved in the following way: since the assumption was that the choice as to the separated resources was random, then it could be adopted that approximately (rough estimate) each of them had equal loads and, what followed, the average number of occupied AUs in each resource was equal to n k , where n was the occupancy state in the entire system. The other problem, in turn, was solved thanks to the adoption of the assumption that since service admission of a new call depends on the state of each of the separated resources, then product dependence must exist between the transition coefficients in each of the separated resources and the resultant transition coefficient [σ i (n)] S . The proposed Eq. (15) was defined as follows: since the call admission algorithm for new calls assumes the possibility of checking all separated resources, then the admission of a new call is possible if such a possibility exists in just one of them: By taking into consideration Equations (12), (14) and (15), we can ultimately write:

Results
To verify the proposed analytical model, the results obtained with the use of the model were compared with the results of the simulation. For this particular purpose, a simulation model of the non-full-availability system under consideration was devised and implemented in the C++ language. The simulator used the event scheduling methodology. To determine a single measurement, 5 series of simulations with 1,000,000 calls of the class that demanded the highest number of AUs for series each, were performed. The results obtained are presented in the form of a function of traffic offered to a single AU of the system: Another assumption was that the total traffic offered was divided between individual call classes in the following manner: a 1 t 1 : a 2 t 2 : ... : a m t m =1 : 1 : ... : 1. Figure 5 shows the result for the following system: k = 3, f = 25 AUs. The system was offered three classes of calls (m = 4) that demanded 1, 2, 3 and 4 AUs for service, respectively, while the availabilities were 8, 10, 12 and 15 AUs (Case 1). Figure 6 shows the result for the following system: k = 3, f = 15 AUs. The system was offered three classes of calls (m = 3) that demanded 1, 2 and 3 AUs for service, respectively, while the availabilities were 6, 8 and 10 AUs (Case 2). Figure 8 shows the result for the following system: k = 3, f = 21 AUs. The system was offered three classes of calls (m = 3) that demanded 1, 2

Fig. 5.
Blocking probability in a complex non-full-availability system (Case 1).

Fig. 6.
Blocking probability in a complex non-full-availability system (Case 2).

Fig. 7.
Blocking probability in a complex non-full-availability system (Case 3). and 5 AUs for service, respectively, while the availabilities were 7, 10 and 18 AUs (Case 3). The model presented is an extension of the research described in article [27]. The previous model, in the scenario with low availability for the class requesting the least number of resources, showed some significant inaccuracies. Figure 5 shows the results obtained using models described in [27], [4], and the model described in the current article in connection with the following system: k = 3, f = 24 AUs. The system was offered three classes of calls (m = 3) that demanded 1, 3 and 4 AUs for service, respectively, while the availabilities were 5, 10 and 13 AUs (Case II). Thanks to the modification, the problem of inaccuracies in the youngest class has been eliminated. The analytical model proposed in the article is of the approximate variety. However, the presented results of the study show that the model is efficient at approximating the non-full-availability system under consideration. The highest error rate under investigation occurs for the class that demands the lowest number of AUs. However, this inaccuracy is much lower than that in the model presented in [27]. This error is based on a certain underestimation of the blocking probability, but the repeatability of this error makes it possible to introduce a relevant adjustment to the model. The accuracy of the model, as confirmed in the study, makes it possible rely on the model for modeling non-full-availability systems, such as those used in cloud computing. This will be feasible, however, only when appropriate equations that make it possible to determine the availability in such systems are proposed. This will be the subject of further research the authors intend to conduct.

Summary
This article presents the architecture of a complex non-fullavailability system and its analytical model developed by the authors, enabling to determine loss coefficients and the blocking probability in this system. Though the proposed model is of the approximate nature, the results obtained in the study clearly indicate that is its highly accurate. The approximation errors that occur in the results, and are reported in the investigation, are of the fixed nature, which makes it possible to introduce simple corrections and adjustments that would nullify these differences during the further development stages. The authors are of the opinion that further research into complex non-full-availability systems is of utmost importance due to the dynamic growth of IT services and increasingly more sophisticated systems that are offered to users. The model presented in the article may become, in the future, a useful tool in modeling real telecommunications systems, such as data centers or cloud computing solutions. The fact that it requires a small amount of computer resources to perform calculations and is characterized by a relatively short time of operation is an additional advantage of the model presented.