A method, network device and network management for resolving conflicts
By using priority judgment and reverse network configuration channels in NETCONF sessions, the conflict between RPC messages and event notifications is resolved, achieving resource savings and timely processing of high-priority event notifications, thus improving the network management capabilities of network administrators.
Patent Information
- Application Number
- CN202310189652.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-22
- Publication Date
- 2026-01-02
- Estimated Expiration
- 2043-02-22
AI Technical Summary
In a NETCONF session, when processing RPC messages and generating event notifications occur simultaneously, existing technologies require establishing two sessions, which doubles the resource consumption on the network management side and affects the ability to manage more network devices.
A network configuration session is established between the network device and the network management system. RPC message processing is paused or resumed based on priority, high-priority event notifications are sent first, and event notifications can be transmitted through the reverse network configuration channel to reduce resource consumption.
It effectively resolves the conflict between RPC messages and event notifications, saves resources, ensures that high-priority event notifications can be processed in a timely manner, and improves the efficiency of network device management.
Smart Images

Figure CN118540377B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of communication, and in particular to a conflict resolution method, a network device and a network management. BACKGROUND
[0002] The network configuration protocol (network configuration protocol, NETCONF for short) provides a set of rules for communication between a network management and a network device. The network management can perform a remote procedure call (remote procedure call, RPC) operation on the network device through the NETCONF protocol. The request for comment (request for comment, RFC) is a series of memorandums published by the internet engineering task force (internet engineering task force, IETF). In RFC5277, RPC operations and event notifications share a NETCONF session.
[0003] A conflict resolution method currently roughly includes the following steps: two NETCONF sessions are established, one of which is used for RPC operations and the other of which is used for transmitting event notifications.
[0004] However, the establishment of two sessions doubles the resource consumption on the network management side, which is not conducive to the network management of more network devices. SUMMARY
[0005] Therefore, the present application provides a conflict resolution method, which can abort an RPC operation and send an event notification when the processing of an RPC message and the generation of an event notification occur at the same time, so that the network management can process the event notification in time. The method can solve the conflict by establishing one network configuration session between the network device and the network management, which is more resource-saving than the method of solving the conflict by two sessions. The present application also provides a network device and a network management capable of implementing the above method.
[0006] The first aspect provides a method for solving conflict, which is applied to a communication system including a network management device and at least one network device, and the network management device and the network device have a network configuration session, and the method comprises the following steps: after the network device receives an RPC message sent by the network management device through the network configuration session, when the network device generates an event notification in the process of processing the RPC message, the network device acquires the priority of the event notification and the priority of the RPC message; when the priority of the event notification is higher than the priority of the RPC message, the network device suspends the processing of the RPC message, generates a first message processing result according to the executed RPC message, and then sends the first message processing result and an unfinished label to the network management device through the network configuration session; then the network device sends the event notification to the network management device through the network configuration session, and when the sending of the event notification is completed, the network device processes the unexecuted part of the RPC message to obtain a second message processing result, and sends the second message processing result to the network management device through the network configuration session.
[0007] The method of the present application can solve the conflict between the network device and the network management device through one network configuration session, which is more resource-saving than the method of solving conflict through two sessions. In the case that the processing of the RPC message and the sending of the event notification share one network configuration session and the processing of the RPC message and the generation of the event notification occur simultaneously, the event notification with high priority can be sent preferentially, so that the network management device can process the event notification with high priority in time. Moreover, the method can interrupt and resume the processing of the RPC message to obtain the processing result of the RPC message.
[0008] In the first possible implementation manner of the first aspect, the network device acquires and saves multiple event notifications, the priority of each event notification, multiple RPC messages and the priority of each RPC message. In this way, the priority of the event notification and the priority of the RPC message can be configured in advance, so that important events can be processed preferentially.
[0009] The second aspect provides a method for solving conflict, which is applied to a communication system including a network management device and a network device, and the network management device and the network device have a network configuration session, and the method comprises the following steps: after the network management device sends an RPC message to the network device through the network configuration session, the network management device receives a first message processing result, an unfinished label and an event notification sent by the network device through the network configuration session, and then executes an operation corresponding to the event notification; and the network management device receives a second message processing result sent by the network device according to the unfinished label. The network management device can wait for the processing result of the RPC message according to the unfinished label, and can acquire the event notification in the process of waiting for the processing result of the RPC message, so that the conflict between the RPC message and the event notification can be solved.
[0010] The third aspect provides a method for solving the conflict, which is applied to a communication system including a network management device and a network device, and the network management device and the network device have established a network configuration session, and the method comprises the following steps: the network device receives an RPC message sent by the network management device through the network configuration session; when the network device generates an event notification in the process of processing the RPC message, the network device acquires a priority of the event notification and a priority of the RPC message; when the priority of the event notification is higher than the priority of the RPC message, the network device sends a channel request of a subsystem to the network management device through an SSH connection, then receives a network configuration channel success message sent by the network management device, and then establishes a reverse network configuration channel according to the network configuration channel success message, and sends the event notification to the network management device through the reverse network configuration channel. In the case of conflict between processing the RPC message and sending the event notification, the method can establish the reverse network configuration channel through the SSH connection, send the event notification through the reverse network configuration channel, and the network configuration session is used for processing the RPC message, so that the conflict between the RPC message and the event notification is solved. Since the reverse network configuration channel is established on the SSH connection, compared with reestablishing the network configuration session to send the event notification, the transmission layer connection does not need to be reestablished, so that the network resources can be saved, and the transmission speed of the event notification can be accelerated.
[0011] In a possible implementation, before the network device sends the channel request of the subsystem to the network management device through the SSH connection, the network device sends a channel opening request to the network management device through the SSH connection, and receives a channel opening confirmation message sent by the network management device through the SSH connection. In this way, another method for establishing the reverse network configuration channel is provided, and the flexibility of the scheme implementation is improved.
[0012] In another possible implementation, when the network device detects that the idle duration of the reverse network configuration channel reaches a preset duration, the network device closes the reverse network configuration channel. Such a reverse network configuration channel is a temporary channel, which can be actively closed when the event notification does not need to be sent, so that the network resources can be saved.
[0013] The fourth aspect provides a method for solving the conflict, which is applied to a communication system including a network management device and a network device, and the network management device and the network device have established a network configuration session, and the method comprises the following steps: the network management device sends an RPC message to the network device through the network configuration session, then receives a channel request of a subsystem sent by the network device through an SSH connection, then sends a network configuration channel success message to the network device through the SSH connection, establishes a reverse network configuration channel according to the network configuration channel success message, and then receives an event notification sent by the network device through the reverse network configuration channel. The network management device can establish the reverse network configuration channel with the network device in the process of processing the RPC message, and receive the event notification through the reverse network configuration channel, so that the conflict between the RPC message and the event notification can be solved.
[0014] The fifth aspect provides a network device, comprising a receiving module, a processing module and a sending module, the receiving module is configured to receive an RPC message sent by a network management device through a network configuration session; the processing module is configured to acquire a priority of an event notification and a priority of the RPC message when the processing module generates the event notification in a process of processing the RPC message; suspend processing of the RPC message when the priority of the event notification is higher than the priority of the RPC message; generate a first message processing result according to the executed RPC message; the sending module is configured to send the first message processing result and an unfinished label to the network management device through the network configuration session; send the event notification to the network management device through the network configuration session; the processing module is further configured to process an unexecuted part of the RPC message to obtain a second message processing result when the event notification is sent; and the sending module is further configured to send the second message processing result to the network management device through the network configuration session.
[0015] In a possible implementation, the processing module is further configured to acquire and save a plurality of event notifications, a priority of each event notification, a plurality of RPC messages and a priority of each RPC message.
[0016] The sixth aspect provides a network management device, comprising a receiving module, a processing module and a sending module, the sending module is configured to send an RPC message to a network device through a network configuration session; the receiving module is configured to receive a first message processing result and an unfinished label sent by the network device through the network configuration session; receive an event notification sent by the network device through the network configuration session; the processing module is configured to execute an operation corresponding to the event notification; and the receiving module is further configured to receive a second message processing result sent by the network device according to the unfinished label.
[0017] The seventh aspect provides a network device, comprising a receiving module, a processing module and a sending module; the receiving module is configured to receive an RPC message sent by a network management device through a network configuration session; the processing module is configured to acquire a priority of an event notification and a priority of the RPC message when the processing module generates the event notification in a process of processing the RPC message; the sending module is configured to send a channel request to a subsystem of the network management device through an SSH connection when the priority of the event notification is higher than the priority of the RPC message; the receiving module is configured to receive a network configuration channel success message sent by the network management device; the processing module is configured to establish a reverse network configuration channel according to the network configuration channel success message; and the sending module is configured to send the event notification to the network management device through the reverse network configuration channel.
[0018] In a possible implementation, the sending module is further configured to send a channel opening request to the network management device through the SSH connection; and the receiving module is further configured to receive a channel opening confirmation message sent by the network management device through the SSH connection.
[0019] In another possible implementation manner, the processing module is further configured to close the reverse network configuration channel when it is detected that the idle duration of the reverse network configuration channel reaches a preset duration.
[0020] The eighth aspect provides a network management device, comprising a receiving module, a processing module and a sending module; the sending module is configured to send an RPC message to a network device through a network configuration session; the receiving module is configured to receive a channel request of a subsystem sent by the network device through an SSH connection; the sending module is further configured to send a network configuration channel success message to the network device through the SSH connection; the processing module is configured to establish a reverse network configuration channel according to the network configuration channel success message; and the sending module is further configured to receive an event notification sent by the network device through the reverse network configuration channel.
[0021] The ninth aspect provides a network device, comprising a processor and a memory; the memory is configured to store a program; and the processor is configured to implement the method of the first aspect or the method of the third aspect by executing the program.
[0022] The tenth aspect provides a network management device, comprising a processor and a memory; the memory is configured to store a program; and the processor is configured to implement the method of the second aspect or the method of the fourth aspect by executing the program.
[0023] The eleventh aspect provides a communication system, comprising the network device of the fifth aspect and the network management device of the sixth aspect.
[0024] The twelfth aspect provides a communication system, comprising the network device of the seventh aspect and the network management device of the eighth aspect.
[0025] The thirteenth aspect provides a computing device cluster, comprising at least one computing device; each computing device comprises a processor and a memory; the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster executes the method of the above aspects.
[0026] The fourteenth aspect provides a computer readable storage medium, which stores instructions; when the instructions are executed on a computer, the computer executes the method of the above aspects.
[0027] The fifteenth aspect provides a computer program product comprising instructions, which, when executed on a computer, cause the computer to execute the method of the above aspects. BRIEF DESCRIPTION OF DRAWINGS
[0028] Figure 1 An application scenario in an embodiment of the present application is shown in a schematic diagram;
[0029] Figure 2 A signaling diagram of a conflict resolution method in an embodiment of the present application is shown in a signaling diagram;
[0030] Figure 3 Another signaling diagram for the conflict resolution method in the embodiments of the present application;
[0031] Figure 4 A structural diagram of a network device in the embodiments of the present application;
[0032] Figure 5 A structural diagram of a network management in the embodiments of the present application;
[0033] Figure 6 A structural diagram of a computing device in the embodiments of the present application;
[0034] Figure 7 A structural diagram of a computing device cluster in the embodiments of the present application;
[0035] Figure 8 Another structural diagram of a computing device cluster in the embodiments of the present application. DETAILED DESCRIPTION
[0036] The conflict resolution method of the present application can be applied to a communication system in which a NETCONF session is established. Referring to Figure 1 In one example, the communication system includes a network management and a plurality of network devices, the network management and the network devices are connected through an internet protocol (IP) network, and the network management and the network devices are both configured with a NETCONF protocol. The NETCONF protocol is an extensible markup language (XML) based network configuration and management protocol, and uses a simple RPC mechanism based communication between a client and a server. In the present application, the NETCONF client can be the network management or a controller. The NETCONF server can be the network device, which can be but is not limited to a server.
[0037] The network management can perform operations such as issuing, modifying and deleting configurations of the network devices through the NETCONF protocol. The network devices provide a standardized application programming interface (API), and the network management can manage the network devices through the NETCONF protocol using the API. It should be understood that the number of the network management or the network devices in the communication system is not limited to Figure 1 as shown.
[0038] RFC6241 defines the basic framework and basic RPC operation of the NETCONF protocol, RFC5277 defines the NETCONF event notification, the latest architecture of the NETCONF event notification and yet another next generation (YANG) PUSH defined in RFC8639 / 8640 / 8641, the NETCONF event notification is also called event notification or notification. In RFC5277, the NETCONF RPC operation and the event notification share a NETCONF session. When the network management executes the RPC operation, the NETCONF session is occupied by the RPC operation, when the network device has an important event notification to report, the event notification cannot be reported through the NETCONF session, which causes the event notification to be unable to be processed in time. If two NETCONF sessions are used to process the RPC message and send the event notification respectively, double resources of the network management are needed. Since the number of sessions that can be established by the network management is limited, the communication between the network management and other network devices is affected.
[0039] The application can interrupt the processing process of the RPC message, and preferentially send the event notification in the case that the NETCONF RPC operation and the event notification share a NETCONF session. The method for solving the conflict of the application is described in detail below, and reference is made to Figure 2 An embodiment of the method for solving the conflict in the application includes the following steps.
[0040] Step 201, the network management sends an RPC message to the network device through a network configuration session.
[0041] In this embodiment, after the network device establishes a network configuration session with the network management, the network device receives the RPC message sent by the network management through the network configuration session, and then processes the RPC message. Processing the RPC message includes executing the RPC operation and sending an RPC response message. The RPC response message is an RPC reply message. The instructions corresponding to the RPC operation include but are not limited to <get-config> , <get> , <edit-config> , <copy-config> , <delete-config> , <lock> , <unlock> , <close-session>or <kill-session>.
[0042] Step 202, when the network device generates the event notification in the process of processing the RPC message, the priority of the event notification and the priority of the RPC message are obtained.
[0043] Step 203, when the priority of the event notification is higher than the priority of the RPC message, the network device suspends processing the RPC message.
[0044] When the priority of the event notification is lower than the priority of the RPC message, the network device can continue to process the RPC message, and send the event notification after the processing of the RPC message is completed. When the priority of the event notification is equal to the priority of the RPC message, the network device can suspend processing the RPC message, or can not suspend processing the RPC message.
[0045] Specifically, the network device suspending processing the RPC message includes: when executing the RPC operation, the network device suspends executing the RPC operation. When sending the RPC response message, the network device suspends sending the unexecuted part of the RPC response message.
[0046] Step 204, the network device generates a first message processing result according to the executed RPC message.
[0047] Since the first message processing result is a result obtained without completing the execution of the RPC message, the network device can set an uncompleted label for the first message processing result.
[0048] Step 205, the network device sends the first message processing result and the uncompleted label to the network management through the network configuration session.
[0049] Step 206, the network device sends the event notification to the network management through the network configuration session.
[0050] Step 207, the network management executes the operation corresponding to the event notification.
[0051] Step 208, when the event notification is sent, the network device processes the unexecuted part of the RPC message to obtain a second message processing result.
[0052] Step 209, the network device sends the second message processing result to the network management through the network configuration session.
[0053] The second message processing result is a result obtained after the execution of the RPC message, and the network management can wait for the message processing result after the execution of the RPC according to the uncompleted label. It should be understood that the network management can configure a waiting time threshold. When the waiting time for the message processing result is greater than or equal to the waiting time threshold, the network management terminates the waiting for the second message processing result, and can resend the above-mentioned RPC message to the network device.
[0054] In the embodiment, the conflict can be solved by establishing a network configuration session between the network device and the network management device, which is more resource-saving than the method of solving the conflict by two sessions.
[0055] Secondly, in the case that the RPC operation and the event notification share one network configuration session and the RPC operation and the event notification occur simultaneously, the event notification with high priority can be sent first, so that the event notification with high priority can be processed in time.
[0056] Thirdly, after the network device interrupts the processing of the RPC message, the network device can send the first message processing result and an unfinished label to the network management device, and the network management device can wait for the message processing result after the RPC execution according to the unfinished label, so that the method can interrupt and resume the processing of the RPC message and obtain the RPC message processing result.
[0057] In an optional embodiment, before step 202, the conflict solving method of the application further includes: the network device acquires a plurality of event notifications, the priority of each event notification, a plurality of RPC messages and the priority of each RPC message; and the network device saves the plurality of event notifications, the priority of each event notification, the plurality of RPC messages and the priority of each RPC message.
[0058] In the application, the priority of the event notification and the priority of the RPC message can be pre-configured in the network device, and the priority of the event notification and the priority of the RPC message can be configured and modified according to actual conditions, which is not limited in the application. The event notification can be an event related to a hardware resource or a software fault of the network device. The hardware resource includes but is not limited to CPU resource, memory resource, disk resource and bandwidth resource. The software fault includes but is not limited to the fault of an operating system.
[0059] The conflict solving method of the application is introduced below in a specific application scenario. The network device is taken as a server, and the RPC message is taken as a query message, and the query message is as follows:
[0060] <rpc message-id="1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
[0061] <get-config>
[0062] <filter type="subtree">
[0063] <ifm>
[0064] <interfaces / >
[0065] < / ifm>
[0066]
[0067]
[0068]
[0069] When the network management sends the query message to the server, the server performs the query operation according to the query message. In the process of performing the query operation, when the central processing unit (CPU) of the server is overloaded, a CPU overload notification is generated. The server judges that the priority of the CPU overload notification is higher than the priority of the query operation, and the server suspends the query operation, generates a response message according to the query result and the unfinished label, and sends the response message to the network management.
[0070] The response message is:
[0071] <rpc-reply message-id="1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
[0072] <data>
[0073] <ifm>
[0074] <interfaces>
[0075] <interface>
[0076] <name>eth0 / 0 / 0< / name>
[0077] < / interface>
[0078] <interface complete="false" / >
[0079] <name>eth0 / 0 / 1< / name>
[0080]
[0081] < / interfaces>
[0082] < / ifm>
[0083] < / data>
[0084]
[0085] The CPU overload notification sent by the network device to the network management is:
[0086] <notification xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
[0087] <eventtime>2008-07-08T00:01:00Z< / eventtime>
[0088] <cpu-overload xmlns="urn:example:interface-module">
[0089]
[0090] After the CPU overload notification is sent, the network device continues to perform the query operation. A response message including the query result is generated, and the response message is:
[0091] <rpc-reply message-id="1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
[0092] <data>
[0093] <ifm>
[0094] <interfaces>
[0095] <interface>
[0096] <name>eth0 / 0 / 2< / name>
[0097] < / interface>
[0098] <interface>
[0099] <name>eth0 / 0 / 3< / name>
[0100] < / interface>
[0101] < / interfaces>
[0102] < / ifm>
[0103] < / data>
[0104]
[0105] To solve the conflict between the RPC message and the event notification, the network device and the network management device can establish a reverse network configuration channel, and then send the event notification to the network management device through the reverse network configuration channel. The process of sending the event notification through the reverse network configuration channel is introduced below, and reference is made to Figure 3 Another embodiment of the method for solving the conflict in the application includes:
[0106] Step 301: The network management device sends an RPC message to the network device through a network configuration session.
[0107] Step 302: When an event notification is generated in the process of processing the RPC message by the network device, the priority of the event notification and the priority of the RPC message are obtained.
[0108] Step 303: When the priority of the event notification is higher than the priority of the RPC message, the network device sends a channel opening request to the network management device through an SSH connection.
[0109] Step 304: The network management device sends a channel opening confirmation message to the network device through the SSH connection.
[0110] Steps 303 and 304 are optional steps for establishing the reverse network configuration channel. In actual application, when the network device generates the event notification and the priority of the event notification is higher than the priority of the RPC message, steps 303 and 304 can be skipped, and steps 305 to 307 are directly executed to establish the reverse network configuration channel.
[0111] Step 305: The network device sends a channel request of a subsystem to the network management device through the SSH connection.
[0112] Step 306: The network management device sends a network configuration channel success message to the network device through the SSH connection.
[0113] Step 307: The reverse network configuration channel is established.
[0114] Step 308: The network device sends the event notification to the network management device through the reverse network configuration channel.
[0115] It should be understood that the network device can continue to process the RPC message through the network configuration session without interrupting the process of the RPC message. In the case that the RPC message processing and the event notification sending occur at different times, the event notification can be sent through the established network configuration session.
[0116] In the case of conflict between RPC message processing and sending event notification, the network device and the network management utilize the feature of SSH supporting multiple subsystems, establish a reverse network configuration channel between the network device and the network management according to the SSH connection, send the notification through the reverse network configuration channel, and process the RPC message through the network configuration session, thus providing another method for solving the conflict between processing the RPC message and sending the notification.
[0117] Secondly, since the reverse network configuration channel is established on the SSH connection, compared with re-establishing the network configuration session to send the event notification, the network resource is saved and the speed of transmitting the event notification is accelerated.
[0118] In an optional embodiment, the method for solving the conflict in the application further includes: when the network device detects that the idle duration of the reverse network configuration channel reaches the preset duration, the network device closes the reverse network configuration channel. Thus, the reverse network configuration channel can be actively closed when the event notification is not needed to be sent, the channel resource is saved, and the resource waste is reduced.
[0119] The method for solving the conflict in the application is introduced below in a specific application scenario. The network device is taken as a server, and the network management and the server have established a network configuration session based on the SSH connection. The RPC message sent by the network management to the server is taken as a query message, and the query message is as follows:
[0120] <rpc message-id="1" xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
[0121] >
[0122] <get-config>
[0123] <filter type="subtree">
[0124] <ifm>
[0125] <interfaces / >
[0126] < / ifm>
[0127]
[0128]
[0129]
[0130] The server performs a query operation according to the query message. During the execution of the query operation, a CPU overload notification is generated when the CPU of the server is overloaded. The server judges that the priority of the CPU overload notification is higher than the priority of the query operation, and then sends an SSH_MSG_CHANNEL_OPEN request message to the network management device. The network management device responds to the SSH_MSG_CHANNEL_OPEN message, and returns an SSH_MSG_CHANNEL_OPEN_CONFIRMATION message to the network device. The network device sends an SSH_MSG_CHANNEL_REQUEST message of the subsystem, and fills the subsystem name field in the message with netconf. The network management device returns an SSH_MSG_CHANNEL_SUCCESS message to the network device, and then establishes a reverse network configuration channel. The channel type of the reverse network configuration channel is a subsystem, and the subsystem type is netconf. Then the CPU overload notification is sent on the reverse network configuration channel, and the CPU overload notification is as follows:
[0131] <notification xmlns="urn:ietf:params:xml:ns:netconf:notification:1.0">
[0132] <eventtime>2008-07-08T00:01:00Z< / eventtime>
[0133] <cpu-overload xmlns="urn:example:interface-module">
[0134]
[0135] The network management device performs an operation on the CPU overload notification according to a preset rule. Since the reverse network configuration channel and the network configuration session are different communication connections, the network configuration session is still used to process the RPC operation. When the idle time length of the reverse network configuration channel reaches an idle time length threshold, the network device can send an SSH_MSG_CHANNEL_CLOSE message to the network management device to close the reverse network configuration channel.
[0136] It should be understood that the RPC message in the present application is not limited to the query message and the response message, and the query message and the response message are not limited to the above examples. The event notification in the present application is not limited to the CPU overload notification. The waiting time length threshold and the idle time length threshold can be set according to actual conditions, and the present application is not limited.
[0137] The present application provides a network device capable of implementing the steps performed by the network device in the above embodiments. Referring to Figure 4 In one embodiment, the network device 400 of the present application comprises:
[0138] The receiving module 401 is configured to receive the RPC message sent by the network management device through the network configuration session, and the network device 400 establishes a network configuration session with the network management device;
[0139] The processing module 402 is configured to obtain the priority of the event notification and the priority of the RPC message when the processing module 402 generates the event notification in the process of processing the RPC message, and suspend processing of the RPC message when the priority of the event notification is higher than the priority of the RPC message; and generate a first message processing result according to the executed RPC message;
[0140] The sending module 403 is configured to send the first message processing result and an unfinished label to the network management device through the network configuration session, and send the event notification to the network management device through the network configuration session.
[0141] The processing module 402 is further configured to process the unexecuted part of the RPC message to obtain a second message processing result after the event notification is sent.
[0142] The sending module 403 is further configured to send the second message processing result to the network management device through the network configuration session.
[0143] The receiving module 401, the processing module 402 and the sending module 403 can be implemented by software or by hardware. For example, the implementation of the processing module 402 is described as follows. Similarly, the implementation of the receiving module 401 and the sending module 403 can refer to the implementation of the processing module 402.
[0144] As an example of a software functional unit, the processing module 402 can include code running on a computing instance. The computing instance can include at least one of a physical host (computing device), a virtual machine, and a container. Further, the computing instance can be one or more. For example, the processing module 402 can include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code can be distributed in the same region (region), or can be distributed in different regions. Further, the multiple hosts / virtual machines / containers used to run the code can be distributed in the same availability zone (AZ), or can be distributed in different AZs, each AZ including a data center or multiple data centers with similar geographical locations. Generally, one region can include multiple AZs.
[0145] Similarly, the multiple hosts / virtual machines / containers used to run the code can be distributed in the same virtual private cloud (VPC) or in multiple VPCs. Among them, usually one VPC is set in one region, and a communication gateway needs to be set in each VPC for cross-region communication between two VPCs in the same region and between VPCs in different regions, and the interconnection between VPCs is realized through the communication gateway.
[0146] As an example of a hardware functional unit, the processing module 402 can include at least one computing device, such as a server or the like. Alternatively, the processing module 402 can also be a device implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD), and the like. Among them, the above-mentioned PLD can be implemented by a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0147] The multiple computing devices included in the processing module 402 can be distributed in the same region or in different regions. The multiple computing devices included in the processing module 402 can be distributed in the same AZ or in different AZs. Similarly, the multiple computing devices included in the processing module 402 can be distributed in the same VPC or in multiple VPCs. Among them, the multiple computing devices can be any combination of servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0148] It should be noted that in other embodiments, the processing module 402 can be used to perform Figure 2 any step performed by the network device in the embodiments shown Figure 3 The receiving module 401 can be used to perform Figure 2 any step performed by the network device in the embodiments shown Figure 3 The sending module 403 can be used to perform Figure 2 any step performed by the network device in the embodiments shown Figure 3 The receiving module 401, the processing module 402 and the sending module 403 are responsible for implementing the steps performed by the network device in the embodiments shown. The receiving module 401, the processing module 402 and the sending module 403 can be designated as needed to implement the entire function of the network device by implementing different steps in the conflict resolution method.
[0149] In an optional embodiment, the processing module 402 is further configured to obtain a plurality of event notifications, a priority of each event notification, a plurality of RPC messages and a priority of each RPC message; and save the plurality of event notifications, the priority of each event notification, the plurality of RPC messages and the priority of each RPC message.
[0150] In another embodiment, the receiving module 401 is configured to receive an RPC message sent by the network management through a network configuration session; the processing module 402 is configured to obtain a priority of the event notification and a priority of the RPC message when generating the event notification in the process of processing the RPC message; the sending module 403 is configured to send a channel request of a subsystem to the network management through an SSH connection when the priority of the event notification is higher than the priority of the RPC message; the receiving module 401 is configured to receive a network configuration channel success message sent by the network management; the processing module 402 is configured to establish a reverse network configuration channel according to the network configuration channel success message; and the sending module 403 is configured to send the event notification to the network management through the reverse network configuration channel.
[0151] In another optional embodiment, the sending module 403 is further configured to send a channel opening request to the network management through the SSH connection; and the receiving module 401 is further configured to receive a channel opening confirmation message sent by the network management through the SSH connection.
[0152] In another optional embodiment, the processing module 402 is further configured to close the reverse network configuration channel when detecting that an idle duration of the reverse network configuration channel reaches a preset duration.
[0153] The present application provides a network management capable of implementing the steps performed by the network management in the above embodiments. Referring to Figure 5 In an embodiment, the network management 500 of the present application comprises a receiving module 501, a processing module 502 and a sending module 503; the sending module 503 is configured to send an RPC message to a network device through a network configuration session; the receiving module 501 is configured to receive a first message processing result and an unfinished label sent by the network device through the network configuration session; and receive an event notification sent by the network device through the network configuration session; the processing module 502 is configured to perform an operation corresponding to the event notification; and the receiving module 501 is further configured to receive a second message processing result sent by the network device according to the unfinished label, the second message processing result being obtained by the network device executing an unexecuted part of the RPC message.
[0154] In another embodiment, the sending module 503 is configured to send the RPC message to the network device through the network configuration session; the receiving module 501 is configured to receive the channel request of the subsystem sent by the network device through the SSH connection; the sending module 503 is further configured to send the network device a network configuration channel success message through the SSH connection; the processing module 502 is configured to establish a reverse network configuration channel according to the network configuration channel success message; and the sending module 503 is further configured to receive the event notification sent by the network device through the reverse network configuration channel.
[0155] The receiving module 501, the processing module 502, and the sending module 503 can be implemented by software or by hardware. For example, the implementation of the processing module 502 is described below. Similarly, the implementation of the receiving module 501 and the sending module 503 can refer to the implementation of the processing module 502.
[0156] As an example of a software functional unit, the processing module 502 can include code running on a computing instance. The computing instance can include at least one of a physical host (computing device), a virtual machine, and a container. Further, the computing instance can be one or more. For example, the processing module 502 can include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers running the code can be distributed in the same region or in different regions. Further, the multiple hosts / virtual machines / containers running the code can be distributed in the same AZ or in different AZs, and each AZ includes one data center or multiple data centers in close geographical proximity. Generally, one region can include multiple AZs.
[0157] Similarly, the multiple hosts / virtual machines / containers running the code can be distributed in the same VPC or in multiple VPCs. Generally, one VPC is set in one region, and a communication gateway needs to be set in each VPC for cross-region communication between two VPCs in the same region or between VPCs in different regions, and the interconnection between VPCs is realized through the communication gateway.
[0158] As an example of a hardware functional unit, the processing module 502 can include at least one computing device, such as a server. Alternatively, the processing module 502 can be a device implemented by ASIC or PLD, etc. The PLD can be CPLD, FPGA, GAL, or any combination thereof.
[0159] The processing module 502 includes multiple computing devices that can be distributed within the same region or in different regions. Similarly, the processing module 502 includes multiple computing devices that can be distributed within the same Availability Zone (AZ) or in different AZs. Likewise, the processing module 502 includes multiple computing devices that can be distributed within the same Virtual Private Cloud (VPC) or in multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0160] It should be noted that, in other embodiments, the processing module 502 can be used to perform... Figure 2 The illustrated embodiments to Figure 3 In the illustrated embodiment, the receiving module 501 can be used to execute any step performed by the network management system. Figure 2 The illustrated embodiments to Figure 3 In the illustrated embodiment, the sending module 503 can be used to execute any step performed by the network management system. Figure 2 The illustrated embodiments to Figure 3 In the illustrated embodiment, any step executed by the network management system, the steps implemented by the receiving module 501, processing module 502, and sending module 503 can be specified as needed. The receiving module 501, processing module 502, and sending module 503 respectively implement different steps in the conflict resolution method to achieve all the functions of the network management system.
[0161] This application provides a communication system, which includes a network management unit 500 and a network device 400.
[0162] This application also provides a computing device 600. For example... Figure 6 As shown, computing device 600 includes: bus 602, processor 604, memory 606, and communication interface 608. Processor 604, memory 606, and communication interface 608 communicate with each other via bus 602. Computing device 600 can be a server or a terminal device. It should be understood that this application does not limit the number of processors, memory, and communication interfaces in computing device 600.
[0163] Bus 602 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 6 The bus 604 is represented by a single line, but this does not mean that there is only one bus or one type of bus. The bus 604 may include a path for transmitting information between various components of the computing device 600 (e.g., memory 606, processor 604, communication interface 608).
[0164] Processor 604 may include any one or more processors such as CPU, graphics processing unit (GPU), microprocessor (MP), or digital signal processor (DSP).
[0165] Memory 606 may include volatile memory, such as random access memory (RAM). Processor 604 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
[0166] The memory 606 stores executable program code, which the processor 604 executes to implement the functions of the aforementioned receiving module, processing module, and transmitting module, thereby implementing the steps performed by the network device in the conflict resolution method. In other words, the memory 606 stores instructions for executing the conflict resolution method.
[0167] Alternatively, the memory 606 stores executable code, which the processor 604 executes to implement the functions of the aforementioned receiving module, processing module, and transmitting module, thereby implementing the steps performed by the network management system in the conflict resolution method. In other words, the memory 606 stores instructions for executing the conflict resolution method.
[0168] The communication interface 603 uses transceiver modules, such as, but not limited to, network interface cards and transceivers, to enable communication between the computing device 600 and other devices or communication networks.
[0169] like Figure 7 As shown, the computing device cluster includes at least one computing device 600. The memory 606 of one or more computing devices 600 in the computing device cluster may store the same instructions for executing conflict resolution methods.
[0170] In some possible implementation, the memory 606 of one or more of the computing devices 600 in the cluster of computing devices can also respectively store partial instructions for performing the method of resolving the conflict. In other words, the combination of one or more of the computing devices 600 can collectively perform the instructions for performing the method of resolving the conflict.
[0171] It is to be noted that the memory 606 in different computing devices 600 in the cluster of computing devices can store different instructions respectively for performing partial functions of the network device or the network management. That is, the instructions stored in the memory 606 in different computing devices 600 can implement the functions of one or more of the receiving module, the processing module, and the sending module.
[0172] In some possible implementation, one or more of the computing devices in the cluster of computing devices can be connected through a network. The network can be a wide area network or a local area network, etc. Figure 8 A possible implementation is shown. As shown in Figure 8 The two computing devices 600A and 600B are connected through a network. Specifically, the communication interface in each computing device is connected to the network. In this type of possible implementation, the memory 606 in the computing device 600A stores instructions for performing the functions of the receiving module. Meanwhile, the memory 606 in the computing device 600B stores instructions for performing the functions of the processing module and the sending module.
[0173] The embodiments of the present application also provide a computer readable storage medium. The computer readable storage medium can be any available medium or data storage device that can be used to store instructions that can be executed by a computing device or a data center containing one or more available media. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk), etc. The computer readable storage medium includes instructions that instruct the computing device to perform the method of resolving the conflict.
[0174] The embodiments of the present application also provide a computer program product containing instructions. The computer program product can be software or a program product containing instructions that can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, the at least one computing device is caused to perform the method of resolving the conflict.
[0175] The application also provides a chip system, which comprises a processor and a memory coupled with each other. The memory is used for storing a computer program or instructions, and the processor is used for executing the computer program or instructions stored in the memory, so that the media server executes the steps performed by the receiving module, the processing module or the sending module in the above-mentioned embodiments. Optionally, the memory is a memory in the chip, such as a register, a cache or the like. The memory can also be a memory outside the chip in the site, such as a read-only memory or other types of static storage devices capable of storing static information and instructions, a random access memory or the like. The processor mentioned in any of the above can be a general central processing unit, a microprocessor, an application specific integrated circuit or one or more integrated circuits for implementing the above-mentioned conflict resolution method.
[0176] The above embodiments are only used to illustrate the technical solutions of the present application, but not limit the present application; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application. < / unlock> < / lock> < / delete-config> < / copy-config> < / edit-config> < / get> < / get-config>
Claims
1. A method of resolving conflicts, characterized by, The method is applied to a communication system including a network management device and a network device, the network management device and the network device have a network configuration session, and the method includes: The network device receives a remote procedure call (RPC) message sent by the network management device through the network configuration session; When the network device generates an event notification in processing the RPC message, the network device acquires a priority of the event notification and a priority of the RPC message; When the priority of the event notification is higher than the priority of the RPC message, the network device suspends processing of the RPC message; The network device generates a first message processing result according to the executed RPC message; The network device sends the first message processing result and an unfinished label to the network management device through the network configuration session; The network device sends the event notification to the network management device through the network configuration session; When the event notification is sent, the network device processes an unexecuted part of the RPC message to obtain a second message processing result; The network device sends the second message processing result to the network management device through the network configuration session.
2. The method of claim 1, wherein, The method further includes: The network device acquires a plurality of event notifications, a priority of each event notification, a plurality of RPC messages, and a priority of each RPC message; The network device saves the plurality of event notifications, the priority of each event notification, the plurality of RPC messages, and the priority of each RPC message.
3. A method of resolving conflicts, characterized by, The method is applied to a communication system including a network management device and a network device, the network management device and the network device have a network configuration session, and the method includes: The network management device sends a remote procedure call (RPC) message to the network device through the network configuration session; The network management device receives the first message processing result and an unfinished label sent by the network device through the network configuration session; The network management device receives an event notification sent by the network device through the network configuration session; The network management device performs an operation corresponding to the event notification; and the network management device receives a second message processing result sent by the network device according to the unfinished label, the second message processing result being obtained by the network device processing an unexecuted part of the RPC message.
4. A method of resolving conflicts, characterized by, The method is applied to a communication system including a network management device and a network device, the network management device and the network device have a network configuration session, and the method includes: The network device receives a remote procedure call (RPC) message sent by the network management device through the network configuration session; When the network device generates an event notification in processing the RPC message, the network device acquires a priority of the event notification and a priority of the RPC message; When the priority of the event notification is higher than the priority of the RPC message, the network device sends a channel request of a subsystem to the network management device through a secure shell (SSH) connection, receives a network configuration channel success message sent by the network management device, establishes a reverse network configuration channel according to the network configuration channel success message, and sends the event notification to the network management device through the reverse network configuration channel.
5. The method of claim 4, wherein, Before the network device sends a channel request of a subsystem to the network management system through a secure shell (SSH) connection, the method further comprises: The network device sends a channel opening request to the network management system through the SSH connection; The network device receives a channel opening confirmation message sent by the network management system through the SSH connection.
6. The method according to claim 4 or 5, characterized in that, The method further comprises: When the network device detects that the idle duration of the reverse network configuration channel reaches a preset duration, the network device closes the reverse network configuration channel.
7. A method of resolving conflicts, characterized by, The method is applied to a communication system comprising a network management system and a network device, and the network management system and the network device have established a network configuration session, and the method comprises: The network management system sends a remote procedure call (RPC) message to the network device through the network configuration session; The network management system receives a channel request of a subsystem sent by the network device through a secure shell (SSH) connection; The network management system sends a network configuration channel success message to the network device through the SSH connection; The network management system establishes a reverse network configuration channel according to the network configuration channel success message; The network management system receives an event notification sent by the network device through the reverse network configuration channel.
8. A network device, comprising: The network device and the network management system have established a network configuration session, and the network device comprises: A receiving module, configured to receive a remote procedure call (RPC) message sent by the network management system through the network configuration session; A processing module, configured to, when an event notification is generated in a process of processing the RPC message by the processing module, acquire a priority of the event notification and a priority of the RPC message, pause processing of the RPC message when the priority of the event notification is higher than the priority of the RPC message, and generate a first message processing result according to an executed RPC message; A sending module, configured to send the first message processing result and an unfinished label to the network management system through the network configuration session, and send the event notification to the network management system through the network configuration session; The processing module is further configured to, after the event notification is sent, process an unexecuted part of the RPC message to obtain a second message processing result; The sending module is further configured to send the second message processing result to the network management system through the network configuration session.
9. The network device of claim 8, wherein, The processing module is further configured to acquire a plurality of event notifications, a priority of each event notification, a plurality of RPC messages, and a priority of each RPC message, and save the plurality of event notifications, the priority of each event notification, the plurality of RPC messages, and the priority of each RPC message.
10. A network management device, characterized by comprising: The network management system and the network device have established a network configuration session, and the network management system comprises: A sending module, configured to send a remote procedure call (RPC) message to the network device through the network configuration session; A receiving module, configured to receive the first message processing result and an unfinished label sent by the network device through the network configuration session, and receive an event notification sent by the network device through the network configuration session; A processing module, configured to execute an operation corresponding to the event notification. The receiving module is further configured to receive a second packet processing result sent by the network device according to the unfinished label, the second packet processing result being obtained by the network device performing an unfinished part of the RPC packet.
11. A network device, comprising: The network device has a network configuration session established with the network management device, and the network device comprises: a receiving module configured to receive a remote procedure call (RPC) packet sent by a network management device through a network configuration session; a processing module configured to, when an event notification is generated in processing the RPC packet, acquire a priority of the event notification and a priority of the RPC packet; a sending module configured to, when the priority of the event notification is higher than the priority of the RPC packet, send a channel request of a subsystem to the network management device through a secure shell (SSH) connection, a receiving module configured to receive a network configuration channel success packet sent by the network management device; a processing module configured to establish a reverse network configuration channel according to the network configuration channel success packet; a sending module configured to send the event notification to the network management device through the reverse network configuration channel.
12. The network device of claim 11, wherein the sending module is further configured to send a channel opening request to the network management device through the SSH connection; and the receiving module is further configured to receive a channel opening confirmation packet sent by the network management device through the SSH connection.
13. The network device of claim 11 or 12, wherein the processing module is further configured to, when detecting that an idle duration of the reverse network configuration channel reaches a preset duration, close the reverse network configuration channel.
14. A network management device, characterized by comprising: The network management device has a network configuration session established with the network device, and the network management device comprises: a sending module configured to send a remote procedure call (RPC) packet to the network device through the network configuration session; a receiving module configured to receive a channel request of a subsystem sent by the network device through a secure shell (SSH) connection; the sending module is further configured to send a network configuration channel success packet to the network device through the SSH connection; a processing module configured to establish a reverse network configuration channel according to the network configuration channel success packet; the sending module is further configured to receive an event notification sent by the network device through the reverse network configuration channel.
15. A communication system, characterized by The network device of any one of claims 8 to 9 and the network management device of claim 10. The network device of any one of claims 11 to 13 and the network management device of claim 14.
16. A communication system, characterized by The at least one computing device, each computing device comprising a processor and a memory, the processor of the at least one computing device being configured to execute instructions stored in the memory of the at least one computing device to cause the cluster of computing devices to perform the method of any one of claims 1 to 7. The computer program instructions, when executed by a computing device, cause the computing device to perform the method of any one of claims 1 to 7.
17. A cluster of computing devices, characterized in that, The instructions, when executed by a computing device, cause the computing device to perform the method of any one of claims 1 to 7.
18. A computer-readable storage medium comprising computer program instructions, wherein, 19. A computer program product comprising instructions, characterized in that,
Citation Information
Patent Citations
Event notice sending method, system and equipment based on network configuration protocol
CN101110822A
Method, device and system for managing network device
CN114640579A