Architecture and implementation of an information-centric ... · adopts an information-centric...

9
Architecture and Implementation of An Information-Centric Device-to-Device Network Yu Wu, Matthew Barnard and Lei Ying Electrical, Computer and Energy Engineering Arizona State University ABSTRACT Today’s mobile devices almost exclusively connect to infras- tructures for communications and information access; but advances such as AirDrop and WiFi Direct are bringing device- to-device communication to the forefront of mobile comput- ing. Self-organizing ad hoc mobile networks have a wide range of applications in scenarios where infrastructure is not available or with limited bandwidth, such as communica- tions in the aftermath of natural disasters, censorship re- sistant communications, and battlefield communications. In this paper, we propose an information-centric device-to-device network, called ICD2D. The network is distributed and re- quires no centralized coordination. For each published item of data, the system creates a metatdata; a publish-subscribe mechanism disseminates the metadata and facilitates filter- ing information in a distributed fashion. We implemented a full-featured system on NS3. Evaluations show significant improvement in successful information retrieval compared with OLSR (Optimized Link State Routing), a common ap- proach to ad hoc routing. 1. INTRODUCTION Mobile devices such as wearable tech, smart phones, and tablets have penetrated almost every aspect of our daily lives, becoming extensions of ourselves. Today’s mobile devices mainly connect to infrastructure (such as cellular base stations and WiFi access points) for communications and information access; but device-to- device communication technologies, such as AirDrop, WiFi ad hoc, and WiFi Direct, are making the mobile ad hoc network a reality. Given the popularity of mobile devices and device-to- device communication technologies, the application of a self-organizing ad hoc mobile network is clear. Though the infrastructure network will surely remain dominant, device-to-device mobile networks will fill the gaps where high deployment and administrative costs or impracti- cality have traditionally kept networks sparse. We next list a few such applications. Communications for disaster recovery: Natu- ral diasters or attacks of weapons of mass destruction can cause catastrophic failure of network infrastruc- ture, but are less likely to destroy hand-held devices. Automatically discovering and networking mobile de- vices in an area can make life-saving information (e.g. water, food, or power sources) available for connected survivors. Censorship resistant communications: During the Arab Spring Egypt, Libya, and Syria each shut down Internet access for an extended period in order to block information about protests and communi- cations among protesters. A self-organizing mobile network can provide an alternative communication network during these interruptions and is resistant to government censorship. Battlefield communications: In battlefield com- munications, in particular in hostile environments, limited bandwidth is available via infrastructure-based communications such as satellites. A self-organizing network formed by soldiers’ mobile devices can be used for coordination in the battlefield. In the scenarios above, it is impossible to plan ahead and deploy communication infrastructure a priori. How- ever, timely information sharing and access are imper- ative in these live-or-death scenarios. Motivated by the applications above, we propose an information-centric paradigm for self-organizing device-to-device networks. The main contributions of this paper include: In the applications mentioned above, the primary pur- pose of networking is information sharing, instead of end-to-end communications. Therefore, our system adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its neighbors on metadata of available contents in the network. This architecture eliminates the need to maintain end-to-end routes, a benefit we gain over most existing mobile ad hoc networks. The network architecture is completely distributed and requires no centralized coordination. In our sys- tem, each item of content is associated with a piece of metadata created by the publisher. Users subscribe 978-1-5090-1824-6/15/$31.00 ©2015 IEEE 763 Fifty-third Annual Allerton Conference Allerton House, UIUC, Illinois, USA September 29 - October 2, 2015

Transcript of Architecture and implementation of an information-centric ... · adopts an information-centric...

Page 1: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

Architecture and Implementation of An Information-Centric

Device-to-Device Network

Yu Wu, Matthew Barnard and Lei Ying

Electrical, Computer and Energy Engineering

Arizona State University

ABSTRACTToday’s mobile devices almost exclusively connect to infras-tructures for communications and information access; butadvances such as AirDrop and WiFi Direct are bringing device-to-device communication to the forefront of mobile comput-ing. Self-organizing ad hoc mobile networks have a widerange of applications in scenarios where infrastructure is notavailable or with limited bandwidth, such as communica-tions in the aftermath of natural disasters, censorship re-sistant communications, and battlefield communications. Inthis paper, we propose an information-centric device-to-devicenetwork, called ICD2D. The network is distributed and re-quires no centralized coordination. For each published itemof data, the system creates a metatdata; a publish-subscribemechanism disseminates the metadata and facilitates filter-ing information in a distributed fashion. We implemented afull-featured system on NS3. Evaluations show significantimprovement in successful information retrieval comparedwith OLSR (Optimized Link State Routing), a common ap-proach to ad hoc routing.

