IoT communication device configuration management methods, devices, equipment and storage media
By obtaining basic information and business requirements of IoT communication devices to generate configuration templates, and then verifying and optimizing their effectiveness, the problem of diverse device types and inconsistent protocols is solved, achieving flexible and accurate configuration management.
Patent Information
- Application Number
- CN202411431905.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-14
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2044-10-14
AI Technical Summary
The wide variety of IoT communication devices, inconsistent protocol standards, and diverse business requirements make it difficult for traditional configuration management methods to meet actual needs.
By acquiring the protocols supported by the communication devices, collecting basic information, generating configuration templates, and verifying and optimizing their effectiveness, the configuration templates are rendered using a template engine and distributed to the devices using standardized protocols. Real-time acquisition of operational data and user feedback is used for further optimization.
It enables interconnection and interoperability between different devices, improves the flexibility and accuracy of template configuration, and enhances the efficiency and accuracy of configuration management.
Smart Images

Figure CN119276701B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of communication equipment management technology, and in particular to a method, apparatus, device and storage medium for configuring and managing Internet of Things (IoT) communication equipment. Background Technology
[0002] In the field of IoT communication device configuration management, various solutions are currently available. These solutions mostly cover basic aspects such as device discovery, configuration template design, configuration distribution, configuration verification and monitoring, and configuration updates and optimization. These solutions, to a certain extent, automate the configuration management of IoT communication devices, improving configuration efficiency and accuracy.
[0003] However, with the continuous development of IoT technology and the expansion of its application areas, the configuration management of IoT communication devices faces increasing challenges. Factors such as the wide variety of device types, inconsistent protocol standards, and diverse business requirements make traditional configuration management methods insufficient to meet actual needs. Summary of the Invention
[0004] This invention provides a method, apparatus, device, and storage medium for configuring and managing IoT communication devices, which addresses the technical problem that traditional configuration management methods are difficult to meet actual needs due to factors such as the wide variety of device types, inconsistent protocol standards, and diverse business requirements.
[0005] This invention provides a method for configuring and managing IoT communication devices, comprising:
[0006] Obtain the communication protocols supported by communication devices in the Internet of Things (IoT);
[0007] The communication device is connected via the communication protocol to collect basic information about the communication device.
[0008] Obtain the device type and service requirements of the communication device;
[0009] A configuration template is generated based on the device type, the business requirements, and the basic information;
[0010] The configuration template is then sent to the corresponding communication device for device configuration.
[0011] Verify the effectiveness of the configuration template;
[0012] When the verification is successful, the device operation data and user feedback of the configured communication device are obtained in real time;
[0013] Based on the device's operating data and user feedback, the communication device is configured and optimized.
[0014] Optionally, the step of generating a configuration template based on the device type, the service requirements, and the basic information includes:
[0015] The template structure is determined based on the device type and the business requirements;
[0016] Obtain configuration information based on the template structure;
[0017] The template structure is populated with the basic information and the configuration information to generate a configuration template.
[0018] Optionally, the step of sending the configuration template to the corresponding communication device for device configuration includes:
[0019] The configuration template is rendered using a template engine, and the rendered configuration template is sent to the communication device through a preset standardized configuration management protocol.
[0020] Optionally, the step of validating the configuration template includes:
[0021] Obtain the current status information of the communication device;
[0022] Based on the device type of the communication device, obtain the target configuration template from the configuration template library;
[0023] Obtain the expected state from the target configuration template;
[0024] Determine whether the current state information is consistent with the expected state;
[0025] If they match, the configuration template is deemed to have passed the validity verification.
[0026] Optionally, the step of configuring and optimizing the communication device based on the device operating data and user feedback includes:
[0027] The performance bottlenecks, failure modes, and user habits of the communication equipment are obtained from the equipment's operating data.
[0028] Obtain user configuration satisfaction and potential needs from the aforementioned user feedback;
[0029] Optimize the configuration template of the communication device based on the performance bottleneck, the failure mode, the user habits, the configuration satisfaction, and the potential needs.
[0030] The present invention also provides an IoT communication device configuration management apparatus, comprising:
[0031] The communication protocol acquisition module is used to acquire the communication protocols supported by communication devices in the Internet of Things.
[0032] A basic information collection module is used to communicate with the communication device through the communication protocol and collect basic information of the communication device.
[0033] The device type and service requirement acquisition module is used to acquire the device type and service requirements of the communication device.
[0034] A configuration template generation module is used to generate a configuration template based on the device type, the business requirements, and the basic information.
[0035] The device configuration module is used to send the configuration template to the corresponding communication device for device configuration;
[0036] The validity verification module is used to verify the validity of the configuration template.
[0037] The device operation data and user feedback acquisition module is used to acquire the device operation data and user feedback of the configured communication device in real time when the verification is successful.
[0038] The optimization module is used to optimize the configuration of the communication device based on the device's operating data and user feedback.
[0039] Optionally, the configuration template generation module includes:
[0040] The template structure determination submodule is used to determine the template structure based on the device type and the business requirements.
[0041] The configuration information acquisition submodule is used to acquire configuration information based on the template structure.
[0042] The configuration template generation submodule is used to fill the template structure with the basic information and the configuration information to generate a configuration template.
[0043] Optionally, the device configuration module includes:
[0044] The device configuration submodule is used to render the configuration template using a template engine and send the rendered configuration template to the communication device through a preset standardized configuration management protocol.
[0045] The present invention also provides an electronic device, the device comprising a processor and a memory:
[0046] The memory is used to store program code and transmit the program code to the processor;
[0047] The processor is used to execute the IoT communication device configuration management method as described above, according to the instructions in the program code.
[0048] The present invention also provides a computer-readable storage medium for storing program code for executing the Internet of Things communication device configuration management method as described in any of the preceding claims.
[0049] As can be seen from the above technical solutions, the present invention has the following advantages: The present invention provides a configuration management method for IoT communication devices, specifically including: obtaining the communication protocols supported by the communication device; establishing a communication connection with the communication device through the communication protocol to collect basic information of the communication device; obtaining the device type and service requirements of the communication device; generating a configuration template based on the device type, service requirements, and basic information; distributing the configuration template to the corresponding communication device for device configuration; verifying the effectiveness of the configuration template; when the verification is successful, obtaining the device operation data and user feedback of the configured communication device in real time; and optimizing the configuration of the communication device based on the device operation data and user feedback. The present invention obtains the basic information of the communication device by selecting supported communication protocols, thereby achieving interconnection and interoperability between different devices. Then, it generates a configuration template based on the device type and service requirements, making the template configuration more flexible. Finally, it improves the accuracy of the template configuration through dynamic optimization of the configuration template. Attached Figure Description
[0050] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0051] Figure 1 A flowchart illustrating the steps of an IoT communication device configuration management method provided in this embodiment of the invention;
[0052] Figure 2 A flowchart illustrating the steps of an IoT communication device configuration management method according to another embodiment of the present invention;
[0053] Figure 3 This is a structural block diagram of an Internet of Things (IoT) communication device configuration management device provided in an embodiment of the present invention. Detailed Implementation
[0054] This invention provides a method, apparatus, device, and storage medium for configuring and managing IoT communication devices, which addresses the technical problem that traditional configuration management methods are difficult to meet actual needs due to factors such as the wide variety of device types, inconsistent protocol standards, and diverse business requirements.
[0055] To make the objectives, features, and advantages of this invention more apparent and understandable, the technical solutions of the embodiments of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the embodiments described below are only some embodiments of this invention, and not all embodiments. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.
[0056] Please see Figure 1 , Figure 1 A flowchart illustrating the steps of an IoT communication device configuration management method provided in an embodiment of the present invention.
[0057] The present invention provides a configuration management method for Internet of Things (IoT) communication devices, which may specifically include the following steps:
[0058] Step 101: Obtain the communication protocols supported by communication devices in the Internet of Things;
[0059] The Internet of Things (IoT) refers to connecting any object to a network through information sensing devices and according to agreed protocols. Objects exchange and communicate information through information transmission media to achieve functions such as intelligent identification, positioning, tracking, and monitoring.
[0060] The communication device in this embodiment of the invention can be a router, switch, or sensor, etc.
[0061] In this embodiment of the invention, for communication devices that support standard protocols, a connection can be established using the standard protocol. For communication devices that do not support standard communication protocols, communication can be achieved using API interfaces provided by the device manufacturer or custom protocols.
[0062] In one example, the standard communication protocol could be SNMP (Simple Network Management Protocol) or SSH (Secure Shell), etc.
[0063] SNMP is a standard protocol specifically designed for managing network nodes (servers, workstations, routers, switches, and hubs, etc.) in IP networks. It is an application layer protocol. SNMP enables network administrators to manage network performance, identify and resolve network problems, and plan for network growth. Network management systems become aware of network problems by receiving random messages (i.e., event reports) through SNMP.
[0064] SSH is a protocol used for secure remote login and other secure network services over insecure networks.
[0065] Step 102: Establish a communication connection with the communication device through a communication protocol and collect basic information about the communication device;
[0066] In this embodiment of the invention, the basic information of the communication device may include IP address, MAC address, device model, etc.
[0067] Step 103: Obtain the device type and service requirements of the communication equipment;
[0068] Step 104: Generate a configuration template based on device type, business requirements, and basic information;
[0069] In this embodiment of the invention, corresponding configuration templates can be designed according to device type and service requirements, including network parameters, security settings, service parameters, etc.
[0070] In practice, configuration templates can be designed using a text editor or a dedicated configuration management tool to ensure their flexibility and reusability.
[0071] Step 105: Distribute the configuration template to the corresponding communication device for device configuration;
[0072] Step 106: Verify the effectiveness of the configuration template;
[0073] In this embodiment of the invention, device status information can be collected through mechanisms such as SNMP Trap and Syslog, and compared and verified with the configuration template. Simultaneously, monitoring tools (such as Zabbix and Prometheus) are used to monitor device performance in real time. The device status information collection strategy is optimized to ensure the accuracy and timeliness of the information; furthermore, a verification mechanism for the device status information is provided to ensure its reliability.
[0074] Step 107: When the verification is successful, obtain the device operation data and user feedback of the configured communication device in real time;
[0075] Step 108: Optimize the configuration of the communication equipment based on equipment operation data and user feedback.
[0076] In this embodiment of the invention, the device configuration can be updated and optimized based on device operating data and user feedback.
[0077] In practice, version control tools (such as Git) can be used to manage configuration templates, making updates and rollbacks easier; at the same time, configurations can be optimized by collecting device operation data and user feedback.
[0078] This invention obtains basic information about communication devices by selecting supported communication protocols, enabling interconnection between different devices. Then, it generates configuration templates based on device type and service requirements, making template configuration more flexible. Finally, it improves the accuracy of template configuration through dynamic optimization of the configuration templates.
[0079] Please see Figure 2 , Figure 2 A flowchart illustrating the steps of an IoT communication device configuration management method according to another embodiment of the present invention. Specifically, it may include the following steps:
[0080] Step 201: Obtain the communication protocols supported by communication devices in the Internet of Things;
[0081] Step 202: Establish a communication connection with the communication device through a communication protocol and collect basic information about the communication device;
[0082] In this embodiment of the invention, for communication devices that support standard protocols, a connection can be established using the standard protocol. For communication devices that do not support standard communication protocols, communication can be achieved using API interfaces provided by the device manufacturer or custom protocols.
[0083] In one example, the standard communication protocol could be SNMP (Simple Network Management Protocol) or SSH (Secure Shell), etc.
[0084] SNMP is a standard protocol specifically designed for managing network nodes (servers, workstations, routers, switches, and hubs, etc.) in IP networks. It is an application layer protocol. SNMP enables network administrators to manage network performance, identify and resolve network problems, and plan for network growth. Network management systems become aware of network problems by receiving random messages (and event reports) through SNMP.
[0085] SSH is a protocol used for secure remote login and other secure network services over insecure networks.
[0086] In one example, here is a specific process for using SNMP or SSH protocols for device discovery and identification:
[0087] SNMP example:
[0088] Initialize SNMP session:
[0089] The management system (usually a configuration management system or NMS) creates an SNMP session, specifying the target device's IP address and SNMP version (usually SNMPv2c or SNMPv3).
[0090] Select an SNMP community string (for SNMPv2c) or set security parameters (for SNMPv3).
[0091] Send an SNMP GET request:
[0092] The management system constructs an SNMP GET request PDU (Protocol Data Unit), which specifies the device object identifier (OID) to be queried. In a device discovery scenario, it may query basic information such as device type, serial number, and software version.
[0093] The management system sends a GET request to the target device over the network.
[0094] Receive SNMP response:
[0095] After receiving an SNMP GET request, the target device retrieves the corresponding information from the MIB (Management Information Base) based on the OID in the request.
[0096] The device constructs an SNMP GET response PDU and returns the retrieved information as a response to the management system.
[0097] Parsing SNMP responses:
[0098] After receiving the SNMP response, the management system parses the data in the response PDU and extracts the basic information of the device.
[0099] The extracted device information is stored in a database or configuration management system for subsequent configuration management and monitoring.
[0100] SSH example:
[0101] When a device does not support SNMP or SNMP is insufficient to meet the requirements, SSH can be used for more complex device discovery and identification.
[0102] Establish an SSH connection:
[0103] The management system uses SSH client libraries (such as OpenSSH, Paramiko, etc.) to establish a connection with the SSH server of the target device.
[0104] The management system provides username and password (or key authentication) for authentication.
[0105] Execute command:
[0106] Once the SSH connection is established and authenticated, the management system can send commands (such as CLI commands) to the device via the SSH connection.
[0107] For example, you can send commands such as show version and show interface to obtain basic information and configuration status of the device.
[0108] Receive and parse command output:
[0109] After the device executes the command, it sends the command output back to the management system via an SSH connection.
[0110] The management system receives command output and uses a parser (such as regular expressions) to extract the required information.
[0111] Processing the extracted information:
[0112] The management system stores the extracted information in a database or configuration management system for subsequent configuration management and monitoring.
[0113] When using SSH for device discovery and identification, you need to ensure that the target device has SSH service enabled and that the system has access permissions.
[0114] SSH connections need to be encrypted to ensure secure communication. SSH key pairs can be used for authentication to further enhance security.
[0115] Because the format of SSH command output can vary depending on the device type and version, it may be necessary to write a specific parser to extract the required information.
[0116] Step 203: Obtain the device type and service requirements of the communication equipment;
[0117] Step 204: Determine the template structure based on the equipment type and business requirements;
[0118] Step 205: Obtain configuration information based on the template structure;
[0119] Step 206: Fill the template structure with basic information and configuration information to generate a configuration template;
[0120] In this embodiment of the invention, when designing the configuration template for an IoT communication device, multiple factors such as device type, service requirements, and network environment can be considered. The following is a specific example of the configuration template design process:
[0121] 1. Determine equipment type and business requirements
[0122] First, it's necessary to clarify the type of device to be configured, such as a router, switch, sensor, or other type of IoT device. Understanding the business requirements is also crucial, including which network the device needs to connect to, which ports need to be open, whether a VPN connection is required, and how security policies should be configured.
[0123] Taking a smart router as an example, suppose the business requirement is to provide it with a secure network environment and to support remote management and VPN access.
[0124] 2. Design and configure template structure
[0125] Based on the device type and business requirements, we can begin designing the basic structure of the configuration template. A configuration template typically includes the following parts:
[0126] Basic equipment information: such as equipment name, location, serial number, etc.
[0127] Network interface configuration: This includes settings for WAN and LAN ports, such as IP address, subnet mask, and gateway.
[0128] Security settings: firewall rules, access control lists (ACLs), SSH access permissions, etc.
[0129] VPN Configuration: If business requirements include VPN access, then the relevant parameters of the VPN server or client need to be configured.
[0130] Remote management: Configure the device's remote management functions, such as SNMP monitoring and TR-069 remote configuration.
[0131] Other business parameters: Depending on specific business needs, it may also be necessary to configure DNS server, NTP server, QoS policy, etc.
[0132] 3. Fill in the configuration template content
[0133] After determining the structure of the configuration template, we need to populate the template content according to specific business needs and best practices. Below is a simplified example of a smart router configuration template:
[0134]
[0135] 4. Test and verify the configuration template
[0136] Before applying the configuration template to actual devices, we need to conduct thorough testing and verification in a test environment. This includes checking the correctness of the configuration syntax, the completeness of functionality, and security. During testing, the configuration template may need to be adjusted and optimized to ensure it meets business requirements and can run stably in a real-world environment.
[0137] 5. Deployment and Monitoring
[0138] After testing and verification, we can deploy the configuration template to actual IoT communication devices. Once deployed, continuous monitoring and maintenance of the devices are necessary to ensure the correctness and effectiveness of the configuration. If any issues are discovered or the configuration needs to be adjusted to meet new business requirements, we can return to the configuration template design phase for corresponding modifications and updates.
[0139] Step 207: Distribute the configuration template to the corresponding communication device for device configuration;
[0140] In this embodiment of the invention, a template engine can be used to render configuration templates, and the rendered configuration templates can be sent to communication devices through a preset standardized configuration management protocol.
[0141] In one example, the template engine could be Jinja2, Handlebars, etc. Using a template engine to dynamically generate and render configuration templates can greatly improve the flexibility and reusability of configuration templates, while reducing the error rate during the configuration process. Below is a detailed example of using the Jinja2 template engine to dynamically generate and render configuration templates:
[0142] 1. Install the Jinja2 template engine
[0143] First, ensure that Jinja2 is installed on your system.
[0144] 2. Create a Jinja2 template file
[0145] Create a Jinja2 template file, typically using the .j2 file extension. Within the template, you can use Jinja2 syntax to define variables and logic.
[0146] For example, router_config.j2:
[0147]
[0148] In this template, the content within the {{}} symbols will be replaced with the actual values. `encrypt` is a hypothetical filter used to encrypt passwords (you actually need to implement this filter). `default` is a built-in Jinja2 function used to provide default values for variables.
[0149] 3. Prepare data
[0150] Before rendering the template, some data needs to be prepared to replace the variables in the template. This data is usually a Python dictionary or a similar data structure.
[0151]
[0152] 4. Rendering Template
[0153] Use Jinja2's Template class to load template files and use the render method to pass data to the template for rendering.
[0154]
[0155] After the configuration template is dynamically generated and rendered, it can be distributed to IoT communication devices using standardized configuration management protocols such as NETCONF (Network Configuration Protocol), YANG (Yet Another Next Generation Modeling language for Network Configuration Protocol), or TR-069 (Remote Device Management Protocol). The specific process will vary depending on the selected protocol. Below are examples and detailed descriptions of the basic configuration distribution process for these three protocols:
[0156] 1. Distribute configurations using the NETCONF protocol.
[0157] NETCONF is an XML-based network configuration protocol that allows network administrators to install, manage, and configure network devices over a secure network connection.
[0158] Example process:
[0159] Establish a NETCONF session:
[0160] The client (configuration management system) establishes a TLS / SSH encrypted session with the device.
[0161] The client sends a HELLO message, and the device replies with a HELLO message to confirm the session parameters.
[0162] Send RPC request:
[0163] The client writes an XML-formatted RPC (Remote Procedure Call) request based on the YANG data model. This request contains the configuration information that needs to be sent.
[0164] An RPC request is sent to the device.
[0165] Device processing request:
[0166] The device parses the configuration data in the RPC request.
[0167] Device application configuration changed.
[0168] Receive response:
[0169] The device sends an RPC reply message to the client to confirm the result of the configuration change (success or failure).
[0170] End session (optional):
[0171] If needed, the client can send a session end message to close the NETCONF session.
[0172] 2. Use the YANG data modeling language (usually used in conjunction with NETCONF).
[0173] YANG is a data modeling language used to define the data structures for NETCONF operations. YANG models describe the configuration data, status data, and operations performed on the device.
[0174] Using the YANG model:
[0175] Define the model: Use the YANG language to define the model of the device's configuration and status data.
[0176] Code generation: Generates client and server code frameworks based on the YANG model, simplifying the handling of NETCONF RPC requests and responses.
[0177] Configuration distribution: The configuration is distributed by sending an RPC request based on the YANG model definition through a NETCONF session.
[0178] 3. Distribute configuration using the TR-069 protocol.
[0179] TR-069 (CWMP, or CPE WAN Management Protocol) is a protocol defined by the DSL Forum for automatic configuration, fault management, and software management.
[0180] Example process:
[0181] Establish connection:
[0182] The client (ACS, Auto Configuration Server) establishes an HTTPS or TLS encrypted session with the device (CPE, Customer Premises Equipment).
[0183] Send configuration request:
[0184] The ACS sends a request to the CPE to get or set parameter values, which are defined according to the TR-069 object model.
[0185] The request contains the configuration information that needs to be distributed.
[0186] Device processing request:
[0187] The CPE parses the request and updates the configuration based on the parameter values in the request.
[0188] CPE sends a confirmation message to ACS, including the result of the configuration changes.
[0189] Continuous monitoring:
[0190] ACS can periodically send Inform message requests, asking CPE to report its status information.
[0191] CPE can proactively send Inform messages to ACS to report configuration changes, fault events, etc.
[0192] Step 208: Verify the effectiveness of the configuration template;
[0193] In IoT communication device configuration management solutions, current status information of communication devices can be collected through mechanisms such as SNMP Trap and Syslog, and compared with configuration templates to verify whether the device configuration is effective.
[0194] In one example, step 208 may include the following sub-steps:
[0195] S81, obtain the current status information of the communication device;
[0196] S82, based on the device type of the communication device, retrieve the target configuration template from the configuration template library;
[0197] S83, obtain the expected state from the target configuration template;
[0198] S84, determine whether the current state information is consistent with the expected state;
[0199] S85, if consistent, the configuration template is deemed to have passed the validity verification.
[0200] In the specific implementation, the current status information of the communication device is collected through mechanisms such as SNMP Trap and Syslog, and compared with the configuration template to verify whether the device configuration has taken effect. This can be achieved through the following process:
[0201] 1. Configure SNMP Trap and Syslog
[0202] SNMP Trap Configuration: Configure the SNMP Trap function in IoT communication devices so that they can proactively send Trap messages to the management system when the device status changes or specific events occur. These messages typically contain the device's IP address, event type, timestamp, and related status information.
[0203] Syslog Configuration: Similarly, configure the Syslog function in IoT communication devices to enable them to send log messages to the management system periodically or based on specific conditions. These log messages record information such as the device's operating status, errors, and warnings.
[0204] 2. Management system receives and parses Trap / Syslog messages
[0205] Receiving messages: The management system receives Trap and Syslog messages from IoT communication devices by listening on a specified UDP port (usually 162 for SNMP Trap and 514 for Syslog).
[0206] Message parsing: The management system uses the corresponding parser (such as SNMP parser, Syslog parser) to parse the received messages and extract useful information, such as device IP address, event type, timestamp, status information, etc.
[0207] 3. Compare and verify with the configuration template.
[0208] Retrieve configuration template: The management system retrieves the corresponding configuration template from the configuration template library based on information such as the device's IP address or device type.
[0209] Verification by comparison: The parsed device status information is compared with the expected status in the configuration template. This can be done by writing scripts or using existing configuration management tools. The comparison may include network parameters, security settings, service parameters, etc.
[0210] Result Judgment: Based on the comparison results, determine whether the device configuration has taken effect. If the device status matches the expected status in the configuration template, the configuration is considered to have taken effect; otherwise, the configuration is considered to have a problem or has not taken effect.
[0211] 4. Processing Verification Results
[0212] Record the results: Record the verification results to the management system's logs or database for subsequent analysis and querying.
[0213] Sending notifications: If the verification results show that the configuration has not taken effect or there is a problem, the management system can send a notification to the administrator via email, SMS, or other means to remind them to pay attention to and handle the relevant issues.
[0214] Automatic Repair: Depending on the nature and severity of the problem, the management system can attempt to automatically repair configuration issues. For example, if a device's network parameters are found to be misconfigured, the management system can automatically send the correct configuration template to that device.
[0215] Example:
[0216] Suppose there is an IoT communication device with IP address 192.168.1.100, and the configuration template requires that a certain network parameter (such as MTU) of the device be set to 1500.
[0217] After the device configuration is changed, it sends a message to the management system via SNMP Trap to indicate that the MTU has been changed to 1500.
[0218] After receiving the Trap message, the management system resolves the device's IP address (192.168.1.100) and MTU value (1500).
[0219] The management system retrieves the corresponding configuration template from the configuration template library based on the device's IP address and extracts the expected MTU value (also 1500).
[0220] The management system compares the parsed MTU value (1500) with the expected value (1500) in the configuration template and finds that they are consistent.
[0221] The management system records the verification result as "Configuration has taken effect" and may notify the administrator via email that the device's configuration has been successfully updated.
[0222] If the comparison results are inconsistent, the management system will record the verification result as "configuration not effective" or "configuration error" and send the corresponding notification to the administrator.
[0223] Step 209: When the verification is successful, obtain the device operation data and user feedback of the configured communication device in real time;
[0224] Step 210: Optimize the configuration of the communication equipment based on the equipment operation data and user feedback.
[0225] In this embodiment of the invention, the configuration template can be optimized by collecting device operation data and user feedback, which may specifically include the following sub-steps:
[0226] S101, obtain the performance bottlenecks, failure modes and user habits of communication equipment from the equipment operation data;
[0227] S102, obtain user configuration satisfaction and potential needs from user feedback;
[0228] S103 optimizes the configuration templates of communication devices based on performance bottlenecks, failure modes, user habits, configuration satisfaction, and potential needs.
[0229] In practical implementation, monitoring tools (such as Zabbix and Prometheus) are first used to monitor the operational status of IoT communication devices in real time and collect device operation data. Then, the collected data is analyzed to understand performance bottlenecks, failure modes, and user habits. User feedback is also used to understand user satisfaction with device configuration and potential needs. Next, based on the data analysis results, the configuration template is optimized, including adjusting network parameters, optimizing security settings, and improving service parameters. The optimization goal is to improve the operating efficiency of communication devices, reduce failure rates, and enhance user experience. Following optimization, a test environment is built to simulate the actual production environment to test the new configuration and ensure it does not affect the normal operation of the communication devices. If the test verification is successful, the new configuration template is committed via Git and deployed to the actual IoT communication devices.
[0230] To facilitate understanding, the following examples illustrate the optimization of configuration templates:
[0231] Suppose we have an IoT communication device whose configuration template includes some network parameters and security settings. Monitoring tools collect operational data from the device and reveal that it experiences high network latency at certain times. Meanwhile, user feedback also mentions issues related to unstable device connections.
[0232] 1. Data Analysis
[0233] Analysis of the operational data revealed that the network latency issue may be related to the device's MTU (Maximum Transmission Unit) setting. The current MTU setting may be too large, causing data packet splitting and reassembly during transmission, thus increasing transmission latency.
[0234] 2. Configuration optimization
[0235] Based on the data analysis results, the MTU setting in the configuration template can be optimized. The MTU value can be adjusted from 1500 bytes to 1400 bytes to reduce packet splitting and reassembly, thereby lowering transmission latency.
[0236] 3. Testing and Verification
[0237] After deploying the optimized configuration template to the test environment, thorough testing and verification were conducted. By simulating a real production environment, it was found that the network latency issue of the device was significantly improved, and user feedback also indicated that the connection stability of the device was enhanced.
[0238] 4. Deployment and Update
[0239] After successful testing and verification, the optimized configuration template will be committed via Git and deployed to the actual IoT communication device.
[0240] Furthermore, during deployment, Git's version control capabilities can be used to track and manage configuration template updates, facilitating subsequent maintenance and rollback operations. The process is as follows:
[0241] 1. Initialization of the configuration template
[0242] Use Git to create a new repository to store and manage configuration templates for IoT communication devices.
[0243] Add the initial version of the configuration template file to the Git repository and commit an initial commit.
[0244] 2. Modifying the configuration template
[0245] When the configuration template needs to be modified, the developers check out the latest template file from the Git repository.
[0246] Modify the template using a text editor or a dedicated configuration management tool.
[0247] After making the changes, add the modified template file to the staging area and commit it to the Git repository.
[0248] 3. Configure template version history
[0249] Git records information for each commit, including the committer, commit time, commit message, and changes made.
[0250] By viewing Git's commit history, you can track changes to the configuration template and understand the content and purpose of each modification.
[0251] 4. Configure template rollback
[0252] If you find a problem in a version of the configuration template, you can use Git's rollback feature to roll the template back to a previous stable version.
[0253] Rollback operations can be achieved by checking out a template file of a specified version, or by creating a new branch to save the current issue version and rolling back to the previous stable version on the main branch.
[0254] This invention obtains basic information about communication devices by selecting supported communication protocols, enabling interconnection between different devices. Then, it generates configuration templates based on device type and service requirements, making template configuration more flexible. Finally, it improves the accuracy of template configuration through dynamic optimization of the configuration templates.
[0255] Please see Figure 3 , Figure 3 This is a structural block diagram of an Internet of Things (IoT) communication device configuration management device provided in an embodiment of the present invention.
[0256] This invention provides an IoT communication device configuration management apparatus, comprising:
[0257] The communication protocol acquisition module 301 is used to acquire the communication protocols supported by communication devices in the Internet of Things.
[0258] The basic information collection module 302 is used to connect with the communication device via a communication protocol and collect basic information about the communication device.
[0259] The device type and service requirement acquisition module 303 is used to acquire the device type and service requirements of the communication device.
[0260] Configuration template generation module 304 is used to generate configuration templates based on device type, business requirements and basic information;
[0261] The device configuration module 305 is used to send the configuration template to the corresponding communication device for device configuration.
[0262] The validity verification module 306 is used to verify the validity of the configuration template;
[0263] The device operation data and user feedback acquisition module 307 is used to acquire the device operation data and user feedback of the configured communication device in real time when the verification is successful.
[0264] The optimization module 308 is used to optimize the configuration of the communication equipment based on the equipment operation data and user feedback.
[0265] In this embodiment of the invention, the configuration template generation module 304 includes:
[0266] The template structure determination submodule is used to determine the template structure based on the device type and business requirements.
[0267] The configuration information retrieval submodule is used to retrieve configuration information based on the template structure.
[0268] The configuration template generation submodule is used to populate the template structure with basic information and configuration information to generate a configuration template.
[0269] In this embodiment of the invention, the device configuration module 305 includes:
[0270] The device configuration submodule is used to render configuration templates using a template engine and distribute the rendered configuration templates to communication devices through a preset standardized configuration management protocol.
[0271] In this embodiment of the invention, the validity verification module 306 includes:
[0272] The current status information acquisition submodule is used to acquire the current status information of the communication device;
[0273] The target configuration template acquisition submodule is used to retrieve the target configuration template from the configuration template library based on the device type of the communication device.
[0274] The expected state acquisition submodule is used to obtain the expected state from the target configuration template;
[0275] The judgment submodule is used to determine whether the current state information is consistent with the expected state;
[0276] The determination submodule is used to determine whether the configuration template has passed the validity verification if the configuration matches.
[0277] In this embodiment of the invention, the optimization module 308 includes:
[0278] The first acquisition submodule is used to obtain the performance bottlenecks, fault modes and user habits of communication equipment from the equipment operation data;
[0279] The second acquisition submodule is used to obtain user configuration satisfaction and potential needs from user feedback;
[0280] The optimization submodule is used to optimize the configuration templates of communication devices based on performance bottlenecks, failure modes, user habits, configuration satisfaction, and potential needs.
[0281] This invention also provides an electronic device, which includes a processor and a memory:
[0282] The memory is used to store program code and transfer the program code to the processor;
[0283] The processor is used to execute the IoT communication device configuration management method of this invention according to the instructions in the program code.
[0284] This invention also provides a computer-readable storage medium for storing program code, which is used to execute the IoT communication device configuration management method of this invention.
[0285] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0286] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0287] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus, or computer program products. Therefore, embodiments of the present invention can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of the present invention can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0288] Embodiments of the present invention are described with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0289] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0290] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1The steps of the function specified in one or more boxes.
[0291] Although preferred embodiments of the present invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present invention.
[0292] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.
[0293] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for configuring and managing Internet of Things (IoT) communication devices, characterized in that, include: Obtain the communication protocols supported by communication devices in the Internet of Things (IoT); The communication device is connected via the communication protocol to collect basic information about the communication device. Obtain the device type and service requirements of the communication device; A configuration template is generated based on the device type, the business requirements, and the basic information; The configuration template is then sent to the corresponding communication device for device configuration. Verify the effectiveness of the configuration template; When the verification is successful, the device operation data and user feedback of the configured communication device are obtained in real time. Based on the device's operating data and user feedback, the communication device is configured and optimized.
2. The method according to claim 1, characterized in that, The step of generating a configuration template based on the device type, the service requirements, and the basic information includes: The template structure is determined based on the device type and the business requirements; Obtain configuration information based on the template structure; The template structure is populated with the basic information and the configuration information to generate a configuration template.
3. The method according to claim 1, characterized in that, The step of sending the configuration template to the corresponding communication device for device configuration includes: The configuration template is rendered using a template engine, and the rendered configuration template is sent to the communication device through a preset standardized configuration management protocol.
4. The method according to claim 1, characterized in that, The step of validating the configuration template includes: Obtain the current status information of the communication device; Based on the device type of the communication device, obtain the target configuration template from the configuration template library; Obtain the expected state from the target configuration template; Determine whether the current state information is consistent with the expected state; If they match, the configuration template is deemed to have passed the validity verification.
5. The method according to claim 1, characterized in that, The step of configuring and optimizing the communication device based on the device operating data and user feedback includes: The performance bottlenecks, failure modes, and user habits of the communication equipment are obtained from the equipment's operating data. Obtain user configuration satisfaction and potential needs from the aforementioned user feedback; Optimize the configuration template of the communication device based on the performance bottleneck, the failure mode, the user habits, the configuration satisfaction, and the potential needs.
6. A configuration management device for Internet of Things (IoT) communication devices, characterized in that, include: The communication protocol acquisition module is used to acquire the communication protocols supported by communication devices in the Internet of Things. A basic information collection module is used to communicate with the communication device through the communication protocol and collect basic information of the communication device. The device type and service requirements acquisition module is used to acquire the device type and service requirements of the communication device. A configuration template generation module is used to generate a configuration template based on the device type, the business requirements, and the basic information. The device configuration module is used to send the configuration template to the corresponding communication device for device configuration; The validity verification module is used to verify the validity of the configuration template. The device operation data and user feedback acquisition module is used to acquire the device operation data and user feedback of the configured communication device in real time when the verification is successful. The optimization module is used to optimize the configuration of the communication device based on the device's operating data and user feedback.
7. The apparatus according to claim 6, characterized in that, The configuration template generation module includes: The template structure determination submodule is used to determine the template structure based on the device type and the business requirements. The configuration information acquisition submodule is used to acquire configuration information based on the template structure. The configuration template generation submodule is used to fill the template structure with the basic information and the configuration information to generate a configuration template.
8. The apparatus according to claim 6, characterized in that, The device configuration module includes: The device configuration submodule is used to render the configuration template using a template engine and send the rendered configuration template to the communication device through a preset standardized configuration management protocol.
9. An electronic device, characterized in that, The device includes a processor and a memory: The memory is used to store program code and transmit the program code to the processor; The processor is used to execute the IoT communication device configuration management method according to any one of claims 1-5 according to the instructions in the program code.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium is used to store program code for executing the IoT communication device configuration management method according to any one of claims 1-5.
Citation Information
Patent Citations
Method and equipment for verifying network equipment configuration in cloud network environment, and medium
CN113938378A
Equipment control method and device, electronic equipment and storage medium
CN115167157A