Comparative study of power consumption of a NetFPGA-based forwarding node in publish–subscribe Internet routing

Comparative study of power consumption of a NetFPGA-based forwarding node in publish–subscribe Internet routing

Computer Communications 44 (2014) 36–43 Contents lists available at ScienceDirect Computer Communications journal homepage: www.elsevier.com/locate/...

2MB Sizes 0 Downloads 37 Views

Computer Communications 44 (2014) 36–43

Contents lists available at ScienceDirect

Computer Communications journal homepage: www.elsevier.com/locate/comcom

Comparative study of power consumption of a NetFPGA-based forwarding node in publish–subscribe Internet routing Xing Zheng a,b,1, Xiaojun Wang b,⇑,1 a b

Microelectronic CAD Center, Hangzhou Dianzi University, Hangzhou 310018, China School of Electronic Engineering, Dublin City University, Dublin 9, Ireland

a r t i c l e

i n f o

Article history: Received 30 July 2013 Received in revised form 15 February 2014 Accepted 19 February 2014 Available online 28 February 2014 Keywords: Information centric network Bloom filter Publish/subscribe paradigm NetFPGA Energy efficiency

a b s t r a c t Making the Internet more energy efficient is one of the objectives of future Internet research because of the rising energy cost and environmental concerns. As most Internet users are only interested in accessing information and not the physical location of it, there is also active research on evolving the current host-centric network architecture to an information-centric network (ICN) architecture, which also promises better support for security and mobility. This paper focuses on examining the power consumption of a routing node in ICN. It is experimentally demonstrated that the Bloom filter based forwarding node in ICN is more energy efficient than the longest prefix match based forwarding in the current host-centric network. The experiments were conducted on a Bloom filter (zFilter) forwarding node implemented on the open-source NetFPGA platform. The results in the paper show that using identical operation frequency and packet size of 60 bytes, the zFilter consumes less power than the IPv4 reference router by up to 3.5%. By reducing the operational core frequency, the zFilter at 62.5 MHz can reduce the total power by 9.9–13.8% and FPGA power by 17.8–26.1% compared to the reference router at 125 MHz, while still outperforming the reference router in terms of the packet loss and throughput. In addition, per packet energy consumption is evaluated for the zFilter and it is shown that the zFilter lowers the per packet energy consumption by up to 41.6% when compared with the IPv4 reference router. Ó 2014 Elsevier B.V. All rights reserved.

1. Introduction A major challenge facing the Internet today is energy consumption. Analyst Gartner [1] estimates that the telecommunication industry produces 2% of global CO2 emissions and this figure is estimated to grow at 6% per year as more and more devices are connected to the Internet. As the direct carbon footprint of the telecommunications industry is dominated by electricity consumption, an energy efficient approach to networking is a vital consideration in designing the future Internet. To reduce the energy consumption of the Internet, research has focused on the most power-consuming networking components [2–4], such as the routing devices. For enabling more energy-efficient routers, a number of green technologies have been proposed, including [4–10]: (i) smart standby (i.e. the router enters into low energy modes with only the basic functionalities performed); (ii) dynamically adapting the router capacity to the current throughput; (iii) dynamic frequency scaling and voltage scaling; (iv) clock ⇑ Corresponding author. Tel.: +353 1 7005808; fax: +353 1 7005508. 1

E-mail address: [email protected] (X. Wang). These authors were equally responsible for the work described in the paper.

http://dx.doi.org/10.1016/j.comcom.2014.02.015 0140-3664/Ó 2014 Elsevier B.V. All rights reserved.

