Overview
This course teaches how to use packetdrill, a scriptable network stack testing tool, to test the correctness and performance of TCP/UDP/IP network stack implementations. The course covers the design and implementation of the tool, including executing test cases and using it to develop new features for Linux TCP. The intended audience for this course includes network engineers, software developers, and individuals interested in network protocol testing and development. The teaching method involves presenting the challenges of testing network stacks, introducing the packetdrill scripting language, providing examples, sharing implementation experiences, and discussing the test suite for Linux TCP.
Syllabus
Intro
The Problem: Testing Network Stacks is Difficult
The packetdrill Scripting Language: Design
packeldrill Example: TCP Fast Retransmit
packetdrill: Implementation
Experiences with packetdrill
Our Test Suite for Google's Linux TCP
Conclusions
Taught by
USENIX