You could also use Matlab to write your own code and simulate the network behaviors. Ns2 /Ns-3 are open source but have a steep learning curve. Matlab is proprietary, but easier to learn.
Like Ananth said, those are all good options. I'd check all of them out. Ns2/3 is often initially discarded due to lack of gui, but it's quite robust. Matlab could work (as well as Scilab, though I believe it'd require much more effort on your part). Then there is NetSim (gaining some popularity, but I've never actually used it) and if you want to develop your own solution, supposedly the OMNeT++ framework could be helpful as well. Check your options and try to run a few of them. You're searching for the one that works best with your scripts and doesn't seem to suffer from noticeable performance issues.
OMNET++ (www.omnetpp.org) and Ptolemy II (http://ptolemy.eecs.berkeley.edu/ptolemyII/) are two candidates. My personal favorite is Ptolemy II due to its ability for hybrid simulation between continuous and discrete event time simulations. If you are more intrerested in network simulation per se, then omnet++ may be a better choice due to the extensive libraries for network protocols. Mind you, the license for OMNET++ is more restrictive than for ns2/3 or Ptolemy II. Finally, you got SHOX library for Java (http://shox.sourceforge.net/), but I prefer the component-oriented simulation in both Ptolemy II and OMNET++. Then, of course, there are about 10 proprietary simulator frameworks that may fit the bill, but I assume they are outside the scope in this question.