# Software-Defined Named Data Networking in Literature: A Review
## 3 Overview and Background
### Named Data Networking
#### 3.1.4 NDN Forwarding  
NDN routers depend on three essential data structures: a CS for caching data packets, a PIT for managing forwarded but unsatisfied interest packets, and an FIB for associating content name prefixes with forwarding interfaces. The forwarding process within NDN is shown in Figure 3. Upon receiving an interest packet, the router initially checks its CS. If the requested data packet is cached, the router promptly responds with the corresponding data packet via the same interface. Conversely, if the data are not found in the CS, the router searches the PIT. If the interest packet is already registered in the PIT, the router appends the new interface to the PIT and discards the packet. If not, the router consults the FIB to determine the appropriate interface for forwarding the packet. In the absence of a match in the FIB, the packet is discarded.  
Alternatively, upon receiving a data packet, the router verifies whether the data are registered in the PIT. If not, the packet is discarded. Conversely, if the data are registered in the PIT, they are cached and forwarded to the appropriate interface based on PIT entries. The PIT plays a crucial role in maintaining a loop-free network in NDN, and interest packets are removed from it once matching data are received or a timeout occurs [20].  
Based on the aforementioned forwarding process, functions of the forwarding plane in NDN can be categorized into four key areas [4]:  
1. Name lookup: Matching content names with data structure entries. Generally, lookup in the FIB is performed by Longest Prefix Match (LPM), whereas in the PIT or CS, lookup is performed by searching with one-to-one correspondence. More about the NDN name lookup can be found in [10; 12].
2. Forwarding strategies: Select the appropriate interface to forward interest packets. An example of such a strategy is the NDN basic forwarding strategy, which forwards the interest packet to all matching context prefix interfaces (except the interest incoming interface). Different forwarding strategies can be found in [21; 22; 23; 24; 25].
3. Cache placement: Determining where to place cached content. The default NDN cache placement strategy is Leave Copy Everywhere (LCE), which may lead to content redundancy, but there are many other strategies in the literature that can be implemented, such as [26; 27; 28; 29].
4. Cache replacement: Employing replacement policies for cached items. Classical proposed replacement policies include Least Recently Used (LRU) and Least Frequently Used (LFU); however, there are many others, such as [30; 31; 32; 33].  
In summary, NDN is an innovative approach to networking that focuses on content names rather than IP addresses. It operates by broadcasting interest packets to request content, which are routed through the network until they find an NDN node that holds the desired data. This node then sends back a data packet along the reverse path to the consumer. The shift from IP addresses to content names enhances mobility support within the network, and the in-network caching of frequently requested content reduces latency and improves the overall network experience.