1. INTRODUCTIONMobile devices such as wearable tech, smart phones,

and tablets have penetrated almost every aspect of ourdaily lives, becoming extensions of ourselves. Today’smobile devices mainly connect to infrastructure (suchas cellular base stations and WiFi access points) forcommunications and information access; but device-to-device communication technologies, such as AirDrop,WiFi ad hoc, and WiFi Direct, are making the mobilead hoc network a reality.

Given the popularity of mobile devices and device-to-device communication technologies, the application of aself-organizing ad hoc mobile network is clear. Thoughthe infrastructure network will surely remain dominant,device-to-device mobile networks will fill the gaps wherehigh deployment and administrative costs or impracti-cality have traditionally kept networks sparse. We nextlist a few such applications.

• Communications for disaster recovery: Natu-ral diasters or attacks of weapons of mass destructioncan cause catastrophic failure of network infrastruc-

ture, but are less likely to destroy hand-held devices.Automatically discovering and networking mobile de-vices in an area can make life-saving information (e.g.water, food, or power sources) available for connectedsurvivors.

• Censorship resistant communications: Duringthe Arab Spring Egypt, Libya, and Syria each shutdown Internet access for an extended period in orderto block information about protests and communi-cations among protesters. A self-organizing mobilenetwork can provide an alternative communicationnetwork during these interruptions and is resistant togovernment censorship.

• Battlefield communications: In battlefield com-munications, in particular in hostile environments,limited bandwidth is available via infrastructure-basedcommunications such as satellites. A self-organizingnetwork formed by soldiers’ mobile devices can beused for coordination in the battlefield.

In the scenarios above, it is impossible to plan aheadand deploy communication infrastructure a priori. How-ever, timely information sharing and access are imper-ative in these live-or-death scenarios. Motivated by theapplications above, we propose an information-centricparadigm for self-organizing device-to-device networks.The main contributions of this paper include:

• In the applications mentioned above, the primary pur-pose of networking is information sharing, instead ofend-to-end communications. Therefore, our systemadopts an information-centric network architecture,in which each mobile device periodically synchronizeswith its neighbors on metadata of available contentsin the network. This architecture eliminates the needto maintain end-to-end routes, a benefit we gain overmost existing mobile ad hoc networks.

• The network architecture is completely distributedand requires no centralized coordination. In our sys-tem, each item of content is associated with a piece ofmetadata created by the publisher. Users subscribe

978-1-5090-1824-6/15/$31.00 ©2015 IEEE 763

Fifty-third Annual Allerton ConferenceAllerton House, UIUC, Illinois, USASeptember 29 - October 2, 2015

Page 2: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

to metadata filters that automatically select match-ing metadata from the network, allowing decisions oncontent retrieval to be made manually or automati-cally. This publish-subscribe paradigm for metadatafacilitates distributed information search and is par-ticularly suitable for spontaneous events where newcontents are continuously added into the network.From this perspective, our system is also di↵erentfrom most existing information-centric network archi-tectures where a centralized name server is requiredfor content management.

• We designed and implemented a full-featured systemon NS3. Our experimental evaluation confirms thenovelty of our design and shows significant improve-ment on fulfilling information requests compared withOLSR.

1.1 Related WorkThe concept of information-centric network (or content-

centric network) is not new. Starting from the seminalwork [1], information-centric networking has emerged asone of research areas that may revolutionize the futureInternet. A range of problems have been studied, in-cluding naming [2, 3, 4], routing [5, 6, 7, 8], in-networkcaching [9, 10, 11, 12, 13, 4, 14], etc. However, these so-lutions are almost exclusively tailored for the wired In-ternet (at best, they include mobile phones at the edge)and assume the existence of centralized naming serverand content store. Fundamentally di↵erent problemsneed to be tackled for a high-performance information-centric D2D network due to node mobility and wire-less communications. There have been a series of workstudying the congestion control in content centric net-work. For example, Saino et al. [15] propose a receiver-driven congestion control mechanism by predicting thelocation of content chunks before requesting. Arian-far et al. [16] introduce a preliminary protocol basedon classic TCP congestion window which however re-lies on data packets to explicitly enforce the size ad-justment of congestion windows. Our work di↵ers fromtheirs by considering the end to end latencies of datablock transmission to dynamically throttle the requestrate. Facilitated by an e�cient joint optimization basedscheduling algorithm, our system can achieve satisfiablecontent fulfilment ratio, as verified in Sec. 4.

