CN117596284B - Method, device, computer equipment and storage medium for data transmission - Google Patents

Method, device, computer equipment and storage medium for data transmission Download PDF

Info

Publication number
CN117596284B
CN117596284B CN202410071846.8A CN202410071846A CN117596284B CN 117596284 B CN117596284 B CN 117596284B CN 202410071846 A CN202410071846 A CN 202410071846A CN 117596284 B CN117596284 B CN 117596284B
Authority
CN
China
Prior art keywords
gateway
line
private line
channel
private
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
CN202410071846.8A
Other languages
Chinese (zh)
Other versions
CN117596284A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202410071846.8A priority Critical patent/CN117596284B/en
Publication of CN117596284A publication Critical patent/CN117596284A/en
Application granted granted Critical
Publication of CN117596284B publication Critical patent/CN117596284B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

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

Abstract

The present invention relates to a method, an apparatus, a computer device, a storage medium and a computer program product for data transmission, and the embodiments of the present invention may be applied to scenarios such as cloud technology. The method comprises the following steps: acquiring a data message carrying a target virtual address from a switch, and determining a gateway cluster pointed by the target virtual address; under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway; selecting a target special line access device with a special line channel in a connected state from all special line access devices based on the on-off state of the special line channel between the target special line gateway and each special line access device; and transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes. The method can ensure the stability and reliability of data transmission.

Description

