## 5 Experimentation
### Results
#### 5.5.2 Buffer Occupancy Evaluation  
Figure 7 shows that, for all the scenarios and for all the configurations except for the Control configuration, the buffer fills in a logarithmic manner up to the buffer's total capacity. For the Emergency scenario, we can see an inflexion point that derives to a lower buffer occupancy at the simulation time when the message generation distribution changes from high frequency to low frequency.  
Without any replication limit (\(l\)), the EP policy fills up the buffer faster than the other policies. The Static policy's static \(l\) determines the speed at which the buffer fills up. For the Control configuration, as the control system regulates the replication limit based on congestion information readings from the nodes, the buffer occupancy fluctuates based on the effects of the new replication limit values.  
Overall, the buffer occupancy is lower with the Control configuration. For all the scenarios, after a transient period, the buffer utilization by the Control policy tends toward 21% for the Taxis scenario, 87% for the Info5 scenario, 32% for the Campus scenario, and 22% for the Emergency scenario. Nevertheless, this remarkable difference between the buffer utilization by the Control and the No-Control configurations is due to how we measure the buffer occupancy for the Control configuration. For Control, the buffer occupancy measure does not count the messages that are still buffered but have the flag \(\varphi\) set to _false_, so that if buffer space is required, those will be the first messages to be discarded.  
Figure 6: For the Control configuration, progression of the replication limit used by each node at each time unit when a new message is created. In blue, we show the tendency of the replication limit over time (for Taxis it is 8, for Info5 it is 2, for Campus it is 2, and for Emergency it is 4). For the scenarios Info5, Campus, and Emergency, a zoomed-in plot with a different scale has been embedded in the main plot.  
Figure 8 shows the percentage of dropped versus relayed messages. As expected, for the No-Control configurations, the faster the buffer fills (Figure 7), the more messages are dropped. Nevertheless, the Control configuration does not have a lower drop rate despite its lower buffer occupation. Precisely, this is because of the aforementioned detail that the Control configuration measures the occupancy of the buffer such that messages that are still buffered but have the flag \(\varphi\) to _false_ will not be counted when calculating the buffer occupancy, but when the buffer requires the space, they will be dropped. Moreover, as expected, for the more congested scenarios (Info5, Campus, and Emergency), the Control drop rate is slightly higher than that of the Static* configuration. This difference is caused by the changes in the replication limit adjusted by the controller.  
More precisely, as expected, for all configurations of the less congested scenario (Taxis), the dropped message rate corresponds to the buffer occupancy, as the buffers are not stressed during the simulation. Furthermore, the relation between the buffer occupancy and the dropped message rate remains for the Info5 scenario, a medium-high congestion scenario, where buffers are more stressed. Nevertheless, for the Campus scenario, a highly congested scenario, and for the Emergency scenario, which has a high-congestion phase, for the Control configuration, the high buffer occupancy ends up dropping the buffered messages with the flag \(\varphi\) set to _false_, and, therefore, the dropped message rate is at par with that of the Static* configuration, with slight differences caused by the changes to the replication limit adjusted by the controller.  
Figure 7: Percentage of the buffer occupancy for the different policies, for each scenario, along the simulation time. In the legend, the configuration named Static* corresponds to the Static configuration with the replication limit that the Control tends toward.