About


VNS is the easiest way to give students a hands-on experience with networking internals. It has been used by thousands of students at over a 20 universities across the country (see who’s using it). With VNS, students write software that interacts with their own topology of routers and servers using real-world services and protocols.

VNS is available free of charge to students, instructors, and researchers. It is an open-source project supported by staff and students at Stanford University. Assignments include a variety of tools, including student stub code, grading scripts, and reference solutions. With assignments possible in C, C++, Java, Python, or any other language that supports standard sockets, VNS projects can be as small or as large as your students’ imaginations.

VNS can be used for:

  • Classroom assignments, demos, and labs.
  • Student research projects.
  • Prototyping novel network protocols.

Getting Started

The Using VNS page explains how to get started using VNS. After looking over that page. please contact David Underhill (dgu@cs.stanford.edu) to obtain access to the system.

Learn More

You can learn more about how VNS works here. We’ve also published several papers about VNS which you can read here.

Stanford High-Performance Networking Group Stanford University