Method, device, computer equipment and storage medium for data transmission
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a method, an apparatus, a computer device, and a storage medium for data transmission.
Background
With the continuous development of computer technology, in current cloud computing network products, a cloud computing technology integrating a public cloud platform and a private cloud platform is called hybrid cloud. As more and more enterprises have both external and internal services, in the case of external services, enterprises want to apply public cloud platforms for cost saving, and in the case of internal services, enterprises want to apply private cloud platforms for security, so hybrid clouds are becoming more popular.
At present, cloud manufacturers generally access a plurality of physical lines through a plurality of private line switches, then configure backup routes to links directly connected with the private line switches to realize disaster recovery of the private lines, and when the links are subjected to fault detection under the condition of non-distributed cluster deployment, the backup configuration of the plurality of physical lines needs to be carried by the plurality of private line switches, so that when line faults occur, each route information is needed to realize link switching, and the link switching is easy to cause the stability of data transmission to be reduced. Thus, there is a need for a method that can ensure the stability and reliability of data transmission.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a data transmission method, apparatus, computer device, and storage medium capable of ensuring stability and reliability of data transmission.
In a first aspect, the present application provides a method of data transmission. The method comprises the following steps:
the method comprises the steps that a data message carrying a target virtual address is obtained from a switch, a gateway cluster pointed by the target virtual address is determined, the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in an access device cluster;
under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway;
selecting a target special line access device with a special line channel in a connected state from all special line access devices based on the on-off state of the special line channel between the target special line gateway and each special line access device;
and transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
In a second aspect, the present application further provides a data transmission device. The device comprises:
the gateway cluster determining module is used for acquiring a data message carrying a target virtual address from the switch and determining a gateway cluster pointed by the target virtual address, wherein the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in the access device cluster;
The special line gateway determining module is used for selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway under the condition that the switch and the gateway cluster are connected;
the special line access equipment determining module is used for selecting target special line access equipment with the special line channel in a connected state from the special line access equipment based on the on-off state of the special line channel between the target special line gateway and the special line access equipment;
and the data transmission module is used for transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
In a third aspect, the present application also provides a computer device. The computer device comprises a memory storing a computer program and a processor which when executing the computer program performs the steps of:
the method comprises the steps that a data message carrying a target virtual address is obtained from a switch, a gateway cluster pointed by the target virtual address is determined, the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in an access device cluster;
Under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway;
selecting a target special line access device with a special line channel in a connected state from all special line access devices based on the on-off state of the special line channel between the target special line gateway and each special line access device;
and transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
In a fourth aspect, the present application also provides a computer-readable storage medium. The computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of:
the method comprises the steps that a data message carrying a target virtual address is obtained from a switch, a gateway cluster pointed by the target virtual address is determined, the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in an access device cluster;
under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway;
Selecting a target special line access device with a special line channel in a connected state from all special line access devices based on the on-off state of the special line channel between the target special line gateway and each special line access device;
and transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
In a fifth aspect, the present application also provides a computer program product. The computer program product comprises a computer program which, when executed by a processor, implements the steps of:
the method comprises the steps that a data message carrying a target virtual address is obtained from a switch, a gateway cluster pointed by the target virtual address is determined, the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in an access device cluster;
under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway;
selecting a target special line access device with a special line channel in a connected state from all special line access devices based on the on-off state of the special line channel between the target special line gateway and each special line access device;
And transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
According to the data transmission method, device, computer equipment, storage medium and computer program product, the data message carrying the target virtual address is firstly obtained from the switch, the gateway cluster pointed by the target virtual address is determined, the on-off state of the connecting channel between the switch and each private line gateway is respectively determined, the target private line gateway capable of accurately and reliably transmitting the data message is selected, the on-off state of the private line channel between the target private line gateway and each private line access equipment is considered, and then the target private line access equipment capable of accurately and reliably transmitting the data message is selected, so that the switch, the target private line gateway and the target private line access equipment are used as transmission nodes for data transmission, the intercommunication transmission of data between the cloud and the cloud is realized, and the stability and the reliability of the data transmission can be ensured because the selected channels are all in the communicating state for data transmission.
Drawings
FIG. 1 is an application environment diagram of a method of data transmission in one embodiment;
FIG. 2 is a system environment schematic diagram of data transmission in one embodiment;
FIG. 3 is a flow chart of a method of data transmission in one embodiment;
FIG. 4 is a schematic diagram of a connection channel in one embodiment;
FIG. 5 is a schematic diagram of a private line channel in one embodiment;
fig. 6 is a schematic flow chart of transmitting a data packet by using a switch, a target dedicated line gateway and a target dedicated line access device as transmission nodes in one embodiment;
FIG. 7 is a schematic diagram illustrating the adjustment of the on-off state of a connection channel according to one embodiment;
FIG. 8 is a flow chart of a method of data transmission in another embodiment;
FIG. 9 is a schematic diagram illustrating adjustment of on-off states of a private line channel according to an embodiment;
FIG. 10 is a complete flow diagram of a method of data transmission in one embodiment;
FIG. 11 is a block diagram of a data transmission device in one embodiment;
FIG. 12 is a block diagram of a data transmission device in another embodiment;
FIG. 13 is a block diagram of a data transmission device in yet another embodiment;
FIG. 14 is a block diagram of a data transmission device in yet another embodiment;
fig. 15 is an internal structural view of a computer device in one embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the present application.
With the continuous development of computer technology, in current cloud computing network products, a cloud computing technology integrating a public cloud platform and a private cloud platform is called hybrid cloud. As more and more enterprises have both external and internal services, in the case of external services, enterprises want to apply public cloud platforms for cost saving, and in the case of internal services, enterprises want to apply private cloud platforms for security, so hybrid clouds are becoming more popular. At present, cloud manufacturers generally access a plurality of physical lines through a plurality of private line switches, then configure backup routes to links directly connected with the private line switches to realize disaster recovery of the private lines, and when the links are subjected to fault detection under the condition of non-distributed cluster deployment, the backup configuration of the plurality of physical lines needs to be carried by the plurality of private line switches, so that when line faults occur, each route information is needed to realize link switching, and the link switching is easy to cause the stability of data transmission to be reduced. Thus, there is a need for a method that can ensure the stability and reliability of data transmission.
Therefore, the embodiment of the application provides a data transmission method capable of guaranteeing the stability and reliability of data transmission. The data transmission method provided by the embodiment of the application can be applied to an application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The data storage system may store data that the server 104 needs to process. The data storage system may be integrated on the server 104 or may be located on the cloud or other servers.
Specifically, taking the application of the data transmission method to the server 104 as an example, the server 104 first obtains a data packet carrying a target virtual address from the switch, and determines a gateway cluster pointed by the target virtual address, where the gateway cluster includes a plurality of private gateways, and each private gateway establishes a private channel with each private access device in the access device cluster. Thus, in the case where the switch and the gateway cluster are connected, the server 104 selects the target dedicated line gateway with the connection channel in the connected state from among the dedicated line gateways based on the on-off state of the connection channel between the switch and each dedicated line gateway, and then selects the target dedicated line access device with the dedicated line channel in the connected state from among the dedicated line access devices based on the on-off state of the dedicated line channel between the target dedicated line gateway and each dedicated line access device. Based on the data message, the server uses the switch, the target private line gateway and the target private line access equipment as transmission nodes to transmit the data message. Because the channels in the communication state are selected for data transmission, the stability and the reliability of data transmission can be ensured.
The terminal 102 may be, but not limited to, various desktop computers, notebook computers, smart phones, tablet computers, internet of things devices, and portable wearable devices, where the internet of things devices may be smart speakers, smart televisions, smart air conditioners, smart vehicle devices, and the like. The portable wearable device may be a smart watch, smart bracelet, headset, or the like. The server 104 may be implemented as a stand-alone server or as a server cluster of multiple servers. And the method for data transmission provided by the application embodiment can be applied to various scenes, including but not limited to cloud technology, artificial intelligence and the like.
Further, the method for data transmission provided by the embodiment of the application aims to solve the problem that when distributed clusters are deployed in a hybrid cloud scene, link switching is easy to cause stability of data transmission to be reduced. The system environment of data transmission provided by the embodiment of the present application will be described in detail, and related technologies in a hybrid cloud scenario will be described before the description:
private network (Virtual Private Cloud, VPC): the private network is an exclusive cloud network space constructed based on a cloud platform, provides network services for resources of tenants on the cloud, and is used for completely and logically isolating different private networks. The tenant may customize the network environment, routing tables, security policies, etc. Meanwhile, the private network supports a local Internet data center (Internet Data Center, IDC) that connects networks (Internet), other VPCs, and tenants in various ways.
Internet data center (Internet Data Center, IDC): the internet data center refers to a service platform with perfect equipment (including high-speed internet access bandwidth, high-performance local area network, safe and reliable machine room environment and the like), specialized management and perfect application.
Dedicated line access (DC): private line access provides a scheme for quickly constructing hybrid cloud. And the user opens the connection between the user IDC and the VPC on the cloud platform through a physical dedicated line, so that flexible and reliable hybrid cloud deployment is realized.
Dedicated line gateway (Direct Connect Gateway, DCGW): the private line gateway is a traffic gateway for intercommunication between the user IDC and the VPC on the cloud. Through the dedicated gateway, the user IDC traffic can connect with resources in the VPC.
Private line access device (Direct Connect Private Line, DCPL): the private line access device is typically a commercial switch.
Virtual network (virtual): OVERLAY, OVERLAY in network virtualization is a logical network created on top of the underlying physical network that provides higher levels of network functionality and services by running virtualization technology on the physical network.
Physical network (UNDERLAY): the underrun refers to the underlying physical network that provides the underlying network connections between virtual machines, containers, storage, and other resources in the cloud computing environment.
Bidirectional forwarding detection (Bidirectional Forwarding Detection, BDF): bidirectional forwarding detection is a network protocol for detecting a failure between two forwarding points.
Open shortest path first (Open Shortest Path First, OSPF): OSPF is an interior gateway protocol (Interior Gateway Protocol, IGP) for exchanging routing information between routers within an autonomous system (Autonomous system, AS). It is a link state routing protocol that calculates the shortest path by collecting and exchanging link state information and provides the best routing for data packets.
Virtual internet protocol address (Virtual Internet Protocol, VIP): VIP is a logically existing IP address that is not associated with a particular physical device or host. Instead, it can be dynamically mapped onto multiple physical devices or hosts to achieve load balancing and failover.
Based on the foregoing technology, as shown in the system environment schematic diagram of fig. 2, for the private channel portion, the private gateway in the private gateway cluster 202 is connected to the intra-cloud private network 206 through the Top of Rack (TOR) switch 204, and then the internet data center network 210 is docked through the private access device in the access device cluster 208, so that a forwarding channel for connecting the intra-cloud traffic and the extra-cloud traffic is established through the private channel between the private gateway in the private gateway cluster 202 and the private access device in the access device cluster 208.
Based on the above, the data transmission method provided by the embodiment of the application can be particularly applied to related scenes such as industry cloud of financial securities, wherein virtual private networks VPCs are distributed to all stock dealers in the industry cloud of the financial securities, and the cloud is communicated with a physical network of a stock exchange through a private line channel, so that the virtual private network in the cloud can receive market information and trade information released by the exchange through a cloud private line. The data transmission method provided by the embodiment of the application can ensure the stability and reliability of the transmission of the quotation information and the transaction information.
As can be seen from the foregoing description, the method for data transmission provided in the embodiments of the present application further relates to Cloud technology (Cloud technology), and the Cloud technology will be briefly described below. Cloud technology refers to a hosting technology for unifying serial resources such as hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data.
The cloud technology is a generic term of network technology, information technology, integration technology, management platform technology, application technology and the like based on cloud computing business model application, can form a resource pool, and is flexible and convenient as required. Cloud computing technology will become an important support. Background services of technical networking systems require a large amount of computing, storage resources, such as video websites, picture-like websites, and more portals. Along with the high development and application of the internet industry, each article possibly has an own identification mark in the future, the identification mark needs to be transmitted to a background system for logic processing, data with different levels can be processed separately, and various industry data needs strong system rear shield support and can be realized only through cloud computing.
Among them, hybrid Cloud (Hybrid Cloud) merges Public Cloud (Public Cloud) and Private Cloud (Private Cloud), which are the main modes and development directions of Cloud computing in recent years. Private clouds are mainly for enterprise users, and for safety reasons, enterprises prefer to store data in the private clouds, but at the same time wish to obtain computing resources of public clouds, in which case hybrid clouds are increasingly adopted, and mix and match the public clouds and the private clouds to obtain the best effect.
The following examples are provided to illustrate the invention: in one embodiment, as shown in fig. 3, a method of data transmission is provided, and the method is applied to the server 104 in fig. 1 for illustration, it is to be understood that the method may also be applied to a system including the terminal 102 and the server 104, and implemented through interaction between the terminal 102 and the server 104. In this embodiment, the method includes the steps of:
step 302, a data message carrying a target virtual address is obtained from a switch, and a gateway cluster pointed by the target virtual address is determined, wherein the gateway cluster comprises a plurality of private line gateways, and each private line gateway establishes a private line channel with each private line access device in the access device cluster.
The switch is specifically a network switch, and in order to meet the connection requirement of the mass server, the access switch is generally configured as three architectures of Top of Rack (TOR), end of Row (EOR), middle of Row (MOR). In EOR architecture, access switches are centrally installed in a row of cabinets at the end of the cabinet, with hosts, servers and mini-computers within the cabinet being connected by horizontal cables through permanent links. Secondly, MOR wiring is an improvement on an EOR wiring method, in the MOR framework, the row cabinet is placed in the middle of each row of cabinets, the MOR network cabinets are arranged in the middle of two rows of cabinets of the POD, so that the cable distance from the server cabinet to the network cabinets can be reduced, and cable management and maintenance are simplified. Based on this, in this embodiment, a TOR switch is mainly used, and the TOR access mode is a relatively common routing mode from server to switch or from switch to switch. The TOR switches may be either access layer switches or convergence layer switches or core layer switches. When the TOR switch is positioned at the top of the server cabinet and plays a role of connecting the server with the core layer or convergence layer switch, the TOR switch is called an access layer switch; when the TOR switch is located on top of the switch cabinet, it is referred to as a convergence layer or core layer switch.
Next, the virtual address is specifically the virtual internet protocol address (Virtual Internet Protocol, VIP) introduced above, and one virtual address is used to uniquely point to one gateway cluster. For example, VIP1 points to gateway cluster A1, VIP2 points to gateway cluster A2, VIP3 points to gateway cluster A3, and VIP4 points to gateway cluster A4. Based on this, the gateway cluster includes a plurality of dedicated gateways (Direct Connect Gateway, DCGW), that is, a dedicated gateway cluster 202 as shown in fig. 2, and the dedicated gateway cluster 202 includes a dedicated gateway 1, a dedicated gateway 2, a dedicated gateway 3 to a dedicated gateway N.
Based on the above, each private line gateway establishes a private line channel with each private line access device in the access device cluster, and the private line channels are mutually independent, that is, each private line channel is used for connecting different private line access devices with the private line gateway, and the private line access devices are connected with different access devices on the IDC side. It can be understood that a dedicated gateway belonging to the same gateway cluster will establish a dedicated channel with the same dedicated access device. For example, the gateway cluster A1 includes a dedicated gateway B1, a dedicated gateway B2, a dedicated gateway B3, and a dedicated gateway B4, and a dedicated channel is established between the dedicated gateway B1 and the dedicated access device C1, the dedicated access device C2, the dedicated access device C3, and the dedicated access device C4. Then, a dedicated channel is also established between the dedicated gateway B2 and the dedicated access devices C1 to C4, and similarly, a dedicated channel is also established between the dedicated gateway B3 and the dedicated access devices C1 to C4, and a dedicated channel is also established between the dedicated gateway B4 and the dedicated access devices C1 to C4.
And each private line channel has a pair of boundary internet protocol addresses, the pair of boundary IPs are IP pairs specifically partitioned from the user IDC side for establishing the private line channel, and the pair of boundary internet protocol addresses include: IP corresponding to the private line gateway and IP corresponding to the private line access equipment. Each private line channel is respectively configured on the private network side and the internet data center side, that is, internet protocol addresses configured by the private line channels are stored on the private network side and the internet data center side, that is, RIP of a private line gateway and IP of a private line access device on which each private line channel is connected are stored on the private network side and the internet data center side.
Specifically, when a data packet needs to be transmitted from the private network to the internet data center, the private network transmits the data packet carrying the target virtual address to the switch, and the target virtual address is used for pointing to a gateway cluster. Therefore, the server can acquire the data message from the switch, and then determine the gateway cluster pointed to through the target virtual address carried by the data message. For example, based on the foregoing example, if the target virtual address is specifically VIP1 and VIP1 points to gateway cluster A1, it may be determined that the gateway cluster to which the target virtual address points is gateway cluster A1.
Step 304, under the condition that the switch and the gateway cluster are connected, selecting a target private line gateway with a connecting channel in a communicating state from the private line gateways based on the on-off state of the connecting channel between the switch and the private line gateways respectively.
The connection establishment between the switch and the gateway cluster is specifically as follows: all special line gateways in the gateway cluster issue RIP of the special line gateway and virtual addresses corresponding to the affiliated gateway cluster to the switch through an open shortest path first (Open Shortest Path First, OSPF) protocol, and after the OSPF neighbor state is normal, the BDF session is established by utilizing the RIP and the switch. Second, the session state of the BDF session includes a disconnected state (Down) and a connected state (Up). In this embodiment, the connectivity between the switch and the private line gateway is described through a connection channel, the connection channel in the connected state is a normal connection channel capable of normally performing data transmission, and the connection channel in the disconnected state is a fault connection channel incapable of performing data transmission.
For easy understanding of the connection channels, as shown in the connection channel schematic diagram of fig. 4, the gateway cluster 402 includes a dedicated gateway 4021, a dedicated gateway 4022, a dedicated gateway 4023, and a dedicated gateway 4024, where a connection channel exists between the switch 404 and each dedicated gateway in the gateway cluster 402, and the connection channel is a connection channel, that is, a connection channel 4061 exists between the switch 404 and the dedicated gateway 4021, and similarly, a connection channel 4062 exists between the switch 404 and the dedicated gateway 4022, a connection channel 4063 exists between the switch 404 and the dedicated gateway 4023, and a connection channel 4064 exists between the switch 404 and the dedicated gateway 4024.
Specifically, the server determines that the switch and the gateway cluster pointed by the target virtual address are connected, and then determines the on-off state of the connection channel between the switch and each private line gateway, so that the target private line gateway with the connection channel in a connected state is selected from the private line gateways. The target private line gateway may be a single private line gateway in the gateway cluster, or may include a plurality of private line gateways in the gateway cluster, which is not limited herein.
Step 306, selecting a target private line access device with a private line channel in a connected state from the private line access devices based on the on-off state of the private line channel between the target private line gateway and the private line access devices.
The on-off state comprises an off state (Down) and an on state (Up), the dedicated line channel in the on state is a normal dedicated line channel capable of normally carrying out data dedicated line, and the dedicated line channel in the off state is a fault dedicated line channel incapable of carrying out data dedicated line. For easy understanding of the private line channels, as shown in the private line channel schematic diagram of fig. 5, the access device cluster includes a private line access device 501, a private line access device 502, a private line access device 503, and a private line access device 504, and a connection channel exists between the private line gateway 505 and each private line access device, where the connection channel is a private line channel, that is, a private line channel 5061 exists between the private line gateway 505 and the private line access device 501, and as can be known, a private line channel 5062 exists between the private line gateway 505 and the private line access device 502, a private line channel 5063 exists between the private line gateway 505 and the private line access device 503, and a private line channel 5064 exists between the private line gateway 505 and the private line access device 504. It is to be understood that the dedicated gateway 505 belongs to other dedicated gateways of the same gateway cluster, and has a corresponding dedicated channel between the dedicated access device 501 and the dedicated access device 504.
Specifically, the server determines the on-off state of the private line channel between the target private line gateway and each private line access device, thereby selecting the target private line access device with the private line channel in the connected state from each private line access device.
Step 308, the switch, the target private line gateway and the target private line access device are used as transmission nodes to transmit the data message.
Specifically, the server uses the switch, the target private line gateway and the target private line access equipment as transmission nodes to transmit the data message. The data message is transmitted to the target private line gateway through the switch and then is transmitted to the target private line access equipment from the target private line gateway, so that the data message is transmitted to the user side through the private line access equipment, and stable transmission of the data message is completed. For ease of understanding, as shown in fig. 6, if the determined target dedicated gateway is a dedicated gateway 6041 and the determined target dedicated access device is a dedicated access device 6052, the data packet is transmitted from the switch 602 to the dedicated gateway 6041, and then transmitted from the dedicated gateway 6041 to the dedicated access device 6052, so that the data packet is transmitted to the user side through the dedicated access device 6052 to complete stable transmission of the data packet.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In the data transmission method, the data message carrying the target virtual address is acquired from the switch, the gateway cluster pointed by the target virtual address is determined, the on-off state of the connecting channel between the switch and each private line gateway is used, the target private line gateway capable of accurately and reliably transmitting the data message is selected, the on-off state of the private line channel between the target private line gateway and each private line access device is considered, and then the target private line access device capable of accurately and reliably transmitting the data message is selected, so that the switch, the target private line gateway and the target private line access device are used as transmission nodes for data transmission, intercommunication transmission of data between the inside and outside of the cloud is realized, and the stability and reliability of the data transmission can be ensured because the selected channels are all in the communicating state for data transmission.
Because the precondition for determining the on-off state of the connection channel between the switch and each private line gateway is that the connection is established between the switch and the gateway cluster, the following describes how to make the switch establish connection with the gateway cluster:
In one embodiment, the manner in which a switch establishes a connection with a gateway cluster includes: configuring a corresponding virtual address for a gateway cluster, and configuring a private line gateway address for each private line gateway in the gateway cluster; transmitting a transmission connection request to the switch through each private line gateway address, wherein the transmission connection request carries a private line gateway address corresponding to the private line gateway and a virtual address corresponding to a gateway cluster to which the private line gateway belongs; and establishing communication connection between the switch and each special line gateway by transmitting a connection request.
Specifically, the server configures a corresponding virtual address for the gateway clusters, that is, a corresponding VIP configured for each gateway cluster, so that the virtual address can uniquely point to the configured corresponding gateway cluster. For example, as in the previous example, VIP1 is configured for gateway cluster A1, VIP2 is configured for gateway cluster A2, VIP3 is configured for gateway cluster A3, and VIP4 is configured for gateway cluster A4.
Based on this, the server configures a private line gateway address for each private line gateway in the gateway cluster, where the private line gateway address is an internal gateway protocol address (RIP), for example, the gateway cluster A1 includes a private line gateway B1, a private line gateway B2, a private line gateway B3, and a private line gateway B4, RIP1 may be configured for the private line gateway B1, RIP2 may be configured for the private line gateway B2, RIP3 may be configured for the private line gateway B3, and RIP4 may be configured for the private line gateway B4.
Further, the gateway clusters are deployed by adopting distributed clusters, that is, different private line gateways in the gateway clusters respectively have corresponding internal gateway protocol addresses (RIPs), and all the private line gateways in the same gateway cluster share the VIP of the gateway cluster to which the private line gateways belong. Therefore, the server sends a transmission connection request to the switch through each private line gateway address, wherein the transmission connection request carries the private line gateway address corresponding to the private line gateway and the virtual address corresponding to the gateway cluster to which the private line gateway belongs.
For ease of understanding, such as: the dedicated line gateway B1 sends a transmission connection request to the switch, and the transmission connection request sent by the dedicated line gateway B1 includes: the private line gateway address (RIP 1) corresponding to the private line gateway B1, and the virtual address (VIP 1) corresponding to the gateway cluster to which the private line gateway B1 belongs (i.e., gateway cluster A1). Similarly, the dedicated gateway B2 sends a transmission connection request to the switch, where the transmission connection request sent by the dedicated gateway B2 includes: RIP2, and VIP1. The dedicated line gateway B3 sends a transmission connection request to the switch, and the transmission connection request sent by the dedicated line gateway B3 includes: RIP3, and VIP1. The dedicated line gateway B4 sends a transmission connection request to the switch, and the transmission connection request sent by the dedicated line gateway B4 includes: RIP4, and VIP1.
The server can establish communication connection between the switch and each private line gateway by transmitting the connection request. That is, the server determines the gateway cluster to which each private line gateway belongs by transmitting the connection request, thereby creating a mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the gateway cluster to which the private line gateway belongs, for example: there is a mapping relationship between VIP1 and RIP1, RIP2, RIP3, and RIP4, respectively. Thus, the mapping relationship may be published to the switch via an open shortest path first (Open Shortest Path First, OSPF) protocol, so that individual dedicated gateways belonging to the gateway cluster may be determined at the switch according to the mapping relationship based on the received VIPs.
In practical application, a main process of a gateway cluster starts and pulls up an OSPF process to release a VIP configured by the gateway cluster, and simultaneously pulls up a BDFd-beacon process to establish an uniday bidirectional forwarding detection (Bidirectional Forwarding Detection, BDF) session with a switch according to RIP of a private line gateway, and binds the uniday BDF session with a corresponding OSPF route by the switch, thereby completing connection between the switch and the gateway cluster.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, the switch implements strong binding of the private line gateway in the same gateway cluster through the private line gateway address and the virtual address by transmitting the private line gateway address corresponding to the private line gateway carried by the connection request and the virtual address corresponding to the gateway cluster to which the private line gateway belongs, so as to ensure the reliability of communication to the private line gateway in the same gateway cluster, and further ensure the stability of subsequent data transmission.
In one embodiment, the switch stores a mapping relationship between a private line gateway address of each private line gateway belonging to the same gateway cluster and the gateway cluster to which the private line gateway belongs. As can be seen from the foregoing examples, since the server determines, by transmitting the connection request, the gateway cluster to which each private line gateway belongs, thereby creating a mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the corresponding gateway cluster, and binding the underley BDF session and the corresponding OSPF route by the switch at this time, the switch can also obtain and store the mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the corresponding gateway cluster.
Based on this, the acquisition mode of the on-off state of the connection channel between the switch and each private line gateway respectively includes: based on the exchanger, determining each special line gateway address with a mapping relation with the target virtual address, and determining each special line gateway through each special line gateway address; and determining the on-off state of a connecting channel between the switch and each special line gateway through the session message receiving and transmitting state between the switch and each special line gateway.
Specifically, the server determines each private line gateway address having a mapping relationship with the target virtual address based on the mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the affiliated gateway cluster stored in the switch, thereby determining each private line gateway through each private line gateway address. For example, there is a mapping relationship between VIP1 and RIP1, RIP2, RIP3, and RIP4, respectively, a mapping relationship between VIP2 and RIP5, RIP6, RIP7, and RIP8, respectively, and a mapping relationship between VIP3 and RIP9, RIP10, RIP11, and RIP12, respectively. If the target virtual address is VIP1, it can be known that the private line gateway address having a mapping relationship with VIP1 is: RIP1, RIP2, RIP3, and RIP4. As can be seen from the foregoing examples, RIP1 points to the private line gateway B1, RIP2 points to the private line gateway B2, RIP3 points to the private line gateway B3 and RIP4 points to the private line gateway B4. Thus, each private gateway belonging to gateway cluster A1 includes private gateway B1, private gateway B2, private gateway B3, and private gateway B4.
Further, the service determines the on-off state of the connection channel between the switch and each private line gateway through the session message receiving and transmitting state between the switch and each private line gateway. The switch and each private line gateway in the gateway cluster are mutually detected through an underlay BDF session, and session messages (underlay BDF session messages) are mutually sent, so that session message receiving and transmitting states between the switch and each private line gateway are mutually detected through the underlay BDF, and the on-off states of connecting channels between the switch and each private line gateway are determined through the session message receiving and transmitting states.
The following describes in detail how the on-off state is determined by the session messaging state: in one embodiment, determining the on-off state of the connection channel between the switch and each private line gateway through the session message receiving and transmitting state between the switch and each private line gateway includes: for each private line gateway, determining whether the switch receives a session message sent by the private line gateway within a preset session duration.
The preset session duration is a duration preset when the switch and the private line gateway establish a connection, that is, the preset session duration is preset when the switch and the private line gateway establish an underlay BDF session, for example, the preset session duration is 1 second, 2 seconds or 3 seconds, which is not limited herein. Based on the above, the server determines, for each private line gateway, whether the switch receives the session message sent by the private line gateway within a preset session duration. The server detects each other through an underly BDF session between the switch and each private line gateway in the gateway cluster, and detects each other through the underly BDF session, specifically, sends a session message through the underly BDF session, and judges whether the session message sent through the underly BDF session is received within a preset session duration.
Therefore, there are two cases that the switch does not receive the session message and the switch receives the session message, which are described below:
if the switch does not receive the session message, determining the on-off state between the switch and the private line gateway as an off state. The server determines that the switch does not receive the session message within the preset session duration, and at this time, the switch senses that the underley BDF session is abnormal, the OSPF route on the switch is rapidly converged, and the on-off state between the switch and the private line gateway is determined as the off state. For example, after the switch establishes connection with the private line gateway B1, the private line gateway B2, the private line gateway B3, and the private line gateway B4, if the switch does not receive the session packet sent by the private line gateway B1 within the preset session duration, the connection channel between the switch and the private line gateway B1 may be determined to be in a disconnected state.
If the exchanger receives the session message, the on-off state between the exchanger and the private line gateway is determined to be a connected state. The server determines that the switch receives the session message within the preset session duration, and determines the on-off state between the switch and the private line gateway as a connected state. It can be understood that after the on-off state between the switch and the private line gateway is determined as the off state, if the switch receives the session message of the private line gateway within the preset session duration, it can be determined that the underley BDF session is normal at this time, the OSPF route on the switch is recovered, and the connection channel is in the connected state at this time.
For ease of understanding, as shown in fig. 7, as can be seen from fig. 7 (a), the gateway cluster 702 includes a private line gateway 7021, a private line gateway 7022, a private line gateway 7023, and a private line gateway 7024, a connection channel 7061 exists between the switch 704 and the private line gateway 7021, a connection channel 7062 exists between the switch 704 and the private line gateway 7022, a connection channel 7063 exists between the switch 704 and the private line gateway 7023, and a connection channel 7064 exists between the switch 704 and the private line gateway 7024. Based on this, if the switch 704 does not receive the session messages sent by the private line gateway 7021 and the private line gateway 7022 within the preset session duration, as can be seen from the diagram (B) in fig. 7, the on-off state of the connection channel 7061 and the connection channel 7062 is determined as the off state. Based on this, if the switch 704 receives the session packet sent by the private line gateway 7021 within the preset session duration of the subsequent period, as can be seen from the (C) diagram in fig. 7, the on-off state of the connection channel 7061 can be determined as the connected state.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, on the basis of implementing the intercommunication transmission between the cloud and the cloud, whether the switch receives the session message of each private line gateway or not is judged, so that the network fault is detected in real time by judging the session message, and the private line gateway with the fault is removed when the fault occurs, so that the selection of the private line gateway with the fault for transmission is avoided, and the reliability of data transmission is further ensured. And the on-off state of the channel is quickly recovered when the network returns to normal, so that the selectable special line gateway for data transmission is more flexible, the stability of data transmission is further ensured, and the high-availability requirement can be met.
In one embodiment, in a case that a switch and a gateway cluster are connected, selecting a target dedicated line gateway with a connection channel in a connected state from the dedicated line gateways based on-off states of connection channels between the switch and the dedicated line gateways, respectively, includes: under the condition that the switch and the gateway cluster are connected, selecting candidate private line gateways with connection channels in a connected state from the private line gateways based on the on-off states of the connection channels between the switch and the private line gateways respectively; and selecting a target dedicated line gateway of which the gateway resource use information meets the resource use condition from the candidate dedicated line gateways based on the respective gateway resource use information of each candidate dedicated line gateway.
The gateway resource use information is collected from the private line gateway by a process running in the private line gateway and reported. Thus, the gateway resource usage information may include the resource usage of the dedicated line gateway, and may also include resource usage information of the resources used to characterize the gateway resource usage. The aforementioned resources may include at least one of processor (Central Processing Unit, CPU), network bandwidth, disk, and memory resources. Accordingly, the resource usage information may include at least one of CPU usage information, network bandwidth usage information, disk usage information, and memory usage information. Second, the resource usage condition may be that the gateway resource usage information is smaller than the maximum value of the resource usage rate, or that the gateway resource usage information is within a preset resource usage rate range, etc.,
Specifically, under the condition that the switch and the gateway cluster are connected, candidate private line gateways with connection channels in a connected state are selected from the private line gateways based on the on-off states of the connection channels between the switch and the private line gateways respectively, and the candidate private line gateways are all the private line gateways with the connection channels in the gateway cluster in the connected state. For example, after the switch establishes connection with the private line gateway B1, the private line gateway B2, the private line gateway B3, and the private line gateway B4, the on-off state of the connection channel between the private line gateway B1 and the switch is in an off state, and all the private line gateways with the connection channel in the on state are selected as candidate private line gateways at this time, that is, the candidate private line gateways include the private line gateway B2, the private line gateway B3, and the private line gateway B4.
Further, the server acquires the respective gateway resource usage information of each candidate private line gateway, and then selects a target private line gateway of which the gateway resource usage information meets the resource usage condition from the candidate private line gateways.
As can be seen from the foregoing embodiments, the gateway resource usage information may include a resource usage rate of a dedicated line gateway, and may further include resource usage information of a resource for characterizing the gateway resource usage rate. Therefore, the manner in which the target private line gateway is selected based on the gateway resource usage information including the resource usage rate of the private line gateway will be described below:
Selecting a target dedicated line gateway of which the gateway resource usage information meets the resource usage condition from the candidate dedicated line gateways based on the respective gateway resource usage information of each candidate dedicated line gateway, including: selecting an alternative dedicated line gateway with the resource utilization rate smaller than the maximum value of the resource utilization rate from the candidate dedicated line gateways based on the respective resource utilization rate of each candidate dedicated line gateway; and carrying out load balancing based on the respective resource utilization rate of each alternative private line gateway so as to determine the target private line gateway.
The maximum resource utilization rate is the maximum resource utilization rate which does not cause the data processing problem of the private line gateway. Specifically, the server selects an alternative dedicated line gateway with a resource utilization rate smaller than the maximum value of the resource utilization rate based on the respective gateway resource utilization information of each candidate dedicated line gateway. For example, as shown in the foregoing embodiment, the candidate dedicated gateways include the dedicated gateway B2, the dedicated gateway B3, and the dedicated gateway B4, if the maximum value of the resource utilization is 80%. The dedicated line gateway B2 has a resource usage of 50%, the dedicated line gateway B3 has a resource usage of 90%, and the dedicated line gateway B4 has a resource usage of 60%, and it may be determined that the dedicated line gateway B2 and the dedicated line gateway B4 have a resource usage smaller than the maximum value of the resource usage, so that the dedicated line gateway B2 and the dedicated line gateway B4 are selected as the alternative dedicated line gateway.
Further, the server performs load balancing based on the respective resource utilization rate of each alternative private line gateway to determine the target private line gateway. The server performs load balancing based on the respective resource utilization rate of each alternative private line gateway, and the respective resource utilization rate of each alternative private line gateway after the load balancing is considered, so that the target private line gateway is selected. It can be appreciated that the server may load balance the data packet to each of the alternative dedicated line gateways, thereby directly determining the alternative dedicated line gateway as the target dedicated line gateway.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, on the basis of selecting connection channels in a connected state to perform data transmission, a distributed cluster deployment basis is considered for gateway clusters, so that the resource utilization rate of each dedicated gateway is considered to perform load balancing, so as to reduce the forwarding processing problem of the dedicated gateway under the condition of larger data message, and further ensure the stability and reliability of data transmission.
In one embodiment, as shown in fig. 8, the data packet also carries the target network segment. The target network segment is used for indicating the target network segment. And secondly, different special line channels can be configured with different initial on-off states, each special line channel is bound with a channel route, one special line channel can be bound with different channel routes of network segments of a plurality of items, namely, each special line channel can be bound with a plurality of channel routes, destination network segments indicated by the channel routes bound by the same special line channel are different, and the destination network segments are different, namely, the next hop for carrying out data transmission through the channel routes is different. In this embodiment, when data transmission is performed, the dedicated line channel row with the on-off state in the connected state is selected to be preferentially matched, and then whether the destination network segment indicated by the channel route is the destination network segment carried by the data is considered,
For example, as mentioned above, the gateway cluster A1 includes a dedicated gateway B1, a dedicated gateway B2, a dedicated gateway B3, and a dedicated gateway B4, where a dedicated channel D1 is established between the dedicated gateway B1 and the dedicated access device C1, a dedicated channel D2 is established between the dedicated gateway B1 and the dedicated access device C2, a dedicated channel D3 is established between the dedicated gateway B1 and the dedicated access device C3, and a dedicated channel D4 is established between the dedicated gateway B1 and the dedicated access device C4. Similarly, a dedicated channel D5 is established between the dedicated gateway B2 and the dedicated access device C1, a dedicated channel D6 is established between the dedicated gateway B2 and the dedicated access device C2, a dedicated channel D7 is established between the dedicated gateway B2 and the dedicated access device C3, and a dedicated channel D8 is established between the dedicated gateway B2 and the dedicated access device C4. And so on, will not be described in detail.
Based on this, if the channel route E1 indicates the destination network segment F1, the channel route E2 indicates the destination network segment F2, the channel route E3 indicates the destination network segment F3, and the channel route E4 indicates the destination network segment F4. At this time, the dedicated line channel D1 may be bound to the channel route E1 and the channel route E2, the dedicated line channel D2 may be bound to the channel route E2 and the channel route E3, the dedicated line channel D3 may be bound to the channel route E3 and the channel route E4, and the dedicated line channel D4 may be bound to the channel route E1 and the channel route E4. Similarly, the dedicated line channel D5 may be bound to the channel route E1, the dedicated line channel D6 may be bound to the channel route E2, the dedicated line channel D7 may be bound to the channel route E3 and the channel route E4, and the dedicated line channel D8 may be bound to the channel route E4.
Based on this, based on the on-off state of the private line channel between the target private line gateway and each private line access device, selecting a target private line access device with the private line channel in a connected state from each private line access device, including:
step 802, selecting a target private line access device of which the private line channel is in a connected state and the channel route bound by the private line channel indicates a target network segment from the private line access devices based on the on-off state of the private line channel between the target private line gateway and the private line access devices.
Specifically, the server obtains channel route information of the channel route bound by the private channel between the target private gateway and each private access device, so as to determine a destination network segment indicated by the channel route bound by the private channel. And selecting a target special line access device of which the special line channel is in a connected state and the route of the channel bound by the special line channel indicates the target network segment from the special line access devices.
In one embodiment, based on the on-off state of a private line channel between a target private line gateway and each private line access device, selecting a private line channel from each private line access device to be in a connected state, wherein a channel route bound by the private line channel indicates a target private line access device of a target network segment, including: selecting a candidate private line channel in a connected state based on the on-off state of the private line channel between the target private line gateway and each private line access device; selecting a target dedicated line channel indicating a target network segment from the candidate dedicated line channels based on network segment information pointed by the route of the bound channel of each candidate dedicated line channel; and determining the private line access equipment which takes the private line channel between the private line access equipment and the target private line gateway as a target private line channel as target private line access equipment.
Specifically, the server selects a candidate dedicated line channel in a connected state based on the on-off state of the dedicated line channel between the target dedicated line gateway and each dedicated line access device. For example, taking the target private gateway as the private gateway B1 as an example, it is known from the foregoing example that the private channel D1 is established between the private gateway B1 and the private access device C1, the private channel D2 is established between the private gateway B1 and the private access device C2, the private channel D3 is established between the private gateway B1 and the private access device C3, and the private channel D4 is established between the private gateway B1 and the private access device C4. If the dedicated line channel D1 is in the disconnected state, the dedicated line channel D2 is in the connected state, the dedicated line channel D3 is in the connected state, and the dedicated line channel D4 is in the connected state. At this time, the dedicated channel D2, the dedicated channel D3, and the dedicated channel D4 are selected as candidate dedicated channels.
Further, the server selects a target dedicated line channel indicating a target network segment from the candidate dedicated line channels based on the network segment information pointed by the route of the bound channel of each candidate dedicated line channel. The server selects a target private line channel capable of indicating a target network segment carried by the data message from candidate private line channels in a connected state. For example, with the destination segment F1 specifically carried by the data packet, it can be seen from the foregoing example that the channel route E1 indicates the destination segment F1, that is, a dedicated channel of the binding channel route E1 needs to be selected from the dedicated channel D2, the dedicated channel D3 and the dedicated channel D4. Then, based on the foregoing example again, the dedicated line channel D4 is bound to the channel route E1 and the channel route E4, and therefore, the dedicated line channel D4 bound to the channel route E1 is selected as the target dedicated line channel at this time.
Still further, the server determines the private line channel between the server and the target private line gateway as the private line access device of the target private line channel, as the target private line access device. The special line channel is used for connecting the special line gateway and the special line access equipment, so that the special line channel between the special line gateway and the special line gateway is the target special line channel and is the target special line access equipment. For example, as shown in the foregoing example, the target dedicated gateway is the dedicated gateway B1, and the dedicated channel D4 is used as the target dedicated channel, and the dedicated channel D4 is established between the dedicated gateway B1 and the dedicated access device C4, that is, the dedicated access device C4 whose dedicated channel with the dedicated gateway B1 is the dedicated channel D4 may be determined as the target dedicated access device.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, the channels in the connected state are selected first to perform data transmission, so as to ensure stability of data transmission, further consider the target network segment carried by the data packet to be transmitted, and determine the next hop of the data packet to be transmitted through the target network segment based on the target network segment indicated by the bound channel route, that is, ensure that the data packet can accurately transmit the target network segment, so as to ensure reliability of data transmission.
In one embodiment, how to bind the channel route for the dedicated channel and set the on-off state for the dedicated channel is described in detail below, that is, the method for data transmission further includes: configuring a private line channel for each gateway cluster and each private line access device; a special line channel binding relationship exists between a special line gateway belonging to the same gateway cluster and the same special line access equipment; binding channel routes for all special line channels, and setting the initial on-off state of all special line channels as a connected state.
The special line channel binding relationship is used for describing that the special line gateway and the special line access equipment are connected with a special line channel capable of carrying out data transmission, so that the special line gateway belonging to the same gateway cluster and the same special line access equipment have the special line channel binding relationship. Specifically, the server configures a dedicated channel for each gateway cluster and each dedicated access device, that is, when the server configures the dedicated channel, the server should consider the dedicated gateway belonging to the same gateway cluster and should perform dedicated channel configuration with the same dedicated access device.
For easy understanding, in the foregoing examples, the gateway cluster A1 includes a private gateway B1, a private gateway B2, a private gateway B3, and a private gateway B4, where a private channel is established between the private gateway B1 and the private access devices C1 to C4, that is, a private channel binding relationship is provided between the private gateway B1 and the private access devices C1 to C4. Similarly, a private line channel is established between the private line gateway B2 and the private line access devices C1 to C4, which belong to the same gateway cluster A1 as the private line gateway B1, i.e. a private line channel binding relationship is established between the private line gateway B2 and the private line access devices C1 to C4. And the private line gateway B3 belonging to the same gateway cluster A1 as the private line gateway B1 also has a private line channel binding relationship with the private line access device C1 to the private line access device C4. The private line gateway B4 belonging to the same gateway cluster A1 as the private line gateway B1 also has a private line channel binding relationship with the private line access device C1 to the private line access device C4.
Further, the server binds the channel route for each dedicated channel, and the bound channel route can be flexibly configured based on the resource processing capability and the resource loading capability of the dedicated access device or directly based on actual requirements. If there are 4 routing interfaces on the private line access device C1, 4 channel routes can be bound for the private line channel D1 between the private line gateway B1 and the private line access device C1. The specific manner of bonding channel routing is not limited at this time. Based on this, the server also sets the initial on-off state of each dedicated line channel to the connected state. It can be understood that the server may select the configurable dedicated line channel and the dedicated line channel to be configured from the dedicated line channels, that is, set the initial on-off state of the configurable dedicated line channel to be a connected state, and set the initial on-off state of the dedicated line channel to be configured to be a disconnected state. The configuration mode of the initial on-off state should be flexibly determined based on actual requirements.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, a dedicated line channel is configured to ensure a binding transmission mode between a dedicated line gateway and a dedicated line access device, so that a channel route that can be bound by the dedicated line access device is considered, so as to ensure that a destination network segment can be accurately indicated through a channel reason, and the configuration of an initial on-off state ensures that the dedicated line channel with a connected state performs data transmission at the beginning stage of data transmission, so as to ensure the reliability of subsequent data transmission.
The way how the on-off state is obtained will be described as follows: in one embodiment, the method for acquiring the on-off state of the private line channel between the target private line gateway and each private line access device includes: determining each private line access device having a private line channel binding relationship with a target private line gateway; and determining the on-off state of a connecting channel between the target special line gateway and each special line access device through the detection message receiving and transmitting state between the target special line gateway and each special line access device.
Specifically, before data transmission, the server configures a dedicated channel for each gateway cluster and each dedicated access device, so after determining the target dedicated gateway, each dedicated access device having a binding relationship with the dedicated channel of the target dedicated grid can be further determined. Again, by way of the foregoing example, the gateway cluster A1 includes a private gateway B1, a private gateway B2, a private gateway B3, and a private gateway B4, and if the target private gateway is determined to be the private gateway B1, it can be known that each private access device having a private channel binding relationship with the private gateway B1 includes: private line access device C1, private line access device C2, private line access device C3, and private line access device C4.
Further, the server determines the on-off state of the connection channel between the target private line gateway and each private line access device through the detection message receiving and transmitting state between the target private line gateway and each private line access device. The method comprises the steps that a target private line gateway and each private line access device are mutually detected through an overlay BDF session, detection messages (overlay BDF detection messages) are mutually sent, so that the detection message receiving and transmitting states of the target private line gateway and each private line access device are mutually detected through the overlay BDF session, and the on-off states of private line channels between the target private line gateway and each private line access device are confirmed.
The following describes in detail how the on-off state is determined by detecting the message transmitting and receiving state: in one embodiment, determining the on-off state of the connection channel between the target dedicated line gateway and each dedicated line access device through the probe message receiving and transmitting state between the target dedicated line gateway and each dedicated line access device includes: and determining whether a target special line gateway receives a detection message sent by the line access equipment within a preset detection time length aiming at each special line access equipment.
The preset detection time length is a time length preset when the dedicated gateway and the dedicated access device configure the dedicated channel, that is, the preset detection time length is preset when the online gateway and the dedicated access device configure the dedicated channel, for example, the preset detection time length is 1 second, 2 seconds or 3 seconds, which is not limited herein. Based on the detection information, determining whether the target private line gateway receives the detection message sent by the line access device within the preset detection duration or not according to each private line access device. The server mutually sends an overlay BDF detection message after establishing an overlay BDF session between the private line gateway and the private line access equipment, mutually detects through the overlay BDF session, and judges whether the overlay BDF detection message sent through the overlay BDF session is received within a preset detection time.
Therefore, there are two cases that the target dedicated line gateway does not receive the detection message and the target dedicated line gateway receives the detection message, and the following descriptions are respectively provided:
if the target private line gateway does not receive the detection message, determining the on-off state between the private line access equipment and the target private line gateway as an off state. The server determines that the target dedicated line gateway does not receive the detection message within the preset detection duration, that is, the target dedicated line gateway overtime the overlay BDF session, at this time, the target dedicated line gateway may sense that the overlay BDF session is abnormal, and then report a message that the overlay BDF session state is disconnected (Down) to the dedicated line control server, so that the dedicated line control server issues a state change command, where the state change command is used to indicate that the on-off state of the dedicated line channel associated with the overlay BDF session is determined to be the off state, and therefore, after receiving the state change command, the target dedicated line gateway modifies the on-off state of the dedicated line channel to be the off state. Therefore, the data message passing through the target private line gateway and the private line access equipment is no longer matched with the failed private line channel in the transmission process, so that the purpose of isolating the failure is realized, the data message is ensured to be transmitted through the normal path all the time, and the service is ensured not to be influenced by the failure path.
If the target private line gateway receives the detection message, determining the on-off state between the private line access equipment and the target private line gateway as a connected state. The server determines that the switch receives the detection message within the preset detection time, and determines the on-off state between the private line access equipment and the target private line gateway as a connected state. It can be understood that after determining the on-off state between the private line access device and the target private line gateway as the off state, if the target private line gateway receives the detection message of the private line access device within the preset detection time, it can determine that the overlay BDF session returns to normal at this time, and then the target private line gateway reports a message that the overlay BDF session state is connected (Up) to the private line control server, so that the private line control server issues a state change command, where the state change command is used to indicate that the on-off state of the private line channel associated with the overlay BDF session is determined as the connected state, so that the on-off state of the private line channel is restored from the off state to the connected state after the target private line gateway receives the state change command. Therefore, the data message passing through the target private line gateway and the private line access equipment can be matched with the private line channel after the maintenance connection state is recovered again in the transmission process, so that the rapid recovery after the failure is realized.
For ease of understanding, as shown in fig. 9, as can be seen from fig. 9 (a), the gateway cluster includes a target gateway 902, a dedicated line channel 9061 exists between the target gateway 902 and a dedicated line access device 9041, a dedicated line channel 9062 exists between the target gateway 902 and a dedicated line access device 9042, a dedicated line channel 9063 exists between the target gateway 902 and a dedicated line access device 9043, and a dedicated line channel 9064 exists between the target gateway 902 and a dedicated line access device 9044. Based on this, if the target gateway 902 does not receive the probe message sent by the dedicated line access device 9041 within the preset probe time period, as can be seen from fig. 9 (B), the on-off state of the dedicated line channel 9061 is determined as the off state. Based on this, if the target gateway 902 receives the detection message sent by the dedicated line access device 9041 within the preset detection duration of the subsequent time period, as can be seen from the (C) diagram in fig. 9, the on-off state of the dedicated line channel 9061 can be restored to the connected state.
It will be appreciated that all examples shown in the present embodiment are for understanding the present solution only, and the foregoing examples should not be construed as specific limitations of the present solution.
In this embodiment, on the basis of realizing the intercommunication transmission of data between the cloud and the cloud, whether the target gateway receives the detection message of each private line access device or not is judged, so that the network fault is detected in real time by judging the detection message, and the private line access device with the fault is removed when the fault occurs, so that the selection of the fault private line channel is avoided, and the reliability of data transmission is further ensured. And the on-off state of the channel is quickly recovered when the network returns to normal, so that the selectable dedicated channel for data transmission is more flexible, the stability of data transmission is further ensured, and the high-availability requirement can be met.
Based on the foregoing detailed description of the embodiments, a complete flow of the method for data transmission in the embodiments of the present application will be described, and in one embodiment, as shown in fig. 10, a method for data transmission is provided, and the method is described by taking the application of the method to the server 104 in fig. 1 as an example, it will be understood that the method may also be applied to a system including the terminal 102 and the server 104, and implemented through interaction between the terminal 102 and the server 104. In this embodiment, the method includes the steps of:
in step 1001, a corresponding virtual address is configured for the gateway cluster, and a private line gateway address is configured for each private line gateway in the gateway cluster.
Specifically, the server configures a corresponding virtual address for the gateway clusters, that is, a corresponding VIP configured for each gateway cluster, so that the virtual address can uniquely point to the configured corresponding gateway cluster. For example, as in the previous example, VIP1 is configured for gateway cluster A1, VIP2 is configured for gateway cluster A2, VIP3 is configured for gateway cluster A3, and VIP4 is configured for gateway cluster A4.
Step 1002, a transmission connection request is sent to the switch through each private line gateway address, where the transmission connection request carries a private line gateway address corresponding to the private line gateway and a virtual address corresponding to a gateway cluster to which the private line gateway belongs.
Specifically, the server configures a private line gateway address for each private line gateway in the gateway cluster, where the private line gateway address is an internal gateway protocol address (RIP), for example, the gateway cluster A1 includes a private line gateway B1, a private line gateway B2, a private line gateway B3, and a private line gateway B4, RIP1 may be configured for the private line gateway B1, RIP2 may be configured for the private line gateway B2, RIP3 may be configured for the private line gateway B3, and RIP4 may be configured for the private line gateway B4.
Further, the gateway clusters are deployed by adopting distributed clusters, that is, different private line gateways in the gateway clusters respectively have corresponding internal gateway protocol addresses (RIPs), and all the private line gateways in the same gateway cluster share the VIP of the gateway cluster to which the private line gateways belong. Therefore, the server sends a transmission connection request to the switch through each private line gateway address, wherein the transmission connection request carries the private line gateway address corresponding to the private line gateway and the virtual address corresponding to the gateway cluster to which the private line gateway belongs.
In step 1003, a communication connection between the switch and each private line gateway is established by transmitting a connection request.
Specifically, the server establishes communication connection between the switch and each private line gateway by transmitting a connection request. That is, the server determines the gateway cluster to which each private line gateway belongs by transmitting the connection request, thereby creating a mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the gateway cluster to which each private line gateway belongs. In practical application, a main process of a gateway cluster starts and pulls up an OSPF process to release a VIP configured by the gateway cluster, and simultaneously pulls up a bfdd-beacon process to establish an unary BDF session with a switch according to RIP of a private line gateway, and binds the unary BDF session with a corresponding OSPF route by the switch, thereby completing connection between the switch and the gateway cluster.
Step 1004, determining each private line gateway address having a mapping relation with the target virtual address based on the switch, and determining each private line gateway through each private line gateway address.
Specifically, the server determines each private line gateway address having a mapping relationship with the target virtual address based on the mapping relationship between the private line gateway address of each private line gateway belonging to the same gateway cluster and the affiliated gateway cluster stored in the switch, thereby determining each private line gateway through each private line gateway address. For example, there is a mapping relationship between VIP1 and RIP1, RIP2, RIP3, and RIP4, respectively, a mapping relationship between VIP2 and RIP5, RIP6, RIP7, and RIP8, respectively, and a mapping relationship between VIP3 and RIP9, RIP10, RIP11, and RIP12, respectively. If the target virtual address is VIP1, it can be known that the private line gateway address having a mapping relationship with VIP1 is: RIP1, RIP2, RIP3, and RIP4. As can be seen from the foregoing examples, RIP1 points to the private line gateway B1, RIP2 points to the private line gateway B2, RIP3 points to the private line gateway B3 and RIP4 points to the private line gateway B4. Thus, each private gateway belonging to gateway cluster A1 includes private gateway B1, private gateway B2, private gateway B3, and private gateway B4.
Step 1005, determining the on-off state of the connection channel between the switch and each private line gateway according to the session message receiving-transmitting state between the switch and each private line gateway.
Specifically, the service determines the on-off state of a connection channel between the switch and each private line gateway through the session message receiving and transmitting state between the switch and each private line gateway. The switch and each private line gateway in the gateway cluster are mutually detected through an underlay BDF session, and session messages (underlay BDF session messages) are mutually sent, so that session message receiving and transmitting states between the switch and each private line gateway are mutually detected through the underlay BDF, and the on-off states of connecting channels between the switch and each private line gateway are determined through the session message receiving and transmitting states.
The following describes in detail how the on-off state is determined by the session messaging state: for each private line gateway, determining whether the switch receives a session message sent by the private line gateway within a preset session duration.
The preset session duration is a duration preset when the switch and the private line gateway establish a connection, that is, the preset session duration is preset when the switch and the private line gateway establish an underlay BDF session, for example, the preset session duration is 1 second, 2 seconds or 3 seconds, which is not limited herein. Based on the above, the server determines, for each private line gateway, whether the switch receives the session message sent by the private line gateway within a preset session duration. The server detects each other through an underly BDF session between the switch and each private line gateway in the gateway cluster, and detects each other through the underly BDF session, specifically, sends a session message through the underly BDF session, and judges whether the session message sent through the underly BDF session is received within a preset session duration.
Therefore, there are two cases that the switch does not receive the session message and the switch receives the session message, which are described below:
if the switch does not receive the session message, determining the on-off state between the switch and the private line gateway as an off state. The server determines that the switch does not receive the session message within the preset session duration, and at this time, the switch senses that the underley BDF session is abnormal, the OSPF route on the switch is rapidly converged, and the on-off state between the switch and the private line gateway is determined as the off state. For example, after the switch establishes connection with the private line gateway B1, the private line gateway B2, the private line gateway B3, and the private line gateway B4, if the switch does not receive the session packet sent by the private line gateway B1 within the preset session duration, the connection channel between the switch and the private line gateway B1 may be determined to be in a disconnected state.
If the exchanger receives the session message, the on-off state between the exchanger and the private line gateway is determined to be a connected state. The server determines that the switch receives the session message within the preset session duration, and determines the on-off state between the switch and the private line gateway as a connected state. It can be understood that after the on-off state between the switch and the private line gateway is determined as the off state, if the switch receives the session message of the private line gateway within the preset session duration, it can be determined that the underley BDF session is normal at this time, the OSPF route on the switch is recovered, and the connection channel is in the connected state at this time.
Step 1006, configuring a dedicated channel for each gateway cluster and each dedicated access device; and binding channel routes for the special line channels, and setting the initial on-off state of the special line channels as a connected state.
The special line channel binding relationship is used for describing that the special line gateway and the special line access equipment are connected with a special line channel capable of carrying out data transmission, so that the special line gateway belonging to the same gateway cluster and the same special line access equipment have the special line channel binding relationship. Specifically, the server configures a dedicated channel for each gateway cluster and each dedicated access device, that is, when the server configures the dedicated channel, the server should consider the dedicated gateway belonging to the same gateway cluster and should perform dedicated channel configuration with the same dedicated access device.
Further, the server binds the channel route for each dedicated channel, and the bound channel route can be flexibly configured based on the resource processing capability and the resource loading capability of the dedicated access device or directly based on actual requirements. Based on this, the server also sets the initial on-off state of each dedicated line channel to the connected state. It can be understood that the server may select the configurable dedicated line channel and the dedicated line channel to be configured from the dedicated line channels, that is, set the initial on-off state of the configurable dedicated line channel to be a connected state, and set the initial on-off state of the dedicated line channel to be configured to be a disconnected state. The configuration mode of the initial on-off state should be flexibly determined based on actual requirements.
Step 1007, obtaining the data message carrying the target virtual address from the switch, and determining the gateway cluster pointed by the target virtual address.
Specifically, when a data packet needs to be transmitted from the private network to the internet data center, the private network transmits the data packet carrying the target virtual address to the switch, and the target virtual address is used for pointing to a gateway cluster. Therefore, the server can acquire the data message from the switch, and then determine the gateway cluster pointed to through the target virtual address carried by the data message. For example, based on the foregoing example, if the target virtual address is specifically VIP1 and VIP1 points to gateway cluster A1, it may be determined that the gateway cluster to which the target virtual address points is gateway cluster A1.
Step 1008, in the case that the switch and the gateway cluster are connected, selecting a candidate private line gateway with a connection channel in a connected state from the private line gateways based on the on-off state of the connection channel between the switch and the private line gateways respectively.
The gateway resource use information is collected from the private line gateway by a process running in the private line gateway and reported. Thus, the gateway resource usage information may include the resource usage of the dedicated line gateway, and may also include resource usage information of the resources used to characterize the gateway resource usage. The aforementioned resources may include at least one of CPU, network bandwidth, disk, and memory. Accordingly, the resource usage information may include at least one of CPU usage information, network bandwidth usage information, disk usage information, and memory usage information. Second, the resource usage condition may be that the gateway resource usage information is smaller than the maximum value of the resource usage rate, or that the gateway resource usage information is within a preset resource usage rate range, etc.,
Specifically, when the switch and the gateway cluster are connected, the server selects candidate private line gateways with connection channels in a connected state from the private line gateways based on the on-off states of the connection channels between the switch and the private line gateways respectively, and the candidate private line gateways are all the private line gateways with the connection channels in the gateway cluster in the connected state.
Step 1009, selecting a target dedicated line gateway whose gateway resource usage information satisfies the resource usage condition from the candidate dedicated line gateways based on the respective gateway resource usage information of each candidate dedicated line gateway.
Further, the server acquires the respective gateway resource usage information of each candidate private line gateway, and then selects a target private line gateway of which the gateway resource usage information meets the resource usage condition from the candidate private line gateways. As can be seen from the foregoing embodiments, the gateway resource usage information may include a resource usage rate of a dedicated line gateway, and may further include resource usage information of a resource for characterizing the gateway resource usage rate. Therefore, the manner in which the target private line gateway is selected based on the gateway resource usage information including the resource usage rate of the private line gateway will be described below: selecting an alternative dedicated line gateway with the resource utilization rate smaller than the maximum value of the resource utilization rate from the candidate dedicated line gateways based on the respective resource utilization rate of each candidate dedicated line gateway; and carrying out load balancing based on the respective resource utilization rate of each alternative private line gateway so as to determine the target private line gateway.
The maximum resource utilization rate is the maximum resource utilization rate which does not cause the data processing problem of the private line gateway. Specifically, the server selects an alternative dedicated line gateway with a resource utilization rate smaller than the maximum value of the resource utilization rate based on the respective gateway resource utilization information of each candidate dedicated line gateway. For example, as shown in the foregoing embodiment, the candidate dedicated gateways include the dedicated gateway B2, the dedicated gateway B3, and the dedicated gateway B4, if the maximum value of the resource utilization is 80%. The dedicated line gateway B2 has a resource usage of 50%, the dedicated line gateway B3 has a resource usage of 90%, and the dedicated line gateway B4 has a resource usage of 60%, and it may be determined that the dedicated line gateway B2 and the dedicated line gateway B4 have a resource usage smaller than the maximum value of the resource usage, so that the dedicated line gateway B2 and the dedicated line gateway B4 are selected as the alternative dedicated line gateway.
Further, the server performs load balancing based on the respective resource utilization rate of each alternative private line gateway to determine the target private line gateway. The server performs load balancing based on the respective resource utilization rate of each alternative private line gateway, and the respective resource utilization rate of each alternative private line gateway after the load balancing is considered, so that the target private line gateway is selected. It can be appreciated that the server may load balance the data packet to each of the alternative dedicated line gateways, thereby directly determining the alternative dedicated line gateway as the target dedicated line gateway.
Step 1010, selecting a target dedicated line access device of which the dedicated line channel is in a connected state and the channel route bound by the dedicated line channel indicates the target network segment from the dedicated line access devices based on the on-off state of the dedicated line channel between the target dedicated line gateway and the dedicated line access devices.
Specifically, the server obtains channel route information of the channel route bound by the private channel between the target private gateway and each private access device, so as to determine a destination network segment indicated by the channel route bound by the private channel. And selecting a target special line access device of which the special line channel is in a connected state and the route of the channel bound by the special line channel indicates the target network segment from the special line access devices.
In step 1011, the switch, the target private line gateway and the target private line access device are used as transmission nodes to transmit the data message.
Specifically, the server uses the switch, the target private line gateway and the target private line access equipment as transmission nodes to transmit the data message. The data message is transmitted to the target private line gateway through the switch and then is transmitted to the target private line access equipment from the target private line gateway, so that the data message is transmitted to the user side through the private line access equipment, and stable transmission of the data message is completed.
It should be understood that the specific implementation of steps 1001 to 1011 is similar to the previous embodiment, and will not be repeated here.
It should be understood that, although the steps in the flowcharts related to the embodiments described above are sequentially shown as indicated by arrows, these steps are not necessarily sequentially performed in the order indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in the flowcharts described in the above embodiments may include a plurality of steps or a plurality of stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of the steps or stages is not necessarily performed sequentially, but may be performed alternately or alternately with at least some of the other steps or stages.
Based on the same inventive concept, the embodiments of the present application also provide a data transmission device for implementing the above-mentioned related data transmission method. The implementation of the solution provided by the device is similar to the implementation described in the above method, so the specific limitation in one or more embodiments of the data transmission device provided below may refer to the limitation of the method for data transmission hereinabove, and will not be repeated herein.
In one embodiment, as shown in fig. 11, there is provided a data transmission apparatus including: gateway cluster determination module 1102, dedicated gateway determination module 1104, dedicated access device determination module 1106, and data transmission module 1108, wherein:
the gateway cluster determining module 1102 is configured to obtain a data packet carrying a target virtual address from the switch, and determine a gateway cluster to which the target virtual address points, where the gateway cluster includes a plurality of private line gateways, and each private line gateway establishes a private line channel with each private line access device in the access device cluster;
the private line gateway determining module 1104 is configured to select, when the switch and the gateway cluster are connected, a target private line gateway with a connection channel in a connected state from among the private line gateways based on the on-off state of the connection channel between the switch and each private line gateway;
a private line access device determining module 1106, configured to select, from among the private line access devices, a target private line access device in which the private line channel is in a connected state, based on an on-off state of the private line channel between the target private line gateway and each private line access device;
the data transmission module 1108 is configured to transmit a data packet by using the switch, the target dedicated line gateway and the target dedicated line access device as transmission nodes.
In one embodiment, as shown in fig. 12, the data transmission apparatus further includes a communication connection module 1202;
a communication connection module 1202, configured to configure a corresponding virtual address for a gateway cluster, and configure a private line gateway address for each private line gateway in the gateway cluster; transmitting a transmission connection request to the switch through each private line gateway address, wherein the transmission connection request carries a private line gateway address corresponding to the private line gateway and a virtual address corresponding to a gateway cluster to which the private line gateway belongs; and establishing communication connection between the switch and each special line gateway by transmitting a connection request.
In one embodiment, as shown in fig. 13, the data transmission apparatus further includes an on-off state determining module 1302;
the switch stores the mapping relation between the private line gateway address of each private line gateway belonging to the same gateway cluster and the affiliated gateway cluster;
the on-off state determining module 1302 is configured to determine, based on the switch, each private line gateway address having a mapping relationship with the target virtual address, and determine each private line gateway through each private line gateway address; and determining the on-off state of a connecting channel between the switch and each special line gateway through the session message receiving and transmitting state between the switch and each special line gateway.
In one embodiment, the on-off state determining module 1302 is specifically configured to determine, for each dedicated gateway, whether the switch receives a session packet sent by the dedicated gateway within a preset session duration; if the exchanger does not receive the session message, determining the on-off state between the exchanger and the private line gateway as an off state; if the exchanger receives the session message, the on-off state between the exchanger and the private line gateway is determined to be a connected state.
In one embodiment, the private line gateway determining module 1104 is specifically configured to select, when the switch and the gateway cluster are connected, a candidate private line gateway with a connection channel in a connected state from among the private line gateways based on the on-off state of the connection channels between the switch and the private line gateways, respectively; and selecting a target dedicated line gateway of which the gateway resource use information meets the resource use condition from the candidate dedicated line gateways based on the respective gateway resource use information of each candidate dedicated line gateway.
In one embodiment, the gateway resource usage information includes a resource usage rate of the dedicated line gateway;
the private line gateway determining module 1104 is specifically configured to select, from among the candidate private line gateways, an alternative private line gateway whose resource usage rate is less than a maximum value of the resource usage rates, based on the respective resource usage rates of each candidate private line gateway; and carrying out load balancing based on the respective resource utilization rate of each alternative private line gateway so as to determine the target private line gateway.
In one embodiment, the data packet also carries a target network segment;
the private line access device determining module 1106 is specifically configured to select, from among the private line access devices, a target private line access device in which the private line channel is in a connected state and a channel route bound by the private line channel indicates a target network segment, based on an on-off state of the private line channel between the target private line gateway and each private line access device.
In one embodiment, the private line access device determining module 1106 is specifically configured to select a candidate private line channel in a connected state based on an on-off state of a private line channel between the target private line gateway and each private line access device; selecting a target dedicated line channel indicating a target network segment from the candidate dedicated line channels based on network segment information pointed by the route of the bound channel of each candidate dedicated line channel; and determining the private line access equipment which takes the private line channel between the private line access equipment and the target private line gateway as a target private line channel as target private line access equipment.
In one embodiment, as shown in fig. 14, the data transmission apparatus further includes a dedicated channel configuration module 1402;
a dedicated channel configuration module 1402, configured to configure a dedicated channel for each gateway cluster and each dedicated access device; a special line channel binding relationship exists between a special line gateway belonging to the same gateway cluster and the same special line access equipment; binding channel routes for all special line channels, and setting the initial on-off state of all special line channels as a connected state.
In one embodiment, a dedicated channel configuration module 1402 is specifically configured to determine each dedicated access device having a dedicated channel binding relationship with the target dedicated gateway; and determining the on-off state of a connecting channel between the target special line gateway and each special line access device through the detection message receiving and transmitting state between the target special line gateway and each special line access device.
In one embodiment, the dedicated line channel configuration module 1402 is specifically configured to determine, for each dedicated line access device, whether a target dedicated line gateway receives a probe packet sent by the line access device within a preset probe duration; if the target private line gateway does not receive the detection message, determining the on-off state between the private line access equipment and the target private line gateway as an off state; if the target private line gateway receives the detection message, determining the on-off state between the private line access equipment and the target private line gateway as a connected state.
The modules in the data transmission device may be implemented in whole or in part by software, hardware, or a combination thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
In one embodiment, a computer device is provided, which may be a server or a terminal, and in this embodiment, the computer device is taken as a server to be described as an example, and the internal structure thereof may be as shown in fig. 15. The computer device includes a processor, a memory, an Input/Output interface (I/O) and a communication interface. The processor, the memory and the input/output interface are connected through a system bus, and the communication interface is connected to the system bus through the input/output interface. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device is used for storing data related to the embodiment of the application, such as mapping relations between the private line gateway addresses of the private line gateways of the same gateway cluster and the gateway clusters to which the private line gateway addresses belong. The input/output interface of the computer device is used to exchange information between the processor and the external device. The communication interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a method of data transmission.
It will be appreciated by those skilled in the art that the structure shown in fig. 15 is merely a block diagram of a portion of the structure associated with the present application and is not limiting of the computer device to which the present application is applied, and that a particular computer device may include more or fewer components than shown, or may combine certain components, or have a different arrangement of components.
In an embodiment, there is also provided a computer device comprising a memory and a processor, the memory having stored therein a computer program, the processor implementing the steps of the method embodiments described above when the computer program is executed.
In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored which, when executed by a processor, carries out the steps of the method embodiments described above.
In an embodiment, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the steps of the method embodiments described above.
It should be noted that, the object information (including, but not limited to, object device information, object personal information, etc.) and the data (including, but not limited to, data for analysis, stored data, presented data, etc.) related to the present application are both information and data authorized by the object or sufficiently authorized by each party, and the collection, use, and processing of the related data are required to comply with the related laws and regulations and standards of the related countries and regions.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, database, or other medium used in the various embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, high density embedded nonvolatile Memory, resistive random access Memory (ReRAM), magnetic random access Memory (Magnetoresistive Random Access Memory, MRAM), ferroelectric Memory (Ferroelectric Random Access Memory, FRAM), phase change Memory (Phase Change Memory, PCM), graphene Memory, and the like. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory, and the like. By way of illustration, and not limitation, RAM can be in the form of a variety of forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), and the like. The databases referred to in the various embodiments provided herein may include at least one of relational databases and non-relational databases. The non-relational database may include, but is not limited to, a blockchain-based distributed database, and the like. The processors referred to in the embodiments provided herein may be general purpose processors, central processing units, graphics processors, digital signal processors, programmable logic units, quantum computing-based data processing logic units, etc., without being limited thereto.
The technical feature information of the above embodiments may be arbitrarily combined, and for brevity of description, all possible combinations of the technical feature information in the above embodiments are not described, however, as long as there is no contradiction between the combinations of the technical feature information, they should be considered as the scope of the description.
The above examples only represent a few embodiments of the present application, which are described in more detail and are not to be construed as limiting the scope of the present application. It should be noted that it would be apparent to those skilled in the art that various modifications and improvements could be made without departing from the spirit of the present application, which would be within the scope of the present application. Accordingly, the scope of protection of the present application shall be subject to the appended claims.

