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 Trac
Control Plane
Data Plane
G
U
I
CLI
X
M
L
Preprocess &
Compile










