Command Line Interface (CLI)
MAPS™ CLI server interfaces with PacketExpert™ hardware
PacketExpert™ supports Command line Interface (CLI)to access all the functionalities remotely such as Bert, Loopback, RFC 2544, Record Playback, IPLinkSim™, ExpertSAM™, PacketBroker, and Multi Stream Traffic Generator and Analyzer TCL (Tool Command Language) and MAPS™ CLI Client/Server architecture.
PacketExpert™ can be configured as server-side application using the GL’s MAPS™ Client-Server architecture, to provide the capability of remote operation, automation, and multi-site connectivity, using any client-side scripting tools such as the Python, and TCL (Tool Command Language). On the client side, a TCL extension dll is provided. This dll enhances the standard TCL shell (tclsh85.exe) with PacketExpert™ specific functionalities that can be used to communicate with the MAPS™ CLI Server, execute scripts, read back responses etc.
TCL Scripting library enables communication with the MAPS™ CLI Server using TCP/IP socket from a TCL environment. The MAPS™ CLI server interfaces with the PacketExpert™ hardware through the USB. The MAPS™ CLI Server developed specifically for PacketExpert™ runs (*.gls) scripts that can talk to PacketExpert™ hardware. The advantage of such communication enables user to control PacketExpert™ by sending commands and receiving responses in a scripting language such as TCL that is already familiar with many users.
- Capability of remote operation, automation and multi-site connectivity using TCL client and MAPS™ CLI server.
- Scripts for MAC, VLAN, MPLS, IP and UDP layers testing
- Multiple PacketExpert™ can be controlled remotely from single client application via MAPS™ CLI server.
- Scripts for Bert, Loopback, RFC 2544, Record Playback, IPLinkSim™, PacketBroker, and ExpertSAM™ testing
Working Principle of MAPS™ CLI
Shown below is the working principle of the MAPS™ CLI Test System.
TCL Client runs TCL scripts which executes the command, that instructs the MAPS™ CLI Server to run the particular script which performs the particular PacketExpert™ test like BERT, RFC 2544 etc. Whenever a TCL wants to execute a particular section in the script it sends a User Event to perform that action and in turn the MAPS™ CLI Server sends the result back to TCL using Report Events so that TCL can take appropriate actions.
MAPS™ CLI Working Principle
This application consists of 3 functional modules. All these modules interact with each other to perform as a single entity. (Note: “User” refers to TCL)
- TCL Client – Acts as User Interface (TClsh85.exe) which executes TCL Scripts. TCL Script includes list of commands to perform certain actions which executes sequentially. TCL provides a simple scripting language, with programming facilities such as looping, procedures, and variables. For and While loops in TCL scripts make task execution simpler.
The important commands of a TCL script is starting a script, applying User Events and Stopping the script. All commands required to perform a particular function may be saved to a "*.tcl" Script and executed using just a single ‘source’ command.
TCL script instructs the CLI-server to run the particular script which performs the particular test like BERT/RFC 2544. Whenever TCL executes a particular section in the script it sends the User Event to perform that action and in turn the server sends the result back to TCL using Report events so that TCL can take appropriate Actions.
- MAPS™ TCL Interface (MAPS Client IFC) – acts as an interface between MAPS™ CLI Server and its client TCL. The MAPS™ TCL Client application includes a MapsClientIfc.dll file, a packaged library that enables communication with the MAPS™ Server from a TCL environment.
- It interprets the TCL Commands and forms the appropriate command as understood by MAPS™ CLI Server and vice versa.
- It also stores the MAPS™ CLI Server responses into Script Information Storage in a variable which can be accessed by the TCL Script.
- Stores the information from MAPS™ Server in a variable which can be accessed by the TCL Script
- TCL Client fetches the report using the get command
- MAPS™ CLI Server – is an executable which inherits all features of MAPS™ GUI. MAPS™ CLI Server is a scripting based frame work which controls the PacketExpert hardware using proprietary MAPS™ scripts which has list of instructions to perform actions such as,
- Storing/retrieving configuration to/from hardware,
- Start/stop BERT/RFC 2544 etc.,
- Timer related instruction,
- Conditional statements,
- Control statements.
TCL Client and Scripting
TCL Client application includes a command-line interface (TClsh85.exe) into which client users may key in commands or load commands from previously saved files.
TCL provides a simple scripting language, with programming facilities such as looping, procedures, and variables. The TCL Client application includes a MapsTclIfc.dll file, a packaged library that enables communication with the Server from a TCL environment.
MAPS™ TCL Client Interface (MAPS Client IFC) application includes a MapsClientIfc.dll file, a packaged library that enables communication with the MAPS™ Server from a TCL environment. The advantage of such communication enables user to control MAPS™ by sending commands and receiving responses in a scripting language already familiar with many users.
A sample TCL script (User_Bert.tcl) can be downloaded from here.
Command-Line based TCL Client
MAPS CLI Server
MAPS™ CLI Server is an executable which inherits all features of MAPS™ without GUI. It listens to a TCP message socket to receive and execute commands from client and sends the responses back to client.
GL’s proprietary MAPS™ CLI Server scripts (*.gls files) developed specifically for PacketExpert™ implements various PacketExpert™ functionalities like BERT, RFC 2544, and others. It includes XML files which contain the configuration information required for the test such as MAC Addresses, IP Addresses, BERT parameters, RFC 2544 parameters, and others, which are created using a Profile Editor. MAPS™ CLI Server interfaces internally with low level PacketExpert™ APIs to access PacketExpert™ hardware and to perform tasks.
Components of MAPS™ CLI Server for PacketExpert™
CLI Server script execution is Event Driven, i.e., Server detects the Events such as InsertStatus, InterfaceStatus, IsRunning, LoadProfileStatus, RFC2544Init, RFC2544TestConfig, TestDirection and others.
A sample CLI Server script (PEX_Init.gls) and (PEX_BERT_Main.gls) can be downloaded here.
MAPS™ CLI Server for PacketExpert™
Please Note: The XX in the Item No. refers to the hardware platform, listed at the bottom of the Buyer's Guide, which the software will be running on. Therefore, XX can either be ETA or EEA (Octal/Quad Boards), PTA or PEA (tProbe Units), UTA or UEA (USB Units), HUT or HUE (Universal Cards), and HDT or HDE (HD cards) depending upon the hardware.