Communication method and device based on cloud technology, and cluster
By introducing a virtual next-hop mechanism into the cloud management platform, the automatic switching of the main and backup elastic network cards in the virtual private cloud is achieved, solving the cumbersome problem of manually updating the routing table in the existing technology, and improving the switching efficiency and reliability.
Patent Information
- Application Number
- CN202311483525.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-06-28
- Filing Date
- 2023-11-07
- Publication Date
- 2024-12-31
AI Technical Summary
In the prior art, when switching the main and backup elastic network card in a virtual private cloud (VPC), tenants need to manually update the routing table, which is cumbersome and time-consuming, especially in a multi-routing table environment.
By introducing a virtual next hop mechanism into the cloud management platform, the main and backup elastic network cards are associated with the virtual next hop, and the router switches the elastic network cards according to the virtual next hop, realizing switching without manually updating the routing table.
The elastic network card switching operation is simplified, the switching efficiency is improved, the tedious process of updating paths one by one is avoided, and normal packet transmission between the VPC and the target network is realized.
Smart Images

Figure CN119232651A_ABST
Abstract
Description
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on June 28, 2023, with application number 202310777705.3 and application name “A method for switching between active and standby virtual elastic auxiliary network cards”, the entire contents of which are incorporated by reference in this application. Technical Field
[0002] The present application relates to the field of cloud computing technology, and in particular to a communication method, device and cluster based on cloud technology. Background Art
[0003] The tenant's virtual private cloud (VPC) provides an isolated and private virtual network environment for virtual machines (VMs), containers, and cloud databases deployed in the cloud. Generally speaking, the tenant's VPC interacts with the tenant's local network through a virtual private network (VPN). In order to ensure that the VPC data can smoothly enter the VPN and then be sent to the local network, a primary elastic network card and a backup elastic network card as a backup of the primary elastic network card are set between the VPC and the VPN. Among them, when the primary elastic network card is normal, the VPC data enters the VPN through the primary elastic network card. When the primary elastic network card is abnormal, the VPC data enters the VPN through the backup elastic network card.
[0004] To switch from the primary ENI to the backup ENI, tenants need to manually update the VPC routing table to switch the network address of the primary ENI in the routing table to the network address of the backup ENI. Since a VPC may have multiple routing tables, when switching from the primary ENI to the backup ENI, tenants need to traverse all routing tables in the VPC to update the routing tables, which is cumbersome and time-consuming. Summary of the invention
[0005] The embodiments of the present application propose a communication method, device and cluster based on cloud technology, which can realize the switching of elastic network cards without the need for tenants to manually update routing tables.
[0006] In a first aspect, a communication method based on cloud technology is provided, which is applied to a cloud management platform, wherein the cloud management platform is used to manage a VPC, a first elastic network card, and a second elastic network card of a tenant set on a cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, the VPC, the first elastic network card, and the second elastic network card are set in at least one server of the at least one cloud data center, the VPC is provided with a cloud instance and a router of the tenant, the cloud instance accesses a target network through the router and a gateway cluster, the gateway cluster includes a primary gateway and a backup gateway in a master-slave relationship with each other, wherein the primary gateway is bound to the first elastic network card, the backup gateway is bound to the second elastic network card, the primary gateway and the backup gateway are set in an internal network of the gateway cluster, the primary gateway accesses the target network when the first elastic network card is working normally, and the backup gateway replaces the primary gateway to access the target network when the first elastic network card is not working normally, the method includes: according to the input of the tenant, setting a virtual next hop to be associated with one of the first elastic network card and the second elastic network card; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card is working normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card is not working normally; instructing the router to forward a message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0007] The first elastic network card and the second elastic network card are elastic network cards that can be associated with the virtual next hop. In other words, the virtual next hop can be associated with the first elastic network card or the second elastic network card. Therefore, the tenant instructs the cloud management platform to associate the virtual next hop with either the first elastic network card or the second elastic network card.
[0008] Specifically, the tenant can instruct the cloud management platform to associate the virtual next hop with the first elastic network card when the first elastic network card is working normally. When the first elastic network card is working normally, the primary gateway bound to the first elastic network card accesses the target network. As a result, the router forwards the message whose destination address is the target network to the first elastic network card (i.e. the elastic network card associated with the virtual next hop), and the message can be sent to the target network through the primary gateway.
[0009] When the first elastic network card does not work properly, the tenant can instruct the cloud management platform to associate the virtual next hop with the second elastic network card. In the case of the first elastic network card not working properly, the backup gateway bound to the second elastic network card accesses the target network. As a result, the router forwards the message with the destination address of the target network to the second elastic network card (i.e. the elastic network card associated with the virtual next hop), and the message can be sent to the target network through the backup gateway.
[0010] In the method provided in the embodiment of the present application, when the first elastic network card does not work properly, the elastic network card associated with the virtual next hop is switched from the first elastic network card to the second elastic network card, so that the router uses the second elastic network card as the next hop to send the message to the target network, thereby ensuring the normal sending of the message. This method realizes the switching of the elastic network card without the need for the tenant to manually update the routing table, especially without the need to update the paths one by one, simplifies the operation of switching the elastic network card, and improves the efficiency of switching the elastic network card.
[0011] In one possible implementation, instructing a router to forward a message whose destination address is a target network to an elastic network card associated with a virtual next hop includes: recording the elastic network card associated with the virtual next hop in an association list; and sending the association list to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
[0012] In this implementation, the cloud management platform can record the elastic network card associated with the virtual next hop through an association list, and then send the association list to the router, so that when the router sends a message whose destination address is the target network, it can obtain the elastic network card associated with the virtual next hop in the association list, thereby enabling the router to obtain the elastic network card associated with the virtual next hop without modifying the routing table.
[0013] In one possible implementation, instructing a router to forward a message whose destination address is a target network to an elastic network card associated with a virtual next hop includes: setting a routing rule for the router, wherein the routing rule includes: forwarding a message whose destination address is a target network to an elastic network card associated with the virtual next hop.
[0014] In this implementation, a routing rule is set for the router, and the router can forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop according to the routing rule. Specifically, the elastic network card associated with the virtual next hop can be added to the routing table used by the router, so that when the elastic network card associated with the virtual next hop changes, the message whose destination address is the target network can be forwarded to the elastic network card associated with the virtual next hop only by relying on the routing table, thereby reducing the transmission delay of the message.
[0015] In one possible implementation, instructing a router to forward a message whose destination address is a target network to an elastic network card associated with a virtual next hop includes: recording the elastic network card associated with the virtual next hop; receiving a network card request sent by the router; responding to the network card request, notifying the router of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0016] In this implementation, the cloud management platform can record the elastic network card associated with the virtual next hop. When the router sends a message whose destination address is the target network, it can obtain the elastic network card associated with the virtual next hop from the cloud management platform by sending a network card request to the cloud management platform, and then forward the message to the elastic network card associated with the virtual next hop. This implementation method enables the router to obtain the elastic network card associated with the virtual next hop without modifying the routing table.
[0017] In a possible implementation, the target network is the Internet or a tenant's local network.
[0018] In one possible implementation, a virtual next hop is associated with one of a first elastic network card and a second elastic network card based on input from a tenant, including: providing an association interface to the tenant, the association interface being used to receive an association operation from the tenant; and in response to the association operation, setting the virtual next hop to be associated with one of the first elastic network card and the second elastic network card.
[0019] In this implementation, an association interface may be provided for the tenant, so that the tenant may issue an association operation through the association interface, which facilitates the tenant's operation and improves the tenant's experience.
[0020] In one possible implementation, the virtual next hop is associated with one of the first elastic network card and the second elastic network card, including: providing a creation interface to the tenant, the creation interface is used to receive the tenant's creation operation, the creation operation is used to create the virtual next hop; in response to the creation operation, creating and recording the virtual next hop.
[0021] In this implementation, a creation interface may be provided for tenants, so that the tenants can independently create a virtual next hop through the creation interface, which facilitates the tenants' operations and improves the tenants' experience.
[0022] In a second aspect, a cloud management platform is provided, which is used to manage the VPC, the first elastic network card, and the second elastic network card of the tenant set on the cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, the VPC, the first elastic network card, and the second elastic network card are set in at least one server in the at least one cloud data center, the VPC is provided with the cloud instance and the router of the tenant, the cloud instance accesses the target network through the router and the gateway cluster, the gateway cluster includes a primary gateway and a backup gateway in a master-backup relationship with each other, wherein the primary gateway is bound to the first elastic network card, the backup gateway is bound to the second elastic network card, and the primary gateway and the backup gateway are set in the gateway cluster. In a network, when the first elastic network card works normally, the main gateway accesses the target network, and when the first elastic network card does not work normally, the backup gateway replaces the main gateway to access the target network. The cloud management platform includes: a setting module, which is used to set the virtual next hop to be associated with one of the first elastic network card and the second elastic network card according to the input of the tenant; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card works normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card does not work normally; an indication module, which is used to instruct the router to forward the message with the destination address being the target network to the elastic network card associated with the virtual next hop.
[0023] In one possible implementation, the indication module is used to: record the elastic network card associated with the virtual next hop in the association list; send the association list to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
[0024] In a possible implementation, the instruction module is used to: set a routing rule for the router, where the routing rule includes: forwarding a message whose destination address is the target network to an elastic network card associated with the virtual next hop.
[0025] In one possible implementation, the indication module is used to: record the elastic network card associated with the virtual next hop; receive the network card request sent by the router; respond to the network card request, and notify the router of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0026] In a possible implementation, the target network is the Internet or a tenant's local network.
[0027] In a possible implementation, the setting module is used to: provide an association interface to the tenant, the association interface is used to receive the tenant's association operation; in response to the association operation, set the virtual next hop to be associated with one of the first elastic network card and the second elastic network card.
[0028] In a possible implementation, the setting module is used to: provide a creation interface to the tenant, the creation interface is used to receive a creation operation from the tenant, the creation operation is used to create a virtual next hop; and in response to the creation operation, create and record the virtual next hop.
[0029] In a third aspect, a computing device cluster is provided, comprising at least one computing device, each computing device comprising a processor and a memory; the processor of at least one computing device is used to execute instructions stored in the memory of at least one computing device, so that the computing device cluster executes the method provided in the first aspect.
[0030] In a fourth aspect, a computer-readable storage medium is provided, comprising computer program instructions. When the computer program instructions are executed by a computing device cluster, the computing device cluster executes the method provided in the first aspect.
[0031] In a fifth aspect, a computer program product comprising instructions is provided. When the instructions are executed by a computer device cluster, the computer device cluster executes the method provided in the first aspect.
[0032] The beneficial effects of the second to fifth aspects can be referred to the above introduction to the beneficial effects of the first aspect, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] Figure 1 A schematic diagram of the interaction between the tenant's VPC and the tenant's local network;
[0034] Figure 2 A schematic diagram of a routing table setting interface;
[0035] Figure 3 A schematic diagram of an EVPN service;
[0036] Figure 4A A schematic diagram of a system architecture provided for an embodiment of the present application;
[0037] Figure 4B A schematic diagram of another system architecture provided for an embodiment of the present application;
[0038] Figure 5 A flow chart of a communication solution provided in an embodiment of the present application;
[0039] Figure 6 A schematic diagram of an EVPN service provided in an embodiment of the present application;
[0040] Figure 7 A schematic diagram of a routing table setting interface provided in an embodiment of the present application;
[0041] Figure 8 A schematic diagram of a communication solution provided in an embodiment of the present application;
[0042] Fig. 9 A schematic diagram of a communication solution provided in an embodiment of the present application;
[0043] Fig.10 A flow chart of a communication solution provided in an embodiment of the present application;
[0044] Fig.11 A schematic diagram of creating a logo provided in an embodiment of the present application;
[0045] Fig.12 A schematic diagram of a routing table setting interface provided in an embodiment of the present application;
[0046] Fig.13 A flow chart of a communication method provided in an embodiment of the present application;
[0047] Fig.14 A schematic diagram of the structure of a cloud management platform is provided for an embodiment of the present application;
[0048] Fig.15 A schematic diagram of the structure of a computing device provided in an embodiment of the present application;
[0049] Fig.16 A schematic diagram of the structure of a computing device cluster provided in an embodiment of the present application;
[0050] Fig.17 A schematic diagram of the structure of a computing device cluster provided in an embodiment of the present application. DETAILED DESCRIPTION
[0051] The following will describe the solution provided by the embodiment of the present application in conjunction with the accompanying drawings. In the embodiment of the present application, "multiple" refers to two or more than two.
[0052] First, some technical terms that may be involved in the embodiments of the present application are introduced.
[0053] Cloud technology refers to a hosting service that unifies hardware, software, network and other resources within a wide area network or local area network to achieve data computing, storage, processing and sharing.
[0054] Cloud infrastructure: facilities that support cloud computing services, including at least one data center, each data center includes multiple servers, and computing instances such as virtual machines (VMs) or containers run on the servers to implement elastic cloud computing services. For example, when the cloud infrastructure includes multiple data centers, the multiple data centers can be distributed in different geographical areas, and the data centers can be remotely connected through a backbone network.
[0055] Cloud management platform: a platform provided by cloud service providers for interacting with users. Users can register accounts on the cloud management platform and rent cloud services with their accounts, thereby becoming tenants of cloud services. The cloud management platform is also used to manage cloud infrastructure and to isolate computing, network, and / or storage resources rented by different tenants based on their accounts.
[0056] Tenant: A user who rents infrastructure. Tenants can register accounts on the cloud management platform operated by the cloud service provider through a browser or other client. The cloud service provider will record the accounts of different tenants, isolate the cloud services of different tenants based on the accounts, and have full access to the resources and cloud services they own.
[0057] Cloud instance: also known as virtual computing device or virtual computing instance, refers to a complete computer system with a complete hardware system that is simulated by software and runs in a completely isolated environment. The hardware system of the computing instance is a virtual hardware system obtained by virtualizing the physical hardware. A complete computing instance has an independent virtual computing system (such as a central processing unit (CPU)) and a virtual disk. The computing instance that needs to communicate with the outside world also has an independent virtual network card. Typical computing instances include virtual machines (VMs) and containers.
[0058] Virtual Private Cloud: VPC for short, is used to build an isolated and private virtual network environment for cloud resources such as cloud servers, cloud containers, and cloud databases.
[0059] Subnet: It is an Internet Protocol (IP) address block in a virtual private cloud. At least one subnet is deployed in a virtual private cloud, and all cloud resources in the virtual private cloud are deployed in the subnet. Each subnet must be associated with a routing table, and a subnet can only be associated with one routing table.
[0060] Virtual nexthop (VN): It is an abstraction of the elastic network card that forwards packets from the tenant's VPC to the target network. Different elastic network cards can be associated. The elastic network associated with the virtual nexthop is used to forward packets from the VPC to the target network.
[0061] Router: A device that connects two or more networks. A router acts as a gateway between networks and decides how to transmit data after reading the address in the data packet. A router can be a hardware device or a virtual device through virtualization technology.
[0062] Routing table: It consists of a series of routing rules and is used to control the outbound traffic direction of the subnet within the virtual private cloud.
[0063] Routing rules: also called routing, routing path or path, refers to the path that a message takes during transmission from the sender to the destination. Routing rules include: destination address, next hop type, next hop address or virtual next hop and other information.
[0064] Elastic network interfaces (ENI): A virtual network interface (VNI) is a virtual network interface (NNI) that tenants can create and configure and attach to their computing instances to implement flexible and highly available network solution configuration.
[0065] Sub elastic network interface (SubENI) is a derivative resource based on elastic network card, which is used to solve the problem that the number of elastic network cards mounted on a single cloud server instance exceeds the upper limit and does not meet the needs of users. Sub elastic network card is a derivative resource based on elastic network card, which is mounted on the elastic network card through the virtual local area network (VLAN) interface. Tenants can create sub elastic network cards to enable a single cloud server instance to mount more network cards, realizing flexible and highly available network solution configuration.
[0066] Virtual Private Network: VPN for short, is used to build a secure, reliable, and cost-effective encrypted connection channel between enterprise users' local networks, data centers, and cloud networks.
[0067] Elastic virtual private network (EVPN): A service that uses computing instances to carry traffic forwarding services between public VPNs and tenant VPCs. The EVPN service uses an auxiliary elastic network card to access the tenant's VPC. The tenant VPC sends the VPN route next hop to the auxiliary elastic network card to connect the tenant's VPC and VPN.
[0068] See also Figure 1 , the router in the VPC can access the VPN through the auxiliary elastic network card provided by the EVPN service, and then communicate with the tenant's local network through the VPN. The EVPN service creates two gateways, each of which is bound to at least one auxiliary elastic network card. When the VPC communicates with the tenant's local network, the auxiliary elastic network card bound to one of the two gateways forwards the message sent by the VPC to the VPN, so that the message is sent to the tenant's local network through the VPN.
[0069] Specifically, one of the two gateways serves as the primary gateway, and the other serves as the backup gateway. The secondary elastic network card bound to the primary gateway can be called the primary secondary elastic network card, and the secondary elastic network card bound to the backup gateway can be called the backup secondary elastic network card. The EVPN service application applies for IP addresses for the primary and secondary elastic network cards and the backup secondary elastic network cards from the IP segment occupied by the VPC. The VPC uses the IP address of the primary and secondary elastic network card as the next hop address and sends the message to the VPN. When the primary and secondary elastic network cards are abnormal, the VPC uses the IP address of the backup secondary elastic network card as the next hop address and sends the message to the VPN. In this way, the high availability of communication between the VPC and the tenant's local network is guaranteed through the primary and backup switching.
[0070] In one approach, see Figure 2 , record the IP addresses of the primary and secondary elastic network cards in the routing table of the VPC, so that the primary and secondary elastic network cards can be used to forward the messages sent by the VPC to the VPN. When the primary and secondary elastic network cards are not working properly, the IP addresses of the primary and secondary elastic networks in the routing table are replaced with the IP addresses of the backup and secondary elastic network cards, so that the messages sent by the VPC can be forwarded to the VPN using the backup and secondary elastic network cards. That is to say, in this solution, when switching the secondary elastic network card, the IP address of the secondary elastic network card recorded in the routing table of the VPC needs to be replaced. In particular, in the related art, the tenant is required to manually modify the IP address of the secondary elastic network card in the routing table.
[0071] See also Figure 3 , a VPC may have multiple routing tables such as routing table 1 and routing table 2. Moreover, each routing table may have multiple paths including secondary elastic network cards. In this way, the IP address of the secondary elastic network card in each path including the secondary elastic network card needs to be updated, which is a heavy task. In addition, tenants may manually add paths in the VPC. EVPN needs to sense whether the path manually added by the tenant includes the secondary elastic network card. If it does, the IP address of the secondary elastic network card in the path also needs to be updated. This makes the work of active-standby switching more arduous.
[0072] The embodiment of the present application provides a communication solution based on cloud technology, which is used to implement the switching of elastic network cards without the need for tenants to manually modify the routing table. In summary, in this method, a virtual next hop is created for the tenant's VPC to send messages to the target network, and the virtual next hop represents the next hop for the VPC router to forward the message to the target network. Among them, the virtual next hop can be associated with the main elastic network card or the backup elastic network card, and the elastic network card associated with the virtual next hop is used as the next hop for forwarding messages to the target network. The virtual next hop can be associated with different elastic network cards, that is, the elastic network card associated with the virtual next hop can be switched. In this way, by switching the elastic network card associated with the virtual next hop, the elastic network card that the router sends the message to the target network can be switched, thereby realizing the normal forwarding of messages with the destination address as the target network without the tenant manually modifying the routing table.
[0073] Next, the communication scheme provided in the embodiment of the present application is introduced.
[0074] Figure 4A and Figure 4B The system architecture provided by the embodiment of the present application is shown. Figure 4A As shown, the system architecture includes a cloud management platform 100, a VPC 200, a target network 300, an elastic network card A1 and an elastic network card A2. Among them, VPC 200, elastic network card A1 and elastic network card A2 are set on the cloud infrastructure. Specifically, the cloud infrastructure includes at least one cloud data center, and VPC 200, elastic network card A1 and elastic network card A2 are set in at least one server of the at least one cloud data center. The cloud management platform 100 can manage the cloud infrastructure. Accordingly, the cloud management platform 100 can manage VPC 200, elastic network card A1 and elastic network card A2. The cloud infrastructure provides cloud resources for the operation of cloud instances, routers 210, and elastic network cards A1 and elastic network cards A2 in VPC 200. Among them, elastic network cards A1 and elastic network cards A2 are virtual network cards obtained by virtualizing cloud resources of the cloud infrastructure, such as auxiliary elastic network cards. Router 210 can be a virtual router or virtual gateway obtained by virtualizing cloud resources of the cloud infrastructure.
[0075] The target network 300 is a network outside the VPC 200. In some embodiments, the VPC 200 may be a VPC of a tenant, and the target network 300 may be a local network of the tenant or the Internet. In some embodiments, the VPC 200 may be a subnet in a VPC of a tenant. The target network 300 may be another subnet in the VPC, or the local network of the tenant, or the Internet.
[0076] Continue reading Figure 4A and Figure 4B , VPC 200 includes a cloud instance and a router. The cloud instance is used to point to related services and access the target network 300 through the router and the gateway cluster. The gateway cluster includes a primary gateway and a backup gateway that are in a master-slave relationship with each other. Exemplarily, the gateway cluster can be implemented as an EVPN, and the primary gateway and the backup gateway can be set in the internal network of the EVPN. The primary gateway is bound to the elastic network card A1, and the backup gateway is bound to the elastic network card A2. When the elastic network card A1 is working normally, the primary gateway accesses the target network 300. When the elastic network card A1 is not working properly, the backup gateway replaces the primary gateway to access the target network 300. The router 210 in the VPC 200 uses one of the elastic network card A1 and the elastic network card A2 as the next hop to send a message to the target network 300. When the elastic network card A1 is working normally, the router 210 uses the elastic network card A1 as the next hop to forward the message whose destination address is the target network 300, thereby sending the message to the target network 300 through the primary gateway. When the elastic network card A1 does not work properly, the router 210 uses the elastic network card A2 as the next hop to forward the message whose destination address is the target network 300, thereby sending the message to the target network 300 through the backup gateway.
[0077] The router 210 can obtain the next hop for sending a message to the target network 300 based on the routing table 220. Specifically, the router 210 can determine one of the elastic network card A1 and the elastic network card A2 as the next hop for sending a message to the target network 300 based on the routing table 220. Then, the message with the destination address of the target network 300 is sent to the next hop, so as to forward the message to the target network 300 through the next hop. The routing table 220 can record at least one path, such as the path for sending a message from the VPC 200 to the target network 300. Each path includes the information of the next hop of the router 210, such as the type, identifier or address of the next hop.
[0078] In the following description, unless otherwise specified, the next hop recorded in the routing table 220 refers to the next hop of the router 210, which is specifically the next hop of the router 210 on the message transmission path whose destination address is the target network 300. The address in the embodiment of the present application may specifically be an IP address.
[0079] The relevant protocol of routing stipulates that when the type of the next hop of a node (such as router 210) on the message transmission path is a gateway, the routing table records the virtual next hop of the next hop. Among them, the virtual next hop here can also be called the identifier of the next hop or the gateway identifier. The node can query the address of the next hop based on the virtual next hop. When the type of the next hop of the node is not a gateway, the routing table records the address of the next hop, so that the node can directly obtain the address of the next hop from the routing table.
[0080] In an embodiment of the present application, the cloud management platform 100 can create a virtual next hop for the router 210 on the message transmission path whose destination address is the target network 300. The virtual next hop can be used to associate an elastic network card. Among them, elastic network card A1 and elastic network card A2 are elastic network cards that can be associated with the virtual next hop. Based on the input of the tenant, the virtual next hop can be set to associate one of the elastic gateway A1 and the elastic network card A2. That is, under the instruction of the tenant, the virtual next hop is associated with elastic network card A1, or elastic network card A2. The elastic network card associated with the virtual next hop is the real next hop of the router 210.
[0081] The cloud management platform 100 can associate one of the elastic network card A1 and the elastic network card A2 with the virtual next hop based on the tenant's input. In the case where the elastic network card A1 works normally, the virtual next hop is associated with the elastic network card A1. In the case where the elastic network card A1 does not work normally, the virtual next hop is associated with the elastic network card A2. Then, the cloud management platform 100 instructs the router 210 to forward the message whose destination address is the target network 300 to the elastic network card associated with the virtual next hop.
[0082] In some embodiments, the cloud management platform 100 may record the virtual next hop as the next hop of the router 210 in the routing table 220. In addition, the cloud management platform 100 records in the routing table 220 that the type of the next hop of the router 210 on the message transmission path whose destination address is the target network 300 is a gateway. Then, the cloud management platform 100 may indicate the elastic network card associated with the virtual next hop to the router 210. In this way, when the router 210 sends or forwards a message whose destination address is the target network 300, the elastic network card as the real next hop is obtained based on the virtual next hop.
[0083] The cloud management platform 100 may record the elastic network card associated with the virtual next hop in the association list. In this way, the router 210 may confirm that the elastic network card associated with the virtual next hop is the next hop based on the virtual next hop.
[0084] In one example of this embodiment, Figure 4AAs shown, the cloud management platform 100 can send the association list of the elastic network card associated with the virtual next hop to the router 210. The router 210 can save the association list. When the router 210 forwards a message whose destination address is the target network 300, it can obtain the elastic network card associated with the virtual next hop based on the routing table 220 and the association list. Among them, the association list records the association relationship between the virtual next hop and the address of the elastic network card A1. When the router 210 forwards a message whose destination address is the target network 300, the virtual next hop is obtained based on the routing table 220. Then, the address associated with the virtual next hop (that is, the address of the elastic network card A1) is queried in the association list, and then the queried address is confirmed as the address of the next hop. In this example, when the elastic network card associated with the virtual next hop is switched, there is no need to update the routing table.
[0085] In another example of this embodiment, Figure 4B As shown, the cloud management platform 100 can save an association list of elastic network cards with virtual next hops. When the router 210 sends or forwards a message with a destination address of the target network 300, it can send a network card request to the cloud management platform 100 based on the virtual next hop. The cloud management platform 100 responds to the network card request and sends the elastic network card associated with the virtual next hop to the router 210 based on the association list.
[0086] In one example of this example, the cloud management platform 100 can record the address of the elastic network card associated with the virtual next hop in the association list, and the network card request is specifically an address request. When forwarding a message whose destination address is the target network 300, the router 210 obtains the virtual next hop based on the routing table 220, and then sends an address request to the cloud management platform 100, and the address request includes the virtual next hop. The cloud management platform 100 can respond to the address request, query the address of the elastic network card associated with the virtual next hop in the association list, and then send the address of the elastic network card associated with the virtual next hop to the router 210. In this way, the router 210 can obtain the address of the elastic network card associated with the virtual next hop.
[0087] In one example of this example, the cloud management platform 100 may also use a database or other method to record the elastic network card associated with the virtual next hop. For example, a database or other method may be used to record the association relationship between the virtual next hop and the elastic network card.
[0088] After obtaining the elastic network card associated with the virtual next hop, the router 210 can send a message with the destination address of the target network 300 to the elastic network card associated with the virtual next hop, and then send the message to the target network 300 through the gateway bound to the elastic network card.
[0089] In some embodiments, the cloud management platform 100 may set a routing rule for the router 210. The routing rule is: send a message whose destination address is the target network 300 to the elastic network card associated with the virtual next hop. Exemplarily, the cloud management platform 100 may send an association list recording the elastic network card associated with the virtual next hop to the router 210. The router 210 may identify the elastic network card associated with the virtual next hop based on the association list. Then, the router 210 may add the elastic network card associated with the virtual next hop to the routing table 220. Among them, the address of the elastic network card associated with the virtual next hop may be added to the routing table 220. Thus, when the router 210 forwards a message whose destination address is the target network 300, it may forward the message to the elastic network card associated with the virtual next hop based on the routing table 220. In this embodiment, by setting the routing rule, when the elastic network card associated with the virtual next hop is switched, the routing table of the router 210 may be automatically updated without the user having to manually update the routing table.
[0090] In some embodiments, the cloud management platform 100 may record the association relationship between the target network 300 and the virtual next hop. After associating the virtual next hop with the elastic network card A1 or the elastic network card A2 based on the tenant's input, the cloud management platform 100 may associate the target network 300 with the elastic network card associated with the virtual next hop based on the association relationship between the target network 300 and the virtual next hop. The cloud management platform 100 may record the association relationship between the target network 300 and the elastic network card associated with the virtual next hop in an association list. The cloud management platform 100 sends the association list to the router 210.
[0091] In an example of this embodiment, when forwarding a message with a destination address of the target network 300, the router 210 obtains the elastic network card associated with the virtual next hop based on the destination address of the message (ie, the target network 300) and the association list, and then forwards the message to the elastic network card.
[0092] In another example of this embodiment, after receiving the association list, the router 210 can add the elastic network card associated with the virtual next hop to the routing table 220 based on the association list. Therefore, when the router 210 forwards a message whose destination address is the target network 300, the router 210 can forward the message to the elastic network card associated with the virtual next hop based on the routing table.
[0093] The above text describes the communication solution provided by the embodiment of the present application in combination with the system architecture. Next, the execution process of the communication solution provided by the embodiment of the present application is introduced.
[0094] In some embodiments, VPC 200 may be a VPC or a subnet in the VPC, and the cloud vendor may provide an EVPN service for VPC 200. VPC 200 may communicate with an external network of VPC 200, such as target network 300, through the EVPN service.
[0095] In this embodiment, if Figure 5 As shown, the cloud management platform 100 can create elastic network card A1 and elastic network card A2 in the EVPN service in step 501. In one example, Figure 6 As shown, two auxiliary elastic network cards can be created, wherein one auxiliary elastic network card can be used as elastic network card A1, and the other auxiliary elastic network card can be used as elastic network card A2. Elastic network card A1 can be bound to the main gateway in the gateway cluster, and elastic network card A2 can be bound to the backup gateway in the gateway cluster. In which, when elastic network card A1 works normally, the main gateway accesses the target network 300. When elastic network card A1 does not work normally, the backup gateway accesses the target network 300.
[0096] In step 502, the cloud management platform 100 may create and record a virtual next hop. The virtual next hop is used to represent the next hop of the router 210 in the message transmission path whose destination address is the target network 300. Exemplarily, the virtual next hop may be implemented as an identifier of the next hop, wherein the identifier may be a sequence of letters and / or numbers, such as "evpn-instance-1". In one example, the virtual next hop may be recorded in the routing table 220, and the type of the next hop may be recorded in the routing table 220 as a gateway.
[0097] In some embodiments, Figure 6 As shown, VPC 200 is a subnet in the tenant's VPC, and the tenant's VPC also includes another subnet, namely VPC 400. VPC 400 has a router 410 and a routing table 420. Among them, routing table 420 records the message transmission path from VPC 400 to target network 300. Among them, router 410 sends the message whose destination address is target network 300 to target network 300 through the path. Exemplarily, the virtual next hop can be used as the virtual next hop of router 420 on the path. In one example, the virtual next hop can be recorded in routing table 420, and the type of the next hop is recorded in routing table 420 as a gateway.
[0098] The virtual next hop is used to associate with an elastic network card. The elastic network card A1 and the elastic network card A2 created in step 501 are elastic network cards that can be associated with the virtual next hop.
[0099] In step 503, the cloud management platform 100 may receive the tenant's input, and in step 504, based on the tenant's input, associate the virtual next hop with one of the elastic network card A1 and the elastic network card A2. The virtual next hop is associated with the elastic network card A1 when the elastic network card A1 is working normally, and the virtual next hop is associated with the elastic network card A2 when the elastic network card A1 is not working properly. That is, if the elastic network card A1 is working normally, the tenant's input is used to instruct the cloud management platform 100 to associate the virtual next hop with the elastic network card A1. If the elastic network card A1 is not working properly, the tenant's input is used to instruct the cloud management platform 100 to associate the virtual next hop with the elastic network card A2.
[0100] In some embodiments, the cloud management platform can provide tenants with Figure 7 The routing setting interface shown. Through this interface, the tenant can initiate an instruction to the cloud management platform 100 to associate the virtual next hop with the elastic network card. For example, the tenant can instruct the cloud management platform 100 to associate the virtual next hop with the elastic network card named "evpn-instance-1".
[0101] Then, in step 505 , the cloud management platform 100 instructs the router 210 to forward the message whose destination address is the target network 300 to the elastic network card associated with the virtual next hop.
[0102] In some embodiments, the cloud management platform 100 may record the elastic network card associated with the virtual next hop in the association list, and send the association list to the router 210. The virtual next hop is recorded in the routing table 220. When forwarding a message whose destination address is the target network 300, the router 210 may obtain the elastic network card associated with the virtual next hop based on the routing table 220 and the association list.
[0103] In some embodiments, the cloud management platform 100 can record the association relationship between the target network 300 and the virtual next hop. After associating the virtual next hop with the elastic network card A1 or the elastic network card A2 based on the tenant's input, the cloud management platform 100 can associate the target network 300 with the elastic network card associated with the virtual next hop based on the association relationship between the target network 300 and the virtual next hop. The cloud management platform 100 can record the association relationship between the target network 300 and the elastic network card associated with the virtual next hop in the association list, and send the association list to the router 210. In an example of this embodiment, when the router 210 forwards a message with the destination address of the target network 300, the elastic network card associated with the virtual next hop is obtained based on the destination address of the message (i.e., the target network 300) and the association list.
[0104] In some embodiments, the cloud management platform 100 can set a routing rule for the router 210. The routing rule is: send a message whose destination address is the target network 300 to the elastic network card associated with the virtual next hop. Exemplarily, after receiving the association list recording the elastic network card associated with the virtual next hop, the router 210 can add the elastic network card associated with the virtual next hop to the routing table 220 based on the association list. Therefore, when the router 210 forwards a message whose destination address is the target network 300, it can obtain the elastic network card associated with the virtual next hop based on the routing table.
[0105] In some embodiments, the cloud management platform 100 may record the elastic network card associated with the virtual next hop in the association list and save the association list. When the router 210 forwards the message whose destination address is the target network 300, it may send a network card request to the cloud management platform 100 based on the virtual next hop. The cloud management platform 100 responds to the network card request and sends the elastic network card associated with the virtual next hop to the router 210 based on the association list.
[0106] After obtaining the elastic network card associated with the virtual next hop, the router 210 may forward the message whose destination address is the target network 300 to the elastic network card associated with the virtual next hop in step 506 .
[0107] See also Figure 8 In the communication scheme provided in the embodiment of the present application, the next hop of VPC 200 points to the virtual next hop, and the virtual next hop is associated with the elastic network card. Then, VPC 200 uses the elastic network card associated with the virtual next hop as the next hop to send a message to the target network 300. When it is necessary to switch the elastic network card of the next hop of router 210, it is only necessary to switch the network card associated with the virtual next hop to achieve the switching of the elastic network card of the next hop of router 210. In this way, there is no need for tenants to manually update the routing table, and there is no need to update the paths one by one, which simplifies the operation of switching the elastic network card and improves the efficiency of switching the elastic network card.
[0108] In some embodiments, a tenant may create a primary elastic network card and a backup elastic network card in the tenant's VPC, so that the VPC or one or more subnets in the VPC can send messages to the external network through one of the primary elastic network card and the backup elastic network card. Among them, VPC 200 can be the tenant's VPC itself or a subnet in the VPC. Elastic network card A1 can be used as the primary elastic network card, and elastic network card A2 can be used as the backup elastic network card. Exemplarily, in one example, Fig. 9As shown, a tenant can create a primary jump server and a backup jump server in a VPC. The primary jump server may include one or more containers connected to an elastic network card A1, so that the elastic network card A1 can communicate with the external network of the VPC 200 through the primary jump server. The backup jump server may include one or more containers connected to an elastic network card A2, so that the elastic network card A2 can communicate with the external network of the VPC 200 through the backup jump server.
[0109] In this embodiment, the communication solution provided in the embodiment of the present application can be used to achieve fast switching between the elastic network card A1 and the elastic network card A2 without updating the routing table.
[0110] See also Fig.10 , through step 1001, the tenant may issue a creation operation to the cloud management platform 100. The cloud management platform 100 may provide the tenant with a creation interface, and the creation interface may receive the creation operation issued by the tenant.
[0111] The cloud management platform 100 may, in step 1002, create and record a virtual next hop in response to the creation operation. Fig.11 As shown, the name of the created virtual next hop is "vn-8722". VPC 200 is used to provide music services, and the next hop of router 210 can also be called the next hop of the music service. In one example, a virtual next hop named "vn-5609" can also be created for a VPC or a subnet within a VPC that provides video services.
[0112] The cloud management platform 100 may receive the tenant's input in step 1003, where the tenant's input is an association operation B1. In step 1004, the cloud management platform 100 responds to the association operation B1 and associates the virtual next hop with the elastic network interface A1.
[0113] Exemplarily, the cloud management platform 100 may provide: Fig.12 The routing setting interface shown in the figure. Through this interface, the tenant can issue an association operation B1 to instruct the cloud management platform 100 to associate the virtual next hop named "vn-8722" with the elastic network card A1 (ie, subeni-1297).
[0114] In an example, Fig.11 As shown, the cloud management platform 100 can also associate the virtual next hop of the video service with the elastic network card A3 (ie, subeni-4573).
[0115] Continue reading Fig.10In step 1005 , the cloud management platform 100 may instruct the router 210 to forward the message whose destination address is the target network 300 to the elastic network card A1 .
[0116] In step 1006, the cloud management platform 100 may receive an association operation B2 issued by the tenant. Exemplarily, the tenant may issue an association operation B2 through a routing setting interface. In step 1007, the cloud management platform 100 responds to the association operation B2 and associates the virtual next hop with the elastic network card A2, that is, switches the network card associated with the virtual next hop from the elastic network card A1 to the elastic network card A2. Then, in step 1008, the cloud management platform 100 may instruct the router 210 to forward the message whose destination address is the target network 300 to the elastic network card A2.
[0117] In the communication scheme provided in the embodiment of the present application, the virtual next hop is used to represent the next hop when the router of the tenant's VPC sends a message to the target network. The virtual next hop is associated with the elastic network card, and the router uses the elastic network card associated with the virtual next hop as the next hop to send the message to the target network. In this way, the switching of the elastic network card as the next hop can be achieved by simply switching the elastic network card associated with the virtual next hop, without the tenant receiving an updated routing table, and without updating the paths one by one, which simplifies the operation of switching the elastic network card and improves the efficiency of switching the elastic network card.
[0118] Based on the communication scheme described above, an embodiment of the present application provides a communication method based on cloud technology. The method is applied to a cloud management platform, and the cloud management platform is used to manage the VPC, the first elastic network card and the second elastic network card of the tenant set on the cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, and the VPC, the first elastic network card and the second elastic network card are set in at least one server of the at least one cloud data center, and the cloud instance and the router of the tenant are set in the VPC, and the cloud instance accesses the target network through the router and the gateway cluster, and the gateway cluster includes a primary gateway and a backup gateway in a master-slave relationship with each other, wherein the primary gateway is bound to the first elastic network card, and the backup gateway is bound to the second elastic network card, and the primary gateway and the backup gateway are set in the internal network of the gateway cluster, and the primary gateway accesses the target network when the first elastic network card is working normally, and the backup gateway replaces the primary gateway to access the target network when the first elastic network card is not working normally. Referring to 13, the method includes the following steps:
[0119] Step 1301: according to the tenant's input, set a virtual next hop to be associated with one of the first elastic network card and the second elastic network card; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card is working normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card is not working properly. Figure 5 The introduction and implementation of step 503 and step 504 in Fig.10 The introduction and implementation of steps 1003, 1004, 1006 and 1007.
[0120] Step 1302, instruct the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop. Figure 5 The introduction of step 505 in Fig.10 The introduction and implementation of steps 1005 and 1008.
[0121] In some embodiments, the instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: recording the elastic network card associated with the virtual next hop in an association list; sending the association list to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
[0122] In some embodiments, instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: setting a routing rule for the router, and the routing rule includes: forwarding the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0123] In some embodiments, the instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: recording the elastic network card associated with the virtual next hop; receiving a network card request sent by the router; and responding to the network card request, notifying the router of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0124] In some embodiments, the target network is the Internet or a local network of the tenant.
[0125] In some embodiments, the setting of associating the virtual next hop with one of the first elastic network card and the second elastic network card according to the input of the tenant includes: providing an association interface to the tenant, the association interface is used to receive the tenant's association operation; in response to the association operation, setting the virtual next hop to associate with one of the first elastic network card and the second elastic network card. For details, please refer to Fig.10 The introduction and implementation of steps 1003, 1004, 1006 and 1007.
[0126] In some embodiments, the virtual next hop is associated with one of the first elastic network card and the second elastic network card, including: providing a creation interface to the tenant, the creation interface is used to receive the tenant's creation operation, the creation operation is used to create the virtual next hop; in response to the creation operation, creating and recording the virtual next hop. For details, please refer to Fig.10 The introduction and implementation of step 1001 and step 1002.
[0127] In the method provided in the embodiment of the present application, when the first elastic network card does not work properly, the elastic network card associated with the virtual next hop is switched from the first elastic network card to the second elastic network card, so that the router uses the second elastic network card as the next hop to send the message to the target network, thereby ensuring the normal sending of the message. This method can achieve the switching of elastic network cards without the need for tenants to manually update the routing table, especially without the need to update the paths one by one, simplify the operation of switching elastic network cards, and improve the efficiency of switching elastic network cards.
[0128] The embodiment of the present application also provides a cloud management platform 1400. The cloud management platform 1400 is used to manage the VPC, the first elastic network card, and the second elastic network card of the tenant set on the cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, and the VPC, the first elastic network card, and the second elastic network card are set in at least one server of the at least one cloud data center. The VPC is provided with the cloud instance and the router of the tenant, and the cloud instance accesses the target network through the router and the gateway cluster. The internal network of the gateway cluster includes a primary gateway and a backup gateway in a master-backup relationship with each other, wherein the primary gateway is bound to the first elastic network card, and the backup gateway is bound to the second elastic network card. When the first elastic network card is working normally, the primary gateway accesses the target network. When the first elastic network card is not working normally, the backup gateway replaces the primary gateway to access the target network. Fig.14 As shown, the cloud management platform 1400 includes:
[0129] A setting module 1410 is used to set a virtual next hop to be associated with one of the first elastic network card and the second elastic network card according to the input of the tenant; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card works normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card does not work normally;
[0130] The instruction module 1420 is used to instruct the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0131] In some embodiments, the indication module 1420 is used to: record the elastic network card associated with the virtual next hop in an association list; send the association list to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
[0132] In some embodiments, the indication module 1420 is used to: set a routing rule for the router, and the routing rule includes: forwarding a message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0133] In some embodiments, the indication module 1420 is used to: record the elastic network card associated with the virtual next hop; receive the network card request sent by the router; respond to the network card request, and notify the router of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
[0134] In some embodiments, the target network is the Internet or a local network of the tenant.
[0135] In some embodiments, the setting module 1410 is used to: provide an association interface to the tenant, the association interface is used to receive the tenant's association operation; in response to the association operation, set the virtual next hop to be associated with one of the first elastic network card and the second elastic network card.
[0136] In some embodiments, the setting module 1410 is used to: provide a creation interface to the tenant, the creation interface is used to receive the tenant's creation operation, the creation operation is used to create the virtual next hop; in response to the creation operation, create and record the virtual next hop.
[0137] Among them, the setting module 1410 and the indication module 1420 can be implemented by software or by hardware. Exemplarily, the following takes the setting module 1410 as an example to introduce the implementation of the setting module 1410. Similarly, the implementation of the indication module 1420 can refer to the implementation of the setting module 1410.
[0138] As an example of a software functional unit, the setting module 1410 may include code running on a computing instance. Among them, the computing instance may include at least one of a physical host (computing device), a virtual machine, and a container. Further, the above-mentioned computing instance may be one or more. For example, the setting module 1410 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed in the same region (region) or in different regions. Furthermore, the multiple hosts / virtual machines / containers used to run the code may be distributed in the same availability zone (AZ) or in different AZs, each AZ including a data center or multiple data centers with similar geographical locations. Among them, usually a region may include multiple AZs.
[0139] Similarly, multiple hosts / virtual machines / containers used to run the code can be distributed in the same VPC or in multiple VPCs. Usually, a VPC is set up in a region. For cross-region communication between two VPCs in the same region and between VPCs in different regions, a communication gateway needs to be set up in each VPC to achieve interconnection between VPCs through the communication gateway.
[0140] As an example of a hardware functional unit, the setting module 1410 may include at least one computing device, such as a server, etc. Alternatively, the setting module 1410 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL) or any combination thereof.
[0141] The multiple computing devices included in the setting module 1410 can be distributed in the same region or in different regions. The multiple computing devices included in the setting module 1410 can be distributed in the same AZ or in different AZs. Similarly, the multiple computing devices included in the setting module 1410 can be distributed in the same VPC or in multiple VPCs. The multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0142] It should be noted that, in other embodiments, the setting module 1410 may be used to execute Fig.13 In any step of the method shown, the instruction module 1420 can be used to perform Fig.13 The steps that the setting module 1410 and the instruction module 1420 are responsible for implementing can be specified as needed, and the setting module 1410 and the instruction module 1420 are respectively implemented Fig.13 The different steps in the method shown implement the full functionality of the cloud management platform 1400 .
[0143] The present application also provides a computing device 1500. Fig.15 As shown, computing device 1500 includes: bus 1502, processor 1504, memory 1506 and communication interface 1508. Processor 1504, memory 1506 and communication interface 1508 communicate through bus 1502. Computing device 1500 can be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in computing device 1500.
[0144] The bus 1502 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.15 The bus 1502 may include a path for transmitting information between various components of the computing device 1500 (eg, the memory 1506, the processor 1504, and the communication interface 1508).
[0145] The processor 1504 may include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0146] The memory 1506 may include a volatile memory, such as a random access memory (RAM). The memory 1506 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid state drive (SSD).
[0147] The memory 1506 stores executable program codes, and the processor 1504 executes the executable program codes to respectively implement the functions of the aforementioned setting module 1410 and the indication module 1420, thereby implementing Fig.13 That is, the memory 1506 stores the method for executing Fig.13 Instructions for the method shown.
[0148] The communication interface 1508 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 1500 and other devices or communication networks.
[0149] The embodiment of the present application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device such as a desktop computer, a laptop computer, or a smart phone.
[0150] like Fig.16 As shown, the computing device cluster includes at least one computing device 1500. The memory 1506 in one or more computing devices 1500 in the computing device cluster may store the same Fig.13 Instructions for the method shown.
[0151] In some possible implementations, the memory 1506 of one or more computing devices 1500 in the computing device cluster may also store a program for executing Fig.13In other words, the combination of one or more computing devices 1500 can jointly execute instructions for performing Fig.13 Instructions for the method shown.
[0152] It should be noted that the memory 1506 in different computing devices 1500 in the computing device cluster may store different instructions, which are respectively used to execute part of the functions of the cloud management platform 1500. That is, the instructions stored in the memory 1506 in different computing devices 1500 may implement the functions of one or more modules in the setting module 1410 and the indication module 1420.
[0153] In some possible implementations, one or more computing devices in the computing device cluster may be connected via a network, which may be a wide area network or a local area network. Fig.17 A possible implementation is shown. Fig.17 As shown, two computing devices 1500A and 1500B are connected via a network. Specifically, the network is connected via a communication interface in each computing device. In this type of possible implementation, the memory 1506 in the computing device 1500A stores instructions for executing the functions of the setting module 1410. At the same time, the memory 1506 in the computing device 1500B stores instructions for executing the functions of the indication module 1420.
[0154] It should be understood that Fig.17 The functionality of the computing device 1500A shown in FIG. 1 may also be implemented by multiple computing devices 1500. Similarly, the functionality of the computing device 1500B may also be implemented by multiple computing devices 1500.
[0155] The present application embodiment also provides another computing device cluster. The connection relationship between the computing devices in the computing device cluster can be similar to that of Fig.16 and Fig.17 The difference is that the memory 1506 in one or more computing devices 1500 in the computing device cluster may store the same memory for executing Fig.13 Instructions for the method shown.
[0156] In some possible implementations, the memory 1506 of one or more computing devices 1500 in the computing device cluster may also store a program for executing Fig.13 In other words, the combination of one or more computing devices 1500 can jointly execute instructions for performing Fig.13 Instructions for the method shown.
[0157] The present application also provides a computer program product including instructions. The computer program product may be software or a program product including instructions that can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, the at least one computing device executes Fig.13 The method shown.
[0158] The present application also provides a computer-readable storage medium. The computer-readable storage medium may be any available medium that can be stored by a computing device or a host migration device such as a data center that includes one or more available media. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk). The computer-readable storage medium includes instructions that instruct the computing device to execute Fig.13 The method shown.
[0159] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of the present application.
Claims
1. A communication method based on cloud technology, characterized in that: The method is applied to a cloud management platform, wherein the cloud management platform is used to manage a VPC, a first elastic network card, and a second elastic network card of a tenant set on a cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, the VPC, the first elastic network card, and the second elastic network card are set in at least one server of the at least one cloud data center, the VPC is provided with a cloud instance and a router of the tenant, the cloud instance accesses a target network through the router and a gateway cluster, the gateway cluster includes a primary gateway and a backup gateway in a master-slave relationship with each other, wherein the primary gateway is bound to the first elastic network card, the backup gateway is bound to the second elastic network card, the primary gateway and the backup gateway are set in an internal network of the gateway cluster, the primary gateway accesses the target network when the first elastic network card is working normally, and the backup gateway replaces the primary gateway to access the target network when the first elastic network card is not working normally, and the method includes: According to the input of the tenant, a virtual next hop is associated with one of the first elastic network card and the second elastic network card; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card works normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card does not work normally; The router is instructed to forward a message whose destination address is the target network to the elastic network card associated with the virtual next hop.
2. The method according to claim 1, characterized in that The instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: In the association list, record the elastic network card associated with the virtual next hop; The association list is sent to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
3. The method according to claim 1, characterized in that: The instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: A routing rule is set for the router, wherein the routing rule includes: forwarding a message whose destination address is the target network to an elastic network card associated with the virtual next hop.
4. The method according to claim 1, characterized in that The instructing the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop includes: Record the elastic network card associated with the virtual next hop; Receiving a network card request sent by the router; In response to the network card request, the router is notified of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
5. The method according to any one of claims 1 to 4, characterized in that: The target network is the Internet or the tenant's local network.
6. The method according to any one of claims 1 to 5, characterized in that: The step of setting the virtual next hop to be associated with one of the first elastic network card and the second elastic network card according to the input of the tenant includes: Providing an association interface to the tenant, wherein the association interface is used to receive an association operation of the tenant; In response to the association operation, a virtual next hop is associated with one of the first elastic network interface card and the second elastic network interface card.
7. The method according to any one of claims 1 to 6, characterized in that The virtual next hop is associated with one of the first elastic network card and the second elastic network card, including: Providing a creation interface to the tenant, wherein the creation interface is used to receive a creation operation of the tenant, and the creation operation is used to create the virtual next hop; In response to the creation operation, the virtual next hop is created and recorded.
8. A cloud management platform, characterized in that: The cloud management platform is used to manage the VPC, the first elastic network card and the second elastic network card of the tenant set on the cloud infrastructure, wherein the cloud infrastructure includes at least one cloud data center, the VPC, the first elastic network card and the second elastic network card are set in at least one server of the at least one cloud data center, the VPC is provided with the cloud instance and the router of the tenant, the cloud instance accesses the target network through the router and the gateway cluster, the gateway cluster includes a primary gateway and a backup gateway in a master-slave relationship with each other, wherein the primary gateway is bound to the first elastic network card, the primary gateway and the backup gateway are set in the internal network of the gateway cluster, the backup gateway is bound to the second elastic network card, when the first elastic network card is working normally, the primary gateway accesses the target network, and when the first elastic network card is not working normally, the backup gateway replaces the primary gateway to access the target network, and the cloud management platform includes: A setting module, configured to set a virtual next hop to be associated with one of the first elastic network card and the second elastic network card according to the input of the tenant; wherein the virtual next hop is associated with the first elastic network card when the first elastic network card works normally, and the virtual next hop is associated with the second elastic network card when the first elastic network card does not work normally; The instruction module is used to instruct the router to forward the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
9. The cloud management platform according to claim 8, characterized in that: The indication module is used for: In the association list, record the elastic network card associated with the virtual next hop; The association list is sent to the router, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop based on the association list.
10. The cloud management platform according to claim 8, characterized in that: The indication module is used for: A routing rule is set for the router, wherein the routing rule includes: forwarding a message whose destination address is the target network to an elastic network card associated with the virtual next hop.
11. The cloud management platform according to claim 8, characterized in that: The indication module is used for: Record the elastic network card associated with the virtual next hop; Receiving a network card request sent by the router; In response to the network card request, the router is notified of the elastic network card associated with the virtual next hop, so that the router forwards the message whose destination address is the target network to the elastic network card associated with the virtual next hop.
12. The cloud management platform according to any one of claims 8 to 11, characterized in that: The target network is the Internet or the tenant's local network.
13. The cloud management platform according to any one of claims 8 to 12, characterized in that: The setting module is used to: Providing an association interface to the tenant, wherein the association interface is used to receive an association operation of the tenant; In response to the association operation, a virtual next hop is associated with one of the first elastic network interface card and the second elastic network interface card.
14. The cloud management platform according to any one of claims 8 to 13, characterized in that: The setting module is used to: Providing a creation interface to the tenant, wherein the creation interface is used to receive a creation operation of the tenant, and the creation operation is used to create the virtual next hop; In response to the creation operation, the virtual next hop is created and recorded.
15. A computing device cluster, characterized in that: comprising at least one computing device, each computing device comprising a processor and a memory; The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster executes the method according to any one of claims 1 to 7.
16. A computer-readable storage medium, characterized in that: The method comprises computer program instructions, and when the computer program instructions are executed by a computing device cluster, the computing device cluster performs the method as claimed in any one of claims 1 to 7.
17. A computer program product comprising instructions, characterized in that When the instructions are executed by a computer device cluster, the computer device cluster executes the method according to any one of claims 1 to 7.
