A configuration reconciliation method and apparatus, an electronic device, and a storage medium

By implementing an event registration and proactive reconciliation mechanism between the SDN controller and network devices, the stability issue of configuration reconciliation is resolved, resulting in more efficient and stable configuration data synchronization.

CN116366444BActive Publication Date: 2026-04-28MAIPU COMM TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
MAIPU COMM TECH CO LTD
Filing Date
2021-12-28
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

The existing configuration reconciliation between SDN controllers and network devices is not very stable, especially when network devices fail to update their configuration data and restart abnormally, which can cause network devices to malfunction.

Method used

The SDN controller sends an event registration request to the network device. The network device parses and registers the configuration reconciliation event, and sends the configuration data after successful registration. This prevents the network device from restarting due to failure if the configuration data is not saved. At the same time, through proactive reconciliation requests and user identifier management, only the changed configuration data is transmitted for reconciliation.

Benefits of technology

It improves the stability and efficiency of configuration reconciliation between the SDN controller and network devices, avoids abnormal network forwarding functions of network devices, and reduces network bandwidth consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116366444B_ABST
    Figure CN116366444B_ABST
Patent Text Reader

Abstract

The application provides a configuration reconciliation method and device, electronic equipment and a storage medium. The method is applied to a controller and includes the following steps: sending an event registration request to a network device, so that the network device parses and registers a plurality of configuration reconciliation events according to the event registration request and returns an event registration response; receiving the event registration response sent by the network device; judging whether the event registration response is successful; if yes, obtaining configuration data and sending the configuration data to the network device. In the implementation process, the controller sends an event registration request to the network device, so that the network device sends configuration data to the network device only when the event registration response is successful, thereby avoiding the situation that the network forwarding function of the network device is abnormal when the network device fails to restart without saving the configuration data, and effectively improving the stability of the configuration reconciliation between the controller and the network device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of computer networks and network configuration, and more specifically, to a configuration reconciliation method, apparatus, electronic device, and storage medium. Background Technology

[0002] Software-defined networking (SDN) is a new network architecture. SDN uses the OpenFlow protocol to separate the router's control plane from the data plane and implement it in software. This allows for centralized management of the control plane, which is distributed across various network devices. This architecture enables network administrators to redesign the network in a centralized manner without changing the hardware, providing a new solution for controlling network traffic and a good platform for core network and application innovation.

[0003] Software-defined network controller, also known as SDN controller, is an application in software-defined networking. As the brain of the entire SDN network, the SDN controller needs to be thoroughly tested. The role of the SDN controller is to control the entire SDN network.

[0004] Because users continuously modify the configuration data in the SDN controller according to business needs, the configuration data on the network devices needs to be reconciled with the configuration data in the SDN controller—that is, whether the two configuration data are identical. This process is called configuration reconciliation. Most current configuration reconciliation methods involve the SDN controller initially sending its local configuration data to the network devices, and then periodically sending reconciliation requests to the network devices. After receiving the reconciliation request from the SDN controller, the network devices periodically send all their local configuration data to the SDN controller. The SDN controller then compares the data, identifies any discrepancies, and sends the discrepancies back to the network devices. Finally, the network devices receive the discrepancies from the SDN controller and update and apply the changes accordingly, thus completing the configuration reconciliation process.

[0005] In practice, it has been found that due to network environment and equipment instability, network equipment failures and abnormal restarts, etc., network devices may fail and restart abnormally after receiving configuration data but before the updates take effect. They then need to wait for the next reconciliation request from the SDN controller, during which time the network devices malfunction. Therefore, the stability of configuration reconciliation between the current SDN controller and network devices is poor. Summary of the Invention

[0006] The purpose of this application is to provide a configuration reconciliation method, apparatus, electronic device, and storage medium to improve the problem of poor stability in configuration reconciliation between SDN controllers and network devices.

