# An Eccentricity Based Data Routing Protocol with Uniform Node Distribution in 3D WSN
## 3 Proposed EDR Protocol
### Data Communication Phase  
**Intra-Subspace Communication. ** Once the RC nodes election phase is completed and the TDMA schedule is fixed, the local data transmission can begin at time \(T_{3}\). During the allocated time, a member node sends its local information (\(D\_Msg\)) to the corresponding RC node within the radio range \(R_{\text{min}}\) (the distance between a member node and the RC node in a subspace). The radio of each non-RC-node is turned off until the node's allocated transmission time. The receiver of the RC node should be on to receive all the data from the member nodes in a subspace. During this communication, if a member node has not transmitted data to its RC node within its allocated transmission time due to the death of that node or for any other reasons, it will be listed as a missing node. The missing node(s) is considered as a blacklisted node. An RC node checks the missing node(s) and updates its own MADT by deleting the blacklisted node(s). Meanwhile, it broadcasts about the missing node(s) to its member nodes along with the \(Not\_Msg\). On receiving the message, the member nodes update their MADT by deleting the blacklisted node and it will be excluded out of the network from the rest of the process. After the data has been received, an RC node performs the signal processing function to compress/fuse the data into a single packet called aggregated data (\(AD\_Msg\)). Once the data fusion process is completed, an RC node transmits the \(AD\_Msg\) to a next hop which can be the sink or a forwarding RC node with a higher fitness value. **Inter-Subspace Communication. ** This phase starts at predefined time \(T_{4}\) in each round. In this phase, each RC node broadcasts its status along with a \(Rout\_Msg\) within its radio range \(R_{\text{max}}\). The \(R_{\text{max}}\) = 2\(R_{\text{s}}\) is defined as the maximum radio transmission range of a node in the network. For the fitness value, each RC node computes its \(F_{2}\) which is defined in Equation (4). The equation guarantees that the RC node of large member nodes obtains a higher residual energy and has a higher fitness value. \[F_{2}=\ \beta\frac{RC_{k}.Er}{\sum_{i=1}^{m\in Sub_{\rm K}}s_{i}.Ei}+(1-\beta) \frac{RC_{k}.m}{n}, \tag{4}\]  
where, \(RC_{k}.Er\) is the residual energy of an RC node in a subspace \(k\), \(s_{i}.Ei\) is the initial energy of a member node in the subspace, \(RC_{k}.m\) is the number of member nodes of that subspace and \(n\) is the total deployed nodes in the network. An RC node receives the _Route_Msgs_ from other RC nodes in two different cases. **Case 1:** An \(RC_{i}\) node in level \(l_{i}\) (1 \(\leq l_{i}<l_{h}\)) receives the message from an \(RC_{k}\) node in different levels \(l_{k}\) (\(l_{i}<l_{k}\leq l_{h}\)) within the range \(R_{\rm max}\) and belongs to the volume of the region \(v^{\prime}_{RC}\) which is defined in Equation (5):  
\[v^{\prime}_{RC}=(X=Y)^{2}(l_{l_{2}}^{u}-l_{l_{2}}^{u}\in SubS_{k}(RC_{k})), \tag{5}\]  
where \(l^{u}\) is the upper value of the \(z\)-coordinate (height) of a level \(l_{(z)}\), \(SubS_{k}\) is the subspace of an \(RC_{k}\) in a level \(l_{k}\), \(k>i\). The factors \(X\) and \(Z\) are defined based on the location of the sink. **Case 2. ** An \(RC_{i}\) node receives the message from an \(RC_{k}\) node in the same level where \(l_{i}=l_{h}\) and belongs to the volume of the region \(v^{\prime\prime}_{RC}\) which is defined in Equation (6):  
\[v^{\prime\prime}_{RC}=X^{2}l_{l_{2}}. \tag{6}\]  
On receiving the messages, the information of other RC nodes is listed in its neighboring RC nodes' table (NRCT) which contains [_node_id_, _subspace_id_, _node_type_, _node_fitness_, _dist_sink_]. Generally, an RC node first checks the threshold distance (\(T_{\rm D}\)) between the sink to communicate directly to the sink. If the distance between the sink \(d(RC_{i}\)_sink_) is greater than the \(T_{\rm D}\), then the RC node selects a higher \(F_{2}\) obtaining RC node as a forwarding node from its NRCT.