gating and power gating (i.e. turn off the clock and power of devices or internal blocks when they are not used); (v) adjusting the network traffic load by routing traffic through different paths and maximizing the number of links that can be put into sleep mode. As presented in [4–10], these techniques can offer considerable improvement on energy efficiency; on the other hand, it is also worth considering other schemes such as employing more energy efficient forwarding and routing mechanisms, which may further reduce the energy consumption. The current Internet is dominated by Internet protocol (IP)based routing and forwarding [11,12]. IP is a host-centric networking protocol [13,14] where communication is based on the physical location of the information and a sender can send any information to any other node on the Internet. One of the disadvantages of this principle is the imbalance of power in favor of the sender of information, who is overly trusted [12,15]. This leads the networks to accept any information that senders want to send and to deliver it to the receivers with the best effort. Spam emails and distributed denial of service (DDoS) attacks are examples of this drawback which not only waste the Internet bandwidth, but also waste the energy to transmit unwanted information over the Internet. It is possible to introduce control and authorization mechanisms (at

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

the network or application levels), such as deep packet inspection and spam filters, to prevent unwanted sender originated traffic in the Internet, but this will also introduce extra power consumption as well. Moreover, the host-based nature of the current Internet also causes other drawbacks including [13]: (i) the continuous end-to-end connectivity cannot be fully achieved while the endhost device is on the move; (ii) the request of information is dependent on accessing a particular server or host which may not be the optimum location where it is hosted. To overcome these disadvantages, people have focused their research attention on the information-centric networks (ICN) [13,14], in which the users are only concerned about accessing information, irrespective of its physical location. Compared to host-centric networks, ICN has several salient advantages including efficient access and distribution of information, mobility support, and more importantly, better network security [13,14]. In particular, the publish/subscribe networks [15–17], as one type of ICN, has attracted lots of research interest in recent years. In this strategy, the senders only ‘‘publish’’ what they want to send and the receivers only ‘‘subscribe’’ to the content they wish to receive. In theory, nobody receives any content that has not been explicitly ‘‘subscribed’’ to. Therefore, the publish/subscribe scheme can effectively solve security problems of the spam email and DDoS. Moreover, the publish/subscribe scheme can decouple the publication and subscription operation in time and space, allowing efficient support of mobility (e.g. mobile node can reissue the subscription after handoffs and these subscription may be directed to the nearby cache rather than the original publisher). In the publish/subscribe networks [17], the data-oriented naming, efficient multicast and in-network caching are required, which cannot be fully satisfied by the current IP based unicast and multicast. For fully supporting these requirements, the Bloom filter-based [18] zFilter scheme (implemented on the NetFPGA board [11]) has been proposed. zFilter forwarding is based on identifying links instead of nodes and it encodes the forwarding information into the packet header using Bloom filter. This mechanism enables the forwarding to be independent on the end-toend addressing, and is more efficient than the current IP based forwarding and routing due to its very simple forwarding decisions. The simplicity of the forwarding decision of zFilters raises an interesting question: can the zFilter scheme bring any benefit in power efficiency? In this paper, extensive experiments are conducted to compare the energy consumption of the zFilter and the IP version 4 (IPv4) reference router for exploring this issue. The major contributions of the paper are therefore to evaluate the energy efficiency operation of the zFilter forwarding node in detail and simultaneously explore its potential for enabling an energyefficient routing device. Adding to the research presented in [11], the thrust of the present paper is to investigate the forwarding capability of the zFilter, by examining the throughput and packet loss under different operational core frequencies. For practically implementing a zFilter forwarding node, the open source reprogrammable hardware platform NetFPGA [6,19–22] is used in the experiments. Frequency scaling [6,20,21] technique is also used in the experiments. The experiments show that (i) at identical operational core frequency and the packet size of 60 bytes, the zFilter can reduce power consumption by up to 3.5% when compared with the reference router; (ii) the zFilter at 62.5 MHz consumes 9.9–13.8% less total power and 17.8–26.1% less field programmable gate array (FPGA) chip power than the reference router at 125 MHz while still maintaining a better forwarding performance in terms of the throughput and packet loss; (iii) at identical operational core frequency, the per packet energy consumption of the zFilter is up to 41.6% less than that of the reference router. Based on the findings in this paper, it is expected that significant power savings

37