[0007] This application provides a configuration reconciliation method applied to a controller, comprising: sending an event registration request to a network device, causing the network device to parse and register multiple configuration reconciliation events according to the event registration request, and returning an event registration response; receiving the event registration response sent by the network device; determining whether the event registration response indicates successful registration; if so, obtaining configuration data and sending the configuration data to the network device, so that the network device reconciles the configuration data when a configuration reconciliation event is triggered. In the above implementation, by sending an event registration request to the network device, causing the network device to parse and register multiple configuration reconciliation events according to the event registration request, and only sending configuration data to the network device if the event registration response indicates successful registration, the method avoids the situation where the network device's network forwarding function is abnormal when a failure occurs and restarts without saving the configuration data, thereby effectively improving the stability of configuration reconciliation between the controller and the network device.

[0008] Optionally, in this embodiment, after determining whether the event registration response indicates successful registration, the method further includes: if the event registration response indicates registration failure, then resending the event registration request to the network device. In the above implementation, by resending the event registration request to the network device when the event registration response indicates registration failure, the situation of abandoning registration after only one failure is avoided, thereby effectively improving the stability of configuration reconciliation between the controller and the network device.

[0009] Optionally, in this embodiment, after sending configuration data to the network device, the method further includes: receiving an active reconciliation request sent by the network device; obtaining the user identifier of the changed configuration data based on the active reconciliation request; generating a configuration reconciliation request based on the user identifier and sending the configuration reconciliation request to the network device, so that the network device can parse the user identifier from the configuration reconciliation request, find and return the configuration data corresponding to the user identifier. In the above implementation process, by having the controller manage configuration data based on the user identifier and sending the configuration reconciliation request generated by the user identifier to the network device, the network device only reconciles the user's changed configuration data, thereby reducing the configuration data transmitted between the SDN controller and the network device and the network bandwidth usage, effectively improving the efficiency of configuration reconciliation.

[0010] Optionally, in this embodiment, obtaining the user identifier of the changed configuration data based on the active reconciliation request includes: parsing the version identifier of the most recently reconciled version from the active reconciliation request and obtaining the configuration data corresponding to the version identifier; obtaining the latest version configuration data and comparing the latest version configuration data with the configuration data corresponding to the version identifier to obtain the user identifier of the changed configuration data. In the above implementation, by comparing the configuration data corresponding to the most recently reconciled version identifier with the latest version configuration data to obtain the user identifier of the changed configuration data, the network device only reconciles the user's changed configuration data, thereby reducing the amount of configuration data transmitted between the SDN controller and the network device and the network bandwidth usage, effectively improving the efficiency of configuration reconciliation.

[0011] Optionally, in this embodiment, after sending a configuration reconciliation request to the network device, the method further includes: receiving configuration data corresponding to a user identifier sent by the network device; obtaining the latest version of configuration data and comparing it with the configuration data corresponding to the user identifier to obtain the differing configuration data; and sending the differing configuration data to the network device. In the above implementation process, by obtaining the latest version of configuration data, comparing it with the configuration data corresponding to the user identifier, and then sending the differing configuration data to the network device, the amount of configuration data transmitted between the SDN controller and the network device and the network bandwidth usage are reduced, effectively improving the efficiency of configuration reconciliation.

[0012] This application also provides a configuration reconciliation method applied to a network device, comprising: receiving an event registration request sent by a controller, and parsing out multiple configuration reconciliation events according to the event registration request; registering the multiple configuration reconciliation events to obtain an event registration result; generating an event registration response according to the event registration result, and sending the event registration response to the controller so that the controller can obtain and return configuration data according to the event registration response; and receiving configuration data sent by the controller, wherein the configuration data is used for reconciliation when a configuration reconciliation event is triggered. In the above implementation process, by receiving the event registration request sent by the controller through the network device, parsing out multiple configuration reconciliation events according to the event registration request, and registering the multiple configuration reconciliation events, the network forwarding function of the network device is prevented from malfunctioning and restarting without saving configuration data, thereby effectively improving the stability of configuration reconciliation between the controller and the network device.

[0013] Optionally, in this embodiment of the application, the method further includes: if a configuration reconciliation event is triggered, sending an active reconciliation request to the controller, so that the controller obtains the user identifier of the changed configuration data according to the active reconciliation request, and generates and returns a configuration reconciliation request according to the user identifier; receiving the configuration reconciliation request sent by the controller; parsing the user identifier from the configuration reconciliation request and finding the configuration data corresponding to the user identifier; and sending the configuration data corresponding to the user identifier to the controller.