2. OVERVIEW OF THE SYSTEMIn this section, we present an overview of the system,

including data structure, message structure and threekey user operations. The system, as shown in Figure 1,adopts an information-centric architecture and consistsof three layers.

• Information layer: This layer is dedicated tothe management of local (locally generated or re-

Figure 1: The three layers of an information-centric D2D network

ceived) information contents. It handles function-alities such as publishing, ranking, caching andcontent forwarding.

• Scheduling layer: This layer is the communica-tion foundation of the system that schedules datatransmissions based on the type, freshness, andpopularity of a content and based on the state ofthe network.

• Networking layer: This layer is responsible forneighbor discovery and network formation, i.e., main-taining the connectivity of the network.

2.1 Data StructureThe system includes four types of data as described

below.

• Published data: These are raw data that are gen-erated by end users and will be requested by otherusers in the system.

• Data blocks: A published data is fragmented into aset of data blocks. Each data block contains the nameof the corresponding published data and a sequencenumber that is the position of the block and is neededfor resembling the published data. The ID of a datablock is the hash value of the data block.

• Metadata: During fragmentation, a metadata is cre-ated for each content. A metadata includes the name,the name of data blocks, the GPS location when pub-lished, a set of associated hashtags and a human read-able field describing the other important informationof the content. The hash value of the content is alsoused as the ID of the metadata.

• Hashtags: Hashtags are keywords that are used forgrouping or filtering metadata. Hashtags can be cre-

764

Page 3: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

ated when a user publish contents or when a userrequests contents.

2.2 Message Structure and ProcessingIn this paper, we use “messages” to refer to data

packets that are broadcast in the network. Note thatexcept the data-block messages, other messages can begrouped into a single packet as the sizes of these mes-sages are small.

• Beacons: A beacon message includes node ID, whichis the hash value of the node’s MAC address, and theGPS location of the node. A mobile device periodi-cally broadcasts beacon messages to let the neighborsbe aware of its existence.

• Interests: An interest message is a list of (hashtag,TTL) pairs, where TTL stands for time-to-live whichis the remaining number of broadcasts allowed for thehashtag. Each mobile device maintains a pending in-terest table. When receiving an interest message, if ahashtag is not in the pending interest table and theTTL is � 1, the (hashtag, TTL) pair will be added tothe table; otherwise, if the TTL in the interest mes-sage is larger than the TTL (for the same hashtag) inthe table, then the TTL in the table gets updated. Atthe beginning of every interest-broadcasting interval,a mobile device reduces all TTLs in the pending in-terest table by one and then broadcasts the pendinginterest table (as one interest message).

• Catalogs: A catalog message is a list of (metadata,TTL) pairs where the metadata are all associatedwith a specific hashtag, and the TTL (time-to-live)in the category message is the amount of time beforewhich the metadata will be removed from the mo-bile device. Each mobile maintains a catalog library.When receiving a catalog message, if the hashtag as-sociated with the catalog message is in the node’s pend-ing interest table, then catalog is merged into thecatalog library by adding new (metadata, TTL)s tothe corresponding catalogs and updating those (meta-data, TTL) pairs if the TTL in the catalog message islarger than that in the library. The catalog library isrefreshed periodically by removing those (metadata,TTL) pairs with TTL 0. The TTL in the (meta-data, TTL) pair is set initially by the mobile devicewho creates the metadata, and is reset when the datablock associated with the metadata is requested to beretrieved. In this way, metadata of popular contentswill be kept in the system and metadata of unpopu-lar contents will be removed from the system avoidingcongesting the network.

• Requests: A request message consists of data blockID, weight, the content location and TTL. Each mo-bile device maintains a pending request table. When

receiving a request message, a mobile device adds(data block ID, weight, TTL) triple to the pendingrequest table if the data block ID does not exist or up-dates the TTL if the the data block ID exists but theTTL in the table is smaller than that in the requestmessage. During each scheduling interval, the mobiledevice broadcasts all or a subset of data blocks thatare in the pending request table. When a data blockis successfully broadcast or the associated TTL be-comes zero, the corresponding entry is removed fromthe pending request table. The weight field in therequest message indicates the importance of the datablock for retrieving the content. For example, in avideo file, I-frames are more important than otherframes for reconstructing the video.

