wiki:GEC11NetServTutorialInstruction

Version 13 (modified by jae@cs.columbia.edu, 13 years ago) (diff)

--

Under Construction

GEC11 NetServ tutorial: step-by-step instruction

Preparation

  1. Start the GEC11 VM and login as the "GENI User".
  1. Open Firefox and point it to the following URL:

http://pc517.emulab.net/visual/index.html?id=50

Please note that you must replace "50" with your own user number throughout this tutorial.

  1. You will see the traffic visualization in your browser as follows:

Traffic visualization screenshot

NetServ module development

  1. Open a terminal window and go to your NetServ user directory.
cd /netserv-root/tutorial/user50
ls -l
  1. The following files have been prepared for each user:
Makefile
NetServ/Example.java
example.mf

upload.sh
setup.sh
remove.sh

setup-request-1.txt
setup-request-2.txt
setup-request-3.txt
remove-request.txt

request-signer
private-key-50.pem
public-key-50.pem
  1. Build the Example module and upload it to the NetServ repository.
make
./upload.sh
  1. Send a SETUP message to the NetServ router to install the module.

While you are watching the browser window type the following command into the terminal window.

./setup.sh 1

The traffic will be redirected to D2 (the node on the lower right) and NetServ.Example will be added to the list of NetServ modules currently installed.

  1. The SETUP message looks like this:
$ cat setup-request-1.txt 
SETUP NetServ.Example_1.0.0 NETSERV/0.1
url: http://pc487.emulab.net/modules/user50/example.jar
user: user50
ttl:  600
filter-ipv4: 10.10.2.2
filter-proto: udp
filter-port: 20050
properties: debug = false, ip = 10.10.3.2

  1. Send a REMOVE message to the NetServ router to remove the module.
./remove.sh
  1. The REMOVE message looks like this:
$ cat remove-request.txt 
REMOVE NetServ.Example_1.0.0 NETSERV/0.1
user: user50

  1. Open Example.java with gedit or your favorite editor.
gedit NetServ/Example.java &

Example.java is a typical NetServ packet processing module and it extends the NetServ.BuildingBlock.service.PktProcessorActivator class.

Attachments (1)

Download all attachments as: .zip