Introduction
From the abstract of the paper: "Annotations are a mechanism for adding state to packets that is orthogonal to the data payload. Historically, two ways of adding annotations to packets have been used: overloading reserved bits in the header, and using IP options. In the first case, the amount of space available is very limited and difficult to share. In the second case, packets with IP options are dropped on many Internet paths. We propose a more general and flexible mechanism for annotating packets that appends annotations to the end of packets, in the IP payload. We show that many existing proposals for adding state to packets can exploit this common mechanism for annotations. Our key result is that packets annotated in this way have a much higher probability of successful transport across the network than those for which IP options have been used."
Read the rest of the paper describing the A-Layer.
Then read the implementation overview.
Getting the source
Download the source as a compressed tarball or browse it directly.
Documentation
* The daily development notebook.
* Formalized implementation design notes.
* A list of helpful resources.
Code Size
The *nix utility wc, which counts raw lines of text, outputs the following information about the code:
Lines Directory 3454 engine/ 345 userApps/ 288 include/ 171 traffic/ 84 moduleApps/ 4342 Total
David A. Wheeler's sloccount, which counts "non-blank, non-comment" lines of code (see further documentation), outputs the following:
SLOC Directory SLOC-by-Language (Sorted) 2136 engine ansic=2136 214 userApps ansic=214 139 include ansic=139 113 traffic ansic=113 44 moduleApps ansic=44 Totals grouped by language (dominant language first): ansic: 2646 (100.00%) Total Physical Source Lines of Code (SLOC) = 2,646 Development Effort Estimate, Person-Years (Person-Months) = 0.56 (6.67) (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05)) Schedule Estimate, Years (Months) = 0.43 (5.14) (Basic COCOMO model, Months = 2.5 * (person-months**0.38)) Estimated Average Number of Developers (Effort/Schedule) = 1.30
Return to my Homepage.