can be obtained if the zFilter forwarding nodes are deployed in future publish/subscribe based Internet architectures. The rest of the paper is organized as follows. Section 2 provides a general background for the forwarding mechanisms of the zFilter and reference router. Section 3 describes the experimental setup. Section 4 discusses the results and conclusions are drawn in Section 5. 2. The forwarding mechanism of zFilter and reference router In this section, the forwarding principles of the zFilter and the reference router are described briefly to provide a general background of the zFilter forwarding node [11] and the IPv4 reference router [23]. Both the zFilter and the reference router have been implemented on the NetFPGA platform in other projects [23]. 2.1. zFilter The zFilter forwarding mechanism is implemented using a Bloom filter-based matching technique, and using link identifiers instead of node identifiers. In Fig. 1, the forwarding principle of the zFilter (originates from [17]) is illustrated. In this scheme, each forwarding node contains a Link ID per port to identify a link in each direction. The Link ID is an m-bit long binary sequence with k bits set to 1. The discussion regarding the proper values of the m and k can be found in [17]. The forwarding information can be constructed in a Bloom filter fashion by encoding all the Link IDs spanning the delivery tree into the zFilter. After the zFilter has been formed with the created Bloom filter, the source code inserts the zFilter in the packet header. Once the zFilter forwarding node receives a packet, it performs an AND operation between the zFilter forwarding information in the packet header and the outgoing Link ID of each link as well as a comparison operation between the result of the AND operation and the outgoing Link ID of each link. The packet is forwarded out on any matching link after the comparison operation. Detailed descriptions of the Bloom filter technique and the zFilter forwarding node can be found in [11,17]. A major problem with the Bloom filter is that the matching may be accompanied with some false positives. That is, the packet is forwarded along a link which was not added to the zFilter, generating extra traffic. To eliminate the possible false positives, Link ID Tags are introduced as an addition to the plain Link IDs [11]. Moreover, for fast recovering from link transmission failure, [11] proposes two effective solutions by either using preconfigured virtual links (i.e. use the same zFilter but activates an alternative path) or adding an alternative path to the zFilter in the packet header. In addition, the existence of possible false positives means that there is a possibility of packet loops in the networks and the TTL-like field can be used in the packet header for removing looping packets in the networks [11]. It should be mentioned that other works such as [19,24] explore different methods of making use of Bloom filters more securely by using dynamic Link IDs. [19] also shows how greater security can be attained by using Moustique [25] and advanced encryption standard (AES) Block Cipher techniques [26]. However, these techniques are not implemented on the router we tested. 2.2. Reference router The IPv4 reference router uses the longest prefix match (LPM) lookup for forwarding [23,27,28]. As shown in Fig. 2, the router stores IP prefixes as the entries in the routing lookup table. Because the destination address may match several routing table entries, the LPM is performed to find the most specific routing table entry with the longest prefix (or subnet mask). To operate a fast LPM,

38

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

Fig. 1. The schematic diagram of the Bloom filter-based zFilter forwarding principle.

Fig. 2. The forwarding principle of the reference router.

content addressable memory (CAM)/ternary CAM (TCAM) [27] is utilized in the reference router, which is an associative memory with the capability of searching the content within all the entries in parallel. In the CAM/TCAM, the prefixes are stored in the order of the prefix length (i.e. the prefixes with longer length are located in the lower addresses). For a search operation, the destination address is compared with all the prefixes and the matched results are sent to the priority encoder for generating the lowest address among all the matched entries. This coded address coincides with the LPM entry address due to the way in which the prefixes are stored [28]. Once the LPM is completed, the packets are finally sent through the port corresponding to the LPM entry. More detailed discussions of the LPM and CAM/TCAM can be found in [27–29]. 3. Experimental setup The experimental testing system is shown in Fig. 3. It consists of a packet generator, a NetFPGA-based zFilter forwarding node (or a reference router) and an energy measurement tool kit. One NetFPGA board is configured as a zFilter forwarding node (or a refer-

ence router), based on the open source project of the zFilter (or the reference router). The clock frequency of the NetFPGA, which is the core logic frequency, can be toggled between 125 MHz and 62.5 MHz by setting the value of the register in location 0  0050 to 1 or 0. To host the NetFPGA zFilter forwarding node (or reference router), one personal computer (PC) with an Intel 2.93 GHz CPU and CentOS 5.5 operating system is used. The NetFPGA board is inserted on the top of a peripheral component interconnect (PCI) bus extender (coded PCIEXT64UB by Ultraview Inc. [30]) and the PCI bus extender is installed into the motherboard slot of the host PC. The PCI bus extender collects 3.3 V and 5 V signals from the NetFPGA board, which correspond to different power components consumed in the NetFPGA board: the 3.3 V signal represents the power mainly consumed by the Xilinx Virtex II Pro FPGA chip which is configured as a zFilter forwarding node (or as a reference router) on the NetFPGA card and the 5 V signal relates with the physical layer (PHY) and media access control (MAC) chips on the same NetFPGA card. The National Instruments data acquisition (DAQ) device, NI USB-6251 is adopted in the experiments for collecting the power from the PCI bus extender. Probes from the DAQ [31] are connected to the 3.3 V signal and the 5 V signal on the PCI bus extender.

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

