Technical data

Table Of Contents
4 ServerIron ADX OpenScript Guide
53-1002445-01
Using Perl on the ServerIron ADX
1
Architecture of the OpenScript engine
Because script parsing is highly CPU-intensive it is performed entirely on the management
processor (MP) of the ServerIron ADX. If the compilation succeeds on the MP, the script is
downloaded to the application processor (BP) for installation. The BP prepares the script by
generating machine byte code and binds it by inlining it in the packet processing path for the virtual
server and service. This process is displayed in Figure 2.
FIGURE 2 OpenScript compilation and installation process
Performance estimator
The scripting engine provides the capability to predict the performance impact of a given script
within a 25% margin of error. The estimate is provided as a measure of CPS and TPS percent
degradation from the published performance baseline.
Using Perl on the ServerIron ADX
The Perl implementation on ServerIron ADX is based on Perl Version 5.12. It preserves the core
syntax and semantics of the core language as specified at the perldoc site:
http://perldoc.perl.org/5.12.4/perlsyn.html.
Perl variables
Perl variable scoping on ServerIron ADX
Any lexical variable declared as “my” within a script is re-initialized on every run. Variable
scoping is limited to the script it resides in. This means that variables are not visible to
other scripts.
A state lexical variable behaves like a C language static, with persistent value across
reruns. It is never re-initialized like “my”.
USB
OpenScript Engine
IPC
Compile
Scrip t
Machine
Bytecode
Data Trac
Control Plane
Data Plane
G
U
I
CLI
X
M
L
Preprocess &
Compile