# An Efficient Relayed Broadcasting Based on the Duplication Estimation Model for IoT Applications
## 3 Duplication Suppression and Re-Queuing
### The Definition and Characteristics of the Duplication Ratio  
#### 3.1.1 The Duplication Index and the Duplication Ratio  
We first introduce the _duplication index_ which indicates whether or not a frame has already been successfully delivered to the adjacent nodes and will be used in estimating the duplication ratio. Let us denote \(F_{i,j}\) as a frame with sequence number \(j\) that node \(i\) attempts to relay. We also denote \(N_{i}\) as the total number of adjacent nodes around node \(i\) and \(n_{i,j}\) as the number of node \(i\)'s adjacent nodes that have already received the frame \(F_{i,j}\) (For the time being, we make the ideal assumption that node \(i\) can estimate \(n_{i,j}\), which is not feasible without a feedback signal between the nodes. Later, we remove this assumption by approximating the duplication ratio). We define the duplication index \(I_{i,j}\) for frame \(F_{i,j}\) as  
\[I_{i,j}=\left\{ \begin{array}{ll}1,&\text{ if }\ n_{i,j}\geq\alpha N_{i},\\ 0,&\text{ if }\ n_{i,j}<\alpha N_{i},\end{array} \right. \tag{1}\]  
where \(\alpha\) (\(0<\alpha\leq 1\)) is a weighting factor referred to as the _duplication-index-decision factor_. Duplication index \(I_{i,j}\) has a binary value of 1 or 0 if the level of redundancy is high (i.e., \(n_{i,j}\geq\alpha N_{i}\)) or not, respectively. Here, \(\alpha\) is used to determine the acceptable level of redundancy; in other words, as the value of \(\alpha\) approaches 1, \(I_{i,j}\) becomes 1 if the frame has been delivered to more adjacent nodes. If \(I_{i,j}=1\), it is desirable to avoid relaying the frame \(F_{i,j}\); otherwise, the frame needs to be relayed. Therefore, a high value of \(\alpha\) is helpful to ensure the reliability more strictly, or the redundancy can be mitigated by lowering the value of \(\alpha\). Now, we introduce the duplication ratio. We denote \(c_{i,j}\) as the duplication counter of frame \(F_{i,j}\), i.e., the number of times that node \(i\) received frame \(F_{i,j}\) before trying to relay it, and then we define the duplication ratio of node \(i\), \(DR_{i}(\tau)\), as  
\[DR_{i}(\tau)=\frac{\sum_{F_{i,j}\in S_{i,\tau}}I_{i,j}}{\|S_{i,\tau}\|},\ \ S_{i,\tau}=\{F_{i,j}|c_{i,j}=\tau\}. \tag{2}\]  
Here, \(S_{i,\tau}\) is a set of frames in node \(i\) whose duplication counter is \(\tau\) and \(\|S_{i,\tau}\|\) is the number of elements in set \(S_{i,\tau}\). According to (2), \(DR_{i}(\tau)\) is a function of duplication counter \(\tau\) and is the ratio of the number of frames whose duplication index is 1 to the total number of frames for the given duplication counter \(\tau\). Figure 3b shows the typical value of the duplication ratio obtained from simulation in which, as shown in Figure 3a, a source node was located at the center and 100 nodes were randomly located around the source node within a circular area whose radius is twice of the transmission range of the source node. The duplication ratio in Figure 3b was measured under the condition that all the nodes successfully receive all the frames transmitted by the source node and they relay all the received frames once. The detailed simulation environments are described in Section 4.1. The duplication ratio was measured in three specific nodes: 9, 15, and 73 (marked as red circles in Figure 3a) when \(\alpha\) was set as 1. From the results displayed in Figure 3b, we can observe that (i) when the node was located close to the source node (e.g., node 15), \(DR_{i}(\tau)\) sharply increased from 0 and remained close to 1 as \(\tau\) increased and the maximum value of \(\tau\) was much larger than the other cases (nodes 9 and 73); (ii) in the case of node 9 located at the edge of carrier sensing range of the source node, \(DR_{i}(\tau)\) approached 1 but its rate of increase decreased as \(\tau\) increased; (iii) when the node was far away from the source node (e.g., node 73), \(DR_{i}(\tau)\) increased almost linearly from 0.2 to 1 in the short range of \(\tau\) between 1 and 5.