# Impact of Latency on QoE, Performance, and Collaboration in Interactive Multi-User Virtual Reality
## 4 Results and Discussion
### Objective System Performance  
In Figure 5, the downlink and uplink throughput distributions of the unconstrained system (configuration A) are displayed. One can see that similar, more or less normally distributed, requirements were obtained for both user roles. This finding also holds for the other configurations, where no significant differences in throughput between user roles were found. However, for configuration A, a difference can be seen between downlink and uplink. The former requires around 180 kbps, on average, while the latter is limited to \(\pm\)120 kbps. Note that these throughput requirements are substantially lower in comparison with VR streaming scenarios in which all graphical content processing is performed at the server side, after which the complete virtual environment is streamed to the client. Here, in contrast, graphical processing is performed locally on the client, such that only synchronization traffic is required between both clients, resulting in substantially lower throughput. Nevertheless, throughputs in the impaired scenarios B-D were shown to be \begin{table}
\begin{tabular}{c c c} \hline \hline
**Scenario** & **Latency (ms)** & **Burst (50\% Chance, ms)** \\ \hline A & 0 & 0 \\ B & 0 & 500 \\ C & 500 & 0 \\ D & 500 & 500 \\ \hline \hline \end{tabular}
\end{table} 
Table 5: Overview of the four scenarios considered in this research. four to five times higher than the unimpaired scenario A, as can be seen from Figure 6, in which the downlink and uplink distributions for each of the four configurations are shown (averaged over both user roles). The reason for this is that Unity NetCode makes use of the UDP-based Unity Transfer Protocol (UTP) which, in contrast to traditional UDP, implements some robustness mechanisms, such as acknowledgements, packet re-ordering, and data re-transmission. The latter, in particular, results in severe overhead in case of (heavily) impaired networks. In addition, it is also worth mentioning that the difference between uplink and downlink is less pronounced in scenario B and even inverted for scenario D. These are the two configurations where artificial burst is introduced. The reason for this is that the burst emulation is implemented on the server-side by blocking both incoming and outgoing traffic for 500 ms with a 50% change. As such, a lot of re-transmissions will be initiated from the client side as acknowledgements are not received within time, causing the uplink traffic to increase. By way of illustration, Figure 7 shows the evolution of the system's throughput over time for a randomly selected session. From Figure 7a, one can once again observe the similarity in behavior between both user roles and the difference in throughput between uplink and downlink. In addition, some large but narrow peaks can be observed on the uplink, such as the ones around seconds 25 and 120. These correspond to events with a high number of vertex manipulations (e.g., spreading sauce) and, as a result, an increased  
Figure 5: Distributions of the measured downlink and uplink throughput, over all playthroughs, for both user roles in configuration A (0,0). The full orange line indicates the median, the green dotted line the mean. Figure 6: Distributions of the measured downlink and uplink throughput, over all playthroughs, for each network configuration. The full orange line indicates the median, the green dotted line the mean. quantity of synchronization information to be sent. A similar difference between uplink and downlink can be observed in Figure 7c, albeit with higher absolute throughput, as discussed earlier. From Figure 7b,d, we can once again notice how the uplink throughput is leveling (B) and even surpassing (D) for the downlink throughput as a result of the injected burst. As explained before, this behavioral difference between uplink and downlink stems from the server-side implementation of the burst impairment. A lot of re-transmissions will be initiated from the client side as acknowledgements are not received within time, causing the uplink to increase.