1. Introduction
The significant growth of Internet traffic and the shift of current Internet usage model, mainly data retrieval and service access have given the new requirements such as efficient content distribution, mobility support, and better security. However, the host-centric communication model in the current Internet architecture can not handle these new requirements easily and a new revolutionary architectural approach is needed. The NDN [1] [2] is one of the promising Information-centric networking (ICN) solutions [3] to address these requirements. The NDN relies on named data, name-based routing, and in-network caching to distribute content efficiently and improve network bandwidth. In addition, the NDN features built-in security for each peace of data and supports the consumer mobility naturally. The NDN has its root from the Content-Centric Networking (CCN) [4]. The NDN has the same architecture and protocol operation as the CCN, except modular and extensible codebase. Thus, the mobility management solutions for the CCN can be used for the NDN, so far.
In the NDN, the content consumer mobility can be handled easily by the receiver-driven nature of the NDN. After handover, a mobile consumer just needs to resend unsatisfied Interest packets. The data can be sent seamlessly to the content consumer from the nearest cache. However, the content provider mobility shows more problems such as slow routing table convergence time, and long handover delay [5]. In addition, the frequent routing update in an entire large network domain results in a heavy bandwidth cost. To overcome these problems, some solutions have been proposed, such as tunnel-based approach, Forwarding Information Base-based approach, DNS-based approach, locator/ID-based approach, control data plane separation-based approach, Pending Interest Table-based approach. These approaches will be described in detail later
However, the above-mentioned approaches still remain inefficient in terms of handover latency, network resource utilization, and packet delivery path. Thus, in this paper, we propose an optimal handover scheme for mobile providers in the NDN environment. Our proposed scheme uses a new mechanism to reduce handover latency and cost. This new mechanism can predict the movement of the content provider in order to perform the mobility signaling before the content provider connects to a new content router. In addition, this mechanism makes use of the state information left in the forwarding plane of the NDN network to establish an optimal packet delivery path. By numerical results, we prove that our proposed scheme outperforms other approaches in terms of handover latency and cost under various environment conditions.
In Section 2, we review some related works for provider mobility in the NDN. Section 3 presents our proposed scheme. We perform evaluation in Section 4. Section 5 concludes our paper.
2. Related Works
2.1 Basic Named-Data Networking (NDN) Operation
In the NDN [1] [2], the content is divided into the smaller data objects. Each data object is assigned a unique name. Each Interest packet with one name gets one Data packet containing the corresponding data object. The content provider serves the content using a content prefix (e.g. /ssu.kr) and advertises the content prefix to all content routers (CR) in the NDN domain. Name routes are set up in the Forwarding Information Base (FIB) of the CRs from the content consumer to the content provider. The Interest packet is routed according to the pre-setup path to the content provider and leaves a trace in the Pending Interest Tables (PIT) of the CRs from the content provider to the content consumer. The Data packet will follow the trace left by the Interest packet back to the content consumer. The content can be cached in the Content Stores (CS) of intermediate CRs along the trace. In the future, another content consumer wants to get the same content, the content can be sent from the nearest caches without going to the content source.
When the content provider moves to a new domain, it needs to advertise its content prefix again into the entire NDN network. The name-based routing protocols runs and sets up routes in order to forward the Interest packets to the new location of the provider. This normal operation has very high handover latency and cost which is due to the slow convergence time of the name-based routing protocols and the frequent routing update in a large NDN domain. Thus, several proposals have been given to alleviate these problems.
2.2 Proposals for Provider Mobility in NDN
The tunnel-based approach (TBA) [6] [7] relies on the MIPv6 concept to support the provider mobility in the NDN. The main idea of this approach is to redirect Interest packets to the new location of the provider using a tunnel. A home agent (home router [6] or indirection point [7]) is introduced to maintain the binding information between the content prefix used to serve data and the location prefix advertised by a new visiting domain, which indicates the current location of the content provider. Fig. 1 shows the protocol operation of the TBA. Each content provider registers its own content prefixes with the home agent. Therefore, all Interest packets routed to the Home Agent of the content provider and data is sent in the reverse path. When the provider handovers, the provider sends a Binding Update message to the home agent for notification about its new location. From this point, when the home agent receives the next Interest packets from the consumer, these Interests are encapsulated and tunneled to the new content router, to which the provider is currently attached.
Fig. 1.Tunnel-based approach operation
The FIB update-based approach (FUBA) [8] or Interest Forwarding [9] also relies on the MIPv6 concept, but it uses the FIB update mechanism to establish a path between the home agent and the new location of the provider. In the [9], an Interest packet which sent from the provider to the home agent is used to update FIB tables but the [8] a Data packet which is sent from home agent to the provider to update FIB tables instead. Fig. 2 shows the operation of this approach. In this approach, when the provider handovers, it sends a Mobility Interest packet that contains the content prefix to the home agent. Upon receiving this Mobility Interest packet, the intermediate routers between the new location and home agent update their FIBs in order to forward the next Interest packets to the new location of the provider.
Fig. 2.FIB update-based approach operation
The DNS-based approach (DBA) relies on a DNS server (DNS server [10], mapping server [9], or Rendezvous point [12]), which keeps track of the current location of the content provider. Fig. 3 shows the operation of this approach. When the provider is visiting a new domain, he can discover the new name prefix and update to the DNS server. The DNS server maintains the mapping between the content prefix and its location (the name prefix of the new domain). To get the data, the content consumer queries to the DNS server to obtain the new location of the provider. The next Interest packets are sent with the new location in the Forwarding Hint field. The Forwarding Hint will be used by content routers to forward the Interests to the mobile content provider.
Fig. 3.DNS-based approach operation
The locator/Identifier (ID) seperation-based approach (LIBA) [13] [14] assigns a unique locator for each access content router. A home router maintains the mapping information between the content prefix of the provider (or identifier) and its current location (or locator). Fig. 4 shows the operation of the LIBA. When the provider handovers, it updates its location to the home router. The next Interest packets destined for the content prefix are routed to the home router. The home router adds the current location of the provider into the Interest packets, and these modified Interest packets are routed based on the added location information toward the provider.
Fig. 4.Locator/ID-based approach operation
The Control Data Plane separation-based approach (CDBA) [15] [16] separates the control plane and the data plane to support mobile providers. The control plane (controller [16] or resource handler [15]) is used to handle the mobility signaling. The data plane is used to forward the Interest and Data packets. In this approach, when the provider handovers, it registers its new location to the control plane. There are two ways for the control plane to instruct the data plane to forward the packets. The controller [16] knowing the topology of the network can update FIB tables in the intermediate routers to route the next Interest packets to the new location of provider. The resource handler [15] notifies the rendezvous point (RP) about the new location of provider. The next Interest packets can be routed to the RP and then to the provider. The protocol operation is shown in Fig. 5.
Fig. 5.Control Data plane seperation-based approach operation
The PIT-based approach (PBA) [17] relies on the trace of Interest packet left in the PIT tables of the NDN forwarding plane. In the NDN, Data can be transmitted in the reverse path using the PIT entries created by the Interest packet. To support seamlessly the mobility of provider, an Interest can be enabled to transmit along the trace left by another Interest, like Data. Fig. 6 shows the PIT-based approach operation. When the provider handovers, it sends a Traced Interest to establish a trace in the PIT tables of the intermediate routers from the provider to an immobile anchor. The next Interests are routed to the immobile anchor and added a Tracename field (the name of Traced Interest) and a TraceOnly flag (indicate that the Interests should be forwarded using the FIBs or PITs). These modified Interests (called Tracing Interest) can be sent along the trace in the PIT tables to the current location of the provider.
Fig. 6.PIT-based approach operation
Two other approaches for provider mobility in the NDN are the broadcast-based approach [10], which broadcasts Interest packets to an entire network domain, and proactive content pushing [18], which pushes the content to the neighboring nodes based on the content popularity. However, the broadcast-based approach is only suitable for a small-scale domain and not scalable. The proactive content pushing-based approach can only be applied to non-realtime traffic. Thus, we do not consider these two approaches in this paper.
Table 1 summarizes the main differences and gives a qualitative comparison among the above approaches in terms of packet delivery cost, signaling cost, signaling delay, routing path, modification level to the normal NDN protocol, caching (whether the caching feature is still available as adopting these mobility management protocols), and forwarding mechanism (matching field in the packet and table used in NDN router). Although the above approaches improve the normal operation to support the provider mobility in the NDN, these approaches are still not optimal in terms of packet cost, handover latency, and routing path. Thus, in the next section, we propose a new scheme to support the provider mobility efficiently.
Table 1.Qualitative Comparison
3. Proposed Scheme
3.1 Basic Design
In order to reduce handover latency and the cost of the provider mobility in the NDN, we propose a new mechanism that can allow the signaling and optimal path establishment to be done before handover occurs. To enable this mechanism, we design some special mobility management packets and modify the nornal router operation to be able to process these special packets. We add into each border content router the information about its neighbors (i.e. router ID, name prefix). When the provider handovers from the current content router to its neighbor (the next content router), the current content router can use the neighbor information and the trace left by the unsatisfied Interest packet to make an optimal routing path. This optimal routing path is used to deliver next Interest packets to the next content router or new location of the provider.
To create the special packets for the mobility management, we add some additional fields into the original Interest and Data packets as depicted in Fig. 7
Fig. 7.Message Format
To ensure the security of our protocol against the attacks, we assume that these mobility management packets which are issued by the content routers are signed by these routers themselves.
We add two new tables into each content router at the border of the NDN network: Neighbor Info Table (NIT) and Binding Cache Table (BCT). The NIT contains the access point ID, content router ID, and corresponding name prefixes of all surrounding content routers (new locations). In order to simplify the look-up process in the NIT tables, each content router is assigned an ID. The NIT is used to provide information about the next access router during the handover. The BCT consists of registered provider URLs and the name prefix of the current content router (current location). The BCT and NIT are used to generate a message, which triggers an optimal path establishment process. The opreration of the content router at the border of NDN network is depicted in Fig. 8.
Fig. 8Operation of content router
3.2 Protocol Operation Overview
Fig. 9 shows the architecture and brief protocol operation of our scheme. We assume that the content provider server Data packets using the content prefix (/ssu.kr).
Fig. 9.Fast Provider mobility architecture
Step 1-2: The content consumer sends Interest packets to the content provider to request data. The Data packets from the provider is sent back in the reverse path to the content consumer.
Step 3-4: The content provider detects the stronger radio signal from the next access point, and the content provider also can get the access point ID from the beacon frames. The content provider queries to the current serving content router to know information (i.e. content router ID, and name prefix) of the next content router.
Step 5: The content provider triggers the fast handover process by sending a Fast Handover packet, which contains information about the next content router, to the current content router.
Step 6: Upon receiving the Fast Handover packet, the current content router sends an Optimal Path packet, which contains information about the current and next content router, to the content consumer.
Step 7-8: Upon receiving the Optimal Path packet, the serving router of the content consumer sends two packets to the current and next content router to delete the old path and establish a new optimal path to the next content router.
Step 9: Upon receiving the Delete Route packet, the current content router sends Fast Ack packet to the content provider to confirm that a new path is ready to transport the Interest packets.
Step 10: The content provider performs the handover.
Step 11-12: The Interest packets follow the new data path to reach the content provider, and then Data will be sent back in the reverse path to the content consumer seamlessly. After the handover occurs, the new data path is established to redirect Interest packets which are destined for the content prefix to the new location of the provider. Then, other content consumers still can request to the same content prefix for the Data packets.
3.3 Message Flow
Fig. 10 shows a real example of our protocol. We make an assumption that the content consumer is watching a live streaming video (/video/v1) from a content provider (/ssu.kr). The content consumer issues a series of Interest packets (Content Name: /ssu.kr/video/v1/sn, n = 1, 2, 3, Mobility Flag : 0) to get data from the video file (/ssu.kr/video/v1). The content provider sends back content trunks corresponding to the Interest packets. When the content provider detects the stronger radio signal from the next access point (AP2), the content provider extracts the access point ID (AP2 ID) from the beacon frames advertised by the AP2. Then, the content provider issues an Interest packet (Content Name: /prefix1.com/Mobility/ssu.kr, Mobility Flag : 1, Mobility Type: Neighbor Query, additional fields: AP2 ID) to the current content router (CR1). The CR1 replies with a Data packet containing the ID of the next content router (Content Name: /prefix1.com/Mobility/ssu.kr, Mobility Flag : 1, Mobility Type: Neighbor Reply, additional fields: CR2 ID). The content provider triggers the fast handover by sending an Interest packet (Content Name: /prefix1.com/Mobility/ssu.kr, Mobility Flag: 1, Mobility Type: Fast Handover, additional fields: /ssu.kr, CR2 ID) to the CR1. Upon receiving the fast handover packet from the content provider, the CR1 triggers the optimal path establishment by issuing a Data packet (Content name: /ssu.kr/video/v1/sn, n = the numerical value of content trunk, e.g. 1000, not served by the content provider yet, Mobility Flag : 1, Mobility Type: Optimal Path, additional fields: /ssu.kr, /prefix1.com, /prefix2.com). This Data packet reachs the content consumer by following the trace left by the Interest packet, which is sent the most recently from the consumer to the content provider, but not yet served by the content provider. This optimal path packet contains the name prefixes of the current location and next location of the provider which are later used to remove the path towards the current location and establish an optimal path towards the next location. Upon receiving the optimal path packet, the serving router of the content consumer (CR4) issues two Interest packets: one (Content Name: /prefix1.com/Mobility/ssu.kr, Mobility Flag : 1, Mobility Type: Delete Route, additional fileds: /ssu.kr) to delete the routing entries for the name prefix /ssu.kr in the FIB tables of the intermediate routers. The second Interest (Content Name: /prefix2.com/Mobility/ssu.kr, Mobility Flag : 1, Mobility Type: Make Route, additional fields: /ssu.kr) is used to create new routing entries for the name prefix /ssu.kr in the FIB tables of the intermediate routers. At the same time, when the CR1 receives the delete route message from the content consumer, the CR1 sends a Data packet (Content Name: /prefix1.com/Mobility/ssu.kr, Mobility Flag : 1, Mobility Type: Fast Ack, additional fields: /ssu.kr, CR2 ID) to notify the content provider about the completion of handover preparation. From this point onward, the Interest packets (Content Name: /ssu.kr/video/v1/sn, n = 1001, 1002..., Mobility Flag : 0) can be transmitted along the new path to the next content router (CR2) and buffered at the CR2. When the content provider handovers to the CR2, the buffered Interests are served from the CR2 without any further signaling process.
Fig. 10.Message Flow
4. Performance Evaluation
In this section, we evaluate our scheme with others based on the following metrics: handover latency and total cost. The analysis model and parameter values are partially employed in the literature [14] [19] [20] [21].
4.1 Analysis Model
We build a network model to compare our scheme with six other schemes: The tunnel-based approach (TBA), the FIB update-based approach (FUBA), the DNS-based approach (DBA), the locator/ID-based approach (LIBA), the Control Data plane separation-based approach (CDBA), and the PIT-based approach (PBA). The analysis model is shown in Fig. 11. In this model, we assume that the hop count between a content provider and a content router is a; between two content routers is b; and between a content router and a server is d. The hop count between the content consumer and a content router near the provider is c (optimal path) or is e (nearly optimal path).
Fig. 11.Analysis Model
The delay between two consecutive hops for the wired and wireless link is defined as:
where Spacket_name is the size of packet; q is the probability of link failure; Bw, and Bwl are the bandwidth of the wired and wireless links, respectively; Lw, and Lwl are the wired and wireless link delay, respectively; and Wg is the queueing delay at each router.
4.2 Handover Latency
Handover latency is defined as the time for completing the signaling process as well as the time for receiving the first Interest packet from the next content router.
In TBA, the content provider disconnects from the CR1 and connects to the CR2 after LT. Then, the provider sends Binding Update/Binding Ack (BU/BA) packets to update the location of the provider to the CR1. From this point onward, the next Interest packet is routed to the CR1 and then encapluated to the CR2 and the provider.
In FUBA, after LT, the content provider sends a Mobility Interest packet to update the FIB tables of the intermediate routers from the CR1 to the CR2. Then, the next Interest follows a nearly optimal path from the CR4 to the CR1 and the provider.
In DBA, after LT, the content provider sends an DNS Update packet to the DNS server. The content sends DNS query and reply packets to receive the name prefix of the CR2. Then, the next Interest packets with the new Forwarding Hint are routed to the content provider via an optimal path.
In LIBA, after LT, the content provider sends Location Update/ Location Ack (LU/LA) to the CR1 to update the new location of the content provider. The next Interest packets are routed to the CR1, and the CR1 adds the new location of the content provider into these Interest packets, then forward them to the content provider.
In CDBA, after LT, the content provider sends a Register packet to the controller to register its new location.Then, the controller updates the FIB tables along the best path from the CR1 to the CR2. The next Interest packets are routed to the CR1 and follow the best path to the CR2 and then to the content provider.
In PBA, after LT, the content provider sends a Traced Interst packet to the CR1 to create a trace in the PIT tables along the path from the CR2 to the CR1. The next Interests are routed to the CR1. Then, these Interests will be added a flag in order to be forwarded according to the rules in the PIT tables from the CR1 to the CR2 and finally to the content provider.
In our scheme, after the content provider connects to the CR2, the provider can receive the Interest packets immediately in an optimal path.
Now, we present the numerical results. We set the hop count parameters a = 1, b = c = 4, d = 8, and e =5. We consider that the size of a normal Interest packet (SInt) is 40 bytes and the size of an additional field is 16 bytes [22]. Therefore, we approximately have SBU = 72 bytes, SencapInt = 56 bytes, SMobInt = 56 bytes, SDNSup = 72 bytes, SDNSquery = 56 bytes, SLocInt = 56 bytes, SLU = 72 bytes, SReg = 72 bytes, LFIBup = 72 bytes, STracingInt = 56 bytes, and STracedInt = 40 bytes. The LT = 50 ms; the wired and wireless link bandwidth Bw = 100 mbps and Bwl = 11 mbps, respectively; the wired and wireless link delay Lw= 2 ms and Lwl = 10 ms, respectively; and the queueing delay Wg = 5 ms. We compare the handover latency of these approaches by varying the q.
Fig. 12 shows the impact of the wireless link failure probability on the handover latency. We can see that our scheme has better handover latency than other schemes as the the failure probability increases. This result is due to fact that the signaling process was done before the handover occured. In addition, the optimal data path also contributes to reduce the delay when the provider receives the first data packets at the new location. The DBA and CDBA have the highest latency which is caused by the communication with an external server. The LIBA and TBA have the same latency due to the same signaling operation to the home router. The PBA has lower latency than the LIBA and TBA because the signaling operation only requires one packet to establish a path to the new location. The FUBA has lower latency then the PBA, which results from a nearly optimal data path established in the FUBA.
Fig. 12.Handover Latency variation with link failure probability
4.3 Handover Cost
Handover cost is calculated as the sum of signaling cost, which is caused by transmiting the handover-related packets, and the packet delivery cost, which results from delivering the Interest packets from the consumer to the provider and the Data packets from the provider to the consumer. The cost is defined as the product of hop count and message size from network bandwidth perspective. The subnet crossing rate and the Interest arrival rate are μ and λ, respectively .The residence time is T. Sname is the size of packet or additional field. κ and τ denote the unit transmission cost in a wireless and wired link, respectively.
In the TBA for signaling, two packets are transmitted between the provider and the CR1 to update the new location of the provider. For packet delivery, the Interest packets are routed in a triangular path (the content consumer → the CR1 → the CR2 → the provider).
In the FUBA for signaling, one packet is sent from the provider to the CR1 to update the routing path to the CR2. For packet delivery, the Interest packets are routed in a nearly optimal path (the consumer → the intermediate routers between the CR1-CR2 → the CR2 → the provider)
In the DBA for signaling, the provider uses two packets for updating its current location to the server, and the consumer uses two packets for fetching the current location of the provider from the server. For packet delivery, the Interest packets will be routed in an optimal path (the consumer adds a forwarding hint field → the CR2 → the provider).
In the LIBA for signaling, the provider uses two packets to update its location to the CR1. For packet delivery, after receiving the first Data packet, the Interest packets will be routed in an optimal path (the consumer adds a Location field → the CR2 → the provider)
In the CDBA for signaling, the provider uses two packets for registration to the server. The server uses two packets to update the routing tables in the CR1 and CR2. For packet delivery, the Interest packets will be routed in the following path (the consumer → the CR1 → the CR2 → the provider).
In the PBA for signaling, the provider uses one packet to create a trace from the CR1 to the provider. For packet delivery, the Interest packets will be routed in the following path (the consumer → the CR1 adds a tracename field → the CR2 → the provider).
In our scheme for signaling, the provider uses two packets for neighbor query and two packets for triggering the fast update process. One packet is used to trigger a optimal path establishment, and two other packets are transmitted from the consumer to the CR1 and CR2 to establish a new path. For the packet delivery, the Interest packets are routed in an optimal path (the consumer → the CR2 → the provider) .
Now, we present the numerical results. Here, we have Stunnel = Sfw_hint= SLoc= Stracename= 16 bytes, Sdata = 200 bytes, SNbquery = 56 bytes, SFast = 72 bytes, Sopt_path = 88 bytes, and Smk_route = 56 bytes. We set κ = 2, τ = 0.5, and T = 1000 ms. We compare the handover cost of these approaches by varying the μ and λ.
Fig. 13 shows the variation of handover cost with Interest arrival rate. We can see that our scheme has the best handover cost as the Interest arrival rate increases. This result is due to the Interest and Data packets delivered on an optimal data path without adding any extra fields. The DBA and LIBA has higher cost than our scheme due to the addition of one optional field into the Interest packets during packet delivery process. The FUBA, which has a nearly optimal data path, has the forth lowest cost. The three remaining approaches have much larger cost compared to the four previous approaches because these three approaches have a non-optimal packet delivery path. Among these three approaches, the TBA has the highest cost. The reason is the bi-directional encapsulation of both Interest and Data packets. The PBA has lower cost than the TBA due to the addition of one field (i.e. PBA is tracing name) into the Interest packets. The CDBA which doesn’t include any extra fields into the Interest or Data packets has the lowest cost among these four approaches.
Fig. 13.Handover cost variation with Interest arrival rate
Fig. 14 shows how the crossing rate impacts the handover cost. For the typical range of the crossing rate, our scheme has better handover cost than other schemes. When the crossing rate increases, the signaling cost also grows up accordingly. Our scheme has higher signaling cost than others due to the complexity of the signaling operation for the handover preparation. We can notice that the gap between our scheme and others is getting closer as the crossing rate increases. From the Fig. 14, when the crossing rate is less than 0.3, the DBA has lower cost than the FUBA. This lower cost results from the packet delivery cost is more dominant than the signaling cost as the crossing rate is low. However, this trend is reverse as the crossing rate increases beyond 0.3. The trend reversal also occurs to the other approaches including LIBA, CDBA, and PBA. The TBA has the highest handover cost among our compared approaches, which come from the highest packet overhead in both packet delivery and signaling operations.
Fig. 14.Handover cost variation with crossing rate
5. Conclusions
In this paper, we proposed a cost-efficient and fast handover solution to support mobile content providers in the large NDN domain. We modified the normal operation of the NDN content router to support a efficient handover mechanism and made use of the NDN stateful forwarding plane to deliver data in an optimal manner. Because our solution requires all routers to change, this seems to be unrealistic in the worldwide deployment. However, if our protocol solution is deployed in a smaller domain, e.g. a country, under the admistration of one service provider, it is still feasible. In the future, we will focus on other aspects of our scheme such as the movement of the group of content providers and security.
피인용 문헌
- OPMSS: Optimal Producer Mobility Support Solution for Named Data Networking vol.11, pp.9, 2015, https://doi.org/10.3390/app11094064