A discrete event (DE) simulator simulates some physical system in which events happen at discrete times.
NePSing (Network Protocol Simulator next generation) is a framework that gives you a set of C++ classes useful to develop a DE simulator. It is not a simulator itself, but making a complete simulation tool is an easy task using NePSing.
As an example, in case of a
wireless network protocol
simulation there will be a set of device classes, representing the base
station and the mobile terminals, contained in a system class which is
the cellular system. Each device will generate events for other devices
or to themselves, as well as receive events from other devices. These
events can be the generation of a packet at a mobile terminal, the
beginning or the end of its transmission to the base station, the
reception of an acknowledgment, and so on. NePSing provides facilities
to build and managing devices, events, timings, simulation parameters,
debugging and data collection, as well as some others minor things.
Some NePSing features are:
Last but not least... NePSing
is licensed under the LGPL
code :P