Research Article

In-Network Data Processing in Software-Defined IoT with a Programmable Data Plane

Table 1

Directives, new instructions, and predefined procedures.

Directive statementDescription
%import <exported symbol>Import a external procedure
%addvar <var_name>Declare an integer variable
%setarray <arr_name> <size>Declare an array
%setinit <label>Set the starting point of the initialization code
%defevent <ev_type> <size>Define a new user-defined event type
InstructionOperandsDescription
outportPacket out to port
normā€‰Vender-dependent packet processing
wrtoffsetWrite word A to packet offset
callsymbolCall a external procedure
Ext procedureScratch memoryDescription
reg_hndev_type, labelRegister an event handler
ureg_hndev_type, labelUnregister an event handler
gen_evev_type, dataGenerate an event with given type and data
timerexpire, labelRegister a timer event
npktsize, nullAllocate a new packet buffer