A virtual network interconnection method, device, equipment and storage medium
Patent Information
- Application Number
- CN202311421433.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-30
- Publication Date
- 2026-10-30
- Estimated Expiration
- 2043-10-30
AI Technical Summary
[0035]由此可见,本申请中的控制器首先获取若干异构互联代理上报的虚拟网络的状态信息;所述异构互联代理位于云计算的虚拟网络中,且所述异构互联代理关联有公网;然后基于边界网关协议,并结合所述状态信息向所述异构互联代理下发协议配置信息,以在所述异构互联代理中启用所述边界网关协议;再根据预设隧道配置策略向所述异构互联代理发送隧道配置信息,以便在若干所述异构互联代理之间创建相应的隧道,并基于所述边界网关协议,且通过所述隧道传输各个所述虚拟网络之间的报文,实现所述虚拟网络的互联。这样一来,本申请利用基于软件定义网络技术的控制器,并结合边界网关协议可以实现异构多云间虚拟网络的三层(网络层)互联;并且虚拟网络之间的路由可达性由边界网关协议自动维护,降低了维护复杂度。同时,借助基于软件定义网络技术的控制器,各个云上虚拟网络中的异构互联代理和虚拟网络网关可以实现自动部署,由控制器在线自动下发配置并生效,降低了部署复杂度。
Smart Images

