CN110875884B - Traffic migration system, data processing method and device - Google Patents

Traffic migration system, data processing method and device Download PDF

Info

Publication number
CN110875884B
CN110875884B CN201811012514.3A CN201811012514A CN110875884B CN 110875884 B CN110875884 B CN 110875884B CN 201811012514 A CN201811012514 A CN 201811012514A CN 110875884 B CN110875884 B CN 110875884B
Authority
CN
China
Prior art keywords
data packet
packet
encapsulation
address
response data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811012514.3A
Other languages
Chinese (zh)
Other versions
CN110875884A (en
Inventor
梁军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811012514.3A priority Critical patent/CN110875884B/en
Publication of CN110875884A publication Critical patent/CN110875884A/en
Application granted granted Critical
Publication of CN110875884B publication Critical patent/CN110875884B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to the field of hybrid clouds, in particular to a traffic migration system, which comprises: the public cloud router sends a target data packet to the machine room router, receives a response data packet sent by the machine room router and sends a first package packet of the response data packet to the public cloud gateway; a gateway of the public cloud receives a first encapsulation packet of a response data packet sent by a router of the public cloud and sends a second encapsulation packet of the response data packet to a load balancing server; the load balancing server receives a second encapsulation packet of the response data packet sent by the gateway of the public cloud, obtains the response data packet from the second encapsulation packet of the response data packet, and sends the response data packet to the client; compared with the prior art, the service flow deployed in the user IDC machine room can be migrated to the load balancing server of the user in the VPC environment through the machine room router, and then the user can receive the response data packet of the machine room server through the client to manage the flow.

Description

Traffic migration system, data processing method and device
Technical Field
The invention relates to the field of cloud computing, in particular to a traffic migration system, a data processing method and a data processing device.
Background
Along with the development of cloud computing, the value of cloud computing is gradually accepted by various enterprises, and many enterprises develop cloud computing services in a dispute. Cloud computing typically has three modalities, namely public cloud, private cloud, and hybrid cloud. In public cloud environments, enterprises provide services to external users through own infrastructure, and the external users access the services through the internet and do not directly own cloud resources. In the private cloud environment, it is necessary to construct a private cloud that is used solely for the enterprise itself on an infrastructure owned by the enterprise. The hybrid cloud is a hybrid IT architecture, is an integration of public cloud and private cloud, and has the cost advantage of the public cloud and the security of the private cloud.
The hybrid cloud merges public cloud and private cloud, and the existing hybrid cloud is generally realized by setting up private line network connection between a VPC (Virtual Private Cloud ) and the network environment of an enterprise. VPC is a virtual network in a public cloud environment that provides a private cloud environment for tenants. For enterprises which already deploy services in the local IDC machine room, when the server in the IDC is replaced due to overserving or damage, users can purchase more ECSs (Elastic Compute Service, cloud servers) on public clouds to replace damaged physical machines in addition to replacing the server, so that the users gradually migrate to the clouds. However, the corresponding service of the user in IDC also needs to be deployed again on the cloud, and is usually deployed in one ECS in VPC. If there is a single point failure of the ECS in the VPC environment in the service deployment process, the service deployment will often fail.
The load balancing server can be used in the VPC environment to eliminate single-point faults, and service traffic is ensured to be distributed to each ECS through the load balancing server. In the prior art, an ECS is usually created in a hybrid cloud and is hung down in a load balancing server, so that the distribution of service traffic is realized. There is no effective technical solution for traffic migration between a load balancing server in a VPC and a user IDC room.
Disclosure of Invention
The embodiment of the invention provides a flow migration system to solve the problems existing in the prior art. The embodiment of the invention also provides a flow migration method and a flow migration device.
The embodiment of the invention provides a flow migration system, which comprises: the system comprises a machine room router, a public cloud gateway and a load balancing server;
the public cloud router is used for sending the target data packet to the machine room router, receiving the response data packet sent by the machine room router and sending a first package packet of the response data packet to the public cloud gateway;
the public cloud gateway is used for receiving a first encapsulation packet of the response data packet sent by the public cloud router and sending a second encapsulation packet of the response data packet to the load balancing server;
The load balancing server is configured to receive a second encapsulation packet of the response data packet sent by the public cloud gateway, obtain the response data packet from the second encapsulation packet of the response data packet, and send the response data packet to the client.
Optionally, the method further comprises: the machine room server is used for receiving the target data packet sent by the machine room router and sending a response data packet of the target data packet to the machine room router;
the destination IP address of the target data packet is the IP address of the machine room server, and the destination IP address of the response data packet is the private network IP address of the load balancing server.
Optionally, the source IP address of the first encapsulation packet of the reply data packet and the source IP address of the second encapsulation packet of the reply data packet are both IP addresses of the public cloud router.
Optionally, the method further comprises: and the client is used for configuring the machine room server as a back-end server of the load balancing server.
Optionally, the load balancing server is further configured to convert a public network IP address of the load balancing server into a private network IP address of the load balancing server, and store IP conversion information in the load balancing server.
Optionally, the load balancing server is further configured to receive the target data packet sent by the client, and encapsulate the target data packet into a first encapsulation packet of the target data packet;
the source IP address of the target data packet is the private network IP address of the load balancing server, the source IP address of the first encapsulation packet of the target data packet is the public network IP address of the load balancing server, and the destination IP address of the first encapsulation packet of the target encapsulation packet is the IP address of the public cloud gateway.
Optionally, the public cloud gateway is further configured to receive a first encapsulation packet of the target data packet sent by the load balancing server, replace a destination IP address of the first encapsulation packet of the target data packet with an IP address of the public cloud router, and form a second encapsulation packet of the target data packet;
and the gateway of the public cloud sends the second encapsulation packet of the target data packet to the router of the public cloud.
Optionally, the public cloud router is further configured to receive a second encapsulation packet of the target data packet sent by the public cloud gateway, and send the target data packet to the machine room router after decapsulating the second encapsulation packet of the target data packet.
Optionally, the method further comprises: and the physical machine is used for receiving the target data packet sent by the public cloud gateway or sending the response data packet to the public cloud gateway.
The embodiment of the invention also provides a data processing method which is applied to the load balancing server, and the method comprises the following steps:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
obtaining a second encapsulation packet fed back by the gateway of the public cloud;
obtaining the response data packet from the second encapsulation packet, wherein the response data packet corresponds to the request data packet;
and sending the response data packet to the client.
Optionally, the source IP address of the request packet is a private network IP address of the load balancing server.
Optionally, the source IP address of the first encapsulation packet of the request packet is a public network IP address of the load balancing server.
Optionally, the destination IP address of the reply packet is a private network IP address of the load balancing server.
The embodiment of the invention also provides a data processing device, which is applied to the load balancing server, and comprises:
the first acquisition module is used for acquiring a request data packet from a client;
the encapsulation module is used for encapsulating the request data packet into a first encapsulation packet and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
the first sending module is used for sending the first encapsulation packet to a gateway of the public cloud according to the destination IP address of the first encapsulation packet;
the second acquisition module is used for acquiring a second encapsulation packet fed back by the gateway of the public cloud;
the unpacking module is used for obtaining the response data packet from the second packaging packet, and the response data packet corresponds to the target data packet;
and the second sending module is used for sending the response data packet to the client.
The embodiment of the invention also provides a data processing method, which is characterized by being applied to the public cloud router, and comprises the following steps:
obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
sending the target data packet to a machine room router;
Obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
Optionally, the public cloud router is connected with the machine room server through a physical private line or a high-speed channel.
The embodiment of the invention also provides a data processing device which is applied to the public cloud router, and the device comprises:
the first acquisition module is used for acquiring a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
the unpacking module is used for unpacking the second packaging packet of the target data packet to obtain the target data packet;
the first sending module is used for sending the target data packet to the machine room router;
the second acquisition module is used for acquiring a response data packet aiming at the target data packet, which is provided by the machine room router;
the packaging module is used for packaging the response data packet into a first packaging packet of the response data packet;
and the second sending module is used for sending the first encapsulation packet of the response data packet to the gateway of the public cloud.
The embodiment of the invention also provides a data processing method, which comprises the following steps:
the load balancing computing equipment is positioned in the first network domain and used for receiving a network request of the client;
the load balancing computing equipment modifies the target address of the network request into a cloud server positioned in a second network domain or modifies the target address of the network request into a local server positioned in a third network domain according to a preset rule;
the load balancing computing device sends the network request to a forwarding computing device located in a second network domain, wherein the forwarding computing device is configured to forward the first network request to the cloud server or the local server.
Optionally, the first network domain includes a private cloud; the second network domain includes a public cloud; the forwarding computing device includes a cloud gateway.
The embodiment of the invention provides a traffic migration system, which specifically comprises the steps of sending a response data packet to a public cloud router through a machine room router, and encapsulating the response data packet by the public cloud router to form a first encapsulation packet of the response data packet; transmitting the second encapsulation packet to a load balancing server; after the load balancing server unpacks the response data packet, the response data packet is sent to the client.
Compared with the prior art, through the data packet transmission between the load balancing server and the IDC machine room server, the service flow deployed in the IDC machine room by the user can be migrated to the load balancing server in the VPC environment by the machine room router, and then the user can receive the response data packet of the machine room server by the client side to manage the flow.
Drawings
FIG. 1 is a schematic diagram of a real-time environment in accordance with various embodiments of the present invention;
FIG. 2 is a schematic diagram of a flow migration system according to an embodiment of the present invention;
FIG. 3 is a flow chart of a data processing method according to one embodiment of the present invention;
FIG. 4 is a flow chart of a data processing method according to another embodiment of the present invention;
FIG. 5 is a schematic diagram of a data processing apparatus according to one embodiment of the present invention;
fig. 6 is a schematic diagram of a data processing apparatus according to another embodiment of the present invention.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. The present invention may be embodied in many other forms than those herein described, and those skilled in the art will readily appreciate that the present invention may be similarly embodied without departing from the spirit or essential characteristics thereof, and therefore the present invention is not limited to the specific embodiments disclosed below.
In the present application, a flow migration system, a flow migration method, and a flow migration apparatus are provided, respectively, and are described in detail in the following embodiments. In order to facilitate understanding of the technical solution provided by the present application, before describing the embodiments in detail, the technical solution of the present application will be briefly described.
Please refer to fig. 1, which is a schematic diagram illustrating a real-time environment according to an embodiment of the present application. The implementation environment comprises: client, hybrid cloud, and IDC room.
According to one embodiment of the application, the client is generally used as a portal of the hybrid cloud system, and an application client or a browser is installed, and a web page client of the application program is accessed through the browser. The application client and the web page client are collectively referred to as clients in the embodiments of the present application, and are not specifically described below.
According to one embodiment of the application, the hybrid cloud comprises an SLB server (also called a load balancing server), or a service cluster formed by a plurality of SLB servers, and the load balancing server is used for interacting with a client to meet the requirement of a user for accessing resources on the cloud.
IDC room (Internet Data Center ) generally refers to an IDC room where an enterprise deploys a service locally, and the IDC room includes a plurality of room servers, which may be a physical machine or a virtual machine, or a combination of physical and virtual machines. According to the embodiment of the application, after the IDC machine room is connected with the hybrid cloud, a user can access the resources of the machine room server in the IDC machine room through the entrance of the load balancing server in the hybrid cloud, and enterprise services can be deployed on the hybrid cloud and the IDC machine room at the same time, so that migration of the user services from the local to the cloud is realized.
It should be noted first that, in the various embodiments of the present invention, the terms involved are:
public clouds are typically clouds provided by third party providers for use by users. Users access services via the internet and do not own cloud computing resources. In public cloud environments, the network of the tenant may be custom, referred to as an overlay network, and virtual machines inside the overlay network may communicate with each other, where the overlay typically implements tenant network isolation through tunneling techniques such as VXLAN (Virtual eXtensible Local Area Network ) and NVGRE protocols, and instances running in the overlay network are typically virtual machines and network instances of the tenant, such as load balancing instances.
The VPC is a common public infrastructure product, is used for providing a technical solution of a private cloud environment for users in a public cloud environment, is a private network environment or a network container constructed on the cloud by the users, and is isolated at a network layer by different tenants to realize higher security. VPC is also a dynamic pool of public cloud computing resources that requires the use of encryption protocols, tunneling protocols, and other security procedures to transfer data between private and public clouds.
Private clouds, typically built for individual use by a customer, are meant to be proprietary resources. The private cloud may be built by the company's IT organization itself, or by a cloud provider, which provides effective control over data, security, and quality of service. The private cloud has high controllability because of small external interference factors of the environment.
The hybrid cloud is an IT architecture, is an integration of public cloud and private cloud, and changes the public cloud and the private cloud into a complete internal network through internet private line or VPN connection between the private cloud and the VPC, so that the security of private cloud data is ensured, and the product functions of the public cloud and the elasticity of computing resources can be utilized.
VPN technology is one of the important technologies that routers have, and the core of VPN is to build a virtual private network using a public network. The method is used for the secure network access from the private cloud of the user or the private machine room to the public cloud in the mixed cloud scene, and can be understood as an enterprise internal private line which is virtualized. It can establish a proprietary communication line between two or more internal networks located in different places connected to the Internet through a special encrypted communication protocol.
The SLB (Server Load Balancing ) is divided into a public network instance and a private network instance, the public network SLB provides services towards the internet, and the private network instance provides services towards the network address used and provides services towards the private network address into the VPC.
The public cloud gateway provides routing addressing service for servers in the VPC on the public cloud, can address the physical server IP address bearing the virtual IP address through the virtual IP address of the server, and correctly forwards data packets with destination addresses being the virtual server IP to the corresponding physical server through tunnels.
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following detailed description of the present invention will be made in real time with reference to the accompanying drawings.
Fig. 2 is a schematic structural diagram of a flow migration system according to an embodiment of the present invention, where the flow migration system includes: the system comprises a machine room router, a public cloud gateway and a load balancing server;
the computer room router is positioned in the IDC computer room, and a server in the IDC computer room is used for storing the service deployed locally by the user.
The public cloud router is used for sending a target data packet to the machine room router, receiving a response data packet sent by the machine room router and sending a first package packet of the response data packet to a public cloud gateway;
Specifically, the public cloud router and the machine room router are connected through a physical private line or a high-speed channel in advance, so that the target data packet and the response data packet are reachable by the route between the machine room router and the public cloud router, and a specific connection method belongs to the prior art and is not repeated herein.
The destination IP address of the target data packet is the same as the source IP address of the response data packet, and the corresponding relationship between the IP address of the public cloud router and the source IP address of the response data packet is stored in the routing table of the computer room router. And the computer room router searches the information of the routing table according to the corresponding relation of the IP addresses and sends the response data packet to the public cloud router.
Specifically, after receiving the response data packet, the public cloud router encapsulates the response data packet through the VXLAN technology to obtain a first encapsulated packet of the response data packet. The source IP address in the first package of the response data packet is the IP address of the public cloud router, and the corresponding relation between the IP address of the public cloud router and the IP address of the public cloud gateway is stored in the routing table of the public cloud router. And the router of the public cloud searches the information of the routing table according to the corresponding relation of the IP addresses, and sends the first encapsulation packet of the response data packet to the gateway of the public cloud.
The public cloud gateway is used for receiving a first encapsulation packet of the response data packet sent by the public cloud router, replacing the first encapsulation packet of the response data packet with a second encapsulation packet of the response data packet, and sending the second encapsulation packet of the response data packet to the load balancing server;
specifically, the public cloud gateway stores the network segment address of the source address conversion pool of the load balancing server, and when the destination IP address of the response data packet is the network segment address of the source address conversion pool of the load balancing server, the public cloud gateway sends the response data packet to the load balancing server.
Specifically, the first encapsulation packet of the response data packet is replaced by the second encapsulation packet of the response data packet, and the specific conversion process is as follows: the destination address of the first encapsulation packet of the response data packet is replaced by the private network IP address of the load balancing server, so that the destination IP address of the second encapsulation packet is formed;
the source IP address of the first encapsulation packet of the response data packet and the source IP address of the second encapsulation packet of the response data packet are both IP addresses of the public cloud router. And transmitting a second encapsulation packet of the response data packet to the load balancing server through the conversion of the IP address.
The load balancing server is used for receiving the second encapsulation packet of the response data packet sent by the gateway of the public cloud, obtaining the response data packet from the second encapsulation packet of the response data packet, and sending the response data packet to the client.
In summary, in the traffic migration system provided by the embodiment of the present invention, a response data packet is sent to a public cloud router through a machine room router, and the response data packet is encapsulated by the public cloud router to form a first encapsulation packet of the response data packet; after receiving the first encapsulation packet sent by the public cloud router, the public cloud gateway replaces the destination IP address of the first encapsulation packet to form a second encapsulation packet of the response data packet, and then sends the second encapsulation packet to the load balancing server; after the load balancing server unpacks the response data packet, the response data packet is sent to the client after corresponding conversion of the IP address.
Compared with the prior art, the service traffic deployed by the user in the IDC machine room can be migrated to the load balancing server of the user in the VPC environment through the machine room router, so that public cloud and the IDC machine room server are connected, and the user can manage the traffic through the client. As shown in fig. 2, the public cloud router, the public cloud gateway and the load balancing server all belong to entities in the VPC network environment, the VPC network environment can operate on the public cloud, and the IDC room server is independent of the public cloud. In addition, the destination IP address and the source IP address of the service flow are kept unchanged in the migration process, and the user cannot feel the change of the IP address in the migration process by packaging the response data packet and changing the destination IP address and the source IP address of the packaged packet, so that the seamless migration of the flow is realized.
In an alternative embodiment of the present invention, the traffic migration system further comprises: the computer room server is used for receiving the target data packet sent by the computer room router and sending a response data packet of the target data packet to the computer room router;
the destination IP address of the target data packet is the IP address of the machine room server, and the destination IP address of the response data packet is the private network IP address of the load balancing server.
The machine room server and the machine room router are both arranged in the user IDC machine room, and the machine room server can send response data packets to the machine room router in a routing manner, and specifically, the machine room server can be a virtual machine or a physical machine.
In an alternative embodiment of the present invention, the traffic migration system further comprises: and the client is used for configuring the machine room server as a back-end server of the load balancing server.
Specifically, the machine room server is used as a physical machine or virtual machine in the public cloud VPC environment, and the destination IP address of the machine room server is added as the IP address of the physical machine or virtual machine.
In an optional embodiment of the invention, the load balancing server is further configured to convert a public network IP address of the load balancing server into a private network IP address of the load balancing server, and store the IP conversion information in the load balancing server.
Specifically, the load balancing server stores a network segment address of the active address conversion pool, the network segment address is used in a public cloud VPC environment, when the client accesses the public cloud VPC to receive the response data packet, the response data packet is sent and received in the public network, the destination IP address of the response data packet is the IP address of the client, and the source IP address is the public network IP address of the load balancing server. The destination IP address of the response data packet in the VPC private network environment is the private network IP address of the load balancer, and the source IP address is the IP address of the machine room server.
The method comprises the steps that a Session table is stored in a load balancing server in advance, the Session table stores corresponding conversion information of a source IP address and a destination IP address, when a response data packet is required to be routed to a public network by a VPC, the source IP address of the response data packet is converted into the public network IP address of the load balancing server from the IP address of a machine room server, the destination IP address of the response data packet is converted into the IP address of a client from the private network IP address of a load balancing server, and the user receives the response data packet through the conversion of the IP address.
In an optional embodiment of the present invention, the load balancing server is further configured to receive a target data packet sent by the client, and encapsulate the target data packet into a first encapsulation packet of the target data packet;
The source IP address of the target data packet is the private network IP address of the load balancing server, the source IP address of the first encapsulation packet of the target data packet is the public network IP address of the load balancing server, and the destination IP address of the first encapsulation packet of the target encapsulation packet is the IP address of the public cloud gateway.
In an optional embodiment of the present invention, the public cloud gateway is further configured to receive a first encapsulation packet of the target data packet sent by the load balancing server, and replace a destination IP address of the first encapsulation packet of the target data packet with an IP address of a public cloud router to form a second encapsulation packet of the target data packet;
and the gateway of the public cloud sends the second encapsulation packet of the target data packet to the router of the public cloud.
In an optional embodiment of the present invention, the public cloud router is further configured to receive a second encapsulation packet of the target data packet sent by the public cloud gateway, and send the target data packet to the machine room router after decapsulating the second encapsulation packet of the target data packet.
In an alternative embodiment of the present invention, the traffic migration system further comprises: and the physical machine is used for receiving the target data packet sent by the public cloud gateway or sending the response data packet to the public cloud gateway.
Referring to fig. 3, a flowchart of a data processing method according to an embodiment of the present invention may be applied to a load balancing server, where the data processing method includes:
step S101: obtaining a request data packet from a client;
the source IP address of the request data packet is the IP address of the client, and the destination address is the IP address of the machine room server. Before the client sends the request data packet to the load balancing server, the machine room server needs to be added as the back end server of the load balancing server, so that the IP address of the machine room server is known in advance.
The load balancing server is used as a traffic inlet of the public network, and after receiving a request data packet sent by the client, the load balancing server forwards the request data packet in the VPC private network environment. At this time, the load balancing server performs conversion of the IP address. The IP addresses before and after conversion are shown in table 1:
TABLE 1
Before transformation After transformation
Source IP address The client side includes: 220.2.2.2 SLB private network: 10.0.1.1
Destination IP address SLB public network such as: 120.1.1.1 Machine room server: 192.168.1.1
As can be seen from table 1, the source IP address of the converted request packet is the private IP address of the load balancing server, the destination IP address is the IP address of the machine room server, and the IP conversion information is stored as a Session table in the load balancing server. In the subsequent step, the request data packets all refer to the destination data packets after the IP address conversion.
Step S102: encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
the source IP address of the first package is the public network IP address of the load balancing server, and the destination IP address of the first package is the IP address of the gateway of the public cloud.
Step S103: according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
step S104: obtaining a second encapsulation packet fed back by the gateway of the public cloud;
the source IP address of the second package is the IP address of the gateway of the public cloud, and the destination IP address of the second package is the public network IP address of the load balancing server.
Step S105: obtaining the response data packet from the second encapsulation packet, wherein the response data packet corresponds to the request data packet;
the destination IP address of the response data packet is the private network IP address of the complex equilibrium server, and the source IP address is the IP address of the machine room server.
Step S106: and sending the response data packet to the client.
After receiving the response data packet, the load balancing server performs inverse conversion of the IP address according to the stored Session table, specifically referring to table 1, the source IP address of the converted response data packet is the public network IP address of the load balancing server, and the destination IP address of the response data packet is the IP address of the client.
In summary, the data processing method provided by the embodiment of the present invention specifically includes that a request data packet provided by a client is obtained, and the request data packet is packaged and then sent to a gateway of public cloud; and sending the response data packet to the client by obtaining the encapsulation packet of the response data packet sent by the gateway of the public cloud.
Compared with the prior art, the load balancing server can be used as an entrance of the public network traffic, the traffic of the public network is migrated to the IDC machine room server of the user through the load balancing server, and the user can manage the traffic through the client. In addition, in the process of transferring the service flow, the destination IP address and the source IP address of the request data packet and the response data packet are kept unchanged, and the user cannot feel the change of the IP address in the process of transferring the flow by packaging the request data packet and the response data packet and changing the destination IP address and the source IP address of the packaged packet, so that the seamless transfer of the flow is realized.
Referring to fig. 4, a flow chart of a data processing method according to another embodiment of the present invention is provided, where the traffic migration method may be applied to a public cloud router, and the traffic migration method includes:
Step S201: obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
the public cloud gateway is positioned in the hybrid cloud system and is used for transmitting and receiving data between the hybrid cloud system and the user IDC machine room; after the client sends the target data packet, in the hybrid cloud system, the load balancing server encapsulates the target data packet for the first time and sends the target data packet to the public cloud gateway, and the public cloud gateway encapsulates the target data packet for the second time and sends the target data packet to the public cloud router.
Specifically, the source IP address of the second encapsulation packet of the target data packet and the source IP address of the first encapsulation packet of the target data packet are both private network IP addresses of the load balancing server, and the destination IP address of the second encapsulation packet of the target data packet is the IP address of the public cloud router. The private network IP address of the load balancing server refers to an IP address in a VPC private network environment in the hybrid cloud system.
Step S202: unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
step S203: sending the target data packet to a machine room router;
the source IP address of the target data packet is the private network IP address of the load balancing server, and the destination IP address of the target data packet is the IP address of the machine room server.
Step S204: obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
the source IP address of the response data packet is the IP address of the machine room server, and the destination IP address of the response data packet is the private network IP address of the load balancing server.
Step S205: encapsulating the response data packet into a first encapsulation packet of the response data packet;
the source IP address of the first package packet of the response data packet is the IP address of the public cloud router, and the destination IP address of the first package packet of the response data packet is the public network IP address of the load balancing server. The public network IP address of the load balancing server refers to an IP address used by the load balancing server to access public network resources with the client.
Step S206: and sending a first encapsulation packet of the response data packet to the public cloud gateway.
In an alternative embodiment of the invention, the public cloud router is connected with the machine room server through a physical special line or a high-speed channel.
In summary, in the data processing method provided by the embodiment of the present invention, the second package of the target data packet provided by the public cloud gateway is obtained, the target data packet is sent to the machine room router after unpacking, the response data packet provided by the machine room router is obtained, and the response data packet is packaged and then the first package of the response data packet is sent to the public cloud gateway.
Compared with the prior art, the public cloud router can migrate the service flow of the public network and the service flow of the IDC machine room server of the user, and the service can be deployed in the mixed cloud system and the IDC machine room environment of the user at the same time. In addition, in the process of transferring the traffic flow, the destination IP address and the source IP address of the destination data packet and the response data packet are kept unchanged, and the user cannot feel the change of the IP address in the process of transferring the traffic flow by packaging the destination data packet and the response data packet and changing the destination IP address and the source IP address of the packaged packet, so that the seamless transfer of the traffic flow is realized.
In the foregoing embodiments, a data processing method is provided, and accordingly, the present invention provides a data processing apparatus, and since the apparatus embodiments are substantially similar to the method embodiments, the description is relatively simple, and relevant portions will only be referred to the corresponding descriptions of the foregoing method embodiments. The device embodiments described below are merely illustrative.
Referring to fig. 5, a schematic diagram of a data processing apparatus according to an embodiment of the present invention may be applied to a load balancing server, where the data processing apparatus includes:
The first acquisition module is used for acquiring a request data packet from a client;
the encapsulation module is used for encapsulating the request data packet into a first encapsulation packet and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
the first sending module is used for sending the first encapsulation packet to a gateway of the public cloud according to the destination IP address of the first encapsulation packet;
the second acquisition module is used for acquiring a second encapsulation packet fed back by the gateway of the public cloud;
the unpacking module is used for obtaining the response data packet from the second packaging packet, and the response data packet corresponds to the target data packet;
and the second sending module is used for sending the response data packet to the client.
Referring to fig. 6, a schematic diagram of a data processing apparatus according to another embodiment of the present invention is provided, where the data processing apparatus may be applied to a public cloud router, and the data processing apparatus includes:
the first acquisition module is used for acquiring a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
the unpacking module is used for unpacking the second packaging packet of the target data packet to obtain the target data packet;
The first sending module is used for sending the target data packet to the machine room router;
the second acquisition module is used for acquiring a response data packet aiming at the target data packet, which is provided by the machine room router;
the packaging module is used for packaging the response data packet into a first packaging packet of the response data packet;
and the second sending module is used for sending the first encapsulation packet of the response data packet to the gateway of the public cloud.
The embodiment of the invention discloses an electronic device, which comprises: a processor; a memory for storing a traffic migration program which, when read and executed by the processor, performs the following operations:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
obtaining a second encapsulation packet fed back by the gateway of the public cloud;
obtaining the response data packet from the second encapsulation packet, wherein the response data packet corresponds to the target data packet;
and sending the response data packet to the client.
The embodiment of the invention additionally discloses an electronic device, which comprises: a processor; a memory for storing a traffic migration program which, when read and executed by the processor, performs the following operations:
obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
sending the target data packet to a machine room router;
obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
The embodiment of the invention discloses a computer readable storage medium, on which a computer program is stored, characterized in that the program when executed by a processor realizes the following steps:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
Obtaining a second encapsulation packet fed back by the gateway of the public cloud;
obtaining the response data packet from the second encapsulation packet, wherein the response data packet corresponds to the target data packet;
and sending the response data packet to the client.
The embodiment of the invention further discloses a computer readable storage medium having stored thereon a computer program, characterized in that the program when executed by a processor realizes the steps of:
obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
sending the target data packet to a machine room router;
obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
In addition to the above technical scheme, the embodiment of the invention further provides a data processing method, which includes:
the load balancing computing equipment is positioned in the first network domain and used for receiving a network request of the client;
the load balancing computing equipment modifies the target address of the network request into a cloud server positioned in a second network domain or modifies the target address of the network request into a local server positioned in a third network domain according to a preset rule;
The load balancing computing device sends the network request to a forwarding computing device located in a second network domain, wherein the forwarding computing device is configured to forward the first network request to the cloud server or the local server.
Wherein the network domain is a collection of computers with security boundaries, computers in the same domain have established trust relationships with each other, access to other machines in the domain, and no longer need permission from the accessed machine. The first network domain may include a private cloud, which may include load balancing computing devices therein, which may be SLBs, for example. The second network domain may include a public cloud, which may include a cloud server, a router, and a forwarding computing device, which may include a cloud gateway.
While the invention has been described in terms of preferred embodiments, it is not intended to be limiting, but rather, it will be apparent to those skilled in the art that various changes and modifications can be made herein without departing from the spirit and scope of the invention as defined by the appended claims.
In one typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.
1. Computer readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device. Computer readable media, as defined herein, does not include non-transitory computer readable media (transmission media), such as modulated data signals and carrier waves.
2. It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
While the invention has been described in terms of preferred embodiments, it is not intended to be limiting, but rather, it will be apparent to those skilled in the art that various changes and modifications can be made herein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (21)

1. The traffic migration system is characterized by comprising a machine room router, a public cloud gateway and a load balancing server;
the public cloud router is used for sending a target data packet to the machine room router, receiving a response data packet sent by the machine room router, sending a first encapsulation packet of the response data packet to the public cloud gateway, receiving a second encapsulation packet of the target data packet sent by the public cloud gateway, and decapsulating the second encapsulation packet of the target data packet to obtain the target data packet;
The public cloud gateway is used for receiving a first package packet of the response data packet sent by the public cloud router, sending a second package packet of the response data packet to the load balancing server, receiving a first package packet of a target data packet sent by the load balancing server, performing secondary package on the first package packet of the target data packet to obtain a second package packet of the target data packet, and sending the second package packet of the target data packet to the public cloud router;
the load balancing server is configured to receive a second encapsulation packet of the response data packet sent by the public cloud gateway, obtain the response data packet from the second encapsulation packet of the response data packet, send the response data packet to a client, and receive the target data packet sent by the client, encapsulate the target data packet into the first encapsulation packet of the target data packet, and send the first encapsulation packet to the public cloud gateway.
2. A system according to claim 1, further comprising: the machine room server is used for receiving the target data packet sent by the machine room router and sending a response data packet of the target data packet to the machine room router;
The destination IP address of the target data packet is the IP address of the machine room server, and the destination IP address of the response data packet is the private network IP address of the load balancing server.
3. A system according to claim 1, wherein the source IP address of the first encapsulated packet of the reply packet and the source IP address of the second encapsulated packet of the reply packet are both IP addresses of the public cloud router.
4. A system according to claim 1, further comprising: and the client is used for configuring the machine room server as a back-end server of the load balancing server.
5. The system of claim 4, wherein the load balancing server is further configured to translate a public network IP address of the load balancing server to a private network IP address of the load balancing server, and store the IP translation information in the load balancing server.
6. The system of claim 5, wherein the load balancing server is further configured to receive the target data packet sent by the client, and encapsulate the target data packet into a first encapsulated packet of the target data packet;
The source IP address of the target data packet is the private network IP address of the load balancing server, the source IP address of the first encapsulation packet of the target data packet is the public network IP address of the load balancing server, and the destination IP address of the first encapsulation packet of the target encapsulation packet is the IP address of the public cloud gateway.
7. The system of claim 5, wherein the public cloud gateway is further configured to receive the first encapsulated packet of the target data packet sent by the load balancing server, and replace a destination IP address of the first encapsulated packet of the target data packet with an IP address of the public cloud router to form a second encapsulated packet of the target data packet;
and the gateway of the public cloud sends the second encapsulation packet of the target data packet to the router of the public cloud.
8. The system of claim 5, wherein the public cloud router is further configured to receive a second encapsulation packet of the target data packet sent by the public cloud gateway, and to decapsulate the second encapsulation packet of the target data packet, and then send the target data packet to the machine room router.
9. A system according to claim 1, further comprising: and the physical machine is used for receiving the target data packet sent by the public cloud gateway or sending the response data packet to the public cloud gateway.
10. A data processing method, applied to a load balancing server, the method comprising:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
obtaining a second encapsulation packet fed back by the gateway of the public cloud, wherein the second encapsulation packet is obtained by replacing the first encapsulation packet of the response data packet with the second encapsulation packet of the response data packet;
obtaining a response data packet from the second encapsulation packet, wherein the response data packet corresponds to the request data packet;
and sending the response data packet to the client.
11. A method according to claim 10, wherein the source IP address of the request packet is the private IP address of the load balancing server.
12. A method according to claim 10, wherein the source IP address of the first encapsulated packet of the request packet is the public network IP address of the load balancing server.
13. A method according to claim 10, wherein the destination IP address of the reply packet is the private IP address of the load balancing server.
14. A data processing apparatus for use with a load balancing server, the apparatus comprising:
the first acquisition module is used for acquiring a request data packet from a client;
the encapsulation module is used for encapsulating the request data packet into a first encapsulation packet and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
the first sending module is used for sending the first encapsulation packet to a gateway of the public cloud according to the destination IP address of the first encapsulation packet;
the second acquisition module is used for acquiring a second encapsulation packet fed back by the public cloud gateway, wherein the second encapsulation packet is obtained by replacing the first encapsulation packet of the response data packet;
the unpacking module is used for obtaining a response data packet from the second packaging packet, and the response data packet corresponds to the target data packet;
and the second sending module is used for sending the response data packet to the client.
15. A data processing method, applied to a public cloud router, comprising:
obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
Sending the target data packet to a machine room router;
obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
16. A method according to claim 15, wherein the public cloud router is connected to the machine room server via a physical dedicated line or a high-speed channel.
17. A data processing apparatus for use with a public cloud router, the apparatus comprising:
the first acquisition module is used for acquiring a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
the unpacking module is used for unpacking the second packaging packet of the target data packet to obtain the target data packet;
the first sending module is used for sending the target data packet to the machine room router;
the second acquisition module is used for acquiring a response data packet aiming at the target data packet, which is provided by the machine room router;
the packaging module is used for packaging the response data packet into a first packaging packet of the response data packet;
and the second sending module is used for sending the first encapsulation packet of the response data packet to the gateway of the public cloud.
18. An electronic device, comprising: a processor; a memory for storing a traffic migration program which, when read and executed by the processor, performs the following operations:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
obtaining a second encapsulation packet fed back by the gateway of the public cloud, wherein the second encapsulation packet is obtained by replacing the first encapsulation packet of the response data packet with the second encapsulation packet of the response data packet;
obtaining a response data packet from the second encapsulation packet, wherein the response data packet corresponds to the target data packet;
and sending the response data packet to the client.
19. An electronic device, comprising: a processor; a memory for storing a traffic migration program which, when read and executed by the processor, performs the following operations:
obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
Sending the target data packet to a machine room router;
obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
20. A computer readable storage medium having stored thereon a computer program, characterized in that the program when executed by a processor performs the steps of:
obtaining a request data packet from a client;
encapsulating the request data packet into a first encapsulation packet, and setting a destination IP address of the first encapsulation packet for the first encapsulation packet;
according to the destination IP address of the first encapsulation packet, the first encapsulation packet is sent to a gateway of public cloud;
obtaining a second encapsulation packet fed back by the gateway of the public cloud, wherein the second encapsulation packet is obtained by replacing the first encapsulation packet of the response data packet with the second encapsulation packet of the response data packet;
obtaining a response data packet from the second encapsulation packet, wherein the response data packet corresponds to the target data packet;
and sending the response data packet to the client.
21. A computer readable storage medium having stored thereon a computer program, characterized in that the program when executed by a processor performs the steps of:
Obtaining a second encapsulation packet of the target data packet provided by the gateway of the public cloud;
unpacking the second encapsulation packet of the target data packet to obtain the target data packet;
sending the target data packet to a machine room router;
obtaining a response data packet aiming at the target data packet, which is provided by the machine room router;
encapsulating the response data packet into a first encapsulation packet of the response data packet;
and sending a first encapsulation packet of the response data packet to the public cloud gateway.
CN201811012514.3A 2018-08-31 2018-08-31 Traffic migration system, data processing method and device Active CN110875884B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811012514.3A CN110875884B (en) 2018-08-31 2018-08-31 Traffic migration system, data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811012514.3A CN110875884B (en) 2018-08-31 2018-08-31 Traffic migration system, data processing method and device

Publications (2)

Publication Number Publication Date
CN110875884A CN110875884A (en) 2020-03-10
CN110875884B true CN110875884B (en) 2023-10-31

Family

ID=69715469

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811012514.3A Active CN110875884B (en) 2018-08-31 2018-08-31 Traffic migration system, data processing method and device

Country Status (1)

Country Link
CN (1) CN110875884B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113765801B (en) * 2020-07-16 2024-02-09 北京京东尚科信息技术有限公司 Message processing method and device applied to data center, electronic equipment and medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414761A (en) * 2013-07-23 2013-11-27 北京工业大学 Mobile terminal cloud resource scheduling method based on Hadoop framework
CN104618379A (en) * 2015-02-04 2015-05-13 北京天地互连信息技术有限公司 IDC service scene-oriented security service arranging method and network structure
CN105591863A (en) * 2014-10-20 2016-05-18 中兴通讯股份有限公司 Method and device for realizing interworking between virtual private cloud network and external network
CN106998284A (en) * 2016-01-25 2017-08-01 阿里巴巴集团控股有限公司 The network system and method for private network are connected by virtual private networks
CN107566150A (en) * 2016-07-01 2018-01-09 华为技术有限公司 Handle the method and physical node of cloud resource
CN107872542A (en) * 2016-09-27 2018-04-03 阿里巴巴集团控股有限公司 The method and the network equipment of a kind of data transfer

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083709B2 (en) * 2012-05-11 2015-07-14 Cisco Technology, Inc. Virtual internet protocol migration and load balancing
US20160019084A1 (en) * 2014-07-18 2016-01-21 Eco4Cloud S.R.L. Method and system for inter-cloud virtual machines assignment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103414761A (en) * 2013-07-23 2013-11-27 北京工业大学 Mobile terminal cloud resource scheduling method based on Hadoop framework
CN105591863A (en) * 2014-10-20 2016-05-18 中兴通讯股份有限公司 Method and device for realizing interworking between virtual private cloud network and external network
CN104618379A (en) * 2015-02-04 2015-05-13 北京天地互连信息技术有限公司 IDC service scene-oriented security service arranging method and network structure
CN106998284A (en) * 2016-01-25 2017-08-01 阿里巴巴集团控股有限公司 The network system and method for private network are connected by virtual private networks
CN107566150A (en) * 2016-07-01 2018-01-09 华为技术有限公司 Handle the method and physical node of cloud resource
CN107872542A (en) * 2016-09-27 2018-04-03 阿里巴巴集团控股有限公司 The method and the network equipment of a kind of data transfer

Also Published As

Publication number Publication date
CN110875884A (en) 2020-03-10

Similar Documents

Publication Publication Date Title
CN112470436B (en) Systems, methods, and computer-readable media for providing multi-cloud connectivity
US10541836B2 (en) Virtual gateways and implicit routing in distributed overlay virtual environments
AU2015256010B2 (en) Migration of applications between an enterprise-based network and a multi-tenant network
KR101840904B1 (en) Virtualization gateway between virtualized and non-virtualized networks
JP7413415B2 (en) Communication method, gateway, and management method and device in a hybrid cloud environment
US20160226815A1 (en) System and method for communicating in an ssl vpn
CN109716717A (en) From software-defined network controller management virtual port channel switching equipment peer-to-peer
CN111917649A (en) Virtual private cloud communication and configuration method and related device
US11777897B2 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
JP2019517168A (en) Interconnection between physical and virtual networks
US10237235B1 (en) System for network address translation
CN113364660B (en) Data packet processing method and device in LVS load balancing
AU2023203289A1 (en) Systems and methods for providing a ReNAT communications environment
US20170250949A1 (en) Renat systems and methods
EP4292262A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
CN110875884B (en) Traffic migration system, data processing method and device
CN116582516B (en) Data transmission method, device, system, medium and program product
CN117478446A (en) Cloud network access method, cloud network access equipment and storage medium

Legal Events

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