1 / 16

Tinkernet The Presentation

Tinkernet The Presentation. Dan Turner, Mark Kegel, Erik Shimshock and Ryan Ausanka-Crues With Support and Encouragement by Titus Winters and Mike Erlinger (also Jason Arold). Project Overview. What is Tinkernet? System to allow students to write the networking code of an OS

marinel
Download Presentation

Tinkernet The Presentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TinkernetThe Presentation • Dan Turner, Mark Kegel, Erik Shimshock and • Ryan Ausanka-Crues • With Support and Encouragement by • Titus Winters and Mike Erlinger • (also Jason Arold)

  2. Project Overview • What is Tinkernet? • System to allow students to write the networking code of an OS • Why would you want it? • Provides a convenient and controlled environment to write and test networking code

  3. How it works... Students Nodes Tinkerbell SSH TFTP

  4. Hardware • Rack of nodes • Basic (old) computer • minimal components (RAM, CPU, etc.) • Two network cards • Couple of hubs, many ethernet cables • Server • Standard computer (lots of RAM) • Linux

  5. Student Assignments • Writing modules to handle the protocol stack • ethernet, IP, UDP, ARP • TCP - could do but is a lot of work • Scaled down version of TCP

  6. Student Perspective • SSH in to a server (Tinkerbell) • Write the network module for a kernel • Filling in a code template • Compile code on the server; run on node • Debugging code • Tinkerboot • netprintf

  7. The Real Perspective • (1) Student writes code • (2) Student compiles code into kernel • (3) Student uses tinkerboot to load kernel • (4) Student tests kernel • (5) Kernel dies, and student repeats the first four steps

  8. Behind the Scenes:Compiling the Kernel • OSKit • provides a fully operable kernel • we strip out the networking module • student code gets compiled in as the new networking module • then you have your kernel...

  9. Behind the Scenes:Booting the Kernel • tinkercontroller • is a daemon that manages the nodes • a free node is chosen, and the kernel is sent to it • if all has gone well, you have a running kernel

  10. The Running Kernel • Kernels are expected to respond to: • ARP requests • IP broadcast • Handle IP packets • Also UDP • Also need to be able to generate their own packets

  11. Controlling the Kernel • Each node has two network cards • Is hooked in to two separate networks: warzone and admin • Student packets are sent over warzone • Admin network handles management of each node - booting, restarting, debug

  12. Individual Projects • Dan • Grub • OSKit • Packet dropping

  13. Individual Projects • Erik • Built a new rack • Solved missing nodes • Documentation • Comments

  14. Individual Projects • Mark • Set up team computers • Tinkerboot GUI • Tinkeradmin GUI

  15. Individual Projects • Ryan • Built rack • Missing nodes problem • Website and wiki • Commenting and re-factoring code

  16. Things left to do... • Documentation... • Portability... • Packaging for distribution...

More Related