Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

Michael D. Wong

dblp:193/8330 · DBLP profile ↗
← Back
3ranked-venue papers
1as first author
1since 2021 · last 2021
0000-0001-5489-7528ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Computer networks · 3 · 1 first-author · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
3 papers
Operating systems · 37% Software testing · 32% Program analysis · 11%
Computer networks
3 papers
Software-defined and programmable networks · 100%

Topics — the 7 heaviest of 7, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Software-defined and programmable networks
programmable data plane
0.922021
Synthesizing safe and efficient kernel extensions for packet processing · SIGCOMM 2021
Switch Code Generation Using Program Synthesis · SIGCOMM 2020
Operating systems › extensible operating systems › kernel extensibility
kernel extensions
0.512021
Synthesizing safe and efficient kernel extensions for packet processing · SIGCOMM 2021
Software testing
compiler testing
0.412020
Testing compilers for programmable switches through switch hardware simulation · CoNEXT 2020
Program verification
safety verification
0.112021
Synthesizing safe and efficient kernel extensions for packet processing · SIGCOMM 2021
Program analysis
static analysis
0.112021
Synthesizing safe and efficient kernel extensions for packet processing · SIGCOMM 2021
Software-defined and programmable networks › programmable data plane
programmable switch
0.112020
Testing compilers for programmable switches through switch hardware simulation · CoNEXT 2020
Compilers and program optimization
code generation
0.112020
Switch Code Generation Using Program Synthesis · SIGCOMM 2020

Methods — techniques the papers use, named apart from their topics

program synthesis · 2.7static analysis · 1.0fuzzing · 0.9
YearPublicationVenuePosition
2021 Synthesizing safe and efficient kernel extensions for packet processing
abstract
Extended Berkeley Packet Filter (BPF) has emerged as a powerful method to extend packet-processing functionality in the Linux operating system. BPF allows users to write code in high-level languages (like C or Rust) and execute them at specific hooks in the kernel, such as the network device driver. To ensure safe execution of a user-developed BPF program in kernel context, Linux uses an in-kernel static checker. The checker allows a program to execute only if it can prove that the program is crash-free, always accesses memory within safe bounds, and avoids leaking kernel data.
Qiongwen Xu, Michael D. Wong, Tanvi Wagle, Srinivas Narayana, Anirudh Sivaraman
SIGCOMM2
2020 Testing compilers for programmable switches through switch hardware simulation
abstract
Programmable switches have emerged as powerful and flexible alternatives to fixed-function forwarding devices. But because of the unique hardware constraints of network switches, the design and implementation of compilers targeting these devices is tedious and error-prone. Despite the important role that compilers play in software development, there is a dearth of tools for testing compilers for programmable network devices. We present Druzhba, a programmable switch simulator used for testing compilers targeting programmable packet-processing substrates. We show that we can model the low-level behavior of a switch's programmable hardware. We further show how compiler developers can target Druzhba as a compiler backend. Generated machine code programs are fed into Druzhba and tested using a fuzzing-based approach that allows compiler developers to test the correctness of their compilers. Using a program-synthesis-based compiler as a case study, we demonstrate how Druzhba has been successful in testing compiler-generated machine code for our simulated switch pipeline instruction set.
Michael D. Wong, Aatish Kishan Varma, Anirudh Sivaraman
CoNEXT1
2020 Switch Code Generation Using Program Synthesis
abstract
Writing packet-processing programs for programmable switch pipelines is challenging because of their all-or-nothing nature: a program either runs at line rate if it can fit within pipeline resources, or does not run at all. It is the compiler's responsibility to fit programs into pipeline resources. However, switch compilers, which use rewrite rules to generate switch machine code, often reject programs because the rules fail to transform programs into a form that can be mapped to a pipeline's limited resources---even if a mapping actually exists.
Michael D. Wong, Divya Raghunathan, Aatish Kishan Varma, Pravein G. Kannan, Anirudh Sivaraman, Srinivas Narayana, Aarti Gupta
SIGCOMM3