Claims (15)

1. A method of data transmission, comprising:
acquiring a data message carrying a target virtual address from a switch, and determining a gateway cluster pointed by the target virtual address, wherein the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in an access device cluster;
Under the condition that the switch and the gateway cluster are connected, selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway respectively;
selecting a target private line access device with a private line channel in a connected state from the private line access devices based on the on-off state of the private line channel between the target private line gateway and the private line access devices;
and transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
2. The method of claim 1, wherein the manner in which the switch establishes a connection with the gateway cluster comprises:
configuring a corresponding virtual address for the gateway cluster, and configuring a private line gateway address for each private line gateway in the gateway cluster;
transmitting a transmission connection request to the switch through each special line gateway address, wherein the transmission connection request carries a special line gateway address corresponding to the special line gateway and a virtual address corresponding to a gateway cluster to which the special line gateway belongs;
And establishing communication connection between the switch and each private line gateway through the transmission connection request.
3. The method according to claim 2, wherein the switch stores a mapping relationship between a private line gateway address of each private line gateway belonging to the same gateway cluster and the gateway cluster to which the private line gateway address belongs;
the acquisition mode of the on-off state of the connecting channel between the switch and each special line gateway comprises the following steps:
determining each special line gateway address with a mapping relation with the target virtual address based on the switch, and determining each special line gateway through each special line gateway address;
and determining the on-off state of a connecting channel between the switch and each special line gateway respectively through the session message receiving and transmitting state between the switch and each special line gateway.
4. The method according to claim 3, wherein determining the on-off state of the connection channels between the switch and each private line gateway through the session messaging states between the switch and each private line gateway comprises:
determining whether the switch receives a session message sent by the private line gateway in a preset session duration for each private line gateway;
If the switch does not receive the session message, determining the on-off state between the switch and the private line gateway as an off state;
and if the switch receives the session message, determining the on-off state between the switch and the private line gateway as a communication state.
5. The method according to claim 1, wherein, in the case where the switch establishes a connection with the gateway cluster, selecting, from among the dedicated gateways, a target dedicated gateway whose connection channel is in a connected state based on an on-off state of a connection channel between the switch and each dedicated gateway, respectively, includes:
under the condition that the switch and the gateway cluster are connected, selecting candidate private line gateways with connecting channels in a communicating state from the private line gateways based on the on-off states of the connecting channels between the switch and the private line gateways respectively;
and selecting a target dedicated line gateway of which the gateway resource use information meets the resource use condition from the candidate dedicated line gateways based on the gateway resource use information of each candidate dedicated line gateway.
6. The method of claim 5, wherein the gateway resource usage information comprises a resource usage rate of the dedicated line gateway;
The selecting, based on the respective gateway resource usage information of each candidate dedicated line gateway, a target dedicated line gateway whose gateway resource usage information satisfies a resource usage condition from the candidate dedicated line gateways, includes:
selecting an alternative dedicated line gateway with the resource utilization rate smaller than the maximum value of the resource utilization rate from the candidate dedicated line gateways based on the respective resource utilization rate of each candidate dedicated line gateway;
and carrying out load balancing based on the respective resource utilization rate of each alternative private line gateway so as to determine a target private line gateway.
7. The method of claim 1, wherein the data message further carries a target network segment;
the selecting, from the private line access devices, a target private line access device with a private line channel in a connected state based on the on-off state of the private line channel between the target private line gateway and each private line access device, includes:
and selecting a target private line access device of which the private line channel is in a communication state and the route of the channel bound by the private line channel indicates the target network segment from the private line access devices based on the on-off state of the private line channel between the target private line gateway and the private line access devices.
8. The method according to claim 7, wherein the selecting, from the individual line access devices, the individual line channel to be in the connected state based on the on-off state of the individual line channel between the target individual line gateway and the individual line access devices, and the route of the channel bound by the individual line channel indicates the target individual line access device of the target network segment, includes:
selecting a candidate dedicated line channel in a connected state based on the on-off state of the dedicated line channel between the target dedicated line gateway and each dedicated line access device;
selecting a target dedicated line channel indicating the target network segment from the candidate dedicated line channels based on network segment information pointed by the route of the bound channel of the candidate dedicated line channels;
and determining a private line channel between the private line access device and the target private line gateway as the private line access device of the target private line channel as the target private line access device.
9. The method of claim 7, wherein the method further comprises:
configuring a private line channel for each gateway cluster and each private line access device; a private line channel binding relationship exists between a private line gateway belonging to the same gateway cluster and the same private line access equipment;
Binding channel routes for the special line channels, and setting the initial on-off state of the special line channels as a communication state.
10. The method of claim 9, wherein the obtaining the on-off state of the dedicated line channel between the target dedicated line gateway and each dedicated line access device includes:
determining each private line access device having a private line channel binding relationship with the target private line gateway;
and determining the on-off state of a connecting channel between the target special line gateway and each special line access device through the detection message receiving and transmitting state between the target special line gateway and each special line access device.
11. The method according to claim 10, wherein the determining the on-off state of the connection channel between the target dedicated line gateway and each dedicated line access device according to the status of the transmission and reception of the probe message between the target dedicated line gateway and each dedicated line access device includes:
determining whether the target private line gateway receives a detection message sent by the line access equipment in a preset detection duration or not according to each private line access equipment;
if the target private line gateway does not receive the detection message, determining the on-off state between the private line access equipment and the target private line gateway as an off state;
And if the target private line gateway receives the detection message, determining the on-off state between the private line access equipment and the target private line gateway as a connected state.
12. A data transmission apparatus, the apparatus comprising:
the gateway cluster determining module is used for acquiring a data message carrying a target virtual address from the switch and determining a gateway cluster pointed by the target virtual address, wherein the gateway cluster comprises a plurality of private line gateways, and each private line gateway respectively establishes a private line channel with each private line access device in the access device cluster;
the special line gateway determining module is used for selecting a target special line gateway with a connecting channel in a communicating state from the special line gateways based on the on-off state of the connecting channel between the switch and each special line gateway respectively under the condition that the switch and the gateway cluster are connected;
the private line access equipment determining module is used for selecting target private line access equipment with a private line channel in a connected state from the private line access equipment based on the on-off state of the private line channel between the target private line gateway and the private line access equipment;
And the data transmission module is used for transmitting the data message by taking the switch, the target private line gateway and the target private line access equipment as transmission nodes.
13. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor implements the steps of the method of any one of claims 1 to 11 when the computer program is executed.
14. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 11.
15. A computer program product comprising a computer program, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any one of claims 1 to 11.
CN202410071846.8A 2024-01-18 2024-01-18 Method, device, computer equipment and storage medium for data transmission Active CN117596284B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410071846.8A CN117596284B (en) 2024-01-18 2024-01-18 Method, device, computer equipment and storage medium for data transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410071846.8A CN117596284B (en) 2024-01-18 2024-01-18 Method, device, computer equipment and storage medium for data transmission

