Validating Network Protocol Parsers with Traceable RFC Document Interpretation
Not on the map. Why?
Abstract (arXiv)
Validating the correctness of network protocol implementations is highly challenging due to the oracle and traceability problems. The former determines when a protocol implementation can be considered buggy, especially when the bugs do not cause any observable symptoms. The latter allows developers to understand how an implementation violates the protocol specification, thereby facilitating bug fixes. Unlike existing works that rarely take both problems into account, this work considers both and provides an effective solution using recent advances in large language models (LLMs). Our key observation is that network protocols are often released with structured specification documents, a.k.a. RFC documents, which can be systematically translated to formal protocol message specifications via LLMs. Such specifications, which may contain errors due to the hallucination of LLMs, are used as a quasi-oracle to validate protocol parsers, while the validation results in return gradually refine the oracle. Since the oracle is derived from the document, any bugs we find in a protocol implementation can be traced back to the document, thus addressing the traceability problem. We have extensively evaluated our approach using nine network protocols and their implementations written in C, Python, and Go. The results show that our approach outperforms the state-of-the-art and has detected 69 bugs, with 36 confirmed. The project also demonstrates the potential for fully automating software validation based on natural language specifications, a process previously considered predominantly manual due to the need to understand specification documents and derive expected outputs for test inputs.
Key facts. Cited by 7 papers in the map (data through 14 Oct 2026). Builds on 17 of its 52 references that are in the map. First posted on arXiv 25 Apr 2025.
Builds on
17 of 52 references.
References · 17
- 2024DeepSeek-Coder-V2: Breaking the Barrier of Closed-Source Models in Code Intelligencecited by 331
- 2024AutoCodeRover: Autonomous Program Improvementcited by 278
- 2022Large Language Models are Few-shot Testers: Exploring LLM-based General Bug Reproductioncited by 111
- 2022Large Language Models are Zero-Shot Fuzzers: Fuzzing Deep-Learning Libraries via Large Language Modelscited by 103
- 2023Fuzz4All: Universal Fuzzing with Large Language Modelscited by 88
- 2024Evaluating Language Models for Efficient Code Generationcited by 73
- 2024Code-Aware Prompting: A study of Coverage Guided Test Generation in Regression Setting using LLMcited by 64
- 2024Enchanting Program Specification Synthesis by Large Language Models using Static Analysis and Program Verificationcited by 58
- 2023How Effective Are Neural Networks for Fixing Security Vulnerabilitiescited by 52
- 2025RepoAudit: An Autonomous LLM-Agent for Repository-Level Code Auditingcited by 49
- 2022An Empirical Study of Deep Learning Models for Vulnerability Detectioncited by 46
- 2024CYCLE: Learning to Self-Refine the Code Generationcited by 42
5 more
- 2023WhiteFox: White-Box Compiler Fuzzing Empowered by Large Language Modelscited by 37
- 2023Lifting Network Protocol Implementation to Precise Format Specification with Security Applicationscited by 4
- 2025The Hitchhiker's Guide to Program Analysis, Part II: Deep Thoughts by LLMscited by 4
- 2024From a Natural to a Formal Language with DSL Assistantcited by 3
- 2024ChatHTTPFuzz: Large Language Model-Assisted IoT HTTP Fuzzingcited by 1
Built on by
Citing papers per year: 2025: 5; 2026: 2.
7 papers.
- 2025TAI3: Testing Agent Integrity in Interpreting User Intentcited by 9
- 2025RFCAudit: An LLM Agent for Functional Bug Detection in Network Protocolscited by 7
- 2025Raw Pointer Rewriting with LLMs for Translating C to Safer Rustcited by 4
- 2025Synthesizing Precise Protocol Specs from Natural Language for Effective Test Generationcited by 2
- 2026TeleCom-Bench: How Far Are Large Language Models from Industrial Telecommunication Applications?cited by 1
- 2025Position: Intelligent Coding Systems Should Write Programs with Justificationscited by 0
- 2026ConCovUp: Effective Agent-Based Test Driver Generation for Concurrency Testingcited by 0
- 2026TeleCom-Bench: How Far Are Large Language Models from Industrial Telecommunication Applications?18 May 2026
- 2026ConCovUp: Effective Agent-Based Test Driver Generation for Concurrency Testing10 May 2026
- 2025Synthesizing Precise Protocol Specs from Natural Language for Effective Test Generation22 Nov 2025
- 2025Position: Intelligent Coding Systems Should Write Programs with Justifications8 Aug 2025
- 2025TAI3: Testing Agent Integrity in Interpreting User Intent9 Jun 2025
- 2025RFCAudit: An LLM Agent for Functional Bug Detection in Network Protocols31 May 2025
- 2025Raw Pointer Rewriting with LLMs for Translating C to Safer Rust7 May 2025