Cloud network-based message processing method, device, equipment and medium

By recording the ENI identification information corresponding to the previous message in the flow table, dynamically maintaining the routing information of the message in the NFV network element service, solving the problem of instability of the NFV network element service, and achieving efficient message forwarding and routing consistency.

CN118972351BActive Publication Date: 2025-03-25BEIJING VOLCANO ENGINE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411195189.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-28
Publication Date
2025-03-25
Estimated Expiration
2044-08-28

AI Technical Summary

Technical Problem

In NFV scenarios, NFV network element services are unstable, mainly due to traffic migration and packet forwarding caused by NFV instance failure.

Method used

By recording the identification information of the ENI corresponding to the previous message in the flow table, dynamically maintain the identification information of the ENI that the message group depends on during transmission, ensuring that the ENI continues to be used when the ENI state is available, otherwise the target ENI is reselected and the ENI identification information in the flow table is updated.

Benefits of technology

It effectively ensures the consistency of route selection in NFV network element services, ensures that packet forwarding can be easily and reliably even in the case of ENI failure, and improves the stability of NFV network element services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118972351B_ABST
    Figure CN118972351B_ABST
Patent Text Reader

Abstract

The disclosed embodiment relates to a message processing method, device, equipment and medium based on cloud network, including: for the target message to be forwarded currently, obtaining the ENI identification information recorded in the flow table of the message group to which the target message belongs, and determining the current state of the ENI corresponding to the ENI identification information; the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI that the message of the message group depends on during transmission; when the current state of the ENI corresponding to the ENI identification information is an available state, the ENI corresponding to the ENI identification information is used as the target ENI corresponding to the target message; when the current state of the ENI corresponding to the ENI identification information is an unavailable state, reselecting the target ENI corresponding to the target message, and updating the ENI identification information in the flow table based on the identification information of the target ENI; sending the target message to the message receiving end based on the target ENI. The disclosed embodiment can effectively guarantee the stability of NFV network element services.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of communication technology, and in particular to a cloud network-based message processing method, device, equipment and medium. Background Art

[0002] The NFV (Network Functions Virtualization) scenario on the cloud uses ECS (Elastic Compute Service) as a forwarding network element and reuses the network capabilities of VPC-ENI (Virtual Private Cloud-Elastic Network Interface) to achieve traffic forwarding. The network element devices in the NFV scenario usually need to process a large amount of business traffic, that is, they need to forward and process a large number of business messages, which require the use of ENI for message forwarding. At present, most of the ENI-Bonding technology is used, which binds and aggregates multiple ENIs into a virtual BondingENI (aggregated ENI), and detects the status and traffic of each ENI (that is, each member WorkerENI) contained in the aggregated ENI, thereby achieving adaptive traffic scheduling. The inventor has found through research that NFV instance failures may occur, and the existing traffic needs to be migrated, that is, the messages to be sent need to migrate and change the destination ENI. The processing method adopted by the existing technology will cause the NFV network element service to be unstable. Summary of the invention

[0003] In order to solve the above technical problems or at least partially solve the above technical problems, the present disclosure provides a cloud network-based message processing method, device, equipment and medium.

[0004] In a first aspect, an embodiment of the present disclosure provides a cloud network-based message processing method, comprising: for a target message to be forwarded currently, obtaining the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs, and determining the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI on which the messages of the message group depend during transmission; when the current state of the ENI corresponding to the ENI identification information is an available state, the ENI corresponding to the ENI identification information is used as the target ENI corresponding to the target message; when the current state of the ENI corresponding to the ENI identification information is an unavailable state, reselecting the target ENI corresponding to the target message, and updating the ENI identification information in the flow table based on the identification information of the target ENI; and sending the target message to the message receiving end based on the target ENI.

[0005] In a second aspect, an embodiment of the present disclosure further provides a message processing device based on a cloud network, comprising: a state determination module, for obtaining, for a target message to be forwarded, the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs, and determining the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI on which the messages of the message group depend during transmission; a first processing module, for, when the current state of the ENI corresponding to the ENI identification information is an available state, using the ENI corresponding to the ENI identification information as the target ENI corresponding to the target message; a second processing module, for, when the current state of the ENI corresponding to the ENI identification information is an unavailable state, reselecting the target ENI corresponding to the target message, and updating the ENI identification information in the flow table based on the identification information of the target ENI; a message sending module, for sending the target message to a message receiving end based on the target ENI.

[0006] In a third aspect, an embodiment of the present disclosure further provides an electronic device, comprising: a processor; a memory for storing executable instructions of the processor; the processor is used to read the executable instructions from the memory and execute the instructions to implement a cloud network-based message processing method as provided in an embodiment of the present disclosure.

[0007] In a fourth aspect, an embodiment of the present disclosure further provides a computer-readable storage medium, wherein the storage medium stores a computer program, and the computer program is used to execute a cloud network-based message processing method as provided in an embodiment of the present disclosure.

[0008] In a fifth aspect, an embodiment of the present disclosure further provides a computer program product, including a computer program, which, when executed by a processor, implements a cloud network-based message processing method as provided in an embodiment of the present disclosure.

[0009] The above technical solution provided by the embodiment of the present disclosure can additionally record the identification information of the ENI corresponding to the previous message in the flow table, so that the message to be forwarded currently can refer to the ENI identification information corresponding to the previous message recorded in the flow table. When the current state of the ENI corresponding to the ENI identification information is an available state, the ENI will continue to be used as the target ENI of the target message to be forwarded currently. When the current state of the ENI corresponding to the ENI identification information is an unavailable state, the target ENI will be reselected and the ENI identification information in the flow table will be updated. The identification information of the ENI that the messages of the message group rely on during transmission is dynamically maintained through the flow table, which helps to efficiently ensure the consistency of routing. Moreover, even if the ENI corresponding to the previous message is unavailable due to a fault, the message forwarding can be realized conveniently and reliably, thereby effectively ensuring the stability of the NFV network element service.

