Ethernet/IP Testing APIs for Test Automation and Remote Access

Welcome to another edition of GL Communications' Newsletter providing information and insight into Ethernet test automation capabilities through “API Support for PacketExpert™ Platforms”. This capability has applications for Ethernet/IP testing on 1 Gbps and 10 Gbps copper and optical networks.

packetexpert™ cli interfaces with hardware


Overview

PacketExpert™ can test a wide range of networks and systems including cables, switches, routers, local Ethernet/IP networks, wide area networks, and core/MPLS networks. It can measure bit errors, throughput, packet loss, latency, jitter, and more. It’s available in different form factors – from Rack-based High-density 12-port/24-port mTOP™ platform to Portable units.

In addition to the Graphical User Interface, the PacketExpert™ also provides access to all functionalities using Command Line Interface (CLI) and Application Programming Interfaces (API) through various clients such as Python, C#, and LabView™.

  • Wirespeed bit error rate testing
  • Smart loopback capability
  • RFC 2544 Tests (throughput, latency, packet loss)
  • Packet capture and replay
  • Packet Broker (wirespeed Ethernet tap)
  • WAN link emulation
  • Multi-stream traffic generation and analysis
  • ExpertTCP™ (RFC 6349)
  • ExpertSAM™ (ITU-T Y.1564)

PacketExpert™ can be configured as a server-side application using the GL’s MAPS™ CLI Client/Server architecture. The advantage of such communication enables users to control PacketExpert™ by sending commands and receiving responses in a compiled/scripting language such as Python, C#, and LabView™ that is already familiar to many users.

  • Control of Bert, Loopback, RFC 2544, Record Playback, IPLinkSim™, PacketBroker, and ExpertSAM™ testing
  • The capability of remote operation, automation, and multi-site connectivity
  • MAC, VLAN, MPLS, IP, and UDP layers testing
  • Multiple PacketExpert™ devices can be controlled remotely from a single client application


Working Principle of MAPS™ CLI

PacketExpert™ MAPS™ CLI Working Principle

PacketExpert™ MAPS™ CLI Working Principle

GL’s MAPS™ CLI Client/Server platform supports various client libraries in different languages to talk to the MAPS server and achieve automation. However, these are low-level libraries that require users to put in more effort to program with it.

For the PacketExpert platform, a set of high-level APIs has been developed on top of the MAPS Client library, which greatly reduces the time to develop sample applications and achieve automation. These APIs are developed in the respective languages and are easy to use and intuitive. Eg: C# APIs are provided using API classes for each application. Similarly, Python APIs are provided through API scripts that implement API classes for different applications. Also supplied are sample scripts that users can review to help learn how to use the APIs. Using these high-level APIs and sample applications, users can start developing automated testing in a very short period.



Python and C# Client APIs

Controlling PacketExpert™ Devices using Python and C# clients

GL offers Python and C# APIs for all functionalities of PacketExpert™. These APIs in turn use a low-level library to communicate with the PacketExpert MAPS™ server. Below is a snapshot of a sample Python script to control the PacketExpert:

Sample Python Client Script

Sample Python Client Script

At the core, PacketExpert™ will run the MAPS™ CLI Server, which can interface with PacketExpert™ low-level API to control the hardware. There are different MAPS™ scripts to implement different applications. Using the PacketExpert™ low-level APIs, the MAPS™ scripts (GL’s proprietary *.gls scripts) can control any number of PacketExpert™ hardware units connected to the system. Below is a snapshot of the MAPS™ CLI Server.

PacketExpert™ MAPS™ CLI Server

PacketExpert™ MAPS™ CLI Server



LabVIEW Integration

LabVIEW framework offers complete lab management, device provisioning, and test automation solutions for engineers. LabVIEW is a popular framework for test automation and is used worldwide to integrate different vendor equipment and automate the use of the same.

Using PacketExpert APIs, it's very easy to integrate PacketExpert into LabVIEW. Since LabVIEW supports various languages like Python or C#, the PacketExpert C# API dll can be directly imported into LabVIEW and used in the Graphical environment that LabVIEW provides to control PacketExpert devices and automate the testing.

PacketExpert™ Integration with LabVIEW

PacketExpert™ Integration with LabVIEW

With LabVIEW, it is easy to create flexible test scripts that control multiple hardware, customize test systems with graphical programming, and include analysis, drag, and drop interface. This makes the system compatible with GL's PacketExpert™ software. Eg: Importing the C# Client API dll into LabVIEW instantly provides the ability to run any PacketExpert test application like bit error rate testing, RFC 2544, loopback, and others.

LabView Port Statistics Report

LabView Port Statistics Report

Back to Newsletter Index Page Back to Newsletter Index Page