[0014] In the above implementation process, when the network device is triggered by the configuration reconciliation event, it immediately sends an active reconciliation request to the controller. This allows the controller to respond to the active reconciliation request, thereby avoiding the situation where the network device restarts without saving the configuration data, which would cause abnormal network forwarding function of the network device. This effectively improves the stability of configuration reconciliation between the controller and the network device.

[0015] This application embodiment also provides a configuration reconciliation device configured in a controller, comprising: a registration request sending module, used to send an event registration request to a network device, so that the network device parses and registers multiple configuration reconciliation events according to the event registration request, and returns an event registration response; a registration response receiving module, used to receive the event registration response sent by the network device; a registration response judging module, used to judge whether the event registration response indicates successful registration; and a configuration data reconciliation module, used to obtain configuration data and send the configuration data to the network device if the event registration response indicates successful registration, so that the network device reconciles the configuration data when a configuration reconciliation event is triggered.

[0016] Optionally, in this embodiment of the application, the reconciliation device further includes: a request resend module, used to resend the event registration request to the network device if the event registration response is a registration failure.

[0017] Optionally, in this embodiment of the application, the configuration reconciliation device further includes: a trigger request receiving module, used to receive an active reconciliation request sent by the network device; a user identifier acquisition module, used to acquire the user identifier of the changed configuration data according to the active reconciliation request; and a reconciliation request generation module, used to generate a configuration reconciliation request according to the user identifier and send the configuration reconciliation request to the network device, so that the network device can parse the user identifier from the configuration reconciliation request, find and return the configuration data corresponding to the user identifier.

[0018] Optionally, in this embodiment, the user identifier acquisition module includes: a configuration data acquisition module, used to parse the version identifier of the most recently successfully reconciled account from the active reconciliation request and acquire the configuration data corresponding to the version identifier; and a configuration data comparison module, used to acquire the latest version configuration data and compare the latest version configuration data with the configuration data corresponding to the version identifier to obtain the user identifier of the changed configuration data.

[0019] Optionally, in this embodiment of the application, the reconciliation request generation module further includes: a configuration data receiving module, used to receive configuration data corresponding to a user identifier sent by a network device; a configuration data obtaining module, used to obtain the latest version configuration data, and compare the latest version configuration data with the configuration data corresponding to the user identifier to obtain the configuration data with differences; and a difference data sending module, used to send the difference configuration data to the network device.

[0020] This application also provides a configuration reconciliation device applied to a network device, comprising: a reconciliation event parsing module, used to receive an event registration request sent by a controller and parse out multiple configuration reconciliation events according to the event registration request; a registration result obtaining module, used to register the multiple configuration reconciliation events and obtain event registration results; a registration response sending module, used to generate an event registration response according to the event registration results and send the event registration response to the controller, so that the controller can obtain and return configuration data according to the event registration response; and a configuration trigger reconciliation module, used to receive configuration data sent by the controller, wherein the configuration data is used to perform reconciliation when a configuration reconciliation event is triggered.

[0021] Optionally, in this embodiment, the system further includes: a reconciliation request sending module, configured to send an active reconciliation request to the controller if a configuration reconciliation event is triggered, so that the controller obtains the user identifier of the changed configuration data based on the active reconciliation request, and generates and returns a configuration reconciliation request based on the user identifier; a reconciliation request receiving module, configured to receive the configuration reconciliation request sent by the controller; a configuration data lookup module, configured to parse the user identifier from the configuration reconciliation request and look up the configuration data corresponding to the user identifier; and a user data sending module, configured to send the configuration data corresponding to the user identifier to the controller.

[0022] This application also provides an electronic device, including a processor and a memory, wherein the memory stores machine-readable instructions executable by the processor, and the machine-readable instructions, when executed by the processor, perform the method described above.

[0023] This application also provides a computer-readable storage medium storing a computer program that is executed by a processor to perform the methods described above. Attached Figure Description