[0010] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0012] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0013] Figure 1 A schematic diagram of a flow chart of a cloud network-based message processing method provided in an embodiment of the present disclosure;

[0014] Figure 2 A schematic diagram of a cloud network-based message processing flow provided in an embodiment of the present disclosure;

[0015] Figure 3A schematic diagram of a flow chart of a cloud network-based message processing method provided in an embodiment of the present disclosure;

[0016] Figure 4 A schematic diagram of a cloud network-based message processing flow provided in an embodiment of the present disclosure;

[0017] Figure 5 A schematic diagram of the structure of a cloud network-based message processing device provided in an embodiment of the present disclosure;

[0018] Figure 6 A schematic diagram of the structure of a cloud network-based message processing device provided in an embodiment of the present disclosure;

[0019] Figure 7 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0020] In order to more clearly understand the above-mentioned objectives, features and advantages of the present disclosure, the scheme of the present disclosure will be further described below. It should be noted that the embodiments of the present disclosure and the features in the embodiments can be combined with each other without conflict.

[0021] In the following description, many specific details are set forth to facilitate a full understanding of the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; it is obvious that the embodiments in the specification are only part of the embodiments of the present disclosure, rather than all of the embodiments.

[0022] In order to avoid traffic turbulence, it is necessary to ensure that the same flow (that is, the messages in the same message group) can be forwarded to the member ENI contained in the same aggregate ENI as much as possible. When the status of the member ENI (available or unavailable) remains unchanged, it is usually easy to ensure the consistency of routing; but when the number and status of the member ENI change, it is not easy to achieve the consistency of the routing results before and after the change. Since most NFV network elements on the cloud need to rely on the information of the previous message to process the current message, when an instance fails, it may cause a large-scale traffic migration. Different NFV network element nodes need to synchronize the dependency information between the recorded messages. If they cannot be synchronized in time, it will affect the message forwarding. To solve this problem, the industry usually uses a consistent hashing algorithm to solve it. However, the cost of implementing a consistent hashing algorithm in a virtual switch is high, it is difficult to guarantee forwarding performance, and there will be a large-scale re-hashing process, that is, a large-scale traffic migration, resulting in unstable NFV network element services.

[0023] For ease of understanding, the present disclosure first provides a message processing method for a virtual switch applicable to a message sending end. Figure 1A schematic diagram of a cloud network-based message processing method provided in an embodiment of the present disclosure is shown in FIG. Figure 1 As shown, the method mainly includes the following steps S102 to S108:

[0024] Step S102, for the target message to be forwarded currently, obtain the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs, and determine the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI that the messages of the message group rely on during transmission.

[0025] Among them, the above-mentioned message group may also be referred to as "flow" for short. Exemplarily, the identification information includes a media access control MAC (Media Access Control) address, which can be used to uniquely identify the ENI. The message group usually contains multiple messages, and the flow table corresponding to the message group contains a series of information for guiding message forwarding and processing, such as five-tuple information. Compared with the flow table adopted in the related art, the embodiment of the present disclosure adds ENI identification information to the flow table for reference when forwarding subsequent messages. In some implementation examples, the ENI identification information (MAC information) can be directly recorded in the forwarding action information in the flow table. The embodiment of the present disclosure can dynamically maintain the identification information of the ENI that the message of the message group depends on during transmission through the flow table, that is, the ENI identification information can be dynamically updated according to the actual situation, so that the ENI identification information in the flow table is always the identification information of the ENI corresponding to the previous message, such as the MAC address of the ENI corresponding to the previous message. Specifically, as multiple messages in the message group are sent one by one, the flow table can always record the ENI identification information corresponding to the previous message by updating the ENI identification information. If the target ENI is consistent with the ENI corresponding to the previous message forwarding, the ENI identification information in the flow table remains unchanged. If the target ENI is inconsistent with the ENI corresponding to the previous message forwarding, the ENI identification information in the flow table is changed for reference when forwarding subsequent messages.

[0026] In addition, the ENI mentioned in the embodiment of the present disclosure can specifically be one of the ENIs included in the virtual aggregate ENI. The aggregate ENI is a virtual aggregate elastic network interface obtained by aggregating the ENI set at the virtual switch on the message receiving end side of the target message to be received. It can be obtained using ENI-Bonding technology and will not be repeated here.

[0027] Step S104, when the current state of the ENI corresponding to the ENI identification information is an available state, the ENI corresponding to the ENI identification information is used as the target ENI corresponding to the target message. That is, when the ENI corresponding to the ENI identification information is available, the current message can be directly sent to the same ENI as the previous message in the message group, so as to ensure the consistency of routing.

[0028] Step S106: When the current state of the ENI corresponding to the ENI identification information is unavailable, reselect the target ENI corresponding to the target message, and update the ENI identification information in the flow table based on the identification information of the target ENI.

[0029] At this time, the target ENI corresponding to the target message is different from the ENI corresponding to the previous message, and the MAC address in the flow table can be updated based on the identification information (MAC information) of the target ENI corresponding to the target message. It can be understood that in the disclosed embodiment, in order to ensure the consistency of routing, it is usually expected that all messages in the message group are forwarded to the same ENI, even if the ENI changes due to failures and other reasons in the middle, it is expected to minimize traffic jitters, and try to make the ENI corresponding to the current message (that is, the target message) the same as the ENI corresponding to the previous message, unless the ENI corresponding to the previous message is unavailable, and then change the ENI corresponding to the current message, and update the ENI identification information recorded in the flow table for reference when forwarding subsequent messages, such as continuing to use the changed ENI to send subsequent messages, not only can the ENI corresponding to the current message be efficiently determined each time the message is forwarded, but also the traffic jitters caused by the failure can be minimized.

