JMeter Netconf Plug-in and Network Service Automation
In this article, learn more about the JMeter Netconf plug-in and network service automation and see how the network service automation process is running in an example.
Join the DZone community and get the full member experience.
Join For FreeJMeter Netconf Plug-in and Network Service Automation
Network service automation-related requirements are usually realized by means of commercial or open-source network orchestrator or controller software system. However, for some temporary or urgent needs, software patch or version development, upgrade, and change are often involved, which sometimes makes network engineer feel like "to break a fly upon a wheel". In fact, it can be realized through a light-weight way, JMeter Netconf plug-in implementation and network service automation process customization without compiled code based on JMeter framework.
JMeter Netconf plug-in implementation includes two modules.
1. Netconf Client Module
Because the Netconf client just need the CRUD operations on the network device configuration data, so the plug-in only need support the following functions in the Netconf protocol stack: the configuration data in the content layer, all of the operation layer such as get-config, edit-config, etc., rpc, rpc-reply in the message layer, ssh in the secure transport layer.
2. JMeter Netconf Plug-In Module
JMeter online document has provided the guide about the plug-in development, the self-defined class, the related JMeter framework class and the relations between them have been described as follows.
Background framework class and self-defined class.
GUI related framework class and self-defined class.
With Netconf plug-in implemented above, we can use JMeter to customize the network service automation process without any compiled code. The network connection for the process is shown as follows, that is, through the JMeter with Netconf plug-in deployed on NMS(Network Management System) host, the network service configuration data can be deployed to the switches, routers or firewalls which support Netconf.
Here, we take the network device IP configuration scenario as an example to show how the network service automation process is running. Due to different Netconf/YANG model for different type of device provided by different network device vendor, there are usually some differences between the Netconf request messages from them. In the following example, we use IETF standard Netconf/YANG models to show the automation process and saved the process as a JMX file.
1. Input parameters
The JMeter framework provides parameter configuration GUI and the parameters can be invoked in the process. In the example, the network device login and the specified port information have been provided.
2. Device information collection and resource validation
With the information provided in step 1, the automation process will connect to the network device, query all ports resource information in it with get-config message through Netconf plug-in and verify the port specified exists or not in the response message.
3. Network service delivery
If step 2 is passed, the process will assemble the edit-config message according to the device information input in step 1 and the validated device port information in step 2, and send to the network device through the Netconf plug-in.
4. Result confirming
On JMeter side.
On device side.
JMeter has provided many kinds of protocol plug-ins such as HTTP, FTP, SNMP and several kinds of data processing plug-ins such as JSON, XML, etc., which can be used with Netconf plug-ins to realize most network service operations such as cross-system request, file transfer, and different data processing, and finally realize the E2E network service automation in a lightweight way.
Opinions expressed by DZone contributors are their own.
Trending
-
Which Is Better for IoT: Azure RTOS or FreeRTOS?
-
Comparing Cloud Hosting vs. Self Hosting
-
Revolutionizing Algorithmic Trading: The Power of Reinforcement Learning
-
What ChatGPT Needs Is Context
Comments