floodlight/ivs — pull request #214 by rlane (2014-11-11 07:58:37+00:00)
Title: Experimental LuaJIT packet pipeline

Reviewer: @harshsin

This module allows the controller to upload Lua scripts which implement the packet processing logic. The LuaJIT VM will compile the hot paths into machine code for efficient execution. Preliminary benchmarks show the Lua pipeline is competitive with C, at around 450000 upcalls/s/core.

The new pipeline_lua module is only compiled in if the USE_LUAJIT make variable is set. I'm going to keep it disabled by default at least until we have a solution for sandboxing.

Still to do:
- Sandboxing
- Better OpenFlow messaging for code uploads
- Stats
- Concurrency
- Gentable unregistration