Publications (2)

Publication Number Publication Date
CN117596284A CN117596284A (en) 2024-02-23
CN117596284B true CN117596284B (en) 2024-03-29

Family

ID=89911948

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410071846.8A Active CN117596284B (en) 2024-01-18 2024-01-18 Method, device, computer equipment and storage medium for data transmission

Country Status (1)

Country Link
CN (1) CN117596284B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630314A (en) * 2020-05-09 2021-11-09 北京金山云网络技术有限公司 Disaster recovery method and device for hybrid cloud private line access network
CN116389599A (en) * 2023-03-22 2023-07-04 京东科技信息技术有限公司 Gateway service request processing method and device and cloud native gateway system management method and device
CN116909817A (en) * 2023-07-14 2023-10-20 中国工商银行股份有限公司 Dedicated line control method, device, computer equipment and storage medium
CN116996585A (en) * 2023-04-06 2023-11-03 腾讯云计算(北京)有限责任公司 Multicast communication method, device, system, computer equipment and storage medium

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10091629B2 (en) * 2015-04-07 2018-10-02 At&T Intellectual Property I, L.P. Method and system for providing broadcast media services in a communication system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113630314A (en) * 2020-05-09 2021-11-09 北京金山云网络技术有限公司 Disaster recovery method and device for hybrid cloud private line access network
CN116389599A (en) * 2023-03-22 2023-07-04 京东科技信息技术有限公司 Gateway service request processing method and device and cloud native gateway system management method and device
CN116996585A (en) * 2023-04-06 2023-11-03 腾讯云计算(北京)有限责任公司 Multicast communication method, device, system, computer equipment and storage medium
CN116909817A (en) * 2023-07-14 2023-10-20 中国工商银行股份有限公司 Dedicated line control method, device, computer equipment and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
混合云中网络虚拟化架构的性能优化研究;骆怡航等;信息通信技术;20150415(第02期);全文 *