39

Fig. 3. The experimental system.

For tracking the power measurements, a PC running LabVIEW software is utilized. The DAQ is connected to this PC via a universal serial bus (USB) link. LabVIEW controls the DAQ, tracks measurements and calculates their average. Three million samples are taken by the DAQ at 764,000 samples a second, which is the maximum sampling rate supported by the USB-6251 DAQ. Another NetFPGA board is configured as a packet generator [23] and acts as the traffic source and sink, which generates traffic with various data rates, transmits the traffic to the zFilter forwarding node (or the IPv4 reference router) and receives the forwarded packets from the zFilter forwarding node (or the IPv4 reference router). The sending/receiving statistics can be effectively obtained at the destination port of the packet generator. A PC with CentOS 5.5 is used to host this NetFPGA configured packet generator. The packet sizes of 60 bytes, 580 bytes, 760 bytes, 1200 bytes and 1500 bytes are adopted in the experiments, which are typical packet sizes in real network traffic [32]. For generating these packets, five sets of PCAP files are created by using wireshark software [23], each of which corresponds to one packet size and includes four different PCAP files (i.e. for one packet size, four PCAP files are used for generating four packet streams which are routed with different four paths). The PCAP files contain the zFilter forwarding information (or IP source addresses and destination addresses), which are recognized and used by the NetFPGA packet generator. For the IPv4 reference router, the possible packet drops can be seen from the java graphical user interface (GUI). For the zFilter forwarding node, sending and receiving statistics can also be monitored through the monitor supplied by the zFilter project [23]. 4. Results To have a comprehensive understanding of the power consumption of the zFilter and the reference router, we ran two groups of experiments: (1) power consumption without traffic and (2) power consumption with traffic load. Based on these experiments, the energy savings of the zFilter are demonstrated and the per packet energy consumption is calculated and compared between the zFilter and the reference router. In addition, the packet loss rate and throughput are also shown for both the zFilter and the reference router.

Fig. 4. Power consumption without traffic for zFilter and reference router.

number of activated ports, which is almost identical to that of the IPv4 reference router. Activating one port increases power consumption by approximately one watt. This linear increase in power consumption is mainly attributed to the operations of the PHY and MAC chips for each activated connection, as identified in [6]. By scaling down the frequency of the zFilter from 125 MHz to 62.5 MHz, approximately 10.5% power saving can be obtained when four ports are on. The power reduction is mainly contributed by the 3.3 V power component, as shown in Fig. 5 where the zFilter at 62.5 MHz consumes 25.7% less power in the 3.3 V power component than the IPv4 reference router at 125 MHz. This comparison is made as the zFilter at 62.5 MHz can achieve better forwarding performance than the reference router at 125 MHz (as discussed in Section 4.2).

4.1. Power consumption without traffic In this subsection, the power consumption of the zFilter (or reference router) is measured under the condition where the NetFPGA board is configured with the zFilter (or reference router) bitfiles but no traffic is sent to the zFilter (or reference router). For this measurement, the power consumption is tracked while the number of activated Ethernet ports is increased one by one. In Fig. 4, it can be seen that the power consumption of the zFilter forwarding node increases linearly with the increase in the

Fig. 5. Power comparison for the 3.3 V power components when the frequency of the zFilter is scaled down to 62.5 MHz – without traffic.

40

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

4.2. Power consumption with traffic load and forwarding capability The power consumption results presented in Sections 4.2–4.4 have all been measured when there are traffic input into the zFilter (or the reference router), and the zFilter (or the reference router) performs packet forwarding function. The power measurements are taken at aggregated traffic loads from 400 Mb/s to 4000 Mb/s, in 400 Mb/s increments, on the NetFPGA card. It should be mentioned that to perform the IPv4 forwarding, the forwarding tables of the zFilter and reference router are configured by the processes described in [23]. The forwarding table of the zFilter contains 32 routing entries and the IPv4 reference router also has 32 entries in its routing table. In Fig. 6, the power consumption vs. input traffic loads are shown for the zFilter and the reference router. The results for traffic of 1500 byte packets and traffic with 60 byte packets are shown in Fig. 6(a) and (b) respectively. For the zFilter and reference router, the power consumption is increased with the increase of traffic load until packets are dropped above a certain packet rate. It can be seen that for the 1500 byte packets, the zFilter consumes almost identical power to that of the reference router (at some bit rates, the zFilter has slightly lower power consumption than the reference router), while for the 60 byte packets, the zFilter consumes up to 3.5% less power than the reference router. Those results are mainly due to the improved forwarding performance of the zFilter: in the case of the 60 byte packet size, as more packet headers are processed during the measurement time, and much faster and simpler forwarding decisions of the zFilter make its power consumption insensitive to the increased amount of the packet headers. It is illustrated [11] that, the zFilter forward-

(a) Packet size of 1500 bytes.

(b) Packet size of 60 bytes. Fig. 6. Power consumption against input traffic load for zFilter and reference router.

ing node can process packets at near wire speed: the latency for sending a packet through a direct wire is 94 ls; the latency for sending a packet through the IPv4 reference router is 102 ls, while the latency for sending a packet through the zFilter forwarding node is 96 ls. To further investigate the forwarding performance of the zFilter, Fig. 7 shows the percentage of packets dropped at various traffic speeds. At 125 MHz, the zFilter forwarding node drops no packets even while operating at the maximum capacity of 4000 Mb/s and outperforms the reference router which drops packets at a loss rate of 4.95% at 4000 Mb/s. When the operating frequency is scaled down from 125 MHz to 62.5 MHz, the reference router drops packets above the bit rate of 1600 Mb/s and culminates to an unacceptable 52.5% packet loss rate at 4000 Mb/s. The packet losses are so high that it is not feasible to use the frequency scaling technique at higher bit rates for the reference router. Fortunately, such performance can be significantly improved by the zFilter forwarding node with only 0.39% packet loss rate occurring at 4000 Mb/s. In Fig. 7(b), it is very interesting to note that although scaling down the frequency results in dropped packets for the zFilter forwarding node, the zFilter at 62.5 MHz still outperforms the reference router running at 125 MHz. Similar encouraging findings are also observed when comparing the throughput between the zFilter and the reference router. To illustrate these findings, Fig. 8 is plotted by calculating the sending/receiving statistics from the packet generator generating traffic with packet size of 580 bytes and 60 bytes. As shown in Fig. 8, scaling down the frequency from 125 MHz to 62.5 MHz lowers the throughputs of the reference router significantly above 2000 Mb/s,

(a) The packet losses when both zFilter and reference router operate at 125 MHz.

(b) The packet losses when the zFilter and reference router are scaled down. Fig. 7. The packet losses for zFilter and reference router when the packet size is 1500 bytes.

41

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

(a) Power consumption comparison between zFilter at 62.5 MHz and reference router at

(a) Packet size of 580 bytes.

125 MHz.

(b) 3.3 V power component for zFilter at 62.5 MHz and reference router at 125 MHz.

(b) Packet size of 60 bytes.

Fig. 9. Improved power efficiency for zFilter at 62.5 MHz – 1500 bytes.

Fig. 8. The received data rate for zFilter and reference router.

however it does not adversely affect the throughputs of the zFilter forwarding node. The zFilter at 62.5 MHz even shows a higher throughput than the reference router operating at 125 MHz. This agrees with the transmission latency measured in [11] and is again due to much simpler forwarding decisions in the zFilter forwarding node. It should be mentioned that the improved performance in terms of packet loss and throughput is also observed for other packet sizes used in the experiments. The above-discussed experimental results strongly verify the more efficient forwarding performance of the zFilter forwarding node. 4.3. Improved power efficiency in zFilter As the zFilter at 62.5 MHz can maintain a better forwarding performance than the reference router at 125 MHz, the clock frequency of the zFilter can thus be scaled down to 62.5 MHz for the purpose of reducing the power consumption. In Figs. 9 and 10, the comparison of the power consumption between the zFilter at 62.5 MHz and the reference router at 125 MHz are made for traffic with packet sizes of 1500 bytes and 60 bytes respectively. It is shown in Figs. 9(a) and 10(a) that by scaling down the clock frequency of the zFilter by 50%, power savings of 10.9–11.2% for traffic of 1500 byte packets and 11.1–13.8% for traffic of 60 byte packets can be obtained over the reference router at 125 MHz, for traffic load between 400 Mb/s and the highest data rate corresponding to no packet losses. As the frequency scaling is realized by toggling the operational frequency of the core FPGA chip, the power reduction rate is more significant if only the power consumption of the FPGA chip implementing the zFilter and the reference router are compared. As shown in Figs. 9(b) and 10(b) where

the 3.3 V power components are presented, power reductions of 17.8–24.6% (for 1500 byte packets) and 25.5–26.1% (for 60 byte packets) can be obtained by the zFilter forwarding node. In our experiments, the power savings for traffic of other packet sizes are also examined, and the results are summarized as follows: total power savings are 11.0–11.6% for 1200 byte traffic; 9.9–10.6% for 760 byte traffic; 10.2–10.7% for 580 byte traffic. FPGA power savings are 18.6–24.4% for 1200 byte traffic; 18.2–24.8% for 760 byte traffic and 18.5–24.7% for 580 byte traffic. These results indicate that the zFilter combined with the frequency down scaling has considerable potential for enabling an energy-efficient forwarding node. Such energy-efficient operation fully utilises the effectiveness of the frequency scaling, as packet drop only occurs at the highest bit rate (discussed in Section 4.2). The lower power consumption and the faster forwarding speed are the major benefits of using the Bloom filter-based forwarding scheme, as presented in Section 4.2 and this section. This implies that optimization of networking algorithm is one of the efficient ways for reducing the energy consumption and improving the network performance. 4.4. Energy consumption per packet For further exploring the energy efficiency of the zFilter, we compare the per packet energy consumption between the zFilter and the reference router. The per packet energy consumption [5] is calculated as follows:

Epkt ¼

Numpkt

Pbusy  Pidle þ Numpkt

sent

receiv ed

ð1Þ

where P busy is the power consumption with traffic load, P idle is the power consumption without traffic load, Numpkt sent is the number

42

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43

(a) Power consumption comparison between zFilter at 62.5 MHz and reference router at

(a) 1500 bytes.

125 MHz.

(b) 60 bytes.

(b)3.3 V power component for zFilter at 62.5 MHz and reference router at 125 MHz. Fig. 10. Improved power efficiency for zFilter at 62.5 MHz – 60 bytes.

