# ARAAC: A Rational Allocation Approach in Cloud Data Center Networks
## 3 Simulation Results
### Discussion  
This section presents the performance results of the simulated allocation scenarios. Through this, we show the efficiency of our proposal, the ARAAC, by comparing its performance metrics to the two other benchmark mechanisms presented in Section 2.3: the SBP and the Tit-for-Tat [11] mechanisms. To do so, we choose to study the performance of the aforementioned three proposals in terms of: (1) total profit gains. (2) bandwidth usage rates and (3) blocking ratios. The simulation was developed to randomly choose 40 bids among a pre-generated database that contained 400 bidders' profiles. As mentioned in Section 2, each bidder's profile provides a price unit \(p_{i}\), required service resources \(s_{i}\), and an identification reference \(d_{i}\) that was used to link to a behavior-based reputation records' database. Such behavior-based records come in two different streams, the first that shows an average value \(e_{i}\) for the bidder's _accumulative_ behavior over a certain time window (i.e., ARAAC's philosophy), and the second that reflects the bidder's behavior in the _previously_ won allocation round \(l_{i}\) in which the bidder participated (i.e., Tit-for-Tat's philosophy). The behavior describes the bidder's \begin{table}
\begin{tabular}{l} \hline \hline
**Tit-for-Tat’s Algorithm: Selecting the Candidate Service Tenants for Allocation** \\ \hline
1: **Input:** Vector of offered bids \(N\), \(\forall\)\(i\in N\), collect (\(d_{i}\), \(s_{i}\), \(p_{i}\)); \\
2: **Output:** Vector of candidate tenants for allocation C; \\ \hline
3: **for all \(i\in N\);** \\
4: **find** the value \(p_{i}\), **then** \\
5: **sort** them accordingly in \(N\) as \(p_{i}>p_{i+1}>p_{i+2}>...>p_{n-1}>p_{n}\) ; \\
6: **update \(N\);** \\
7: **end** \\
8: **for all \(i\in N\);** \\
9: **find** the reputation score \(l_{i}\) associated with the id \(d_{i}\), **then** \\
10: **exclude** all those who have \(l_{i}=0\); \\
11: **update \(N\);** \\
12: **end** \\
13: **for all \(i\in N\);** \\
14: **find** bidder \(\tilde{i}\), where \(\sum_{i=1}^{\tilde{i}}\) (\(s_{i}\leq\alpha_{i}S_{i}\)) and \(\sum_{i=1}^{\tilde{i}+1}\) (\(s_{i}>\alpha_{i}S_{i}\)); \\
15: **move** bidders from \(i\to\tilde{i}\) to a new vector C; \\
16: **end** \\
17: **for each\(i\in C\);** \\
18: **choose**\(p_{i+1}\) as a cost-unit; \\
19: **end** \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Tit-for-Tat selection algorithm. utilization of its allocated resources in the previous allocation rounds; on the basis of this, the bidder is tagged as a cooperative or non-cooperative player. Being cooperative or not is determined after monitoring the bidder's usage of the allocated resources throughout the previous auction round(s). For a given allocation period, the system considered a usage of 80% or more of the allocated resources as cooperative behavior, otherwise it reflected an exaggerated request that led to the wasting of allocated resources and thus this was considered as non-cooperative behavior. To simulate real-life scenarios, the bidders' profiles were generated by a function that provides _representative_ profiles to simulate: (1) cooperative bidders with reasonable price units, (2) cooperative bidders but offering low price units, (3) non-cooperative bidders with reasonable price units, and (4) non-cooperative bidders with low price-units. Accordingly, the SBP model that motivates revealing high price-units chose those bidders who offer the highest prices regardless of their behavior. Hence, it was highly expected that profiles 1 and 3 were candidates for allocation in this model. On the other hand, profiles 1 and 2 would more likely suit the Tit-for-Tat model that only targets the bidders' behavior, no matter was the offered price units. In this context, it is worth noting that deploying the Tit-for-Tat model in such auction scenarios may lead to a deadlock state.