IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
957
Object-Oriented Network: A Named-Data Architecture Toward the Future Internet Boxi Liu, Student Member, IEEE, Tao Jiang, Senior Member, IEEE, Zehua Wang, Member, IEEE, and Yang Cao, Member, IEEE
Abstract—Recently, many applications (e.g., wearable cognitive assistance) with the devices of Internet of Things (IoT) (e.g., Apple Watch and Google Glass) have been fast developed. However, the current Internet may not be suitable for the future IoT applications due to the limited capabilities of the data caching and content processing services with the existing Internet architecture. In this paper, we extend the named data networking and develop the object-oriented network (OON) as a novel Internet architecture to implement both the native data caching and content processing in the network layer. The datagrams with processable payloads as well as the cached contents are both referred to as the operable objects in OON for abstraction. With the proposed OON architecture, operable objects can be processed and transmitted by forwarding them to the subroutines of content processing programs and the interfaces of content deliveries, respectively, according to the proposed naming rules. For performance evaluation, we implement the dynamic adaptive multimedia streaming application atop the proposed OON architecture in ns-3. Our simulation results show that the proposed OON architecture can effectively increase the potential quality of experience for mobile users. Index Terms—In-network content processing, Internet architecture, Internet of Things (IoT), object-oriented network (OON), quality of experience (QoE).
I. I NTRODUCTION HE CURRENT Internet has been developed for decades and has become the major foundation for world-wide e-business runs. It has evolved to facilitate ubiquitous access to a pool of shared communication, computational, and caching (3C) resources and brought us to the era of big data as illustrated in Fig. 1 [1]. Meanwhile, Internet of Things (IoT) has attracted attentions from both academias and industries as the most significant extension of the Internet.
T
Manuscript received March 28, 2017; revised May 9, 2017; accepted June 4, 2017. Date of publication June 12, 2017; date of current version August 9, 2017. This work was supported in part by the Major State Basic Research Development Program of China (973 Program) under Grant 2013CB329006, in part by the National Science Foundation of China under Grant 61531011, Grant 61428104, Grant 61471177, and Grant 61601193, and in part by the Major Program of National Natural Science Foundation of Hubei in China under Grant 2016CFA009. (Corresponding author: Tao Jiang.) B. Liu, T. Jiang, and Y. Cao are with the School of Electronics Information and Communications, Huazhong University of Science and Technology, Wuhan 430074, China (e-mail:
[email protected];
[email protected];
[email protected]). Z. Wang is with the Department of Electrical and Computer Engineering, University of British Columbia, Vancouver, BC V6T1Z4, Canada, and also with the Wuhan National Laboratory for Optoelectronics, Huazhong University of Science and Technology, Wuhan 430074, China (e-mail:
[email protected]). Digital Object Identifier 10.1109/JIOT.2017.2714658
Fig. 1. In the future Internet, 3C resources are managed as a whole in order to handle the fluctuation demand.
Many wearable devices facing the world of IoT, such as Apple Watch, Google Glass, and Microsoft HoloLens, have been developed for novel applications, such as cognitive wearable assistance [2] and virtual reality (VR) [3]. These emerging IoT applications will surely be deployed atop of the Internet in order to access the shared 3C resources in the near future [4]. However, the existing architecture of the current Internet is based on Internet Protocols (IPs) and heavily relying on IP addresses. Thus, it may not be able to provide qualified provisioning of the 3C resources for emerging IoT applications. Specifically, the existing Internet architecture is designed to share the limited communication resources among the IP routers, as shown in the leftmost figure in Fig. 2. Any contents to be cached or processed have to be first fragmented into datagrams and then each datagram is individually forwarded to the Internet data centers (IDCs) after resolving the corresponding IP addresses, as shown in Fig. 3. This may result in an unpredictable long-haul route for delay-sensitive IoT applications (e.g., wearable cognitive assistance). Moreover, the existing Internet architecture is actually antiquated for multimedia streaming applications due to the lack of proxies, such as in-network1 data caching [5]. Thus, the existing Internet architecture will introduce additional communication latency and bandwidth wasting when used to support the emerging IoT applications in the near future. 1 In this paper, the term “in-network” refers in particular to “in-router.”
c 2017 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. 2327-4662 See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
958
Fig. 2.
IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
Architectural comparison of the existing Internet architecture, NDN, and the proposed OON.
Some substituted middleboxes have been proposed to try to upgrade the qualities of traditional Internet cloud computing with distributed 3C resource provisioning. In particular, Satyanarayanan et al. [6] proposed cloudlet, a distributed cloud computing system where the computing modules (cloudlets) are bound with dynamic IP addresses and deployed at the edge of the Internet. Meanwhile, the content delivery network was introduced to cache the same content in several surrogate servers [7]. Thereby, Internet application vendors could serve each individual consumer with the nearest surrogate server to reduce the latency and the consumption of communication resources in the core network. Nevertheless, the frequent interface-to-address mappings (e.g., domain name service manipulation, IP address resolution, network IP address transition, etc.) still cause the inevitable latency and the waste of communication bandwidth [8]. Thus, the existing Internet architecture for delay-sensitive and compute-intensive IoT applications is actually difficult and inefficient. Recently, named data networking (NDN)2 Internet architecture proposed by Zhang et al. [10] has attracted a wide attention [11]–[13]. This named-data architecture natively embeds the in-network data caching to support scalable multicast without interface-to-address mappings. Specifically, NDN architecture names and locates the contents directly (e.g., Web pages are named by Uniform Resource Locater) instead of their hosts (e.g., the servers) identified by the IP addresses. It thus enables IoT applications to access the contents cached at any nearby router without concerning where the contents are stored at and delivered from [14]. However, NDN lacks the ability of the in-network content processing required by future delay sensitive IoT applications, such as cognitive wearable assistance. That is, the content processing requests from IoT applications can only be responded by remote servers in NDN and thus long latency may be introduced. This becomes a fatal issue 2 There are other future Internet architectures adopt the same ideas as NDN with slight modifications, such as data-oriented network, Network of Information, Content-Centric Network, publish-subscribe Internet routing paradigm, Scalable and Adaptive Solutions, COntent Mediator architecture for content-aware nET-works, CONVERGENCE, etc. A detailed survey could be found in [9]. We ignore the differences in this paper if there is no explanation.
Fig. 3. Illustration of the 3C resource provisioning atop the existing Internet architecture. The computational resources (i.e., computing modules) and caching resources (i.e., memories) are managed by remote IDCs separately from the communication resources (i.e., routers).
for future IoT applications when considering that the number of IoT devices could be very large [15]–[17]. Therefore, we generalize the named-data architecture of NDN directly toward the emerging IoT applications illustrated in the rightmost figure in Fig. 2. We propose the object-oriented network (OON) architecture to provision 3C resources handled by the core network instead of the consolidated IDCs. In order to support content processing services, different from the NDN where datagrams can only be cached and fetched based on names, we extend the naming system in the proposed OON. Specifically, the proposed OON architecture refers to the datagrams with processable payloads (e.g., original video segments that can be recoded into various resolutions) as well as the cached contents as the operable objects. Thus, the existing load-balancing algorithms which are originally designed for data transmission can be seamlessly used in OON to handle the congestion and overload issues in the content processing in network layer. Hence, the proposed OON provides a low-delay Internet architecture for the distributed 3C physical resource provisioning for IoT applications.
LIU et al.: OON: NAMED-DATA ARCHITECTURE TOWARD FUTURE INTERNET
The main contributions in this paper are threefold. 1) We propose a new named-data Internet architecture with the in-network content processing abilities. Specifically, the proposed OON routers have the configurable computing modules and memories working with the virtual forwarding interfaces as the entrances to invoke predefined content processing programs. 2) With the existing congestion control protocols, we equip the proposed OON architecture with the ability of loadbalancing. Therefore, the proposed OON architecture can provision the 3C resources with little management effort. 3) We implement a prototype of the proposed OON architecture in ns-3 simulator. We show that the proposed OON outperforms NDN in terms of the frequency and durations of video stalls as well as the average video quality for the dynamically adaptive multimedia streaming (DAMS) service with IEEE 802.11a wireless interface. The rest of this paper is organized as follows. In Section II, we illustrate the architecture and the feasibility of the proposed OON architecture. In Section III, we present three typical use cases to specify the advantages of the proposed OON. Basic performance evaluations of the proposed OON are given in Section IV. Related works are reviewed in Section V. The discussions are given in Section VI. We conclude this paper in Section VII.
959
TABLE I C OMPARISON OF D ESIGN P ERSPECTIVES AND B INDINGS
Fig. 4.
Service model of the proposed OON.
computation results. Then, the proposed OON responds by taking the routes along which the objects being requested can be found. Thereby, the proposed OON architecture makes the routers merely responsible for forwarding objects to outgoing interfaces. B. Layer 4: Naming Mechanism
II. P ROPOSED OON In this section, we first explain our proposed ObjectOriented architecture from the layer 5 to the layer 2, shown in the rightmost figure in Fig. 2. We then present the proposed in-network content processing service in detail. Finally, we introduce the 3C resource provisioning and routing strategies in the proposed OON.
A. Layer 5: Service Model Considering the scale of the Internet, the packet-switching networking might be the optimal design paradigm due to its simplicity, fault tolerance, and routing efficiency [18]. It is thus reasonable to keep the packet-switching paradigm in the future Internet to preserve these benefits. In fact, most of the existing Internet architectures follow the packet-switching paradigm. However, they bind various networking entities with particular identifiers so as to rebuild the Internet from different design perspectives, such as the host-centric network (i.e., the current Internet), content-centric networks (e.g., NDN), and the mobility-centric network (i.e., MobilityFirst [19]) [20], as shown in Table I. Following the same paradigm, the proposed OON service model eliminates most of functionalities of the core network in order to simplify the architecture, as shown in Fig. 4. Specifically, the computation task of an online application built atop the proposed OON is first decomposed into multiple content processing requests for the objects that carry the
Note that the objects in the proposed OON are referred to as the named datagrams with processable payloads and cached contents. To identify these objects, the naming mechanism in OON needs to name these objects in a dynamic manner. We now introduce our dynamic naming mechanism and specify how the naming mechanism works by comparing it against the existing static naming mechanism in NDN. Different from NDN, the proposed OON adopts the term Classes3 to identify the new objects in the naming mechanism. Specifically, each Class has a unique hash function to create new names by taking the object’s birth time and the parent’s name prefix as the input. Thereby, the name of an object is with its parent’s name prefix and a distinguishable name suffix among its siblings. For example, the object with the name “\video\bunny\3000_kbit\2s1.m4vs\08c6” that belongs to Video may create an object with the name as “\video\bunny\2500_kbit\2s1.m4s\1fdc.” These hash functions are designed and maintained by Internet application vendors and network operators, respectively, in the proposed OON. Moreover, each Class is with a set of predefined communication protocols and content processing programs. Both the protocols and programs are referred to as methods4 in the proposed OON architecture. The communication protocol methods offer the functions to retrieve the named 3 In this paper, we highlight object in the Courier fonts. The concept of Class is highlighted by Courier fonts with an upper-case initial letter. Later on, the content processing method will be highlighted in Courier fonts followed by a pair of parenthesis. 4 The term “method” comes from the object-oriented programming.
960
Fig. 5. Illustration of the proposed OON router and the forwarding processes.
datagram, such as fetch(), pull(), and push(). They also support to work on the transport layer in the current Internet, such as Transport Control Protocol sockets. Content processing methods maintain some public content processing programs, such as Video::recode(), Sensor::aggregation(), Sensor::filter(), etc. C. Layers 3 and 2: OON Routers and the Forwarding Process The OON routers are the elementary units to execute content processing methods in the proposed OON architecture. The proposed OON inherits two important components of the NDN router [10]. The first component is the pending interest table (PIT). It is to cache the network interfaces where data requests with objects of Interest come from and their expire time. The second is a configurable memory referred to as the object store. It is to cache the objects of Data used in data responses in case that the identical requests may be received in the near future. Besides the aforementioned components, we extend the named-data forwarding table in NDN to class information base (CIB). which manages the entries that store the methods of Classes. We also include a novel computing module referred to as object processor to execute the content processing methods, as shown in Fig. 5. When an object of Interest arrives, an OON router first checks the object store. If the object of Data being requested exists, the router will push() the copy of the cached object of Data back to the network interface where the object of Interest comes from. Via a similar approach like this, the object of Data can be forwarded to the consumer’s device along the reverse route of the object of Interest without using IP address [10]. If the OON router does not find the object in the object store, it will check the PIT. If there exists a PIT entry caching the object that is of the interest of the data request, the router will record the incoming interface of the data request and update the lifetime of the PIT entry. The PIT entry will be maintained until the object has been sent back to the consumer or the corresponding object of Interest is expired. In the case that
IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
there is no valid PIT entry caches the object of Interest, the router will look up the CIB for the outgoing physical interface or virtual interface in order to find the object of Data cached in another OON router at the next hop or conduct the content processing with the local object processor to create a new object. Thus, the CIB in an OON router comprises the entries belonging to two categories, namely, the entries with the category of the traditional physical interfaces and the entries with the category of the virtual interfaces. The traditional physical interfaces are used by the communication protocol methods while the virtual interfaces are used by the content processing methods. The virtual interfaces are actually the subroutines of the content processing programs. A content processing request can be responded by push() the cached processable payloads to a virtual interface to invoke the content processing programs. Note that the proposed OON architecture does not specify the implementations of the algorithms contained in the content processing methods. This is to enable the IoT application vendors design their own algorithms to facilitate different IoT applications. D. In-Network Content Processing in Detail In the proposed OON, an elementary operation of the content processing is forwarding an object, also known as the parent object, to a virtual interface in the forwarding table to generate a new object, also known as the children object. A virtual interface is actually the subroutine of the corresponding content processing program. When this virtual interface is selected, the OON router will call the corresponding methods and use the object processor to generate children objects by manipulating the payloads of the parent objects. Thereby, the OON router accomplishes the in-network content processing by forwarding the objects to different virtual interfaces in the CIB. For instance, when an OON router responses the object of Interest that requests for the 1024 × 768 segment of a video, it can response the cached object of Data with the 1920 × 1080 video segment as the payload to the recode() virtual interface. Then, the virtual interface triggers the object processor to recode() the 1920×1080 video segment into a 1024×768 video segment in order to generate a new object that carries the new segment with lower resolution. Then, it will push() the new object back to the incoming interface of the object of Interest to respond to the request. However, supporting content processing within the network layer arises another challenging issue in the proposed OON. Namely, the number of names would be infinite if the content processing methods are executed frequently. Our proposed OON handles this issue by inheriting naming prefix(es) of the parent Class(es). Specifically, a parent object will use the unique hash function, owned by its Class, to generate name suffixes for the children objects, where the inputs of the hash function are the parent’s name and a time tag. The proposed OON can thus support compact routing since the names of Classes are with hierarchical structure and can be managed by a global committee [21].
LIU et al.: OON: NAMED-DATA ARCHITECTURE TOWARD FUTURE INTERNET
Fig. 6.
Two forms of the cloud computing in the proposed OON.
961
Fig. 7. Illustration of the in-network recoding in the proposed OON. Here the proposed OON architecture provisions the 3C resources of the two OON routers to offer in-network content processing service.
III. U SE C ASES E. Routing and the 3C Resource Provisioning The 3C resource provisioning in the proposed OON architecture is identical to the wide-area load-balancing in the current Internet architecture. This is because the proposed OON is a standard packet-switching network which can be modeled as a queuing system [22]. Specifically, the proposed OON router schedules the object processor to process different objects in sequence. That is, a router in the proposed OON maintains a single input and single output queue for every virtual interface. The objects are automatically dropped when congestion occurs, which is an analog to the existing Internet. Thus, the proposed OON shares in-network 3C resources among the different objects in a statistical division multiplexing fashion. To handle the issue of congestion at the virtual interfaces of the OON routers, we exploit the load-balancing schemes in the existing Internet. The scheduling of the object forwardings is the same as the scheduling of the packet forwardings in the existing Internet architecture. Therefore, the conventional loadbalancing algorithms (e.g., link states and distance vectors, shortest path, and the algorithms in Border Gateway Protocol) can be used in the proposed OON. Thus, the proposed OON can provision the in-network 3C resources provisioning with little management effort. The proposed OON architecture also supports cloud computing for future IoT applications in two forms, as shown in Fig. 6: 1) the consumer-driven form, also known as the passive form and 2) the vendor-driven form, also known as the active form. In the passive form, the actions of cloud computing are driven by consumers using Interest::pull(). For a subnetwork, the more objects of Interest for the identical content are detected, the more OON routers will cache the requesting objects of Data, and the more object processors will execute the corresponding content processing methods. It is guaranteed that the IoT application consumers to get the best-effort services. In contrast, the active form of cloud computing is driven by IoT application vendors, where the Data::push() is called.
We now illustrate the advantages of the proposed OON architecture by the following use cases in future cloud computing. A. Architecture for QoE Enhancement in Dynamic Adaptive Multimedia Streaming With the tremendous popularity of VR based on the wearable devices, DAMS becomes an increasingly significant service. The DAMS is a kind of streaming service that can dynamically deliver video segments to multiple consumers with various bitrates according to their network status [23]. Current DAMS, such as dynamic adaptive streaming over HTTP, have been widely implemented in the consolidated IDCs by Apple,5 Adobe,6 Microsoft,7 etc. However, the DAMS with the existing Internet architecture cannot fully utilize the communication resources [24]. Specifically, the current DAMS servers can only get the expired information of the network status since the link congestion control is accomplished in an end-to-end (E2E) manner. Moreover, the video segments have to be coded with fixed bitrates at dedicated places, such as IDCs, due to the lack of in-network computing modules. Both of them result in the outdated quality adaptations [25]. The proposed OON architecture enhances DAMS with innetwork recoding to accelerate the adaptations to network status as illustrated in Fig. 7. Specifically, the consumers using OON-based DAMS can determine the bitrates of video segments in real time because the nearby OON router can immediately recode() the cached video. Meanwhile, the OON router also can broadcast() the objects of Interest to request the same video from nearby OON routers. Thus, the proposed OON enables the in-network video recoding as a proximate service to reduce the latency and to save the communication resources. 5 [Online]. Available: https://developer.apple.com/streaming 6 [Online]. Available: http://www.adobe.com/devnet/hds.html 7 [Online]. Available: http://www.iis.net/downloads/microsoft/smoothstream-
ing
962
B. Architecture for Wearable Devices With Tactile Latency Wearable devices (e.g., Apple Watch, Google Glass, Microsoft HoloLens, etc.) have revealed a new paradigm of human-to-machine communications in IoT. Such humanto-machine interactions may require ultralow latency in the near future since that human users are acutely sensitive to delays [26]. As an example, a wearable cognitive assistance for a disabled person must respond within the tactile latency.8 Otherwise, it may not meet the customer’s requirement and degrade the user’s experience. However, the existing Internet architectures introduce unnecessary latency to wearable devices. On the one hand, the current cloud computing service based on IDCs cannot be satisfactory since the distance may result in long propagation delays [6]. On the other hand, the substituted cloud computing in [6] not only suffers from the frequent interfaceto-address mappings, but also results in the exceedingly high capital expenditure of deploying numerous cloudlets to ensure the availability of the proximate content processing service. The proposed OON directly leverages the ubiquitous network routers as small servers to provide the wearable cognitive assistance with the native content processing and data caching services. Specifically, any Interest object to fetch() and pull() the corresponding objects can be responded by the nearest available OON router without interface-to-address mappings. Thus, the proposed OON directly reduces the latency caused by the communication distance and the interface-to-address mappings. Thereby, the proposed OON is promising to facilitate the future cloud computing for the wearable devices in IoT. C. Robust Architecture for MapReduce Under the background of big data, MapReduce has become the most widely used platform to process the data received from IoT devices and their applications [27]. This parallel computing framework distributes compute-intensive tasks, such as genetic analysis, to distinct computing modules, so that the content processing can be accelerated proportionally with the number of computing modules. Nevertheless, the current Internet architecture introduces the brittleness into the execution of MapReduce. Specifically, the computing modules of MapReduce have to exchange instant values through the existing IP-based communication protocols. A common instant value exchange in the existing Internet involves a series of handshakes, such as service provider discovery and virtual machine identification. All of the handshakes require multiple interface-to-address mappings in the current Internet. Any failure of these can trigger a disconnection between two computing modules, and may result in the outage of the running IoT applications [27]. The proposed OON intrinsically offers MapReduce a robust architecture. In particular, the instant values exchanged in MapReduce are forwarded by the names without handshakes. Hence, there is no interface-to-address mapping and little need of the re-establishment of communication routes. Moreover, 8 One millisecond is referred as to tactile latency [26].
IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
the MapReduce embedded in the software-defined OON is also scalable. This is because the content processing programs can be rapidly installed and uninstalled by updating the entries of virtual interfaces within the S-CIBs. IV. P ROTOTYPE D EVELOPMENT AND S IMULATION R ESULTS In this section, we will present the simulations of the proposed OON architecture. We further reveal the performance improvements of the proposed OON compared with NDN. A. Software Testbed First of all, we choose DAMS as the benchmark Internet service because of the dominance of multimedia streams in the Internet data traffic and its future implementation in VR with the wearable IoT devices [3], [28]. We first develop an open-source project referred to as oonSIM9 based on the Adaptive Multimedia Streaming Framework (AMuSt) for ndnSIM [29]. AMuSt equips us with the basic functions to link the libdash and the network layer of NDN. In contrast, we create the object processor to recode() the objects of Video. Each object of Video carries a two-second video segment as its payload. Moreover, a novel OON router and the corresponding forwarding strategies are simulated to support the in-network Video::recode(). Note that for simplicity, the hash function to generate children object names is simplified as a rename function. For example, the object with the name of “\video\bunny\3000_kbit\2s1.m4s” can generate a child object with a name of “\video\bunny\2500_kbit\2s1.m4s\MD5.” As discussed in Section III-A, the quality of experience (QoE) enhancements are due to the fast reaction to the network status fluctuation [25]. Thus, we choose a wireless ad hoc network as the target scenario considering the impact of the instability of wireless links on video streaming [30]. Specifically, we set up one mobile DAMS wireless server, one mobile router, and two mobile video consumers, namely, consumer A and consumer B, in our simulation. Both of them are randomly moving in a 100 m×100 m area with the average speed of 4 m/s. The physical layer and the media access control (MAC) layer of the devices employ the 2.4 GHz band and standard 802.11a protocol while the network layer uses the protocols of the proposed OON and NDN. Here, we obtain the video quality levels by judging the least playback rate to get more than four points of mean opinion score in the Video Quality Experts Group Multimedia Test. There are four video quality levels whose playback rates ranging from 0 Kb/s [failures with pull()] to 4000 Kb/s as illustrated in Table II. Then, in order to maximize the video quality, we choose the adaptation logic of DAMS based on the transmission rate during the Video::pull(). Specifically, the consumer first estimates the future available transmission rates. Then, the device selects a proper quality level of the next object of Interest based on the estimated results [32]. 9 [Online]. Available: https://github.com/PercyLau/ns3-oon
LIU et al.: OON: NAMED-DATA ARCHITECTURE TOWARD FUTURE INTERNET
963
TABLE II R ELATIONSHIP B ETWEEN THE B ITRATE AND THE Q UALITY L EVEL [31]
(a)
(a) (b) Fig. 9. Comparison of the video quality fluctuations between the OON-based DAMS and the NDN-based DAMS with respect to (a) consumer A and (b) consumer B.
(b) Fig. 8. Comparison of the CDFs on video stalling durations between the OON-based DAMS and the NDN-based DAMS with respect to (a) consumer A and (b) consumer B.
B. Simulation Results The simulation results show that the proposed OON architecture significantly suppresses the video stalls during the playback session as illustrated in Fig. 8. Note that a point with 0 ms stall in Fig. 8 indicates the fraction of smoothly playing video segments and the point with 2000 ms stall indicates the fraction of the video segments with pull() failures. Then, the cumulative distribution function (CDF) curves in Fig. 8 indicate that the OON-based DAMS reduces 49.73% and 20.74% video stalls for consumer A and consumer B compared to the NDN-based DAMS, respectively. Moreover, they also indicate that the frequency of pull() failure can be decreased by 24.70% and 6.35% for consumer A and consumer B compared to the NDN-based DAMS, respectively. Such enhancements are due to the fact that the proposed OON architecture can dynamically adjust the segment bitrates according to the quality of wireless links. Moreover, we also record the video quality level fluctuation during the playback session of the NDN-based DAMS and the OON-based DAMS as illustrated in Fig. 9. Overall, the video quality of the OON-based DAMS is able to compete with the existing NDN-based DAMS. Especially, the average video quality of consumer A using the OON-based DAMS is significantly higher than the case using the NDN-based DAMS as illustrated in Fig. 9(a). We further calculate the CDFs of the
(a)
(b) Fig. 10. Comparison of the CDFs of the segment playback rate between the OON-based DAMS and the NDN-based DAMS with respect to (a) consumer A and (b) consumer B.
bitrates during the playback session as shown in Fig. 10. The results show that consumer B using the OON-based DAMS also outperforms the case using the NDN-based DAMS. Specifically, consumer B is with the higher density of the playback bitrates over 4 Mb/s than the case using the NDN-based DAMS as illustrated in Fig. 10(b). In summary, the conducted prototype simulations reveal significant improvements in the benchmark Internet service.
964
IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
Moreover, the performance metrics used here are proved to be the key factors of the QoE for multimedia streams [33]. Therefore, the proposed OON architecture may improve the QoE for the future Internet and IoT applications, such as the VR streaming. V. R ELATED W ORKS A. Internet Architectures for Cloud Computing The work that is closely related to ours is the named function networks (NFN) [34]. NFN enables the in-network content processing through the specified naming mechanism based on the λ-calculus and Scala procedures. Although NFN empowers the network to execute complex user expressions, it may be implicitly sensible to the network congestion. This is because the programs in NFN is executed recursively along the route toward the application vendors. Compared to NFN, the content processing programs (methods) in the proposed OON are controlled by application vendors and locally executed as illustrated in Fig. 6. That is, the proposed OON is robust to link congestions and compatible with the existing load-balancing schemes. Another related work is PacketCloud [35]. As the largescale variance of the cloudlet system, PacketCloud strives to help network operators deploy in-network services incrementally. However, the current PacketCloud is still implemented atop the existing Internet architecture. Thus, compared to the proposed OON, the current PacketCloud suffers from the existing Internet architecture and may not be able to provide qualified 3C provisioning for the emerging IoT applications. Recently, the work in [36] proposes an enhancement layer to enable NDN to support mobile edge computing. It shares the same advantages with the proposed OON, such as locationindependent naming and datagram-level security. Nevertheless, it only manipulates user-centric contents and applications in wireless networks. Meanwhile, the earliest architecture for innetwork computing is active network (AN) [37]. It envisions that routers are able to update programs to configure the forwarding tables on-the-fly. Clearly, AN has the same objectives of SDN. However, the objective of the proposed OON is to integrate content processing into the network layer. B. Internet Architectures Using Object-Oriented Methodology We now turn to discuss the network architectures which share the same name with our proposed OON. We would like to highlight that our proposed OON owns different network layers from the existing OONs [38]–[41], as shown in Table III. Specifically, it is designed for distributed 3C resource provisioning toward the cloud computing for future IoT applications. Therefore, our proposed OON possesses several exclusive features ranging from the definition to the structure of the network layer. In the OON proposed in [38], the term “object” refers to anything that needs to access or communicate within the Internet, e.g., sensing data from a sensor, a multimedia chunk, or even a mobile user. The authors established a two-tier information retrieval model embedded in the network layer.
Specifically, each datagram in [38] owns a unique informative name (i-name) for information retrieval. Meanwhile, an i-name may point to multiple physical names (p-names) that indicate the actual IPs of the data containers. Compared to [38], our proposed OON focuses on in-network content processing so that we design an inheritable naming mechanism to generate new datagrams in our proposed OON routers. Postol [39] proposed a service-oriented architecture to provide robust interoperability for the network operators and Internet application vendors. The works in [40] and [41] aimed to build up the network management and information system with object-oriented methodology. The networks proposed in [39]–[41] are not packet-switching networks. In contrast, our proposed OON is based on the packet-switching paradigm and aims to provide in-network content processing services for the emerging IoT applications. VI. D ISCUSSION A. Security Security is critical to the IoT applications. In named-data architectures, e.g., NDN, each content chunk is encrypted with a hash key (e.g., MD5) published by the corresponding application vendor. These hash keys are pretransmitted to the consumers through trusted networks. Any objects in the network must be validated before being received. Moreover, if necessary, these objects can also be signed at the time of creation and the name prefixes of parent objects, to establish the authentication chain. Different from NDN, the proposed OON only allows Class holders (i.e., application vendors) to distribute the hash keys together with the network operators. Compared to the existing Internet architecture, this datagram-level security decreases redundancy in the current Internet security mechanism. B. Mobility The interplay between the Internet and mobile networks is another essential issue in future Internet architecture design. Specifically, the mobility of Internet consumers arises novel challenges, such as location-aware binding (e.g., mobile IP), multihoming binding (e.g., multipath delivery), and late binding (e.g., temporarily disconnected) [19]. The named-data architectures have already solved location-aware binding and multihoming binding problems, especially in the broadcast and multicast scenarios [10]. For example, mobile data transfer of the current Internet is bound to a fixed network air interface unless the consumer opens new connections. In contrast, the proposed OON is content-centric and can switch between multiple available air interfaces. Nevertheless, there are some shreds of evidence showing that it requires global controllers to solve the late binding problem [19]. C. Flexibility The proposed OON is designed based on the End-toEnd (E2E) principle which is the key to the success of the current Internet. In particular, following the E2E arguments [18], the proposed OON only accomplishes the most fundamental
LIU et al.: OON: NAMED-DATA ARCHITECTURE TOWARD FUTURE INTERNET
965
TABLE III N ETWORK L AYER OF THE OON S
functionalities (i.e., elementary operation) for cloud computing. The high-level functionalities, such as reliable routing, energy efficient computing, and low-delay caching, are left to the provisioning strategy as shown in the rightmost figure in Fig. 2. Therefore, the proposed OON can handle various types of IoT applications [18]. D. Implementation Issues and Software-Defined OON Similar to most novel networking techniques, replacing the existing Internet architecture with to the proposed OON involves not only the technical challenges but also economic issues. Therefore, the network operators may prefer to upgrade the networks incrementally. Clearly, it is necessary for us to enable the proposed OON to co-exist with the existing Internet architecture. Software-defined networking (SDN) introduces an identifier-independence means of building packet-switching networks. In SDN, the control plane is physically separated from forwarding tables so that forwarding datagrams are controlled by the software instead of the fixed identifier matching rules [42], [43]. This enables the programmable data plane of SDN match with arbitrary identifiers (e.g., MAC addresses, IP addresses, and the proposed names) and translate them to each other back and forth. Therefore, SDN can be used to connect the proposed OON with IP-based existing Internet by simply installing new plug-in modules into SDN controllers. It thus bypasses the necessity to upgrade the full network. Moreover, the programmatic control over the proposed OON may also improve the performance of the proposed OON. Specifically, the SDN controller can learn from the global historical information of in-network caching and content processing, and adjusts the routing policies for different Internet applications. For example, a content processing request may be responded by multiple idle OON routers and SDN controller can compute the optimal one to maximize the sum of network utilities. Thereby, the 3C resources of the proposed OON can be fairly provisioned to Internet applications by employing proper load-balancing schemes in SDN. In order to realize the Software-defined CIBs (S-CIBs) in the proposed OON, the OON control plane and the OON data plane are separated as shown in Fig. 11. The proposed OON control plane manages and implements both the communication protocols and the content processing programs. Meanwhile, the configurable object store and object processor are maintained in the OON data plane. Hereby, the ideal SDN routers are able to route datagrams with the names of objects.
Fig. 11.
Control plane and the data plane of the proposed OON.
From the in-network content processing perspective, SDN technology also reduces the complexity to implement the object processors in the OON routers. Specifically, SDN routers have been currently equipped with universal operating system (e.g., Linux) and high-volume disks toward the future cloud computing using the existing Internet architecture. For example, Cisco has published its next-generation SDN routers equipped with the computing modules and memories to enable a distributed compute environment referred to as Fog computing [44], [45]. E. Future Work The simulation of the proposed OON is still in its early stage. For example, the number of IoT devices will be very large in the near future [15]–[17]. We will conduct more comprehensive simulations of the proposed OON by considering that a large number of IoT devices may request the in-network processing service simultaneously. Furthermore, the implementation issues about the proposed OON architecture still remain open, such as the tradeoff between object processor load and communication load. Also, determining the proper size of the object is challenging because of the different requirements of IoT applications. Therefore, our future work includes the study of the object fragmentation in various physical layer protocols, the establishment of a standard mathematic model of the proposed OON, and a detailed implementation of virtual interfaces and object processors for various IoT applications. VII. C ONCLUSION In this paper, we proposed a novel OON architecture for the future delay-sensitive and computationally intensive IoT applications by exploiting the in-network data caching and content processing capability. Therefore, it readily fitted the requirements of the compute-intensive and delay-sensitive Internet applications. Moreover, the 3C resource provisioning could
966
IEEE INTERNET OF THINGS JOURNAL, VOL. 4, NO. 4, AUGUST 2017
be implemented with marginally changes on the existing load-balancing schemes. Then, three typical use cases were listed to illustrate the potential advantages of our proposed OON. Finally, we developed a prototype for DAMS to show the superior performances of the proposed OON compared to NDN, which revealed that the proposed OON offered a favorable guidance for the future Internet. R EFERENCES [1] B. Ahlgren et al., “Content, connectivity, and cloud: Ingredients for the network of the future,” IEEE Commun. Mag., vol. 49, no. 7, pp. 62–70, Jul. 2011. [2] K. Ha et al., “Towards wearable cognitive assistance,” in Proc. ACM SIGMOBILE MobiSys, Bretton Woods, NH, USA, Jun. 2014, pp. 68–81. [3] M. Crespi. (2015). Why the Internet of Things and Virtual Reality Are Strictly Related. [Online]. Available: https://www.linkedin.com/ pulse/why-internet-things-virtual-reality-strictly-related-mattia-crespi [4] J. Lin et al., “A survey on Internet of Things: Architecture, enabling technologies, security and privacy, and applications,” IEEE Internet Things J., to be published, doi: 10.1109/JIOT.2017.2683200. [5] L. Popa, A. Ghodsi, and I. Stoica, “HTTP as the narrow waist of the future Internet,” in Proc. ACM SIGCOMM Workshop Hot Topics Netw., Monterey, CA, USA, Oct. 2010. [6] M. Satyanarayanan et al., “An open ecosystem for mobile-cloud convergence,” IEEE Commun. Mag., vol. 53, no. 3, pp. 63–70, Mar. 2015. [7] G. Pallis and A. Vakali, “Insight and perspectives for content delivery networks,” Commun. ACM, vol. 49, no. 1, pp. 101–106, Jan. 2006. [8] S. Hong, B.-J. B. Lee, C.-M. C. Yoo, M.-S. Do, and J. Son, “Comparative study of content-centric vs. content delivery networks,” in Proc. Int. Conf. Future Internet, Seoul, South Korea, Jun. 2015, pp. 35–40. [9] G. Xylomenos et al., “A survey of information-centric networking research,” IEEE Commun. Surveys Tuts., vol. 16, no. 2, pp. 1024–1049, 2nd Quart., 2014. [10] L. Zhang et al., “Named data networking,” ACM SIGCOMM Comput. Commun. Rev., vol. 44, no. 3, pp. 66–73, Jul. 2014. [11] E. Baccelli, C. Mehlis, O. Hahm, T. C. Schmidt, and M. Wählisch, “Information centric networking in the IoT: Experiments with NDN in the wild,” in Proc. Int. Conf. Inf. Centric Netw., Paris, France, Sep. 2014, pp. 77–86. [12] U. De Silva, A. Lertsinsrubtavee, A. Sathiaseelan, and K. Kanchanasut, “Named data networking based smart home lighting,” in Proc. Conf. ACM SIGCOMM, Florianópolis, Brazil, Aug. 2016, pp. 573–574. [13] S. H. Bouk, S. H. Ahmed, D. Kim, and H. Song, “Named-datanetworking-based ITS for smart cities,” IEEE Commun. Mag., vol. 55, no. 1, pp. 105–111, Jan. 2017. [14] W. Shang et al., “Named data networking of things,” in Proc. IEEE Int. Conf. Internet Things Design Implement., Berlin, Germany, Apr. 2016, pp. 117–128. [15] R. Want, B. N. Schilit, and S. Jenson, “Enabling the Internet of Things,” IEEE Comput., vol. 48, no. 1, pp. 28–35, Jan. 2015. [16] Y. Cao, T. Jiang, and Z. Han, “A survey of emerging M2M systems: Context, task, and objective,” IEEE Internet Things J., vol. 3, no. 6, pp. 1246–1258, Dec. 2016. [17] Z. Wang and V. W. S. Wong, “Optimal access class barring for stationary machine type communication devices with timing advance information,” IEEE Trans. Wireless Commun., vol. 14, no. 10, pp. 5374–5387, Oct. 2015. [18] J. H. Saltzer, D. P. Reed, and D. Clark, “End-to-end arguments in system design,” ACM Trans. Comput. Syst., vol. 2, no. 4, pp. 277–288, Nov. 1984. [19] A. Venkataramani et al., “MobilityFirst: A mobility-centric and trustworthy Internet architecture,” ACM SIGCOMM Comput. Commun. Rev., vol. 44, no. 3, pp. 74–80, Jul. 2014. [20] H. Zhang, W. Quan, H.-C. Chao, and C. Qiao, “Smart identifier network: A collaborative architecture for the future Internet,” IEEE Netw., vol. 30, no. 3, pp. 46–51, May/Jun. 2016. [21] D. Krioukov, K. C. Claffy, K. Fall, and A. Brady, “On compact routing for the Internet,” ACM SIGCOMM Comput. Commun. Rev., vol. 37, no. 3, pp. 41–52, Jul. 2007.
[22] R. Srikant and L. Ying, Communication Networks: An Optimization, Control, and Stochastic Networks Perspective. Cambridge, U.K.: Cambridge Univ. Press, 2013, ch. 4, pp. 86–88. [23] H. Zhu, Y. Cao, W. Wang, B. Liu, and T. Jiang, “QoE-aware resource allocation for adaptive device-to-device video streaming,” IEEE Netw., vol. 29, no. 6, pp. 6–12, Nov./Dec. 2015. [24] B. Rainer, D. Posch, and H. Hellwagner, “Investigating the performance of pull-based dynamic adaptive streaming in NDN,” IEEE J. Sel. Areas Commun., vol. 34, no. 8, pp. 2130–2140, Aug. 2016. [25] F. Bronzino et al., “In-network compute extensions for rate-adaptive content delivery in mobile networks,” in Proc. IEEE Int. Conf. Netw. Protocols, Raleigh, NC, USA, Oct. 2014, pp. 511–517. [26] G. P. Fettweis, “The tactile Internet: Applications and challenges,” IEEE Veh. Technol. Mag., vol. 9, no. 1, pp. 64–70, Mar. 2014. [27] S. Yu, M. Liu, W. Dou, X. Liu, and S. Zhou, “Networking for big data: A survey,” IEEE Commun. Surveys Tuts., vol. 19, no. 1, pp. 531–549, 1st Quart., 2017. [28] Cisco Visual Networking Index: Global Mobile Data Traffic Forecast Update, 2015-2020 White Paper, Cisco, San Jose, CA, USA, 2016. [Online]. Available: http://www.cisco.com/c/en/us/solutions/collateral/ service-provider/visual-networking-index-vni/mobile-white-paper-c11520862.html [29] C. Kreuzberger, D. Posch, and H. Hellwagner. (2016). AMuSt Framework-Adaptive Multimedia Streaming Simulation Framework for ns-3 and ndnSIM. [Online]. Available: http://github.com/ ChristianKreuzberger/amust-simulator [30] Z. He, S. Mao, and T. Jiang, “A survey of QoE-driven video streaming over cognitive radio networks,” IEEE Netw., vol. 29, no. 6, pp. 20–25, Nov./Dec. 2015. [31] G. Cermak, M. Pinson, and S. Wolf, “The relationship among video quality, screen resolution, and bit rate,” IEEE Trans. Broadcast., vol. 57, no. 2, pp. 258–262, Jun. 2011. [32] T. Stockhammer, “Dynamic adaptive streaming over HTTP—Standards and design principles,” in Proc. ACM Conf. Multimedia Syst., San Jose, CA, USA, Feb. 2011, pp. 133–144. [33] S. Egger, T. Hossfeld, R. Schatz, and M. Fiedler, “Waiting times in quality of experience for Web based services,” in Proc. Int. Workshop Qual. Multimedia Exp., Melbourne, VIC, Australia, Jul. 2012, pp. 86–96. [34] M. Sifalakis, B. Kohler, C. Christopher, and C. Tschudin, “An information centric network for computing the distribution of computations,” in Proc. ACM Conf. Inf. Centric Netw., Paris, France, Sep. 2014, pp. 137–146. [35] Y. Chen, Y. Chen, Q. Cao, and X. Yang, “PacketCloud: A cloudlet-based open platform for in-network services,” IEEE Trans. Parallel Distrib. Syst., vol. 27, no. 4, pp. 1146–1159, Apr. 2016. [36] M. Amadeo, C. Campolo, and A. Molinaro, “NDNe: Enhancing named data networking to support cloudification at the edge,” IEEE Commun. Lett., vol. 20, no. 11, pp. 2264–2267, Nov. 2016. [37] D. L. Tennenhouse, J. M. Smith, W. D. Sincoskie, D. J. Wetherall, and G. J. Minden, “A survey of active network research,” IEEE Commun. Mag., vol. 35, no. 1, pp. 80–86, Jan. 1997. [38] P. Georgatsos, P. Flegkas, V. Sourlas, and L. Tassiulas, “Object-oriented networking,” arXiv preprint, vol. arXiv:1502.07495v1, 2015. [39] M. Postol, “Object oriented Internet,” in Proc. Federated Conf. Comput. Sci. Inf. Syst., Lodz, Poland, Sep. 2015, pp. 1069–1080. [40] S. Bapat, Object-Oriented Networks: Models for Architecture, Operations, and Management. Upper Saddle River, NJ, USA: Prentice-Hall, 1994. [41] C. Kroll, “Object oriented network operation, administration and management,” in Proc. IEEE Symp. Comput. Commun., Alexandria, Egypt, 1995, pp. 50–56. [42] W. Wang, Y. Chen, Q. Zhang, and T. Jiang, “A software-defined wireless networking enabled spectrum management architecture,” IEEE Commun. Mag., vol. 54, no. 1, pp. 33–39, Jan. 2016. [43] D. B. Rawat and S. R. Reddy, “Software defined networking architecture, security and energy efficiency: A survey,” IEEE Commun. Surveys Tuts., vol. 19, no. 1, pp. 325–346, 1st Quart., 2017. [44] White Paper. (2015). Cisco Fog Computing Solutions: Unleash the Power of the Internet of Things. [Online]. Available: https:// www.cisco.com/web/solutions/trends/iot/docs/computing-solutions.pdf [45] F. Bonomi, R. Milito, J. Zhu, and S. Addepalli, “Fog computing and its role in the Internet of Things,” in Proc. SIGCOMM MCC Workshop, Helsinki, Finland, Aug. 2012, pp. 13–16.
LIU et al.: OON: NAMED-DATA ARCHITECTURE TOWARD FUTURE INTERNET
967
Boxi Liu (S’15) received the B.S. degree in electronics and information engineering from the Huazhong University of Science and Technology, Wuhan, China, in 2014, where he is currently pursuing the Ph.D. degree at the School of Electronics Information and Communications. He is currently with the Yale Institute of Network Science, Yale University, New Haven, CT, USA, as a Visiting Research Assistant. His current research interests include network optimization and named-data networking with an emphasis on video delivery.
Zehua Wang (S’11–M’17) received the B.Eng. degree in software engineering from Wuhan University, Wuhan, China, in 2009, the M.Eng. degree in electrical and computer engineering from the Memorial University of Newfoundland, St. John’s, NL, Canada, in 2011, and the Ph.D. degree from the University of British Columbia (UBC), Vancouver, BC, Canada, in 2016. He is currently a Post-Doctoral Research Fellow with UBC and an Applied Research Engineering Scientist with Left Inc., Maple Ridge, BC, Canada. His current research interests include convex optimization, device-to-device communications, social networks, machine-type communications, and routing and forwarding in mobile ad hoc networks. Dr. Wang was a recipient of the Chinese Government Award for Outstanding Self-Financed Students Abroad in 2015, the Four Year Doctoral Fellowship at UBC from 2012 to 2016, and the Graduate Support Initiative Award at UBC in 2014 and 2015. He served as the Technical Program Committee (TPC) Co-Chair of the 2017 IEEE International Workshop on Smart Multimedia. He also served as a TPC member for various conferences including the IEEE International Conference on Communications, the IEEE Global Communications Conference, and the IEEE Vehicular Technology Conference.
Tao Jiang (M’06–SM’10) received the Ph.D. degree in information and communication engineering from the Huazhong University of Science and Technology, Wuhan, China, in 2004. He is currently a Distinguished Professor with the Wuhan National Laboratory for Optoelectronics, School of Electronics Information and Communications, Huazhong University of Science and Technology. From 2004 to 2007, he was with several universities, including Brunel University, Uxbridge, U.K., and the University of Michigan–Dearborn, Dearborn, MI, USA, respectively. He has authored or co-authored over 200 technical papers in major journals and conferences and 8 books/chapters in the areas of communications and networks. Dr. Jiang was a recipient of the NSFC for Distinguished Young Scholars Award in 2013 and the Most Cited Chinese Researchers Award by Elsevier in 2014, 2015, and 2016. He served or is serving as a Symposium Technical Program Committee member of some major IEEE conferences, including INFOCOM, GLOBECOM, and ICC. He was invited to serve as the TPC Symposium Chair for IEEE GLOBECOM 2013, IEEE WCNC 2013, and ICCC 2013. He served or is serving as an Associate Editor of some technical journals in communications, including the IEEE T RANSACTIONS ON S IGNAL P ROCESSING , IEEE C OMMUNICATIONS S URVEYS AND T UTORIALS, IEEE T RANSACTIONS ON V EHICULAR T ECHNOLOGY, and IEEE I NTERNET OF T HINGS J OURNAL. He is an Associate Editor-in-Chief of China Communications.
Yang Cao (S’09–M’14) received the B.S. and Ph.D. degrees in information and communication engineering from the Huazhong University of Science and Technology, Wuhan, China, in 2014 and 2009, respectively. He is currently an Assistant Professor with the School of Electronic Information and Communications, Huazhong University of Science and Technology. From 2011 to 2013, he was with the School of Electrical, Computer, and Energy Engineering, Arizona State University, Tempe, AZ, USA, as a Visiting Scholar. He has co-authored 38 papers in refereed IEEE journals and conferences. His current research interests include 5G cellular networks, Internet of Things, and future networks. Dr. Cao was a recipient of the CHINACOM Best Paper Award in 2010 and the Microsoft Research Fellowship in 2011.