I am planning to implement security threat models and security methods for the Internet of Things. What are the commonly used simulation tools for the Internet of Things?
Apart from general network simulators, if you are a fan of the All-IP Internet of Things, Contiki OS + Cooja simulator is, I believe, an excellent one.
I personally think that already existing tools for simulating wireless networks can be modified and used for simulating D2D and M2M. For example tools for WSN like Omnet, NS2, Qulnet and NetSim.
Apart from general network simulators, if you are a fan of the All-IP Internet of Things, Contiki OS + Cooja simulator is, I believe, an excellent one.
As we know, IoT will have various devices and can be divided into different networks. Thus, your security threat model needs to focus a certain level, but not all the levels including hardware, OS, network protocol, and application...The existing answers have clarify the good network simulators you can adopt (Cooja is a cross-level simulator but the others also can run with specific emulators like Qemu and etc).
M. Younan, S. Khattab, and R. Bahgat, "An Integrated Testbed Environment for the Web of Things," in ICNS 2015 : The Eleventh International Conference on Networking and Services, ISBN: 978-1-61208-404-6, Rome, Italy, May, 2015, pp. 69-78.
I am using the NetSim v10 (http://tetcos.com) comes with many IOT features including 6LOPAN Gateway, RPL protocol, IOT security and interfacing with other softwares like MATLAB etc. There is also good support and community for this simulator.
Mehdi, I would recommend NetSim (http://www.tetcos.com) and you can visualize a number of things including packet flow, packet headers/payloads, route formatting etc with just a few clicks. You can also write your own algorithms easily.
We use NetSim for IOT R & D. It supports various routing protocols including RPL and 802.15.4 protocols for MAC and lots of support for different PHY parameters. And it also has run time interfacing with MATLAB. Since it has source code that can be modified to do your research.
The backbone of IoT is wire-framed by Wireless Sensor Networks (WSN). As already said by most, Cooja Simulator running on Contiki OS (Linux based) is an excellent choice, as it uses the driver that run on the actual Motes in simulation. This provides you a close to real life scenario in a virtual simulation environment.
It is important to add that NS2/3 centers on general Wireless architecture, you will have to do a lot of tweak to make it meet your demand for WSN will Cooja focuses mainly on WSN.