Mobility support in Named Data Networking: a survey

With the rapid growth of network traffic volumes in terms of the content and mobile data, how to cope with these two new trends of Internet has been widely discussed. Among related solutions, Named Data Networking (NDN) is aimed to achieve highly effective content distribution. Besides, the mobility support is also one of its important research contents, attracting great attentions. Thus, in this paper, we provide a survey on the mobility support in NDN. Specifically, we firstly present the problem statement for both mobile producers and consumers in NDN, then classify and illustrate mechanisms of existing schemes based on their characteristics. Finally, we discuss the advantages and disadvantages of these countermeasures.


Review
The original Internet invented in 1960s was only used to share data between two fixed computers. However, during the last decades, with the rapid popularization of Internet and the constant emergence of smart devices as well as innovative network technologies, the current Internet is imposed to meet much more complicated requirements little considered by its designers, facing a great many of challenges. Thus, how to design the next-generation network receives unprecedented attention from researchers in both academia and industry [1], with the purpose to overcome various existing drawbacks of current Internet and achieve its sustainable development.
Among these challenges in various aspects [2][3][4][5][6][7][8], highvolume data distribution and user mobility support are the two representative demands urgently to be addressed. In terms of Internet traffic, according to the statistics estimated by Cisco [9], annual global IP traffic will surpass the zettabyte (1000 exabytes) threshold in 2016, and the two zettabyte threshold in 2019, at the same time, globally, consumer Internet video traffic will be 80 % of all consumer Internet traffic in 2019, up from 64 % in 2014. With respect to the mobile traffic, Cisco [9] also assesses that mobile data traffic will increase tenfold *Correspondence: bohaofeng@bjtu.edu.cn Institute of Electronic and Information Engineering, Beijing Jiaotong University, 100044 Beijing, China between 2014 and 2019, and that global mobile data traffic will grow three times faster than fixed IP traffic from 2014 to 2019. These observations and predictions have motivated two concepts for the improvement of Internet, namely Information-Centric Networking [10] and IP Mobility Management [11].
Inspired by the fact that the Internet users concern more about what content the requested data contain, rather than where the data can be found, ICN is proposed to primarily achieve the highly efficient information dissemination, with the information or content replacing the host as the first-class citizen in such a network paradigm. Some well-known ICN approaches are Named Data Networking (NDN)/Content-Centric Networking (CCN) [12,13], COLOR [14], PURSUIT [15], etc. [16][17][18]. Although these approaches are characterized by their unique features, they all share the same basic principles of ICN such as naming data based on their contents and enabling routers with the cache function. Note that, in this paper, we focus on NDN only.
By contrast, with the mobile devices emerged, how to manage their mobility has been studied by many researchers and organizations for a quite long time, especially Internet Engineering Task Force (IETF) [19]. Correspondingly, many standard protocols are developed, such as Mobile IP (MIP) [20] and Proxy Mobile IP (PMIP) [21], preventing the ongoing communication of moving hosts from the interruption. Although these protocols are based on IP networks, their ideas can still be inherited by ICN, to concurrently well solve the two challenges, the content delivery and mobility support. Actually, most of the NDN mobility support schemes are more or less derived from these protocols.
Thus, in this paper, we provide a comprehensive survey on the existing mobility support schemes in NDN and illustrate how they guarantee the content delivery for the mobile hosts. The rest of the paper is arranged as follows. We show how NDN works in Section 2 and present the problem statement of NDN mobility support in Section 3. Then, in Section 4, we classify the existing schemes into different classifications and detail them separately. Finally, in Section 5, a discussion is given about the advantages and disadvantages of existing schemes.

