Netsim, it provides a stable environment for simulating IoT Experiments. Also, you will have access to Netsim API Codes so you can modify all libraries (RPL, Firewall etc). I am really happy with Netsim. I used Cooja before but the environment is buggy and there is not any support team to help you. when you use Netsim then you can ask Netsim support team your questions by creating tickets so then they will answer your questions shortly, they are really supportive. Last but not least, Netsim interface with almost all programming languages and especially python.