Communication method and cloud computing service platform
By introducing an address processing bridge and configuring a first-flow table in the cloud computing service platform, the problem of low address translation efficiency when virtual machines communicate with external network devices is solved, achieving faster address translation processing and reduced communication latency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA UNITED NETWORK COMM GRP CO LTD
- Filing Date
- 2023-07-27
- Publication Date
- 2026-04-21
AI Technical Summary
The low efficiency of address translation processing when virtual machines communicate with external network devices in cloud computing service platforms leads to high communication latency.
An address processing bridge is introduced, which implements address translation processing by configuring a first flow table. It is specifically used to execute address translation requests, reducing the processing load on the CPU and improving address translation efficiency.
The independent processing capability of the address processing bridge improves the speed of address translation and reduces communication latency.
Smart Images

Figure CN116708355B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communications, and more particularly to a communication method and a cloud computing service platform. Background Technology
[0002] A cloud computing service platform can create a virtual, shared resource pool, providing computing, data storage, and network services via the internet. A cloud computing service platform includes web servers and compute servers. The compute servers use virtualization technology to create multiple virtual machines on a single server, enabling different operating systems and applications to run on a single physical server for different clients. When virtual machines within a cloud computing service platform communicate with external network devices outside the platform, address translation is required because the external network devices cannot recognize the virtual machine's IP address.
[0003] In related technologies, the network server's CPU is invoked through the namespace on the network server's operating system. The CPU performs address translation processing based on the naming rules of the namespace to enable communication between the virtual machine and external network devices.
[0004] However, the address translation processing in related technologies is inefficient, resulting in high communication latency. Summary of the Invention
[0005] This application provides a communication method and a cloud computing service platform to solve the technical problem of low address translation processing efficiency, which leads to high communication latency in related technologies.
[0006] In a first aspect, this application provides a communication method applied to a cloud computing service platform, the cloud computing service platform comprising: a core device, at least one network server, and at least one computing server; each computing server corresponds to one network server, the computing server includes at least one virtual machine, and the network server includes a CPU, a network forwarding device, and an address processing bridge. The method comprises: the core device transmitting processing requests sent by the external gateway corresponding to the core device and the computing server to the corresponding network forwarding device; the network forwarding device receiving the processing request, and if the processing request is an address translation request, forwarding the address translation request to the address processing bridge; if the processing request is not an address translation request, forwarding the processing request to the CPU; the CPU performing corresponding processing according to the received processing request; and the address processing bridge performing address translation processing based on a first flow table configured locally on the address processing bridge according to the received address translation request, and returning the address translation processing result to the network forwarding device.
[0007] In some embodiments, the address translation request is sent by the virtual machine to the target external gateway; the address processing bridge, based on the received address translation request and a first flow table configured locally, performs address translation processing and returns the address translation processing result to the network forwarding device, including: the address processing bridge, by calling the first flow table, modifies the source IP address of the communication data packet in the address translation request from the virtual machine's IP address to the network server's public IP address, and modifies the destination MAC address of the communication data packet to the target external gateway's MAC address, thereby obtaining the address translation processing result; the address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device sends the address translation processing result to the target external gateway through the core device.
[0008] In some embodiments, the address translation request is sent by the external gateway to the target virtual machine; the address processing bridge, based on the received address translation request and a first flow table configured locally, performs address translation processing and returns the address translation processing result to the network forwarding device, including: the address processing bridge, by calling the first flow table, modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, thereby obtaining the address translation processing result; the address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device sends the address translation processing result to the target virtual machine through the core device.
[0009] In some embodiments, the network conversion device includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port.
[0010] In some embodiments, the first flow table includes multiple sub-flow tables; the address processing bridge obtains the address translation processing result by calling the first flow table to modify the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server, and to modify the destination MAC address of the communication data packet to the MAC address of the target external gateway. This includes: receiving the communication data packet in the address translation request through the first port, and calling the first sub-flow table to call the second sub-flow table for communication data packets with the access port being the first port and the source IP address being the internal IP address of the network server; by calling the second sub-flow table, for communication data packets with the destination MAC address being the MAC address of the port of the address processing bridge, modifying the source MAC address to the MAC address of the first port, modifying the destination MAC address to the MAC address of the third port, and sending the modified communication data packet to the network forwarding device through the first port; and sending the modified communication data packet through the third port... The system receives the communication data packet, calls the first sub-flow table, and by calling the first sub-flow table, assigns a first value to the tag value of the communication data packet for a communication data packet whose destination MAC address is the MAC address of the third port and whose source IP address is the internal IP address of the network server, and calls the third sub-flow table; when the tag value is the first value, it indicates that the communication data packet was sent by the virtual machine; by calling the third sub-flow table, for the communication data packet with the tag value of the first value, the source IP address is changed from the IP address of the virtual machine to the public IP address of the network server, and the source MAC address is changed to the MAC address of the address processing bridge, and calls the fourth sub-flow table; by calling the fourth sub-flow table, for the communication data packet with the tag value of the first value and whose source IP address is the public IP address of the network server, the destination MAC address is changed to the MAC address of the external gateway, obtains the address translation processing result, and sends the address translation processing result from the second port to the network forwarding device.
[0011] In some embodiments, the first flow table includes multiple sub-flow tables; the address processing bridge obtains the address translation processing result by calling the first flow table to modify the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine, and to change the destination MAC address of the communication data packet to the MAC address of the target virtual machine, including: receiving the communication data packet in the address translation request through the second port, and calling the first sub-flow table; by calling the first flow table, for communication data packets with the access port being the second port and the destination IP address being the internal IP address of the network server, assigning the tag value of the communication data packet to a second value, and calling the fifth sub-flow table; when the tag value is the second value, it indicates that the communication data packet is... The communication data packet is sent by the external gateway; by calling the fifth sub-flow table, for the communication data packet with the second flag value and the destination IP address being the public IP address of the network server, the destination IP address is modified from the public IP address of the network server to the IP address of the target virtual machine, and the sixth sub-flow table is called; by calling the sixth sub-flow table, for the communication data packet with the second flag value and the destination IP address being the virtual machine IP address, the source MAC address is modified to the MAC address of the third port, and the destination address is modified to the MAC address of the virtual machine; the seventh sub-flow table is called; by calling the seventh sub-flow table, for the communication data packet with the destination MAC address being the MAC address of the virtual machine, it is sent to the network forwarding device through the first port.
[0012] Secondly, this application provides a cloud computing service platform, comprising: a core device, at least one network server, and at least one computing server; each computing server corresponds to one network server, the computing server includes at least one virtual machine, the network server includes a CPU, a network forwarding device, and an address processing bridge; the core device is used to transmit processing requests sent by the external gateway and computing server corresponding to the core device to the corresponding network forwarding device; the network forwarding device is used to receive the processing request, and if the processing request is an address translation request, forward the address translation request to the address processing bridge; if the processing request is not an address translation request, forward the processing request to the CPU; the CPU is used to perform corresponding processing according to the received processing request; the address processing bridge is used to perform address translation processing based on a first flow table configured locally on the address processing bridge according to the received address translation request, and return the address translation processing result to the network forwarding device.
[0013] In some embodiments, the address translation request is sent by the virtual machine to the target external gateway; the address processing bridge is specifically used to modify the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server, and to modify the destination MAC address of the communication data packet to the MAC address of the target external gateway by calling the first flow table, thereby obtaining the address translation processing result; the address processing bridge is further specifically used to return the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target external gateway through the core device.
[0014] In some embodiments, the address translation request is sent by the external gateway to the target virtual machine; the address processing bridge, based on the received address translation request and a first flow table configured locally, performs address translation processing and returns the address translation processing result to the network forwarding device, including: the address processing bridge, by calling the first flow table, modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, thereby obtaining the address translation processing result; the address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device sends the address translation processing result to the target virtual machine through the core device.
[0015] In some embodiments, the network conversion device includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port.
[0016] In the communication method and cloud computing service platform provided in this application, the network forwarding device receives a processing request. If the processing request is an address translation request, it forwards the address translation request to the address processing bridge; if the processing request is not an address translation request, it forwards the address translation request to the CPU. The address processing bridge performs address translation processing based on the received address translation request and a first flow table configured locally on the address processing bridge, and returns the address translation processing result to the network forwarding device. This application performs address translation processing through the address processing bridge and based on the first flow table configured locally on the address processing bridge. The address processing bridge has independent processing and computing capabilities and is specifically designed for performing address translation processing. Compared with the CPU, which needs to handle a large number of processing requests, the address processing bridge performs address translation processing faster. Therefore, this application can improve address translation processing efficiency and reduce communication latency. Attached Figure Description
[0017] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0018] Figure 1 This is a schematic diagram of the structure of a cloud computing platform in an example;
[0019] Figure 2 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 1 ;
[0020] Figure 3 A flowchart illustrating a communication method provided in this application embodiment. Figure 1 ;
[0021] Figure 4 A flowchart illustrating a communication method provided in this application embodiment. Figure 2 ;
[0022] Figure 5 A flowchart illustrating a communication method provided in this application embodiment. Figure 3 ;
[0023] Figure 6 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 2 ;
[0024] Figure 7 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 3 .
[0025] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0026] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0027] The following will explain the terms used in this application:
[0028] OpenFlow is a network communication protocol used for communication between controllers and repeaters in SDN architectures. A core principle of Software-Defined Networking (SDN) is the separation of forwarding and control. To achieve this separation, a standard communication interface needs to be established between the controller and the repeater, allowing the controller to directly access and control the repeater's forwarding plane. OpenFlow introduces the concept of "flow tables," which repeaters use to guide the forwarding of communication packets. The controller then deploys the corresponding flow tables on the repeaters through the interface provided by OpenFlow, thereby controlling the forwarding plane.
[0029] MAC address: The full name is Media Access Control Address, also known as a local area network address, Ethernet address, or physical address. A MAC address is used to uniquely identify a network interface card (NIC) on a network. If a device has one or more NICs, each NIC needs and will have a unique MAC address.
[0030] IP address: Internet Protocol Address (IP address). An IP address is a unified address format provided by the IP address protocol. It assigns a logical address to every network and every host on the Internet to mask the differences in physical addresses.
[0031] The application scenarios and technical issues of this application will be described below by way of example:
[0032] Figure 1 Here is a schematic diagram of the structure of a cloud computing platform as an example, such as Figure 1 As shown, the cloud computing service platform includes a core device 30, a computing server 40, and a network server 50. The core device 30 is connected between the computing server 40 and the network server 50. The computing server 40 includes multiple virtual machines 41, each configured with a separate operating system and applications for user use. The network server 50 includes a network forwarding device 51 and a CPU 54, and is used for traffic forwarding. The cloud computing service platform is also connected to an external network device 10 via an external gateway 20. The external gateway is a router or switch directly connected to the core device 30.
[0033] In the scenario where virtual machine 41 communicates with external network device 10, since external network device 10 cannot recognize the IP address of virtual machine 41, address translation (SNAT) is required during communication to enable communication between external network device 10 and virtual machine 41 based on the translated address. (Continue to refer to...) Figure 1 When virtual machine 41 sends communication data to external network device 10, virtual machine 41 first needs to send the communication data to network server 50 through core device 30. Network server 50 performs address translation processing on the communication data, and then sends the address-translated communication data to external gateway 20 so that it can access external network device 10 through external gateway 20. When external network device 10 sends communication data to virtual machine 41, the communication data enters network server 50 through external gateway 20 and core device 30. Network server 50 performs address translation processing on the communication data, and then sends the address-translated communication data to the corresponding virtual machine 41.
[0034] In related technologies, continue to refer to Figure 1 The network server includes a network forwarding device 51 and a CPU 54. The operating system of the network server has a router namespace 52 (qrouter namespace, abbreviated as qrouter-ns) and a source network address translation namespace 53 (source network address translation, abbreviated as snat-ns). The CPU 54 is invoked through qrouter-ns52 and snat-ns53. Based on the routing lookup strategy of qrouter-ns53 and the operating system's IP address table (Iptables), the CPU 54 performs address translation processing to enable communication between the virtual machine 41 and the external network device 10. However, the address translation processing in related technologies is inefficient, resulting in high communication latency.
[0035] The communication method provided in this application is intended to solve the above-mentioned technical problems of the prior art.
[0036] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0037] This application provides a communication method applied to a cloud computing service platform. Figure 2 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 1 , Figure 2 The diagram shows a partial structure of a cloud computing service platform; other structures unrelated to this application are not shown, such as... Figure 2 As shown, the cloud computing service platform includes: core equipment 30, at least one network server 50, and at least one computing server 40. Figure 2The diagram shows only one network server 50 and one computing server 40. The core device 30 can be a central switch, which is connected to the network server 50 and the computing server 40 through corresponding access devices. Each computing server 40 corresponds to one network server 50. The computing server 40 includes at least one virtual machine 41. The network server 50 includes a CPU 54, a network forwarding device 51, and an address processing bridge 55. For example, the network forwarding device 51 may include an integrated bridge 513, an external bridge 512, and a physical network card 511. The core device 30 is connected to the physical network card, the external bridge, and the integrated bridge in sequence.
[0038] The Address Processing Bridge 55 can be an open-source virtual switch (Open VSwitch, or OVS) or a physical switch. It supports flow table protocol management and can be equipped with a smart network card. It has independent processing and computing capabilities and can forward or change the address of received data packets based on flow tables.
[0039] Figure 3 A flowchart illustrating a communication method provided in this application embodiment. Figure 1 ,like Figure 3 As shown, the communication method provided in this embodiment includes:
[0040] S301. The core device transmits the processing requests sent by the external gateway and computing server corresponding to the core device to the corresponding network forwarding device.
[0041] S302. The network forwarding device receives a processing request. If the processing request is an address translation request, it forwards the address translation request to the address processing bridge. If the processing request is not an address translation request, it forwards the processing request to the CPU.
[0042] S303. The CPU performs corresponding processing according to the received processing request;
[0043] S304. The address processing bridge performs address translation processing based on the first flow table configured locally on the address processing bridge according to the received address translation request, and returns the address translation processing result to the network forwarding device.
[0044] In this embodiment, the core device receives a processing request from an external gateway. The network forwarding device determines whether the received processing request is an address translation request and sends the address translation request to the address processing bridge, and sends requests that are not address translation requests to the CPU.
[0045] For example, if a processing request received by a network forwarding device is sent from an external gateway to a virtual machine, or from a virtual machine to an external gateway, then the processing request can be determined to be an address translation request; otherwise, it can be determined not to be an address translation request.
[0046] The CPU executes corresponding processing based on the received processing request. The address processing bridge, based on the received address translation request and its locally configured first flow table, performs address translation processing and returns the result to the network forwarding device. In other words, in this embodiment, all address change requests during communication are handled by the address processing bridge, while the CPU is only used to handle other processing requests. This frees up CPU computing resources, alleviates CPU processing pressure, and improves the speed at which the CPU handles other processing requests. Furthermore, the address processing bridge can be equipped with a smart network interface card (NIC) skilled in address translation processing. With independent processing and computing capabilities, the address processing bridge performs address translation processing much faster than the CPU, which needs to handle a large number of processing requests. Therefore, this application can improve address translation processing efficiency and reduce communication latency.
[0047] In this embodiment, different address change processes can be performed according to different address translation requests, which will be described in the following example.
[0048] In some examples, Figure 4 A flowchart illustrating a communication method provided in this application embodiment. Figure 2 ,like Figure 4 As shown, the address translation request is sent by the virtual machine to the target external gateway; S304 includes:
[0049] S3041. The address processing bridge modifies the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server by calling the first flow table, and modifies the destination MAC address of the communication data packet to the MAC address of the target external gateway, thereby obtaining the address translation processing result.
[0050] S3042. The address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device sends the address translation processing result to the target external gateway through the core device.
[0051] In this example, the address translation request is sent from the virtual machine to the target external gateway. The address translation request includes a communication data packet containing the source IP address, destination IP address, source MAC address, and destination MAC address. It can be understood that the address translation request is sent from within the cloud computing service platform to the outside world. Therefore, the source IP address of the communication data packet is the virtual machine's IP address. The virtual machine's IP address is a private IP address within the cloud computing service platform's domain and cannot be recognized by the external network. Thus, the source IP address of the communication data needs to be changed to the public IP address of the network server corresponding to the virtual machine's computing server. Furthermore, to send the communication data packet out of the cloud computing service platform through the external gateway, the destination MAC address of the communication data packet needs to be changed to the MAC address of the target external gateway. Based on the destination MAC address, the address-translated communication data packet, i.e., the address translation result, can then be sent to the target external gateway.
[0052] It should be noted that there can be one or more external gateways in this example. When there are multiple external gateways, for example, each virtual machine can be set to correspond to one external gateway and the correspondence can be stored. When the address processing bridge performs address translation processing, it uses the external gateway corresponding to the virtual machine as the target external gateway based on the correspondence.
[0053] It should also be noted that the address translation processing result includes the address-translated communication data packet, which also includes the domain name of the target external network device. The external gateway obtains the IP address of the target network device based on the domain name of the target network device, and sends the address translation processing result to the target network device based on the IP address of the target network device, so as to realize the communication between the virtual machine and the target network device.
[0054] The following will provide an illustrative example of the transmission path for an address translation request: (Combined with...) Figure 2 The virtual machine issues a processing request, which is forwarded by the core device to the network forwarding device. The network forwarding device determines that the processing request is an address translation request and sends it to the address processing bridge. The address processing bridge calls the first flow table and executes its rules to modify the source IP address of the communication data packet in the address translation request from the virtual machine's IP address to the network server's public IP address, and to modify the destination MAC address of the communication data packet to the target external gateway's MAC address, thus obtaining the address translation processing result. The address processing bridge sends the address translation processing result to the network server. The network server, based on the destination MAC address, sends the address translation processing result to the target external gateway through the core device, so that the target external gateway can send the address translation processing result to the target external network device, thereby enabling communication between the virtual machine and the target external network device.
[0055] In other examples, Figure 5 A flowchart illustrating a communication method provided in this application embodiment. Figure 3 ,like Figure 5 As shown, the address translation request is sent by the external gateway to the target virtual machine; S304 includes:
[0056] S3043. The address processing bridge modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine by calling the first flow table, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, thereby obtaining the address translation processing result.
[0057] S3044. The address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target virtual machine through the core device.
[0058] In this example, the address translation request is sent from the external gateway to the target virtual machine. For instance, the current address translation request could be sent by the target external network device in the example above based on the received address translation processing result. In other words, the current address translation request can be considered a response from the external network device to a request sent to the target virtual machine. The destination IP address of the communication data packet in the address translation request is the public IP address of the network server. The address processing bridge converts the destination IP address of the communication data packet in the address translation request to the IP address of the target virtual machine, and converts the destination MAC address to the MAC address of the target virtual machine, obtaining the address translation processing result. This result is then sent to the network forwarding device. The network forwarding device, based on the destination IP address and destination MAC address of the address translation processing result, sends the result to the target virtual machine through the core device, thereby enabling communication between the external network device and the target virtual device.
[0059] As an example, an address processing bridge can store address translation records for communication data packets in each address translation request and track each address translation request. Based on the address translation records and tracking mechanism, the address processing bridge can obtain the current address translation request. For example, if the address processing bridge stores a record that the source IP address in the first address translation request is converted from the virtual machine's IP address 10.10.10.120 to the public IP address 172.31.139.2, and tracks the first address translation request by setting a corresponding identifier for the first address translation request, it can obtain that the second address translation request is issued by an external network device based on the first address translation request. When performing address translation processing on the second address translation request, the source IP address can be converted from 172.31.139.2 to 10.10.10.120 according to the address translation record.
[0060] In one example Figure 6 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 2 , Figure 7 Schematic diagram of the structure of the cloud computing service platform provided in the embodiments of this application Figure 3 ,like Figure 6 , Figure 7 As shown, the network conversion device 51 includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port. The first port can be an INTP port, the second port can be an EX port, and the third port can be a SNTP port.
[0061] In this example, the qr, qg, and Sg ports can be ports on the integrated bridge in the network forwarding device 51. When the network forwarding device works in conjunction with the namespace, these ports are used to forward communication data packets and correspond to ports in the two namespaces respectively. The integrated bridge has a local configuration of a second flow table, which controls the forwarding of communication data packets. In this implementation, by setting three ports corresponding to the integrated bridge, the existing flow table rules of the integrated bridge can be utilized. The integrated bridge does not need to change the ports or the second flow table rules, thus improving its versatility and reducing the impact of changes in the scheme on other structures.
[0062] The following section will provide illustrative examples of how address processing bridges perform address translation processing based on the first-flow table in different scenarios.
[0063] It should be noted that the first flow table in this embodiment defines the packet forwarding rules between ports on the bridge. The first flow table may include multiple sub-flow tables, each of which may include at least one matching condition and at least one processing rule, wherein the at least one matching condition and at least one processing rule can correspond one-to-one. The DVR will find the target matching condition that matches the information of the current communication packet from the currently invoked sub-flow table and execute the processing rule corresponding to the target matching condition. If no target matching condition is found, the communication packet will not pass through the sub-flow table. It can be understood that the matching condition of the sub-flow table is used to filter out the communication packets that can pass through the sub-flow table, while the processing rule of the sub-flow table is used to determine how to process the filtered communication packets. Based on the actual scenario of this solution, the inventors have designed multiple sub-flow tables. The address processing bridge processes the communication packets by calling the corresponding designed sub-flow tables to perform address translation processing. A specific example is as follows:
[0064] In some examples, S3041 includes:
[0065] The system receives communication data packets in address translation requests through the first port and calls the first sub-flow table to call the second sub-flow table for communication data packets whose access port is the first port and whose source IP address is the internal IP address of the network server.
[0066] By calling the second sub-flow table, for communication data packets whose destination MAC address is the MAC address of the port of the address processing bridge, the source MAC address is modified to the MAC address of the first port, the destination MAC address is modified to the MAC address of the third port, and the modified communication data packets are sent to the network forwarding device through the first port;
[0067] The communication data packet is received through the third port, the first sub-flow table is invoked, and by invoking the first sub-flow table, for communication data packets whose destination MAC address is the MAC address of the third port and whose source IP address is the internal IP address of the network server, the tag value of the communication data packet is assigned to the first value, and the third sub-flow table is invoked; when the tag value is the first value, it indicates that the communication data packet was sent by the virtual machine;
[0068] By calling the third sub-flow table, for the communication data packet with the first flag value, the source IP address is changed from the virtual machine's IP address to the network server's public IP address, and the source MAC address is changed to the address processing bridge's MAC address, and the fourth sub-flow table is called.
[0069] By calling the fourth sub-flow table, for communication data packets whose tag value is the first value and whose source IP address is the public IP address of the network server, the destination MAC address is modified to the MAC address of the external gateway to obtain the address translation processing result, and the address translation processing result is sent from the second port to the network forwarding device.
[0070] This example illustrates how to handle address translation requests sent by a virtual machine to an external gateway.
[0071] The following is an example illustration using a real-world scenario: [Combined with...] Figure 6 It should be noted that in practical applications, the MAC addresses of the ports corresponding to the network forwarding device and the address processing bridge are the same. When the address processing bridge receives a communication data packet, it calls the first sub-flow table table=1. The communication data packet received by the address processing bridge can be one or more. The source IP address of the communication data packet sent by the virtual machine is 10.10.10.120, the destination MAC address is the MAC address of the intp port, and the access port is the first port. The address processing bridge finds the target matching condition that matches the current communication data packet. Specifically, for the communication data packet with the access port of the first port and the source IP address of the network server, the corresponding matching rule is: call the second sub-flow table table=2. For example, the first sub-flow table may include:
[0072] (Matching conditions) table = 1, priority = 25, IP address, in_port = "intp", dl_dst = fa:16:3e:75:90:20 (Port MAC address), nw_src = 10.10.10.0 / 24 (Processing rules) actions = dec_ttl, resubmit(,2).
[0073] Then, the address processing bridge calls the second sub-flow table (table=2) and, based on the target matching condition of the second sub-flow table (table=2): for communication data packets whose destination MAC address is the port of the address processing bridge, modifies the source MAC address of the communication data packets sent by the virtual machine that meets the matching condition to the MAC address of the first port, modifies the destination MAC address to the MAC address of the third port, and sends the modified communication data packets to the network forwarding device through the first port. For example, the second sub-flow table may include:
[0074] (Matching conditions) table = 2, priority = 100, dl_dst = fa:16:3e:75:90:20 (Processing rules) actions = mod_dl_src:fa:16:3e:75:90:20, mod_dl_dst:fa:16:3e:d7:87:bb, IN_PORT.
[0075] Taking a network forwarding device including an integrated bridge as an example, the integrated bridge receives the current communication data packet through the qr interface. The integrated bridge also has a corresponding second flow table. By calling the second flow table, the integrated bridge sends the communication data packet to the address processing bridge through the third port for the communication data packet whose destination MAC address is the MAC address of the third port.
[0076] The address processing bridge receives communication data packets through the third port, calls the first sub-flow table again, and finds the target matching condition based on the information of the current communication data packet. The target matching condition is: for communication data packets whose destination MAC address is the MAC address of the third port and whose source IP address is the internal IP address of the network server, the corresponding processing rule is: assign the first value to the tag value of the communication data packet and call the third sub-flow table. When the tag value reg10 is the first value, it indicates that the communication data packet was sent from the virtual machine to the target external gateway; when the tag value reg10 is the second value, it indicates that the communication data packet was sent from the external gateway to the target virtual machine. For example, the first value can be 0x1 and the second value can be 0x2. It should be noted that the tag value reg10 can be stored in the first register corresponding to the address processing bridge, so that the tag value can be assigned by modifying the stored value of the first register.
[0077] Then, the address processing bridge calls the third sub-flow table and finds the information of the current communication data to find the target matching condition. The target matching condition is: for communication data packets with the first value as the marker value and the source IP address as the public IP address of the network server, the corresponding processing rule is: modify the destination MAC address of the communication data packet that meets the matching condition to the MAC address of the target external gateway, and send the address conversion processing result from the second port to the network forwarding device.
[0078] In this example, the address processing bridge calls multiple pre-designed sub-flow tables, filters communication data based on the matching conditions of the sub-flow tables, and performs corresponding processing on the communication data packets that meet the matching conditions. This converts the source IP address of the communication data sent by the virtual machine to the external gateway into the common IP address of the network server, and converts the destination MAC address into the MAC address of the external gateway, thereby enabling communication between the virtual machine and the external gateway.
[0079] In another example, S3043 includes:
[0080] The system receives communication data packets in address translation requests through the second port and calls the first sub-flow table. By calling the first flow table, for communication data packets with the access port being the second port and the destination IP address being the internal IP address of the network server, the system assigns the tag value of the communication data packet to the second value and calls the fifth sub-flow table. When the tag value is the second value, it indicates that the communication data packet was sent by the external gateway.
[0081] By calling the fifth sub-flow table, for communication data packets whose marker value is the second value and whose destination IP address is the public IP address of the network server, the destination IP address is changed from the public IP address of the network server to the IP address of the target virtual machine, and the sixth sub-flow table is called;
[0082] By calling the sixth sub-flow table, for communication data packets whose flag value is the second value and whose destination IP address is the virtual machine's IP address, the source MAC address is modified to the MAC address of the third port, and the destination address is modified to the MAC address of the virtual machine; the seventh sub-flow table is then called.
[0083] By invoking the seventh sub-flow table, communication data packets destined for the virtual machine's MAC address are sent to the network forwarding device through the first port.
[0084] This example illustrates how to handle address translation requests sent from an external gateway to a virtual machine.
[0085] The following is an example illustration using a real-world scenario: [Combined with...] Figure 7 The address processing bridge receives communication data packets from address change requests sent by the external gateway through its second port. The bridge calls the first sub-flow table `table=1`. The destination IP address of the communication data packet sent by the external gateway is the public IP address of the network server. Based on the information in this communication data packet, the bridge finds the target matching condition from `table=1`. The target matching condition is: for communication data packets with the access port being the second port and the destination IP address being the internal IP address of the network server, the corresponding processing rule is: assign the tag value `reg10` of the communication data packet to the second value `0x2`, and call the fifth sub-flow table `table=5`. The method for assigning the tag value can refer to the example above. For example, the first sub-flow table may include:
[0086] (Matching conditions) table = 1, priority = 120, ip, in_port = "ex-064f5052-2a", nw_dst = 172.31.139.10 (Processing rules) actions = load: 0x2->NXM_NX_REG10[], resubmit(,5).
[0087] Then, the address processing bridge calls table=5. Based on the information of the current communication data packet, it finds the matching target condition. The target condition is: for communication data packets with the marker value reg10 as the second value and the destination IP address as the public IP address of the network server, the destination IP address is modified from the public IP address of the network server to the IP address of the target virtual machine, and the sixth sub-flow table table=5 is called. It should be noted that the current fifth sub-flow table can be the same sub-flow table as the third sub-flow table in the above example. Based on the conversion record of the virtual machine's IP address to the public IP address of the network server in the third sub-flow table, the IP address of the target virtual machine corresponding to the current public IP address of the network server is obtained. For example, the fifth sub-flow table may include:
[0088] (Matching conditions) table = 5, priority = 100, ip, reg10 = 0x2, nw_dst = 172.31.139.10 (Processing rules) actions = ct(commit, table = 6, nat(src)).
[0089] The address processing bridge calls table=6. Based on the information of the current communication data packet, it finds the matching target condition. The target condition is: for communication data packets with the marker value reg10 as the second value and the destination IP address as the virtual machine's IP address, the corresponding processing rule is: modify the source MAC address to the MAC address of the third port, and modify the destination address to the MAC address of the virtual machine; then it calls the seventh sub-flow table table=7. The address translation processing is now complete, and the communication data packet with the changed address is obtained, i.e., the address translation result is obtained. For example, the sixth sub-flow table may include:
[0090] (Matching conditions) table = 6, priority = 200, ip, reg10 = 0x2, nw_dst = 10.10.10.60 (Processing rules) acts = mod_dl_src:fa:16:3e:d7:87:bb, mod_dl_dst:00:50:56:83:ca:bb, dec_ttl, resubmit(,7)
[0091] The address processing bridge calls table=7, with the target matching condition being: for communication data packets whose destination MAC address is the MAC address of the virtual machine, the corresponding processing rule is: send them to the network forwarding device through the first port. For example, the seventh sub-flow table may include:
[0092] (Matching conditions) table = 7, priority = 100, ip, dl_dst = 00:50:56:83:ca:bb (Processing rules) actions = output: "intp".
[0093] In this example, the address processing bridge calls multiple pre-designed sub-flow tables, filters communication data based on the matching conditions of the sub-flow tables, and performs corresponding processing on the communication data packets that meet the matching conditions. This converts the source IP address of the communication data sent from the external gateway to the virtual machine into the IP address of the target virtual machine, and converts the destination MAC address into the target virtual machine, thereby enabling communication between the virtual machine and the external gateway.
[0094] In the communication method provided in this application, a network forwarding device receives a processing request. If the processing request is an address translation request, it forwards the address translation request to an address processing bridge; if the processing request is not an address translation request, it forwards the address translation request to a CPU. The address processing bridge performs address translation processing based on the received address translation request and a first flow table configured locally on the address processing bridge, and returns the address translation processing result to the network forwarding device. This application performs address translation processing through an address processing bridge based on a first flow table configured locally on the address processing bridge. The address processing bridge has independent processing and computing capabilities and is specifically designed for performing address translation processing. Compared to a CPU that needs to handle a large number of processing requests, the address processing bridge performs address translation processing faster. Therefore, this application can improve address translation processing efficiency and reduce communication latency.
[0095] Example 2
[0096] This application provides a cloud computing service platform, such as Figure 2As shown, the cloud computing service platform includes: a core device 30, at least one network server 50, and at least one computing server 40. The core device 30 may be a central switch, which is connected to the network server 50 and the computing server 40 respectively through corresponding access devices. Each computing server 40 corresponds to one network server 50. The computing server 40 includes at least one virtual machine 41. The network server 50 includes a CPU 54, a network forwarding device 51, and an address processing bridge 55. For example, the network forwarding device 51 may include an integrated bridge 513, an external bridge 512, and a physical network interface card (NIC) 511. The core device 30 is sequentially connected to the physical NIC, the external bridge, and the integrated bridge.
[0097] The Address Processing Bridge 55 can be an open-source virtual switch (Open VSwitch, or OVS) or a physical switch. It supports flow table protocol management and can be equipped with a smart network card. It has independent processing and computing capabilities and can forward or change the address of received data packets based on flow tables.
[0098] The core device 30 is used to transmit processing requests sent by the external gateway and computing server corresponding to the core device to the corresponding network forwarding device; the network forwarding device 51 is used to receive the processing request, and if the processing request is an address translation request, forward the address translation request to the address processing bridge; if the processing request is not an address translation request, forward the processing request to the CPU 54; the CPU 54 is used to perform corresponding processing according to the received processing request; the address processing bridge 55 is used to perform address translation processing according to the received address translation request and based on the first flow table configured locally on the address processing bridge, and return the address translation processing result to the network forwarding device.
[0099] In this embodiment, the CPU executes corresponding processing based on the received processing request. The address processing bridge, based on the received address translation request and its locally configured first flow table, performs address translation processing and returns the result to the network forwarding device. In other words, in this embodiment, all address change requests during communication are handled by the address processing bridge, while the CPU is only used to handle other processing requests. This frees up CPU computing resources, alleviates CPU processing pressure, and improves the speed at which the CPU handles other processing requests. Furthermore, the address processing bridge can be equipped with a smart network interface card (NIC) skilled in address translation processing. The address processing bridge has independent processing and computing capabilities, and compared to the CPU, which needs to handle a large number of processing requests, the address processing bridge performs address translation processing much faster. Therefore, this application can improve address translation processing efficiency, thereby reducing communication latency.
[0100] The following will provide an exemplary description of address processing bridges.
[0101] In some examples, the address translation request is sent by the virtual machine to the target external gateway;
[0102] Address processing bridge 55 is specifically used to modify the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server by calling the first flow table, and to modify the destination MAC address of the communication data packet to the MAC address of the target external gateway, so as to obtain the address translation processing result;
[0103] The address processing bridge 55 is further configured to return the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target external gateway through the core device.
[0104] In other examples, the address translation request is issued by the external gateway to the target virtual machine;
[0105] Address processing bridge 55 is specifically used to modify the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine by calling the first flow table, and to change the destination MAC address of the communication data packet to the MAC address of the target virtual machine, so as to obtain the address translation processing result.
[0106] The address processing bridge 55 is further configured to return the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target virtual machine through the core device.
[0107] In one example, such as Figure 6 , Figure 7 As shown, the network conversion device 51 includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port. The first port can be an INTP port, the second port can be an EX port, and the third port can be a SNTP port.
[0108] The following section will provide illustrative examples of how address processing bridges perform address translation processing based on the first-flow table in different scenarios.
[0109] In some examples, the address processing bridge 55 is specifically used to receive communication data packets in address translation requests through the first port and call the first sub-flow table to call the second sub-flow table for communication data packets whose access port is the first port and whose source IP address is the internal IP address of the network server;
[0110] The address processing bridge 55 is further configured to, by calling the second sub-flow table, modify the source MAC address to the MAC address of the first port and the destination MAC address to the MAC address of the third port for communication data packets whose destination MAC address is the MAC address of the port of the address processing bridge, and send the modified communication data packets to the network forwarding device through the first port.
[0111] The address processing bridge 55 is further configured to receive the communication data packet through the third port, call the first sub-flow table, and, by calling the first sub-flow table, assign a first value to the tag value of the communication data packet whose destination MAC address is the MAC address of the third port and whose source IP address is the internal IP address of the network server, and call the third sub-flow table; when the tag value is the first value, it indicates that the communication data packet was sent by the virtual machine;
[0112] The address processing bridge 55 is further configured to call the third sub-flow table to modify the source IP address of the communication data packet with the first flag value from the IP address of the virtual machine to the public IP address of the network server, and to modify the source MAC address to the MAC address of the address processing bridge, and call the fourth sub-flow table.
[0113] The address processing bridge 55 is further configured to, by calling the fourth sub-flow table, modify the destination MAC address of a communication data packet whose marker value is the first value and whose source IP address is the public IP address of the network server to the MAC address of the external gateway, obtain the address translation processing result, and send the address translation processing result from the second port to the network forwarding device.
[0114] In this example, the address processing bridge calls multiple pre-designed sub-flow tables, filters communication data based on the matching conditions of the sub-flow tables, and performs corresponding processing on the communication data packets that meet the matching conditions. This converts the source IP address of the communication data sent by the virtual machine to the external gateway into the common IP address of the network server, and converts the destination MAC address into the MAC address of the external gateway, thereby enabling communication between the virtual machine and the external gateway.
[0115] In another example, the address processing bridge 55 is specifically used to receive communication data packets in address translation requests through the second port, and call the first sub-flow table. By calling the first flow table, for communication data packets whose access port is the second port and whose destination IP address is the internal IP address of the network server, the flag value of the communication data packet is assigned a second value, and the fifth sub-flow table is called; when the flag value is the second value, it indicates that the communication data packet was sent by the external gateway.
[0116] The address processing bridge 55 is further configured to, by calling the fifth sub-flow table, modify the destination IP address of a communication data packet whose marker value is the second value and whose destination IP address is the public IP address of the network server from the public IP address of the network server to the IP address of the target virtual machine, and call the sixth sub-flow table.
[0117] By calling the sixth sub-flow table, for communication data packets whose flag value is the second value and whose destination IP address is the virtual machine's IP address, the source MAC address is modified to the MAC address of the third port, and the destination address is modified to the MAC address of the virtual machine; the seventh sub-flow table is then called.
[0118] By invoking the seventh sub-flow table, communication data packets destined for the virtual machine's MAC address are sent to the network forwarding device through the first port.
[0119] In this example, the address processing bridge calls multiple pre-designed sub-flow tables, filters communication data based on the matching conditions of these sub-flow tables, and performs corresponding processing on communication data packets that meet the matching conditions. This process converts the source IP address of the communication data sent from the external gateway to the virtual machine into the IP address of the target virtual machine, and converts the destination MAC address into the target virtual machine, thereby enabling communication between the virtual machine and the external gateway.
[0120] In the cloud computing service platform provided in this application, the network forwarding device receives a processing request. If the processing request is an address translation request, it forwards the address translation request to the address processing bridge; if the processing request is not an address translation request, it forwards the address translation request to the CPU. The address processing bridge performs address translation processing based on the received address translation request and a first flow table configured locally on the address processing bridge, and returns the address translation processing result to the network forwarding device. This application performs address translation processing through the address processing bridge and based on the first flow table configured locally on the address processing bridge. The address processing bridge has independent processing and computing capabilities and is specifically designed for performing address translation processing. Compared with the CPU, which needs to handle a large number of processing requests, the address processing bridge performs address translation processing faster. Therefore, this application can improve address translation processing efficiency and reduce communication latency.
[0121] Other embodiments of this application will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this application that follow the general principles of this application and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this application are indicated by the claims.
[0122] It should be understood that this application is not limited to the precise structure described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this application is limited only by the appended claims.
Claims
1. A communication method, characterized in that, The method is applied to a cloud computing service platform, which includes: core equipment, at least one network server, and at least one computing server; each computing server corresponds to one network server, and each computing server includes at least one virtual machine, and each network server includes a CPU, network forwarding devices, and an address processing bridge. The core device transmits the processing requests sent by the external gateway and computing server corresponding to the core device to the corresponding network forwarding device; The network forwarding device receives a processing request. If the processing request is an address translation request, it forwards the address translation request to the address processing bridge; if the processing request is not an address translation request, it forwards the processing request to the CPU. The CPU performs corresponding processing based on the received processing request; The address processing bridge performs address translation processing based on the first flow table configured locally on the address processing bridge according to the received address translation request, and returns the address translation processing result to the network forwarding device. The address processing bridge has independent processing and computing capabilities.
2. The method according to claim 1, characterized in that, The address translation request is sent by the virtual machine to the target external gateway; the address processing bridge, based on the received address translation request and its locally configured first flow table, performs address translation processing and returns the address translation processing result to the network forwarding device, including: The address processing bridge modifies the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server, and modifies the destination MAC address of the communication data packet to the MAC address of the target external gateway by calling the first flow table, thereby obtaining the address translation processing result; The address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target external gateway through the core device.
3. The method according to claim 1, characterized in that, The address translation request is sent by the external gateway to the target virtual machine; the address processing bridge, based on the received address translation request and its locally configured first flow table, performs address translation processing and returns the address translation processing result to the network forwarding device, including: The address processing bridge modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine by calling the first flow table, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, thereby obtaining the address translation processing result. The address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target virtual machine through the core device.
4. The method according to claim 2 or 3, characterized in that, The network forwarding device includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port.
5. The method according to claim 4, characterized in that, The first flow table includes multiple sub-flow tables; the address processing bridge, by calling the first flow table, modifies the source IP address of the communication data packet in the address translation request from the virtual machine's IP address to the network server's public IP address, and modifies the destination MAC address of the communication data packet to the target external gateway's MAC address, to obtain the address translation processing result, including: The system receives communication data packets in address translation requests through the first port and calls the first sub-flow table to call the second sub-flow table for communication data packets whose access port is the first port and whose source IP address is the internal IP address of the network server. By calling the second sub-flow table, for communication data packets whose destination MAC address is the MAC address of the port of the address processing bridge, the source MAC address is modified to the MAC address of the first port, the destination MAC address is modified to the MAC address of the third port, and the modified communication data packets are sent to the network forwarding device through the first port; The communication data packet is received through the third port, the first sub-flow table is invoked, and by invoking the first sub-flow table, for communication data packets whose destination MAC address is the MAC address of the third port and whose source IP address is the internal IP address of the network server, the tag value of the communication data packet is assigned to the first value, and the third sub-flow table is invoked; when the tag value is the first value, it indicates that the communication data packet was sent by the virtual machine; By calling the third sub-flow table, for the communication data packet with the first flag value, the source IP address is changed from the virtual machine's IP address to the network server's public IP address, and the source MAC address is changed to the address processing bridge's MAC address, and the fourth sub-flow table is called. By calling the fourth sub-flow table, for communication data packets whose tag value is the first value and whose source IP address is the public IP address of the network server, the destination MAC address is modified to the MAC address of the target external gateway to obtain the address translation processing result, and the address translation processing result is sent from the second port to the network forwarding device.
6. The method according to claim 4, characterized in that, The first flow table includes multiple sub-flow tables; the address processing bridge, by calling the first flow table, modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, to obtain the address translation processing result, including: The system receives communication data packets in address translation requests through the second port and calls the first sub-flow table. By calling the first flow table, for communication data packets with the access port being the second port and the destination IP address being the internal IP address of the network server, the system assigns the tag value of the communication data packet to the second value and calls the fifth sub-flow table. When the tag value is the second value, it indicates that the communication data packet was sent by the external gateway. By calling the fifth sub-flow table, for communication data packets whose marker value is the second value and whose destination IP address is the public IP address of the network server, the destination IP address is changed from the public IP address of the network server to the IP address of the target virtual machine, and the sixth sub-flow table is called; By calling the sixth sub-flow table, for communication data packets whose tag value is the second value and whose destination IP address is the virtual machine IP address, the source MAC address is modified to the MAC address of the third port, and the destination address is modified to the MAC address of the target virtual machine, to obtain the address translation processing result, and then the seventh sub-flow table is called; By invoking the seventh sub-flow table, communication data packets destined for the virtual machine's MAC address are sent to the network forwarding device through the first port.
7. A cloud computing service platform, characterized in that, include: The system includes core equipment, at least one network server, and at least one computing server; each computing server corresponds to one network server, and each computing server includes at least one virtual machine. Each network server includes a CPU, network forwarding devices, and an address processing bridge. The core device is used to transmit the processing requests sent by the external gateway and computing server corresponding to the core device to the corresponding network forwarding device. The network forwarding device is used to receive processing requests, and if the processing request is an address translation request, forward the address translation request to the address processing bridge. If the processing request is not an address translation request, the processing request is forwarded to the CPU; The CPU is used to perform corresponding processing based on the received processing request; The address processing bridge is configured to perform address translation processing based on the first flow table configured locally on the address processing bridge according to the received address translation request, and return the address translation processing result to the network forwarding device. The address processing bridge has independent processing and computing capabilities.
8. The cloud computing service platform according to claim 7, characterized in that, The address translation request is sent by the virtual machine to the target external gateway; The address processing bridge is specifically used to modify the source IP address of the communication data packet in the address translation request from the IP address of the virtual machine to the public IP address of the network server by calling the first flow table, and to modify the destination MAC address of the communication data packet to the MAC address of the target external gateway, so as to obtain the address translation processing result. The address processing bridge is further configured to return the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target external gateway through the core device.
9. The cloud computing service platform according to claim 7, characterized in that, The address translation request is sent by the external gateway to the target virtual machine; the address processing bridge, based on the received address translation request and its locally configured first flow table, performs address translation processing and returns the address translation processing result to the network forwarding device, including: The address processing bridge modifies the destination IP address of the communication data packet in the address translation request from the public IP address of the network server to the IP address of the target virtual machine by calling the first flow table, and changes the destination MAC address of the communication data packet to the MAC address of the target virtual machine, thereby obtaining the address translation processing result. The address processing bridge returns the address translation processing result to the network forwarding device, so that the network forwarding device can send the address translation processing result to the target virtual machine through the core device.
10. The cloud computing service platform according to claim 8 or 9, characterized in that, The network forwarding device includes a qr port, a qg port, and an Sg port; the address processing bridge includes a first port corresponding to the qr port, a second port corresponding to the qg port, and a third port corresponding to the Sg port.
Citation Information
Patent Citations
Data packet sending method and device, and network architecture
CN107770062A
User plane centralizing unit, data processing device and data processing method
CN111277516A