of packets sent per second and Numpkt receiv ed is the number of packets received per second. In Fig. 11, the per packet energy consumption of the zFilter and reference router are shown for 1500 byte packet size traffic and 60 byte packet size traffic, at both 125 MHz and 62.5 MHz. The results are calculated when packet drop rate is zero. As shown in Fig. 11, the zFilter reduces the per packet energy. In the case of the 1500 byte packet stream, an average reduction of 12.2% and 13.7% can be obtained at 125 MHz and 62.5 MHz respectively. This is due to the fact that the zFilter is faster and forwards more packets than the reference router within 1 s. For a deeper understanding, such results can be explained by the fact that the per packet energy consumption is mainly contributed by the processing of the packet header; simpler packet header structure and less processing operations of the zFilter result in lower energy consumption on each packet. As the zFilter can perform more efficiently than the reference router on shorter packets, the per packet energy consumption reduction is higher for shorter packets. It is found that for the 60 byte packet streams, an average energy reduction of 34.4% (with the maximum amount of 41.6%) and 29.3% are obtained at 125 MHz and 62.5 MHz, respectively. These results indicate that the total energy consumption on routing packets can be reduced considerably by employing zFilter forwarding nodes. It is known that the total energy consumption increases with the increase of the traffic volume. Due to the reduced per packet energy consumption, the total energy consumption of the zFilter forwarding node is less sensitive to the increase of the traffic volume in comparison with the IPv4 reference router. Per packet energy consumption decreases when the clock frequency is scaled down as can be seen in Fig. 11. This is because of the improved energy efficiency from using frequency scaling.

Fig. 11. The energy per packet against input traffic load for zFilter and reference router.

5. Conclusions In this paper, the power consumption of a Bloom filter-based zFilter and an IPv4 reference router are measured experimentally. We showed that the zFilter forwarding node implemented in [11] is more energy efficient and has better forwarding performance than the IPv4 reference router. At identical operational core frequency and packet size of 60 bytes, the zFilter consumes less power than the reference router by up to 3.5%. By using frequency scaling, the zFilter at 62.5 MHz consumes less total power by 9.9– 13.8% and less FPGA power by 17.8–26.1% than the reference router at 125 MHz, while still maintaining a better forwarding performance in terms of packet loss and throughput. In addition, the zFilter can reduce the per packet energy cost by up to 41.6% when compared to the reference router. Acknowledgements This work was co-funded by European FP7 ECONET project under grant agreement No. 258454, Zhejiang Provincial Natural Science Foundation of China (ZJNSF) (LQ13F010009), Science Foundation Ireland under the International Strategic Cooperation Award Grant Number SFI/13/ISCA/2845 and Zhejiang Province Key Course of Circuit & System (GK110204003-9). The authors would like to thank Brendan Cronin, Jie Jin and Feng Guo for their helpful comments. References [1] SMART 2020: enabling the low carbon economy in the information age.

X. Zheng, X. Wang / Computer Communications 44 (2014) 36–43 [2] C.C. Hu, C.M. Wu, W. Xiong, B.Q. Wang, J.X. Wu, M. Jiang, On the design of green reconfigurable router toward energy efficient Internet, IEEE Commun. Mag. 49 (2011) 83–87. [3] M. Gupta, S. Singh, Greening of the internet, in: Proceedings of ACM SIGCOMM, Karlsruhe, Germany, 2003, pp.19–26. [4] L. Niccolini, G. Iannaccone, S. Ratnasamy, J. Chandrashekar, L. Rizzo, Building a power-proportional software router, in: Proceedings of USENIX Annual Technical Conference, Boston, United States, 2012, pp. 8–8. [5] V. Sivaraman, A. Vishwanath, Z. Zhao, C. Russell, Profiling per-packet and perbyte energy consumption in the NetFPGA gigabit router, in: Proceedings of INFOCOM, Shanghai, China, 2011, pp. 331–336. [6] F. Guo, O. Ormond, L. Fialho, M. Collier, X.J. Wang, Power consumption analysis of a NetFPGA based router, J. Chin. Univ. Posts Telecommun. 19 (2012) 94–99. [7] L. Yuan, G. Qu, Analysis of energy reduction on dynamic voltage scalingenabled systems, IEEE Trans. Comput. Aided Des. Int. Circuits Syst. 24 (2005) 1827–1837. [8] L. Li, K. Choi, Activity-driven optimized bus-specific-clock-gating for ultra-lowpower smart space application, IET Commun. 5 (2011) 2501–2508. [9] S. Yamamoto, Y. Shuto, S. Sugahara, Nonvolatile delay flip-flop using spintransistor architecture with spin transfer torque MTJs for power gating system, Electron. Lett. 47 (2011) 1027–1029. [10] M.G. Zhang, C. Yi, B. Liu, B.C. Zhang, GreenTE: power-aware traffic engineering, in: Proceedings of IEEE International Conference on Network Protocols (ICNP), Kyoto, Japan, 2010, pp. 21–30. [11] J. Keinanen, P. Jokela, K. Slavov, Implementing zFilter based forwarding node on a NetFPGA, in: NetFPGA Developers Workshop, 2009. [12] M. Blumenthal, D. Clark, Rethinking the design of the internet: the end-to-end arguments vs. the brave new world, ACM Trans. Int. Technol. 1 (2001) 70–109. [13] G. Xylomenos, C.N. Ververidis, V.A. Siris, N. Fotiou, C. Tsilopoulos, X. Vasilakos, V. Katsaros, G.C. Polyzos, A survey of information-centric networking research, to be published in IEEE Commun. Surv. Tutorials. [14] B. Ahlgren, C. Dannewitz, C. Imbrenda, D. Kutscher, B. Ohlman, A survey of information-centric networking, IEEE Commun. Mag. 50 (2012) 26–36. [15] S. Tarkoma, M. Ain, K. Visala, The publish/subscribe internet routing paradigm (PSIRP): designing the future internet architecture, in: G. Tselentis et al. (Eds.), Towards the Future Internet, IOS Press, 2009, pp. 102–111.

