In this section, we first introduce the NRS-based multipath transmission mechanism [
13], followed by a description of the content caching and retrieval process integrated with the multipath transmission mechanism. Subsequently, we formulate the cache placement optimization problem for multipath transmission, with the objective of minimizing the average content transmission latency.
3.1. System Description
The current dominant architecture of the Internet is based on the IP network. A complete overhaul of the existing infrastructure to deploy a new network architecture is not practical. Therefore, the ICN architecture must be compatible with existing IP networks to leverage the current infrastructure and minimize deployment costs. In our previous research, we proposed a multipath transmission architecture based on the Name Resolution System [
13], which enables incremental deployment by adding an ID layer above the IP layer. In this architecture, data, network devices, services, and other entities are identified using a globally unique and immutable Entity ID (EID). The EID is flat and semantically neutral, capable of taking various forms, such as numbers or characters. The mapping between the EID and its corresponding Network Address (NA) is managed by the Name Resolution System, which is deployed in a distributed manner to provide low-latency resolution services [
31]. By maintaining the mapping between IDs and IP addresses, the NRS decouples ID-based addressing from IP-based routing. At the network layer, a protocol called the Identifier Protocol (IDP) [
31] is employed. The IDP defines a set of rules on how to operate the NA based on the packet’s ID, including actions such as adding, deleting, and modifying the NA. Above the ID layer, the Transport Layer protocol [
32] is designed to handle the ICN packet format, transmission process, congestion control mechanisms, and retransmission mechanisms. This transport layer protocol ensures efficient, reliable, and scalable data transmission services that are essential for ICN operations.
The multipath transmission system proposed in [
13] utilizes multiple ICN routers to establish multiple single-hop relay paths between two endpoints. Specifically, multipath transmission is treated as a service, generating a corresponding Multipath Transmission Service ID (MPSID). ICN routers offering multipath services register their IP addresses and MPSID mappings in the NRS, forming a candidate relay node set. Data service nodes can query the NRS using the MPSID to obtain the IP addresses of these relay nodes. Based on a relay node selection strategy, several appropriate relay nodes are chosen to form multiple relay paths. Upon receiving the transmitted data packets, a relay node can query the NRS using the receiver’s device ID to obtain the destination IP address. The relay node then performs the necessary IP address translation and forwards the data packet to the destination. This multipath transmission architecture based on the NRS not only supports the default IP path but also allows for the use of multiple relay paths, thus improving both robustness and efficiency. Unlike overlay network routing methods, this multipath transmission mechanism operates at the network layer using the MPSID, rather than at the application layer.
In this paper, we propose a multipath-based caching architecture based on the multipath transmission mechanism supported by the NRS. As shown in
Figure 1, the user obtains the desired content by sending a request message to the network. The source represents the entity storing the data, which provides data to satisfy the user’s content retrieval needs. In this paper, Named Data Chunks (NDCs) are the fundamental units of in-network caching. These chunks are generated by dividing the original application layer content objects into fixed-size segments. Each NDC has a globally unique name. In addition to forwarding functions, the ICN routers also have the capability to support multipath transmission, cache chunks, and respond to user requests. The NRS is responsible for storing the mapping between EIDs and IP addresses. The details of the multipath transmission, caching, and retrieval processes are as follows:
EID Registration: Nodes supporting multipath services register their NA and MPSID mapping relationship with the NRS (Step 1). Simultaneously, the source registers the mapping relationship between its NA and the names of all the stored NDCs (Step 2).
Chunk Retrieval: When user A wants to retrieve a chunk, the system queries the NRS using the chunk’s name to resolve its location and obtain the NA of the node storing the chunk. In this case, we assume that the user requests chunks 1 and 2 (Step 3). The system then selects a service node based on the replica node selection policy. Here, we employ the nearest-replica routing policy [
33], where the closest replica node to the user is chosen. The chunk request is then forwarded to the selected service node, which, in this case, is the source node, as it is the only node storing the chunks (Step 4). The source node then returns the requested chunks (Step 5).
Multipath Transmission: During the transmission of chunks, the edge node R5 queries the NRS using the MPSID to obtain the list of supporting multipath transmission intermediate nodes’ NAs (Step 6). It then selects several appropriate intermediate nodes, such as R2 and R4, to form a candidate relay node set, establishing multiple transmission paths (Step 7). The edge node schedules the chunks for transmission across the selected paths. In this case, chunk 1 is transmitted via the relay path R5 → R2 → R1, and chunk 2 is transmitted via the relay path R5 → R4 → R3 → R1. Upon receiving the data, the multipath service node queries the NRS for the receiver’s IP address using the receiver’s device ID and performs the corresponding IP address conversion to forward the data to the destination (Step 8).
Caching Decisions: As the chunks are transmitted along the selected paths, intermediate nodes decide whether to cache the chunks based on the caching policies. Assume that each intermediate node can store only one chunk. In this case, we assume the edge caching policy [
33], where chunks are cached only at nodes closer to the receiver. Thus, in path R5 → R2 → R1, node R2 caches chunk 1, while in path R5 → R4 → R3 → R1, node R3 caches chunk 2 (Step 9). Once the caching operation is complete, the caching nodes must register the mapping between their NA and the cached chunk name with the NRS (Step 10).
Subsequent Retrieval: When User B wants to retrieve chunks 1 and 2 again, the same procedure is followed. First, the NAs of the chunks are resolved through the NRS (Step 11), which returns the NAs of the intermediate nodes caching the chunks. Then, based on the nearest-replica routing policy, the closest replica nodes (R2, R3) are selected, and chunk requests are sent to the corresponding nodes (Step 12). The nodes then return the requested chunks (Step 13).
Note that if only the default single path R5 → R2 → R1 is used for transmission, due to the limited cache space at node R2, it can only store one chunk. Therefore, the request for the other chunk must be fetched again from the source node. However, the multipath-based caching mechanism can leverage the resources of multiple paths, enabling both chunks to be cached within the network. This allows the requests for both chunks to be served by nearby cache nodes, effectively reducing content retrieval latency and improving cache resource utilization.
Additionally, it is important to note that in this paper, NDCs are used as the basic units of in-network caching. In the remainder of this paper, the terms content and chunk will be used interchangeably to refer to NDCs.
3.2. Problem Description
In this section, we construct a network model to define and illustrate the optimization problem for multipath-based cache placement.
We consider an arbitrary network topology represented by , where V denotes the set of nodes in the network, including the cache nodes and source servers, and E represents the set of edges connecting the nodes. Additionally, we assume that users are connected to edge nodes, with each edge node aggregating requests from the users linked to it. The set of edge nodes is denoted as , where .
Each cache node
has a limited cache space
. When the cache is full, nodes must evict cached content to accommodate new content. Transmission paths between a node
v and a user
u are denoted as
, which are established using the multi-path transmission mechanism introduced in
Section 3.1.
The set of available content in the network is represented as M, where each content item has a size . We assume that the source servers store all content, ensuring that user requests are always fulfilled.
The request rate for content is assumed to remain constant over a period of time. We use
to represent the request rate for content
m of user
u. The objective is to minimize the average transmission latency of user requests across the network.
Table 1 summarizes the symbols used.
The goal is to minimize the average transmission latency for user requests, expressed as:
Here, is a binary cache decision variable, indicating whether content m is cached at node v (1 if cached, 0 otherwise). The variable is a binary replica selection variable, determining whether node v serves as the response node for user u’s request for content m. This variable follows the replica selection strategy, and we assume that each request is served by only one replica node. The variable represents the transmission path selection, indicating whether path p from node v to user u is selected for transmitting content m. Only one path is chosen for each content transmission.
This paper primarily focuses on cache placement decisions, including path selection and cache decision-making. The replica selection strategy adopted is the commonly used nearest replica selection strategy [
33] in ICN architectures based on the NRS. Under this strategy, when content
m has multiple replica nodes, the request for content
m by user
u is handled by the nearest replica node storing content
m. The objective function based on the nearest replica selection strategy is expressed as follows:
subject to
Here,
represents the set of users routed to node
v when requesting content
m, while
represents the set of users routed to the source service node src when requesting content
m. Equation (
4) represents the cache capacity constraint, which ensures that the total amount of cached content at each node does not exceed its maximum allowed cache capacity. Equation (
5) expresses the path selection constraint, stating that for each content request, if node
v is chosen as the responding node, a valid transmission path must be selected to transmit content
m. Equation (
6) represents the request response and path availability constraint, which requires that content
m must be cached at node
v and the path
p must be available before it can be used for transmission. Equation (
7) illustrates the dependency between path selection and cache placement, stating that if node
v caches content
m, at least one path passing through node
v must be selected for the transmission of content
m.