NDN background
Undoubtedly, NDN is one of the most representative ICN approaches. Before investigating the mobility support in NDN, a brief overview is given in this section to show its principle behind and related mechanism.
In general, NDN can be characterized as follows. Firstly, data are named based on their contents, decoupling from the location. Secondly, routers are equipped with the cache function; however, they have to meet the requirement of line speed [22]. As a result, the complexity of caching policy used in the router should be at O(1), and Leave Copy Everywhere (LCE) and Least Recently Used (LRU) become the default option. Thirdly, NDN replaces the traditional channel-based transmission mode with a hop-by-hop one. In this way, NDN enables the multi-cast and network-based caching capabilities. One one hand, it is possible for users to get the closest copy from the onpath router rather than the remote server, greatly reducing the user latency to fetch contents. On the other hand, it sharply decreases the redundancy traffic volume for the same contents within the network, significantly improving the whole network performance.
In terms of participants in NDN, there are three entities, namely the producer, consumer, and content router. The producer is the provider of contents, publishing their contents to NDN, while the consumer is the subscriber of those published contents, requesting its desired contents from NDN. Besides, only two kinds of packets are used in NDN, which are the Interest and Data. The Interest is the request from the consumer containing a content name, whereas the Data is the reply from the related producer carrying the related data.
By contrast, the content router is the core element of NDN, and it satisfies the consumer's requests with requested contents by three types of data structures, namely Content Store (CS), Pending Interest Table (PIT), and Forwarding Information Base (FIB). CS maintains the content name in the cache while PIT records the interface which the Interest comes from, guiding the Data forwarded to the related consumers correctly. FIB of NDN is similar as that of the current Internet, recording which interface a published content can be reached. Note that the publication of contents by producers is the routing injection and distribution of content names in FIB.
The mechanism of how the NDN router work is shown in Fig. 1. Suppose Consumer requests a video named/BJTU/video.mp4 published by Producer. Then, Consumer sends out an Interest. When receiving such an Interest, the en-route router will firstly check whether the requested content is cached locally, by looking up CS. If yes, the router directly returns the Data containing the requested content to the consumer. Otherwise, the router looks up PIT according to the content name. If there is a related entry, which means that another consumer has subscribed the same content before with a similar Interest sent upstream, then, the Interest sent by Consumer will be suppressed; however, the interface where the Interest comes will be maintained in the related PIT entry. On the contrary, if there is no related PIT entry for the Interest sent by Consumer, the router will create a corresponding new entry. Later, the router lookups FIB and sends the Interest towards Producer. When the Data is back, the router caches it locally and forwards it based on the corresponding PIT entry.

Problem statement
The mobility issue in NDN can be broadly divided into two categories, the producer mobility and the consumer mobility. In this section, we state the current problems of them in details.

Producer mobility
Although the content is named decoupled from the location in NDN, it does not mean that the content name is separated from the location. Conversely, by inserting it into FIB directly, the content name is again coupled with the location, more specifically, the gateway router which publishes the content name into the routing system. Thus, once the producer moves to another attachment point, Interests will be still sent to that gateway router. At the same time, without additional mechanisms, neither consumers nor other routers are aware of where producers access. These explain why the producer mobility is not natively supported in NDN.
In fact, the essential reason of this failure is similar as that of the current Internet, where the IP address acts as not only the identifier but also the locator. Likewise, the content name in NDN still has these dual roles, where it is the content identifier seen by consumers and the locator regarded by routers. The contradiction behind these dual roles lies in the fact that on one hand, the identifier is required to be unchanged for consumers to identify the content, and that, on the other hand, the locator has to be changed for the content reachability through the routing system. Although the content name can be updated and distributed again among all routers with related FIB entries modified, obviously, it is a nightmare for the network stability and results in serious route oscillation with the failure of packet forwarding. Therefore, to support producer mobility in NDN, another symbol is required to serve as the locator, expressing the location information of contents carried by mobile producers. Consequently, there are three key problems to be solved.
(1) How to make involved consumers or intermediate routers be aware of the binding relationship between the content name and its locator?
(2) How to guide the Interest to the mobile producer and guarantee the requested Data sending back to related consumers? (3) How to improve the handover performance of mobile producers including the disruption delay, packet loss rate, and signaling overhead?
Among these problems, the first two are the fundamental for the producer mobility.