[0024] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0025] Figure 1 The diagram shows a flowchart illustrating the configuration reconciliation method executed by the SDN controller according to an embodiment of this application.

[0026] Figure 2 The diagram shown is a network structure diagram of the SDN controller and network device provided in the embodiments of this application;

[0027] Figure 3 The illustration shows a timing diagram of the interaction between the SDN controller and the network device provided in an embodiment of this application;

[0028] Figure 4 The diagram shown is a structural schematic of the reconciliation device provided in an embodiment of this application.

[0029] Figure 5 The diagram shown is a structural schematic of the SDN controller provided in an embodiment of this application. Detailed Implementation

[0030] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. The components of the embodiments of this application described and shown in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed embodiments of this application, but merely represents selected embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of the embodiments of this application.

[0031] Before introducing the configuration reconciliation method provided in the embodiments of this application, let's first introduce some concepts involved in the embodiments of this application:

[0032] Software-defined networking (SDN) is a new network architecture that uses the OpenFlow protocol to separate the router's control plane from the data plane and implement it in software. This allows for centralized management of the control plane, which is distributed across various network devices. This architecture enables network administrators to redesign the network in a centralized manner without changing the hardware, providing a new solution for controlling network traffic and a good platform for core network and application innovation.

[0033] It should be noted that the configuration reconciliation method provided in this application embodiment can be executed by electronic devices. Here, electronic devices refer to servers (also simply called controllers or SDN control devices) or network devices that perform SDN control functions. Servers include, for example, x86 servers and non-x86 servers. Non-x86 servers include mainframes, minicomputers, and UNIX servers. Network devices refer to devices that are not the final recipients of data traffic but merely forward data traffic to the final recipients. Network devices include bridges, switches, and routers, etc. Switches can be Layer 2 switches or Layer 3 switches.

[0034] The following describes the application scenarios for this configuration reconciliation method. These scenarios include, but are not limited to: Since users continuously change the configuration data in the SDN controller according to business needs, this configuration reconciliation method can be used for configuration reconciliation. This involves comparing the configuration data on network devices in the network environment with the configuration data in the SDN controller to obtain the discrepancies. Then, the SDN controller sends the discrepancies to the network devices, enabling the network devices to receive, update, and apply the changed configuration data, thereby improving the stability of configuration reconciliation between the SDN controller and network devices.

[0035] Please see Figure 1 The illustrated flowchart shows a configuration reconciliation method executed by an SDN controller according to an embodiment of this application. The main idea of ​​this configuration reconciliation method is to send an event registration request to the network device through the SDN controller, enabling the network device to parse and register multiple configuration reconciliation events from the event registration request. Configuration data is only sent to the network device if the event registration response indicates successful registration. This avoids the situation where the network device restarts without saving configuration data, leading to abnormal network forwarding functionality, thereby effectively improving the stability of configuration reconciliation between the SDN controller and the network device. Specifically, the above configuration reconciliation method may include:

[0036] Step S110: The SDN controller sends an event registration request to the network device, so that the network device parses and registers multiple configuration reconciliation events from the event registration request and returns an event registration response.

