Type of Document Master's Thesis Author Knestrick, Christopher C. Author's Email Address firstname.lastname@example.org URN etd-02252004-211017 Title Lunar: A User-Level Stack Library for Network Emulation Degree Master of Science Department Computer Science Advisory Committee
Advisor Name Title Varadarajan, Srinidhi Committee Chair Arthur, James D. Committee Member Midkiff, Scott F. Committee Member Keywords
- Protocol Testing
- Direct Code Execution
Date of Defense 2004-02-24 Availability unrestricted AbstractThe primary issue with developing new networking protocols is testing how the protocol will behave when deployed on a large scale; of particular interest is how it will interact with existing protocols. Testing a protocol using a network simulator has drawbacks. First, the protocol must be written for the simulator and then rewritten for actual deployment. Aside from the additional work, this allows for software bugs to be introduced between testing and implementation. More importantly, there are correctness issues. Since both the new and existing protocols must be specially written for the simulator, and not actual real-world implementations, the question remains if the behavior observed and, specifically, the interactions between the protocols are valid. Direct code execution environments solve the correctness problem, but there is the loss of control that a simulator provides. Our solution is to create an environment that allows direct code execution to occur on top of a network simulator. This thesis presents the primary component of that solution: Lunar (Linux User-level Network Architecture), a user-level library that is created from the network stack portion of the Linux operating system. This allows real-world applications to link against a simulator, with Lunar serving as the bridge.
For this work, an implementation of Lunar was constructed using the 2.4.3 version of the Linux kernel. Verification testing was performed to demonstrate correct functioning of the library using both TCP (including TCP with loss) and UDP. Performance testing was done to measure the overhead that Lunar adds to a running application. Overhead was measured as the percent increase in the runtime of an application with Lunar as compared to the application running without it, and ranged from approximately 2% (running over 100 Mbps switched Ethernet) to approximately 39% (1 Gbps Myrinet).
Filename Size Approximate Download Time (Hours:Minutes:Seconds)
28.8 Modem 56K Modem ISDN (64 Kb) ISDN (128 Kb) Higher-speed Access KnestrickThesis.pdf 321.58 Kb 00:01:29 00:00:45 00:00:40 00:00:20 00:00:01
If you have questions or technical problems, please Contact DLA.