Professional Documents
Culture Documents
R2: A Distributed Remote Function Execution Mechanism With Built-In Metadata
R2: A Distributed Remote Function Execution Mechanism With Built-In Metadata
#, AUGUST 2021 1
Abstract—Named data networking (NDN) constructs a network by names, providing a flexible and decentralized way to manage
resources within the edge computing continuum. This paper aims to solve the question, “Given a function with its parameters and
metadata, how to select the executor in a distributed manner and obtain the result in NDN?” To answer it, we design R2 that involves
the following stages. First, we design a name structure including data, function names, and other function parameters. Second, we
arXiv:2112.06128v2 [cs.DC] 20 Aug 2022
develop a 2-phase mechanism, where in the first phase, the function request from a client-first reaches the data source and retrieves
the metadata. Then the best node is selected while the metadata responds to the client. In the second phase, the chosen node directly
retrieves the data, executes the function, and provides the result to the client. Furthermore, we propose a stop condition to intelligently
reduce the processing time of the first phase and provide a simple proof and range analysis. Simulations confirm that R2 outperforms
the current solutions in terms of resource allocation, especially when the data volume and the function complexity are high. In the
experiments, when the data size is 100 KiB and the function complexity is O(n2 ), the speedup ratio is 4.61. To further evaluate R2, we
also implement a general intermediate data processing logic named “Bolt” implemented on an app-level in ndnSIM. We believe that R2
shall help the researchers and developers to verify their ideas smoothly.
Index Terms—Edge computing, metadata, information-centric networking, named-data networking, decentralized method invocation.
1 I NTRODUCTION Zhou et al.: Edge Intelligence: Paving the Last Mile of Artificial Intelligence With Edge Computing
lifestyle,
that byimproving
2025 41.6humanbillionproductivity, and
beenhancing
I DC ESTIMATES
terconnected, social
and dataefficiency.
As a key
(ZB) [1]. Current cloud
devices will
volume will reach 79.4 zettabytes
driver that architectures
computing boosts AI development,
do not af-
in-
big data
have recently gone through a radical shift of data source
ford such an overwhelming amount of devices and data due
from the megascale cloud datacenters to the increasingly
to high latency, limited bandwidth, high carbon footprint,
widespread end devices, e.g., mobile devices and Internet-
and poor security [2]. Many traditional services that are
of-Things (IoT) devices. Traditionally, big data, such as
processed in theonline
cloudshopping
but generated remotely
records, social media[3] are thus
contents, and busi-
maintained at aness high cost, e.g.,
informatics, werethe communication
mainly born and storedand at megas-
computation-intensive tasks, such
cale datacenters. as image
However, recognition
with the proliferationand of mobile
target tracking. computing
Thus, edge computing,
and IoT, the trend is an accelerator
reversing of
now. Specifically,
cloud computing, Ciscoaffords
estimates better computing
that nearly 850 ZBresources for by
will be generated
users and thus all people,
gains machines, and
widespread things atCurrent
attention. the network edge edge by
2021 i.e.,
computing features, [3]. ultra-low
In sharp contrast,
latency,the global datacenter
geographical dis- traffic Fig. 1. Illustration of edge computing.
will only
tribution, unlimited reach 20.6
bandwidth, ZB privacy,
high by 2021. and Clearly, via bringing
security,
the huge volumes of data to AI, the edge ecosystem will Fig. 1: Illustration of edge computing [6]. (Copyright © 2019,
offset the lack of cloud computing and employ it used IEEE)
present many novel application scenarios for AI and fuel edge resources to gain AI insight. Notably, EI has garnered
in many realms [4]. Additionally to the edge resources,
the continuous booming of AI. much attention from both the industry and academia. For
as illustrated in Fig. 1, “edge computing includes employing
Pushing the AI frontier to the edge ecosystem that example, the celebrated Gartner hype cycle has incor-
networked resources closer
resides to last
at the the mile
dataofsources/sinks. Resources
the Internet, however, is highly porated EI as an emerging technology that will reach
can be at the edge, in the cloud, and everywhere in between a andthe nodes/networks state and the data sources details are
a plateau of productivity in the following five to ten
nontrivial, due to the concerns on performance, cost,
continuum” [2], [5], [6]. Hence, edge computing affords
privacy. Toward this goal, the conventional wisdom is to task known,yearseven for
[11]. a
Majortrivial counting
enterprises, job, Google,
including such asMicrosoft,
task schedul-
processing and data analysis
transport everywhere.
the data bulks from the IoT devices to the cloud ing, Intel,
resource discovering,
and IBM, have put forthand
pilotdata retrieving.
projects The most
to demonstrate
datacenters
Edge resources, for analytics
specifically [4]. However,
the continuum, arewhen moving a the advantages of edge computing in paving the last mile and
usually popular way of knowing and managing these states
tremendous amount of data across
employed to execute tasks in a distributed manner to pro- the wide area details
network of is
AI.utilizing a central
These efforts metadata
have boosted server
a wide that involves
spectrum of
(WAN), both monetary cost
vide a time-limited service. For example, developers may and transmission delay abstract
can data about
AI applications, essential
spanning fromattributes such
live video analytics as location,
[12],
be prohibitively high, and the privacy leakage can also size, cognitive assistance [13] to precision agriculture, smart
partition the communication and computation-intensive be and format. This strategy is used in many applications
a major concern [5]. An alternative is on-device analytics like home“Metastore”
the [14], and Industrial Internet of Things
or “NameNode” (IIoT) [15].
of Apache Hadoop.
deep learning models, consecutively deploy them on the Notably, research and practice on this emerging
that run AI applications on the device to process the IoT
continuum, and datathenlocally,
execute them
which, to obtain
however, may the
sufferresults withperfor- interdiscipline—EI—are still in a very early stage. There the
from poor
By managing the metadata through the central node,
a short delay [7]. Compared with purely cloud processing, developers or users can easily leverage their resources.
mance and energy efficiency. This is because many AI appli- is, in general, a lack of venue dedicated for summarizing,
cations require high computational power that greatly out- Nevertheless,
continuum processing has several benefits: low energy cost discussing, andindisseminating
an edge computing scenario,ofmetadata
the recent advances EI,
and low latency.weighs
However, the latter advantages assume that management is non-trivial, as
the capacity of resource- and energy-constrained in both industrial and academia. To bridge this gap, developing suchin athiscentral
IoT devices. server is costly.
paper, This isa because
we conduct enormous
comprehensive small data
and concrete surveypieces,
To address the above-mentioned challenges, edge chunks, and
of the files,research
recent are scattered
efforts in
on geo-graphical
EI. Specifically, distribution,
we will
• This paper was published
computing in IEEE.
[6] hasDOI: 10.1109/TNET.2022.3198467
recently been proposed, which pushes and gathering
first review and managing of
the background them in awill
AI. We centralized
then discuss manner
cloud services from the network core to the network the motivation, definition, and rating of
becomes infeasible, as the nodes within the continuum EI. Next, we will are
edges that are in closer proximity to IoT devices and further review and taxonomically summarize the emerging
data
1558-2566 ©2022 IEEE. Personal use sources. but
is permitted, Asrepublication/redistribution
shown in Fig. 1, here an edge
requires IEEE node computing architectures and enabling technologies for EI
permission.
can be nearby end-device connectable by device-to-device model training and inference. Finally, we will discuss some
(D2D) communications [7], a server attached to an access open research challenges and opportunities for EI. This
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 2
usually volatile, highly changeable, and even unreliable are implemented on an app-level to make R2 computing
[8], [9]. Electing a consensus node with high availability scalable. Since the user only cares about the result, we name
in such a dynamic environment imposes high scheduling our method “Request Result” (“R2”). The major contribu-
and maintenance costs [10], prohibiting edge computing tions of this work are as follows:
from being affordable. Furthermore, cost estimation, mon-
1) We propose R2 to prove the feasibility of distribu-
itoring the remote nodes’ status, authentication, and service
tively running the function based on metadata. R2
optimization is challenging. Therefore, utilizing the edge
assumes the metadata is stored together with its
resources in a decentralized and native way instead of a
data and utilizes a 2-phase mechanism to consec-
consensus node becomes critical.
utively complete the metadata extraction, cost esti-
Some typical applications like CDN and DNS accelerate
mation, function executor selection, data extraction,
the network’s data access speed. Specifically, CDN caches
function execution, and result response.
offer little in terms of general computational capabilities
2) To find the best node for function execution, we for-
[11], while DNS [12] introduces additional inevitable name
mulate a distributive cost estimation process based
resolution delays [9]. Nevertheless, the current IP architec-
on metadata combined with a stop condition. This
ture suitable for point-to-point communication is limited in
strategy avoids scanning all nodes along the for-
distributed networks [13].
warding path to reduce the result retrieving time
Fortunately, Information-Centric Networking (ICN) and,
automatically. The stop condition can also be used
in particular, its prominent Named Data Networking (NDN)
in other uncertain edge computing scenarios to dis-
instantiation [13] that constructs the network based on
tributedly select the best node.
the data name rather than IP provides a realistic solution.
3) We implement, evaluate and analyze the perfor-
Specifically, the work based on NDN uses the function/ser-
mance of R2 on ndnSIM [18], involving numerous
vice name as its routing rules to find the proper executor in
experiments conducted on a real-world network
a fully distributed manner. This strategy affords to provide
topology dataset. Additionally, to make R2 flexible
quickly and efficiently several scalable and robust services,
and portable, we developed an application-level
e.g., serverless computing, function as a service, and in-
intermediate data processing plugin named “Bolt”,
network computing [14], [15], [16]. However, ICN/NDN
which can be installed on a computing-capable node
technology is still at an early stage and requires more
to make R2 scalable. R2 is open source and can be
investigation [17].
found on GitHub [19].
Many works that integrate the function or service name
and directly transmit the raw data to the executor may cause The remainder of this paper is as follows. Section 2
a blocking problem. Thus, metadata should solve the latter presents the related work on computing within the contin-
issue before accelerating the edge computing speed. Besides uum. Then Section 3 introduces some preliminaries of NDN
the proper executor selection, retrieving metadata as the and the details of the R2, including name format, forward-
first step presents several side benefits, such as checking the ing pipeline, cost optimization, applied scenes, and proofs.
node’s health or working status in the data forwarding path, Section 4 discusses the experiments, numerical results, and
affording cost estimation by relatively small metadata to the “Bolt” implementation, while Section 5 discusses some
avoid network congestion, and warming up the dependent security issues. Finally, Section 6 concludes this paper.
environment of the function/service.
Nevertheless, the following question arises, “is it feasible
to perform in-network processing in NDN according to the 2 R ELATED WORK
metadata?”. To answer this question, this paper investigates Executing functions within the continuum is a well studied
leveraging resources within the continuum in a distributed topic in many realms, such as in-network caching [23],
fashion to satisfy the function/service requirement in NDN. in-network computing [24], software-defined networking
The proposed design presents the following features: (1) (SDN) [25], and network function virtualization (NFV). ICN
Data and metadata are distributively stored, with the pre- is a straightforward way of forwarding the users’ interest
ferred location being the data producer. (2) The user pub- without a centralized coordinator and considering name
lishes an Interest containing a data name and a function with resolving, and thus in this paper, we focus on the related
parameters and only expects the function result (output work utilizing ICN. Table 1 compares the notable related
of the function). (3) The function can be executed along works regarding the implementation level of the forwarding
the continuum from the user to the data generator. (4) strategy, the function executing logic, and the selection of
Most importantly, using metadata to select the best function the function/service executor. It should be noted that, in
execution node to minimize the end-to-end delay. addition to the comparable items in Table 1, our work
Based on these features, we propose a 2-phase dis- provides a simple distributed way to check the existence of
tributed remote function execution mechanism utilizing the requested data instantly and minimize the end-to-end
metadata. During the first phase, we select the best executor delay by using metadata.
in the forwarding path according to the data abstract, node Combining ICN and edge computing has inspired many
status, and network condition to minimize the total end-to- in-network processing works. According to their design
end delay. Then, in the second phase, we use this executor as goal, these works can be generalized into either service
a “transit station” to receive the large raw dataset, analyze routing or best node selection. Routing function/service
it, and send the short analyzed result to the requester. We according to the name, such as Named Function as a
verify this idea on the NDN project [13], while most codes Service (NFaaS) [20] and NDNe [22], can support many
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 3
TABLE 1: Comparison with the notable related works the Interest and updates the SERVICEEXECCOST value in a
distributed manner. After the Interest reaches the last edge
Work1 Forwarding Executing Distributed Executor
strategy level executor selection node, an executor acknowledgment is sent back to finish the
selection space2 best executor election.
T However, in a data-centric network, we argue that the
NFaaS Custom NFD None (Service A E
[20] duplicating) data name should also be a component of the Interest name.
RICE Builtin App None Producer Most of the above-mentioned service-oriented methods,
[16] except for IoT-NCN, assume the routing strategies rely on
T
CFN Builtin App Moderate A E the function name rather than the data name, which is not
[21] (Task capable of generalizing the case where data is stored on the
scheduler)
T other edge node. At least additional Interest needs to be
NDNe Builtin NFD Distributed A E sent. IoT-NCN [17] adds the data name in the Interest in
[22] (Replies first)
T front of the function name and routes it to the last edge
IoT- Custom NFD Distributed P E
NCN (Piggyback- node on the IoT domain to create data-oriented distributed
[17] ing) services. However, its cost estimation does not integrate
T
ICedge Custom App Distributed A E with metadata, i.e., it is ineffectual to the actual data size
[15] (Monitoring and type, especially for other data analytic applications.
metrics)
T Unlike current works, R2 overcomes the challenges men-
[9] Custom App Distributed A E tioned above by utilizing 2-phase operations with metadata.
(Monitoring
metrics) R2 uses the data name as its forwarding strategy to satisfy
T the data-oriented applications and metadata to enhance the
R2 Custom App Distributed P E
1. A: Nodes matched the given name (prefix); E: Nodes that can execute
best node selection accuracy.
the function; P: Nodes on the forwarding path.
2. CFN, NDNe, ICedge, and [9] send the function name to the executor
at first. 3 R2
3.1 NDN preliminaries Indeed, Alice cares about her baby’s position, and thus,
we need to find a trusted node2 to identify or analyze
As a concrete architecture of ICN, the NDN project [13]
the baby’s status, i.e., get the baby’s position or ex-
aims to solve the communication network problem. In
tract one picture having the baby by running a detect
a communication network (e.g., IP network), packets are
function in the HD video with a short delay. Finding the
named-only endpoints, and thus it is hard to apply them
node requires the metadata of the remote-monitor-data,
to the edge computing area where numerous devices exist.
such as the data size, format, and resolution. This in-
Instead of IP, NDN uses the Name concept to fabricate the
formation assists in making a more accurate and fast
network among different nodes. This architecture contains
choice on minimizing the analysis delay before transmit-
two basic network data packets, Interest and Data. An In-
ting the large file. In this case, metadata content can be
terest packet comprises the Name of the requested data and
in a JSON format {resolution:12k, filetype:AVI,
other options defined by the requester. Data consists of the
size:12MiB}, with the attribute size being the most
data Name, data contents, signature, and other user-defined
important. Furthermore, some devices have flashcards that
information. When a user (also called consumer in NDN)
are incapable of storing the entire dataset, and thus addi-
retrieves the data, he first sends an Interest packet into
tional hard disc I/O operations are involved. Nevertheless,
the network. Then the NDN forwarder (NDN Forwarding
metadata information can help us avoid these devices.
Daemon, NFD) enters the forwarding pipeline to redirect
Next, according to Alice’s example, we give the name
Interest toward the data producer according to the Interest
structure in R2.
name. Finally, the producer responds to the requested data
back to the consumer. The consumers drive communication 3.2 R2 Interest name structure
in NDN, i.e., a receiver-driven communication mode. Other
Following Alice’s example as mentioned before, Fig. 3 de-
techniques, e.g., session support [9], [29], and Long-Lived
picts the entire Interest Name in R2.
Interest, can also ease data pushing from the producer.
The NDN design assumes hierarchically structured
'()(*+(,# $/+0)%.+*+(,#
names. For example, it retrieves the camera stream or
the file remote-monitor-data stored in Alice’s home /r2 /alice’s-home/remote-monitor-data /sep /detect /{object=baby, action=position}
through NDN to give a further analysis like confirm- !"#$%& -#!("()." $/+0)%.+*!("(,#)#"-
ing her baby is safe. The Name of Interest might be
/alice’s-home/remote-monitor-data, where / de- Fig. 3: Interest name structure.
lineates name components in text representations. Each
node in NDN first checks its Content Store (CS), then Pend- Name in Fig. 3 means finding the data that named
ing Interest Table (PIT) and Forwarding Information Base by /alice’s-home/remote-monitor-data and obtain-
(FIB), and finally redirects this Interest by the Forwarding ing the baby’s position by running the detect func-
Strategy to the data node located at Alice’s home.1 This tion. It starts with a prefix /r2 identification used to
process is commonly adopted in a longest-prefix matching avoid mixing with the traditional NDN Interest. Then, we
method. place the /alice’s-home/remote-monitor-data com-
An example. Recently, many homes where families have ponents behind /r2 to let NFD daemons find the camera
babies or are feeding pets have installed several types of in Alice’s home. We put the function component /detect
systems to monitor and control their security devices re- behind data-name and separate them with /sep. Compo-
motely (using a smartphone and an app). These systems nent {object = baby, action = position} involves
usually contain machine/deep learning models to provide the ApplicationParameters of NDN Interest
intelligent computation and communication-intensive ser- Remark. Name matching strategies of NFD usually recog-
vices such as fall detection, fire warning, and home se- nize the Interest by the data name in a “Longest Prefix
curity checking. Some systems may need time to identify Match” fashion. Here the data name is /alice’s-home/
the most critical event, e.g., the alarm system. A com- remote-monitor-data not /r2. This difference is solved
mon feature of these jobs is the a priori known dataset by the proposed “Bolt”and a custom Strategy. Other techniques,
schema, as different schemas typically have different pro- such as “Forwarding Hint”, can be also used. In general, “Bolt”
cessing logic. In Alice’s example, the camera types and is designed on an application level can perform cost estimation,
video format can be different, such as 60 fps at 12K, 110 function execution, and states reservation. If users or developers
fps at 8K, or 220 fps at 4K. Hence, different function want to run R2 on a computing-capable node such as base
adaptors are needed during runtime. In addition to data stations, gateways, micro data centers and relatively powerful
schema, data size is another vital indicator of the service routers, they can simply install the “Bolt” app on the node instead
delay (in Alice’s example, the data volume is enormous). of injecting junk codes or some unexpected behavior into NFD.
Transmitting these massive HD video streams identified by
/alice’s-home/remote-monitor-data on the entire 3.3 R2 process: a 2-phase precise remote method in-
network could be challenging for the backbone and Alice’s vocation mechanism
internet expenditure. Here, we re-emphasize the kernel question: Given a func-
tion with its parameters and the involved metadata, how
1. CS is a container to store Data packets, PIT is a list to store the
unsatisfied Interest packets, FIB is a routing table which maps Name 2. A series of trusted nodes can be selected by many techniques such
components to next hops, and Forwarding Strategy is a series of policies as blockchain consensus, secure multi-party computation, or manually
and rules about forwarding Interest and Data packets. deploying authentication services in advance.
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 5
to select the best node (i.e., the executor) in a distributed 3.3.1 Modeling the cost and selecting the executor
manner and obtain the final output result? In other words,
how to select an executor in the forwarding path to detect !"#$%&'&(")*+,-'.*
1,+
Alice’s baby’s status. !)"*/0# ")*,/,0%&"1
"%1
Before answering this question, three rudimentary -,1
$%&'
7'63.,584-2'66%)95*'./0 !%$#$
points need to be addressed. (1) The requested data should
exist, i.e., /alice’s-home/remote-monitor-data
.,-
should exist when Alice wishes to access it, or analysis ()*+,-+')* *'./0 !)"*/0# &'(#")"*#
-,.
!!"#$%$#$
even by hand is impossible. This point ensures the user
(1'23,-456'.'2,%-) *'./0
a more reliable service. (2) The function cost (for the +,-
!!"#$%$#$&'(#")"*#
remainder of the paper, “delay” shall be a substitute
for “cost”) can be easily estimated. The executor can ! !""!# !% ! $"!!" !# ! &"""# !' ! ( "##
be quickly chosen based on the function detect and
the metadata {resolution:12k, filetype:AVI, Fig. 4: R2 end-to-end delay model.
size:12MiB}, the executor can be quickly chosen. We use
metadata Interest that requests to solve these two points. Objective function. Let V = {v1 , ..., vN } denote a sequence
(3) The executor can be independently, automatically, and of edge nodes along the path from the client c to the
distributively selected based on the first and the second producer p, vi is the chosen ith node to execute the function,
i,j
point. Some traditional solutions armed with consensus Cdi be the computation delay on vi , and Ttype be the delay of
nodes intend to deploy related components or services in transmitting the type-packet from vi onto vj . Fig. 4 depicts
the fixed edge nodes (e.g., the edge cloud, which can be the delay model of R2 and includes the executor selection
regarded as wireless base stations) placed at the level of the delays (or the cost estimation, the first phase) and the result
network backbone may not be an optimum choice. These processing (the second phase). The first phase mainly selects
solutions fulfill the user’s tasks by gathering changeable the best executor vi according to the metadata retrieved by
information but may be trapped in the consensus problem, sending an metadata-Interest. The second phase retrieves
as the changeable information is not easy to synchronize. the raw data from p by sending an result-Interest on a node
The third point refers to selecting the executor based on b 4 , performs the function on the node vi , and returns the
metadata without requiring additional coordination among result. Then the end-to-end delay D may be written as:
nodes or a coordinator and that the metadata is only the c,p p,b
information carrier. D = Tmetadata−interest + Tmetadata +
| {z }
cost estimation delay
Thus, we design the R2 protocol comprising a 2-phase
b,p p,i i,c
architecture. The first phase neglects those 3 points by Tresult−interest + Tdata + Cdi + Tresult (1)
selecting the executor through cost estimation based on c,p p,b b,p p,i
Where Tmetadata−interest , Tmetadata , Tresult−interest , Tdata ,
the function and the retrieved metadata. Developers or i,c
maintainers can also start to warm the runtime environment and Tresult are the transfer delay of metadata-Interest ,
in this phase. The second phase involves executing the metadata, result-Interest , Data , and result, respectively.
function on the executor based on the retrieved Data and Formula 1 indicates that the end-to-end delay contains two
c,p p,b
then replying the result to the client. Thus, two Interest types parts. Tmetadata−interest + Tmetadata is the delay of the
b,p
are designed, the metadata-Interest and result-Interest, re- executor selection of the first phase, and Tresult−interest +
p,i i,c
spectively. Technically, compared to metadata-Interest, the Tdata +Cdi +Tresult the result processing delay of the second
result-Interest carries a MinCostMarker3 used to identify phase.
the executor. To minimize the end-to-end delay D, we select the best
executor vi . Thus, our objective function is minvi ∈V D. The
The result-Interest might also be sent from a node within c,p
cost Tmetadata−interest of forwarding the metadata-Interest
the continuum, except for Alice, which we denote as b
to the producer is inevitable. Thus, we further simplify the
(bound) for short. An optimized version of R2 in a step-
objective function to:
by-step approach is presented in Section 3.3.4, illustrated in
Fig. 6 (right part), introducing a 2-phase process with its min D ⇒
vi ∈V
time slices. It should be noted that this version can auto- p,b b,p p,i i,c
matically select the executor with minimal cost by jointly min {Tmetadata + Tresult−interest + Tdata + Cdi + Tresult }
vi ∈V
considering the network condition, the data source, and the (2)
computation capacity. Next, we introduce in detail the R2 p,i i,c
process, including the objective function of minimizing the Tdata , Cdi
and Tresult
are dominated by the position of
end-to-end delay, algorithms, and proofs. Then we give a executor vi within the continuum, where vi is the pivot that
fundamental applied analysis of R2. contributes to D.
We aim to determine vi to minimize D. A traditional
method checks all the nodes in V by estimating the trans-
mission and computation cost in the first phase. Thus, we
4. We temporarily use c and b interchangeably. Section 3.3.2 gives the
3. MinCostMarker tag can be found on https://git.io/J3ysv specific usage of b.
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 6
write OptimizationOff (OptOff for short), OptOff is a base select the one who is the best overall—i.e., relative to all applicants,
version of R2 when b = c, i.e., OptOff is a fully two round- among those seen and those not-yet-seen.”. For the scope of
trip method. During the first phase (executor selection), it this paper, we redefine this problem as precisely and not
scans all forwarding nodes. probabilistically finding within the continuum the stop
Cost estimation model. To determine vi , we use a simple point (the bound b) without traveling all nodes in V .
cost estimation model that utilizes instant bandwidth of
the forwarding path and CPU cycles of the executor. Let
a function f have a time complexity O(·) and involve a Delay Type
metadata packet M . In R2, the critical indicators in M are Computation delay (Cid)
typically datasize, metasize of the data and the meta- Total delay
p, i
p,i Transmission delay (Tdata)
data packet, respectively. Let T ed denote the estimated
transmitting data delay from p to vi , and Ceid the estimated
delay of executing f on vi . Then,
Delay
Stop point b
Mmetasize
T ep,i
d = Mdatasize ∗ (3)
(Tstart − Tcurrent )
and
c · O(Mdatasize )
Ceid = (4)
CP Uf requency
where Mdatasize , Mmetasize , c, and CP Uf requency are the
size of the original dataset, size of M , CPU cycles per
operation, and CPU cycles per second, respectively.
n1 n2 n3 n4 n5 n6 n7
Note that we estimate T ep,i
d in real-time, and thus, other
methods can also be used, e.g., based on historical network
Node ID
interfaces dataset. Fig. 5: An example of finding the stop point b.
Algorithm 1 depicts the executor selection steps in
the first phase and from a single node perspective. The p,c/b
algorithm distributively finds an executor and uses a Based on our findings, cost modeling delays (Tmetadata +
c/b,p
MinCostMarker stored in the metadata to identify the Tresult−interest ) related to finding the best executor in the
executor vi . When the metadata carried a MinCostMarker OptOff method can be further reduced by replacing the
reaches a client, the Bolt app running on the client extracts “Alice” node c with a strict boundary intermediate node b.
the MinCostMarker and attaches it to the result-Interest. Fig. 5 intuitively depicts an example of finding bound b that
This marker is the key to finding the executor in the second initiates the result-Interest. This figure presents seven nodes
phase, and we preserve this marker until the function is where a computational task with its data is transferred from
executed on vi . n1 to n7 , and n4 and n5 are the most potent backbone nodes
or servers. The solid red line shows the computation delay,
Algorithm 1 OptOff–Executor selection (finding vi ) which is negatively correlated to the computing power of
1: if metadata Data packet then each node. The solid blue line shows the Data transmission
etaCost ← costEstimation(metadata); ⊲ T ep,i i delay, and the solid green line shows the total delay. When
2: d + Ced p,i
3: minCost ← getMinCost(metadata); the transmission delay Tdata is greater than the total delay
4: if etaCost ≤ minCost then on every passed-by node, vi (in this example, n3 ) is already
5: minCost ← etaCost; involved. If we continuously check the remaining nodes
6: M inCostM arker ← hash(metadata, after n5 , i.e., n6 and n7 , we obtain only the dominated trans-
node.uuid); mission delay. This phenomenon applies to two terminals
7: updateMinCost(metadata, minCost, across the backbone network, such as the cross-edge analytic
M inCostM arker); area [27]. Thus, by replacing the marks in the estimation
8: end if process, formula 5 gives the stop condition:
9: end if
T ep,b p,j j
d ≥ max (T ed + Ced ) (5)
1≤j<b
However, we argue that finding the executor vi in the
second half of the first phase does not require traveling Proof. The stop condition refers to the minimal cost node
all nodes in the path, i.e., vi ∈ {a subset of V }. In other nm is between n1 and nb , i.e., 1 ≤ m ≤ b. The proof’s core
words, b can be the node along the path from c to p. Next, concept is to consider m′ , with m′ ≥ b, to check if its total
we propose an optimization called the stop condition. cost is smaller than node m. Note that the relation of “≥” in
the stop condition does not change.
3.3.2 Stop condition Suppose, contrary to our claim, that the stop condition
p,m′
In the secretary problem [30], “a manager sequentially observes is false. Then we could find an m′ ≥ b and T ed ≥ T ep,b
d ,
′
p,m m ′
applicants randomly for a single position. When she observes the imposing a minimal cost of T ed + Ced . Then,
b-th applicant in the sequence, she learns only the quality of that ′
T ep,m p,j j
′
d + Cemd > T ed of Section 3.3, even if the total delay is bigger than the 1-
round methods in some cases. Nevertheless, if the raw data
Finally, we get
is limited or the function is simple, R2 may not outperform
p,m′
max (T ed + Ced ) < T ed +Ced ≤ max (T ed + Ced ) the 1-round methods (the methods regarding the Client or
p,j j m′ p,j j
1≤j<b 1≤j<b Producer as the executor). Hence, we compare R2 and Client
Hence, m = j < b, contradicting our assumption that m > in NDN to examine the applicability of R2 in terms of the
′ ′
b.When this condition is met, we stop the executor selection total delay. Without a loss of generality by assuming b = c,
process. R2 involves fully 2-phase operations in the worst case.
8
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 9
E::7!#.)!$"' ;.#*'
(")*+*,);!7)*+?:+*=!FG23+45@
;!">')1*'=.#*,'%.)#1*>')1*'".%*' <$7)
23.7!#*C,D1$%*3+*%$)*D%$"!)$+D>.).5
+#$%'%*$, -)+.)*&/ ?>+$:@
-"". 4 !"#$%&'$"($)*$"+,- !"#$$%"&#$
01$%','%2%)3%,+#$%'%*$
( '()*$+,-."*/
0-1"$2$!"#3-45."6*7'(1"38"1(#"71(%5#(879-#- '
!"#!$%& =$9">6
!"#$%!"&' !"#$%&$'() ,*">'
(")*+*,) 01$%','%2%)3%,+#$%'%*$
()*!+ ,+-./-0 ;(<'#1*#8 (")*+*,) !"#$%&'()*
!"#$%#$&$"'% 1)&+234# 0-1"$2$!"#3-45."6*7'(1"3$
()** ,).+)'0!)1 ' =.#*6 8"1(#"71(%5#(879-#-
23+456 &*)'7$$89:'
!"#$%#$&$"'%
/)$
( ".%*' !"#$%&'%()*
?+*&97.+ ABA :!:*7!"*@ :((;<)$%-1"$2$ 3-45."6*7'(1"38"1(#"71(%5#(879-#- !"#
!"#$%$&#'(%)*$'()+,$ !"#$%$&#'(%)*$'()+,$
!" #$% &&! !" #$% &&!
!" !# $ !# !& $
!"#$%:$06)#$'0)#)'M:$#)0)#)'5%'0)#)N'/%5*$&&6";
% % % % % %
'()*+, ()*+ ()*+ O)#*8$0'0)#)'7,5<&'6"#5'45,#')//',$D$,'#85A;8'!"#$ ()*+
-%.-!"#$%&'()*+%,-%+*.%(+*/#.*-(0!.!-&$/-0$#$*#-12
! -%.-!"#$%&'()*+%,-%+*.%(+*/#.*-(0!.!-&$/-0$#$*#-13 #.+.
!"#$% !"#$& !"#$'
!"?'!"*5:6";'3.'!"#$%$&#
@A#?'@A#;56";'3.'!"#$%$&# !"#$%$&#'(%)*$'()+,$ !"#$%$&#'(%)*$'()+,$
BB!?'B5";CB6D$0'3.'!"#$%$&#'!"#$%&#"&'()#*#$%&# 3.'#%)*$&':)6"#$")"*$K'6I$IK'$&#)+,6&86";'#8$'5"$C#5C5"$'
*+,-(.
!" #$% &&! *5%%$&/5"0$"*$L'3.'!"#$%$&#',67$#6:$':)6"#$")"*$ !" #$% &&!
)*+,#$%&'( !" !# $ !# !& $ !"#$%&'(
EF#%)*#6";'#8$'G)#)'9):$'=-),6*$H&C85:$-%$:5#$C % % % % % %
:5"6#5%C0)#)>')"0'%5A#6";'6#'#85A;8'*A:'%&'"&$()I
'()*+, ()*+ 95#$?'#8$'9):$'6"'J!('6&'#8$'&):$'<6#8'3.'!"#$%$&#
()*+ ()*+
-%.-!"#$%&'()*+%,-%+*.%(+*/#.*-(0!.!-&$/-0$#$*#-12 "),-.,/
! ! -%.-!"#$%&'()*+%,-%+*.%(+*/#.*-(0!.!-&$/-0$#$*#-13
!"#$% !0$"#676$%'57'3.'!"#$%$&# !"#$& !"#$'
!1 "#$%&!'( 3.'45,#'!"#$ 60$"#676$&'#8$'9):$'&#)%#6";'<6#8' !. !2
=-%.>
3.3.4 R2 process in a step-by-step approach two critical actions are performed. The first is to find the
Fig. 6 presents OptAuto by depicting two phases (com- executor with a minimal end-to-end delay cost D based on
prising five processes or steps) of the R2 protocol under node configuration, “detect”, and metadata. According to
Alice’s example, who wants to check her baby’s status. By the stop condition, the second is to find the boundary b,
neglecting the stop condition, R2 becomes a fully 2-phase i.e., n3 . R2 discards the created mapping correspondence
process. Due to the page size, we involve four computing- (red records) to reduce the ITT size in this process. After
capable nodes (n1 , . . . , n4 ) and one forwarding node (n5 ). this process, we obtain a MinCostMarker representing the
The left area in Fig. 6 provides the R2 steps from the node executor, i.e., n4 . This marker comprises “detect”, param-
perspective, while the right area gives a bird’s eye view of eters and the node’s UUID, which can be viewed as the
p,b
the time delays per step. In Alice’s example, she first sends identifier of Alice’s request. The time consumed Tmetadata
a metadata Interest to get the remote-monitor-data abstract. in this process is positively correlated with the packet size of
R2 automatically creates the traceable traces, finds the best metadata and the cost estimation step, which is insignificant.
executor of “detect”, retrieves raw data of remote-monitor- (3) b issues a result-Interest carrying the
data, analyzes her baby’s status, and finally sends the baby’s MinCostMarker to the producer. Since all we need is the
status to Alice. We describe these five steps in detail below. raw data, i.e., the HD video file remote-monitor-data, any
(1) Alice first sends a long-lived other operations during transmitting the raw data between
metadata-Interest (under the name b and the producer are needless. Thus, the result-Interest
/r2/alice’s-home/remote-monitor-data/sep/ of the newly added mapping correspondence in ITT (green
detect/{object=baby,action=position}) into records) is set to be the Non-Long-Lived Interest type.
NDN. This Interest passes through the nodes within We can also perform warm-up services, e.g., video/image
the continuum, is captured by Bolt, leaves a mapping data processing unit, DNN model, and libraries related
correspondence in ITT, and finally reaches the producer to performing detect(baby, position), on n4 when
(or the camera at Alice’s home). The time consumed it receives the notification from b to avoid a cold start.
c,p b,p
Tmetadata−Interest in this process is positively correlated The time consumed Tresult−Interest in this process is
with the packet size of the metadata-Interest and the positively correlated with the packet size of result-Interest,
number of hops between Alice and her home. the number of hops between the boundary and Alice’s
(2) The producer first replies with a metadata Data home. For completeness, it should be mentioned that the
packet containing {resolution:12k, filetype:AVI, path guided by the NDN routing table (or PIT), despite
size:120MiB}. When the metadata moves towards Alice, being unstable, it can be settled through session support
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 10
the ratio of the function output size to its input data size as
α = 0.1.
p
4.3 Results
0.57 s
0.5
Executor
(a) O(logn)
0.4 Local
OptOff
OptAuto
c
0.3 Producer 0.31 s
10.0 11.85 s
4.99 s
Time [s]
3.0
(b) O(n)
1.0
Fig. 10: Rocketfuel dataset.
0.3
100 113.40 s
OptAuto, to testify the end-to-end delay in ndnSIM [18],
where ndnSIM is an NS-3-based simulator for NDN [13] im- 24.59 s
(c) O(n2)
10
plementation. Two additional methods are the “Producer”
and “Local”, where the former means pushing the function 1
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
1
Time [s]
leaf−2
leaf−2
leaf−2
leaf−2
leaf−2
OptOff − 10 OptOff − 102 OptOff − 1024 OptOff − 10240 OptOff − 102400
5 D ISCUSSION
0.6
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
1
leaf−2
leaf−2
leaf−2
leaf−2
leaf−2
Node ID Feasible solutions involve nodes within the continuum hav-
(a) Hop-by-hop accumulating delay of O(log(n)). ing the public key of each other or other decentralized
Packet flow type Data Interest
authentication methods [33]. Neverthless, security concerns
OptAuto − 10 OptAuto − 102 OptAuto − 1024 OptAuto − 10240 OptAuto − 102400
are out of this paper’s scope, and thus we will not further
5
examine them.
0.75
0.2
0.2
0.3 4
This version of R2 focuses on how to pick the best
0.2
0.50
3
computing-capable executor within the forwarding path.
0.1 0.1
0.1 0.25
2
Thus, mobility is not paid much attention. Recent mobility-
1
related works mainly focus on two types of nodes (con-
0.0 0.0 0.0 0.00 0
sumer and producer) and three categories (mapping-based,
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
1
Time [s]
leaf−2
leaf−2
leaf−2
leaf−2
leaf−2
0.50
3 compared to the data producer, and the role of the data
0.2 0.2
0.2
2 producer remains unchanged. Thus, if the producer moves,
0.25
1
the methods mentioned in [34], [35], [36] can be adapted.
0.0 0.0 0.0 0.00 0
Another problem is that intermediate forwarding nodes
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
leaf−2
leaf−2
leaf−2
leaf−2
Node ID
25
OptAuto − 102400
may use a tracing-based approach to proactively inform the
0.6
20
nodes on the forwarding path to establishing a new chan-
0.2
0.4 2
15
nel, which ensures that the executor is always accessible.
0.4
10
Another solution is to carry the unique identifier of the
0.1 0.2 1
0.2
5
executor as a hint when the executor performs the process
0.0 0.0 0.0 0 0
of returning ACK Data to the consumer, which ensures that
we can eventually look up the executor.
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
1
Time [s]
leaf−2
leaf−2
leaf−2
leaf−2
leaf−2
0.4
0.4
0.6
2
20
6 C ONCLUSION
15
0.4
10
This paper discusses the feasibility of R2, a 2-phase novel
0.2
0.2
0.2
1
5
mechanism for data processing in edge computing. A 2-
0.0 0.0 0.0 0 0
phase design has many potential benefits, ensuring the
function execution integrity, checking the node’s health
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−1 24
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
gw−189
gw−287
gw−103
bb−1 37
gw−159
gw−158
gw−249
leaf−449
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
bb−240
gw−182
1
1
leaf−2
leaf−2
leaf−2
leaf−2
leaf−2
Node ID
status in the client’s path towards the producer, and, most
(c) Hop-by-hop accumulating delay of O(n2 ). importantly, choosing the best node to execute the function.
R2 leverages the NDN paradigm for data retrieval from
Fig. 12: Hop-by-hop accumulating delay of OptAuto and data sources, enhances it to provide a decentralized method
OptOff varying data size invocation mechanism with the objectives to (1) minimize
the end-to-end delay by limiting the raw data traffic crossing
the network and selecting the executor and (2) reduce the
first round trip time by an intelligent stop condition. In
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 13
addition, we developed “Bolt” to process the intermediate [2] W. Shi, J. Cao, Q. Zhang, Y. Li, and L. Xu, “Edge computing: Vision
data on the app level in ndnSIM. “Bolt” can be installed on and challenges,” IEEE Internet of Things Journal, vol. 3, no. 5, pp.
637–646, Oct 2016.
the selected computing-capable nodes to provide scalable
[3] C. Nguyen, A. Mehta, C. Klein, and E. Elmroth, “Why cloud
service. We believe that our freely available code [19] can applications are not ready for the edge (yet),” in Proceedings of
help researchers and developers verify their ideas smoothly. the 4th ACM/IEEE Symposium on Edge Computing - SEC '19. ACM
Press, 2019.
[4] J. Moura and D. Hutchison, “Fog computing systems:
State of the art, research issues and future trends, with
7 F UTURE WORKS a focus on resilience,” Journal of Network and Computer
Currently, R2 only handled a single user request in this Applications, vol. 169, p. 102784, 2020. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S1084804520302587
paper. We solve the multi-user requests, including “compute
[5] N. Mor, “Research for practice: Edge computing,” Commun.
reuse” in the future. Future works also include extending ACM, vol. 62, no. 4, p. 95, Mar. 2019. [Online]. Available:
R2 to handle application (i.e., solving the functions/tasks https://doi.org/10.1145/3303876
directed acyclic graph (DAG)), re-forwarding the user’s In- [6] Edge Intelligence: Paving the Last Mile of Artificial Intelligence With
Edge Computing, vol. 107, no. 8. Institute of Electrical and
terest according to function name by the intermediate nodes Electronics Engineers (IEEE), aug 2019.
to scale out the executor selection space, storing metadata [7] E. Li, L. Zeng, Z. Zhou, and X. Chen, “Edge ai: On-demand accel-
and data with different locations. erating deep neural network inference via edge computing,” IEEE
Changing metadata-Interest’s lifetime from long-lived TRANSACTIONS ON WIRELESS COMMUNICATIONS, vol. 19,
no. 1, pp. 447–457, JAN 2020.
to regular is another future work. We think the latter is
[8] C. Avasalcai, C. Tsigkanos, and S. Dustdar, “Resource Manage-
feasible and is currently implemented by inflating the timer ment for Latency-Sensitive IoT Applications with Satisfiability,”
of the metadata-Interest entry in the PIT through sending IEEE Transactions on Services Computing, p. 1, 2021.
a refreshing Interest or an ACK Data that carries the esti- [9] Z. Fan, W. Yang, F. Wu, J. Cao, and W. Shi, “Serving at the
edge: An edge computing service architecture based on icn,”
mated function-execution time from the selected executor
ACM Trans. Internet Technol., vol. 22, no. 1, Oct. 2021. [Online].
back to the consumer. This is similar to RICE’s “Interest Available: https://doi.org/10.1145/3464428
Acknowledgements” [16]. The most significant difference is [10] M. S. U. Islam, A. Kumar, and Y.-C. Hu, “Context-aware
that the refreshing action in R2 is sent from the executor and scheduling in fog computing: A survey, taxonomy, challenges
and future directions,” Journal of Network and Computer
not from the consumer or the producer. Because the execu- Applications, vol. 180, p. 103008, 2021. [Online]. Available:
tor has the metadata, R2 affords a more precise function- https://www.sciencedirect.com/science/article/pii/S1084804521000357
execution time. [11] Y. Harchol, A. Mushtaq, V. Fang, J. McCauley, A. Panda,
Instead of identifying and capturing the current R2 Inter- and S. Shenker, “Making edge-computing resilient,” in
Proceedings of the 11th ACM Symposium on Cloud Computing,
est by the prefix “/r2”, effectively capturing the Interests at ser. SoCC ’20. New York, NY, USA: Association for
the application level by identifying the user-selected Name Computing Machinery, 2020, p. 253–266. [Online]. Available:
components is another future research direction. Note that https://doi.org/10.1145/3419111.3421278
our purpose is still putting the computation logic on the ap- [12] K.-J. Hsu, J. Choncholas, K. Bhardwaj, and A. Gavrilovska, “Dns
does not suffice for mec-cdn,” in Proceedings of the 19th ACM
plication level, not the NFD level. Another possible solution Workshop on Hot Topics in Networks, ser. HotNets ’20. New York,
is adding “/r2” as a postfix, identifying the postfix “/r2” NY, USA: Association for Computing Machinery, 2020, p. 212–218.
and forwarding it to the face of the Bolt app instead of the [Online]. Available: https://doi.org/10.1145/3422604.3425931
next-hop node, which still integrates with the forwarding [13] L. Zhang, A. Afanasyev, J. Burke, V. Jacobson, k. claffy,
P. Crowley, C. Papadopoulos, L. Wang, and B. Zhang,
Strategy. This Strategy seems similar to the Interests tracing “Named data networking,” SIGCOMM Comput. Commun. Rev.,
method KITE [36] and opposes the current R2 Strategy. To vol. 44, no. 3, p. 66–73, Jul. 2014. [Online]. Available:
the best of our knowledge, designing a scalable naming https://doi.org/10.1145/2656877.2656887
convention is a concern of many recent works that put the [14] C. Scherb, B. Faludi, and C. Tschudin, “Execution state manage-
ment in named function networking,” in 2017 IFIP Networking
function or service identifier at the head of the Name, e.g., Conference (IFIP Networking) and Workshops, 2017, pp. 1–6.
name as a function. Overcoming this issue may bring R2 [15] S. Mastorakis, A. Mtibaa, J. Lee, and S. Misra, “Icedge: When edge
scalability into a new stage. computing meets information-centric networking,” IEEE Internet
of Things Journal, vol. 7, no. 5, pp. 4203–4217, May 2020.
[16] M. Król, K. Habak, D. Oran, D. Kutscher, and I. Psaras,
“Rice: Remote method invocation in icn,” in Proceedings
ACKNOWLEDGMENTS of the 5th ACM Conference on Information-Centric Networking,
This work was supported by National Natural Science ser. ICN ’18. New York, NY, USA: Association for
Computing Machinery, 2018, p. 1–11. [Online]. Available:
Foundation of China under Grant No. 62173158 and No. https://doi.org/10.1145/3267955.3267956
61379134 and the Scientific Technological Innovation Foun- [17] M. Amadeo, G. Ruggeri, C. Campolo, and A. Molinaro, “Iot
dation of Shunde Graduate School, USTB under Grant No. services allocation at the edge via named data networking: From
BK19CF010 and No. BK20BF012, and in part by the National optimal bounds to practical design,” IEEE Transactions on Network
and Service Management, vol. 16, pp. 661–674, 2019.
Key Research and Development Program of China under [18] S. Mastorakis, A. Afanasyev, and L. Zhang, “On the evolution
Grant No. 2016YFC0901303. of ndnSIM: an open-source simulator for NDN experimentation,”
ACM Computer Communication Review, Jul. 2017.
[19] Q. Jianpeng, “R2 source code,” Jun. 2021. [Online]. Available:
R EFERENCES https://github.com/qijianpeng/ndnSIM
[20] M. Król and I. Psaras, “Nfaas: Named function as a service,”
[1] F. M, “The growth in connected iot devices is in Proceedings of the 4th ACM Conference on Information-Centric
expected to generate 79.4zb of data in 2025, according Networking, ser. ICN ’17. New York, NY, USA: Association
to a new idc forecast,” 2019. [Online]. Available: for Computing Machinery, 2017, p. 134–144. [Online]. Available:
https://www.idc.com/getdoc.jsp?containerId=prUS45213219 https://doi.org/10.1145/3125719.3125727
JOURNAL OF IEEE TRANSACTIONS ON NETWORKING, VOL. #, NO. #, AUGUST 2021 14