43

[16] J.L. Martins, S. Duarte, Routing algorithms for content-based publish/ subscriber systems, IEEE Commun. Surv. Tutorials 12 (2010) 39–58. [17] P. Jokela, A. Zahemszky, C.E. Rothenberg, S. Arianfar, P. Nikander, LIPSIN: line speed publish/subscribe inter-networking, in: Proceedings of ACM SIGCOMM, Barcelona, Spain, 2009, pp. 195–206. [18] B.H. Bloom, Space/time trade-offs in hash coding with allowable errors, Commun. ACM 13 (1970) 422–426. [19] A.H. Ghani, P. Nikander, Secure in-packet bloom filter forwarding on a NetFPGA, in: 1st European NetFPGA Developers, Workshop, 2010. [20] F. Guo, O. Ormond, M. Collier, X.J. Wang, Power measurement of NetFPGAbased router, IEEE GreenCom, 2012. [21] W.L. Fu, T. Song, S.A. Wang, X.J. Wang, Dynamic frequency scaling architecture for energy efficient router, in: Proceedings of ACM/IEEE Symposium on Architectures for Networking and Communication Systems (ANCS), Austin, United states, 2012, pp. 139–140. [22] G. Gibb, J.W. Lockwood, J. Naous, P. Hartke, N. McKeown, NetFPGA—an open platform for teaching how to build gigabit-rate network switches and routers, IEEE Trans. Educ. 51 (2008) 364–369. [23] NetFPGA Homepage, available at . [24] A.H. Ghani, Secure in-packet Bloom filter based forwarding on a reusable network hardware design (M. Eng. Thesis), Aalto University, Espoo, Finland, 2011. [25] J. Daemen, P. Kitsos, The self-synchronizing stream cipher MOUSTIQUE, in: M. Robshaw, O. Billet (Eds.), New stream Cipher Designs, Springer, Berlin Heidelberg, Berlin, 2008, pp. 210–223. [26] Advanced encryption standard (AES), in: FIPS PUB 197, 2001. [27] Z.P. Cai, Z.J. Wang, K. Zeng, J.N. Cao, A distributed TCAM coprocessor architecture for integrated longest prefix matching, policy filtering and content filtering, IEEE Trans. Comput. 62 (2007) 417–427. [28] M. Kobayashi, T. Murase, A. Kuriyama, A longest prefix match search engine for multi-gigabit IP processing, in: Proceedings of IEEE International Conference on Communications (ICC), New Orleans, United States, 2000, pp. 1360–1364. [29] P. Manikandan, B.B. Larsen, E.J. Aas, Design of embedded TCAM based longest prefix match search engine, Microprocessors Microsyst. 35 (2011) 659–667. [30] Ultraview PCI Smart Extenders: www.ultraviewcorp.com. [31] National Instruments NI USB-6251: www.ni.com. [32] ECOnet project deliverable D2.2, September 2011.