[0030] Step S108, the target message is sent to the message receiving end based on the target ENI. In practical applications, the destination MAC of the target message can be set to the MAC address of the target ENI, that is, the destination MAC address corresponding to the target message is the MAC address of the target ENI, or the destination MAC address corresponding to the target message is consistent with the MAC address of the target ENI. Based on the known MAC address of the target ENI, the destination MAC address corresponding to the target message can be determined, so that the target message can be accurately sent to the message receiving end.

[0031] Through the above steps S102 to S108, it is helpful to efficiently ensure the consistency of routing, and even if the ENI corresponding to the previous message is unavailable due to a fault, the message forwarding can be realized conveniently and reliably, thereby effectively ensuring the stability of the NFV network element service. In the embodiment of the present disclosure, when the target message is the first message of the message group, the target ENI corresponding to the target message can be directly selected, and the identification information of the target ENI can be directly recorded in the flow table of the message group. The core processing difference between whether the target message is the first message or the non-first message is that the first message needs to directly select the target ENI, and the identification information of the selected target ENI is recorded in the flow table. The non-first message needs to determine the target ENI corresponding to the current target message to be sent based on the identification information of the ENI corresponding to the previous message recorded in the flow table, so as to ensure that the messages in the message group can always be forwarded to the same ENI (that is, the member ENI in the aggregated ENI). In actual applications, due to ENI failures and other reasons, subsequent messages may also reselect other ENIs. However, in this way of selecting routes through flow tables, under normal circumstances, a fixed flow (such as messages in a message group) can select the same ENI for forwarding through the above method. When the ENI becomes unavailable due to a fault or other reasons, only the messages sent to the unavailable ENI need to reselect other ENIs, that is, they need to be rerouted. Other flows, that is, other messages, are completely unaffected, thereby reducing large-scale traffic migration caused by ENI unavailability, effectively improving the traffic turbulence phenomenon that is prone to occur in related technologies, and thus ensuring the stability of NFV network element services.

[0032] In summary, the above method can additionally record the identification information of the ENI corresponding to the previous message in the flow table, so that the current message to be sent can refer to the ENI identification information corresponding to the previous message recorded in the flow table, thereby accurately and reasonably determining the target ENI corresponding to the current message to be sent. This method can effectively ensure the stability of NFV network element services.

[0033] Whether the target ENI needs to be selected when the target message to be forwarded is the first message, or the target ENI needs to be selected when the ENI corresponding to the previous message of the target message to be forwarded is unavailable, in some implementations, the step of selecting the target ENI corresponding to the target message can be performed with reference to the following steps A to B:

[0034] Step A, obtain the ENI information table corresponding to the target message; wherein the ENI information table is the information table of the aggregated ENI corresponding to the target message, the aggregated ENI is set on the message receiving end side, and the ENI information table contains the identification information and status information of multiple ENIs corresponding to the aggregated ENI; wherein the status information is used to indicate whether the ENI is currently available. The aggregated ENI corresponding to the target message is the virtual aggregated elastic network interface obtained by aggregating the ENI set at the virtual switch on the message receiving end side to receive the target message, which is configured with the ENI information table, which can be referred to in the following Table 1:

[0035]

[0036] Table 1

[0037] As shown in Table 1, the ENI information table contains the IP address corresponding to the aggregated ENI and the member serial number. The member is the abbreviation of the member ENI (workerENI). The ENI mentioned below refers to the member in the aggregated ENI. In addition, the ENI information table contains the MAC information, VTEP information and status information corresponding to each member. It should be noted that the IP corresponding to different members in the ENI information table is the same, and information such as VTEP (VXLAN Tunnel Endpoint, virtual tunnel endpoint) may also be the same. The information used to uniquely identify the ENI is the MAC address. That is, the MAC addresses corresponding to different ENIs are different. In addition, the status of the ENI is available, indicating that the ENI is online; the status of the ENI is unavailable, indicating that the ENI is not online. In actual applications, when the user's ECS accesses the aggregated ENI, the virtual switch can select an available ENI for message forwarding according to the ENI information table, thereby achieving load balancing and fault disaster recovery capabilities.

[0038] Step B, based on the identification information and status information of the multiple ENIs and the five-tuple information recorded in the flow table corresponding to the message group, select the target ENI corresponding to the target message from the multiple ENIs. In some specific implementation examples, step B can be performed with reference to the following steps B1 to B3:

[0039] Step B1, based on the identification information and status information of the multiple ENIs, determine the number of candidate ENIs in the multiple ENIs that are in an available state. Since the identification information of the ENI can distinguish different ENIs, based on the identification information and status information of the multiple ENIs, the number of candidate ENIs in an available state can be accurately obtained.

[0040] Step B2, performing a hash operation based on the five-tuple information recorded in the flow table corresponding to the message group to obtain a hash value. The five-tuple information mainly includes: source IP address, destination IP address, source port, destination port and protocol type, wherein the five-tuple information corresponding to multiple messages contained in the same message group is the same. The method of performing a hash operation based on the five-tuple information can refer to the relevant technology and will not be repeated here.

[0041] Step B3, based on the hash value and the number of candidate ENIs, determine the target ENI corresponding to the target message from the candidate ENIs. Exemplarily, the remainder of the hash value relative to the number of candidate ENIs can be taken, so as to determine the target ENI based on the remainder. For example, assuming that the candidate ENIs include ENI0 to ENI10, and the remainder is 3, then the target ENI is ENI2, that is, the third ENI arranged from the front to the back. It should be noted that the above is only an example, and in actual applications, other methods can be used to determine the target ENI, which is not limited here.

