DIFFY: Data-Driven Bug Finding for Configurations

被引:0
作者
Kakarla, Siva Kesava Reddy [1 ]
Yan, Francis Y. [1 ]
Beckett, Ryan [1 ]
机构
[1] Microsoft, Redmond, WA 98052 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2024年 / 8卷 / PLDI期
关键词
configuration bug finding; template synthesis; anomaly detection;
D O I
10.1145/3656385
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Configuration errors remain a major cause of system failures and service outages. One promising approach to identify configuration errors automatically is to learn common usage patterns (and anti-patterns) using data-driven methods. However, existing data-driven learning approaches analyze only simple configurations (e.g., those with no hierarchical structure), identify only simple types of issues (e.g., type errors), or require extensive domain-specific tuning. In this paper, we present DIFFY, the first push-button configuration analyzer that detects likely bugs in structured configurations. From example configurations, DIFFY learns a common template, with "holes" that capture their variation. It then applies unsupervised learning to identify anomalous template parameters as likely bugs. We evaluate DIFFY on a large cloud provider's wide-area network, an operational 5G network testbed, and MySQL configurations, demonstrating its versatility, performance, and accuracy. During DIFFY's development, it caught and prevented a bug in a configuration timer value that had previously caused an outage for the cloud provider.
引用
收藏
页数:24
相关论文
共 60 条
[1]   Profiling relational data: a survey [J].
Abedjan, Ziawasch ;
Golab, Lukasz ;
Naumann, Felix .
VLDB JOURNAL, 2015, 24 (04) :557-581
[2]  
[Anonymous], 2006, Proceedings of the 2006 SIGCOMM workshop on Mining network data
[3]  
Backes J, 2018, PROCEEDINGS OF THE 2018 18TH CONFERENCE ON FORMAL METHODS IN COMPUTER AIDED DESIGN (FMCAD), P206
[4]  
Beckett R, 2022, PROCEEDINGS OF THE 19TH USENIX SYMPOSIUM ON NETWORKED SYSTEMS DESIGN AND IMPLEMENTATION (NSDI '22), P617
[5]   Abstract Interpretation of Distributed Network Control Planes [J].
Beckett, Ryan ;
Gupta, Aarti ;
Mahajan, Ratul ;
Walker, David .
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4 (POPL)
[6]   Control Plane Compression [J].
Beckett, Ryan ;
Gupta, Aarti ;
Mahajan, Ratul ;
Walker, David .
PROCEEDINGS OF THE 2018 CONFERENCE OF THE ACM SPECIAL INTEREST GROUP ON DATA COMMUNICATION (SIGCOMM '18), 2018, :476-489
[7]   A General Approach to Network Configuration Verification [J].
Beckett, Ryan ;
Gupta, Aarti ;
Mahajan, Ratul ;
Walker, David .
SIGCOMM '17: PROCEEDINGS OF THE 2017 CONFERENCE OF THE ACM SPECIAL INTEREST GROUP ON DATA COMMUNICATION, 2017, :155-168
[8]  
Bray T, 2017, RFC, DOI DOI 10.17487/RFC8259
[9]   Understanding and Discovering Software Configuration Dependencies in Cloud and Datacenter Systems [J].
Chen, Qingrong ;
Wang, Teng ;
Legunsen, Owolabi ;
Li, Shanshan ;
Xu, Tianyin .
PROCEEDINGS OF THE 28TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE '20), 2020, :362-374
[10]  
Cisco, 2023, Basic Router Configuration