7 | | Detail: !NetServ is a programmable router architecture, designed for |
8 | | dynamically deploying in-network services. Using !NetServ, GENI |
9 | | experimenters can write TCP/IP and packet processing application |
10 | | modules quickly in Java, and dynamically install them into any |
11 | | !NetServ-enabled ProtoGENI or !PlanetLab nodes. In this hands-on |
12 | | tutorial, you will learn the !NetServ architecture, and develop a |
13 | | simple !NetServ application module. |
| 9 | === Description === |
| 10 | !NetServ is a programmable router architecture, designed for |
| 11 | dynamically deploying in-network services. Using !NetServ, GENI |
| 12 | experimenters can write TCP/IP and packet processing application |
| 13 | modules quickly in Java, and dynamically install them into any |
| 14 | !NetServ-enabled ProtoGENI or !PlanetLab nodes. In this hands-on |
| 15 | tutorial, you will learn the !NetServ architecture, and develop a |
| 16 | simple !NetServ application module. |
| 17 | |
| 18 | A step-by-step instruction is available here: [wiki:GEC11NetServTutorialInstruction] |
| 19 | |
| 20 | === Prerequisites: === |
| 21 | ==== Required: ==== |
| 22 | - Basic understanding of GENI concepts |
| 23 | - Java programming experience |
| 24 | |
| 25 | ==== Helpful, but not required: ==== |
| 26 | - Experience working with ProtoGENI (covered in an earlier |
| 27 | tutorial: Introduction to GENI using Flack by Rob Ricci) |
| 28 | |
| 29 | |
| 30 | === Please arrive with: === |
| 31 | A laptop with Pre-work completed (see below) if you want to follow along the hands-on tutorial. |
| 32 | |
| 33 | |
| 34 | === Pre-work: === |
| 35 | ==== Required: ==== |
| 36 | None, if you simply wants to watch the tutorial. |
| 37 | |
| 38 | If you want to follow along the tutorial with your hands on the keyboard: |
| 39 | |
| 40 | - Bring a laptop with !VirtualBox (http://www.virtualbox.org/) installed. |
| 41 | - Download and import into !VirtualBox the GEC12 Tutorial VM. |
| 42 | |
| 43 | ==== Suggested background materials if you have time: ==== |
| 44 | - 14-minute video of !NetServ demo at GEC9 plenary session: |
| 45 | http://vimeo.com/16474575 |
| 46 | - Latest paper describing !NetServ (14 pages): |
| 47 | http://www.cs.columbia.edu/~jae/papers/netserv-2011-10-v2.1.pdf |
| 48 | |
| 49 | |
| 50 | === Results: === |
| 51 | After completing this tutorial, you will: |
| 52 | - Understand !NetServ architecture--for example, how various |
| 53 | technologies such as Netfilter, JNI and OSGi work together to |
| 54 | enable packet processing in Java. |
| 55 | - See how !NetServ can shorten the development cycle of your |
| 56 | experiments, and how it can create a gentler educational |
| 57 | environment for your networking classroom. |
| 58 | - Know how to write a !NetServ application module. |
| 59 | |