In this paper, we consider a network that uses a routing-by-name architecture, i.e. content requests are routed on the base of the content name by using a name-based routing table. We focus on the scenario of fetching Web contents, assuming to use ICN in place of traditional TCP/IP means. In this scenario we need to handle tens of billions of name-based routes, due to the high numbers of Web contents and to the limited aggregability of their names. Consequently, re-using the existing architecture of an IP router would result in two severe problems. First, the current Forwarding Information Base (FIB) technology is unable to contain all name-based routes. Second, implementing a so large Routing Information Base (RIB) requires a very costly hardware. In order to overcome these problems, we propose a routing-by-name architecture, named Lookup-and-Cache, where the FIB is used as a cache of routes, while the RIB is stored in a remote and centralized routing engine. By analyzing real Internet traces, we prove the effectiveness of the proposed architecture, which we also show to be feasible with current technology. In fact, our ICN nodes require to have only a limited set of routes in their FIB, even when supporting a high number of traffic flows.
We have implemented our proposed Lookup-and-Cache solution within the CCNx software framework and we used this implementation to assess system performance, such as download delay, lookup rate and fairness.
The paper is completed with a discussion on how ICN can be used not only to fetch Web contents but also for other scenarios.