Trema is an open source framework for developing OpenFlow controllers for software-defined networking in the Ruby and C programming languages. NEC created the technology and uses it as the foundation of its commercial ProgrammableFlow Controller.
Trema is a full-stack, programming framework that allows users to develop and test OpenFlow controllers on a laptop. Developers can build their own controllers based on Trema by adding messaging scripts.
The NEC engineers who created Trema focused on short, concise coding in order to reduce the possibility of software bugs and to ease code maintenance.