CN115412512B - IPv 6-based multi-cloud cross-network intercommunication method and device - Google Patents

IPv 6-based multi-cloud cross-network intercommunication method and device Download PDF

Info

Publication number
CN115412512B
CN115412512B CN202211341939.5A CN202211341939A CN115412512B CN 115412512 B CN115412512 B CN 115412512B CN 202211341939 A CN202211341939 A CN 202211341939A CN 115412512 B CN115412512 B CN 115412512B
Authority
CN
China
Prior art keywords
flow table
sending
message data
encapsulation
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211341939.5A
Other languages
Chinese (zh)
Other versions
CN115412512A (en
Inventor
席宇龙
龚永生
王龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang 99Cloud Information Service Co Ltd
Original Assignee
Zhejiang 99Cloud Information Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang 99Cloud Information Service Co Ltd filed Critical Zhejiang 99Cloud Information Service Co Ltd
Priority to CN202211341939.5A priority Critical patent/CN115412512B/en
Publication of CN115412512A publication Critical patent/CN115412512A/en
Application granted granted Critical
Publication of CN115412512B publication Critical patent/CN115412512B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags

Abstract

The embodiment of the invention provides a multi-cloud cross-network intercommunication method and a device based on IPv6, wherein the method comprises the following steps: acquiring ovn of a sending node and establishing an openflow flow table when receiving an inter-network communication request; sending the sid flow table to a communication network; matching the message data with a datapath flow table set in the kernel mode, and matching the message data with an openflow flow table set in the user mode when the message data are not matched; based on the matching result, by carrying out IPv6 encapsulation, SRv encapsulation is carried out on the message data and sending and receiving ports are set; and sending the message data to a communication network through a sending port, wherein the communication network is packaged and forwarded based on SRv 6. By adopting the method, the codes of ovs and ovn can be modified, the processing logic of gene is completely replaced by the newly-added extension head function of IPv6, and after the exchange configuration with a communication network, the function of SRv is superposed to realize the forwarding of data in cloud in the communication network.

Description

IPv 6-based multi-cloud cross-network intercommunication method and device
Technical Field
The invention relates to the technical field of multi-cloud cross-network intercommunication, in particular to a multi-cloud cross-network intercommunication method and device based on IPv 6.
Background
In a cloud Network, a virtual machine generally sends data through ovs (an Open vSwitch Open-source virtual switch), and when a node is out, a gene (general Network Virtualization encapsulation) tunnel protocol is used for encapsulation by default (an L2 over L4 message encapsulation mode); when the destination is a virtual machine of other nodes in the local cloud, forwarding the message to a designated node in the cloud according to the outer layer IP, reversely decapsulating the gene header after receiving the packet, and sending the packet to the virtual machine in the node; when multi-cloud cross-network communication is carried out, a gene head of data going out of an outer network is stripped, an outer layer label of a communication network is marked for forwarding, after the data reaches a target cloud, the label of the communication network is stripped, the gene head is packaged to reach a designated node, and after the data reaches the node, the head is stripped to carry out data interaction with a corresponding virtual machine.
In summary, a method for encapsulating data by using a geneve protocol is very tedious in the cloud and between cloud networks, and a technology capable of unifying the cloud and the cloud networks does not exist at present, so that the data of the virtual machine in the cloud can be carried without using a tunnel protocol, and the forwarding can be realized in a communication network by directly using an outer layer message.
Disclosure of Invention
Aiming at the problems in the prior art, the embodiment of the invention provides a multi-cloud cross-network intercommunication method and device based on IPv 6.
The embodiment of the invention provides an IPv 6-based multi-cloud cross-network intercommunication method, which comprises the following steps:
when receiving a cross-network communication request, determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and allowing ovs to establish a corresponding openflow flow table based on the configuration information;
sending sid flow table appointment information to the communication network, and determining a corresponding sid flow table according to the feedback information of the communication network;
acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of the sending node, and matching the message data with an openflow flow table set in a user mode to obtain a corresponding matching result when the message data is not matched with any datapath flow table in the datapath flow table set;
based on the matching result, IPv6 encapsulation is carried out on the message data through the openflow flow table, SRv encapsulation is carried out on the message data through the sid flow table, a corresponding encapsulation protocol is obtained according to the IPv6 encapsulation and SRv encapsulation, and a sending port of the sending node and a receiving port of the receiving node are set based on the encapsulation protocol;
and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on the SRv encapsulation for the receiving node to receive the message data.
In one embodiment, the method further comprises:
extracting match information, a sending port, a receiving port and an action field of the openflow flow table in a user mode;
and establishing a corresponding datapath flow table in a kernel mode based on the match information, the sending port, the receiving port and the action field, calculating a corresponding hash value based on the information of the datapath flow table, and correspondingly storing the hash value and the corresponding datapath flow table.
In one embodiment, the method further comprises:
when sub-packet data corresponding to the message data in the cross-network communication request is received, analyzing a corresponding field according to the message type of the sub-packet data, and calculating to obtain a hash value corresponding to the sub-packet data by combining a predefined hash algorithm;
matching is carried out on the basis of the hash value and a datapath flow table set in a kernel mode of the sending node, IPv6 packaging is carried out on the secondary packet data according to a datapath flow table in a matching result, and SRv packaging is carried out on the secondary packet data through the sid flow table.
In one embodiment, the method further comprises:
matching the message data with any openflow flow table in an openflow flow table set in a user mode, matching the openflow flow table with the message data, performing polling matching on the message data and each flow table rule in each flow table in the openflow flow table, and determining a corresponding action according to a hit result when the matching result is hit.
In one embodiment, the method further comprises:
and (4) encapsulating the message data by using a udp pseudo header and a sid flow table by SRv.
In one embodiment, the method further comprises:
establishing netdev in the user state of the sending node and the receiving node, writing the protocol configuration of the packaging protocol into the netdev, inserting the netdev into a global linked list of a corresponding node, and storing the netdev into a corresponding database;
and establishing a new vport in the kernel states of the sending node and the receiving node, and registering a packet sending function corresponding to the sending node and a packet receiving function corresponding to the receiving node.
In one embodiment, the configuration information includes:
logical switch, logical switch port.
The embodiment of the invention provides a multi-cloud cross-network intercommunication device based on IPv6, which comprises:
the receiving module is used for determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request when the cross-network communication request is received, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and enabling ovs to establish a corresponding openflow table based on the configuration information;
the appointment module is used for sending the appointment information of the sid flow table to the communication network and determining the corresponding sid flow table according to the feedback information of the communication network;
the matching module is used for acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of the sending node, and matching the message data with an openflow flow table set in a user mode to obtain a corresponding matching result when the message data is not matched with any datapath flow table in the datapath flow table set;
the encapsulation module is used for carrying out IPv6 encapsulation on the message data through the openflow flow table based on the matching result, carrying out SRv encapsulation on the message data through the sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of the sending node and a receiving port of the receiving node based on the encapsulation protocol;
and the intercommunication module is used for sending the encapsulated message data to the communication network through a sending port of the sending node, and the communication network forwards the message data to the receiving port based on the SRv encapsulation so as to allow the receiving node to receive the message data.
The embodiment of the invention provides electronic equipment, which comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, wherein the processor executes the program to realize the steps of the IPv 6-based multi-cloud cross-network intercommunication method.
An embodiment of the present invention provides a non-transitory computer readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the steps of the foregoing IPv 6-based multi-cloud cross-network interworking method.
According to the multi-cloud cross-network intercommunication method and device based on IPv6, when a cross-network communication request is received, corresponding sending nodes, receiving nodes and communication networks among the nodes are determined according to the cross-network communication request, configuration information in ovn of the sending nodes is obtained, the configuration information is sent to corresponding ovs, and a corresponding openflow flow table is established by ovs based on the configuration information; acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of a sending node, and matching the message data with an openflow flow table set in a user mode when the message data is not matched with any datapath flow table in the datapath flow table set to obtain a corresponding matching result; based on the matching result, carrying out IPv6 encapsulation on the message data through an openflow flow table, carrying out SRv encapsulation on the message data through an sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of a sending node and a receiving port of a receiving node based on the encapsulation protocol; and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on SRv encapsulation for the receiving node to receive the message data. Therefore, by modifying the codes of ovs and ovn, the processing logic of gene can be completely replaced by the newly-added extension head function of IPv6, and after the configuration is exchanged with a communication network, the SRv function can be superposed to realize the forwarding of data in cloud in the communication network.
Drawings
In order to more clearly illustrate the embodiments or technical solutions of the present invention, the drawings used in the embodiments or technical solutions in the prior art are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a flowchart of an IPv 6-based multi-cloud cross-network interworking method according to an embodiment of the present invention;
fig. 2 is a networking architecture diagram of an IPv 6-based multi-cloud cross-network interworking method according to another embodiment of the present invention;
fig. 3 is a structural diagram of an IPv 6-based multi-cloud cross-network interworking apparatus according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of an electronic device in an embodiment of the invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be obtained by a person skilled in the art without inventive step based on the embodiments of the present invention, are within the scope of protection of the present invention.
Fig. 1 is a flowchart of an IPv 6-based multi-cloud cross-network interworking method according to an embodiment of the present invention, and as shown in fig. 1, an embodiment of the present invention provides an IPv 6-based multi-cloud cross-network interworking method, including:
step S101, when receiving a cross-network communication request, determining a corresponding sending node, a corresponding receiving node and a communication network among the nodes according to the cross-network communication request, acquiring configuration information in ovn of the sending node, sending the configuration information to a corresponding ovs, and allowing ovs to establish a corresponding openflow flow table based on the configuration information.
Specifically, when a cross-Network communication request in a cloud is received, corresponding sending nodes, receiving nodes and a communication Network between the nodes are determined according to the cross-Network communication request, wherein the sending nodes may be nodes in cloud a, the receiving nodes may be nodes in cloud B, and the communication Network is a communication Network outside independent cloud a and cloud B, configuration information in ovn (Open Virtual Network) of the sending nodes is obtained, where the configuration information may be information such as ls (Logical Switch) and lsp (Logical Switch Port) stored in ovn, and the configuration information is sent to corresponding ovs (Open vSwitch Open Virtual Switch), so that ovs establishes a corresponding openflow table based on the configuration information.
And step S102, sending the sid flow table appointment information to the communication network, and determining the corresponding sid flow table according to the feedback information of the communication network.
Specifically, SID appointment information is sent to the communication network, where SID appointment information is used to appoint the sending node and the communication network to use the same SID, and when the feedback information of the communication network to the appointment information is determined, the corresponding SID flow table in the appointment information is determined according to the feedback information of the communication network.
Step S103, obtaining message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of the sending node, and matching the message data with an openflow flow table set in a user mode to obtain a corresponding matching result when the message data is not matched with any datapath flow table in the datapath flow table set.
Specifically, message data corresponding to the cross-network communication request is obtained, wherein the message data is divided into first packet data and second packet data, when the cross-network communication request is received for primary processing, the corresponding message data is the first packet data, the message data is matched with a datapath flow table set in an inner core mode of a sending node, generally, after the sending node receives the message data, the message data is matched with a datapath flow table set in a more convenient inner core mode, but for the first packet data, a corresponding datapath flow table does not exist, the message data is not matched with any datapath flow table in the datapath flow table set, the message data can reach a user mode through an upcall (a mode for forwarding the inner core mode to the user mode), the message data is matched with an openflow set in the user mode, a corresponding matching result is obtained, wherein the matching process can include that the message data is matched with any openflow table set in the user mode, the flow data is matched with openflow set in the user mode, and the flow table data is polled according to the flow table matching rule.
In addition, when the message data of the first packet hits the openflow flow table, the user mode notifies the message to the kernel mode through a netlink (a protocol for communication between the user mode and the kernel mode), the kernel mode mainly extracts several key information, namely, a match field, an access port and an action, to construct a datapath flow table corresponding to the kernel mode, and calculates a hash value to perform storage corresponding to the datapath flow table for subsequent message query.
In addition, after a corresponding datapath flow table is established in the kernel mode, after sub-packet data corresponding to the packet data in the cross-network communication request is received, relevant fields are analyzed according to the packet type, the sub-packet data are stored in a self-defined packet characteristic structure, then a key value is calculated according to a predefined hash algorithm and then the hash value correspondingly stored in the datapath table is matched, if the matching is successful, the sub-packet data are operated according to an action and forwarded, a packet operation is performed according to the action, the sub-packet data are subjected to IPv6 packaging according to the datapath flow table, after the packaging is completed, udp port information can be calculated according to expansion header information and a udp pseudo header is sealed, then the sid list item in the kernel mode is matched, if the matching is successful, an srv6 header and a sid list are sealed, and then the matching of the action is continued until the sub-packet data are forwarded.
And step S104, based on the matching result, carrying out IPv6 encapsulation on the message data through the openflow flow table, carrying out SRv encapsulation on the message data through the sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of the sending node and a receiving port of the receiving node based on the encapsulation protocol.
Specifically, based on the matching result hit, determining a corresponding action according to the hit result, where the action includes IPv6 encapsulation of message data by an openflow flow table, SRv encapsulation of the message data by a sid flow table, and then obtaining a corresponding encapsulation protocol according to IPv6 encapsulation and SRv encapsulation, setting a corresponding virtual port based on the encapsulation protocol, including a sending port of a sending node and a receiving port of a receiving node, specifically including creating a netdev (data structure of a user-mode port) in a user mode after the action is executed, writing an encapsulation protocol configuration into the virtual port, inserting the virtual port into a global linked list, storing the virtual port into a database, and also opening connection between the user mode and a kernel mode, creating a new vport in the kernel mode, registering a kernel packet receiving and sending function, and for a message sent across networks, when the message includes a self-defined IPv6 expansion header, the message is received by the vport.
In addition, SRv encapsulation is carried out on the message data through the sid flow table, SRv encapsulation can be carried out on the message data through a udp pseudo header (User Datagram Protocol) and the sid flow table, and after encapsulation of the udp pseudo header, the message can participate in RSS (received side scaling) calculation through quintuple information when entering a network card of a receiving node, so that the message information is prevented from being hashed badly, and the IPv6 Protocol can be compatible at the same time.
Step S105, sending the encapsulated packet data to the communication network through the sending port of the sending node, where the communication network forwards the packet data to the receiving port based on the SRv encapsulation, so that the receiving node receives the packet data.
Specifically, the encapsulated packet data is sent to the communication network through a sending port of the sending node, SRv is used for indicating a target node of cross-network communication, and the communication network forwards the packet data to the target node, i.e., a receiving port, based on SRv encapsulation, so that the receiving node receives the packet data.
According to the multi-cloud cross-network intercommunication method based on IPv6, when a cross-network communication request is received, corresponding sending nodes, receiving nodes and communication networks among the nodes are determined according to the cross-network communication request, configuration information in ovn of the sending nodes is obtained, and the configuration information is sent to corresponding ovs and is provided for ovs to establish a corresponding openflow flow table based on the configuration information; acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of a sending node, and matching the message data with an openflow flow table set in a user mode when the message data is not matched with any datapath flow table in the datapath flow table set to obtain a corresponding matching result; based on the matching result, carrying out IPv6 encapsulation on the message data through an openflow flow table, carrying out SRv encapsulation on the message data through an sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of a sending node and a receiving port of a receiving node based on the encapsulation protocol; and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on SRv encapsulation for the receiving node to receive the message data. Therefore, by modifying the codes of ovs and ovn, the processing logic of gene can be completely replaced by the newly-added extension head function of IPv6, and after the configuration is exchanged with a communication network, the SRv function can be superposed to realize the forwarding of data in cloud in the communication network.
In another embodiment, a networking architecture diagram corresponding to the IPv 6-based multi-cloud cross-network interworking method may be as shown in fig. 2, and includes cloud 1, cloud 2, and a communication network, when a node of cloud 1 receives a cross-network communication request, configuration information in ovn of node 1 is acquired, the configuration information is sent to ovs corresponding to the configuration information, ovs establishes a corresponding openflow table based on the configuration information, then a sid flow table corresponding to the communication network is agreed, IPv6 encapsulation is performed on packet data according to the openflow table, SRv encapsulation is performed on the packet data through the sid flow table, the encapsulated packet data is sent to the IPv6 communication network through a node port of cloud 1, and is forwarded to a node port of cloud 2 for reception.
In another embodiment, the IPv 6-based multi-cloud cross-Network interworking method can be applied in the direction of an sdn (Software Defined Network) controller, because the traffic of a cloud Network is communicated via a uniform protocol, the sdn controllers of the cloud and the communication Network can be unified, and the routing information is delivered; the controller issues a sid flow table of SRv to a certain node in the cloud, ensures that the flow out of the cloud carries forwarding path information of the controller, issues forwarding rules to the communication network, and ensures that a data packet in the cloud can be forwarded according to the sid flow table of SRv after reaching the communication network until entering a target cloud node; the application direction can greatly reduce the operation and maintenance cost.
In addition, this embodiment can also be applied to sfc (Service Function Chain), where the sdn controller issues sfc control information to the cloud or the communication network (quintuple containing sfc and SRv, sid), the quintuple rule of sfc can be matched in the flow forwarding process, after hit, the sid flow table of sfc is added to the SRv header, and the sid flow table is pointed to, and the destination ip is modified, so that the message information can reach the specified Service.
Fig. 3 is a multi-cloud cross-network interworking apparatus based on IPv6 according to an embodiment of the present invention, including: a receiving module S201, an appointment module S202, a matching module S203, an encapsulation module S204, and an interworking module S205, wherein:
the receiving module S201 is configured to, when receiving a cross-network communication request, determine corresponding sending nodes, receiving nodes, and communication networks between the nodes according to the cross-network communication request, acquire configuration information in ovn of the sending node, send the configuration information to corresponding ovs, and allow ovs to establish a corresponding openflow table based on the configuration information.
And the appointment module S202 is used for sending the appointment information of the sid flow table to the communication network and determining the corresponding sid flow table according to the feedback information of the communication network.
The matching module S203 is configured to acquire the message data corresponding to the cross-network communication request, match the message data with a datapath flow table set in the kernel mode of the sending node, and match the message data with an openflow flow table set in the user mode when the message data is not matched with any datapath flow table in the datapath flow table set, so as to obtain a corresponding matching result.
And the encapsulating module S204 is used for carrying out IPv6 encapsulation on the message data through the openflow flow table based on the matching result, carrying out SRv encapsulation on the message data through the sid flow table, obtaining a corresponding encapsulating protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of the sending node and a receiving port of the receiving node based on the encapsulating protocol.
The interworking module S205 is configured to send the encapsulated packet data to the communication network through the sending port of the sending node, and the communication network forwards the packet data to the receiving port based on the SRv encapsulation, so that the receiving node receives the packet data.
For specific limitations of the IPv 6-based multi-cloud cross-network interworking apparatus, reference may be made to the above limitations of the IPv 6-based multi-cloud cross-network interworking method, which is not described herein again. All or part of the modules in the IPv 6-based multi-cloud cross-network interworking apparatus can be implemented by software, hardware, or a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
Fig. 4 illustrates a physical structure diagram of an electronic device, which may include, as shown in fig. 4: a processor (processor) 301, a memory (memory) 302, a communication Interface (Communications Interface) 303 and a communication bus 304, wherein the processor 301, the memory 302 and the communication Interface 303 complete communication with each other through the communication bus 304. The processor 301 may call logic instructions in the memory 302 to perform the following method: when receiving a cross-network communication request, determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and enabling ovs to establish a corresponding openflow flow table based on the configuration information; acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in an inner core mode of a transmitting node, and matching the message data with an openflow flow table set in a user mode when the message data is not matched with any datapath flow table in the datapath flow table set to obtain a corresponding matching result; based on the matching result, carrying out IPv6 encapsulation on the message data through an openflow flow table, carrying out SRv encapsulation on the message data through an sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of a sending node and a receiving port of a receiving node based on the encapsulation protocol; and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on SRv encapsulation for the receiving node to receive the message data.
Furthermore, the logic instructions in the memory 302 may be implemented in software functional units and stored in a computer readable storage medium when sold or used as a stand-alone product. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk, and various media capable of storing program codes.
In another aspect, an embodiment of the present invention further provides a non-transitory computer-readable storage medium, on which a computer program is stored, where the computer program is implemented to perform the transmission method provided in the foregoing embodiments when executed by a processor, and for example, the method includes: when receiving a cross-network communication request, determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and enabling ovs to establish a corresponding openflow flow table based on the configuration information; acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of a sending node, and matching the message data with an openflow flow table set in a user mode when the message data is not matched with any datapath flow table in the datapath flow table set to obtain a corresponding matching result; based on the matching result, carrying out IPv6 encapsulation on the message data through an openflow flow table, carrying out SRv encapsulation on the message data through an sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of a sending node and a receiving port of a receiving node based on the encapsulation protocol; and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on SRv encapsulation for the receiving node to receive the message data.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. An IPv 6-based multi-cloud cross-network intercommunication method is characterized by comprising the following steps:
when receiving a cross-network communication request, determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and allowing ovs to establish a corresponding openflow flow table based on the configuration information;
sending sid flow table appointment information to the communication network, and determining a corresponding sid flow table according to the feedback information of the communication network;
acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of the sending node, and matching the message data with an openflow flow table set in a user mode to obtain a corresponding matching result when the message data is not matched with any datapath flow table in the datapath flow table set;
based on the matching result, carrying out IPv6 encapsulation on the message data through the openflow flow table, carrying out SRv encapsulation on the message data through the sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of the sending node and a receiving port of the receiving node based on the encapsulation protocol;
and sending the encapsulated message data to the communication network through a sending port of the sending node, wherein the communication network forwards the message data to the receiving port based on the SRv encapsulation for the receiving node to receive the message data.
2. The IPv 6-based multi-cloud cross-network interworking method according to claim 1, wherein after the packet data does not match any datapath flow table in a datapath flow table set, the method further includes:
extracting match information, a sending port, a receiving port and an action field of the openflow flow table in a user mode;
and establishing a corresponding datapath flow table in a kernel mode based on the match information, the sending port, the receiving port and the action field, calculating a corresponding hash value based on the information of the datapath flow table, and correspondingly storing the hash value and the corresponding datapath flow table.
3. The IPv 6-based multi-cloud inter-network interworking method of claim 2, wherein the method further comprises:
when sub-packet data corresponding to the message data in the cross-network communication request is received, analyzing a corresponding field according to the message type of the sub-packet data, and calculating to obtain a hash value corresponding to the sub-packet data by combining a predefined hash algorithm;
matching is carried out on the basis of the hash value and a datapath flow table set in a kernel mode of the sending node, IPv6 packaging is carried out on the sub-packet data according to a datapath flow table in a matching result, and SRv packaging is carried out on the sub-packet data through the sid flow table.
4. The IPv 6-based multi-cloud inter-network interworking method according to claim 1, wherein the matching the packet data with an openflow flow table set in a user state to obtain a corresponding matching result includes:
matching the message data with any openflow flow table in an openflow flow table set in a user mode, matching the openflow flow table with the message data, performing polling matching on the message data and each flow table rule in each flow table in the openflow flow table, and determining a corresponding action according to a hit result when the matching result is hit.
5. The IPv 6-based multi-cloud inter-network interworking method according to claim 1, wherein the encapsulating the packet data by the sid flow table at SRv includes:
and (3) performing SRv encapsulation on the message data through the udp pseudo header and the sid flow table.
6. The IPv 6-based multi-cloud inter-network interworking method according to claim 1, wherein the setting a transmission port of the transmission node and a reception port of the reception node based on an encapsulation protocol includes:
establishing netdev in the user state of the sending node and the receiving node, writing the protocol configuration of the packaging protocol into the netdev, inserting the netdev into a global linked list of a corresponding node, and storing the netdev into a corresponding database;
and establishing a new vport in the kernel states of the sending node and the receiving node, and registering a packet sending function corresponding to the sending node and a packet receiving function corresponding to the receiving node.
7. The IPv 6-based multi-cloud cross-network interworking method according to claim 1, wherein the configuration information includes:
logical switch, logical switch port.
8. An IPv 6-based multi-cloud cross-network interworking apparatus, the apparatus comprising:
the receiving module is used for determining corresponding sending nodes, receiving nodes and communication networks among the nodes according to the cross-network communication request when the cross-network communication request is received, acquiring configuration information in ovn of the sending nodes, sending the configuration information to corresponding ovs, and enabling ovs to establish a corresponding openflow table based on the configuration information;
the appointment module is used for sending the appointment information of the sid flow table to the communication network and determining the corresponding sid flow table according to the feedback information of the communication network;
the matching module is used for acquiring message data corresponding to the cross-network communication request, matching the message data with a datapath flow table set in a kernel mode of the sending node, and matching the message data with an openflow flow table set in a user mode to obtain a corresponding matching result when the message data is not matched with any datapath flow table in the datapath flow table set;
the encapsulation module is used for carrying out IPv6 encapsulation on the message data through the openflow flow table based on the matching result, carrying out SRv encapsulation on the message data through the sid flow table, obtaining a corresponding encapsulation protocol according to the IPv6 encapsulation and SRv encapsulation, and setting a sending port of the sending node and a receiving port of the receiving node based on the encapsulation protocol;
and the intercommunication module is used for sending the encapsulated message data to the communication network through a sending port of the sending node, and the communication network forwards the message data to the receiving port based on the SRv encapsulation so as to allow the receiving node to receive the message data.
9. An electronic device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the IPv 6-based multi-cloud cross-network interworking method according to any one of claims 1 to 7 when executing the program.
10. A non-transitory computer readable storage medium, on which a computer program is stored, wherein the computer program, when executed by a processor, implements the steps of the IPv6 based multi-cloud cross-network interworking method according to any one of claims 1 to 7.
CN202211341939.5A 2022-10-31 2022-10-31 IPv 6-based multi-cloud cross-network intercommunication method and device Active CN115412512B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211341939.5A CN115412512B (en) 2022-10-31 2022-10-31 IPv 6-based multi-cloud cross-network intercommunication method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211341939.5A CN115412512B (en) 2022-10-31 2022-10-31 IPv 6-based multi-cloud cross-network intercommunication method and device

Publications (2)

Publication Number Publication Date
CN115412512A CN115412512A (en) 2022-11-29
CN115412512B true CN115412512B (en) 2023-03-24

Family

ID=84168560

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211341939.5A Active CN115412512B (en) 2022-10-31 2022-10-31 IPv 6-based multi-cloud cross-network intercommunication method and device

Country Status (1)

Country Link
CN (1) CN115412512B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115941598B (en) * 2023-03-09 2023-05-16 珠海星云智联科技有限公司 Flow table semi-unloading method, equipment and medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013059991A1 (en) * 2011-10-25 2013-05-02 华为技术有限公司 Data message processing method and system, message forwarding device
CN108650295A (en) * 2018-03-30 2018-10-12 深圳市风云实业有限公司 Protocol massages cross-layer communication method device and electronic equipment
CN110971540A (en) * 2018-09-28 2020-04-07 中国移动通信有限公司研究院 Data information transmission method and device, switch and controller
WO2021139269A1 (en) * 2020-08-06 2021-07-15 平安科技(深圳)有限公司 Distributed routing method and apparatus based on open vswitch kernel state flow tables in overlay network
WO2021179732A1 (en) * 2020-03-10 2021-09-16 中兴通讯股份有限公司 Message encapsulating method, message forwarding method, notification method, electronic device, and storage medium
JP2021525469A (en) * 2018-05-30 2021-09-24 中▲興▼通▲訊▼股▲ふぇん▼有限公司Zte Corporation Message forwarding method, device and node
CN115001900A (en) * 2022-06-06 2022-09-02 中移(杭州)信息技术有限公司 Message forwarding method, device, equipment and computer readable storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10097372B2 (en) * 2014-01-09 2018-10-09 Ciena Corporation Method for resource optimized network virtualization overlay transport in virtualized data center environments
CN107070691B (en) * 2017-01-12 2020-01-21 阿里巴巴集团控股有限公司 Cross-host communication method and system of Docker container
CN110830352B (en) * 2018-08-07 2022-09-23 中兴通讯股份有限公司 Method and device for realizing VPN cross-domain and boundary node
CN112953831A (en) * 2021-01-22 2021-06-11 新华三大数据技术有限公司 Message forwarding method and device
CN113194033B (en) * 2021-03-29 2022-04-01 新华三大数据技术有限公司 Message forwarding method and device based on SDN (software defined network) segment routing networking and storage medium
CN115174474B (en) * 2022-09-08 2022-12-02 浙江九州云信息科技有限公司 SRv 6-based SFC implementation method and device in private cloud

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013059991A1 (en) * 2011-10-25 2013-05-02 华为技术有限公司 Data message processing method and system, message forwarding device
CN108650295A (en) * 2018-03-30 2018-10-12 深圳市风云实业有限公司 Protocol massages cross-layer communication method device and electronic equipment
JP2021525469A (en) * 2018-05-30 2021-09-24 中▲興▼通▲訊▼股▲ふぇん▼有限公司Zte Corporation Message forwarding method, device and node
CN110971540A (en) * 2018-09-28 2020-04-07 中国移动通信有限公司研究院 Data information transmission method and device, switch and controller
WO2021179732A1 (en) * 2020-03-10 2021-09-16 中兴通讯股份有限公司 Message encapsulating method, message forwarding method, notification method, electronic device, and storage medium
WO2021139269A1 (en) * 2020-08-06 2021-07-15 平安科技(深圳)有限公司 Distributed routing method and apparatus based on open vswitch kernel state flow tables in overlay network
CN115001900A (en) * 2022-06-06 2022-09-02 中移(杭州)信息技术有限公司 Message forwarding method, device, equipment and computer readable storage medium

Also Published As

Publication number Publication date
CN115412512A (en) 2022-11-29

Similar Documents

Publication Publication Date Title
US10756994B2 (en) Switch, controller, system, and link quality detection method
EP3958521A1 (en) Method and apparatus for providing service for service flow
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
US9397901B2 (en) Methods, systems, and computer readable media for classifying application traffic received at a network traffic emulation device that emulates multiple application servers
EP3472987A1 (en) Method for classifying the payload of encrypted traffic flows
EP2984798B1 (en) Identification of paths taken through a network of interconnected devices
EP2773073B1 (en) Entry generation method, message receiving method, and corresponding device and system
EP2544409A1 (en) Generic monitoring packet handling mechanism for OpenFlow 1.1
EP3720075B1 (en) Data transmission method and virtual switch
WO2013057960A1 (en) Control apparatus for forwarding apparatus, control method for forwarding apparatus, communication system, and program
US10205788B2 (en) Run-time actionable information exchange system in a secure environment
CN105743687B (en) Method and device for judging node fault
CN109787823B (en) QoS marking method, device and storage medium
CN110086798B (en) Method and device for communication based on public virtual interface
CN115412512B (en) IPv 6-based multi-cloud cross-network intercommunication method and device
US10182132B2 (en) Method, apparatus and system for communication between OpenFlow device and IP network device
CN107800626A (en) Processing method, device and the equipment of data message
WO2023115367A1 (en) Multi-protocol data transmission method and apparatus, network, and storage medium
CN115174474B (en) SRv 6-based SFC implementation method and device in private cloud
US11855888B2 (en) Packet verification method, device, and system
US10541914B2 (en) Data packet forwarding method and network device
WO2022089169A1 (en) Method and apparatus for sending computing routing information, device, and storage medium
CN111770049B (en) Global cache variable and message information storage method and device
CN108111327B (en) Network operation management maintenance method and device
KR102142708B1 (en) Network system and method for operating thereof

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant