Application configuration distribution method and related equipment
By locking the application ID, the problem of configuration disorder caused by multiple users configuring simultaneously is solved, ensuring the sequentiality and success of the application configuration distribution process.
Patent Information
- Application Number
- CN202311714419.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-14
- Publication Date
- 2025-10-31
- Estimated Expiration
- 2043-12-14
AI Technical Summary
During the application configuration distribution process, multiple users configuring simultaneously can cause configurations to be out of order, resulting in configuration failure.
By locking the application ID, only the current user is allowed to operate on the application configuration under the application ID within a set time period. The target application configuration and the preceding application configuration are combined into a configuration package and sent to the agent system to ensure the configuration order.
This ensures that different users do not configure the application simultaneously during the configuration distribution process, guaranteeing the success of system configuration.
Smart Images

Figure CN117811911B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of network communication technology, and in particular to an application configuration distribution method and related equipment. Background Technology
[0002] Software-defined networking (SDN) is a network management approach that supports dynamically programmable network configuration, improving network performance and management efficiency, and enabling network services to offer flexible customization capabilities similar to cloud computing. Users of SDN systems customize applications for relevant devices by distributing application configurations. Application configuration refers to the customization of business applications; in some applications, it is a set of predefined configuration options that affect their functionality and behavior.
[0003] The inventors discovered through research that during the application configuration distribution process, multiple users may simultaneously configure a particular application instance within the same time period, causing the application configuration to be out of order during actual implementation, thus leading to configuration failure. Summary of the Invention
[0004] In view of the above problems, the present invention provides an application configuration distribution method and related equipment to overcome or at least partially solve the above problems, the technical solution of which is as follows:
[0005] An application configuration distribution method, the method comprising:
[0006] Receive the target application configuration input by the current user;
[0007] Determine the application ID corresponding to the target application configuration;
[0008] The application ID is locked so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period;
[0009] Insert the task record corresponding to the target application configuration into the existing task list;
[0010] Save the target application configuration to a pre-set database;
[0011] When the task record is executed, the target application configuration and each of the preceding application configurations are retrieved from the database. The preceding application configurations belong to the application ID and are issued earlier than the target application configuration.
[0012] The target application configuration and each of the preceding application configurations are combined into a configuration package, and the configuration package is sent to the configured proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package.
[0013] The above application configuration distribution methods may also optionally include:
[0014] After the configuration package is sent to the configured agent system, the application ID is unlocked.
[0015] Optionally, in the above application configuration distribution method, triggering the agent system to configure the device to be configured according to each application configuration in the configuration package includes:
[0016] The agent system is triggered to match each application configuration in the configuration package with each application configuration already set in memory to determine multiple configurations to be updated; the configurations to be updated are application configurations that exist in the configuration package but do not exist in the memory.
[0017] Configure the device to be configured according to each of the configurations to be updated.
[0018] The above application configuration distribution methods may also optionally include:
[0019] The system receives acquisition requests sent by the agent system at predetermined intervals, acquires the latest application configuration from the database based on the acquisition requests, and sends the latest application configuration to the agent system.
[0020] The above application configuration distribution methods may also optionally include:
[0021] When a network failure occurs between the agent system and the agent system, after the network failure is restored, the agent system receives a channel establishment request and establishes an application configuration distribution channel with the agent system based on the channel establishment request; and distributes the latest application configuration from the database to the agent system.
[0022] The above application configuration distribution methods may also optionally include:
[0023] When the agent system fails and restarts, the system receives a registration request from the agent system, registers the agent system according to the registration request, establishes an application configuration distribution channel with the agent system, and distributes the latest application configuration from the database to the agent system.
[0024] An application configuration distribution device, the application configuration distribution device comprising:
[0025] The receiving unit is used to receive the target application configuration input by the current user;
[0026] A determining unit is used to determine the application ID corresponding to the target application configuration;
[0027] The locking unit is used to lock the application ID so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period.
[0028] An insertion unit is used to insert a task record corresponding to the target application configuration into an established task list;
[0029] A storage unit is used to save the target application configuration to a pre-set database;
[0030] The acquisition unit is used to acquire the target application configuration and each pre-application configuration from the database when the task record is executed. The pre-application configuration belongs to the application ID and its issuance time is earlier than that of the target application configuration.
[0031] The distribution unit is used to combine the target application configuration and the configurations of each of the preceding applications into a configuration package, and distribute the configuration package to the configured proxy system to trigger the proxy system to configure the device to be configured according to the configurations of each application in the configuration package.
[0032] An SDN system, the SDN system comprising: an application system, a control system, a database, an agent system, and a switch;
[0033] in:
[0034] The application system is used to receive the application configuration distribution request input by the current user and generate the target application configuration corresponding to the application configuration distribution request;
[0035] The control system is configured to: receive the target application configuration sent by the application system; determine the application ID corresponding to the target application configuration; lock the application ID to allow only the current user to operate on each application configuration under the application ID within a set time period; insert a task record corresponding to the target application configuration into the established task list; save the target application configuration to the database; when the task record is executed, retrieve the target application configuration and each preceding application configuration from the database, wherein the preceding application configuration belongs to the application ID and its issuance time is earlier than the target application configuration; assemble the target application configuration and each preceding application configuration into a configuration package, and send the configuration package to the agent system to trigger the agent system to configure the switch according to each application configuration in the configuration package.
[0036] A storage medium comprising stored instructions, wherein, when the instructions are executed, the device containing the storage medium is controlled to execute the application configuration distribution method described above.
[0037] An electronic device includes at least one processor, at least one memory and a bus connected to the processor; wherein the processor and the memory communicate with each other through the bus; the processor is used to call program instructions in the memory to execute the above-described application configuration distribution method.
[0038] Compared with the prior art, the present invention has the following advantages: The present invention provides an application configuration distribution method, the method comprising: receiving a target application configuration input by a current user; determining an application ID corresponding to the target application configuration; locking the application ID so that only the current user is allowed to operate on each application configuration under the application ID within a set time period; inserting a task record corresponding to the target application configuration into an established task list; saving the target application configuration to a pre-set database; when the task record is executed, retrieving the target application configuration and each preceding application configuration from the database, wherein the preceding application configurations belong to the application ID and their distribution time is earlier than that of the target application configuration; forming a configuration package from the target application configuration and each preceding application configuration, and distributing the configuration package to a pre-set proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package. In the method provided by this invention, during the process of the current user updating the system configuration, when the application configuration is distributed, the application ID of the application configuration currently operated by the user is locked, so that only the current user is allowed to operate on the application configurations under the application ID within a predetermined time period. This ensures that different users will not configure at the same time during the application configuration distribution process, thus preventing configuration disorder and guaranteeing the success of system configuration.
[0039] The above description is merely an overview of the technical solution of the present invention. In order to better understand the technical means of the present invention and to implement it in accordance with the contents of the specification, and in order to make the above and other objects, features and advantages of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description
[0040] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0041] Figure 1 A flowchart of an application configuration distribution method provided in an embodiment of the present invention;
[0042] Figure 2 An architecture diagram of an SDN system provided in an embodiment of the present invention;
[0043] Figure 3 An example diagram of an application configuration distribution method provided in an embodiment of the present invention;
[0044] Figure 4 This is another example diagram of an application configuration distribution method provided in an embodiment of the present invention;
[0045] Figure 5 This is a schematic diagram of the structure of an application configuration distribution device provided in an embodiment of the present invention;
[0046] Figure 6 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0047] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.
[0048] refer to Figure 1 The following is a flowchart illustrating an application configuration distribution method provided by an embodiment of the present invention. Figure 1 The illustrated method execution process is a feasible implementation scheme of the application configuration distribution method provided in the embodiments of the present invention. This application configuration distribution method can be applied to the processor of the control system in an SDN system. Specifically, the method may include:
[0049] S101: Receive the target application configuration input by the current user;
[0050] In the method provided by this embodiment of the invention, the processor of the control system receives the target application configuration input by the current user. The target application configuration may be the relevant configuration generated during the user's current configuration of the system.
[0051] S102: Determine the application ID corresponding to the target application configuration;
[0052] In the method provided by this embodiment of the invention, each application configuration corresponds to a corresponding application ID, and the relevant application configurations are distinguished by the application ID.
[0053] S103: Lock the application ID so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period;
[0054] In the method provided by this embodiment of the invention, during the current user's system configuration process, the application IDs of each application configuration operated by the current user are locked, so that only the current user is allowed to operate on the application configurations under that application ID within a set time period. The set time period is the time interval between the current user's operations on the application configurations, or it can be a specific operation moment.
[0055] In the method provided by this embodiment of the invention, locking the application ID can specifically involve, during the current user's configuration operation, assigning the current user's user identifier to each application currently operated by the current user, and setting the application configuration with the user identifier to only allow the current user to perform the operation.
[0056] S104: Insert a task record corresponding to the target application configuration into the established task list;
[0057] In the method provided by this embodiment of the invention, a task list is established. Each time the current user operates on an application configuration, a corresponding task record for that application configuration is inserted into the task list.
[0058] S105: Save the target application configuration to a pre-set database;
[0059] In the method provided by this invention, each application configuration issued by the current user operation needs to be saved to a pre-set database.
[0060] S106: When the task record is executed, the target application configuration and each pre-application configuration are obtained from the database. The pre-application configuration belongs to the application ID and its issuance time is earlier than that of the target application configuration.
[0061] In the method provided by this embodiment of the invention, each task record in the task list needs to be executed in its corresponding time order. When the task record corresponding to the target application configuration is executed, the target application configuration and each preceding application configuration are obtained from the database. The preceding application configuration is the application configuration belonging to the application ID, and the issuance time of the preceding application configuration is earlier than that of the target application configuration.
[0062] S107: The target application configuration and each of the preceding application configurations are combined into a configuration package, and the configuration package is sent to the configured proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package.
[0063] In the method provided by this embodiment of the invention, the acquired target application configuration and the configuration of each front-end application are combined into a configuration package, and the configuration package is sent to a pre-set proxy system, triggering the proxy system to configure the device to be configured according to the configuration of each application in the configuration package.
[0064] In the method provided by this embodiment of the invention, during the process of the current user updating the system configuration, when the application configuration is distributed, the application ID of the application configuration currently operated by the user is locked, so that only the current user is allowed to operate on the various application configurations under the application ID within a predetermined time period. This ensures that different users will not configure at the same time during the application configuration distribution process, thus preventing configuration disorder and guaranteeing the success of system configuration.
[0065] The method provided in this embodiment of the invention further includes:
[0066] After the configuration package is sent to the configured agent system, the application ID is unlocked.
[0067] In this invention, after the configuration package is successfully sent to the agent system, the application ID is unlocked.
[0068] In the method provided by this embodiment of the invention, triggering the agent system to configure the device to be configured according to the application configurations in the configuration package includes:
[0069] The agent system is triggered to match each application configuration in the configuration package with each application configuration already set in memory to determine multiple configurations to be updated; the configurations to be updated are application configurations that exist in the configuration package but do not exist in the memory.
[0070] Configure the device to be configured according to each of the configurations to be updated.
[0071] In this invention, the agent system matches each application configuration in the configuration package with each application configuration that already exists in the memory, determines each configuration to be updated for the update operation, and configures the device to be configured according to each configuration to be updated to ensure that the device to be configured is in the latest configuration state.
[0072] The method provided in this embodiment of the invention further includes:
[0073] The system receives acquisition requests sent by the agent system at predetermined intervals, acquires the latest application configuration from the database based on the acquisition requests, and sends the latest application configuration to the agent system.
[0074] The method provided in this embodiment of the invention further includes:
[0075] When a network failure occurs between the agent system and the agent system, after the network failure is restored, the agent system receives a channel establishment request and establishes an application configuration distribution channel with the agent system based on the channel establishment request; and distributes the latest application configuration from the database to the agent system.
[0076] In this invention, when a network failure occurs between the agent system and the control system, after the network failure is restored, the agent system sends a channel establishment request to the control system to establish a configuration distribution channel, and matches it with the various application configurations in the database to determine the latest application configuration. The control system then distributes the latest application configurations to the agent system.
[0077] The method provided in this embodiment of the invention further includes:
[0078] When the agent system fails and restarts, the system receives a registration request from the agent system, registers the agent system according to the registration request, establishes an application configuration distribution channel with the agent system, and distributes the latest application configuration from the database to the agent system.
[0079] In this invention, after the agent system fails and restarts, the agent system sends a registration request to the control system, registers in the control system, further establishes an application configuration distribution channel, matches it with the various application configurations in the database, determines the latest application configuration, and the control system distributes the latest application configurations to the agent system.
[0080] refer to Figure 2 The diagram illustrates an architecture of an SDN system provided by an embodiment of the present invention. The SDN system includes: an application system, a control system, a database, a proxy system, and a switch.
[0081] in:
[0082] The application system is used to receive the application configuration distribution request input by the current user and generate the target application configuration corresponding to the application configuration distribution request;
[0083] The control system is configured to: receive the target application configuration sent by the application system; determine the application ID corresponding to the target application configuration; lock the application ID to allow only the current user to operate on each application configuration under the application ID within a set time period; insert a task record corresponding to the target application configuration into the established task list; save the target application configuration to the database; when the task record is executed, retrieve the target application configuration and each preceding application configuration from the database, wherein the preceding application configuration belongs to the application ID and its issuance time is earlier than the target application configuration; assemble the target application configuration and each preceding application configuration into a configuration package, and send the configuration package to the agent system to trigger the agent system to configure the switch according to each application configuration in the configuration package.
[0084] exist Figure 2 Based on the SDN system architecture shown, combined with Figure 1 The application configuration distribution method shown below provides a further explanation of the specific process of application configuration distribution:
[0085] Software-defined networking (SDN) is a network management approach that supports dynamically programmable network configuration, improving network performance and management efficiency, and enabling network services to offer flexible customization capabilities similar to cloud computing. SDN decouples the forwarding plane from the control plane of network devices, with the controller responsible for managing network devices, orchestrating network services, and scheduling traffic. It offers advantages such as low cost, centralized management, and flexible scheduling. SDN systems typically consist of an application layer, a control layer, and an infrastructure layer.
[0086] Application layer: Common examples include cloud platforms based on the OpenStack architecture. Alternatively, users can build their own cloud management platforms based on OpenStack.
[0087] Control layer: Composed of SDN control software, it can communicate with forwarding devices through standardized or proprietary protocols to control the infrastructure layer.
[0088] Infrastructure layer: mainly consists of forwarding devices that implement forwarding functions, such as data center switches.
[0089] The purpose of this invention is to provide a reliable method for distributing SDN network application configurations, ensuring configuration consistency between the control layer and the infrastructure layer in an SDN system.
[0090] The SDN system provided in this embodiment of the invention includes an application system, a control system, a database, an agent system, and switches. The application system corresponds to the application layer, the control system and database correspond to the control layer, and the agent and switches correspond to the infrastructure layer.
[0091] Specifically, each switch deploys a corresponding agent. After the agent starts, it actively registers with the control system and establishes a gRPC channel with the control system for the distribution of application configurations.
[0092] The application system generates application configurations for users based on their configuration requirements. Application configurations are isolated from each other at the application ID level. Each application ID may contain multiple configurations of different types, such as configuration A, configuration B, configuration C, etc. (See also...) Figure 3 .
[0093] The application system sends its application configuration to the control system via an HTTP delivery channel. Upon receiving the application configuration, the control system saves it to the database and inserts a task record into the configured TASK table, marking the task status as "pending." See the TASK table structure for details. Figure 4 In this invention, the task status of the task record can include four states: "pending", "processing", "success", and "failure".
[0094] After receiving the application configuration, the control system first locks the configuration based on the application ID to prevent conflicts caused by concurrent processing of multiple application configurations with the same application ID. After successfully acquiring the lock, business processing is performed, and the application configuration is stored in the database. Then, based on the application ID, all configurations under the current application ID are retrieved. For example, if the current configuration is configuration C, but configurations A and B already exist under the same application ID, then configurations A, B, and C are packaged into a single gRPC package and pushed to the agent. In other words, all configurations A, B, C, etc. under the current application ID are retrieved and pushed to the agent together. Finally, the lock is unlocked and the TASK status is updated to "success". If the processing fails, it is updated to "failure".
[0095] After receiving the complete configuration for the application ID, the agent compares it with the existing configuration in memory and performs corresponding add, delete, or modify operations on the switch.
[0096] The agent has reconciliation capabilities and can periodically retrieve the latest configuration from the control system at the application ID level and update the latest configuration to the switch.
[0097] When the control system restarts due to a failure, the agent will proactively initiate a request to re-establish the gRPC channel and trigger a full configuration reconciliation to ensure that the latest configuration can be distributed to the switch.
[0098] When a network failure occurs between the agent and the control system, causing the gRPC channel to be disconnected, the agent will immediately initiate a request to re-establish the gRPC channel and initiate a full configuration reconciliation once the network is restored, ensuring that the latest configuration can be distributed to the switch.
[0099] When the agent restarts after a failure, it immediately initiates a re-registration with the control system and triggers a full configuration reconciliation to ensure that the latest configuration can be distributed to the switch.
[0100] The application configuration distribution method provided in this embodiment of the invention controls the system to lock at the application ID granularity, which not only ensures the concurrency of configuration between different application IDs, but also ensures the reliability of configuration under the same application ID, and prevents the occurrence of configuration out-of-order situations.
[0101] With the agent acting as the client and the control system as the server, if any failure occurs in any link of the agent, control system, or intermediate network, the agent will re-initiate the establishment of the gRPC channel and immediately perform a full configuration reconciliation after the channel is established to ensure that the configuration between the control system and the switch is completely consistent, which greatly increases the system's fault recovery capability.
[0102] When the control system distributes configurations, it does not distinguish between operation types, such as Add, Delete, Update, etc. Regardless of the operation, the control system will obtain all configurations under the application ID and re-push them to the agent, which will then push them to the switch. The advantage of this approach is that if configuration A fails to be distributed, subsequent configurations B and C will not be able to be distributed. This eliminates the possibility of configuration loss due to interdependence between configurations, greatly improving the reliability of the system.
[0103] Specific practical applications can be as follows:
[0104] Application system generates configuration: Application ID=1 contains 3 different types of configurations: Configuration A, Configuration B, Configuration C;
[0105] The application system sends "Application ID=1 Configuration A" to the control system;
[0106] After receiving "Application ID=1 Configuration A", the control system generates a TASK record, locks the application based on the configured application ID, stores the configuration "Application ID=1 Configuration A" in the database, pushes configuration A to the agent, unlocks the application, and updates the TASK status.
[0107] The application system sends "Application ID=1 Configuration B" to the control system;
[0108] After receiving "Application ID=1 Configuration B", the control system generates a TASK record, locks the application based on the configured application ID, stores the configuration "Application ID=1 Configuration B" in the database, pushes configuration A and configuration B to the agent, unlocks the application, and updates the TASK status.
[0109] The application system sends "Application ID=1 Configuration C" to the control system;
[0110] After receiving "Application ID=1 Configuration C", the control system generates a TASK record, locks the application based on the configured application ID, stores the configuration "Application ID=1 Configuration C" in the database, pushes configuration A, configuration B and configuration C to the agent, unlocks the application, and updates the TASK status.
[0111] The agent has reconciliation capabilities and periodically retrieves the latest configuration from the control system at the application ID level, and updates the latest configuration to the switch.
[0112] When the control system restarts after a failure, the agent will proactively initiate a gRPC channel re-establishment request and trigger a full configuration reconciliation to ensure that the latest configuration can be distributed to the switch.
[0113] When a network failure occurs between the agent and the control system, causing the gRPC channel to be disconnected, the agent will immediately initiate a request to re-establish the gRPC channel after the network is restored, and initiate a full configuration reconciliation to ensure that the latest configuration can be distributed to the switch.
[0114] When the agent restarts after a failure, it immediately initiates a re-registration with the control system and triggers a full configuration reconciliation to ensure that the latest configuration can be distributed to the switch.
[0115] The configuration distribution method provided in the embodiments of the invention can be used to implement a highly reliable network configuration distribution system, avoiding system unreliability caused by a series of problems such as system failure, network failure, concurrency, and interdependence between configurations.
[0116] This invention also provides an application configuration distribution device corresponding to an application configuration distribution method. This device is used to implement the application configuration distribution method in practice. A structural diagram of the application configuration distribution device can be found here. Figure 5 The application configuration distribution device includes:
[0117] The receiving unit 201 is used to receive the target application configuration input by the current user;
[0118] Determining unit 202 is used to determine the application ID corresponding to the target application configuration;
[0119] The locking unit 203 is used to lock the application ID so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period.
[0120] The insertion unit 204 is used to insert a task record corresponding to the target application configuration into the established task list;
[0121] The storage unit 205 is used to save the target application configuration to a pre-set database.
[0122] The acquisition unit 206 is used to acquire the target application configuration and each pre-application configuration from the database when the task record is executed. The pre-application configuration belongs to the application ID and its issuance time is earlier than that of the target application configuration.
[0123] The distribution unit 207 is used to combine the target application configuration and each of the preceding application configurations into a configuration package, and distribute the configuration package to the configured proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package.
[0124] In the device provided in this embodiment of the invention, during the process of the current user updating the system configuration, when the application configuration is distributed, the application ID of the application configuration currently operated by the user is locked, so that only the current user is allowed to operate on the various application configurations under the application ID within a predetermined time period. This ensures that different users will not configure at the same time during the application configuration distribution process, resulting in configuration disorder, and guarantees the success of system configuration.
[0125] The application configuration distribution device provided in this embodiment of the invention includes a processor and a memory. Each of the above units can be stored in the memory as a program unit, and the processor executes the above program units stored in the memory to realize the corresponding functions.
[0126] The processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured, and the application configuration delivery process can be dynamically executed by adjusting kernel parameters.
[0127] This invention provides a storage medium storing a program that, when executed by a processor, implements the application configuration distribution method.
[0128] This invention provides a processor for running a program, wherein the program executes the application configuration distribution method during runtime.
[0129] like Figure 6As shown, this embodiment of the invention provides an electronic device 30, which includes at least one processor 301, at least one memory 302 connected to the processor 301, and a bus 303. The processor 301 and memory 302 communicate with each other via the bus 303. The processor 301 is used to call program instructions in the memory 302 to execute the aforementioned application configuration distribution method. The device described herein can be a server, PC, PAD, mobile phone, etc.
[0130] This application also provides a computer program product, which, when executed on a data processing device, is adapted to execute a program having the following initialization method steps, the method comprising:
[0131] Receive the target application configuration input by the current user;
[0132] Determine the application ID corresponding to the target application configuration;
[0133] The application ID is locked so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period;
[0134] Insert the task record corresponding to the target application configuration into the existing task list;
[0135] Save the target application configuration to a pre-set database;
[0136] When the task record is executed, the target application configuration and each of the preceding application configurations are retrieved from the database. The preceding application configurations belong to the application ID and are issued earlier than the target application configuration.
[0137] The target application configuration and each of the preceding application configurations are combined into a configuration package, and the configuration package is sent to the configured proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package.
[0138] The above application configuration distribution methods may also optionally include:
[0139] After the configuration package is sent to the configured agent system, the application ID is unlocked.
[0140] Optionally, in the above application configuration distribution method, triggering the agent system to configure the device to be configured according to each application configuration in the configuration package includes:
[0141] The agent system is triggered to match each application configuration in the configuration package with each application configuration already set in memory to determine multiple configurations to be updated; the configurations to be updated are application configurations that exist in the configuration package but do not exist in the memory.
[0142] Configure the device to be configured according to each of the configurations to be updated.
[0143] The above application configuration distribution methods may also optionally include:
[0144] The system receives acquisition requests sent by the agent system at predetermined intervals, acquires the latest application configuration from the database based on the acquisition requests, and sends the latest application configuration to the agent system.
[0145] The above application configuration distribution methods may also optionally include:
[0146] When a network failure occurs between the agent system and the agent system, after the network failure is restored, the agent system receives a channel establishment request and establishes an application configuration distribution channel with the agent system based on the channel establishment request; and distributes the latest application configuration from the database to the agent system.
[0147] The above application configuration distribution methods may also optionally include:
[0148] When the agent system fails and restarts, the system receives a registration request from the agent system, registers the agent system according to the registration request, establishes an application configuration distribution channel with the agent system, and distributes the latest application configuration from the database to the agent system.
[0149] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. 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 apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0150] In a typical configuration, the device includes one or more processors (CPUs), memory, and a bus. The device may also include input / output interfaces, network interfaces, etc.
[0151] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, like read-only memory (ROM) or flash RAM, and memory includes at least one memory chip. Memory is an example of computer-readable media.
[0152] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0153] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0154] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied 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.
[0155] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A method for distributing application configurations, characterized in that, The method is applied to an SDN system and includes: Receive the target application configuration input by the current user; Determine the application ID corresponding to the target application configuration; The application ID is locked so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period; Insert the task record corresponding to the target application configuration into the existing task list; Save the target application configuration to a pre-set database; When the task record is executed, the target application configuration and each of the preceding application configurations are retrieved from the database. The preceding application configurations belong to the application ID and are issued earlier than the target application configuration. The target application configuration and each of the preceding application configurations are combined into a configuration package, and the configuration package is sent to the configured proxy system to trigger the proxy system to configure the device to be configured according to each application configuration in the configuration package; After the configuration package is sent to the configured agent system, the application ID is unlocked.
2. The application configuration distribution method according to claim 1, characterized in that, The triggering of the agent system to configure the device to be configured according to the application configurations in the configuration package includes: The agent system is triggered to match each application configuration in the configuration package with each application configuration already set in memory to determine multiple configurations to be updated; the configurations to be updated are application configurations that exist in the configuration package but do not exist in the memory. Configure the device to be configured according to each of the configurations to be updated.
3. The application configuration distribution method according to claim 1, characterized in that, Also includes: The system receives acquisition requests sent by the agent system at predetermined intervals, acquires the latest application configuration from the database based on the acquisition requests, and sends the latest application configuration to the agent system.
4. The application configuration distribution method according to claim 1, characterized in that, Also includes: When a network failure occurs between the agent system and the agent system, after the network failure is restored, the agent system receives a channel establishment request and establishes an application configuration distribution channel with the agent system based on the channel establishment request; and distributes the latest application configuration from the database to the agent system.
5. The application configuration distribution method according to claim 1, characterized in that, Also includes: When the agent system fails and restarts, the system receives a registration request from the agent system, registers the agent system according to the registration request, establishes an application configuration distribution channel with the agent system, and distributes the latest application configuration from the database to the agent system.
6. An application configuration distribution device, characterized in that, The application configuration distribution device is used in the SDN system and includes: The receiving unit is used to receive the target application configuration input by the current user; A determining unit is used to determine the application ID corresponding to the target application configuration; The locking unit is used to lock the application ID so that only the current user is allowed to operate on the configuration of each application under the application ID within a set time period. An insertion unit is used to insert a task record corresponding to the target application configuration into an established task list; A storage unit is used to save the target application configuration to a pre-set database; The acquisition unit is used to acquire the target application configuration and each pre-application configuration from the database when the task record is executed. The pre-application configuration belongs to the application ID and its issuance time is earlier than that of the target application configuration. The distribution unit is used to assemble the target application configuration and the configurations of each of the preceding applications into a configuration package, and distribute the configuration package to the configured proxy system to trigger the proxy system to configure the device to be configured according to the configurations of each application in the configuration package. After the configuration package is distributed to the configured proxy system, the application ID is unlocked.
7. An SDN system, characterized in that, The SDN system includes: an application system, a control system, a database, an agent system, and a switch; in: The application system is used to receive the application configuration distribution request input by the current user and generate the target application configuration corresponding to the application configuration distribution request; The control system is configured to: receive the target application configuration sent by the application system; determine the application ID corresponding to the target application configuration; lock the application ID to allow only the current user to operate on each application configuration under the application ID within a set time period; insert a task record corresponding to the target application configuration into the established task list; save the target application configuration to the database; when the task record is executed, retrieve the target application configuration and each preceding application configuration from the database, wherein the preceding application configuration belongs to the application ID and its issuance time is earlier than the target application configuration; assemble the target application configuration and each preceding application configuration into a configuration package, and send the configuration package to the proxy system to trigger the proxy system to configure the switch according to each application configuration in the configuration package; and unlock the application ID after the configuration package is sent to the configured proxy system.
8. A storage medium, characterized in that, The storage medium includes stored instructions, wherein, when the instructions are executed, the device where the storage medium is located is controlled to execute the application configuration distribution method as described in any one of claims 1 to 5.
9. An electronic device, characterized in that, It includes at least one processor, and at least one memory and bus connected to the processor; wherein the processor and memory communicate with each other through the bus; the processor is used to call program instructions in the memory to execute the application configuration distribution method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Method and device for managing configuration parameters
CN115567385A