Consumer mobility
Despite that the consumer mobility is said inherently solved in NDN by the assistance of network caching and the re-issuing of an Interest after the handovers, there are still some important problems remained to be solved. In NDN, the ratio between the cache capacity of each router and the total number of contents in networks is extremely small, which is estimated at an order of magnitude of 10 −5 [23]. As a result, only a small proportion of contents with a very high request number can be cached at intermediate routers. However, for unpopular contents that cannot be cached, mobile consumers have to request data from remote servers when they move, suffering from a long handover latency. Besides, re-issuing the Interest for unpopular contents produces many onetimer requests, degrading the performance of caching policy, especially when the combination of LCE and LRU is adopted in cache routers. In addition, since there is no prune mechanism [24] for the Interest, requested contents are still forwarded to previous attachment points of mobile consumers, indispensably consuming the bandwidth of involved on-path routers.
Besides, there are still many contents that should not be cached, for the sake of privacy and un-necessity. Some examples are private file sharing, Voice over NDN, live videos, and online games. For these contents, re-issuing the Interest is the only but evidently insufficient choice to support the consumer mobility, since these contents always have some requirements on the delay and reliability. A more challenging problem happens when the mobile consumer is a kind of high-speed vehicle. Without the help of caching or a nearby relay server, re-issuing the Interest cannot guarantee quality of the service and causes a great amount of needless retransmissions with corresponding data sending back. Thus, to improve the handover performance, locating mobile consumers is indispensable and the separation of the consumer identifier and locator is necessary as well.
Therefore, two key problems should be further considered for the consumer mobility.
(1) How to locate the mobile consumers? (2) How to lower the handover delay and/or packet losses to reduce the negative effects caused by the handover?

NDN mobility support schemes
In this section, we present existing NDN mobility support schemes according to their features, regardless of the mobile producers and consumers. Based on the degree of separation of the identifier and locator, the current schemes can be broadly divided into two, namely the Partial Separation (PS) and Total Separation (TS). In PS, like MIP and PMIP, there is a gateway on behalf of the mobile producer or consumer sending and receiving packets. Thus, the separation takes effect only on the delivery path between the gateway and the mobile host. On the contrary, in TS, there is a distributed system responsible for recording the binding relationship between the identifier and locator. As a result, to find a content or host, a request will be sent to the system querying for the locator at first. Then, with both the identifier and locator contained, related Interests can be directed to the corresponding destination following the shortest path.
Note that if the host name is seen as a kind of content name, there is no difference between locating contents and orientating mobile hosts, either producers or consumers. Thus, the consumer mobility issue can be totally addressed by the producer mobility solutions, though with some minor modifications. Besides, since the majority of works for NDN mobility support focus on the producer mobility, the schemes mentioned in the next subsections are for the mobile producers, unless otherwise specified.
In the following, we firstly show the PS and TS fundamental principles, then highlight the specific characteristics of related schemes in each category.