• Data blocks: A data-block message includes a datablock. A mobile device broadcasts a data-block mes-sage when it receives a data block that is in its pend-ing request table or receives a request message for adata block that is in its cache, directed by the jointscheduling algorithm introduced in Sec. 3.2.

2.3 Key User OperationsFrom the perspective of end users, the system sup-

ports three primitive operations: publish, subscribe andretrieve.

• Publish: To publish a content, the content is firstfragmented into data-blocks 1, and a metadata is cre-ated for the new content. Each metadata is assignedwith a set of hashtags by the user , and is added tothe corresponding catalog.

• Subscribe: Since published data are generated inthe network in real time, users do not have priorknowledge of available contents. To search interestingcontents in the network, a user periodically broad-casts “interest” messages to their neighbors. As de-scribed in Section 2.2, these interest messages will bedisseminated in the network and the mobile user isexpected to receive all catalogs associated with thehashtags in the interest message. Metadata receivedwill be further filtered according to local rules definedby the mobile user, ranked according to a ranking al-gorithm that takes into consideration the popularityof contents and other factors, and then sent to userinterface for display.

• Retrieve: From the ranked metadata, a mobile usercan select one or multiple contents to retrieve by send-ing out request messages. As described in Section 2.2,when a node receives a request and finds the corre-sponding data block, it will potentially broadcast the

1The block does not have to be equal-sized, but maximal size

should not exceed the Maximal Transmission Unit (MTU)

on the MAC layer.

765

Page 4: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

data block, depending on the scheduling result to beintroduced in Section 3.2; otherwise, it will broadcastthe request message to its neighbors.

3. INFORMATION-CENTRIC CONGESTIONCONTROL AND SCHEDULING

Due to space constraint, we only present the designof two key components of ICD2D: information-centriccongestion control and information-centric scheduling.

3.1 Congestion ControlIn ICD2D, the tra�c load in the network is deter-

mined by multiple factors including users’ request rates,content sizes and content locations, so the design ismuch more complex than in traditional communicationnetworks. To develop a tractable solution, we considera simple model as shown in Figure 2.

user

1-hop cache

2-hop cache

3-hop cache

Figure 2: A simple model for information-centric congestion control

Let xr

denote the request rate of user r and p

r,h

theprobability that the content requested by user r is h-hopaway. Then we consider the following utility maximiza-tion problem:

max{xr}P

r

U

r

(xr

)

subject to:P

r

x

r

p

r,h

c

h

8h,

where U

r

(·) is the utility function of user r and c

h

de-notes the capacity of the network for retrieving one-hopcontents. We remark that the network capacity of re-trieving h-hop contents is c

h

. A more accurate model isto consider a network capacity region C and constraintc = (c1, c2, . . .)t 2 C, where the capacity region is de-termined by the PHY layer and scheduling algorithms,and could be di�cult to characterize. We therefore onlyconsider the simple model above and will study a morepractical model in an extended version of the paper.

Now to solve the network utility maximization prob-lem above, we consider the following Lagrangian dual

maxxr

Pr

U

r

(xr

) +P

h

h

(ch

�P

r

x

r

p

r,h

)

= maxxr

Pr

(Ur

(xr

)� x

r

Ph

h

p

r,h

) +P

h

h

c

h

,

where �

h

is the Lagrangian multiplier associated withhop constraint h. Since

Ph

h

c

h

is a constant when �

0h

sare given, the congestion algorithm should maximize

U

r

(xr

)� x

r

X

h

h

p

r,h

. (1)

In the Internet congestion control literature, it is well-known that the Lagrangian multiplier �

h

can be mea-sured using latency. Therefore,

Ph

h

p

r,h

can be ap-proximated using the average latency experienced byuser r.As an example, assume U

r

(xr

) = w

r

log xr

, then theoptimal solution to (1) is

x

r

=w

rPh

h

p

r,h

.

An adaptive control algorithm is

x

r

= w

r

� x

r

X

h

h

p

r,h

.

A key design consideration is the method to estimatethe average latency. We will study this in the perfor-mance evaluation using NS3.

3.2 Information-Centric SchedulingThis module is the “brain” of the system and sched-

