Windows Port of ns-3 using Visual Studio

From Nsnam
Revision as of 15:56, 12 March 2011 by Jabraham3 (Talk | contribs) (Project Goals)

Jump to: navigation, search

A project to extend NS3 functionality on Windows operating-systems

If you want to try the pilot implementation , go to #Software download

Project Goals

  1. To reduce or eliminate the need for CygWin to run NS3 on Windows operating-systems
  2. To expose native Windows API to NS3 developers
  3. To integrate NS3 into IDE's such as Visual Studio 2010
  4. To integrate NS3 into IDE's such as Visual Studio 2008 (Stretch Goal)

It is envisioned to develop an application which can open a Windows Console or a Windows GUI based on user selection via the command-line. At least one sample Windows GUI will be provided. Here is an example GUI:


Development Plan

  1. Feasibility study and pilot implementation
  2. After the final commit from the NS3 Modularization project finalize folder structure and module list
  3. Review and commit changes for Windows onto ns-3.11
  4. Review copyrights,coding-style and documentation
  5. Build automated build framework

Current status

  1. The feasibility study is underway and a pilot (unstable) implementation is available at #Software download

Software download

  • Version (ns-3.10-Win-1.0) Pilot Implementation


Most components under "src" are integrated into Visual Studio 2010 with only trivial syntactical changes except for the following which have been explicitly excluded for this version

  1. Missing code from Core simulator:
    • tools
    • test
    • mpi
    • contrib
    • cairo high-precision
    • any animation related code
    • tap-bridge
    • nist-error-rate-model and yans-error-rate-model, which implies most wireless code is unusable
    • emulation
    • olsr
    • NSC
    • realtime
    • utils
    • python bindings
    • unix* and wall-clock-synchronization
    • matrix topology reader
  2. Missing code from Examples:
    • examples/wireless
    • examples/mpi
    • examples/socket
    • examples/realtime
    • examples/topology-read
    • examples/stats
    • examples/matrix-topology
    • examples/error-model
    • examples/energy
    • examples/emulation
    • examples/animation

Installation & Usage