# Context-Aware Data Dissemination for ICN-Based Vehicular Ad Hoc Networks
## 3 Context-Aware Packet Forwarding
### Distance-Based Forwarding Control  
In wireless environments, data are sent by broadcasting over the wireless network interface. On the one hand, this increases the likelihood that the Interest and Data packets can reach their respective destinations. On the other hand, loops and repeated forwarding may be caused if no restrictions are imposed by intermediate nodes. Especially, when an in-network caching mechanism is used in ICN, heavy data storms may be caused if every node with a copy of the data responds to an interest message, without regard to the action of other nodes. This may, in turn, lead to heavy packet loss due to high interference in the physical-layer and network-layer congestion. In order to reduce the total number of packets in the network, first, we will reduce the hops of packet transmission in the network. Therefore, we use the greedy distance-based forwarding control method, which ensures that the nodes furthest away from the source of the packet (the content holder for Data packets or the requester for Interest packets) are selected to forward packets first to ensure the maximum geographical spread of the packets. This is made possible by modifying the NDN packets to include position data, as will be explained in more detail below. Correspondingly, we introduce a deferral time function, which allows the nodes furthest from the sending node (i.e., those nodes closest to the destination) to forward the packet first. To achieve this, we introduce a Deferral Forwarding Table (DFT) in each node. We also changed the Pending Interest Table (PIT) table in order to reduce the number of the Data packets as much as possible. The DFT is used to check whether to forward an Interest packet, and if so, when to forward it. The Nonce, a unique identifier created for an Interest packet when it is generated, is stored in the DFT together with the corresponding interest name; the deferral time, which is the time for waiting before forwarding the Interest or Data packet by the current node; and the EventID, which is used to trigger an event when a timeout happens, as shown in Figure 2. Based on DFT and the Nonce, forwarding of an Interest can be deferred by the corresponding deferral time, or an entry in the table can be deleted according to a local strategy, for example, after a certain time based on the assumption that forwarding of the packet in the neighborhood has ceased, or the node has no need to forward the packet, see Section 3.4. When the density of vehicles in a certain area is high, vehicles close to the sending nodes should have a long deferral time, restricting forwarding. Thus, the node having the longest distance will have the smallest \(t\). It will first forward the Interest or Data by broadcasting it through the wireless network interface. Other nodes nearby will be inhibited from forwarding the same packet after overhearing the packet just sent. Thus, the vehicles relatively far away from the node sending the packet have a greater chance of forwarding it. Therefore, increasing the likelihood of sp  
Figure 1: Context-aware packet-forwarding method. a large geographical area with few wireless transmissions. Since several nodes may have the same distance to the node sending a packet, the deferral time \(t\) consists of two parts, namely \(t=t_{b}+t_{s}\), where \(t_{b}\) is inversely related to the distance, \(t_{s}\) is a random value, and \(t_{s}<<t_{b}\) (i.e., \(t_{s}\) is far smaller than \(t_{b}\); in our experiment, we let \(t_{s}\in(0.01\) min\(\{t_{b}\}\), \(0.1\) min\(\{t_{b}\}\))). When vehicles are sparsely distributed, the difference of the deferral time should not be reduced as quickly as in densely populated scenarios.