[0037] An example implementation of step S110 above is as follows: The SDN controller sends an event registration request to the network device via Transmission Control Protocol (TCP) or User Datagram Protocol (UDP). After receiving the event registration request from the SDN controller, the network device can parse multiple configuration reconciliation events from the event registration request, and then register these multiple configuration reconciliation events (e.g., register them in the network device's registration event table) to obtain the event registration result. Then, the network device generates an event registration response based on the event registration result. Specifically, if the event registration result is successful, a successful event registration response is returned; if the event registration result is unsuccessful, an unsuccessful event registration response is returned.

[0038] After step S110, step S120 is executed: the SDN controller receives the event registration response sent by the network device.

[0039] Please see Figure 2 The diagram illustrates the network structure of the SDN controller and network devices provided in this embodiment of the application. For example, in implementing step S120, after registering multiple configuration reconciliation events, an event registration response is generated based on the event registration results. The SDN controller receives the event registration response sent by at least one network device via TCP or UDP protocol; wherein, the network device may include a router, a Layer 2 switch, or a Layer 3 switch.

[0040] After step S120, step S130 is executed: the SDN controller determines whether the event registration response is a successful registration.

[0041] For example, the implementation of step S130 above is as follows: the SDN controller uses an executable program compiled or interpreted by a preset programming language to determine whether the event registration response is successful; the programming languages ​​that can be used are such as: C, C++, Java, BASIC, JavaScript, LISP, Shell, Perl, Ruby, Python and PHP, etc.

[0042] After step S130, step S140 is executed: if the event registration response is successful, the SDN controller obtains the configuration data and sends the configuration data to the network device so that the network device reconciles the configuration data when the configuration reconciliation event is triggered.

[0043] For example, in the implementation of step S140 above: if the event registration response is successful, the SDN controller obtains configuration data from the configuration database and sends the configuration data to the network device via TCP or UDP protocol; wherein, the configuration database here can be a relational database or a non-relational database; the relational databases in this application embodiment include, for example, MySQL, PostgreSQL, Oracle, and SQL Server; the non-relational databases in this application embodiment include, for example, Grakn database, Neo4j graph database, Hadoop subsystem HBase, MongoDB, and CouchDB.

[0044] Understandably, if a network device receives service-related configuration data from the SDN controller but doesn't have the opportunity to save it, an anomaly can occur, leading to configuration data loss (e.g., an abnormal restart of the network device). Specific examples of such anomalies include device restarts, network service (e.g., netconf service) restarts, or changes to the network configuration file. These anomalies trigger configuration reconciliation events. The network device can then send a configuration reconciliation request to the SDN controller and reconcile the configuration data accordingly. In this implementation, when an anomaly occurs, a configuration reconciliation event is triggered, resulting in a real-time configuration reconciliation request being sent to the SDN controller. This prevents network forwarding malfunctions caused by a network device restarting without saving configuration data.

[0045] Optionally, in this embodiment of the application, after determining whether the event registration response is successful, the method further includes:

[0046] After step S130, step S150 is executed: if the event registration response is registration failure, the event registration request is resent to the network device.

[0047] For example, if the event registration response is a registration failure, the event registration request is resent to the network device via TCP or UDP protocol.

[0048] In the above implementation process, the SDN controller sends an event registration request to the network device, so that the network device can parse and register multiple configuration reconciliation events from the event registration request. Only when the event registration response is successful will the configuration data be sent to the network device. This avoids the situation where the network device restarts due to failure without saving the configuration data, which would cause the network forwarding function of the network device to be abnormal. This effectively improves the stability of configuration reconciliation between the SDN controller and the network device.

[0049] Please see Figure 3 The illustration shows a timing diagram of the interaction between the SDN controller and the network device according to an embodiment of this application. Optionally, after the SDN controller sends configuration data to the network device, the network device first sends an active reconciliation request to the SDN controller when a configuration reconciliation event is triggered. The SDN controller can also collect user identifiers of changed configurations based on the active reconciliation request and only reconcile the configuration data of the user identifier. This implementation may include:

[0050] Step S210: The SDN controller receives the proactive reconciliation request sent by the network device.

[0051] An example implementation of step S210 above is as follows: After the network device receives configuration data sent by the SDN controller via Hypertext Transfer Protocol (HTTP) or Hypertext Transfer Protocol Secure (HTTPS), a configuration reconciliation event is triggered when an abnormal situation occurs on the network device. When the configuration reconciliation event is triggered, an active reconciliation request can be sent to the SDN controller first. Specific abnormal situations include: the network device restarting, the network service (e.g., the netconf service) restarting, or changes to the network configuration file, etc. The SDN controller receives the active reconciliation request sent by the network device via HTTP or HTTPS, and then reconciles the configuration data according to the triggered configuration reconciliation request.

[0052] Step S220: The SDN controller obtains the user identifier of the changed configuration data based on the active reconciliation request, and generates a configuration reconciliation request based on the user identifier.

[0053] The implementation of step S220 above includes: As mentioned above, the SDN controller can be an SDN controller, which can accept multiple users logging in and modifying configuration data simultaneously. Users can log in to the SDN controller through a graphical user interface (GUI) or a command-line interface (CLI). Therefore, the SDN controller can also manage configuration data based on user identifiers. Specifically, for example, the SDN controller receives an active reconciliation request sent by a network device, parses the version identifier of the most recently reconciled version from the active reconciliation request, and obtains the configuration data corresponding to the version identifier. It then obtains the latest version configuration data and compares it with the configuration data corresponding to the version identifier to obtain the user identifier of the changed configuration data. This user identifier can also be understood as a tag. Finally, it generates a configuration reconciliation request based on the user identifier of the changed configuration data and sends the configuration reconciliation request to the network device. That is, the configuration reconciliation request includes the user identifier of the changed configuration data.

[0054] Step S230: The SDN controller sends a configuration reconciliation request to the network device.

[0055] Step S240: The network device parses the user identifier from the configuration reconciliation request, and finds and returns the configuration data corresponding to the user identifier.

[0056] For example, in implementing steps S230 to S240 above: the SDN controller sends a configuration reconciliation request to the network device via HTTP or HTTPS protocol. This configuration reconciliation request includes the user identifier of the changed configuration data. After receiving the configuration reconciliation request from the SDN controller, the network device can parse the user identifier from the configuration reconciliation request and search for and return the configuration data corresponding to the user identifier in a relational or non-relational database.

[0057] Optionally, in this embodiment of the application, after the SDN controller sends a configuration reconciliation request to the network device, it can also compare and determine the differing configuration data, and then send the differing configuration data to the network device. The specific process may include:

[0058] Step S250: The SDN controller receives the configuration data corresponding to the user identifier sent by the network device.

[0059] Step S260: The SDN controller obtains the latest version configuration data and compares the latest version configuration data with the configuration data corresponding to the user identifier to obtain the configuration data that differs.

[0060] Step S270: The SDN controller sends differentiated configuration data to the network device so that the network device can use the differentiated configuration data after receiving it.

[0061] For example, the implementation of steps S250 to S270 described above involves the SDN controller receiving configuration data corresponding to a user identifier sent by the network device, obtaining the latest version of the configuration data, comparing the latest version of the configuration data with the configuration data corresponding to the user identifier, and obtaining the configuration data that differs. Then, the SDN controller sends the differing configuration data to the network device. After receiving the differing configuration data, the network device merges and applies the differing configuration data with its local configuration data.

[0062] In the above implementation process, the SDN controller manages configuration data based on user identifiers and sends configuration reconciliation requests generated by user identifiers to network devices. This allows network devices to reconcile only the configuration data that has changed for the user, thereby reducing the amount of configuration data transmitted between the SDN controller and network devices and the network bandwidth usage, effectively improving the efficiency of configuration reconciliation.

[0063] Please see Figure 4 The diagram shown is a structural schematic of a configuration reconciliation device provided in an embodiment of this application; this embodiment of the application provides a configuration reconciliation device 300, including:

[0064] The registration request sending module 310 is used to send an event registration request to the network device so that the network device can parse and register multiple configuration reconciliation events from the event registration request and return an event registration response.

[0065] The registration response receiving module 320 is used to receive event registration responses sent by network devices.

[0066] The registration response judgment module 330 is used to determine whether the event registration response is a successful registration.

[0067] The configuration data reconciliation module 340 is used to obtain configuration data and send it to the network device if the event registration response is successful, so that the network device can reconcile the configuration data when the configuration reconciliation event is triggered.

[0068] Optionally, in this embodiment of the application, the reconciliation device further includes:

[0069] The request resend module is used to resend the event registration request to the network device if the event registration response is a registration failure.

[0070] Optionally, in this embodiment of the application, the reconciliation device further includes:

[0071] The trigger request receiving module is used to receive proactive reconciliation requests sent by network devices.

[0072] The user identifier acquisition module is used to obtain the user identifier of the changed configuration data based on the active reconciliation request.

[0073] The reconciliation request generation module is used to generate a configuration reconciliation request based on the user identifier and send the configuration reconciliation request to the network device so that the network device can parse the user identifier from the configuration reconciliation request and find and return the configuration data corresponding to the user identifier.

[0074] Optionally, in this embodiment of the application, the user identifier acquisition module includes:

[0075] The configuration data acquisition module is used to parse the version identifier of the most recently successfully reconciled account from the active reconciliation request and obtain the configuration data corresponding to the version identifier.

[0076] The configuration data comparison module is used to obtain the latest version of configuration data and compare the latest version of configuration data with the configuration data corresponding to the version identifier to obtain the user identifier of the configuration data that has changed.

[0077] Optionally, in this embodiment of the application, the reconciliation request generation module further includes:

[0078] The configuration data receiving module is used to receive configuration data corresponding to the user identifier sent by the network device.

[0079] The configuration data acquisition module is used to obtain the latest version of configuration data and compare the latest version of configuration data with the configuration data corresponding to the user identifier to obtain the configuration data that differs.

[0080] The differential data sending module is used to send differential configuration data to network devices.

[0081] This application provides a configuration reconciliation device, applied to network devices, including:

[0082] The reconciliation event parsing module is used to receive event registration requests sent by electronic devices and parse out multiple configuration reconciliation events from the event registration requests.

[0083] The registration result acquisition module is used to register multiple configuration reconciliation events and obtain the event registration results.

[0084] The registration response sending module is used to generate an event registration response based on the event registration result and send the event registration response to the electronic device so that the electronic device can obtain and return configuration data based on the event registration response.

[0085] The configuration trigger reconciliation module is used to receive configuration data sent by electronic devices. This configuration data is used to perform reconciliation when a configuration reconciliation event is triggered.

[0086] Optionally, in embodiments of this application, it further includes:

[0087] The reconciliation request sending module is used to send an active reconciliation request to the electronic device when a configuration reconciliation event is triggered, so that the electronic device can obtain the user identifier of the changed configuration data according to the active reconciliation request, and generate and return a configuration reconciliation request based on the user identifier.

[0088] The reconciliation request receiving module is used to receive configuration reconciliation requests sent by electronic devices.

[0089] The configuration data lookup module is used to parse the user identifier from the configuration reconciliation request and find the configuration data corresponding to the user identifier.

[0090] The user data sending module is used to send configuration data corresponding to the user identifier to electronic devices.

[0091] It should be understood that this device corresponds to the above-described configuration reconciliation method embodiment and is capable of performing the various steps involved in the above method embodiment. The specific functions of this device can be found in the description above, and detailed descriptions are omitted here to avoid repetition. The device includes at least one software functional module that can be stored in memory or embedded in the device's operating system (OS) in the form of software or firmware.

[0092] Please see Figure 5 The diagram shows a structural schematic of an electronic device provided in an embodiment of this application. An electronic device 400 provided in this application includes a processor 410 and a memory 420. The memory 420 stores machine-readable instructions executable by the processor 410. When the machine-readable instructions are executed by the processor 410, the method described above is performed.

[0093] This application embodiment also provides a computer-readable storage medium 430, on which a computer program is stored, and the computer program is executed by a processor 410 to perform the above method.

[0094] The computer-readable storage medium 430 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0095] It should be understood that the disclosed apparatus and methods can also be implemented in other ways, as provided in the embodiments of this application. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. In this regard, each block in the flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the accompanying drawings. For example, two consecutive blocks may actually be executed substantially in parallel, or they may sometimes be executed in reverse order, depending primarily on the functions involved.

