CN110809054B - Data transmission method, device, equipment and storage medium - Google Patents
Data transmission method, device, equipment and storage medium Download PDFInfo
- Publication number
- CN110809054B CN110809054B CN201911096299.4A CN201911096299A CN110809054B CN 110809054 B CN110809054 B CN 110809054B CN 201911096299 A CN201911096299 A CN 201911096299A CN 110809054 B CN110809054 B CN 110809054B
- Authority
- CN
- China
- Prior art keywords
- data
- transmission path
- network
- service data
- client
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The application discloses a data transmission method, a data transmission device, data transmission equipment and a storage medium, and belongs to the technical field of networks. The method comprises the following steps: acquiring network quality data sent by each client; selecting an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirements of each service data; and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network. The method can select the optimal transmission path for the service data when the data transmission network is crossed, and the data transmission quality is ensured.
Description
Technical Field
The present application relates to the field of network technologies, and in particular, to a data transmission method, apparatus, device, and storage medium.
Background
The cross-region data transmission network distributes a plurality of proxy server clusters in each region, when transmitting cross-region data, the data is transmitted to the nearest proxy server cluster by using a near access mode, and then the rapid transmission of the data is realized through a high-speed channel between the proxy server clusters.
However, this approach of accessing and combining high speed channels nearby may also result in poor quality data transmission.
Disclosure of Invention
The embodiment of the application provides a data transmission method, a data transmission device, data transmission equipment and a data transmission storage medium, which can ensure the transmission quality of data cross-region transmission. The technical scheme is as follows:
in one aspect, a data transmission method is provided, which is applied to data transmission of a cross-region network, where the cross-region network includes a plurality of distributed proxy server clusters and a scheduling center device respectively connected to the plurality of proxy server clusters, and the method includes:
acquiring network quality data sent by each client;
selecting an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirements of each service data;
and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
In one aspect, a data transmission method is provided, which is applied to data transmission of a cross-region network, where the cross-region network includes a plurality of distributed proxy server clusters and a scheduling center device respectively connected to the plurality of proxy server clusters, and the method includes:
acquiring an optimal transmission path configuration configured by the scheduling center equipment, wherein the optimal transmission path configuration comprises a next hop node when various service data are transmitted to each target network;
selecting a next hop node for service data based on the optimal transmission path configuration;
and sending the service data to the selected next hop node.
In one aspect, a data transmission apparatus is applied to data transmission of a cross-region network, where the cross-region network includes a plurality of distributed proxy server clusters and a scheduling center device respectively connected to the plurality of proxy server clusters, and the apparatus includes:
the acquisition module is configured to acquire the network quality data sent by each client;
the processing module is configured to select an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirements of each service data; and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
Optionally, the processing module includes:
a determining submodule configured to determine that a failed link exists based on network quality data of the client;
and the selection submodule is configured to determine an optimal transmission path when various service data are transmitted from each client to each target network after the failed link is selected.
Optionally, the selecting sub-module is configured to determine, based on various transmission quality requirements, optimal transmission paths from the clients to the target networks, which correspond to the various transmission quality requirements, respectively; and after determining an optimal transmission path according to the various transmission quality requirements, associating a port number with the optimal transmission path through the corresponding relation between the various transmission quality requirements and the port number, wherein each transmission quality requirement corresponds to at least one port number, and the port number corresponds to the service type of the service data.
Optionally, the transmission quality requirement includes at least one of a delay requirement and a packet loss requirement.
In one aspect, a data transmission apparatus is applied to data transmission of a cross-region network, where the cross-region network includes a plurality of distributed proxy server clusters and a scheduling center device respectively connected to the plurality of proxy server clusters, and the apparatus includes:
an obtaining module, configured to obtain an optimal transmission path configuration configured by the scheduling center device, where the optimal transmission path configuration includes a next hop node when transmitting various service data to each target network;
a determining module configured to select a next hop node for traffic data based on the optimal transmission path configuration;
a sending module configured to send the service data to the selected next hop node.
Optionally, the determining module includes:
the monitoring submodule is configured to monitor a data transmission port and determine a port number for receiving the service data, wherein the port number corresponds to the service type of the service data;
and the determining submodule is configured to determine a corresponding next hop node from the optimal transmission path configuration based on the port number for receiving the service data and a target network corresponding to the destination address of the service data.
Optionally, the sending module is further configured to periodically send a broadcast probe packet;
the device further comprises:
a receiving module configured to receive the response data packet of each network node;
a determining module configured to determine network quality data with the respective network node based on the response packet;
the sending module is further configured to send the network quality data to a scheduling center device.
Optionally, the next hop node is the proxy server or a target server.
In one aspect, an electronic device is provided, which includes a processor and a memory, where the memory stores at least one instruction, at least one program, a set of codes, or a set of instructions, which are loaded and executed by the processor to implement the aforementioned data transmission method.
In one aspect, a computer-readable storage medium is provided, which stores at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by the processor to implement the aforementioned data transmission method.
The beneficial effects brought by the technical scheme provided by the embodiment of the application at least comprise:
in the embodiment of the application, when the proxy server or the client transmits the service data, the service data is forwarded based on the next hop node in the optimal transmission path configuration. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a system diagram of an exemplary embodiment of the present application;
fig. 2 is a schematic flow chart of a data transmission method according to an exemplary embodiment of the present application;
fig. 3 is a flowchart illustrating a data transmission method according to an exemplary embodiment of the present application;
FIG. 4 is a flowchart illustrating a data transmission method according to an exemplary embodiment of the present application;
FIG. 5 is a schematic diagram of probing provided by an exemplary embodiment of the present application;
FIG. 6 is a schematic diagram of data transmission provided in an exemplary embodiment of the present application;
fig. 7 is a block diagram of a data transmission apparatus according to an embodiment of the present application;
fig. 8 is a block diagram of a data transmission device according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Fig. 1 is a schematic system structure diagram according to an exemplary embodiment of the present application. Referring to fig. 1, the system is a cross-regional data transmission network, the cross-regional data transmission network includes a plurality of proxy server clusters 10 distributed across a region, and the proxy server clusters 10 are connected through a public network. Here, a plurality of proxy server clusters 10 may be distributed in various locations around the world, for example, 17 proxy server clusters 10 may be arranged around the world to ensure that data can be sent to various regions around the world. Each proxy server cluster 10 includes a plurality of proxy servers.
The system further comprises a dispatch center 20, and the dispatch center 20 is connected to each proxy server cluster 10.
The client 30 is installed with preset software using the cross-regional data transmission network, for example, cloud acceleration software, and the user uses the preset software on the client 30 to realize cross-regional data transmission through the system and transmit data to the target server 40.
Due to the factors that the proxy server cluster 10 is not arranged completely, the distance between the client sending the data and the target server is short, and the like, the selection of the proxy server cluster 10 for data transfer may result in a high transmission delay. For example, the client sends data to a destination server in bang, but the system does not arrange the proxy server cluster 10 in bang, and only the proxy server cluster 10 in singapore can be selected for data forwarding, which may result in an increase in transmission delay. For another example, if a client sends data from xiamen to taiwan and a proxy server cluster 10 is selected for relay, a proxy server cluster 10 in hong kong may be selected, but this relay scheme may have a higher delay than sending data directly from xiamen to taiwan.
In addition, in some special cases, such as a link failure between the proxy server clusters 10, even the transmission packet loss is high when proxy server relay is adopted.
Fig. 2 is a flowchart illustrating a data transmission method according to an exemplary embodiment of the present application. The method may be performed by the dispatch center device described above. As shown in fig. 2, the method may include:
in step 101: and acquiring the network quality data sent by each client.
The network quality data may be packet loss data and delay data of the link.
In step 102: and selecting an optimal transmission path for various service data based on the network quality data of each client and the transmission quality requirements of various service data.
Optionally, the transmission quality requirement comprises at least one of a delay requirement, a packet loss requirement.
For example, the scheduling center device may determine transmission paths from the respective clients to the respective target networks, respectively, based on the transmission quality requirements. The target network is also the network where the target server is located.
The transmission paths identified herein can be divided into several types, one having low latency requirements, one having low packet loss requirements, and one having both low latency and low packet loss requirements.
In step 103: and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
For example, after determining the optimal transmission path configuration configured for each client and each proxy server, the scheduling center device sends the corresponding optimal transmission path configuration to each client and each proxy server.
In the embodiment of the application, the scheduling center device selects an optimal transmission path for various service data based on the network quality data of each client and the transmission quality requirements of various service data, and then obtains the optimal transmission path configuration configured to each client and each proxy server based on the optimal transmission path. And the proxy server and the client forward the service data based on the next hop node in the optimal transmission path configuration when transmitting the data. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss.
Fig. 3 is a flowchart illustrating a data transmission method according to an exemplary embodiment of the present application. The method may be performed by the aforementioned proxy server or client. As shown in fig. 3, the method may include:
in step 201: and acquiring the optimal transmission path configuration configured by the dispatching center equipment.
The optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
In step 202: and selecting the next hop node for the service data based on the optimal transmission path configuration.
Because the proxy servers are connected through the public network, quality problems may exist, so that path transmission between the selected proxy servers is not necessarily an optimal scheme, and a next hop node selected through the optimal transmission path configuration of the application is not necessarily a proxy server and can also be a target server.
In step 203, the service data is sent to the selected next hop node.
In the embodiment of the application, when the proxy server or the client transmits the service data, the service data is forwarded based on the next hop node in the optimal transmission path configuration. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss. The scheme is used in the service scenes of games, real-time reports and the like, so that the problem that the user experience is influenced due to the loss or the large delay of data transmission can be avoided; the complaints of users and the additional work of the operation and maintenance personnel such as additional recording, retransmission and verification are reduced.
Fig. 4 is a flowchart illustrating a data transmission method according to an exemplary embodiment of the present application. The method can be executed by the client, the proxy server and the dispatching center equipment. As shown in fig. 4, the method may include:
in step 301: the client periodically transmits broadcast probe packets.
Fig. 5 is a schematic diagram of a probe provided by an exemplary embodiment of the present application. As shown in fig. 5, each server is called a detection point in the detection process, and the detection point is divided into a source point, a transit point and an end point according to the data transmission path. Wherein, the source point and the transit point are active detection points, and the end point and the transit point are passive detection points. Here, the probe point may include a proxy server and a client. The client in this step is a client installed with preset software, and the client can communicate with a proxy server or a scheduling center device in the system through the preset software, so that the client can serve as the detection point, and usually the client is a source point of the detection, and the transit point and the destination can be the proxy server or a public network node. Because data is sent from the client when the service data is actually sent, the client is also used as a detection source point when the network quality is detected, and the network quality in the actual data sending process can be restored to the maximum extent.
Wherein, the source point broadcasts the detection data packet to each transit point and end point; the transit point receives the detection data packet of the source point and broadcasts the detection data packet to other transit points and end points.
In this embodiment, the probe packet may be a Ping packet.
The scheme of the application is executed periodically, and the period time can be set according to needs, such as 1 minute.
In step 302: and the client receives response data packets of all the network nodes.
And after receiving the detection data packet, each transfer point and each destination point return response data packets to the source point and the transfer point.
In step 303: and the client determines network quality data between the client and each network node based on the response data packet.
And determining delay data based on the time of the received response data packet, and determining packet loss data based on the ratio of the received response data packet to the sent detection data packet. Here, the delay data and the packet loss data are both for the link between the two servers.
In step 304: and the client sends the network quality data to the dispatching center equipment. And the dispatching center equipment acquires the network quality data sent by each client.
As shown in fig. 5, each transit point may transmit network quality data to the source point, and the source point transmits the network quality data to the scheduling center device.
In step 305: the dispatching center equipment determines the link with the fault based on the network quality data of the client.
Illustratively, after obtaining the network quality data sent by each client, the scheduling center device obtains a topology map of the entire network, where the topology map includes a connection relationship, and delay and packet loss data of each link in the topology.
Based on the topological graph, the dispatching center device can select out the links with unhealthy network quality in the topological graph.
The unhealthy network quality may be that the packet loss rate is greater than a threshold or the delay is greater than a threshold, for example, when the packet loss rate is greater than 50%, it is determined that the corresponding link is a failed link. For different services, unhealthy links corresponding to different services may be different because corresponding transmission quality requirements are different. The selected unhealthy link is not selected when an optimal transmission path is subsequently determined for the service.
The link with the fault is found out before the optimal transmission path is selected, so that the use in the selection of the optimal transmission path is avoided, and the transmission problem caused by the link fault can be avoided.
Here, step 305 is an optional step, and whether it is necessary or not may be determined according to disaster tolerance requirements of the network. If a disaster tolerance requirement exists, step 305 is initiated. Otherwise, step 305 is not turned on.
In step 306: after the dispatching center equipment selects the link with the fault, the optimal transmission path for transmitting various service data from each client to each target network is determined.
Optionally, the transmission quality requirement comprises at least one of a delay requirement, a packet loss requirement.
Illustratively, this step may include: respectively determining optimal transmission paths from each client to each target network corresponding to various different transmission quality requirements based on various transmission quality requirements; after determining the optimal transmission path according to various transmission quality requirements, associating the port number with the optimal transmission path through the corresponding relation between the various transmission quality requirements and the port number, wherein each transmission quality requirement corresponds to at least one port number, and the port number corresponds to the service type of the service data. The target network is also the network where the target server is located.
The transmission paths identified herein can be divided into several types, one having low latency requirements, one having low packet loss requirements, and one having both low latency and low packet loss requirements.
The scheduling center device may determine the transmission path based on the lowest delay path, the lowest packet loss path, or the lowest delay and packet loss paths.
For example, the lowest packet loss path is to select each path between the proxy server cluster and the target network, and then the packet loss rates of the paths are compared to select the path with the smallest packet loss rate. For example, during calculation, the packet loss rate of each link may be used as a path length, and then a shortest path algorithm is used to perform calculation, so as to select a shortest path, that is, a path with the smallest packet loss rate. For the lowest delay path, the shortest path algorithm calculation can be adopted as well.
After the transmission path is determined according to the transmission quality requirement, the service and the transmission path can be associated through the corresponding relation between various transmission quality requirements and the service. Here, one transmission quality requirement generally corresponds to at least one service, and for example, the transmission quality requirements of the game and the real-time report service are low delay and low packet loss.
In step 307: and the dispatching center equipment obtains the optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path.
The optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
That is, each of the optimal transmission path configurations includes three pieces of information: a target network, a traffic type, and a next hop node.
In step 308: and the dispatching center equipment sends the optimal transmission path configuration to each client and each proxy server. And each client and each proxy server receive the optimal transmission path configuration sent by the dispatching center equipment.
Here, since the step of the client performing the network quality detection is performed periodically and in real time in step 301, the scheduling center device also determines the optimal transmission path configuration periodically and in real time in step 307, and continuously performs optimization adjustment on the optimal transmission path. Then, in step 308, the data is periodically and real-timely sent to each client and proxy server, so that the client and proxy server continuously adjust the forwarding path for service data transmission based on the periodically adjusted optimal transmission path.
In step 309: and the client or the proxy server selects and transmits the next hop node for the service data based on the optimal transmission path configuration.
Here, the next hop node is a proxy server, or a target server.
Here, the server is transparent to the user when forwarding data, the forwarding mode belongs to transparent proxy forwarding, and the client does not know how the server actually forwards the data.
The server can be one or composed of a plurality of servers, and is actually determined according to the flow demand.
This step may include: the proxy server monitors a data transmission port, and determines a port number for receiving the service data, wherein the port number corresponds to the service type of the service data; and determining a corresponding next hop node from the optimal transmission path configuration based on the port number for receiving the service data and the target network corresponding to the destination address of the service data. The port here refers to a transport layer port, for example, a port number 80 corresponding to web service data, a port number 21 corresponding to FTP service data, and the like.
Here, determining a corresponding next hop node from the optimal transmission path configuration based on the port number of the received service data and the target network corresponding to the destination address of the service data may include: determining the optimal transmission path configuration of the port number containing the service data; and matching the target network in the determined optimal transmission path configuration with the destination address of the service data, selecting the optimal transmission path configuration with the longest matching bit number, and taking the next hop node of the optimal transmission path configuration as the next hop node for forwarding the service data. Because, in the optimal transmission path configuration, there may be several optimal transmission path configurations for data transmission of one service type, and the destination networks of these several configurations are different, the port number of the pair may be selected first, and then the longest matching principle is adopted to determine the target network, and the next hop node is found.
Data from the previous hop proxy server cluster or from the client is then forwarded to the next hop proxy server cluster or target server.
Since the foregoing problems may exist in the relay using the proxy server, the path transmission between the proxy servers is not necessarily an optimal solution, and the next hop node selected by the optimal transmission path configuration of the present application is not necessarily a proxy server, as shown in fig. 6, the next hop node may be the proxy server 10 or the target server 40.
Illustratively, 100% coverage of a zone is achieved by deploying a cluster of proxy servers at 17 geographical points overseas. Then, by adopting the scheme provided by the application to carry out data transmission, the average time delay of each overseas region is optimized to 157.39ms from 235.02ms directly connected with the public network, and the performance is improved by about 33.03%. Meanwhile, due to the fact that a fault link is selected when a path is planned, network abnormality is averted for 7 times per month on average.
In the embodiment of the application, the scheduling center device selects an optimal transmission path for various service data based on the network quality data of each client and the transmission quality requirements of various service data, and then obtains the optimal transmission path configuration configured to each client and each proxy server based on the optimal transmission path. And the proxy server and the client forward the service data based on the next hop node in the optimal transmission path configuration when transmitting the data. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss.
The following are embodiments of the apparatus of the present application that may be used to perform embodiments of the method of the present application. For details which are not disclosed in the embodiments of the apparatus of the present application, reference is made to the embodiments of the method of the present application.
Fig. 7 is a block diagram of a data transmission device according to an embodiment of the present application. The apparatus may be implemented as all or a portion of a dispatch center device. As shown in fig. 7, the apparatus includes: an acquisition module 401 and a processing module 402.
An obtaining module 401 configured to obtain network quality data sent by each client;
a processing module 402, configured to select an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirement of each service data; and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when transmitting various service data to each target network.
Optionally, the processing module 402 includes:
a determining submodule 421 configured to determine that there is a failed link based on the network quality data of the client;
the selecting sub-module 422 is configured to determine an optimal transmission path for transmitting various service data from each client to each target network after selecting a link with a fault.
Optionally, the selecting sub-module 422 is configured to determine, based on various transmission quality requirements, optimal transmission paths from each client to each target network corresponding to various different transmission quality requirements, respectively; after determining the optimal transmission path according to various transmission quality requirements, associating the port number with the optimal transmission path through the corresponding relation between the various transmission quality requirements and the port number, wherein each transmission quality requirement corresponds to at least one port number, and the port number corresponds to the service type of the service data.
Optionally, the transmission quality requirement comprises at least one of a delay requirement, a packet loss requirement.
In the embodiment of the application, the network quality data of each client of the dispatching center equipment and the transmission quality requirements of various service data are used for selecting the optimal transmission path for various service data, and then the optimal transmission path configuration configured for each client and each proxy server is obtained based on the optimal transmission path. And the proxy server and the client forward the service data based on the next hop node in the optimal transmission path configuration when transmitting the data. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss.
Fig. 8 is a block diagram of a data transmission device according to an embodiment of the present application. The apparatus may be implemented as all or part of a proxy server or client. As shown in fig. 8, the apparatus includes: an acquisition module 501, a determination module 502 and a sending module 503.
An obtaining module 501, configured to obtain an optimal transmission path configuration configured by a scheduling center device, where the optimal transmission path configuration includes a next hop node when transmitting various service data to each target network;
a determining module 502 configured to select a next hop node for the service data based on the optimal transmission path configuration;
a sending module 503, configured to send the service data to the selected next hop node.
Optionally, the determining module 502 includes:
the monitoring submodule 521 is configured to monitor a data transmission port, and determine a port number for receiving the service data, where the port number corresponds to a service type of the service data;
the determining sub-module 522 is configured to determine a corresponding next hop node from the optimal transmission path configuration based on the port number of the received traffic data and the target network corresponding to the destination address of the traffic data.
Optionally, the sending module 503 is further configured to periodically send the broadcast probe packet;
the device also includes:
a receiving module 504 configured to receive the response packets of the respective network nodes;
a determining module 502, further configured to determine network quality data with each network node based on the response data packet;
the sending module 503 is further configured to send the network quality data to the scheduling center device.
Optionally, the next hop node is a proxy server or a target server.
In the embodiment of the application, when the proxy server or the client transmits the service data, the service data is forwarded based on the next hop node in the optimal transmission path configuration. The optimal transmission path configuration comprises next hop nodes when various service data are transmitted to each target network, and different service data have different requirements on transmission quality, for example, some services require low delay and some services require low packet loss.
The embodiment of the application also provides the electronic equipment, which can be a client, a server or a dispatching center device. The electronic device may comprise a processor and a memory, said memory storing at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by said processor to implement the aforementioned method.
Fig. 9 is a schematic structural diagram of a server according to an embodiment of the present application. Referring to fig. 9, a server 600 includes a Central Processing Unit (CPU) 601, a system Memory 604 including a Random Access Memory (RAM) 602 and a Read-Only Memory (ROM) 603, and a system bus 605 connecting the system Memory 604 and the CPU 601. The server 600 also includes a basic Input/Output system (I/O system) 606, which facilitates the transfer of information between devices within the computer, and a mass storage device 607, which stores an operating system 613, application programs 614, and other program modules 615.
The basic input/output system 606 includes a display 608 for displaying information and an input device 609 such as a mouse, keyboard, etc. for user input of information. Wherein a display 608 and an input device 609 are connected to the central processing unit 601 through an input output controller 610 connected to the system bus 605. The basic input/output system 606 may also include an input/output controller 610 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, input/output controller 610 may also provide output to a display screen, a printer, or other type of output device.
The mass storage device 607 is connected to the central processing unit 601 through a mass storage controller (not shown) connected to the system bus 605. The mass storage device 607 and its associated computer-readable media provide non-volatile storage for the server 600. That is, mass storage device 607 may include a computer-readable medium (not shown), such as a hard disk or CD-ROM drive.
Without loss of generality, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, Erasable Programmable Read Only Memory (EPROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash Memory or other solid state Memory technology, Compact Disc Read-Only Memory (CD-ROM), Digital Versatile Disc (DVD), or other optical, magnetic, tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will appreciate that computer storage media is not limited to the foregoing. The system memory 604 and mass storage device 607 described above may be collectively referred to as memory.
According to various embodiments of the invention, the server 600 may also operate as a remote computer connected to a network through a network, such as the Internet. That is, the server 600 may be connected to the network 612 through the network interface unit 611 connected to the system bus 605, or may be connected to other types of networks or remote computer systems (not shown) using the network interface unit 611.
The memory further includes one or more programs, and the one or more programs are stored in the memory and configured to be executed by the CPU. The CPU 601 realizes the aforementioned data transmission method by executing the one or more programs.
Those skilled in the art will appreciate that the architecture shown in FIG. 9 does not constitute a limitation on the server 600, and may include more or fewer components than those shown, or combine certain components, or employ a different arrangement of components.
Embodiments of the present application also provide a computer-readable storage medium storing at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by the processor to implement the method as described above. For example, the computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Embodiments of the present application also provide a computer program product having at least one instruction, at least one program, a set of codes, or a set of instructions stored thereon, loaded into and executed by the processor to implement the method as described above.
It should be understood that reference to "a plurality" herein means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (10)
1. A data transmission method applied to data transmission of a cross-regional network, where the cross-regional data transmission network includes a plurality of proxy server clusters distributed and a scheduling center device respectively connected to the plurality of proxy server clusters, and the method is performed by the scheduling center device, and the method includes:
acquiring network quality data sent by each client;
selecting an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirements of each service data;
and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when various service data are transmitted to each target network, and the next hop node when the client transmits various service data to each target network is a proxy server or not.
2. The method according to claim 1, wherein the selecting an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirement of each service data comprises:
determining a failed link based on the network quality data of the client;
and after the failed link is selected, determining an optimal transmission path when various service data are transmitted from each client to each target network.
3. The method according to claim 2, wherein the determining an optimal transmission path for transmitting various traffic data from the respective client to the respective target network comprises:
respectively determining optimal transmission paths from the clients to the target networks corresponding to various different transmission quality requirements based on various transmission quality requirements;
and after determining an optimal transmission path according to the various transmission quality requirements, associating a port number with the optimal transmission path through the corresponding relation between the various transmission quality requirements and the port number, wherein each transmission quality requirement corresponds to at least one port number, and the port number corresponds to the service type of the service data.
4. A data transmission method, applied to a cross-region data transmission network, where the cross-region data transmission network includes a plurality of proxy server clusters distributed and a scheduling center device respectively connected to the plurality of proxy server clusters, and the method is executed by a proxy server or a client, and includes:
acquiring an optimal transmission path configuration configured by the scheduling center device, wherein the optimal transmission path configuration comprises a next hop node when various service data are transmitted to each target network, and the next hop node when the client transmits various service data to each target network is a proxy server or not;
selecting a next hop node for service data based on the optimal transmission path configuration;
and sending the service data to the selected next hop node.
5. The method of claim 4, wherein selecting the next hop node for traffic data based on the optimal transmission path configuration comprises:
monitoring a data transmission port, and determining a port number for receiving the service data, wherein the port number corresponds to the service type of the service data;
and determining a corresponding next hop node from the optimal transmission path configuration based on the port number for receiving the service data and a target network corresponding to the destination address of the service data.
6. The method according to claim 4 or 5, characterized in that the method further comprises:
periodically transmitting a broadcast probe packet;
receiving response data packets of each network node;
determining network quality data between each network node and the corresponding network node based on the response data packet;
and sending the network quality data to scheduling center equipment, wherein the scheduling center equipment is used for obtaining the optimal transmission path configuration by adopting the network quality data.
7. A data transmission apparatus, applied to a cross-region data transmission network, where the cross-region data transmission network includes a plurality of distributed proxy server clusters and a scheduling center device respectively connected to the plurality of proxy server clusters, and the data transmission apparatus belongs to the scheduling center device, and the apparatus includes:
the acquisition module is configured to acquire the network quality data sent by each client;
the processing module is configured to select an optimal transmission path for each service data based on the network quality data of each client and the transmission quality requirements of each service data; and obtaining optimal transmission path configuration configured for each client and each proxy server based on the optimal transmission path, wherein the optimal transmission path configuration comprises a next hop node when various service data are transmitted to each target network, and the next hop node when the client transmits various service data to each target network is a proxy server or not.
8. A data transmission apparatus, applied to a cross-region data transmission network, where the cross-region data transmission network includes a plurality of proxy server clusters distributed and a scheduling center device respectively connected to the plurality of proxy server clusters, and the data transmission apparatus belongs to a proxy server or a client, and the apparatus includes:
an obtaining module, configured to obtain an optimal transmission path configuration configured by the scheduling center device, where the optimal transmission path configuration includes a next hop node when transmitting various service data to each target network, and the next hop node when the client transmits various service data to each target network is a proxy server or is not a proxy server;
a determining module configured to select a next hop node for traffic data based on the optimal transmission path configuration;
a sending module configured to send the service data to the selected next hop node.
9. An electronic device, comprising a processor and a memory, the memory storing at least one instruction, at least one program, a set of codes, or a set of instructions, which is loaded and executed by the processor to implement the method of any of claims 1 to 3 or to implement the method of any of claims 4 to 6.
10. A computer readable storage medium storing at least one instruction, at least one program, a set of codes, or a set of instructions, loaded and executed by a processor to implement the method of any of claims 1 to 3 or to implement the method of any of claims 4 to 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911096299.4A CN110809054B (en) | 2019-11-11 | 2019-11-11 | Data transmission method, device, equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911096299.4A CN110809054B (en) | 2019-11-11 | 2019-11-11 | Data transmission method, device, equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110809054A CN110809054A (en) | 2020-02-18 |
CN110809054B true CN110809054B (en) | 2021-10-29 |
Family
ID=69501945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911096299.4A Active CN110809054B (en) | 2019-11-11 | 2019-11-11 | Data transmission method, device, equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110809054B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343093B (en) * | 2020-02-28 | 2021-07-09 | 腾讯科技(深圳)有限公司 | Service data transmission method and device |
CN112087489B (en) * | 2020-08-05 | 2023-06-30 | 北京工联科技有限公司 | Relay forwarding selection method and system for online mobile phone game network transmission |
CN114172842B (en) * | 2020-09-10 | 2023-09-19 | 中国移动通信有限公司研究院 | Data transmission processing method, device, equipment and readable storage medium |
CN112134763B (en) * | 2020-09-25 | 2022-08-02 | 北京浪潮数据技术有限公司 | Method, system, equipment and medium for transmitting layered messages among cluster nodes |
CN113542099B (en) * | 2021-07-21 | 2023-04-28 | 北京字跳网络技术有限公司 | Data transmission method, device, electronic equipment, medium and product |
CN113965973A (en) * | 2021-10-21 | 2022-01-21 | 中国电力科学研究院有限公司 | Heterogeneous network wireless communication technology selection method, system, device and storage medium |
CN114285763B (en) * | 2021-11-26 | 2023-05-30 | 中国联合网络通信集团有限公司 | Data acquisition method, device and computer readable storage medium |
CN114268613B (en) * | 2022-03-02 | 2022-06-03 | 阿里巴巴(中国)有限公司 | Data transmission system, method, device and storage medium |
CN115277541B (en) * | 2022-08-01 | 2024-01-26 | 明阳产业技术研究院(沈阳)有限公司 | IPv 6-based communication method and related equipment |
CN115834655A (en) * | 2022-10-26 | 2023-03-21 | 支付宝(杭州)信息技术有限公司 | Method and device for accessing server in private network |
CN118041857A (en) * | 2022-11-08 | 2024-05-14 | 中兴通讯股份有限公司 | Data transmission processing method and device, storage medium and electronic device |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008031360A1 (en) * | 2006-09-07 | 2008-03-20 | Huawei Technologies Co., Ltd. | The method, system and device for transmitting in the wireless relay system |
CN103166959A (en) * | 2013-02-28 | 2013-06-19 | 东北大学 | Control system and control method of multipath real-time transmission |
CN105515915A (en) * | 2015-12-25 | 2016-04-20 | 厦门网宿软件科技有限公司 | Node detection method, device, route selection method, device and network system |
CN105959219A (en) * | 2016-06-14 | 2016-09-21 | 乐视控股(北京)有限公司 | Data processing method and apparatus |
CN106487684A (en) * | 2016-11-08 | 2017-03-08 | 中国电子科技集团公司第二十研究所 | A kind of method for routing based on link-quality and queuing delay |
CN108370531A (en) * | 2015-12-30 | 2018-08-03 | 华为技术有限公司 | Method for determining transmission link and terminal device |
-
2019
- 2019-11-11 CN CN201911096299.4A patent/CN110809054B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008031360A1 (en) * | 2006-09-07 | 2008-03-20 | Huawei Technologies Co., Ltd. | The method, system and device for transmitting in the wireless relay system |
CN103166959A (en) * | 2013-02-28 | 2013-06-19 | 东北大学 | Control system and control method of multipath real-time transmission |
CN105515915A (en) * | 2015-12-25 | 2016-04-20 | 厦门网宿软件科技有限公司 | Node detection method, device, route selection method, device and network system |
CN108370531A (en) * | 2015-12-30 | 2018-08-03 | 华为技术有限公司 | Method for determining transmission link and terminal device |
CN105959219A (en) * | 2016-06-14 | 2016-09-21 | 乐视控股(北京)有限公司 | Data processing method and apparatus |
CN106487684A (en) * | 2016-11-08 | 2017-03-08 | 中国电子科技集团公司第二十研究所 | A kind of method for routing based on link-quality and queuing delay |
Also Published As
Publication number | Publication date |
---|---|
CN110809054A (en) | 2020-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110809054B (en) | Data transmission method, device, equipment and storage medium | |
US9838166B2 (en) | Data stream division to increase data transmission rates | |
JP6473688B2 (en) | Data stream splitting to increase data transfer rate | |
US10027574B2 (en) | Redundant pathways for network elements | |
CN110661708B (en) | Network optimization method, system and network equipment | |
US11252267B2 (en) | Content stream integrity and redundancy system | |
CN106851769A (en) | Method, the device of generation routing iinformation and determination transmission path | |
CN102420868A (en) | Service providing method, device and system | |
JP5875696B2 (en) | Data distribution system, distribution device, terminal device, and data distribution method | |
CN107332793B (en) | Message forwarding method, related equipment and system | |
JP6892206B2 (en) | Multipoint communication systems and methods and programs | |
US7783784B1 (en) | Method and apparatus for adaptive selection of algorithms to load and spread traffic on an aggregation of network interface cards | |
US20120218907A1 (en) | System and method for coordinated discovery of the status of network routes by hosts in a network | |
CN108632066B (en) | Method and device for constructing video multicast virtual network | |
JP2000101642A (en) | Method and system for stream distribution | |
CN114465658A (en) | Transmission link selection method, communication system, device, and storage medium | |
Cui et al. | Optimizing P2P streaming throughput under peer churning | |
JP2004201111A (en) | Multicast packet distributing system, method, and program | |
KR101163395B1 (en) | Data forwarding apparatus, data forwarding method, and multiple tactical datalink system including the same | |
Bhering et al. | Multipath Selection Mechanism for Wireless Video-Surveillance Systems. | |
US11985072B2 (en) | Multimedia data stream processing method, electronic device, and storage medium | |
US10607085B2 (en) | Automatically rebroadcasting video streams for confidence review | |
KR101074465B1 (en) | Method and apparatus for controlling traffic by cooperating with peer | |
CN117938273A (en) | Communication method, device, equipment, medium and product under quantum network architecture | |
CN117135769A (en) | Network connection recovery method and device, network node and controller |
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 |