Figure 1: Simulation data structures.
are many application layer protocols in use, each withdiﬀerent parsing rules. To keep our analysis tractable,we select a small subset of all application layer proto-cols like HTTP which account for a large percentage of traﬃc and for which reliable and accurate parsers exist.
3.3 Simulation Sketch
In this section we sketch a proposed three step methodof execution for simulating CCN dissemination in Internet-based MANETs. Our method requires random accessto large quantities of data and is intended to be run ona large cluster. However, due to space limitations, wedescribe our approach as though executed on a singlemachine.
We ﬁrst create i) a
listing theapplication layer content downloaded by each deviceover the duration of the trace and ii) a
used for identifying duplicate content across devices (Fig-ure 1). The content store contains for each device abinary encoded, chronologically ordered bit stream of timestamped content, where timestamps are derived fromthe
trace ﬁle. Our ﬁngerprint store is inspired bythe work of Anand et al. on redundant traﬃc elimina-tion and uses a sliding hash function known as a Rabinﬁngerprint  to calculate a set of representative ﬁnger-prints over
-byte substrings of a device’s downloadedcontent. Each ﬁngerprint in the ﬁngerprint store main-tains a list of pointers into the content store creating amapping between ﬁngerprints and the times at whichthey appear in speciﬁc device’s downloaded content.
We then create a single data structure, the
, which stores for each device a record of what other device’s content was received at what time.This data structure is built by performing a discreteevent simulation of device encounters and the respectivecontent transfer under the parameterized constraints.Rather than storing actual exchanged content in the ex-change record, we store a list of four-tuples of the form
cr, co, tsr, coi
is the id of the device receivingthe content,
is the id of the device at which the con-tent
(not the device from which the content
receives relevant and timely contentfrom
is being received),
is the timestamp of when
re-ceives the content and
is a time interval describingthe period of
Finally, we synthesize the data structuresassembled in Steps 1 and 2 to identify those instanceswhere a device could have received a portion
of itsrequested content from the MANET, eliminating theneed to resort to the infrastructure. We identify twocriteria for device
to receive content
in time to eliminate theneed for
from the infrastructure: i)
must have access to content from
with an intervalthat encapsulates the interval of
’s appearance in
ii)this access must come at a time prior to when
from the infrastructure (Figure 2).The ﬁngerprint store provides us with a list of devicesin which
occurs and at what times. The exchangerecord tells us which of these devices received contentfrom one or more of the other devices and whetherany of this content came from an interval encapsulat-ing when
occurred. The exchange record and ﬁn-gerprint store combined therefore determine whether
receives usable content from
. Where it is determinedthat
receives usable content from
, we dereferencethe two ﬁngerprint pointers into the content store andexpand the match region left and right until either anon-matching byte is encountered or
s interval is nolonger encapsulated inside the interval of content avail-able at
. We then ﬂag this region of
as a portion of content that may have feasibly been retrieved from theMANET.
By simulating CCN content dissemination in an Internet-based MANET using real packet and mobility traces, wehope to inform the discussion on whether CCN com-bined with MANET is a viable strategy for reducingload on wireless infrastructure. While our own analy-sis is limited to a campus environment, our conceptualframework allows others to perform comparable analy-ses in other environments.2