FlexPoll: adaptive event polling for network-intensive applications

被引:0
|
作者
Wu, Xingbo [1 ]
Long, Xiang [1 ]
Wang, Lei [1 ]
机构
[1] Beihang Univ, Sch Comp Sci & Engn, Beijing 100191, Peoples R China
基金
中国国家自然科学基金; 国家高技术研究发展计划(863计划);
关键词
operating systems; performance evaluation and modeling; storage systems and networks; workload characterization; NOSQL DATABASES;
D O I
10.1007/s11704-016-3453-x
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
In today's data centers supporting Internet-scale computing and input/output (I/O) services, increasinglymore network-intensive applications are deployed on the network as a service. To this end, it is critical for the applications to quickly retrieve requests from the network and send their responses to the network. To facilitate this network function, operating system usually provides an event notification mechanism so that the applications (or the library) know if the network is ready to supply data for them to read or to receive data for them to write. As a widely used and representative notification mechanism, epoll in Linux provides a scalable and high-performance implementation by allowing applications to specifically indicate which connections and what events on them need to be watched. As epoll has been used in some major systems, including key-value (KV) systems, such as Redis and Memcached, and web server systems such as NGINX, we have identified a substantial performance issue in its use. For the sake of efficiency, applications usually use epoll's system calls to inform the kernel exactly of what events they are interested in and always keep the information up-to-date. However, in a system with demanding network traffic, such a rigid maintenance of the information is not necessary and the excess number of system calls for this purpose can substantially degrade the system's performance. In this paper, we use Redis as an example to explore the issue. We propose a strategy of informing the kernel of the interest events in a manner adaptive to the current network load, so that the epoll system calls can be reduced and the events can be efficiently delivered. We have implemented an event-polling library, named as FlexPoll, purely in user-level without modifying any kernel code. Our evaluation on Redis shows that the query throughput can be improved by up to 46.9% on micro-benchmarks, and even up to 67.8% on workloads emulating real-world access patterns. FlexPoll is a generic mechanism thus it can be adopted by other applications in a straightforward manner, such as NGINX and Memcached.
引用
收藏
页码:532 / 542
页数:11
相关论文
共 50 条
  • [1] FlexPoll: adaptive event polling for network-intensive applications
    Xingbo Wu
    Xiang Long
    Lei Wang
    Frontiers of Computer Science, 2016, 10 : 532 - 542
  • [2] FlexPoll:adaptive event polling for network-intensive applications
    Xingbo WU
    Xiang LONG
    Lei WANG
    Frontiers of Computer Science, 2016, 10 (03) : 532 - 542
  • [3] Optimizing Event Polling for Network-intensive Applications: A Case Study on Redis
    Wu, Xingbo
    Long, Xiang
    Wang, Lei
    2013 19TH IEEE INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS 2013), 2013, : 687 - 692
  • [4] RAP - Rate adaptive polling for network management applications
    Moghe, P
    Evangelista, MH
    NOMS '98 - 1998 IEEE NETWORK OPERATIONS AND MANAGEMENT SYMPOSIUM, VOLS 1-3, 1998, : 395 - 399
  • [5] Simulative analysis of the RapidIO embedded interconnect architecture for real-time, network-intensive applications
    Bueno, D
    Leko, A
    Conger, C
    Troxel, I
    George, AD
    LCN 2004: 29TH ANNUAL IEEE INTERNATIONAL CONFERENCE ON LOCAL COMPUTER NETWORKS, PROCEEDINGS, 2004, : 710 - 717
  • [6] Energy-aware Scheduling Algorithm for Precedence-Constrained Parallel Tasks of Network-intensive Applications in a Distributed Homogeneous Environment
    Ebrahimirad, Vahid
    Rajabi, Aboozar
    Goudarzi, Maziar
    PROCEEDINGS OF THE 3RD INTERNATIONAL CONFERENCE ON COMPUTER AND KNOWLEDGE ENGINEERING (ICCKE 2013), 2013, : 348 - 355
  • [7] Optimising TCP/IP Connectivity An exploratory study in network-intensive Erlang systems
    Hellstroem, Oscar
    ERLANG'07: PROCEEDINGS OF THE 2007 SIGPLAN ERLANG WORKSHOP, 2007, : 73 - 83
  • [8] Efficient Network Fault Detection Using Adaptive Polling
    Gupta, Ankur
    Prabhat, Purnendu
    2017 INTERNATIONAL CONFERENCE ON NEXT GENERATION COMPUTING AND INFORMATION SYSTEMS (ICNGCIS), 2017, : 110 - 115
  • [9] NetAP: Adaptive Polling Technique for Network Packet Processing in Virtualized Environments
    Park, Hyunchan
    Seong, Juyong
    Lee, Munkyu
    Lee, Kyungwoon
    Hong, Cheol-Ho
    APPLIED SCIENCES-BASEL, 2020, 10 (15):
  • [10] Adaptive Transient Event Detection for Industrial Applications
    Hammer, Florian
    Bey-Temsamani, Abdellatif
    Ompusunggu, Agusmian P.
    PROCEEDINGS OF THE 10TH WORLD CONGRESS ON ENGINEERING ASSET MANAGEMENT (WCEAM 2015), 2016, : 215 - 225