[0042] In some implementations, the above step of determining the current state of the ENI corresponding to the ENI identification information may be performed with reference to the following steps: based on the ENI identification information and the ENI information table, determining the current state of the ENI corresponding to the ENI identification information. In order to more easily and quickly determine the current state of the ENI corresponding to the ENI identification information, the above step may be performed with reference to the following step (1) or step (2) when specifically implemented:

[0043] Step (1), when it is detected that the ENI information table is updated, the current state of the ENI corresponding to the ENI identification information is queried from the ENI information table. In practical applications, it can be determined whether the ENI information table is updated based on the version number of the ENI information table. Only when it is updated, the current state of the target ENI is determined from the ENI information table.

[0044] Step (2), when it is detected that the ENI information table is not updated, it is determined that the current state of the ENI corresponding to the ENI identification information is an available state. When the ENI information table is not updated, it means that the state of each ENI remains unchanged, so it can be directly confirmed that the state of the target ENI is still an available state.

[0045] The above method helps to more efficiently determine the current state of the ENI corresponding to the ENI identification information.

[0046] In some specific implementations of sending the target message to the message receiving end based on the target ENI, the target message can be first sent to the virtual switch corresponding to the target ENI on the message receiving end side, so that the target message can be sent to the target ENI through the virtual switch on the message receiving end side, so that the target ENI can provide the target message to the ECS on the message receiving end side for processing.

[0047] For easier understanding, please refer to Figure 2 A schematic diagram of a message processing flow based on a cloud network is shown, where virtual switch A is the virtual switch on the message sending end side, virtual switches B to D are the virtual switches on the message receiving end side, and the ENI information table corresponding to the aggregated ENI can refer to Table 1, including members 1 to 3, corresponding to Figure 2 As shown in Table 1, the status of member ENI3 is unavailable, so when selecting a route, you can choose between member ENI1 and member ENI2. Figure 2 In this example, the target ENI is member ENI1.

[0048] It can be understood that when the virtual switch on the message sending side forwards the message, it can select an available member according to the ENI information table. This process is called routing. Routing needs to ensure that the same flow (that is, the message in the same message group) is forwarded to the same member ENI as much as possible to avoid traffic bumps. It can be seen from the foregoing content of the embodiment of the present disclosure that the virtual switch of the embodiment of the present disclosure can use the five-tuple recorded in the flow table corresponding to the message group to obtain the hash value, and then select the next hop according to the number of available members and the member status, that is, select the target ENI. However, when a member of the aggregated ENI fails and the number and status of members change, the existing traffic (that is, the message group that has been forwarded before) will use the same algorithm to select different members after the change. In order to minimize the re-hashing operation after the fault traffic migration, the embodiment of the present disclosure provides the above-mentioned message processing method (also known as a state-based routing algorithm), which will record the ENI identification information of the previous message in the flow table, that is, the MAC address of the member. It is understandable that the MAC address can uniquely identify a worked ENI. By simply recording the MAC address of the member ENI corresponding to the previous message in the flow table, that is, recording the routing result of the previous message, the impact of the fault on other messages can be reduced. Only the messages sent to the unavailable ENI need to be re-routed. Therefore, it can effectively reduce the large-scale traffic migration caused by ENI unavailability and improve the stability of NFV network element services.

[0049] The embodiments of the present disclosure take into account that when a member ENI in an aggregated ENI fails, it takes a certain amount of time for the fault information to take effect globally. During this time period, if the message sender fails to perceive the member failure, the message continues to be sent to the faulty member, which will cause service damage. Therefore, the reliability of relying entirely on the message sender to converge the failure when the NFV network element fails is not strong. That is, assuming that a member ENI in the aggregated ENI fails and is unavailable, and the message sender does not update the ENI information table in time, it still believes that the member ENI is available, so the message will still be forwarded to the faulty member ENI. In other words, the aforementioned phenomenon may occur that the message sender believes that the aforementioned target ENI is available, but in fact the target ENI is unavailable at this time. Therefore, before the ENI information table is globally converged and updated, there is still a problem of unreachable traffic (messages). In order to improve the above problems, the embodiments of the present disclosure further provide a message processing method for a virtual switch that can be applied to the message receiving end side. First, refer to Figure 3 , Figure 3 A schematic diagram of a cloud network-based message processing method provided in an embodiment of the present disclosure is shown in FIG. Figure 3 As shown, the method mainly includes the following steps S302 to S306:

[0050] Step S302: upon receiving a target message from a message sender, obtaining a destination MAC address corresponding to the target message based on the target message.

[0051] Among them, the destination MAC address corresponding to the target message is the MAC address of the target ENI. The MAC address of the target ENI is determined by the virtual switch on the message sending side and recorded in the flow table corresponding to the target message. The virtual switch on the message sending side sends the target message to the virtual switch on the message receiving side based on the target ENI. Specifically, when the target message is the first message in the message group to which it belongs, the target ENI corresponding to the target message is directly selected by the virtual switch on the message sending end side, and the virtual switch on the message sending end side records the identification information (i.e., MAC address) of the target ENI in the flow table corresponding to the message group. When the target message is not the first message in the message group to which it belongs, the target ENI corresponding to the target message is determined by the virtual switch on the message sending end side based on the ENI identification information recorded in the flow table. The virtual switch on the message sending end side will also update the ENI identification information in the flow table based on the identification information of the target ENI. In specific implementation, the virtual switch on the message sending end side will determine whether the current state of the ENI corresponding to the ENI identification information recorded in the flow table is available. If available, the ENI corresponding to the ENI identification information is used as the target ENI corresponding to the target message. If not available, the virtual switch on the message sending end side will select the target ENI corresponding to the target message again, and update its identification information, i.e., MAC address, and record it in the flow table. For details, please refer to the aforementioned related content, which will not be repeated here.

