Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. Computer Science and Artificial Intelligence Lab (CSAIL)
  3. LCS Publications
  4. LCS Technical Reports (1974 - 2003)
  5. Programming Language Techniques for Modular Router Configurations

Programming Language Techniques for Modular Router Configurations

Thumbnail Image
Download
Name

MIT-LCS-TR-812.pdf

Size

583.42 KB

Format

Adobe PDF

Checksum (MD5)

a3ddd194c6dbfe56857b09bce7ee4104

Author(s)
Kohler, Eddie
•
Chen, Benjie
•
Kaashoek, M. Frans
•
Morris, Robert T.
•
Poletto, Massimiliano
Date Issued
August 2000
Series/Report no.
MIT-LCS-TR-812
Abstract
This paper applies programming language techniques to a high-level system description, both to optimize the system and to prove useful properties about it. The system in question is Click, a modular software router framework. Click routers are built from components called elements. Elements are written in C++, but the user creates a configuration using a simple, declarative data flow language. This language is amenable to data flow analysis and other conventional programming language techniques. Applied to a router configuration, these techniques have high-level results---for example, optimizing the router or verifying its high-level properties. This paper describes several programming language techniques that have been useful in practice, including optimization tools that remove virtual function calls from router definitions and remove redundant parts of adjacent routers. We also present performance results for an extensively optimized standards-compliant IP router. On conventional PC hardware, this router can forward up to 456,000 64-byte packets per second.
Persistent DSpace Link
https://hdl.handle.net/1721.1/149915
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.