JSON RPC CLI Management for Network Device Interoperability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for managing network devices through command line interfaces (CLI) become obsolete with hardware and software updates and are not standardized, requiring frequent modifications to meet specific network environments.
Innovation Solution
A system that includes a controller with third-party software to issue CLI commands to network devices, using JSON RPC over HTTP to encapsulate and execute CLI commands, and a network device agent to process and respond in JSON format, ensuring compatibility and standardization across updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If existing systems are used to manage network devices through CLI, then automation functionality is achieved, but the systems become obsolete with hardware and software updates and require frequent modifications
Solution Approach 1:
The patent implements a universal JSON-based interface that can manage multiple network devices from different vendors (Cisco, Juniper, Nokia, etc.) through a common protocol. The JSON commands and responses provide a standardized method that works across different device types and software versions, eliminating the need for vendor-specific automation systems and their frequent modifications.
Solution Approach 2:
The system changes the interface parameters from proprietary CLI formats to standardized JSON format with specific structures (commands as strings, responses as structured JSON objects). This parameter change allows the same interface to work with different network devices regardless of their internal hardware or software updates, as long as they support JSON communication.
2Ease of operation
If vendor-specific automation systems are implemented, then automation functionality is achieved, but the systems are not standardized and must be modified to meet specific network environments
Solution Approach 1:
The patent introduces JSON as an intermediary format between the controller and network devices. Instead of requiring custom automation systems for each vendor, the JSON interface acts as a universal mediator that translates controller commands into device-specific operations and converts device responses into standardized JSON format, simplifying automation across diverse network environments.
Solution Approach 2:
The system segments the automation interface into distinct JSON components: command definition, parameter passing, response formatting, and error handling. This segmentation allows each component to be independently standardized while maintaining overall system simplicity, eliminating the need for complex customized automation systems for different vendors.
3Ease of operation
If traditional CLI management is used, then device control is achieved, but interoperability between different vendors and systems is limited
Solution Approach 1:
The JSON interface provides universal device control capability that works across multiple vendors (Cisco, Juniper, Nokia, Huawei, etc.) and device types (switches, routers, firewalls). The standardized JSON command structure and response format enable a single controller to manage diverse network infrastructure without requiring vendor-specific adaptations.
Solution Approach 2:
JSON serves as an intermediary language between the controller and various network devices. The controller sends standardized JSON commands, and devices return standardized JSON responses, creating a universal communication layer that enables interoperability across different vendor ecosystems while maintaining ease of device control.
Data Source
AI summary
A method for executing a command line interface (CLI) command by receiving a hyper text transport protocol (HTTP) comprising the CLI command from a controller, extracting the CLI command from the HTTP request, and executing, by a network device, the CLI command to generate a populated model comprising results generated from executing the CLI command. The method also executes the CLI command by converting the populated model into a JSON format using a JSON engine to obtain a JSON result; encapsulating the JSON result in a JSON Remote Procedure Call (RPC), and transmitting the JSON RPC as a HTTP response to the controller.