[0052] Step S304, based on the destination MAC address corresponding to the target message, determine the first ENI of the target message to be received. In actual applications, the first ENI may be the target ENI corresponding to the destination MAC address, or may be inconsistent with the target ENI. For example, if the virtual switch on the message receiving end side has learned that the target ENI has failed through health detection or other methods, it can be forwarded to other ENIs, thereby ensuring the reliability of message processing.

[0053] Step S306: Send the target message to the first ENI. The first ENI may provide the target message to its corresponding ECS ​​for processing.

[0054] The above method can obtain the target MAC address corresponding to the target message based on the flow table corresponding to the received target message. Since the destination MAC address corresponding to the target message is the MAC address of the target ENI, the MAC address of the target ENI is determined by the virtual switch on the message sending side and recorded in the flow table corresponding to the target message. The virtual switch on the message sending side sends the target message to the virtual switch on the message receiving side based on the target ENI; it helps to further accurately and reliably determine the first ENI of the target message to be received based on the destination MAC address corresponding to the target message, thereby sending the target message to the first ENI, effectively ensuring the stability of the NFV network element service.

[0055] In some implementations, the step of determining the first ENI of the target message to be received based on the destination MAC address corresponding to the target message may be performed with reference to the following steps a to c:

[0056] Step a: determine the target ENI based on the destination MAC address corresponding to the target message, and obtain the current state of the target ENI.

[0057] Step b: when the target ENI is currently in an available state, the target ENI is used as the first ENI to receive the target message.

[0058] Step c, when the target ENI is currently in an unavailable state, based on the ENI information table corresponding to the aggregate ENI to which the target message can currently be forwarded, determine the substitute ENI for the target message to be received, and use the substitute ENI as the first ENI for the target message to be received; wherein the ENI information table includes identification information, status information and sorting information of multiple ENIs corresponding to the aggregate ENI; wherein the status information is used to indicate whether the ENI is currently available.

[0059] In summary, in some other specific implementations in which the message sending end sends the target message to the message receiving end based on the target ENI, the message sending end may send the target message to the virtual switch corresponding to the target ENI on the message receiving end side, so as to directly send the target message to the target ENI through the virtual switch on the message receiving end side when the target ENI is currently in an available state, or, when the target ENI is currently in an unavailable state, determine a substitute ENI in an available state and send the target message to the substitute ENI.

[0060] In some specific implementation examples, the substitute ENI is the next available ENI in the ENI information table after the target ENI, and / or the substitute ENI is the ENI in the ENI information table that is in the available state and has the same virtual tunnel endpoint VTEP address as the target ENI. That is, the virtual switch on the message receiving end side can directly forward the next available ENI located at the target ENI in the ENI location table as the substitute ENI. In addition, the substitute ENI can also be preferentially selected from the available ENIs with the same VTEP address as the target ENI. The ENIs with the same VTEP address are usually located in the same physical machine or can also be called located in the same virtual switch. That is, the substitute ENI is preferentially selected from the available ENIs located in the same physical machine / same virtual switch as the target ENI, so as to avoid forwarding between different physical machines as much as possible, effectively save resources, and improve message processing efficiency.

[0061] In some implementations, the virtual switch on the message receiving end side determines whether the target ENI is currently in an available state based on a specified ENI table; multiple ENIs in the specified ENI table are all ENIs on the virtual switch side on the message receiving end side in the ENI information table. Specifically, the multiple ENIs in the specified ENI table are all ENIs set at the virtual switch corresponding to the target ENI on the message receiving end side in the ENI information table. The status information of the multiple ENIs in the specified ENI table is dynamically updated based on the result of the ENI periodic health detection of the virtual switch on the message receiving end side. The ENI periodic health detection is an operation in which the virtual switch on the message receiving end side periodically detects whether each of the multiple ENIs in the specified ENI table is in an available state.

[0062] For ease of understanding, the following is a detailed explanation:

[0063] In the disclosed embodiment, the virtual switch on the message receiving end side can perform the following steps: perform health detection on multiple ENIs in the specified ENI table according to a preset time period; wherein the multiple ENIs in the specified ENI table are all ENIs on the virtual switch side located on the message receiving end side in the ENI information table; based on the health detection results of the multiple ENIs, update the status information of the multiple ENIs in the specified ENI table. The health detection mechanism of the message receiving end can reduce the impact of the fault. Specifically, the multiple ENIs in the aforementioned designated ENI table are all ENIs in the ENI information table located on the side of the virtual switch corresponding to the target ENI at the message receiving end. It should be noted that the ENI information table contains information about all ENIs in the aggregated ENI. Assuming that there are 30 ENIs, 1 to 10 ENIs are set on the side of virtual switch 1, 11 to 20 ENIs are set on the side of virtual switch 2, and 21 to 30 ENIs are set on the side of virtual switch 3, then each of the above virtual switches can maintain the status information of the ENI corresponding to itself, and additionally set and maintain its own corresponding designated ENI table, such as the designated ENI table corresponding to virtual switch 1 records the current status of the 1st to 10th ENIs. The virtual switch on the message receiving end side dynamically maintains its own designated ENI table through regular health detection and other methods, and regularly updates the status of the ENIs set by itself. On the basis of the above, when the message receiving end obtains the current status of the target ENI in the above step a, it does not need to rely on the ENI information table of the message sending end, but directly queries the current status of the target ENI from the above designated ENI table. Even if the fault has not converged and the ENI information table has not been updated in time, it can effectively ensure that the message can be sent to the available ENI accurately and reliably. This method can fully ensure the reliability of the current state of the target ENI obtained by the message receiver and ensure the overall reliability of routing.