Partial separation 4.1.1 The fundamental principle
The fundamental principle of PS-based schemes is shown in Fig. 2. A gateway is served as the mobility anchor for some mobile host (MH), by advertising the content/host name of MH into the network. When attaching at the gateway, MH is as the same as a fixed node sending and receiving the Interest and Data. However, when moving to another attachment point, MH will send a binding update to the gateway which contains a locator assigned by the access router (AR). Then, the gateway keeps track of this binding relationship between the content/host name and locator locally. When a corresponding host (CH) subscribes a content of MH or issues a session with MH, it will send an Interest containing the content/host name. Then, the Interest is transmitted to the gateway by the related FIB entry. After attaching the locator in the Interest, the gateway transmits it to MH, and on-path routers forward the Interest based on the locator instead of the content/host name. Note that for routers, the locator has a higher priority than the content/host name in terms of routing. Finally, the Data will be returned to CN through the gateway according to the related PIT entry.
Likewise, when MH acts as a consumer and tries to lower packet loss of the returned Data, it can use the gateway as a proxy server helping it cache the content in case of its handover. In this situation, MH has to register its locator assigned by AR to its gateway. When requesting some content, MH sends out a special Interest with its host identifier attached as the locator. Consequently, the Interest can be sent to its gateway at first. Then, after removing the locator, the gateway forwards the Interest as usual. At the same time, the gateway caches the binding relationship between the requested content name and the host identifier locally, so that when the Data is back, the gateway can return it to related MH using a latest locator, if a new binding update is received.
Locator based: These works [25][26][27][28][29][30] are similar in the mechanism of mobility support, just as the PS fundamental principle depicted. However, in [25], the locator is separated from the content name and inserts in the Interest as a new field, while in [26][27][28][29][30], the locator acts like a tunnel header of the Interest or a new added prefix of the content name. Besides, in [25], the producer can also piggy-back the binding relationship between the content name and locator together with Datas to consumers. In this way, the subsequent Interests will be sent to the producer directly without the gateway involved. In the paper [29], the locator of the consumers is directly attached in the Interest, and consequently, when the mobile producer handovers, it can update the new locator to all its consumers. In the work [30], by checking PIT, the Interest for the binding update can determine whether the on-path router between the gateway and the mobile producer is on the content delivery path. If yes, this Interest is terminated at such a router instead of the gateway. The works [31][32][33] divide NDN into multiple domains to share the burden of gateways. In terms of intra-domain handover, there is not much difference among others mentioned above. As for the inter-domain, the gateway of the new network domain reports its locator to the previous gateway to gain Interests sent to the previous gateway, and then, related Datas are returned to consumers through these two gateways.
FIB/PIT based: These papers [30,[34][35][36][37][38] adopt a temporary FIB to absorb Interests sent by consumers arriving at the gateway. Specifically, when the mobile host leaves its gateway, it sends a spacial Interest containing its own content name so that this Interest can finally be forwarded to the gateway. Then, routers receiving this kind of Interest create a corresponding FIB entry and assign it with a lifetime. This FIB entry records the content name and incoming interface of this Interest. In this way, Interests which are issued by consumers and reach these routers can be transmitted to the host without passing by the gateway. Besides, in the work [37], the mobile host also issues another special Interest to the previous access router other than the gateway to achieve a handover performance. On the contrary, Kite [38] uses PIT to guide Interests from the gateway to the mobile host instead of FIB. To achieve this, it creates two new kinds of Interests, the traced and the tracing. After the handover, the mobile host sends a traced Interest to the gateway or the corresponding host. Instead of returning a Data, the gateway or the corresponding host replies a tracing Interest. Like a Data, the tracing Interest follows the breadcrumb left by the traced Interest to the mobile host and, at the same time, leaves a new breadcrumb for the Data that the host will send back.
Dual-routing plane based: MobiCCN [39] has two unique characteristics: allocating mobile hosts to gateways in a distributed manner like Chord [40] and forwarding packets by the greedy routing protocol. Firstly, each router in MobiCCN is associated with a vc (virtual coordinate) from a hyperbolic space as a locator, and the vc is regarded as the destination address if inserted in the content name of the Interest. By contrast, every user has a unique identifier which can be hashed into the same hyperbolic space of routers. Thus, the closest router to the hash output of the host identifier in terms of the hyperbolic space is selected as the gateway of that host, and this router will help the host manage the mobility and relay the packets. Secondly, routers only maintain their neighbors' vcs to calculate routes for mobile hosts, alleviating the scalability problem. Likewise, when moving to another attachment point, the host will issue a message to its gateway reporting the new locator, and the en-route router will insert a related FIB entry based on the vc and incoming interface.
Proactive handover based: These schemes [41][42][43][44] are on the assumption that the mobile host will issue a handover notification before moving. When receiving this notification, the current access router will communicate with the next access router where the host is going to access, and help the mobile host finish the handover procedure in advance. When this handover procedure is over, the current access router will notify the host, and the host can move to the new location seamlessly. In the paper [41], when the mobile host prepares to leave and issues a notification, the current access router will send a packet to related consumers containing the locator of the current and next access router of the mobile host. Then, another two packets, as replies, are sent by access routers of consumers to the current and next access router of the mobile host. Once the current access router of the mobile host receives the packet, which means the handover procedure is finished, it will tell the host to perform the handover.
In the paper [42,43], the previous access router will cache incoming Interests once the mobile host is moving. When attaching to the new access router, the mobile host will issue an Interest containing locators of both its pervious and new access router to the previous access router. Then, the previous router sends related cached Interests to the mobile host based on the locator of the new access router. Finally, the mobile host returns the corresponding Datas by the new and previous access router. The work [44] focuses on the fast handover of both mobile consumers and producers. Before handovers, the previous access router sends a control packet to the next access router, carrying the identification of the next access router and the content name. This control packet will be terminated at the next access router or the on-path router located at the intersection between the control packet path and content delivery path. Then, for the consumer, the related PIT should be modified to guide Datas back to the next access router, while for the producer, the corresponding FIB is revised to direct Interests to the next access router.

Total separation 4.2.1 The fundamental principle
The fundamental principle of TS-based schemes is shown in Fig. 3. Instead of a gateway that couples both the control and data plane, a mapping system or rendezvous server is introduced in TS-based schemes to only keep track of the binding relationship between the content/host name and its locator. When MH attaches to a new network each

The corresponding schemes
The TS-based schemes [45][46][47][48][49][50][51][52] share the similar ideas and separate the control and data plane by a mapping system like today's Domain Name System (DNS), which only records the binding relationship between the content/host name and its corresponding locator. However, they are different in how to construct the mapping system. Single domain based: The papers [45][46][47][48][49] consider the whole network as a single domain. In the papers [45,46], DNS is in charge of recording the relationship between the content/host name and the locator. After querying to DNS, consumers send out Interests attaching with the locators of the destinations. The work [46] also evaluates the mobility performance of different types of contents and concludes some findings, for example, popular contents gain remarkable benefits from NDN architecture and re-expressing Interest makes little sense for producer mobility. These verify what we present in Section 3. Besides, the work [47] uses a Chord-based distributed hash table system as the mapping system instead of DNS, for the sake of robustness and scalability, and the mapping system will notify the MH's mobility to its previous access router. In addition, Liu et al. and Ren et al. [48,49] solve the host mobility based on Software-Defined Networking and use the controller as the mapping system keeping track of the binding relationship between content/host name and its related locator. Besides, the controller distributes new forwarding rules to guarantee MH's reachability after the handover.
Multiple domain based: To reduce the overhead of mobility signallings, the works [50][51][52] divide the network into many domains. In these papers, there are multiple edge routers responsible for the data plane and a rendezvous server recording the binding relationship in each network domain. Similar as the PS-based scheme, every MH has its own home gateway, and the corresponding network domain is considered as the MH's home domain. When MH leaves its home network domain, the access router of the new network domain will help MH register the new binding relationship to the rendezvous server. After caching the binding relationship locally, the rendezvous server allocates an edge router to MH to take charge of MH's packet forwarding in the new network domain and notifies the corresponding edge router the locator of MH, so that Interests destined to MH can be forwarded to MH by the edge router. Meanwhile, the rendezvous server reports the locator of the edge router allocated to MH to the MH's home gateway. In this way, Interests sent by consumers will be firstly directed to the home gateway, then to the edge router allocated to MH and finally to MH. When MH moves within the network domain, it is enough to update the binding relationship to the local rendezvous server. Table 1 shows the summary and comparison of existing schemes, where P and C denote the producer and consumer, respectively. Besides, triangle means the Interest and Data are forwarded via the gateway while optimal implies the Interest and Data are transmitted following the shortest path.

Comparison and discussion
The key problem for content/host mobility is to find its new location after MH's handover and it is inevitably required to select an entity to keep track of the binding relationship between the host/content name and its locator dynamically. The essential difference behind the PS-based and TS-based schemes lies in whether the data plane is offloaded from this entity, and it is hard to judge which one is better without considering the application scenarios. PS-based schemes suffer from the triangle routing and the problem of single-point failure, resulting in long content delivery delay and much more bandwidth consuming. However, PS-based schemes have a stable gateway which can be enhanced with large cache capacity temporarily storing contents published by producers or subscribed by consumers. This feature will play a critical role for the handover performance improvement when MH is a kind of high-speed moving vehicle. On the contrary, TS-based schemes have an optimal delivery path on the cost of querying the mapping system, which increases latency delay. TS-based schemes are more suitable for moving objects with low speed. In addition, although the access router can store the binding relationship locally to avoid the query process, how to guarantee its freshness is another important issue.

Conclusions
In this paper, we investigate most of the existing papers aimed at NDN mobility support. At first, we identify a series of challenges to be solved for mobility support in NDN. Then, by analyzing the existing schemes, we abstract them into two basic fundamental principles and illustrate how they support the content/host mobility. Thirdly, based on the unique characteristics of these schemes, we further divide them into many classifications with details and comparisons. Finally, we discuss both advantages and disadvantages of PS-based and TS-based schemes, and how to choose or combine between them depends on the the application scenarios.