I have used it for my college project,it has helped me to figure out how all protocols work in terms of implementation details.It also helps in creating virtual environments so that there can be better understanding of networking concepts. The fact that it provides source codes makes it very difficult to debug when required as well as modifying certain aspects which are not supported by it.I would say this tool should get some more features like WAN testing with BGP support. We use ns-3 for our research projects where we try different approaches for improving network performance.