[0096] Furthermore, the functional modules of each embodiment in this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part. In addition, in the description of this specification, the reference to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., means that the specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or more embodiments or examples. Furthermore, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0097] In this document, relational terms such as first and second are used only to distinguish one entity or operation from another entity or operation, without necessarily requiring or implying any such actual relationship or order between these entities or operations.

[0098] The above description is only an optional implementation of the embodiments of this application, but the protection scope of the embodiments of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of this application should be covered within the protection scope of the embodiments of this application.

Claims

1. A method for configuring reconciliation, characterized in that, Applied to controllers, including: An event registration request is sent to a network device, so that the network device parses and registers multiple configuration reconciliation events according to the event registration request, and returns an event registration response; wherein, the configuration reconciliation events include at least one of the following: the network device restarts, the network service on the network device restarts, or the network configuration file of the network device is changed; Receive the event registration response sent by the network device; Determine whether the event registration response indicates successful registration; If so, the configuration data is obtained and sent to the network device so that the network device reconciles the configuration data when the configuration reconciliation event is triggered; After sending the configuration data to the network device, the method further includes: Receive the proactive reconciliation request sent by the network device; The user identifier of the changed configuration data is obtained based on the proactive reconciliation request; A configuration reconciliation request is generated based on the user identifier and sent to the network device so that the network device can parse the user identifier from the configuration reconciliation request, find and return the configuration data corresponding to the user identifier.