ules all network activities of the corresponding mobiledevice. Specifically, this module makes the followingdecisions, aiming at maximizing utility for network wel-fare: how to e�ciently (1) e�ciently transmit/forwardmessages, (2) utilize the limited cache and (3) broadcastthe data blocks. We answer these questions through ajoint optimization framework.We assume a limited amount of system RAM is re-

served for the “cache” usage. The cached blocks shouldbe broadcast to the neighborhood, subject to the band-width capacity capped by the link capacity and tran-sient network condition. We therefore jointly considerthe caching and forwarding problems. We define Nto be the set of neighboring nodes. We assume eachcontent is fragmented to data blocks of equal size asin most real-life applications, and each data block canbe transmitted within one scheduling interval (e.g., 100ms. Let C denote the set of data blocks received by timeslot t, including newly received data blocks and those inthe cache, w

i,c

denote the weight of neighbor node i forblock c, t

c

denote the TTL, yc,t

denote whether the nodecaches content c at time t, S and B denote the storagecapacity and link capacity, respectively. The problemis formulated into an optimization problem shown inEqn. 2.

maxX

c2C

X

j2Nw

j,c

⇥ (yc,0 � y

c,tj,c+1) (2)

subject to:

(a)Pc2C

y

c,t

S, 8t0 t maxj2N

t

j,c

+ 1

(b)Pc2C

(yc,t

� y

c,t+1) B 8t0 t maxj2N

t

j,c

(c) y

c,t

� y

c,t+1, 8c 2 C, t0 t maxj2N

t

j,c

766

Page 5: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

The objective function maximizes the overall weightcontributed by the considered node by caching and broad-casting data block at scheduling interval t0, and anycached data block needs to be broadcast before theirTTLs expire. Constraint (a) is the storage capacity con-straint, (b) is the bandwidth constraint, and constraint(c) implies that any data block can only be cached inthe scheduling interval at which it is received, and beremoved before broadcasting.

We can see the problem (2) is a linear integer prob-lem, which is NP-complete (The proof is by a reduc-tion from the satisfiability problem [17]). However, theproblem size is limited because the scheduling processoccurs at a rather short interval (i.e., 100 ms). Dur-ing one interval, the number of received data blocks islimited, even under heavy tra�c regime.

The solution of the optimization problem results inboth caching and broadcasting such that:

y

c,0 = 0 ! unfreeze block c

y

c,0 = 1 ! freeze block c

y

c,0 = 1, t

⇤ = argmin

t

{yc,t

= 0} ! broadcast

block c at time t

⇤ � 1.It is worthy pointing out that the the joint optimiza-

tion framework supports preemptive scheduling. Newly-arrived requests with higher weights may cancel thealready-scheduled frozen data blocks. We leave the per-formance analysis of this scheduling algorithm to theextended version of the paper.

4. PERFORMANCE EVALUATIONS ON NS3We implemented a full-featured system on NS3 with

key functionalities at all three layers. We mimicked abattlefield communication scenario with 100 soldiers ina 1.5⇥ 1.5km2 area of open space. Each soldier movesat a speed of 2 meters per second and is equipped witha WiFi-enabled wearable sensing device supporting 1Mbps data rate. We assume 20 out of the 100 soldierscontinuously collect data at an average rate of 128 kbpsand publish to the system. Di↵erent unique hashtagsare attached to contents generated by those patrollingdevices, so a soldier can switch to a channel by explicitlysubmitting the “interest” message to the correspondinghashtag. Each solder is allowed to switch to a channelto request a content per second. For each request, theTTL is randomly chosen from 400 ms to 30, 000 ms,and the weight is randomly selected from [0.1, 1]. Bydefault, the cache size is 256K bytes, realistic for theconfiguration of general sensor devices. The block sizeis chosen to be 1 K byte.

We conducted our evaluations on our NS3 by simulat-ing 802.11b WiFi interfaces and configured each deviceto the ad-hoc mode. We applied the the constant speeddelay model and the friis propagation loss model [18]for wireless channels, and some key settings are shownin Table 1.

Table 1: Parameter configuration on NS3

Parameter Value

TxPower 0.1TxGain 1.0RxGain 1.0RSS -86 dBm

phyMode DsssRate1Mbpspropagation loss model Friis

We consider two representative mobility model, i.e.,Random Waypoint (RW) and Reference Point Group(RPG). In RW model, a node randomly chooses a des-tination and moves with a random velocity between[0, V

max

] for a certain duration of time. The wholeprocess repeats until the the simulation ends. RW iswidely used in research community, as a su�cientlygeneric model covering most cases. In RPG model, agroup leader determines the group’s motion behavior,while the other nodes randomly move in the neighbor-hood of the group leader, with both direction and ve-locity correlating to those of the group leader. Specifi-cally, V

m

(t) = V

l

(t) + rand() ⇥ SDR ⇥ V

max

, ✓m

(t) =✓

l

(t) + rand() ⇥ ADR ⇥ ✓

max

. V

m

(t) and ✓

m

(t) repre-sent the speed and direction of node m, while SDR andADR indicate the speed and direction deviation ratioagainst the leader l , respectively. Our simulation re-sults were under RW mobility model, unless otherwiseexplicitly specified.We ran the system for 600 seconds, and evaluated

scheduling complexity, network latency, content fulfil-ment rate and user utility under di↵erent parameterconfigurations, e.g., cache size, di↵erent algorithms.

4.1 Scheduling Complexity and EffectivenessWe examined the computational complexity of our

scheduling algorithm, in terms of the amount of timeused to solve the optimization problem (Eqn. 2), re-ferred as scheduling complexity. The scheduling deci-sion was made every 100 milliseconds in our system.Scheduling complexity should be less than the schedul-ing interval of the system, i.e., 100 milliseconds.Fig. 3 shows the scheduling complexity of a randomly

chosen device over a duration of 200 seconds (the schedul-ing complexity of other devices is similar). We can seethat the maximal time is smaller than 6 milliseconds,much smaller than 100 milliseconds. This result demon-strates the feasibility of our proposed scheduling algo-rithm for larger scale problem. We further varied cachesize from 64K bytes to 1024K bytes and found the in-crease of the scheduling complexity is minor. The aver-age scheduling delays are shown in Fig. 4. Therefore, itis promising that our system could be used in real-timescenarios where short scheduling intervals.

767

Page 6: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

2

4

6

8

0 100 200

sch

ed

ulin

g d

ela

y (m

s)

time (seconds)

Figure 3: Scheduling complexity over time

1

2

3

4

������

schedulin

g d

ela

y (m

s)

64KB128KB256KB512KB

1024KB

Figure 4: Scheduling complexity over time

To further evaluate the e↵ectiveness of the schedul-ing algorithm based on the optimization framework, werandomly selected a user, and plotted the utility valueover time as shown in Fig. 5. The red curve is the to-tal utility of the broadcast data-blocks under the pro-posed scheduling algorithm based on the optimizationframework (Eqn. 2), and the green curve is the totalutility based on a best-e↵ort scheduling which operatesin a first-come-first-served (FCFS) manner, adopted bygeneral ICN systems. We can see that our design yieldssignificantly higher utility. The time-average utility ofour design is 1.427 while that of the FIFO is 0.579.

4.2 Request Fulfilment Ratio and LatencyWe define “fulfilment ratio” as the fraction of con-

tent requests that are successfully retrieved before theirdeadlines (i.e., before the TTL specified in the corre-sponding request). We first vary the cache size from

0

0.5

1

1.5

2

2.5

3

3.5

4

0 300 600

util

ity

time (seconds)

joint optimizationfifo

Figure 5: Utility contributed to the network bya user over time

64K bytes to 1024K bytes, as shown in Fig. 7. Wecan see a larger cache size indeed yields better perfor-mance, as the opportunistic caching with a larger cacheincreases the chances of local hits. In our settings, weassigned higher popularity on fresh contents, and oldcontents fade out from the system as time goes on. As aresult, larger cache size only yields marginal rate growthafter the cache size becomes su�ciently large. For ex-ample, a 1024K byte sized cache yields 76.812% fulfil-ment rate, as compared to 75.58% for a 512K byte sizedcache.We also compared the performance of our algorithm

with and without congestion control, and further com-pared them with the routing-based solution, the Opti-mized Link State Routing Protocol (OLSR), by peri-odically computing the optimal paths at each device.“ICD2D-congest” refers to our algorithm with conges-tion control, “ICD2D-non-congest” refers to our algo-rithm without congestion control, and “olsr-congest”represents the classic OLSR algorithm. Fig. 8 plotsthe fulfilment ratio achieved by these three algorithms.We can see that, “ICD2D-congest” significantly outper-forms “ICD2D-non-congest”. In fact, “ICD2D-congest”requests 34.89% less contents compared to “ICD2D-non-congest”, throttled by the the congestion controlmodule. However, 20.855% more contents are success-fully received before the deadlines as shown in Fig. 6.The phenomenon stresses the importance a well de-signed congestion control algorithm in such a distributedsystem.“olsr-congest” has the worst result, because of two

reasons: (1) the control tra�c triggered by the OLSRprotocol occupied a significant portion of the band-width, which causes more network contention; (2) thelack of opportunistic caching increases the number of

768

Page 7: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

hops (so the number of transmissions) for content re-trieval.

0

0.2

0.4

0.6

0.8

1

1.2

Request Rate Fulfillment Rate

# p

er

seco

nd

ICD2D-congestICD2D-non-congest

Figure 6: Comparison of request rate and fulfil-ment rate

50%

100%

������

perc

en

tage

64KB128KB256KB512KB

1024KB

Figure 7: Fulfilment ratio achieved with di↵er-ent cache sizes.

We further studied the retrieval latency with di↵er-ent cache sizes and algorithms. Since the latency will becontinuously gauged and fed into our congestion controlmodule (Sec. 3.1). We evaluate the average per-blocklatency, which is the time at which a content block isrequested by the congestion controller to the time atwhich the block is returned. Fig. 9 plots the cumula-tive distribution function (CDF) with di↵erent cachesizes. We can see larger cache size achieves smaller la-tency due to increased local hits. But the improvementbecomes marginal when the cache size reaches a cer-tain size. Fig. 10 plots the CDF of three di↵erent al-gorithms introduced in Sec. 4.2. “ICD2D-congest” and“ICD2D-non-congest”have much smaller latency com-pared to “olsr-congest” due to in-network caching. Theresults echo our observations in Sec.4.2.

4.3 Simulation under RPG model

50%

100%

������

perc

en

tage

���ICD2D-congest������ICD2D-non-congest���

���olsr-congest���

Figure 8: Fulfilment ratio achieved by di↵erentalgorithms.

50%

100%

0 5000 10000 15000 20000 25000 30000

perc

enta

ge

time (ms)

64KB128KB256KB512KB

1024KB

Figure 9: CDF of network latency with di↵erentcache sizes.

We finally reran the experiment under a RPG mobil-ity model, where SDR = ADR = 0.3. Similar resultswere witnessed as those under RW pattern. Under thesame tra�c pattern, the “fulfilment rate” increases to86.177% from 69.02%. We believe the reason is that sol-diers are tending to receive more meta data from othermembers in the same group, and therefore chances ofreceiving the contents are higher. We also consider theretrieval latency in this scenario, and the measured re-sult is 1219.46 ms, compared to 1319.5 ms under theRW model. The CDF of the network latency is shownin Fig. 11.

5. CONCLUSIONSIn this paper, we presented a novel design of an information-

centric mobile network based on device-to-device com-

769

Page 8: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

50%

100%

0 5000 10000 15000 20000 25000 30000

pe

rce

nta

ge

time (ms)

ICD2D-congestICD2D-non-congest

olsr-congest

Figure 10: CDF of network latency by di↵erentalgorithms.

50%

100%

0 5000 10000 15000 20000

perc

enta

ge

time (ms)

RPG modelRW model

Figure 11: CDF of network latency under RWand RPG model.

munications. The network is distributed and self-organizing.In the system, metadata are disseminated in the net-work using a publish-subscribe mechanism, which makesusers be aware of available contents that are generatedin the network in real time. Users can request the con-tents they are interested by sending request messagesand contents are retrieved using a protocol similar toreverse path forwarding. To improve network perfor-mance, we developed novel information-centric conges-tion control and scheduling algorithm to improve net-work performance. Implementation and evaluations onNS3 demonstrate the superiority of our design.

AcknowledgementThis work was supported in part by the National Sci-ence Foundation (NSF) under Grants ECCS-1547294,

CNS-1264012, and CNS-1262329 and the Defense ThreatReduction Agency (DTRA) under Grant HDTRA1-13-1- 0030.

6. REFERENCES[1] V. Jacobson, D. K. Smetters, J. D. Thornton,

M. F. Plass, N. H. Briggs, and R. L. Braynard,“Networking named content,” in Proceedings ofthe 5th international conference on Emergingnetworking experiments and technologies. ACM,2009, pp. 1–12.

[2] T. Vu, A. Baid, Y. Zhang, T. D. Nguyen,J. Fukuyama, R. P. Martin, and D. Raychaudhuri,“Dmap: A shared hosting scheme for dynamicidentifier to locator mappings in the globalinternet,” in Proceedings of the 2012 IEEE 32NdInternational Conference on DistributedComputing Systems. Washington, DC, USA:IEEE Computer Society, 2012, pp. 698–707.

[3] T. Koponen, M. Chawla, B.-G. Chun,A. Ermolinskiy, K. H. Kim, S. Shenker, andI. Stoica, “A data-oriented (and beyond) networkarchitecture,” in ACM SIGCOMM ComputerCommunication Review, vol. 37, no. 4. ACM,2007, pp. 181–192.

[4] G. Garcıa, A. Beben, F. J. Ramon, A. Maeso,I. Psaras, G. Pavlou, N. Wang, J. Sliwinski,S. Spirou, S. Soursos et al., “Comet: Contentmediator architecture for content-awarenetworks,” in Future Network & Mobile Summit(FutureNetw), 2011. IEEE, 2011, pp. 1–8.

[5] M. Varvello, I. Rimac, U. Lee, L. Greenwald, andV. Hilt, “On the design of content-centricmanets,” in Wireless On-Demand NetworkSystems and Services (WONS), 2011 EighthInternational Conference on. IEEE, 2011, pp.1–8.

[6] M. Heissenbuttel, T. Braun, M. Walchli, andT. Bernoulli, “Optimized stateless broadcasting inwireless multi-hop networks.” in INFOCOM,2006.

[7] A. Siddique, A. M. Hanashi, I. Awan, andM. Woodward, “Performance evaluation ofdynamic probabilistic flooding using local densityinformation in manets,” in Network-BasedInformation Systems. Springer, 2007, pp.288–297.

[8] M. Amadeo, A. Molinaro, and G. Ruggeri,“E-chanet: Routing, forwarding and transport ininformation-centric multihop wireless networks,”Computer Communications, vol. 36, no. 7, pp.792–803, 2013.

[9] K. Cho, M. Lee, K. Park, T. T. Kwon, Y. Choi,and S. Pack, “Wave: Popularity-based andcollaborative in-network caching for

770

Page 9: Architecture and implementation of an information-centric ... · adopts an information-centric network architecture, in which each mobile device periodically synchronizes with its

content-oriented networks,” in ComputerCommunications Workshops (INFOCOMWKSHPS), 2012 IEEE Conference on. IEEE,2012, pp. 316–321.

[10] H. Wu, J. Li, T. Pan, and B. Liu, “A novelcaching scheme for the backbone of named datanetworking,” in Communications (ICC), 2013IEEE International Conference on. IEEE, 2013,pp. 3634–3638.

[11] S. Saha, A. Lukyanenko, and A. Yla-Jaaski,“Cooperative caching through routing control ininformation-centric networks,” in INFOCOM,2013 Proceedings IEEE. IEEE, 2013, pp.100–104.

[12] J. M. Wang, J. Zhang, and B. Bensaou, “Intra-ascooperative caching for content-centric networks,”in Proceedings of the 3rd ACM SIGCOMMworkshop on Information-centric networking.ACM, 2013, pp. 61–66.

[13] Named Data Networking,http://www.named-data.net.

[14] H. Xie, G. Shi, and P. Wang, “Tecc: Towardscollaborative in-network caching guided by tra�cengineering,” in INFOCOM. IEEE, 2012, pp.2546–2550.

[15] L. Saino, C. Cocora, and G. Pavlou, “Cctcp: Ascalable receiver-driven congestion controlprotocol for content centric networking,” inCommunications (ICC), 2013 IEEE InternationalConference on. IEEE, 2013, pp. 3775–3780.

[16] S. Arianfar, J. Ott, L. Eggert, P. Nikander, andW. Wong, “A transport protocol forcontent-centric networks.”

[17] G. Ausiello, Complexity and approximation:Combinatorial optimization problems and theirapproximability properties. Springer Science &Business Media, 1999.

[18] M. Sto↵ers and G. Riley, “Comparing the ns-3propagation models,” in Modeling, Analysis &Simulation of Computer and TelecommunicationSystems (MASCOTS), 2012 IEEE 20thInternational Symposium on. IEEE, 2012, pp.61–67.

771