Date of Award
6-15-2004
Document Type
Thesis (Undergraduate)
Department or Program
Department of Computer Science
First Advisor
Chris Hawblitzel
Abstract
Any computing device or system that uses the internet needs to analyze and identify the contents of network packets. Code that does this is often written in C, but reading, identifying, and manipulating network packets in C requires writing tricky and tedious code. Previous work has offered specification languages for describing the format of network packets, which would allow packet type identification without the hassles of doing this task in C. For example, McCann and Chandra's Packet Types [3] system allows the programmer to define arbitrary packet types and generates C unctions which match given data against a specified packet type. This paper will present a packet processing language named PPL, which extends McCann and Chandra�s Packet Types to allow the programmer to not only describe arbitrary packet types, but also to control when and how a matching is attempted, with ML-style pattern matching. PPL is intended for multiple applications, such as intrusion detection systems, quick prototypes of new protocols, and IP de-multiplexing code.
Recommended Citation
Krupski, Eric G., "PPL: a Packet Processing Language" (2004). Dartmouth College Undergraduate Theses. 43.
https://digitalcommons.dartmouth.edu/senior_theses/43
Code and other materials
Comments
Originally posted in the Dartmouth College Computer Science Technical Report Series, number TR2004-508.