2. The method according to claim 1, characterized in that, After determining whether the event registration response is successful, the method further includes: If the event registration response is a registration failure, the event registration request is resent to the network device.

3. The method according to claim 1, characterized in that, The step of obtaining the user identifier of the changed configuration data based on the proactive reconciliation request includes: Parse the version identifier of the most recently successfully reconciled account from the active reconciliation request, and obtain the configuration data corresponding to the version identifier; Obtain the latest version configuration data and compare it with the configuration data corresponding to the version identifier to obtain the user identifier of the configuration data that has changed.

4. The method according to claim 1, characterized in that, After sending the configuration reconciliation request to the network device, the method further includes: Receive configuration data corresponding to the user identifier sent by the network device; Obtain the latest version configuration data and compare it with the configuration data corresponding to the user identifier to obtain the configuration data that differs. Send the differing configuration data to the network device.

5. A method for configuring reconciliation, characterized in that, Applied to network devices, including: The system receives an event registration request sent by the controller and parses out multiple configuration reconciliation events based on the event registration request; wherein the configuration reconciliation event includes at least one of the following: the network device restarts, the network service on the network device restarts, or the network configuration file of the network device changes; Register the multiple configuration reconciliation events and obtain the event registration results; An event registration response is generated based on the event registration result, and the event registration response is sent to the controller so that the controller can obtain and return configuration data based on the event registration response. The system receives the configuration data sent by the controller, which is used to perform reconciliation when the configuration reconciliation event is triggered. If the configuration reconciliation event is triggered, an active reconciliation request is sent to the controller so that the controller can obtain the user identifier of the changed configuration data according to the active reconciliation request, and generate and return a configuration reconciliation request according to the user identifier. Receive the configuration reconciliation request sent by the controller; The user identifier is parsed from the configuration reconciliation request, and the configuration data corresponding to the user identifier is retrieved. Send the configuration data corresponding to the user identifier to the controller.

6. A device for configuring reconciliation, characterized in that, Configured on the controller, including: The registration request sending module is used to send an event registration request to the network device, so that the network device parses and registers multiple configuration reconciliation events according to the event registration request, and returns an event registration response; The registration response receiving module is used to receive the event registration response sent by the network device; The registration response judgment module is used to determine whether the event registration response is a successful registration; The configuration data reconciliation module is used to obtain configuration data and send the configuration data to the network device if the event registration response is successful, so that the network device will reconcile the configuration data when the configuration reconciliation event is triggered. The trigger request receiving module is used to receive proactive reconciliation requests sent by network devices; The user identifier acquisition module is used to obtain the user identifier of the changed configuration data based on the active reconciliation request. The reconciliation request generation module is used to generate a configuration reconciliation request based on the user identifier and send the configuration reconciliation request to the network device so that the network device can parse the user identifier from the configuration reconciliation request and find and return the configuration data corresponding to the user identifier.

7. An electronic device, characterized in that, include: A processor and a memory, the memory storing machine-readable instructions executable by the processor, which, when executed by the processor, perform the method as described in any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Method for configuring network equipment by SDN controller and SDN controller

    CN110113197A

  • Configuration updating method and device, computer equipment and readable storage medium

    CN111654398A