## 3 Proposed Model  
In a practical opportunistic network driven by human activity, where mobile nodes are carried by people, mobility is not purely random. Human behavior brings about mobility patterns, which manifest as distinct time intervals corresponding to various activities. This introduces a cross-layer aspect where routing strategies are impacted by both mobility patterns and communication protocols. The proposed routing method factors in the likelihood of a node meeting the destination node based on their previous encounter time. Moreover, the model integrates an acknowledgment table to streamline the removal of acknowledged messages from the network, efficiently handling data across different layers.  
The probability \(P_{ij}(t)\) of node \(i\) encountering node \(j\) at time \(t\) is modeled using a function that considers their previous interactions and the characteristics of the mobility patterns. The model is based on the exponential decay function:  
\[P_{ij}(t)=\frac{1}{\lambda_{ij}}e^{-\frac{t-t_{ij}}{\lambda_{ij}}} \tag{1}\]  
where  
* \(t_{ij}\) is the last meeting time between nodes \(i\) and \(j\);
* \(\lambda_{ij}\) is the characteristic time scale of the encounter process between nodes \(i\) and \(j\).  
When a node needs to make a routing decision to forward a message towards its destination, it can consider the probability of encountering the destination node within a certain time frame. The routing decision, \(Ri(t)\), for node \(i\) at time \(t\) can be formulated as follows:  
\[Ri(t)=argmax_{i}Pij(t) \tag{2}\]  
This equation selects the neighbor node j with the highest probability of encountering the destination node based on their last meeting time and the mobility patterns.  
To address potential high overhead, the protocol employs efficient mechanisms for detecting and managing message congestion, ensuring optimal performance in cross-layer communication scenarios. The routing protocol requires the presence of the two tables presented in Figure 1 in the memory of each mobile node. The \"Acked Messages Table\" is utilized to store the IDs of all acknowledged messages, along with their acknowledgment time and time-to-live (TTL). The flowchart depicted in Figure 2 illustrates the cyclical process managed by this table.  
To mitigate table size inflation, a routine examination of the table verifies whether the duration since message acknowledgment exceeds or equals the TTL. If affirmed, the message is expunged from the table, consequently removing all duplicates across the network due to TTL expiration. Additionally, the \"Hosts table\" is implemented to store encountered node IDs and their respective last encounter times by the current node.  
An additional requirement entails augmenting each message with an integer header titled \"Number of Copies\" and a new entry denoted as \"Time Received\". The \"Number of Copies\" header regulates message proliferation within the network, thus curbing overhead  
Figure 1: Schematic of two required tables.  
Figure 2: Flowchart process of the AckedMessagesTable.  
and enhancing delivery probability. Figure 3 illustrates the message overhead, with the dashed sections indicating the newly incorporated fields.