Also Published As

Publication number Publication date
CN117596284A (en) 2024-02-23

Similar Documents

Publication Publication Date Title
US11323307B2 (en) Method and system of a dynamic high-availability mode based on current wide area network connectivity
US9736278B1 (en) Method and apparatus for connecting a gateway router to a set of scalable virtual IP network appliances in overlay networks
US9906407B1 (en) Methods and apparatus for scalable resilient networks
CN107819677B (en) Message forwarding method and device
US8842518B2 (en) System and method for supporting management network interface card port failover in a middleware machine environment
US9143444B2 (en) Virtual link aggregation extension (VLAG+) enabled in a TRILL-based fabric network
US7751329B2 (en) Providing an abstraction layer in a cluster switch that includes plural switches
US10454809B2 (en) Automatic network topology detection for merging two isolated networks
CN108173691B (en) Cross-device aggregation method and device
CN106936939A (en) A kind of message processing method, relevant apparatus and NVO3 network systems
CN106936682B (en) Processing method and controller for appointed forwarder and provider edge device
CN106059946B (en) Message forwarding method and device
CN105340230A (en) Virtual chassis topology management
WO2016107512A1 (en) Method and apparatus for establishing multicast group in fat-tree network, and fat-tree network
CN108259304B (en) Forwarding table item synchronization method and device
CN107872368B (en) Method and device for detecting accessibility of gateway in network node cluster and terminal
CN108833272B (en) Route management method and device
CN112787960A (en) Stack splitting processing method, device and equipment and storage medium
CN104518936A (en) Method and device for link dynamic aggregation
WO2016124117A1 (en) Method, switching device and network controller for protecting links in software-defined network (sdn)
CN116112426A (en) Intelligent network card assembly, physical machine, cloud service system and message sending method
CN101692654B (en) Method, system and equipment for HUB-Spoken networking
CN114760165A (en) Message transmission method, device and system
CN117596284B (en) Method, device, computer equipment and storage medium for data transmission
WO2020181733A1 (en) Vpc-based multi-data center intercommunication method and related device

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