# A Trust-Based Predictive Model for Mobile Ad Hoc Network in Internet of Things +
## 3 Proposed Protocol
### The Trust Model  
Figure 1 shows the system architecture of the proposed model. The trust generation model is presented in Figures 2 and 3. As depicted in Figure 1, the Clusterhead initiates the trust calculation and takes responsibility of trust propagation and establishing routes from source to destination in order to achieve reliable end-to-end delivery of packets and node availability.  
1. **Trust Revocation:** This is the first phase when CH initiates the trust calculation of each member of the cluster. Due to the energy-constrained nature of IoT-MANET nodes, it is not appropriate to calculate trust at fixed intervals. Similarly, singleton trust generation is not good as the nodes are vulnerable to uncertain behavior due to the quasi-static nature (node mobility). The trust model is evidence-based, and it may change from time to time. Therefore, a trade-off between the trust revocation and trust initialization is required. This manager assigns an aging factor to each trust value, which fades the trust values. This factor is application-specific and it can be set depending upon the requirement.
2. **Trust Generation:** In this phase, the trust value of each member of a cluster is evaluated. This phase is performed in two separate phases; direct trust (\(\zeta_{dir}\)) calculation and resultant trust (\(\zeta_{res}\)) generation. The detail procedure is described below. After calculating the trust value nodes are categorized.
3. **Node Categorization:** In MANET, a packet can be dropped by a node due to network congestion, link failures (node mobility) between nodes, network interference and contentions, selfishness (the nodes having limited energy saves their energy by not forwarding the packets), and maliciousness (the malicious nodes intentionally do not forward the packets). In an ideal scenario, the packets are dropped only due to maliciousness of a node. However in a real scenario, there are some inherent properties of the medium for which packets may be dropped, though the actual reason cannot be identified easily. Therefore, we define a \"bad node\" as a node that randomly drops packets deliberately. In our scenarios packets will only be dropped for that reason, and not for other intrinsic network reasons (congestion, link failures, etc.). In this node categorization phase, CH categorizes the member nodes into groups for their good behavior and bad behavior using a threshold limit between \(Max_{\mathtt{TH}}\) and \(Min_{\mathtt{TH}}\). These threshold values can be set according to the network deployment scenarios.  
* Good: if \(\zeta_{res}\geq Max_{\mathtt{TH}}\);
* Bad: if \(\zeta_{res}\leq Min_{\mathtt{TH}}\);
* Uncertain: if \(Min_{\mathtt{TH}}<\zeta_{res}<Max_{\mathtt{TH}}\).
* **Trust Propagation:** Once the resultant trust of each member node is finalized, in this phase CH propagates these values to the other cluster members.
* **Routing:** For creating routes between source and destination, maintaining the routes and the network, the proposed routing needs to perform the following three phases.  
* **Neighbor Discovery:** This phase is responsible for maintaining the list of trusted neighbors, along with their trust status.
* **Route Discovery:** In this phase the end-to-end path is established by including only good and uncertain nodes.
* **Route Maintenance:** This phase maintains the established route. Each node on an active path monitors the link periodically. It also revokes the route discovery phase if link failure occurs due to node mobility.  
Figure 1: The trust model  
Figure 3: Resultant trust generation  
Figure 2: Trust generation