Figure CN117319140B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of network interconnection technology, and in particular to a virtual network interconnection method, apparatus, device, and storage medium. Background Technology
[0002] As one of the foundations of the digital economy, cloud computing services will play an increasingly important role in the digital transformation of enterprises. Currently, the cloud computing landscape is highly competitive and diverse, with public and private clouds (including dedicated clouds and industry clouds) coexisting, and different vendors employing different technical approaches. Different enterprises have varying requirements for cloud computing services due to their strategic needs or specific business requirements. Even within the same enterprise, different business segments may have different requirements for resource control, privacy, and security, leading to varying demands for cloud computing services. This results in enterprises often not choosing a single type of cloud computing service when migrating their operations to the cloud, but rather adopting a multi-faceted approach, such as a combination of public and private clouds, multiple public clouds working together, or a hybrid approach using both public and private clouds.
[0003] Therefore, how to achieve Layer 3 (TCP / IP network layer) interconnection of virtual networks between heterogeneous multi-cloud environments is a problem that needs to be solved in this field. Summary of the Invention
[0004] In view of this, the purpose of this invention is to provide a virtual network interconnection method, apparatus, device, and storage medium, which can realize virtual network interconnection between heterogeneous multi-clouds based on border gateway protocols and software-defined networking technology, reducing the complexity of resource sharing. The specific solution is as follows:
[0005] In a first aspect, this application provides a virtual network interconnection method applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, comprising:
[0006] Obtain status information of virtual networks reported by several heterogeneous interconnection agents; the heterogeneous interconnection agents are located in the virtual network of cloud computing, and the heterogeneous interconnection agents are associated with the public network;
[0007] Based on the border gateway protocol and combined with the status information, protocol configuration information is sent to the heterogeneous interconnection agent to enable the border gateway protocol in the heterogeneous interconnection agent.
[0008] According to the preset tunnel configuration policy, tunnel configuration information is sent to the heterogeneous interconnection agent to create corresponding tunnels between the heterogeneous interconnection agents, and based on the border gateway protocol, the packets between the virtual networks are transmitted through the tunnels to realize the interconnection of the virtual networks.
[0009] Optionally, the step of sending protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in conjunction with the status information includes:
[0010] Based on the state information, a preset number of target agents are determined from the heterogeneous interconnection agents, so that the target agents can act as route reflectors to establish neighbor relationships with other heterogeneous interconnection agents;
[0011] Based on the border gateway protocol and combined with the status information, first configuration information corresponding to the target agent and second configuration information corresponding to other heterogeneous interconnection agents are generated.
[0012] The first configuration information and the second configuration information are sent to the heterogeneous interconnection agent so that the border gateway protocol can be enabled in the heterogeneous interconnection agent based on the first configuration information and the second configuration information and according to the target agent.
[0013] Optionally, before sending protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in conjunction with the status information, the method further includes:
[0014] Based on the status information and by calling the corresponding open interface of the cloud computing, routing information to other virtual networks is added to the public network gateway of the current virtual network, and the next hop is pointed to the internal network IP address of the heterogeneous interconnection proxy of the current virtual network, so as to realize the interconnection of various virtual networks.
[0015] Optionally, the method further includes:
[0016] When any of the target agents is detected to be faulty, a new target agent is determined from other heterogeneous interconnection agents based on the status information currently reported by each heterogeneous interconnection agent. The new target agent is then used as a route reflector to establish neighbor relationships with other heterogeneous interconnection agents, thereby enabling interconnection of various virtual networks.
[0017] Optionally, the transmission of messages between the various virtual networks based on the border gateway protocol and through the tunnel includes:
[0018] The heterogeneous interconnection agents generate local routing tables based on the border gateway protocol and in conjunction with the state information of the corresponding virtual networks, so as to transmit packets among the heterogeneous interconnection agents using the corresponding tunnels according to the local routing tables.
[0019] Secondly, this application provides a virtual network interconnection method applied to heterogeneous interconnection proxies, including:
[0020] Report the current virtual network status information to the controller;
[0021] Receive protocol configuration information sent by the controller based on the border gateway protocol and the status information, and enable the border gateway protocol according to the protocol configuration information;
[0022] The system obtains tunnel configuration information sent by the controller and creates tunnels to other virtual networks based on the tunnel configuration information, so as to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnels based on the border gateway protocol.
[0023] Thirdly, this application provides a virtual network interconnection device applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, comprising:
[0024] The status information acquisition module is used to acquire the status information of the virtual network reported by several heterogeneous interconnection agents; the heterogeneous interconnection agents are located in the virtual network of cloud computing, and the heterogeneous interconnection agents are associated with the public network;
[0025] The protocol configuration information sending module is used to send protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in combination with the status information, so as to enable the border gateway protocol in the heterogeneous interconnection agent;
[0026] The tunnel configuration module is used to send tunnel configuration information to the heterogeneous interconnection agent according to a preset tunnel configuration policy, so as to create corresponding tunnels between several heterogeneous interconnection agents, and to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnels based on the border gateway protocol.
[0027] Fourthly, this application provides a virtual network interconnection device applied to heterogeneous interconnection agents, comprising:
[0028] The status information reporting module is used to report the current status information of the virtual network to the controller;
[0029] The protocol configuration module is used to receive protocol configuration information sent by the controller based on the border gateway protocol and the status information, and to enable the border gateway protocol according to the protocol configuration information;
[0030] The tunnel creation module is used to obtain tunnel configuration information sent by the controller and create tunnels to other virtual networks according to the tunnel configuration information, so as to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnels based on the border gateway protocol.
[0031] Fourthly, this application provides an electronic device, comprising:
[0032] Memory, used to store computer programs;
[0033] A processor for executing the computer program to implement the virtual network interconnection method as described above.
[0034] Fifthly, this application provides a computer-readable storage medium for storing a computer program that, when executed by a processor, implements the virtual network interconnection method described above.
[0035] Therefore, the controller in this application first obtains the status information of virtual networks reported by several heterogeneous interconnect agents. These heterogeneous interconnect agents are located in the virtual networks of cloud computing and are associated with a public network. Then, based on the Border Gateway Protocol (BGP) and combined with the status information, it sends protocol configuration information to the heterogeneous interconnect agents to enable the BGP in the agents. Next, it sends tunnel configuration information to the agents according to a preset tunnel configuration policy to create corresponding tunnels between the agents. Based on the BGP, it transmits messages between the virtual networks through these tunnels, thus achieving interconnection of the virtual networks. In this way, this application utilizes a controller based on software-defined networking (SDN) technology, combined with the BGP, to achieve Layer 3 (network layer) interconnection of virtual networks between heterogeneous multi-cloud environments. Furthermore, the routing reachability between virtual networks is automatically maintained by the BGP, reducing maintenance complexity. Simultaneously, with the help of the SDN-based controller, the heterogeneous interconnect agents and virtual network gateways in each cloud virtual network can be automatically deployed, with the controller automatically issuing and applying configurations online, reducing deployment complexity. Attached Figure Description
[0036] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0037] Figure 1This is a flowchart of a virtual network interconnection method disclosed in this application;
[0038] Figure 2 This is a flowchart of another virtual network interconnection method disclosed in this application;
[0039] Figure 3 This is a schematic diagram of a virtual network interconnection architecture disclosed in this application;
[0040] Figure 4 This is a schematic diagram of the neighbor relationship between heterogeneous interconnected agents disclosed in this application;
[0041] Figure 5 This is a schematic diagram of the structure of a virtual network interconnection device disclosed in this application;
[0042] Figure 6 This is a schematic diagram of another virtual network interconnection device structure disclosed in this application;
[0043] Figure 7 This is a structural diagram of an electronic device disclosed in this application. Detailed Implementation
[0044] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0045] See Figure 1 As shown, this embodiment of the invention discloses a virtual network interconnection method applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, comprising:
[0046] Step S11: Obtain the status information of the virtual network reported by several heterogeneous interconnection agents; the heterogeneous interconnection agents are located in the virtual network of cloud computing, and the heterogeneous interconnection agents are associated with the public network.
[0047] It should be noted that the controller in this application is an SDN controller deployed based on Software Defined Networking (SDN) technology, and this SDN controller is independent of all virtual networks and is deployed in a virtualized mode. Furthermore, a heterogeneous interconnect agent is also deployed in each virtual network of the cloud (computing service), generally in the form of virtual machines. The heterogeneous interconnect agent is associated with the public IP address (Internet Protocol Address) of the corresponding virtual network, used to build cross-cloud interconnect tunnels. In another embodiment, the heterogeneous interconnect agent can also be deployed in the form of cloud physical hosts.
[0048] In this embodiment, when the heterogeneous interconnection agent of the virtual network comes online, it can automatically connect to the SDN controller and report its current status information. Specifically, the heterogeneous interconnection agent can report its current operating status and the information of the virtual network it is in (virtual network IP address prefix, virtual network gateway IP address, etc.) to the pre-configured SDN controller.
[0049] Step S12: Based on the Border Gateway Protocol and combined with the status information, send protocol configuration information to the heterogeneous interconnection agent to enable the Border Gateway Protocol in the heterogeneous interconnection agent.
[0050] Furthermore, after the SDN controller receives the status information reported by each heterogeneous interconnect agent, it can generate corresponding protocol configuration information based on the Border Gateway Protocol (BGP) and the obtained status information, and then send the protocol configuration information to the corresponding heterogeneous interconnect agents. This facilitates the subsequent activation of the Border Gateway Protocol in the heterogeneous interconnect agents of each virtual network.
[0051] In one specific embodiment, the step of sending protocol configuration information to the heterogeneous interconnection agent based on the Border Gateway Protocol (BGP) and in conjunction with the status information may include: determining a preset number of target agents from the heterogeneous interconnection agents according to the status information, so that the target agents can act as route reflectors to establish neighbor relationships with other heterogeneous interconnection agents; generating first configuration information corresponding to the target agents and second configuration information corresponding to other heterogeneous interconnection agents based on the BGP and in conjunction with the status information; and sending the first configuration information and the second configuration information to the heterogeneous interconnection agents so that the BGP can be enabled in the heterogeneous interconnection agents based on the first configuration information and the second configuration information and according to the target agents. Specifically, the controller in this application can select a preset number of target agents as route reflectors according to the status information reported by the heterogeneous interconnection agents, so that these target agents can establish neighbor relationships with other heterogeneous interconnection agents, facilitating the exchange of routing information. It is understood that in multi-area interconnection, the number of BGP sessions can be reduced through route reflectors; otherwise, any two heterogeneous interconnection agents would need to establish a BGP session to exchange routing information. Accordingly, the controller can generate protocol configuration information for each heterogeneous interconnect agent based on the Border Gateway Protocol and state information. Specifically, this includes first configuration information for the target agent and second configuration information for other heterogeneous interconnect agents. The first and second configuration information are then distributed to the corresponding heterogeneous interconnect agents in the respective virtual networks to enable the Border Gateway Protocol in the heterogeneous interconnect agents.
[0052] In another specific embodiment, before issuing protocol configuration information to the heterogeneous interconnection proxy based on the border gateway protocol and in conjunction with the status information, the process may further include: based on the status information, calling the corresponding open interface of the cloud computing service to add routing information to other virtual networks on the public network gateway of the currently corresponding virtual network, and pointing the next hop to the internal network IP address of the heterogeneous interconnection proxy of the currently corresponding virtual network, so as to realize the interconnection of various virtual networks. Specifically, the controller can call the open interface (Open Application Programming Interface, Open API) of various cloud computing services to add routing information to other cloud virtual networks on the public network gateway of each virtual network according to the status information, with the next hop pointing to the local (virtual network) heterogeneous interconnection proxy (internal network IP address).
[0053] In another specific embodiment, the method may further include: when any of the target agents is detected to have failed, a new target agent is determined from other heterogeneous interconnect agents based on the status information currently reported by each of the heterogeneous interconnect agents. This new target agent is then used as a route reflector to establish neighbor relationships with other heterogeneous interconnect agents, thereby enabling interconnection of various virtual networks. Specifically, each heterogeneous interconnect agent can maintain a periodic heartbeat with the controller so that the controller can promptly detect the working status of each heterogeneous interconnect agent. Furthermore, when a target agent acting as a route reflector fails or becomes unreachable, a new heterogeneous interconnect agent can be selected as the BGP route reflector, and configuration information can be reissued to each heterogeneous interconnect agent.
[0054] Step S13: Send tunnel configuration information to the heterogeneous interconnection agent according to the preset tunnel configuration policy, so as to create corresponding tunnels between the heterogeneous interconnection agents, and realize the interconnection of the virtual networks by transmitting messages between the virtual networks through the tunnel based on the border gateway protocol.
[0055] In this application, the controller can send corresponding tunnel configuration information to each heterogeneous interconnection agent according to the preset tunnel configuration policy, so as to create corresponding tunnels between each heterogeneous interconnection agent. This makes it convenient for each heterogeneous interconnection agent to encapsulate the packets to be transmitted through the tunnel according to the routing information in the BGP routing table and send them to the heterogeneous interconnection agent in the target cloud virtual network. After being decapsulated, the packets are sent to the target host, thus realizing the interconnection of virtual networks.
[0056] In one specific embodiment, the transmission of packets between the various virtual networks based on the Border Gateway Protocol and through the tunnel may include: the plurality of heterogeneous interconnection proxies generating local routing tables based on the Border Gateway Protocol and in conjunction with the state information of the corresponding virtual networks, so as to transmit packets between the plurality of heterogeneous interconnection proxies using the corresponding tunnels according to the local routing tables. Specifically, the heterogeneous interconnection proxies can use the routing update mechanism of the BGP protocol to maintain route reachability in real time and generate local routing tables. Subsequently, packets can be transmitted between the various heterogeneous interconnection proxies using relevant tunnels based on the local routing tables to realize the interconnection of various virtual networks.
[0057] Therefore, this application utilizes a controller based on software-defined networking technology, combined with a border gateway protocol, to achieve Layer 3 interconnection of virtual networks across heterogeneous multi-cloud environments. Furthermore, the routing reachability between virtual networks is automatically maintained by the border gateway protocol, reducing maintenance complexity. Simultaneously, with the help of the software-defined networking controller, heterogeneous interconnection agents and virtual network gateways in various cloud virtual networks can be automatically deployed, with the controller automatically issuing and applying configurations online, further reducing deployment complexity.
[0058] See Figure 2 As shown, this embodiment of the invention discloses a virtual network interconnection method applied to heterogeneous interconnection proxies, including:
[0059] Step S21: Report the current status information of the virtual network to the controller.
[0060] In this embodiment, after each heterogeneous interconnect agent comes online and is associated with a public IP address, it automatically connects to the SDN controller and reports the current virtual network status information to the controller. The controller can then establish a mapping relationship between this status information and each heterogeneous interconnect agent.
[0061] Step S21: Receive the protocol configuration information sent by the controller based on the border gateway protocol and the status information, and enable the border gateway protocol according to the protocol configuration information.
[0062] Furthermore, the controller distributes BGP configuration information to each heterogeneous interconnect agent, which may include configuration information for the target agent (route reflector) and configuration information for other heterogeneous interconnect agents. Upon receiving this BGP configuration information, the target agent (as a route reflector) establishes IBGP (Internal Border Gateway Protocol) neighbor relationships with other heterogeneous interconnect agents, and these target agents also establish neighbor relationships with each other, in order to synchronize the routing information of the virtual network among all heterogeneous interconnect agents.
[0063] Step S21: Obtain the tunnel configuration information sent by the controller, and create tunnels to other virtual networks according to the tunnel configuration information, so as to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnel based on the border gateway protocol.
[0064] Correspondingly, each heterogeneous interconnect agent receives tunnel configuration information from the controller, and then establishes a fully connected tunnel (network) between itself and other heterogeneous interconnect agents according to the tunnel configuration information, so as to transmit messages through the tunnel and realize the interconnection of virtual networks.
[0065] Therefore, the heterogeneous interconnection agent in this application can utilize the configuration information issued by the controller based on software-defined networking technology and combine it with the border gateway protocol to realize the three-layer interconnection of virtual networks between heterogeneous multi-clouds; and the routing reachability between virtual networks is automatically maintained by the border gateway protocol, which reduces the maintenance complexity.
[0066] The following embodiments will specifically describe the interconnection process between three virtual networks on the cloud. This application discloses a method for interconnecting virtual networks, including:
[0067] In the embodiments of this application, Figure 3 This diagram illustrates a three-layer interconnection architecture between virtual networks on three clouds. Each cloud hosts a virtual network (VM) or VPC (Virtual Private Cloud), and each VM has a border gateway responsible for forwarding inbound and outbound traffic. User virtual machines are deployed within each VM and access external addresses or provide services through the virtual gateway. A fundamental prerequisite for achieving this three-layer interconnection is that the IP address prefixes of these three VMs must not overlap; otherwise, routing errors will occur, and cross-cloud access will be blocked. Assume that the IP address prefix of the virtual network (VN1) on Cloud1 (cloud computing service) is 192.168.1.0 / 24, and the gateway is 192.168.1.1; the IP address prefix of the virtual network (VN2) on Cloud2 is 172.16.1.0 / 24, and the gateway is 172.16.1.1; and the IP address prefix of the virtual network (VN3) on Cloud3 is 10.0.1.0 / 24, and the gateway is 10.0.1.1. Deploy a Heterogeneous Interconnection Agent (HIA) in each of VN1, VN2, and VN3, denoted as HIA1, HIA2, and HIA3, respectively. Their internal IP addresses are IP-H1-I, IP-H2-I, and IP-H3-I, respectively, and their public IP addresses are IP-H1-P, IP-H2-P, and IP-H3-P, respectively. The gateways for the three virtual networks VN1, VN2, and VN3 are denoted as GW1, GW2, and GW3, respectively.
[0068] Furthermore, after HIA1, HIA2, and HIA3 go online and are associated with public IP addresses, they will automatically connect to the SDN controller and report their own operating status and the virtual network information they are in (including IP address prefixes and gateway addresses, etc.) to the SDN controller. The SDN controller records this information and establishes mapping relationships with each heterogeneous interconnection agent, as shown in Table 1 below:
[0069] Table 1
[0070]
[0071] Accordingly, the SDN controller can issue tunnel creation requests to each heterogeneous interconnect agent, establishing a heterogeneous fully connected Layer 3 tunnel network at each heterogeneous interconnect agent's location, as shown in Table 2 below:
[0072] Table 2
[0073]
[0074] To facilitate differentiation, six different tunnel names are used to identify the six tunnels on the three HIAs. Two tunnels are located on each HIA, and all six tunnels are established on the public IP addresses of the HIAs. The IP address relationships are shown in Table 3 below:
[0075] Table 3
[0076] Tunnel1 IP-H1-P IP-H2-P Tunnel2 IP-H1-P IP-H3-P Tunnel3 IP-H2-P IP-H3-P Tunnel4 IP-H2-P IP-H4-P Tunnel5 IP-H3-P IP-H1-P Tunnel6 IP-H3-P IP-H2-P
[0077] The SDN controller distributes BGP configuration information to each heterogeneous interconnect agent, selecting two HIAs as BGP route reflectors (BGP-RR). All other HIAs establish IBGP neighbor relationships with these two BGP route reflectors, and the two BGP route reflectors also establish IBGP neighbor relationships with each other, thus synchronizing virtual network routing information across all HIAs. Figure 4 The diagram illustrates the neighbor relationships between heterogeneous interconnected proxies. HIA generates a local routing table based on the IP address reachability information of the virtual networks learned through IBGP, and sends packets destined for each virtual network's IP address prefix to the corresponding tunnel, as shown in Table 4 below:
[0078] Table 4
[0079]
[0080] Correspondingly, it is also necessary to distribute routing information to other cloud virtual networks at the gateways of each virtual network, pointing the next hop of packets destined for other cloud virtual networks to the heterogeneous interconnection proxy address in the current virtual network (here, the internal IP address of the heterogeneous interconnection proxy), as shown in Table 5 below. It should be noted that this process can be implemented in two ways: one is for operations personnel to add routes to other cloud virtual network IP address prefixes on the gateways of each cloud virtual network; the other is for the SDN controller to automatically distribute the information by calling the development interfaces of each cloud. Both methods are acceptable, but the second method is recommended as it automates the process.
[0081] Table 5
[0082]
[0083] In this way, the three-layer interconnection of the entire cloud virtual network has been realized. When a virtual machine in VN1 initiates communication with another virtual machine in VN2, the message first arrives at the gateway GW1 of VN1. After GW1 queries its local routing table, it forwards the message to the heterogeneous interconnection agent HIA1 in VN1. After HIA1 queries its local routing table, it sends the message out through the Tunnel1 port. Before sending it out, the Tunnel1 port encapsulates the message and sends it to the heterogeneous interconnection agent HIA2 in VN2 via the Internet. Finally, HIA2 decapsulates the message and forwards it to the target virtual machine. The reverse response process from the virtual machine in VN2 to the virtual machine in VN1 is similar and will not be described in detail.
[0084] Therefore, this application can realize the automated configuration of heterogeneous interconnection agents through the SDN controller and the automated exchange of routing information through the BGP dynamic routing protocol, providing routing information for interconnection reachability; this can realize the interconnection of virtual networks between multiple clouds and reduce the difficulty of deployment and management.
[0085] like Figure 5 As shown, this application provides a virtual network interconnection device applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, comprising:
[0086] The status information acquisition module 11 is used to acquire the status information of the virtual network reported by several heterogeneous interconnection agents; the heterogeneous interconnection agents are located in the virtual network of cloud computing, and the heterogeneous interconnection agents are associated with the public network;
[0087] The protocol configuration information sending module 12 is used to send protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in combination with the status information, so as to enable the border gateway protocol in the heterogeneous interconnection agent.
[0088] The tunnel configuration module 13 is used to send tunnel configuration information to the heterogeneous interconnection agent according to a preset tunnel configuration policy, so as to create corresponding tunnels between several heterogeneous interconnection agents, and to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnels based on the border gateway protocol.
[0089] Therefore, this application can realize the automated configuration of heterogeneous interconnection agents through SDN controller, and realize the interconnection of virtual networks by combining border gateway protocol; thus, the interconnection of virtual networks between multiple clouds can be realized, and the deployment and management difficulty is reduced.
[0090] In one specific embodiment, the protocol configuration information sending module 12 may include:
[0091] The target agent determination unit is used to determine a preset number of target agents from the heterogeneous interconnection agents according to the status information, so that the target agents can establish neighbor relationships with other heterogeneous interconnection agents as route reflectors;
[0092] The configuration information generation unit is used to generate, based on the border gateway protocol and in combination with the status information, first configuration information corresponding to the target agent and second configuration information corresponding to other heterogeneous interconnection agents;
[0093] The configuration information distribution unit is used to distribute the first configuration information and the second configuration information to the heterogeneous interconnection agent, so as to enable the border gateway protocol in the heterogeneous interconnection agent based on the first configuration information and the second configuration information and according to the target agent.
[0094] In one specific embodiment, the device may further include:
[0095] The routing information adding unit is used to add routing information to other virtual networks on the public network gateway of the current corresponding virtual network based on the status information and by calling the corresponding open interface of the cloud computing, and to point the next hop to the internal network IP address of the heterogeneous interconnection proxy of the current corresponding virtual network, so as to realize the interconnection of various virtual networks.
[0096] In one specific embodiment, the device may further include:
[0097] The target agent replacement unit is used to determine a new target agent from other heterogeneous interconnection agents based on the status information currently reported by each heterogeneous interconnection agent when any of the target agents is detected to have failed. The new target agent is then used as a route reflector to establish neighbor relationships with other heterogeneous interconnection agents, thereby enabling interconnection of various virtual networks.
[0098] In one specific embodiment, the tunnel configuration module 13 may include:
[0099] The routing table generation unit is used by the plurality of heterogeneous interconnection agents to generate local routing tables based on the border gateway protocol and in combination with the state information of the corresponding virtual networks, so as to transmit packets among the plurality of heterogeneous interconnection agents using the corresponding tunnels according to the local routing tables.
[0100] like Figure 6 As shown in the figure, this application discloses a virtual network interconnection device applied to a heterogeneous interconnection proxy, comprising:
[0101] Status information reporting module 21 is used to report the current status information of the virtual network to the controller;
[0102] Protocol configuration module 22 is used to receive protocol configuration information sent by the controller based on the border gateway protocol and the status information, and to enable the border gateway protocol according to the protocol configuration information;
[0103] The tunnel creation module 23 is used to obtain the tunnel configuration information sent by the controller and create tunnels to other virtual networks according to the tunnel configuration information, so as to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnel based on the border gateway protocol.
[0104] Therefore, this application can realize the automated configuration of heterogeneous interconnection agents through the SDN controller and realize the automated exchange of routing information through the BGP dynamic routing protocol, providing routing information for interconnection reachability; thus reducing the deployment and management difficulty of virtual network interconnection.
[0105] Furthermore, embodiments of this application also disclose an electronic device, Figure 7 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content of the diagram should not be construed as limiting the scope of this application.
[0106] Figure 7 This is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of this application. Specifically, the electronic device 20 may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 stores a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the virtual network interconnection method disclosed in any of the foregoing embodiments. Furthermore, the electronic device 20 in this embodiment may specifically be an electronic computer.
[0107] In this embodiment, the power supply 23 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.
[0108] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored thereon can include operating system 221, computer program 222, etc., and the storage method can be temporary storage or permanent storage.
[0109] The operating system 221 is used to manage and control the various hardware devices on the electronic device 20 and the computer program 222, which may be Windows Server, Netware, Unix, Linux, etc. In addition to including computer programs capable of performing the virtual network interconnection method executed by the electronic device 20 as disclosed in any of the foregoing embodiments, the computer program 222 may further include computer programs capable of performing other specific tasks.
[0110] Furthermore, this application also discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the aforementioned disclosed virtual network interconnection method. Specific steps of this method can be found in the corresponding content disclosed in the foregoing embodiments, and will not be repeated here.
[0111] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.
[0112] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0113] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0114] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0115] The technical solutions provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for interconnecting virtual networks, characterized in that, Applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, and includes: Obtain status information of virtual networks reported by several heterogeneous interconnection proxies; the heterogeneous interconnection proxies are located in the virtual network of cloud computing and are associated with the public network; the status information includes the IP address prefix of the virtual network and the IP address of the virtual network gateway. Based on the border gateway protocol and combined with the status information, protocol configuration information is sent to the heterogeneous interconnection agent to enable the border gateway protocol in the heterogeneous interconnection agent. According to the preset tunnel configuration policy, tunnel configuration information is sent to the heterogeneous interconnection agent so as to create corresponding tunnels between several heterogeneous interconnection agents, and based on the border gateway protocol, the packets between each virtual network are transmitted through the tunnel to realize the interconnection of the virtual networks; Before sending protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in conjunction with the status information, the method further includes: Based on the status information, and by calling the corresponding open interface of the cloud computing, routing information to other virtual networks is added to the public network gateway of the current virtual network, and the next hop is pointed to the internal network IP address of the heterogeneous interconnection proxy of the current virtual network, so as to realize the interconnection of various virtual networks. The step of sending protocol configuration information to the heterogeneous interconnection proxy based on the border gateway protocol and in conjunction with the status information includes: Based on the state information, a preset number of target agents are determined from the heterogeneous interconnection agents, so that the target agents can act as route reflectors to establish neighbor relationships with other heterogeneous interconnection agents; Based on the border gateway protocol and combined with the status information, first configuration information corresponding to the target agent and second configuration information corresponding to other heterogeneous interconnection agents are generated. The first configuration information and the second configuration information are sent to the heterogeneous interconnection agent so that the border gateway protocol can be enabled in the heterogeneous interconnection agent based on the first configuration information and the second configuration information and according to the target agent.
2. The virtual network interconnection method according to claim 1, characterized in that, Also includes: When any of the target agents is detected to be faulty, a new target agent is determined from other heterogeneous interconnection agents based on the status information currently reported by each heterogeneous interconnection agent. The new target agent is then used as a route reflector to establish neighbor relationships with other heterogeneous interconnection agents, thereby enabling interconnection of various virtual networks.
3. The virtual network interconnection method according to claim 1, characterized in that, The transmission of messages between the various virtual networks based on the border gateway protocol and through the tunnel includes: The heterogeneous interconnection proxies generate local routing tables based on the border gateway protocol and in conjunction with the state information of the corresponding virtual networks, so as to transmit packets among the heterogeneous interconnection proxies using the corresponding tunnels according to the local routing tables.
4. A method for interconnecting virtual networks, characterized in that, Applications to heterogeneous interconnection proxies include: The current status information of the virtual network is reported to the controller; the status information includes the IP address prefix of the virtual network and the IP address of the virtual network gateway, and the controller is used to implement the virtual network interconnection method as described in any one of claims 1 to 3; Receive protocol configuration information sent by the controller based on the border gateway protocol and the status information, and enable the border gateway protocol according to the protocol configuration information; Obtain the tunnel configuration information sent by the controller, and create a tunnel to other virtual networks based on the tunnel configuration information; The system receives packets forwarded by the gateway of the virtual network destined for other virtual networks, and transmits packets between the virtual networks through the tunnel based on the border gateway protocol, thereby realizing the interconnection of the virtual networks.
5. A virtual network interconnection device, characterized in that, Applied to a controller, wherein the controller is a controller deployed based on software-defined networking technology, and includes: The status information acquisition module is used to acquire the status information of virtual networks reported by several heterogeneous interconnection agents; the heterogeneous interconnection agents are located in the virtual network of cloud computing and are associated with the public network; the status information includes the IP address prefix of the virtual network and the IP address of the virtual network gateway. The protocol configuration information sending module is used to send protocol configuration information to the heterogeneous interconnection agent based on the border gateway protocol and in combination with the status information, so as to enable the border gateway protocol in the heterogeneous interconnection agent. The tunnel configuration module is used to send tunnel configuration information to the heterogeneous interconnection agent according to a preset tunnel configuration policy, so as to create corresponding tunnels between several heterogeneous interconnection agents, and to realize the interconnection of the virtual networks by transmitting messages between the various virtual networks through the tunnels based on the border gateway protocol. The device further includes: The routing information adding unit is used to add routing information to other virtual networks on the public network gateway of the current corresponding virtual network based on the status information and by calling the corresponding open interface of the cloud computing, and to point the next hop to the internal network IP address of the heterogeneous interconnection proxy of the current corresponding virtual network, so as to realize the interconnection of various virtual networks. The protocol configuration information sending module includes: The target agent confirmation unit is used to determine a preset number of target agents from the heterogeneous interconnection agents based on the status information, so that the target agents can establish neighbor relationships with other heterogeneous interconnection agents as route reflectors; The configuration information generation unit is used to generate, based on the border gateway protocol and in combination with the status information, first configuration information corresponding to the target agent and second configuration information corresponding to other heterogeneous interconnection agents; The configuration information distribution unit is used to distribute the first configuration information and the second configuration information to the heterogeneous interconnection agent, so as to enable the border gateway protocol in the heterogeneous interconnection agent based on the first configuration information and the second configuration information and according to the target agent.
6. A virtual network interconnection device, characterized in that, Applications to heterogeneous interconnection proxies include: A status information reporting module is used to report the current status information of the virtual network to the controller; the status information includes the IP address prefix of the virtual network and the IP address of the virtual network gateway, and the controller includes the virtual network interconnection device as described in claim 5; The protocol configuration module is used to receive protocol configuration information sent by the controller based on the border gateway protocol and the status information, and to enable the border gateway protocol according to the protocol configuration information. The tunnel creation module is used to obtain tunnel configuration information sent by the controller, and create tunnels to other virtual networks according to the tunnel configuration information. It is also used to receive packets forwarded by the gateway of the virtual network to other virtual networks, and transmit packets between the virtual networks through the tunnel based on the border gateway protocol to realize the interconnection of the virtual networks.
7. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program to implement the virtual network interconnection method as described in any one of claims 1 to 4.
8. A computer-readable storage medium, characterized in that, Used to store computer programs, which, when executed by a processor, implement the virtual network interconnection method as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Heterogeneous cloud network intercommunication system and method
CN111124659A
Two-layer multi-path VPN forwarding method and device based on SDN data center
CN116455703A