[0064] In some specific implementation examples, the above step of performing health detection on multiple ENIs in the specified ENI table includes: sending MAC address requests to multiple ENIs in the specified ENI table respectively to obtain response information of multiple ENIs for the MAC address request respectively; obtaining health detection results based on the response information corresponding to each of the multiple ENIs; and the health detection results are used to indicate the ENIs in the multiple ENIs that are in an available state and the ENIs that are in an unavailable state. That is, the virtual switch at the message receiving end provided by the embodiment of the present disclosure can regularly perform health detection on the ENIs in the aggregated ENI, such as sending a MAC address request every 50ms, and the detected ENI needs to respond to the request within a certain time interval. If a certain ENI fails to respond to the request in time for multiple consecutive times (such as 2 times, which can be flexibly set), it can be considered that the ENI has a local fault. Through the above health detection method, the message receiving end does not need to rely on the fault convergence of the message sending end, and can also timely perceive whether the target ENI is truly available, and timely update the specified ENI table, improve the global convergence efficiency of the fault, reduce the duration of the fault impact, and further ensure the service stability of the NFV network element.

[0065] For easier understanding, please refer to Figure 4 A schematic diagram of a message processing flow based on a cloud network is shown in Figure 2 Based on the above, the message receiving end determines that the member ENI1 as the target ENI fails through health detection and other methods, and then selects member ENI2 as the substitute ENI to forward the message. At this time, the virtual switch B can directly forward the message to the virtual switch C, thereby ensuring the reliability of message processing. Through the above method provided by the embodiment of the present disclosure, the message receiving end does not need to rely on the fault convergence of the message sending end, but can actively perform health detection on the ENI and adopt a fault forwarding mechanism to ensure the reliability of message processing.

[0066] Corresponding to the aforementioned message processing method of the virtual switch applied to the message sending end side, the embodiment of the present disclosure further provides a message processing device based on a cloud network, Figure 5 A schematic diagram of the structure of a cloud network-based message processing device provided in an embodiment of the present disclosure. The device can be implemented by software and / or hardware and can generally be integrated in an electronic device, such as Figure 5 As shown, the cloud network-based message processing device includes:

[0067] The state determination module 502 is used to obtain the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs for the current target message to be forwarded, and determine the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI on which the message of the message group depends during transmission;

[0068] A first processing module 504 is configured to use the ENI corresponding to the ENI identification information as the target ENI corresponding to the target message when the current state of the ENI corresponding to the ENI identification information is an available state;

[0069] The second processing module 506 is used to reselect the target ENI corresponding to the target message when the current state of the ENI corresponding to the ENI identification information is unavailable, and update the ENI identification information in the flow table based on the identification information of the target ENI;

[0070] The message sending module 508 is used to send the target message to the message receiving end based on the target ENI.

[0071] The above-mentioned device can additionally record the identification information of the ENI corresponding to the previous message in the flow table, so that the current message to be forwarded can be referenced based on the ENI identification information corresponding to the previous message recorded in the flow table. When the current state of the ENI corresponding to the ENI identification information is an available state, the ENI will continue to be used as the target ENI of the target message to be forwarded. When the current state of the ENI corresponding to the ENI identification information is an unavailable state, the target ENI will be reselected and the ENI identification information in the flow table will be updated. The identification information of the ENI that the messages of the message group rely on during transmission is dynamically maintained through the flow table, which helps to efficiently ensure the consistency of routing selection. Even if the ENI corresponding to the previous message is unavailable due to a fault, the message forwarding can be realized conveniently and reliably, thereby effectively ensuring the stability of the NFV network element service.

[0072] In some implementations, the device further comprises a first message processing module, configured to select a target ENI corresponding to the target message when the target message is the first message of the message group, and record identification information of the target ENI in the flow table of the message group.

[0073] In some implementations, the second processing module 506 is specifically used to: obtain an ENI information table corresponding to the aggregate ENI that can currently forward the target message; wherein the ENI information table contains identification information and status information of multiple ENIs corresponding to the aggregate ENI; wherein the status information is used to indicate whether the ENI is currently available; based on the identification information and status information of the multiple ENIs, and the five-tuple information recorded in the flow table corresponding to the message group, select the target ENI corresponding to the target message from the multiple ENIs.

[0074] In some implementations, the second processing module 506 is specifically used to: determine the number of candidate ENIs in an available state among the multiple ENIs based on the identification information and status information of the multiple ENIs; perform a hash operation based on the five-tuple information recorded in the flow table corresponding to the message group to obtain a hash value; and determine the target ENI corresponding to the target message from the candidate ENIs based on the hash value and the number of the candidate ENIs.

[0075] In some implementations, the status determination module 502 is specifically used to: when the current status of the ENI corresponding to the ENI identification information is an available status, use the ENI corresponding to the ENI identification information as the target ENI corresponding to the target message; when the current status of the ENI corresponding to the ENI identification information is an unavailable status, select the target ENI corresponding to the target message again based on the ENI information table.

[0076] In some implementations, the identification information includes a media access control MAC address, and the destination MAC address corresponding to the target message is the MAC address of the target ENI.

[0077] In some implementations, the message sending module 508 is specifically used to: send the target message to the virtual switch corresponding to the target ENI on the message receiving end side, so as to send the target message to the target ENI currently in an available state through the virtual switch on the message receiving end side.

[0078] In some implementations, the message sending module 508 is specifically used to: send the target message to the virtual switch corresponding to the target ENI on the message receiving end side, so as to directly send the target message to the target ENI through the virtual switch on the message receiving end side when the target ENI is currently in an available state, or, when the target ENI is currently in an unavailable state, determine a substitute ENI in an available state and send the target message to the substitute ENI.

[0079] In some implementations, the virtual switch on the message receiving end side determines whether the target ENI is currently in an available state based on a designated ENI table; the multiple ENIs in the designated ENI table are all ENIs on the virtual switch side on the message receiving end side in the ENI information table, and the status information of the multiple ENIs in the designated ENI table is dynamically updated based on the result of the ENI periodic health detection of the virtual switch on the message receiving end side, and the ENI periodic health detection is an operation in which the virtual switch on the message receiving end side periodically detects whether each of the multiple ENIs in the designated ENI table is in an available state.

[0080] In some implementations, the substitute ENI is the next available ENI in the ENI information table after the target ENI, and / or the substitute ENI is an available ENI in the ENI information table having the same virtual tunnel endpoint VTEP address as the target ENI.

[0081] Corresponding to the aforementioned message processing method of the virtual switch applied to the message receiving end side, the embodiment of the present disclosure further provides a message processing device based on a cloud network, Figure 6 A schematic diagram of the structure of a cloud network-based message processing device provided in an embodiment of the present disclosure. The device can be implemented by software and / or hardware and can generally be integrated in an electronic device, such as Figure 6 As shown, the cloud network-based message processing device includes:

[0082] The message receiving module 602 is used to obtain the destination MAC address corresponding to the target message based on the target message when receiving the target message from the message sending end; wherein the destination MAC address corresponding to the target message is the MAC address of the target ENI, and the MAC address of the target ENI is determined by the virtual switch on the message sending end side and recorded in the flow table corresponding to the target message, and the virtual switch on the message sending end side sends the target message to the virtual switch on the message receiving end side based on the target ENI;

[0083] An ENI determination module 604 is used to determine a first ENI of a target message to be received based on identification information of a destination ENI;

[0084] The message sending module 606 is used to send the target message to the first ENI.

[0085] The above-mentioned device can obtain the target MAC address corresponding to the target message based on the received target message. Since the destination MAC address corresponding to the target message is the MAC address of the target ENI, the MAC address of the target ENI is determined by the virtual switch on the message sending end side and recorded in the flow table corresponding to the target message. The virtual switch on the message sending end side sends the target message to the virtual switch on the message receiving end side based on the target ENI; it helps to further accurately and reliably determine the first ENI of the target message to be received based on the destination MAC address corresponding to the target message, thereby sending the target message to the first ENI, effectively ensuring the stability of the NFV network element service.

[0086] In some implementations, the ENI determination module 604 is specifically used to: determine the target ENI based on the destination MAC address corresponding to the target message, and obtain the current state of the target ENI; when the target ENI is currently in an available state, use the target ENI as the first ENI to receive the target message; when the target ENI is currently in an unavailable state, determine the substitute ENI to receive the target message based on the ENI information table corresponding to the aggregate ENI that can currently forward the target message, and use the substitute ENI as the first ENI to receive the target message; wherein the ENI information table contains identification information, state information and sorting information of multiple ENIs corresponding to the aggregate ENI; wherein the state information is used to indicate whether the ENI is currently available.

[0087] In some implementations, the substitute ENI is the next available ENI in the ENI information table after the target ENI, and / or the substitute ENI is an available ENI in the ENI information table having the same virtual tunnel endpoint VTEP address as the target ENI.

[0088] In some embodiments, the device also includes a health detection module, which is used to perform health detection on multiple ENIs in the specified ENI table according to a preset time period; wherein the multiple ENIs in the specified ENI table are all ENIs on the virtual switch side of the message receiving end side in the ENI information table; based on the health detection results of the multiple ENIs, the status information of the multiple ENIs in the specified ENI table is updated.

[0089] In some embodiments, the health detection module is further used to: send MAC address requests to multiple ENIs in a specified ENI table respectively to obtain response information of the multiple ENIs to the MAC address requests respectively; obtain health detection results based on the response information corresponding to each of the multiple ENIs; the health detection results are used to indicate the ENIs in the multiple ENIs that are in an available state and the ENIs that are in an unavailable state.

[0090] In some implementations, the ENI determination module 604 is specifically configured to query the current state of the target ENI from the specified ENI table.

[0091] The message processing device provided in the embodiments of the present disclosure can execute the message processing method provided in any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of the execution method.

[0092] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the above-described device embodiment can refer to the corresponding process in the method embodiment, and will not be repeated here.

[0093] An embodiment of the present disclosure provides an electronic device, which includes: a storage device on which a computer program is stored; and a processing device for executing the computer program in the storage device to implement the steps of any method in the present disclosure.

[0094] Reference below Figure 7 , which shows a schematic diagram of the structure of an electronic device 700 suitable for implementing the embodiment of the present disclosure. The terminal device in the embodiment of the present disclosure may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle terminals (such as vehicle navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 7 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0095] like Figure 7As shown, the electronic device 700 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the electronic device 700 are also stored. The processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0096] Typically, the following devices may be connected to the I / O interface 705: an input device 706 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 708 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 709. The communication device 709 may allow the electronic device 700 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 7 The electronic device 700 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.

[0097] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device 709, or installed from a storage device 708, or installed from a ROM 702. When the computer program is executed by the processing device 701, the above-mentioned functions defined in the method of the embodiment of the present disclosure are executed.

[0098] In addition to the above-mentioned methods and devices, the embodiments of the present disclosure may also be a computer program product, which includes computer program instructions, which, when executed by a processor, cause the processor to perform the image processing method provided by the embodiments of the present disclosure. The computer program product may be written in any combination of one or more programming languages ​​to write program codes for performing the operations of the embodiments of the present disclosure, the programming languages ​​including object-oriented programming languages ​​such as Java, C++, etc., and also conventional procedural programming languages ​​such as "C" language or similar programming languages. The program code may be executed entirely on a user computing device, partially on a user device, as an independent software package, partially on a user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0099] In addition, the embodiment of the present disclosure may also be a computer-readable storage medium on which computer program instructions are stored. When the computer program instructions are executed by a processor, the processor executes the message processing method provided by the embodiment of the present disclosure.

[0100] The computer readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0101] The embodiments of the present disclosure further provide a computer program product, including a computer program / instruction, which implements the message processing method in the embodiments of the present disclosure when the computer program / instruction is executed by a processor.

