Teaching computer networks through modeling
ACM SIGAda Ada Letters
A secure unrestricted advanced systems laboratory
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
The NetWire emulator: a tool for teaching and understanding networks
Proceedings of the 6th annual conference on Innovation and technology in computer science education
Hands-on networking labs with embedded routers
Proceedings of the 42nd ACM technical symposium on Computer science education
Hi-index | 0.00 |
We present our experience with the design and teaching of a graduate-level networking hardware course in which students design and build an Internet router. Each team of two students (one proficient in hardware and one proficient in software) design and develop a fully functional router that routes live Internet traffic and inter-operates with other students' routers via a simple routing protocol. Hardware is designed in Verilog using an industry-standard design flow on a specially designed platform, called NetFPGA. Software is written in user-space using a high-level language. Software and hardware are combined and tested using real network traffic over arbitrary private topologies using a custom tool, called VNS. Our approach is distinguished in that both hardware and software can be designed, tested and deployed remotely over the Internet. Our goal is to give students experience in the design of complex networking systems. In our initial course offering in Spring 2004, all teams successfully implemented fully functional routers in less than ten weeks. We will pilot courses outside of Stanford using the remote teaching infrastructure presented in this paper.