What is RapidNet?
RapidNet is a development toolkit for rapid simulation, implementation and experimentation of network protocols. RapidNet utilizes declarative networking, a declarative, database-inspired extensible infrastructure that uses query languages to specify behavior. RapidNet integrates a declarative networking engine with the emerging ns-3 network simulator.
Network protocols are specified using Network Datalog (NDlog), which is a distributed recursive query language. Protocol specifications in NDlog are compiled into ns-3 code (in C++) using the RapidNet compiler. The compiled code runs as an ns-3 application in simulation mode. The same NDlog specifications can also be used as an actual implementation using the ns-3 network emulator, hence providing a bridge between simulation and testbed-based experimentation.
The long term goal of RapidNet is to provide a unified platform for rapid prototyping, synthesis, and deployment of new network protocols.