# An Efficient Relayed Broadcasting Based on the Duplication Estimation Model for IoT Applications
## 3 Duplication Suppression and Re-Queuing
### Re-Queuing to Compensate for Delivery Failure
#### 3.3.1 The Selection Criterion for Re-Queuing Frames  
The re-queuing scheme should be able to determine whether a frame requires a secondary transmission opportunity without resorting to feedback information. For this purpose, we propose using the duplication ratio and the distribution of the duplication counter. Whenever a frame is received, each node collects information about the duplication counter for each of them. Let us denote \(C_{i}\) as a set of duplication counters \(c_{i,j}\) for all of the frames received by node \(i\) (Please note that the re-queuing scheme continues to update duplication counter \(c_{i,j}\) even after frame \(F_{i,j}\) has been transmitted or discarded). Figure 7 shows an example of the distribution of \(C_{i}\) in a specific node obtained from simulation when applying our suppression scheme described in Section 3.1. Here, \(C_{i}^{mode}\) and \(C_{i}^{max}\) are the mode of \(C_{i}\) (i.e., the most frequent value of \(c_{i,j}\)) and the maximum value in \(C_{i}\), respectively, and they can be easily estimated with duplication counters. Figure 7 shows that each node usually receives duplicate frames from its adjacent nodes at more or less \(C_{i}^{mode}\) times. We can expect that the value of \(C_{i}^{mode}\) is comparable to the number of adjacent nodes participating in the relay (referred to as active adjacent nodes) because the proposed duplication suppression scheme allows each node to relay a frame once at most or blocks the relay. By taking these points into account, we introduce \(\Delta_{i,j}\) as a criterion to determine whether it is necessary for node \(i\) to re-queue frame \(F_{i,j}\) and define it as the difference between the expected number of active adjacent nodes (\(\hat{n}_{i,j}\)) and the mode of \(C_{i}\), i.e.,  
\[\Delta_{i,j}=\hat{n}_{i,j}-C_{i}^{mode}. \tag{5}\]  
We also propose estimating \(\hat{n}_{i,j}\) as  
\[\hat{n}_{i,j}=\lceil\alpha\times DR_{i}(c_{i,j})\times C_{i}^{max}\rceil, \tag{6}\]  
where \(\lceil x\rceil\) is a round-up function giving the smallest positive integer greater than or equal to \(x\). The rationale for estimating \(\hat{n}_{i,j}\) in (6) is as follows. The duplication ratio can be regarded as the probability that the ratio of the number of adjacent nodes that received frame \(F_{i,j}\) to the total number of adjacent nodes (\(N_{i}\)) is not smaller than \(\alpha\), i.e.,  
\[DR_{i}(c_{i,j})=Pr\left[\frac{n_{i,j}}{N_{i}}\geq\alpha\Big{|}c_{i,j}=\tau_{j }\right]. \tag{7}\]  
Not all of the adjacent nodes attempt to relay frames due to the duplication suppression mechanism, but the maximum number of active adjacent nodes can be considered as \(C_{i}^{max}\). Therefore, the product of \(\alpha\), \(DR_{i}(c_{i,j})\), and \(C_{i}^{max}\) can be used as the estimate of \(\hat{n}_{i,j}\). Please note that the term \(DR_{i}\) in (6) can be replaced with an approximated value, i.e., \(ADR_{i}\). By using criterion \(\Delta_{i,j}\), node \(i\) determines whether or not frame \(F_{i,j}\) needs to be re-queued. As long as \(\Delta_{i,j}\geq 0\), i.e., \(\hat{n}_{i,j}\) is not smaller than \(C_{i}^{mode}\), we can consider that frame \(F_{i,j}\) has been relayed several times by its adjacent nodes, so node \(i\) does not re-queue frame \(F_{i,j}\). On the contrary, if \(\Delta_{i,j}<0\), node \(i\) starts the re-queuing process for frame \(F_{i,j}\). For the purpose of re-queuing, a copy of the QDF needs to be maintained even after it has been discarded or transmitted. It is noteworthy that the re-queuing scheme does not immediately attempt to transmit the frame when detecting \(\Delta_{i,j}<0\); it waits for a reasonable observation time (denoted as \(T_{RQ}\)) because node \(i\) may receive another duplicate frames soon from its adjacent nodes so that \(\Delta_{i,j}\) becomes positive.