Links on this page are desolated. For recent progress of this project, check Dr. Edo, Yi Dan and John Wu's homepages. [Note 8/30/2007]

NetLab Release 2.0

 

Xin Chen

October 24, 2001

Information and Computer Science Department, UH

 

1. Overview

 

With the full name Networks Laboratory Training Environment (NetLab T.E.), NetLab is a computer-based visual training system targetted at helping computer science major students to design and configure networks. It saves time and money when compared to actual labs.

NetLab 1.0 is done by Blanca Lopez but not finished yet. Then I took it as my ICS 699 directed research project. Great thanks to the work Blanca had done so I could get a lot of help by reading her code in my work. Please check Blanca's homepage for NetLab.

NetLab 2.0 includes two versions. These two are zipped into files Borland_NetLab.zip and unix_NetLab.tar.gz respectively. The first version is to be compiled and run in Borland JBuilder University/Professional Version 3.00, the second is to be run in unix. They both include source files and compiled bytecode files, i.e., both .java and .class files.

The on-line version of NetLab 2.0 in available at:

http://www2.hawaii.edu/~chenx/NL/PopFrame.html.

NetLab is an open source software and we appreciate your participation in improving the source code. If you want to get the source code please email me at chenx@hawaii.edu or Blanca at blanca@hawaii.edu .

 

2. How to compile NetLab source code

 

Both Borland_NetLab.zip and unix_NetLab.tar.gz include source java files and compile class files, so you can run NetLab once unzip them. However you can also compile the source code by yourself.

Currently I compile NetLab source code in Borland JBuilder Professional Version 3.00. Borland JBuilder University Version 3.0 was tried and it worked too. I did not try compile NetLab under unix yet, to try that you should use jdk 1.2 version or above. Following is the procedure to compile NetLab source code in Borland JBuilder:

  1. Download Borland_NetLab.zip onto your desktop.
  2. Extract Borland_NetLab.zip into a folder. As an example, here we use the folder C:\NetLab.
  3. Start JBuilder University/Professional Edition 3.0.
  4. Open C:\NetLab\NetLab.jpr in JBuilder.
  5. In JBuilder menu select Project à Properties à Path, make sure the target SDK version is 1.2 or above.
  6. From JBuilder menu select Run à Parameters à Paths (or Project à Properties à Path, you'll get the same dialog box), Enter the path of NetLab folder into Root directories à source and output. i.e.:

Root directories
source: C:\NetLab\
output: C:\NetLab\

  1. From JBuilder menu select Project à Make Project “NetLab.jpr” (or Rebuild Project “NetLab.jpr”) or use the shortcut buttons.
  2. Open every other jpr files in C:\NetLab folder and repeat the steps 4 – 7 until all are compiled.

 

3. How to run NetLab

 

3.1 Run NetLab using Borland JBuilder University/Professional Version 3.00

  1. Download Borland_NetLab.zip onto your desktop.
  2. Extract Borland_NetLab.zip into a folder. As an example, here we use the folder C:\NetLab.
  3. Start JBuilder University/Professional Edition 3.0.
  4. Open C:\NetLab\NetLab.jpr in JBuilder.
  5. In JBuilder menu select Project à Properties à Path, make sure the target SDK version is 1.2 or above.
  6. From JBuilder menu select Run à Parameters à Paths (or Project à Properties à Path, you'll get the same dialog box), Enter the path of NetLab folder into Root directories à source and output. i.e.:

Root directories
source: C:\NetLab\
output: C:\NetLab\

  1. From JBuilder menu select Run --> Run "Frame1" or press the shortcut button for "Run", the NetLab main frame and menu will appear.

 

3.2 Run NetLab in browser from anywhere on the internet

            For this purpose you need to install NetLab on a server. This can be a unix server or Windows2000 server.

            To install NetLab on a unix server, you just unzip unix_NetLab.tar.gz into a folder, let’s assume it is folder NetLab. To unzip unix_NetLab.tar.gz, use the following two commands:

             %gzip -d unix_NetLab.tar.gz

             %tar xvf unix_NetLab.tar

            Assume that the internet URL for this folder is http://www.x.com/NetLab, then you can open NetLab by going to the page http://www.x.com/NetLab/PopFrame.html. There after pressing an applet button you can start NetLab in browser.

            To install NetLab on a Windows2000 server, you first unzip unix_NetLab.tar.gz into a folder in unix, then transfer that folder to wwwroot of Windows2000 server.

           

            The first time when running NetLab in a browser, you will be prompted to install Java Plug-In 1.3.1. Download and install the Plug-In from Sun and then you will be able to run NetLab.

 

4. What’s new from NetLab 1.0

 

            One important improvement in NetLab 2.0 is “cat-5 cable” and “fiber cable” buttons are implemented. Now when you press one of these two buttons, a dialog box will jump out and let you select two nodes to which a cable is created to connect them with each other.

            Another feature is that mouse movements are captured in the working area so you can press down mouse button and drag it to draw a square thus select an area. This is used to implement cloud function that is discussed next.

            The third new feature is that a cloud button is added. This offers the ability to put a part of the network you create into a cloud. This hides the details of that part of network, and leaves you more space to create more nodes in the working area. Eventually this can allow you to create a huge network with hundreds and thousands of nodes. However this feature is not finished yet and is waiting to be completed in the next release.

            The last significant advance is that now NetLab 2.0 can be put on a server and be accessed anywhere on the internet. Currently NetLab 2.0 on line version is hosted at http://www2.hawaii.edu/~chenx/NL/PopFrame.html.

 

5. What’s not working in NetLab 2.0

 

            One thing is in the cloud function. Now you can create a new cloud standing for some nodes you create before that cloud. However now the previous nodes are not removed from the working area yet. Also at this time you cannot reverse this process to recover the nodes hidden by the cloud. You will be able to do this by pressing “Recover the hidden nodes” button in the information window of cloud in the future.

            Some of the menu choices are not working at this time. The following choices are to be added or improved: File à Print; Edit à Undo; View à Network Specification; Viewà Device Specifications; View à Find; View à Network by Subnets; Network à Remove Device; Network à Evaluate Network.

            When running in the browser, in the information window of each node, the “Help” button cannot load corresponding help files at this time. This is not a problem when running in JBuilder.

 

6. Acknowledgement

 

            Thanks to Blanca's great work in NetLab 1.0, so I can get a lot of help from reading the previous code. Also thanks to Blanca's suggestions and encouragement when I need help. Thanks to Dr. Edo for supervising the work. Thanks to Ying Wang and my other labmates for discussing and giving suggestions on my work.

 

7. Usage and redistribution of this software

 

            Please limit the usage of this software to education purpose only. For any redistribution of this software please include this readme file with it.