Login | Register
My pages Projects Community openCollabNet

If you were registered and logged in, you could join this project.

Summary NetWork Simulator
Categories None
License GNU General Public License
Owner(s) fouad

Message from the owner(s)

Network Simulator 1.0 (NWS) is an application for creating simulated networks. The purpose is to help in a context of Network Management applications like NNM. It can be used in different situations: Evaluation, Development, Testing, Demo, Support and Training. NWS is built around four parts: 1) "Java GUI", which is a Graphical interface that allows to draw the simulated network, set up the network attributes (IP addresses, network masks, routing tables, MIB values....) and save it into different file formats (including text format). The GUI part is based on GEF framework (a java class library that supports the construction of graph editing applications). This Java GUI is so sophisticated that can be used as an application for designing real network 2) "MIBcompiler" which reads and compiles the MIBs text files (MIBs to be recognized by the application). The process recognizes the ASN.1/SIM syntax and constitutes a real MIB compiler. Especially, the ASN.1 macro problem was worked around. 3) "NWcompiler", transforms the network text file created by the GUI into an internal database (called NWdb) usable by the simulation daemon, "nwsd". 4) "nwsd", this one of the most important process of the application. It works in the following way: First it sets the principal LAN card in promiscuous mode, then it enter in the following endless loop. Inside this loop, nwsd reads the incoming Ethernet frames. Each time the frame corresponds to the IP protocol, nwsd interrogate the NWdb to see if the IP address belongs to one of the simulated networks. If it's the case, the answer is build using the same NWdb and sent to the NNM. For more details, please see: http://membres.lycos.fr/nwsimulator/NWS.ppt

This is the initial web content for your project. Please customize this to fit your project. You dont need to anwser all these questions or follow this exact format, but we do like to see this kind of information before we approve projects for public viewing.

Until your project is approved, only you can view it and work on it.

  • This index.html will be used if and only if you have the "Use Project Home Page" option checked on the "Adminster Project" page (click the "Admin" tab).
  • To edit this file, check out your project via CVS and edit www/index.html.
  • You can 'cvs add' and commit other files under the project's "www" directory and they will published to your project web site.
  • Also, consider starting a thread in the "dev" mailing list to get thes discussion started. A good one is an "introduction" thread where people post messages about themselves and their interest in the project.
  • You can add a "Highlights:" line to the top of all web pages by adding a file www/project_highlights.html


What is the goal of this project?

What is the scope of this project?

For example:

  • Develop just enough functionality to scratch a particular itch
  • Build a tool just like XYZ, but less broken
  • Build the best XYZ-tool ever!

What are high-level features you are sure to build?

  • What would you write on a billboard about your project? Users might only look for a few seconds.
  • Use the issue tracker to track features and enhancement requests. It is not just for bugs, pre-populate it with feature descriptions so that potential contributors know what you would like them to work on.

What are the high-level assumptions or ground rules for the project?

For example:

  • we will use programming language X on operating system Y for now.
  • We will, or will not, consider certain functional areas like internationalization, high security, concurrency, etc. The list of functional areas will depend on what you are trying to do.
  • Try to keep this part short.

Related resources

  • Link to other stuff that you know about. It will help you research requirements and provide a useful resource to potential contributors.
  • Why reinvent the wheel? What is better about this wheel? Is there any existing project that you can partner with or reuse?
  • Where would you go to try to find potential contibutors?