[0102] It is understandable that before using the technical solutions disclosed in the various embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.

[0103] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.

[0104] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.

[0105] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet relevant laws and regulations may also be applied to the implementation of the present disclosure.

[0106] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0107] The above description is only a specific embodiment of the present disclosure, so that those skilled in the art can understand or implement the present disclosure. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A message processing method based on a cloud network, characterized in that: include: For the target message to be forwarded currently, obtain the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs, and determine the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI that the message of the message group depends on during transmission; When the current state of the ENI corresponding to the ENI identification information is an available state, the ENI corresponding to the ENI identification information is used as the target ENI corresponding to the target message; When the current state of the ENI corresponding to the ENI identification information is unavailable, reselect the target ENI corresponding to the target message, and update the ENI identification information in the flow table based on the identification information of the target ENI; The target message is sent to a message receiving end based on the target ENI.

2. The method according to claim 1, characterized in that The method further comprises: In the case that the target message is the first message of the message group, a target ENI corresponding to the target message is selected, and identification information of the target ENI is recorded in the flow table of the message group.

3. The method according to claim 1 or 2, characterized in that: The selecting a target ENI corresponding to the target message includes: Obtaining an ENI information table corresponding to the target message; wherein the ENI information table is an information table of an aggregated ENI corresponding to the target message, the aggregated ENI is set at the message receiving end side, and the ENI information table contains identification information and status information of multiple ENIs corresponding to the aggregated ENI; the status information is used to indicate whether the ENI is currently available; Based on the identification information and state information of the multiple ENIs and the five-tuple information recorded in the flow table corresponding to the message group, a target ENI corresponding to the target message is selected from the multiple ENIs.

4. The method according to claim 3, characterized in that The selecting, based on the identification information and state information of the multiple ENIs and the five-tuple information recorded in the flow table corresponding to the message group, the target ENI corresponding to the target message from the multiple ENIs includes: Determine the number of candidate ENIs in an available state among the multiple ENIs based on the identification information and the state information of the multiple ENIs; Perform a hash operation based on the five-tuple information recorded in the flow table corresponding to the message group to obtain a hash value; Based on the hash value and the number of the candidate ENIs, a target ENI corresponding to the target message is determined from the candidate ENIs.

5. The method according to claim 3, characterized in that: The determining the current state of the ENI corresponding to the ENI identification information includes: When it is detected that the ENI information table is updated, querying the current state of the ENI corresponding to the ENI identification information from the ENI information table; In the case where it is detected that the ENI information table is not updated, it is determined that the current state of the ENI corresponding to the ENI identification information is an available state.

6. The method according to claim 1, characterized in that The identification information includes a media access control MAC address, and the destination MAC address corresponding to the target message is the MAC address of the target ENI.

7. The method according to claim 1, characterized in that The sending the target message to the message receiving end based on the target ENI includes: The target message is sent to the virtual switch corresponding to the target ENI on the message receiving end side, so that the target message is sent to the target ENI currently in an available state through the virtual switch on the message receiving end side.

8. The method according to claim 3, characterized in that The sending the target message to the message receiving end based on the target ENI includes: The target message is sent to the virtual switch corresponding to the target ENI on the message receiving end side, so that when the target ENI is currently in an available state, the target message is directly sent to the target ENI through the virtual switch on the message receiving end side, or when the target ENI is currently in an unavailable state, a substitute ENI in an available state is determined and the target message is sent to the substitute ENI.

9. The method according to claim 8, characterized in that The virtual switch at the message receiving end side determines whether the target ENI is currently in an available state based on the specified ENI table; The multiple ENIs in the designated ENI table are all ENIs on the virtual switch side of the message receiving end in the ENI information table. The status information of the multiple ENIs in the designated ENI table is dynamically updated based on the result of the ENI periodic health detection of the virtual switch on the message receiving end. The ENI periodic health detection is an operation in which the virtual switch on the message receiving end periodically detects whether each of the multiple ENIs in the designated ENI table is in an available state.

10. The method according to claim 9, characterized in that The substitute ENI is the next available ENI in the ENI information table after the target ENI, and / or the substitute ENI is the available ENI in the ENI information table having the same virtual tunnel endpoint VTEP address as the target ENI.

11. A message processing device based on a cloud network, characterized in that: include: A state determination module, for obtaining, for a target message to be forwarded currently, the elastic network interface ENI identification information recorded in the flow table of the message group to which the target message belongs, and determining the current state of the ENI corresponding to the ENI identification information; wherein the ENI identification information is the identification information of the ENI corresponding to the previous message of the target message in the message group; the flow table is used to dynamically maintain the identification information of the ENI on which the message of the message group depends during transmission; A first processing module, configured to use the ENI corresponding to the ENI identification information as the target ENI corresponding to the target message when the current state of the ENI corresponding to the ENI identification information is an available state; A second processing module, configured to reselect a target ENI corresponding to the target message when the current state of the ENI corresponding to the ENI identification information is unavailable, and update the ENI identification information in the flow table based on the identification information of the target ENI; The message sending module is used to send the target message to the message receiving end based on the target ENI.

12. An electronic device, characterized in that: The electronic device comprises: a storage device having a computer program stored thereon; A processing device, used to execute the computer program in the storage device to implement the steps of the cloud network-based message processing method described in any one of claims 1-10.

13. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and the computer program is used to execute the cloud network-based message processing method described in any one of claims 1-10 above.

14. A computer program product, characterized in that It includes a computer program, which, when executed by a processor, implements the cloud network-based message processing method described in any one of claims 1-10.

Citation Information

Patent Citations

  • Flow forwarding method

    CN115174674A

  • Configuration method and device of elastic network interface ENI

    CN115686818A