WO2017161840A1 - Data stream transmission method and device - Google Patents

Data stream transmission method and device Download PDF

Info

Publication number
WO2017161840A1
WO2017161840A1 PCT/CN2016/098067 CN2016098067W WO2017161840A1 WO 2017161840 A1 WO2017161840 A1 WO 2017161840A1 CN 2016098067 W CN2016098067 W CN 2016098067W WO 2017161840 A1 WO2017161840 A1 WO 2017161840A1
Authority
WO
WIPO (PCT)
Prior art keywords
data stream
terminal
packet
message
wan
Prior art date
Application number
PCT/CN2016/098067
Other languages
French (fr)
Chinese (zh)
Inventor
李晓龙
Original Assignee
中兴通讯股份有限公司
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 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2017161840A1 publication Critical patent/WO2017161840A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/30Routing of multiclass traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects

Definitions

  • the present invention relates to the field of communications, and in particular to a data stream transmission method and apparatus.
  • WAN Wide Area Network
  • pseudo load balancing that is, different allocation is performed according to the IP address of the LAN side device.
  • the lines are allocated in units of the IP of the intranet PC.
  • PCs 1, 3, and 5 go WAN1, 2, 4, and 6 to WAN2.
  • an intranet PC can only use one WAN port, and does not have the effect of bandwidth superposition, which wastes the bandwidth of multiple lines. It is not difficult to conclude that IP equalization is equivalent to the superposition of two or more single WAN products.
  • the second is done by a port load balancing function.
  • the bandwidth aggregation router is designed to send the Internet requests sent by the PC to different WAN ports according to the busy and idle levels. When the Internet data comes back, it can also be returned through different WAN ports. Each PC can access the Internet and can communicate with multiple ports at the same time. Therefore, when opening web browsing, downloading, etc., since these port data can be allocated to different WAN ports, the PC does not have to be on an external line one by one. Send the port data stream, and wait for the return, but the data transmission can be carried out simultaneously in several WAN ports, and several WAN ports respectively return the data. As a result, the PC achieves the purpose of using multiple lines to access the Internet, and the bandwidth is doubled. effect. That is, port 80 (HyperText Transfer Protocol (http)) performs data communication on WAN1, and port 21 (File Transfer Protocol (ftp)) performs data communication on WAN2.
  • http HyperText Transfer Protocol
  • ftp File Transfer Protocol
  • the related art has the disadvantage that the load balancing function in linux is based on the port to perform a certain proportion of data distribution. Although the bandwidth can be effectively increased, the fatal disadvantage is that the WAN port of a certain data stream may not be optimized.
  • the path that is, the inability to perform accurate data flow routing assignment based on any data stream. For example, if one WAN port is a mobile LTE network and the other WAN port is a wired wired network, if the data stream is intended to access the telecommunications server and is assigned to the mobile network, the actual delay of the data stream is Relatively large, the user experience is very bad.
  • the WAN port allocated by the terminal for data flow is not the problem of its optimized path, and there is currently no effective solution.
  • the present invention provides a data stream transmission method and apparatus to solve at least the problem that the WAN port of the data stream allocation of the terminal in the related art is not its optimized path.
  • a data stream transmission method including:
  • the terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet
  • the terminal simultaneously sends multiple data stream messages on multiple WAN ports on the terminal;
  • the terminal monitors, in the multiple WAN ports, the first response packet corresponding to the data flow packet, and selects the optimal transmission of the data flow packet according to the fast feedback speed of the first response packet.
  • WAN port the first response packet corresponding to the data flow packet
  • the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message includes: the optimal WAN port is the first of the plurality of WAN ports. The fastest WAN port in response to the message.
  • the method further includes: the terminal stops copying the data flow message And transmitting the data flow packet through the optimal WAN port.
  • the method before the data stream packet to be transmitted by the terminal is copied, the method includes:
  • the data flow message to be transmitted by the terminal is triggered to be copied.
  • the method before the data stream packet to be transmitted by the terminal is copied, the method includes:
  • a transmission path is configured for the data flow according to the routing configuration information of the entry.
  • the method further includes:
  • the terminal records the correspondence between the optimal WAN port and the data flow into the dynamic routing table.
  • a data stream transmission method including:
  • the terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet
  • the terminal monitors the response packet corresponding to the detection packet on the plurality of WAN ports, and selects an optimal WAN port for transmitting the data packet according to the feedback speed of the response packet.
  • the method further includes: after the terminal sends the detection packet corresponding to the plurality of the data flow packets, the multiple WAN ports on the terminal are more than The WAN port of the wide area network sends the data stream message.
  • the selecting, according to the speed of the feedback of the second response packet, the optimal WAN port for transmitting the data stream packet includes: the optimal WAN port is the feedback of the second WAN port The fastest WAN port in response to the message.
  • the method further includes: the terminal stops copying the data stream message And transmitting the data flow packet through the optimal WAN port.
  • the method before the data stream packet to be transmitted by the terminal is copied, the method includes:
  • the data flow message to be transmitted by the terminal is triggered to be copied.
  • the method before the data stream packet to be transmitted by the terminal is copied, the method includes: when the entry corresponding to the data stream is found in the dynamic routing table, according to the routing configuration information of the entry The data flow configures the transmission path.
  • the method further includes: the terminal, the optimal WAN port and The correspondence of the data streams is recorded in the dynamic routing table.
  • the detection packet includes: a Ping detection packet.
  • a data stream transmission apparatus which is applied to a terminal, and includes:
  • a first copy module configured to copy a data stream message to be transmitted, to obtain a plurality of the data stream messages
  • a first sending module configured to send, by the terminal, a plurality of the data stream messages at a plurality of wide area network WAN ports on the terminal;
  • the first monitoring module is configured to: in the first WAN port, listen to the first response packet corresponding to the data flow packet, and select, according to the feedback speed of the protocol packet, the data packet to be transmitted.
  • the optimal WAN port is configured to: in the first WAN port, listen to the first response packet corresponding to the data flow packet, and select, according to the feedback speed of the protocol packet, the data packet to be transmitted.
  • a data stream transmission apparatus which is applied to a terminal, and includes:
  • a second copy module configured to copy the data stream message to be transmitted, to obtain a plurality of the data stream messages
  • a second sending module configured to send, by using a plurality of wide area network WAN ports on the terminal, detection packets corresponding to the plurality of data flow packets;
  • the second monitoring module is configured to monitor, in the multiple WAN ports, a second response packet corresponding to the detection packet, and select, according to a speed of the feedback speed of the second response packet, to transmit the data packet.
  • the optimal WAN port is configured to monitor, in the multiple WAN ports, a second response packet corresponding to the detection packet, and select, according to a speed of the feedback speed of the second response packet, to transmit the data packet.
  • a storage medium is also provided.
  • the storage medium is arranged to store program code for performing the following steps:
  • the terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet
  • the terminal simultaneously sends multiple data stream messages on multiple WAN ports on the terminal;
  • the terminal monitors, in the multiple WAN ports, the first response packet corresponding to the data flow packet, and selects the optimal transmission of the data flow packet according to the fast feedback speed of the first response packet.
  • WAN port the first response packet corresponding to the data flow packet
  • the storage medium is further arranged to store program code for performing the following steps:
  • the optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the first response message.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the terminal After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message, the terminal stops copying the data stream message, and passes the data stream message through the Describe the optimal WAN port transmission.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the dynamic routing table searches for an entry of the data stream corresponding to the data stream packet, where the dynamic routing table is configured by the WAN port and the data corresponding to the WAN port.
  • the feature information of the stream is configured to configure a transmission path of the data stream of the terminal;
  • the data flow message to be transmitted by the terminal is triggered to be copied.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the transmission path is configured for the data stream according to the routing configuration information of the entry.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the terminal After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the terminal records the correspondence between the optimal WAN port and the data stream to the In the dynamic routing table.
  • a storage medium is also provided.
  • the storage medium is configured to store program code for performing the following steps: the terminal to copy the data stream message to be transmitted to obtain a plurality of the data stream message; the terminal is in the plurality of wide area network WAN ports on the terminal Sending a detection packet corresponding to the plurality of the data stream packets; the terminal listening to the response packet corresponding to the detection packet on the plurality of WAN ports, according to the speed of the feedback of the response packet Select the optimal WAN port for transmitting the data packet.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the terminal After the plurality of wide area network WAN ports on the terminal send the detection packets corresponding to the plurality of the data stream messages, the terminal sends the data flow report on the WAN ports of the plurality of wide area networks on the terminal. Text.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the second response message.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the dynamic routing table searches for an entry of the data stream corresponding to the data stream packet, where the dynamic routing table is configured by the WAN port and the data corresponding to the WAN port.
  • the feature information of the stream is configured to configure a transmission path of the data stream of the terminal; if the entry corresponding to the data stream is not found, triggering the data flow report to be transmitted by the terminal. The text is copied.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the transmission path is configured for the data stream according to the routing configuration information of the entry.
  • the storage medium is further arranged to store program code for performing the following steps:
  • the terminal After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the terminal records the correspondence between the optimal WAN port and the data stream to the In the dynamic routing table.
  • the data stream packet to be transmitted by the terminal is copied to obtain a plurality of the data stream packets; the terminal simultaneously sends a plurality of the data stream packets in the WAN ports of the plurality of wide area networks on the terminal; the terminal The plurality of WAN ports are configured to monitor the first response packet corresponding to the data flow packet, and select an optimal WAN port for transmitting the data flow packet according to the feedback speed of the first response packet, thereby solving the terminal
  • the WAN port allocated by the data stream is not the problem of its optimized path, and the rationality of the WAN port for the data stream allocation of the terminal is realized.
  • FIG. 1 is a flowchart 1 of a data stream transmission method according to an embodiment of the present invention.
  • FIG. 2 is a second flowchart of a data stream transmission method according to an embodiment of the present invention.
  • FIG. 3 is a block diagram 1 of a structure of a data stream transmission apparatus according to an embodiment of the present invention.
  • FIG. 4 is a block diagram 2 of a data stream transmission apparatus according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of a dynamic routing table in accordance with a preferred embodiment of the present invention.
  • FIG. 6 is a block diagram showing the structure of a data transmission apparatus according to a preferred embodiment of the present invention.
  • FIG. 7 is a flow chart of a data transmission method in accordance with a preferred embodiment of the present invention.
  • FIG. 1 is a flowchart 1 of a data stream transmission method according to an embodiment of the present invention. As shown in FIG. 1 , the process includes the following steps:
  • Step S102 The terminal processes the data stream packet to be transmitted, and obtains multiple data stream packets.
  • Step S104 The terminal simultaneously sends multiple data stream messages in multiple WAN ports on the terminal.
  • step S106 the terminal monitors the first response packet corresponding to the data flow message on the multiple WAN ports, and selects an optimal WAN port for transmitting the data flow message according to the speed of the feedback speed of the first response message.
  • the terminal processes the data stream packet to be transmitted, and obtains a plurality of the data stream packet, wherein the data stream packet is a protocol packet with a response packet, and the terminal simultaneously has more information on the terminal.
  • the WAN port of the WAN sends a plurality of the data stream messages, and the terminal monitors the first response message corresponding to the data stream message in the multiple WAN ports, and selects the transmission according to the speed of the feedback of the first response message.
  • the optimal WAN port of the data stream message The network filtering system of the terminal, netfilter, can copy the data stream message with the response function to be transmitted, and send the copied message to multiple WAN ports until the optimal WAN port is detected, and then stop copying the data stream message.
  • the source data stream message that is not subsequently transmitted is sent at the optimal WAN port.
  • the fastest WAN port that can respond to the response message can be selected as the optimal WAN port.
  • the above technical solution while transmitting the data stream message, also selects which WAN port is the optimal WAN port, stops copying after selecting the optimal transmission path, implements soft handover, avoids waiting for the real message, and solves the problem.
  • the WAN port allocated by the data stream of the terminal is not the problem of its optimized path, and the rationality of the WAN port for realizing the data stream allocation of the terminal is realized.
  • the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message includes: the optimal WAN port is the feedback of the first response message in the plurality of WAN ports.
  • the fastest WAN port In the actual selection process, it is possible that the optimal WAN port has a transmission task at this time, and the WAN port with the second fastest feedback speed is selected as the optimal WAN port. Therefore, the optimal WAN port selected in the above embodiment may be based on the feedback speed. A list of items, in the special case, select by order.
  • the terminal stops copying the data stream message, and the data stream message is passed.
  • the optimal WAN port transmission Before the optimal WAN port is selected, the copied data stream packet is transmitted on all WAN ports, which is a waste of port resources. After selecting the optimal WAN port, the data stream packet of the subsequent part is stopped to be copied. Part of the data stream message is transmitted separately in the optimal WAN port. The data stream packet before the optimal WAN port is selected without repeated transmission. The replication is stopped immediately, and the WAN port except the optimal WAN port is idle. save resources.
  • an entry of the data stream corresponding to the data stream packet is searched in the dynamic routing table, where the dynamic routing table is used by the WAN port and the WAN.
  • the data flow message to be transmitted by the terminal is triggered to be complexed. system.
  • a transmission path is configured for the data flow according to the routing configuration information of the entry.
  • the feature information of the data stream includes the quintuple information of the data stream, and the quintuple information includes the following information: Source IP address, source port, destination IP address, destination port, transport layer protocol.
  • the characteristic information of the data stream is extracted by the network filtering system netfilter of the terminal.
  • the terminal after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the terminal records the correspondence between the optimal WAN port and the data stream to In the dynamic routing table. For the data stream that is not recorded in the dynamic routing table, when the optimal WAN port is detected, the corresponding relationship is recorded in the dynamic routing table to facilitate the next transmission of the data stream.
  • FIG. 2 is a flowchart 2 of a data stream transmission method according to an embodiment of the present invention. As shown in FIG. 2, the process includes the following steps:
  • Step S202 The terminal processes the data stream packet to be transmitted, and obtains multiple data stream packets.
  • Step S204 the terminal sends a detection packet corresponding to the plurality of data stream messages on the WAN ports of the plurality of wide area networks on the terminal;
  • step S206 the terminal monitors the second response packet corresponding to the detection packet on the plurality of WAN ports, and selects an optimal WAN port for transmitting the data packet according to the speed of the feedback speed of the second response packet.
  • the terminal processes the data stream packet to be transmitted, and obtains a plurality of the data stream packet, where the data stream packet is a protocol packet that does not have a response packet; the terminal is more on the terminal.
  • the WAN port of the WAN sends a detection packet corresponding to the plurality of data stream packets; the terminal monitors the second response packet corresponding to the detection packet in the plurality of WAN ports, according to the feedback of the second response packet
  • the speed of the selection selects the optimal WAN port for transmitting the data message.
  • the network filtering system of the terminal netfilter, copies the data stream message that does not have a response function, and sends the copied message to multiple WAN ports. Before sending, send a packet for detecting the optimal WAN port.
  • the detection packet has a response function.
  • the detection packet can be a self-compiled packet.
  • the ping packet can be detected in the related art.
  • the second response packet corresponding to the UDP protocol is a Ping detection packet.
  • the optimal WAN port is detected, the data stream packet is stopped, and the source data stream packet that is not subsequently transmitted is sent at the optimal WAN port.
  • the fastest WAN port that can respond to the response message can be selected as the optimal WAN port.
  • the above technical solution while transmitting the data stream message, also selects which WAN port is the optimal WAN port, stops copying after selecting the optimal transmission path, implements soft handover, avoids waiting for the real message, and solves the problem.
  • the WAN port allocated by the data stream of the terminal is not the problem of its optimized path, and the rationality of the WAN port for realizing the data stream allocation of the terminal is realized.
  • the method further includes: after the plurality of wide area network WAN ports on the terminal send the detection message corresponding to the plurality of data stream messages, or at the same time, the plurality of wide area network WANs on the terminal The port sends the data stream packet. After sending the detection packet on multiple WAN ports, there is no need to wait for the response packet of the detection packet, and then after sending the replication message. The data stream message avoids the waiting of the message that really needs to be transmitted.
  • the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the second response message includes: the optimal WAN port is the feedback of the second response message in the plurality of WAN ports.
  • the fastest WAN port In the actual selection process, it is possible that the optimal WAN port has a transmission task at this time, and the WAN port with the second fastest feedback speed is selected as the optimal WAN port. Therefore, the optimal WAN port selected in the above embodiment may be based on the feedback speed. A list of items, in the special case, select by order.
  • the terminal stops copying the data stream message, and the data stream message is passed.
  • the optimal WAN port transmission Before selecting the optimal WAN port, the copied data stream packets are transmitted on all WAN ports, which is a waste of port resources. After selecting the optimal WAN port, the replication can be stopped immediately, and the optimal WAN port will be removed. The external WAN port is free to save resources in time.
  • an entry of the data stream corresponding to the data stream packet is searched in the dynamic routing table, where the dynamic routing table is used by the WAN port and the WAN.
  • the data flow message to be transmitted by the terminal is triggered to be copied.
  • a transmission path is configured for the data flow according to the routing configuration information of the entry.
  • the feature information of the data stream includes the quintuple information of the data stream, and the quintuple information includes the following information: Source IP address, source port, destination IP address, destination port, transport layer protocol.
  • the characteristic information of the data stream is extracted by the network filtering system netfilter of the terminal.
  • the terminal after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the terminal records the correspondence between the optimal WAN port and the data stream to In the dynamic routing table. For the data stream that is not recorded in the dynamic routing table, when the optimal WAN port is detected, the corresponding relationship is recorded in the dynamic routing table to facilitate the next transmission of the data stream.
  • the detection packet includes: a Ping detection packet.
  • the detection packet can be a packet compiled by the user or a Ping detection packet in the related technology.
  • module may implement a combination of software and/or hardware of a predetermined function.
  • apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
  • FIG. 3 is a structural block diagram 1 of a data stream transmission apparatus according to an embodiment of the present invention. As shown in FIG. 3, the apparatus includes:
  • the first copying module 32 is configured to copy the data stream message to be transmitted to obtain a plurality of the data stream message
  • the first sending module 34 is connected to the first copying module 32, and is configured to send a plurality of the data stream messages to the plurality of wide area network WAN ports on the terminal at the same time;
  • the first monitoring module 36 is connected to the first sending module 34, and is configured to monitor the first response packet corresponding to the data stream packet in the multiple WAN ports, according to the speed of the feedback speed of the first response packet.
  • the optimal WAN port for transmitting the data stream message is connected to the first sending module 34, and is configured to monitor the first response packet corresponding to the data stream packet in the multiple WAN ports, according to the speed of the feedback speed of the first response packet.
  • FIG. 4 is a structural block diagram 2 of a data stream transmission apparatus according to an embodiment of the present invention. As shown in FIG. 4, the apparatus includes:
  • the second copying module 42 is configured to copy the data stream message to be transmitted to obtain a plurality of the data stream message
  • the second sending module 44 is connected to the second copying module 42 and configured to send a second response message corresponding to the plurality of data stream messages on the plurality of wide area network WAN ports on the terminal;
  • the second monitoring module 46 is connected to the second sending module 44, and is configured to monitor the second response message corresponding to the detection message in the plurality of WAN ports, and select the transmission according to the speed of the feedback of the second response message.
  • the optimal WAN port of the data message is connected to the second sending module 44, and is configured to monitor the second response message corresponding to the detection message in the plurality of WAN ports, and select the transmission according to the speed of the feedback of the second response message.
  • the optimal WAN port of the data message is connected to the second sending module 44, and is configured to monitor the second response message corresponding to the detection message in the plurality of WAN ports, and select the transmission according to the speed of the feedback of the second response message.
  • each of the above modules may be implemented by software or hardware.
  • the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are respectively located. Different processors.
  • a preferred embodiment of the present invention proposes a method for automatically selecting a port for a data stream in dual WAN mode.
  • the specific implementation method is as follows: a dynamic routing table is set in the Customer Premise Equipment (CPE), and all dynamic routing data is recorded in the table.
  • CPE Customer Premise Equipment
  • the similar form of the table is similar to the dynamic routing table of the general Linux system, and the difference lies in
  • the dynamic routing table is composed of a WAN port and corresponding data stream quintuple information, and the dynamic routing table also has an aging function.
  • FIG. 5 is a schematic diagram of a dynamic routing table, as shown in FIG. 5, in accordance with a preferred embodiment of the present invention.
  • a data stream passes through the CPE device, first, an entry for the data flow is found in the dynamic routing table. If the entry of the data flow does not exist in the dynamic routing table, The data stream is copied into two data streams, and the device sends the two data streams simultaneously from the two WAN ports A and B, waiting for the first data packet replied from the two WAN ports (for example, for responding function)
  • the ACK message received in the three-way handshake is equivalent to the response message.
  • the CPE stops copying the data packet and the data stream is The corresponding record of the A WAN port is recorded in the previous dynamic routing table.
  • the data table has the same aging function as the Address Resolution Protocol (ARP) table. If there is a new data transmission, the aging time of the entry is updated. If there is no data flow for a long time. Then this entry is aged, when heavy When there is new data, the previous steps are renewed.
  • ARP Address Resolution Protocol
  • FIG. 6 is a block diagram showing the structure of a data transmission apparatus according to a preferred embodiment of the present invention.
  • a total of five modules are respectively referred to as a copy module 62 (corresponding to the first copy module 32 and the second of the above embodiment).
  • the firewall module 68 and the advanced policy routing module 610 The copy module 62 is responsible for copying all the data streams not recorded in the dynamic routing table by using the netfilter framework, and transmitting the data packets from multiple ports.
  • the listening module 64 is responsible for listening to all WAN ports, and the netfilter's hook function fetches corresponding (based on quintuple information) response packets of the data stream.
  • the dynamic routing table module 66 is responsible for recording the quintuple information of the data stream and the WAN port of the first response, and recording them one by one.
  • the firewall mangle module 68 is responsible for marking all data streams that have been recorded in the dynamic routing table.
  • the advanced policy routing module 610 performs policy allocation according to the marking of the firewall module and combining the corresponding information in the dynamic routing table to the data stream marked with a specific label.
  • FIG. 7 is a flow chart of a data transmission method according to a preferred embodiment of the present invention. As shown in FIG. 7, the steps are as follows:
  • the CPE first turns on the dual WAN port function.
  • the CPE captures the packet of each data stream transmitted from the LAN port to the WAN port by using the hook function of the netfilter framework, and extracts the quintuple information of the data stream.
  • S703 Search for an entry in the self-built dynamic routing table, if it is found, proceed to S706, and if not, perform S704.
  • the netfilter framework copies the passed data stream message and sends it out from the two wan ports at the same time. For a protocol packet with a response, such as the TCP protocol, the protocol packet is directly copied. For a protocol packet that does not have a response, such as the UDP protocol, a ping detection packet is added before the transmission.
  • the linux firewall module monitors the dual wan port at the same time, the first feedback data packet will be recorded.
  • the ACK packet is used as the feedback data packet
  • the UDP protocol is based on the first response.
  • the ping packet is used as a feedback data packet.
  • the relationship corresponding to the wan port is recorded in the self-built dynamic routing table. The packet of another wan port is discarded, and the copying of the packet is stopped.
  • S707 Perform advanced policy routing configuration according to the label configured by the netfilter rule.
  • the device of the preferred embodiment of the present invention can control the WAN port of each stream according to the quintuple information of any one stream transmitted by the CPE on the local area network (LAN) side, and accurately configure the advanced policy routing.
  • Preferred embodiments of the present invention are directed to the advantages of some of the technical patents of the related art.
  • the advantage of the label under the netfilter framework in combination with the advanced policy routing allocation in the preferred embodiment of the present invention is that it can more accurately track the transmission of each stream, and select each unique data transmission for each data stream, so that for each data Flow is an optimized path that increases user experience.
  • the preferred embodiment of the present invention belongs to a special soft handover, and performs data transmission at the same time. Since there is no need to wait in the device, the transmission message does not occupy the memory of the CPE, and is more in line with the transmission control protocol/Internet interconnection protocol. (Transmission Control Protocol/Internet Protocol, abbreviated as TCP/IP) protocol. It can improve the quality of data transmission and increase user experience.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
  • Embodiments of the present invention also provide a storage medium.
  • the foregoing storage medium may be configured to store program code for performing the following steps:
  • the terminal copies the data stream packet to be transmitted, and obtains multiple data stream packets.
  • the terminal simultaneously sends multiple data stream messages in multiple WAN ports on the terminal;
  • S3 The terminal monitors the first response packet corresponding to the data flow packet on the multiple WAN ports, and selects an optimal WAN port for transmitting the data flow message according to the speed of the feedback of the first response message.
  • the storage medium is further arranged to store program code for performing the method steps of the above-described embodiments:
  • the foregoing storage medium may include, but not limited to, a USB flash drive, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, and a magnetic memory.
  • ROM Read-Only Memory
  • RAM Random Access Memory
  • a mobile hard disk e.g., a hard disk
  • magnetic memory e.g., a hard disk
  • the processor performs the method steps of the foregoing embodiments according to the stored program code in the storage medium.
  • modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein.
  • the steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module.
  • the invention is not limited to any specific combination of hardware and software.
  • the data stream packet to be transmitted by the terminal is copied to obtain a plurality of the data stream packets; the terminal simultaneously sends a plurality of the data stream packets in the WAN ports of the plurality of wide area networks on the terminal; the terminal The plurality of WAN ports are configured to monitor the first response packet corresponding to the data flow packet, and select an optimal WAN port for transmitting the data flow packet according to the feedback speed of the first response packet, thereby solving the terminal
  • the WAN port allocated by the data stream is not the problem of its optimized path, and the rationality of the WAN port for the data stream allocation of the terminal is realized.

Abstract

Provided are a data stream transmission method and device. The method comprises: a terminal copying a data stream message to be transmitted to obtain a plurality of data stream messages; the terminal simultaneously sending the plurality of data stream messages at a plurality of wide area network (WAN) ports on the terminal; and the terminal monitoring a protocol message corresponding to the data stream message at the plurality of WAN ports, and according to a feedback speed of the protocol message, choosing the optimal WAN port for transmitting the data stream message. By applying the technical solution, the problem that a WAN port for data stream distribution of a terminal is not the optimal path thereof is solved, thereby realizing the rationality of the WAN port for the data stream distribution of the terminal.

Description

数据流传输方法及装置Data stream transmission method and device 技术领域Technical field
本发明涉及通信领域,具体而言,涉及一种数据流传输方法及装置。The present invention relates to the field of communications, and in particular to a data stream transmission method and apparatus.
背景技术Background technique
在相关技术中,双广域网(Wide Area Network,简称为WAN)口技术中端口选择方式主要有两种:一种是伪负载均衡,即是根据LAN侧设备的IP地址来进行不同进行分配。实质上是以内网PC的IP为单位分配线路的,例如,1、3、5号PC走WAN1,2、4、6走WAN2。采用上述技术方案,一台内网PC只能使用一个WAN口,并没有起到带宽叠加的效果,浪费了多条线路的带宽。不难得出,IP均衡相当于2个或多个单WAN产品的叠加。第二种是一个叫做端口负载均衡功能完成的。带宽汇聚路由器设计以端口为单位,把PC发出的上网请求按照忙闲程度分别发到不同的WAN口,上网数据回来时,也能通过不同的WAN口返回。而每一台PC上网,同时能够多个端口进行数据通讯,这样在打开网页浏览、下载等操作时,由于这些端口数据能够被分配到不同的WAN口,所以PC不必在一条外线上一个一个地发端口数据流,并等待返回,而是能够在几个WAN口同时进行数据传输,几个WAN口分别返回数据,结果这台PC就达到了使用多条线上网的目的,达到了带宽加倍的效果。即80端口(超文本传输协议(HyperText Transfer Protocol,简称为http))在WAN1进行数据通讯,21端口(文件传输协议(File Transfer Protocol,简称为ftp))在WAN2进行数据通讯。In the related art, there are two main types of port selection methods in the dual-area network (Wide Area Network (WAN) port technology): one is pseudo load balancing, that is, different allocation is performed according to the IP address of the LAN side device. In essence, the lines are allocated in units of the IP of the intranet PC. For example, PCs 1, 3, and 5 go WAN1, 2, 4, and 6 to WAN2. With the above technical solution, an intranet PC can only use one WAN port, and does not have the effect of bandwidth superposition, which wastes the bandwidth of multiple lines. It is not difficult to conclude that IP equalization is equivalent to the superposition of two or more single WAN products. The second is done by a port load balancing function. The bandwidth aggregation router is designed to send the Internet requests sent by the PC to different WAN ports according to the busy and idle levels. When the Internet data comes back, it can also be returned through different WAN ports. Each PC can access the Internet and can communicate with multiple ports at the same time. Therefore, when opening web browsing, downloading, etc., since these port data can be allocated to different WAN ports, the PC does not have to be on an external line one by one. Send the port data stream, and wait for the return, but the data transmission can be carried out simultaneously in several WAN ports, and several WAN ports respectively return the data. As a result, the PC achieves the purpose of using multiple lines to access the Internet, and the bandwidth is doubled. effect. That is, port 80 (HyperText Transfer Protocol (http)) performs data communication on WAN1, and port 21 (File Transfer Protocol (ftp)) performs data communication on WAN2.
相关技术存在缺点在于linux中的负载均衡功能均是根据端口来进行一定比例的数据分配,虽然能够有效的增加带宽,但是致命的缺点在于也许某个数据流被分配的WAN口并不是其最优化的路径,即无法根据任意数据流来进行精确的数据流路由分配。例如,如果一个WAN口是移动LTE网络,另一个WAN口是电信的有线网络,此时如果我们这个数据流是想访问电信服务器,当却被分配到了移动网络,那么这个数据流的实际延迟要相对较大,用户体验十分不好。The related art has the disadvantage that the load balancing function in linux is based on the port to perform a certain proportion of data distribution. Although the bandwidth can be effectively increased, the fatal disadvantage is that the WAN port of a certain data stream may not be optimized. The path, that is, the inability to perform accurate data flow routing assignment based on any data stream. For example, if one WAN port is a mobile LTE network and the other WAN port is a wired wired network, if the data stream is intended to access the telecommunications server and is assigned to the mobile network, the actual delay of the data stream is Relatively large, the user experience is very bad.
针对相关技术中,终端的数据流分配的WAN口并不是其最优化的路径的问题,目前还没有有效地解决方案。For the related art, the WAN port allocated by the terminal for data flow is not the problem of its optimized path, and there is currently no effective solution.
发明内容Summary of the invention
本发明提供了一种数据流传输方法及装置,以至少解决相关技术中终端的数据流分配的WAN口并不是其最优化的路径的的问题。The present invention provides a data stream transmission method and apparatus to solve at least the problem that the WAN port of the data stream allocation of the terminal in the related art is not its optimized path.
根据本发明实施例的一个方面,提供了一种数据流传输方法,包括:According to an aspect of the embodiments of the present invention, a data stream transmission method is provided, including:
终端对待传输的数据流报文进行复制,得到多个所述数据流报文; The terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet;
所述终端同时在所述终端上的多个广域网WAN口发送多个所述数据流报文;The terminal simultaneously sends multiple data stream messages on multiple WAN ports on the terminal;
所述终端在所述多个WAN口监听与所述数据流报文对应的第一回应报文,依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口。The terminal monitors, in the multiple WAN ports, the first response packet corresponding to the data flow packet, and selects the optimal transmission of the data flow packet according to the fast feedback speed of the first response packet. WAN port.
可选地,依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口包括:所述最优WAN口是所述多个WAN口中反馈所述第一回应报文速度最快的WAN口。Optionally, the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message includes: the optimal WAN port is the first of the plurality of WAN ports. The fastest WAN port in response to the message.
可选地,在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:所述终端停止复制所述数据流报文,将所述数据流报文通过所述最优WAN口传输。Optionally, after selecting the optimal WAN port for transmitting the data flow message according to the speed of the feedback of the first response message, the method further includes: the terminal stops copying the data flow message And transmitting the data flow packet through the optimal WAN port.
可选地,在终端对待传输的数据流报文进行复制之前,包括:Optionally, before the data stream packet to be transmitted by the terminal is copied, the method includes:
在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,所述动态路由表用于配置所述终端的数据流的传输路径;Querying, in the dynamic routing table, an entry of the data flow corresponding to the data flow message, where the dynamic routing table is composed of a WAN port and feature information of a data flow corresponding to the WAN port, where the dynamic routing table is used. Configuring a transmission path of the data stream of the terminal;
在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
可选地,在终端对待传输的数据流报文进行复制之前,包括:Optionally, before the data stream packet to be transmitted by the terminal is copied, the method includes:
在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。When an entry corresponding to the data flow is found in the dynamic routing table, a transmission path is configured for the data flow according to the routing configuration information of the entry.
可选地,在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:Optionally, after the selecting, according to the speed of the feedback of the first response packet, the optimal WAN port of the data stream packet, the method further includes:
所述终端将所述最优WAN口和所述数据流的对应关系记录到所述动态路由表中。The terminal records the correspondence between the optimal WAN port and the data flow into the dynamic routing table.
根据本发明实施例的一个方面,提供了一种数据流传输方法,包括:According to an aspect of the embodiments of the present invention, a data stream transmission method is provided, including:
终端对待传输的数据流报文进行复制,得到多个所述数据流报文;The terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet;
所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文;Transmitting, by the terminal, the detection packet corresponding to the plurality of the data flow packets on the WAN port of the plurality of wide area networks on the terminal;
所述终端在所述多个WAN口监听与所述检测报文对应的回应报文,依据所述回应报文的反馈速度的快慢选择传输所述数据报文的最优WAN口。The terminal monitors the response packet corresponding to the detection packet on the plurality of WAN ports, and selects an optimal WAN port for transmitting the data packet according to the feedback speed of the response packet.
可选地,所述方法还包括:所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文之后或者同时,在所述终端上的多个广域网WAN口发送所述数据流报文。Optionally, the method further includes: after the terminal sends the detection packet corresponding to the plurality of the data flow packets, the multiple WAN ports on the terminal are more than The WAN port of the wide area network sends the data stream message.
可选地,依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口包括:所述最优WAN口是所述多个WAN口中反馈所述第二回应报文速度最快的WAN口。 Optionally, the selecting, according to the speed of the feedback of the second response packet, the optimal WAN port for transmitting the data stream packet includes: the optimal WAN port is the feedback of the second WAN port The fastest WAN port in response to the message.
可选地,在依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:所述终端停止复制所述数据流报文,将所述数据流报文通过所述最优WAN口传输。Optionally, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the second response message, the method further includes: the terminal stops copying the data stream message And transmitting the data flow packet through the optimal WAN port.
可选地,在终端对待传输的数据流报文进行复制之前,包括:Optionally, before the data stream packet to be transmitted by the terminal is copied, the method includes:
在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,所述动态路由表用于配置所述终端的数据流的传输路径;Querying, in the dynamic routing table, an entry of the data flow corresponding to the data flow message, where the dynamic routing table is composed of a WAN port and feature information of a data flow corresponding to the WAN port, where the dynamic routing table is used. Configuring a transmission path of the data stream of the terminal;
在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
可选地,在终端对待传输的数据流报文进行复制之前,包括:在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。Optionally, before the data stream packet to be transmitted by the terminal is copied, the method includes: when the entry corresponding to the data stream is found in the dynamic routing table, according to the routing configuration information of the entry The data flow configures the transmission path.
可选地,在依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:所述终端将所述最优WAN口和所述数据流的对应关系记录到所述动态路由表中。Optionally, after selecting the optimal WAN port for transmitting the data flow message according to the speed of the feedback speed of the second response message, the method further includes: the terminal, the optimal WAN port and The correspondence of the data streams is recorded in the dynamic routing table.
可选地,所述检测报文包括:Ping检测报文。Optionally, the detection packet includes: a Ping detection packet.
根据本发明实施例的另一方面,提供了一种数据流传输装置,应用于终端,包括:According to another aspect of the present invention, a data stream transmission apparatus is provided, which is applied to a terminal, and includes:
第一复制模块,设置为对待传输的数据流报文进行复制,得到多个所述数据流报文;a first copy module, configured to copy a data stream message to be transmitted, to obtain a plurality of the data stream messages;
第一发送模块,设置为所述终端同时在所述终端上的多个广域网WAN口发送多个所述数据流报文;a first sending module, configured to send, by the terminal, a plurality of the data stream messages at a plurality of wide area network WAN ports on the terminal;
第一监听模块,设置为在所述多个WAN口监听与所述数据流报文对应的第一回应报文,依据所述协议报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口。The first monitoring module is configured to: in the first WAN port, listen to the first response packet corresponding to the data flow packet, and select, according to the feedback speed of the protocol packet, the data packet to be transmitted. The optimal WAN port.
根据本发明实施例的另一方面,提供了一种数据流传输装置,应用于终端,包括:According to another aspect of the present invention, a data stream transmission apparatus is provided, which is applied to a terminal, and includes:
第二复制模块,设置为对待传输的数据流报文进行复制,得到多个所述数据流报文;a second copy module, configured to copy the data stream message to be transmitted, to obtain a plurality of the data stream messages;
第二发送模块,设置为在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文;a second sending module, configured to send, by using a plurality of wide area network WAN ports on the terminal, detection packets corresponding to the plurality of data flow packets;
第二监听模块,设置为在所述多个WAN口监听与所述检测报文对应的第二回应报文,依据所述第二回应报文的反馈速度的快慢选择传输所述数据报文的最优WAN口。The second monitoring module is configured to monitor, in the multiple WAN ports, a second response packet corresponding to the detection packet, and select, according to a speed of the feedback speed of the second response packet, to transmit the data packet. The optimal WAN port.
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:According to still another embodiment of the present invention, a storage medium is also provided. The storage medium is arranged to store program code for performing the following steps:
终端对待传输的数据流报文进行复制,得到多个所述数据流报文; The terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet;
所述终端同时在所述终端上的多个广域网WAN口发送多个所述数据流报文;The terminal simultaneously sends multiple data stream messages on multiple WAN ports on the terminal;
所述终端在所述多个WAN口监听与所述数据流报文对应的第一回应报文,依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口。The terminal monitors, in the multiple WAN ports, the first response packet corresponding to the data flow packet, and selects the optimal transmission of the data flow packet according to the fast feedback speed of the first response packet. WAN port.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
所述最优WAN口是所述多个WAN口中反馈所述第一回应报文速度最快的WAN口。The optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the first response message.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述终端停止复制所述数据流报文,将所述数据流报文通过所述最优WAN口传输。After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message, the terminal stops copying the data stream message, and passes the data stream message through the Describe the optimal WAN port transmission.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在终端对待传输的数据流报文进行复制之前,在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,所述动态路由表用于配置所述终端的数据流的传输路径;Before the data stream packet to be transmitted by the terminal is copied, the dynamic routing table searches for an entry of the data stream corresponding to the data stream packet, where the dynamic routing table is configured by the WAN port and the data corresponding to the WAN port. The feature information of the stream is configured to configure a transmission path of the data stream of the terminal;
在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在终端对待传输的数据流报文进行复制之前,在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。In the case that the entry corresponding to the data stream is found in the dynamic routing table before the data stream packet to be transmitted by the terminal is copied, the transmission path is configured for the data stream according to the routing configuration information of the entry. .
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述终端将所述最优WAN口和所述数据流的对应关系记录到所述动态路由表中。After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the terminal records the correspondence between the optimal WAN port and the data stream to the In the dynamic routing table.
根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:终端对待传输的数据流报文进行复制,得到多个所述数据流报文;所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文;所述终端在所述多个WAN口监听与所述检测报文对应的回应报文,依据所述回应报文的反馈速度的快慢选择传输所述数据报文的最优WAN口。According to still another embodiment of the present invention, a storage medium is also provided. The storage medium is configured to store program code for performing the following steps: the terminal to copy the data stream message to be transmitted to obtain a plurality of the data stream message; the terminal is in the plurality of wide area network WAN ports on the terminal Sending a detection packet corresponding to the plurality of the data stream packets; the terminal listening to the response packet corresponding to the detection packet on the plurality of WAN ports, according to the speed of the feedback of the response packet Select the optimal WAN port for transmitting the data packet.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文之后或者同时,在所述终端上的多个广域网WAN口发送所述数据流报文。After the plurality of wide area network WAN ports on the terminal send the detection packets corresponding to the plurality of the data stream messages, the terminal sends the data flow report on the WAN ports of the plurality of wide area networks on the terminal. Text.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
所述最优WAN口是所述多个WAN口中反馈所述第二回应报文速度最快的WAN口。 The optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the second response message.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在终端对待传输的数据流报文进行复制之前,在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,所述动态路由表用于配置所述终端的数据流的传输路径;在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。Before the data stream packet to be transmitted by the terminal is copied, the dynamic routing table searches for an entry of the data stream corresponding to the data stream packet, where the dynamic routing table is configured by the WAN port and the data corresponding to the WAN port. The feature information of the stream is configured to configure a transmission path of the data stream of the terminal; if the entry corresponding to the data stream is not found, triggering the data flow report to be transmitted by the terminal The text is copied.
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在终端对待传输的数据流报文进行复制之前,在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。In the case that the entry corresponding to the data stream is found in the dynamic routing table before the data stream packet to be transmitted by the terminal is copied, the transmission path is configured for the data stream according to the routing configuration information of the entry. .
可选地,存储介质还设置为存储用于执行以下步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the following steps:
在依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述终端将所述最优WAN口和所述数据流的对应关系记录到所述动态路由表中。After selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the terminal records the correspondence between the optimal WAN port and the data stream to the In the dynamic routing table.
通过本发明实施例,终端对待传输的数据流报文进行复制,得到多个该数据流报文;该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文;该终端在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口,解决了终端的数据流分配的WAN口并不是其最优化的路径的问题,实现了终端的数据流分配的WAN口的合理性。According to the embodiment of the present invention, the data stream packet to be transmitted by the terminal is copied to obtain a plurality of the data stream packets; the terminal simultaneously sends a plurality of the data stream packets in the WAN ports of the plurality of wide area networks on the terminal; the terminal The plurality of WAN ports are configured to monitor the first response packet corresponding to the data flow packet, and select an optimal WAN port for transmitting the data flow packet according to the feedback speed of the first response packet, thereby solving the terminal The WAN port allocated by the data stream is not the problem of its optimized path, and the rationality of the WAN port for the data stream allocation of the terminal is realized.
附图说明DRAWINGS
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:The drawings described herein are intended to provide a further understanding of the invention, and are intended to be a part of the invention. In the drawing:
图1是根据本发明实施例的一种数据流传输方法的流程图一;1 is a flowchart 1 of a data stream transmission method according to an embodiment of the present invention;
图2是根据本发明实施例的一种数据流传输方法的流程图二;2 is a second flowchart of a data stream transmission method according to an embodiment of the present invention;
图3是根据本发明实施例的数据流传输装置的结构框图一;3 is a block diagram 1 of a structure of a data stream transmission apparatus according to an embodiment of the present invention;
图4是根据本发明实施例的数据流传输装置的结构框图二;4 is a block diagram 2 of a data stream transmission apparatus according to an embodiment of the present invention;
图5是根据本发明优选实施例的动态路由表的示意图;5 is a schematic diagram of a dynamic routing table in accordance with a preferred embodiment of the present invention;
图6是根据本发明优选实施例的数据传输装置的模块结构框图;6 is a block diagram showing the structure of a data transmission apparatus according to a preferred embodiment of the present invention;
图7是根据本发明优选实施例的数据传输方法的流程图。7 is a flow chart of a data transmission method in accordance with a preferred embodiment of the present invention.
具体实施方式detailed description
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。 The invention will be described in detail below with reference to the drawings in conjunction with the embodiments. It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。It is to be understood that the terms "first", "second" and the like in the specification and claims of the present invention are used to distinguish similar objects, and are not necessarily used to describe a particular order or order.
在本实施例中提供了两种数据流传输方法,图1是根据本发明实施例的一种数据流传输方法的流程图一,如图1所示,该流程包括如下步骤:Two data stream transmission methods are provided in this embodiment. FIG. 1 is a flowchart 1 of a data stream transmission method according to an embodiment of the present invention. As shown in FIG. 1 , the process includes the following steps:
步骤S102,终端对待传输的数据流报文进行复制,得到多个该数据流报文;Step S102: The terminal processes the data stream packet to be transmitted, and obtains multiple data stream packets.
步骤S104,该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文;Step S104: The terminal simultaneously sends multiple data stream messages in multiple WAN ports on the terminal.
步骤S106,该终端在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口。In step S106, the terminal monitors the first response packet corresponding to the data flow message on the multiple WAN ports, and selects an optimal WAN port for transmitting the data flow message according to the speed of the feedback speed of the first response message. .
通过上述步骤,终端对待传输的数据流报文进行复制,得到多个该数据流报文,其中,该数据流报文是具有回应报文的协议报文,该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文,该终端在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口。终端的网络过滤系统netfilter可以对待传输的具有回应功能的数据流报文进行复制,并将复制后的报文在多个WAN口发送,直到检测出最优WAN口之后,停止复制数据流报文,将后续没有传输的源数据流报文在最优WAN口进行发送。其中,可以选择反馈回应报文的速度最快WAN口作为最优WAN口。上述技术方案,在传输数据流报文的同时,还选择哪个WAN口是最优WAN口,在选择出最优传输路径后停止复制,实现了软切换,避免了真正报文的等待,解决了终端的数据流分配的WAN口并不是其最优化的路径的问题,实现了终端的数据流分配的WAN口的合理性。Through the above steps, the terminal processes the data stream packet to be transmitted, and obtains a plurality of the data stream packet, wherein the data stream packet is a protocol packet with a response packet, and the terminal simultaneously has more information on the terminal. The WAN port of the WAN sends a plurality of the data stream messages, and the terminal monitors the first response message corresponding to the data stream message in the multiple WAN ports, and selects the transmission according to the speed of the feedback of the first response message. The optimal WAN port of the data stream message. The network filtering system of the terminal, netfilter, can copy the data stream message with the response function to be transmitted, and send the copied message to multiple WAN ports until the optimal WAN port is detected, and then stop copying the data stream message. The source data stream message that is not subsequently transmitted is sent at the optimal WAN port. Among them, the fastest WAN port that can respond to the response message can be selected as the optimal WAN port. The above technical solution, while transmitting the data stream message, also selects which WAN port is the optimal WAN port, stops copying after selecting the optimal transmission path, implements soft handover, avoids waiting for the real message, and solves the problem. The WAN port allocated by the data stream of the terminal is not the problem of its optimized path, and the rationality of the WAN port for realizing the data stream allocation of the terminal is realized.
在本实施例中,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口包括:该最优WAN口是该多个WAN口中反馈该第一回应报文速度最快的WAN口。在实际选择过程中,有可能最优WAN口此时有传输任务,则选择反馈速度第二快的WAN口作为最优WAN口,所以,上述实施例选择的最优WAN口可以是依据反馈速度的一个列表,在存在特殊情况下,按照列表依次选择。In this embodiment, the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the first response message includes: the optimal WAN port is the feedback of the first response message in the plurality of WAN ports. The fastest WAN port. In the actual selection process, it is possible that the optimal WAN port has a transmission task at this time, and the WAN port with the second fastest feedback speed is selected as the optimal WAN port. Therefore, the optimal WAN port selected in the above embodiment may be based on the feedback speed. A list of items, in the special case, select by order.
在本实施例中,在依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口之后,该终端停止复制该数据流报文,将该数据流报文通过该最优WAN口传输。在选择出最优WAN口之前,复制后的数据流报文在所有WAN口进行传输,是浪费端口资源的,在选择出最优WAN口之后,停止复制后续部分的数据流报文,将后续部分的数据流报文单独在最优WAN口传输,不进行重复传输选出最优WAN口之前的数据流报文,马上停止复制,将除最优WAN口之外的WAN口空闲出来,及时节省资源。In this embodiment, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the terminal stops copying the data stream message, and the data stream message is passed. The optimal WAN port transmission. Before the optimal WAN port is selected, the copied data stream packet is transmitted on all WAN ports, which is a waste of port resources. After selecting the optimal WAN port, the data stream packet of the subsequent part is stopped to be copied. Part of the data stream message is transmitted separately in the optimal WAN port. The data stream packet before the optimal WAN port is selected without repeated transmission. The replication is stopped immediately, and the WAN port except the optimal WAN port is idle. save resources.
在本实施例中,在终端对待传输的数据流报文进行复制之前,在动态路由表中查找与该数据流报文对应的数据流的条目,其中,该动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,该动态路由表用于配置该终端的数据流的传输路径;In this embodiment, before the data stream packet to be transmitted by the terminal is copied, an entry of the data stream corresponding to the data stream packet is searched in the dynamic routing table, where the dynamic routing table is used by the WAN port and the WAN. The feature information of the data stream corresponding to the port, where the dynamic routing table is used to configure a transmission path of the data stream of the terminal;
在未查找到与该数据流对应的条目的情况下,触发该终端对待传输的数据流报文进行复 制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be complexed. system.
在查找到与该数据流对应的条目的情况下,依据该条目的路由配置信息为该数据流配置传输路径。In the case where an entry corresponding to the data stream is found, a transmission path is configured for the data flow according to the routing configuration information of the entry.
在进行复制之前先在动态路由表里匹配,如果匹配到,直接在最优WAN口传输数据流报文,数据流的特征信息包括数据流的五元组信息,五元组信息包括以下信息:源IP地址,源端口,目的IP地址,目的端口,传输层协议。在填写动态路由表时,由终端的网络过滤系统netfilter提取数据流的特征信息。Matching in the dynamic routing table before copying, if it matches, directly transmitting the data stream message in the optimal WAN port, the feature information of the data stream includes the quintuple information of the data stream, and the quintuple information includes the following information: Source IP address, source port, destination IP address, destination port, transport layer protocol. When the dynamic routing table is filled in, the characteristic information of the data stream is extracted by the network filtering system netfilter of the terminal.
在本实施例中,在依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口之后,该终端将该最优WAN口和该数据流的对应关系记录到该动态路由表中。对于动态路由表中没有记录的数据流,检测出最优WAN口情况下,将对应关系记录到动态路由表中,方便该数据流的下一次传输。In this embodiment, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the terminal records the correspondence between the optimal WAN port and the data stream to In the dynamic routing table. For the data stream that is not recorded in the dynamic routing table, when the optimal WAN port is detected, the corresponding relationship is recorded in the dynamic routing table to facilitate the next transmission of the data stream.
在本实施例中提供了一种数据流传输方法,图2是根据本发明实施例的一种数据流传输方法的流程图二,如图2所示,该流程包括如下步骤:In this embodiment, a data stream transmission method is provided. FIG. 2 is a flowchart 2 of a data stream transmission method according to an embodiment of the present invention. As shown in FIG. 2, the process includes the following steps:
步骤S202,终端对待传输的数据流报文进行复制,得到多个该数据流报文;Step S202: The terminal processes the data stream packet to be transmitted, and obtains multiple data stream packets.
步骤S204,该终端在该终端上的多个广域网WAN口发送与多个该数据流报文对应的检测报文;Step S204, the terminal sends a detection packet corresponding to the plurality of data stream messages on the WAN ports of the plurality of wide area networks on the terminal;
步骤S206,该终端在该多个WAN口监听与该检测报文对应的第二回应报文,依据该第二回应报文的反馈速度的快慢选择传输该数据报文的最优WAN口。In step S206, the terminal monitors the second response packet corresponding to the detection packet on the plurality of WAN ports, and selects an optimal WAN port for transmitting the data packet according to the speed of the feedback speed of the second response packet.
通过上述步骤,终端对待传输的数据流报文进行复制,得到多个该数据流报文,其中,该数据流报文是不具有回应报文的协议报文;该终端在该终端上的多个广域网WAN口发送与多个该数据流报文对应的检测报文;该终端在该多个WAN口监听与该检测报文对应的第二回应报文,依据该第二回应报文的反馈速度的快慢选择传输该数据报文的最优WAN口。终端的网络过滤系统netfilter对待传输的不具有回应功能的数据流报文进行复制,并将复制后的报文在多个WAN口发送,在发送之前,先发送一个用于检测最优WAN口的具有回应功能的检测报文,(检测报文可以是用户自己编译的报文,也可以使用相关技术中的Ping检测报文,例如对于UDP协议对应的第二回应报文是Ping检测报文)直到检测出最优WAN口之后,停止复制数据流报文,将后续没有传输的源数据流报文在最优WAN口进行发送。其中,可以选择反馈回应报文的速度最快WAN口作为最优WAN口。上述技术方案,在传输数据流报文的同时,还选择哪个WAN口是最优WAN口,在选择出最优传输路径后停止复制,实现了软切换,避免了真正报文的等待,解决了终端的数据流分配的WAN口并不是其最优化的路径的问题,实现了终端的数据流分配的WAN口的合理性。Through the above steps, the terminal processes the data stream packet to be transmitted, and obtains a plurality of the data stream packet, where the data stream packet is a protocol packet that does not have a response packet; the terminal is more on the terminal. The WAN port of the WAN sends a detection packet corresponding to the plurality of data stream packets; the terminal monitors the second response packet corresponding to the detection packet in the plurality of WAN ports, according to the feedback of the second response packet The speed of the selection selects the optimal WAN port for transmitting the data message. The network filtering system of the terminal, netfilter, copies the data stream message that does not have a response function, and sends the copied message to multiple WAN ports. Before sending, send a packet for detecting the optimal WAN port. The detection packet has a response function. The detection packet can be a self-compiled packet. The ping packet can be detected in the related art. For example, the second response packet corresponding to the UDP protocol is a Ping detection packet. After the optimal WAN port is detected, the data stream packet is stopped, and the source data stream packet that is not subsequently transmitted is sent at the optimal WAN port. Among them, the fastest WAN port that can respond to the response message can be selected as the optimal WAN port. The above technical solution, while transmitting the data stream message, also selects which WAN port is the optimal WAN port, stops copying after selecting the optimal transmission path, implements soft handover, avoids waiting for the real message, and solves the problem. The WAN port allocated by the data stream of the terminal is not the problem of its optimized path, and the rationality of the WAN port for realizing the data stream allocation of the terminal is realized.
在本实施例中,该方法还包括:该终端在该终端上的多个广域网WAN口发送与多个该数据流报文对应的检测报文之后或者同时,在该终端上的多个广域网WAN口发送该数据流报文。在多个WAN口发送了检测报文之后,不用等待检测报文的回应报文,紧接着发送复制后 的数据流报文,避免了真正需要传输的报文的等待。In this embodiment, the method further includes: after the plurality of wide area network WAN ports on the terminal send the detection message corresponding to the plurality of data stream messages, or at the same time, the plurality of wide area network WANs on the terminal The port sends the data stream packet. After sending the detection packet on multiple WAN ports, there is no need to wait for the response packet of the detection packet, and then after sending the replication message. The data stream message avoids the waiting of the message that really needs to be transmitted.
在本实施例中,依据该第二回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口包括:该最优WAN口是该多个WAN口中反馈该第二回应报文速度最快的WAN口。在实际选择过程中,有可能最优WAN口此时有传输任务,则选择反馈速度第二快的WAN口作为最优WAN口,所以,上述实施例选择的最优WAN口可以是依据反馈速度的一个列表,在存在特殊情况下,按照列表依次选择。In this embodiment, the optimal WAN port for transmitting the data stream message according to the speed of the feedback of the second response message includes: the optimal WAN port is the feedback of the second response message in the plurality of WAN ports. The fastest WAN port. In the actual selection process, it is possible that the optimal WAN port has a transmission task at this time, and the WAN port with the second fastest feedback speed is selected as the optimal WAN port. Therefore, the optimal WAN port selected in the above embodiment may be based on the feedback speed. A list of items, in the special case, select by order.
在本实施例中,在依据该第二回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口之后,该终端停止复制该数据流报文,将该数据流报文通过该最优WAN口传输。在选择出最优WAN口之前,复制后的数据流报文在所有WAN口进行传输,是浪费端口资源的,在选择出最优WAN口之后,可以马上停止复制,将除最优WAN口之外的WAN口空闲出来,及时节省资源。In this embodiment, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the terminal stops copying the data stream message, and the data stream message is passed. The optimal WAN port transmission. Before selecting the optimal WAN port, the copied data stream packets are transmitted on all WAN ports, which is a waste of port resources. After selecting the optimal WAN port, the replication can be stopped immediately, and the optimal WAN port will be removed. The external WAN port is free to save resources in time.
在本实施例中,在终端对待传输的数据流报文进行复制之前,在动态路由表中查找与该数据流报文对应的数据流的条目,其中,该动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,该动态路由表用于配置该终端的数据流的传输路径;In this embodiment, before the data stream packet to be transmitted by the terminal is copied, an entry of the data stream corresponding to the data stream packet is searched in the dynamic routing table, where the dynamic routing table is used by the WAN port and the WAN. The feature information of the data stream corresponding to the port, where the dynamic routing table is used to configure a transmission path of the data stream of the terminal;
在未查找到与该数据流对应的条目的情况下,触发该终端对待传输的数据流报文进行复制。If the entry corresponding to the data stream is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
在查找到与该数据流对应的条目的情况下,依据该条目的路由配置信息为该数据流配置传输路径。In the case where an entry corresponding to the data stream is found, a transmission path is configured for the data flow according to the routing configuration information of the entry.
在进行复制之前先在动态路由表里匹配,如果匹配到,直接在最优WAN口传输数据流报文,数据流的特征信息包括数据流的五元组信息,五元组信息包括以下信息:源IP地址,源端口,目的IP地址,目的端口,传输层协议。在填写动态路由表时,由终端的网络过滤系统netfilter提取数据流的特征信息。Matching in the dynamic routing table before copying, if it matches, directly transmitting the data stream message in the optimal WAN port, the feature information of the data stream includes the quintuple information of the data stream, and the quintuple information includes the following information: Source IP address, source port, destination IP address, destination port, transport layer protocol. When the dynamic routing table is filled in, the characteristic information of the data stream is extracted by the network filtering system netfilter of the terminal.
在本实施例中,在依据该第二回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口之后,该终端将该最优WAN口和该数据流的对应关系记录到该动态路由表中。对于动态路由表中没有记录的数据流,检测出最优WAN口情况下,将对应关系记录到动态路由表中,方便该数据流的下一次传输。In this embodiment, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the terminal records the correspondence between the optimal WAN port and the data stream to In the dynamic routing table. For the data stream that is not recorded in the dynamic routing table, when the optimal WAN port is detected, the corresponding relationship is recorded in the dynamic routing table to facilitate the next transmission of the data stream.
在本实施例中,该检测报文包括:Ping检测报文。检测报文可以为用户自己编译的报文,也可以使用相关技术中的Ping检测报文。In this embodiment, the detection packet includes: a Ping detection packet. The detection packet can be a packet compiled by the user or a Ping detection packet in the related technology.
在本实施例中还提供了两种数据流传输装置,应用于终端,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。In the present embodiment, two types of data stream transmission devices are also provided, which are applied to the terminal, and the device is used to implement the foregoing embodiments and preferred embodiments, and details are not described herein. As used below, the term "module" may implement a combination of software and/or hardware of a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and contemplated.
图3是根据本发明实施例的数据流传输装置的结构框图一,如图3所示,该装置包括: FIG. 3 is a structural block diagram 1 of a data stream transmission apparatus according to an embodiment of the present invention. As shown in FIG. 3, the apparatus includes:
第一复制模块32,设置为对待传输的数据流报文进行复制,得到多个该数据流报文;The first copying module 32 is configured to copy the data stream message to be transmitted to obtain a plurality of the data stream message;
第一发送模块34,与第一复制模块32连接,设置为该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文;The first sending module 34 is connected to the first copying module 32, and is configured to send a plurality of the data stream messages to the plurality of wide area network WAN ports on the terminal at the same time;
第一监听模块36,与第一发送模块34连接,设置为在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口。The first monitoring module 36 is connected to the first sending module 34, and is configured to monitor the first response packet corresponding to the data stream packet in the multiple WAN ports, according to the speed of the feedback speed of the first response packet. The optimal WAN port for transmitting the data stream message.
图4是根据本发明实施例的数据流传输装置的结构框图二,如图4所示,该装置包括:4 is a structural block diagram 2 of a data stream transmission apparatus according to an embodiment of the present invention. As shown in FIG. 4, the apparatus includes:
第二复制模块42,设置为对待传输的数据流报文进行复制,得到多个该数据流报文;The second copying module 42 is configured to copy the data stream message to be transmitted to obtain a plurality of the data stream message;
第二发送模块44,与第二复制模块42连接,设置为在该终端上的多个广域网WAN口发送与多个该数据流报文对应的第二回应报文;The second sending module 44 is connected to the second copying module 42 and configured to send a second response message corresponding to the plurality of data stream messages on the plurality of wide area network WAN ports on the terminal;
第二监听模块46,与第二发送模块44连接,设置为在该多个WAN口监听与该检测报文对应的第二回应报文,依据该第二回应报文的反馈速度的快慢选择传输该数据报文的最优WAN口。The second monitoring module 46 is connected to the second sending module 44, and is configured to monitor the second response message corresponding to the detection message in the plurality of WAN ports, and select the transmission according to the speed of the feedback of the second response message. The optimal WAN port of the data message.
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述各个模块均位于同一处理器中;或者,上述各个模块分别位于不同的处理器中。It should be noted that each of the above modules may be implemented by software or hardware. For the latter, the foregoing may be implemented by, but not limited to, the foregoing modules are all located in the same processor; or, the above modules are respectively located. Different processors.
下面结合本发明优选实施例进行详细说明。The following is a detailed description in conjunction with the preferred embodiments of the invention.
本发明优选实施例提出了一种可以在双WAN模式下为数据流自动选择端口的方法。具体实现方法是:客户终端设备(Customer Premise Equipment,简称为CPE)中设置一个动态路由表,表中记录着所有动态路由数据,此表类似形式类似与一般的linux系统的动态路由表,区别在于此动态路由表由WAN口和相对应的数据流五元组信息组成,此动态路由表还具有老化功能。图5是根据本发明优选实施例的动态路由表的示意图,如图5所示。A preferred embodiment of the present invention proposes a method for automatically selecting a port for a data stream in dual WAN mode. The specific implementation method is as follows: a dynamic routing table is set in the Customer Premise Equipment (CPE), and all dynamic routing data is recorded in the table. The similar form of the table is similar to the dynamic routing table of the general Linux system, and the difference lies in The dynamic routing table is composed of a WAN port and corresponding data stream quintuple information, and the dynamic routing table also has an aging function. FIG. 5 is a schematic diagram of a dynamic routing table, as shown in FIG. 5, in accordance with a preferred embodiment of the present invention.
在本发明优选实施例中,当有一条数据流通过CPE设备的时候,首先查找动态路由表中是否存在关于这条数据流的条目,如果动态路由表中不存在这条数据流的条目,则将此数据流复制成两条数据流,设备从A、B两个WAN口同时将这两条数据流发送出去,等待两个WAN口中第一个回复的数据报文(例如,对于具有回应功能的TCP协议来说,三次握手中则收到的ACK报文就相当于回应报文),假使A WAN口先收到了回应报文,这时CPE则停止复制数据报文,并将此数据流和A WAN口对应的记录到之前的动态路由表中,此时这条数据流的之后的所有报文匹配IP信息包过滤系统iptables的规则,在这些报文通过netfilter框架时,将这些报文打上特殊的标记,然后在操作系统linux策略路由的时候通过A WAN口进行与外网的数据通讯,对于B WAN口的回应报文直接丢弃。数据表格具有类似地址解析协议(Address Resolution Protocol,简称为ARP)表一样的老化功能,存在记录的条目如果又有新的数据传输,则更新此条目的老化时间,如果长时间没有数据流的通过则这个条目则被老化掉,当重 新有数据的时候则从新进行之前的步骤。In a preferred embodiment of the present invention, when a data stream passes through the CPE device, first, an entry for the data flow is found in the dynamic routing table. If the entry of the data flow does not exist in the dynamic routing table, The data stream is copied into two data streams, and the device sends the two data streams simultaneously from the two WAN ports A and B, waiting for the first data packet replied from the two WAN ports (for example, for responding function) For the TCP protocol, the ACK message received in the three-way handshake is equivalent to the response message. If the A WAN port receives the response message first, the CPE stops copying the data packet and the data stream is The corresponding record of the A WAN port is recorded in the previous dynamic routing table. At this time, all the messages following the data flow match the rules of the IP packet filtering system iptables. When these messages pass the netfilter framework, these messages are marked. The special tag is then used to communicate with the external network through the A WAN port when the operating system linux policy is routed. The response packet to the B WAN port is directly discarded. The data table has the same aging function as the Address Resolution Protocol (ARP) table. If there is a new data transmission, the aging time of the entry is updated. If there is no data flow for a long time. Then this entry is aged, when heavy When there is new data, the previous steps are renewed.
图6是根据本发明优选实施例的数据传输装置的模块结构框图,如图6所示,一共涉及五个模块,分别为复制模块62(相当于上述实施例的第一复制模块32和第二复制模块42,以及第一发送模块34和第二发送模块44的功能)、监听模块64(相当于上述实施例的第一监听模块36和第二监听模块46的功能)、动态路由表模块66、防火墙模块68、高级策略路由模块610。其中,复制模块62负责将所有未在动态路由表中记录的数据流利用netfilter框架进行数据报文复制,并从多端口进行发送。监听模块64负责监听所有WAN口,由netfilter的hook函数抓取相应(基于五元组信息)数据流的回应报文。动态路由表模块66负责记录数据流的五元组信息和第一个回应的WAN口,将其一一对应进行记录。防火墙mangle模块68负责将已经在动态路由表中记录的所有数据流进行标记。高级策略路由模块610进行根据防火墙模块的标记并结合动态路由表中的对应信息将打上特定标签的数据流进行策略分配。6 is a block diagram showing the structure of a data transmission apparatus according to a preferred embodiment of the present invention. As shown in FIG. 6, a total of five modules are respectively referred to as a copy module 62 (corresponding to the first copy module 32 and the second of the above embodiment). The copy module 42 and the functions of the first sending module 34 and the second sending module 44, the listening module 64 (corresponding to the functions of the first listening module 36 and the second listening module 46 of the above embodiment), and the dynamic routing table module 66 The firewall module 68 and the advanced policy routing module 610. The copy module 62 is responsible for copying all the data streams not recorded in the dynamic routing table by using the netfilter framework, and transmitting the data packets from multiple ports. The listening module 64 is responsible for listening to all WAN ports, and the netfilter's hook function fetches corresponding (based on quintuple information) response packets of the data stream. The dynamic routing table module 66 is responsible for recording the quintuple information of the data stream and the WAN port of the first response, and recording them one by one. The firewall mangle module 68 is responsible for marking all data streams that have been recorded in the dynamic routing table. The advanced policy routing module 610 performs policy allocation according to the marking of the firewall module and combining the corresponding information in the dynamic routing table to the data stream marked with a specific label.
图7是根据本发明优选实施例的数据传输方法的流程图,如图7所示,步骤如下:7 is a flow chart of a data transmission method according to a preferred embodiment of the present invention. As shown in FIG. 7, the steps are as follows:
S701,CPE首先开启双WAN口功能。S701, the CPE first turns on the dual WAN port function.
S702,CPE通过netfilter框架的hook功能抓取从LAN口向WAN口传输的每条数据流的报文,提取数据流的五元组信息。S702: The CPE captures the packet of each data stream transmitted from the LAN port to the WAN port by using the hook function of the netfilter framework, and extracts the quintuple information of the data stream.
S703,查找自建的动态路由表中的条目,如果查找到则进行S706,如果没有查找到则进行S704。S703: Search for an entry in the self-built dynamic routing table, if it is found, proceed to S706, and if not, perform S704.
S704,netfilter框架复制通过的数据流报文,并将其从两个wan口同时发送出去。对于具有回应的协议报文如TCP协议则直接进行复制,对于不具有回应的协议报文如UDP协议则会在发送之前增加一个ping检测报文。S704: The netfilter framework copies the passed data stream message and sends it out from the two wan ports at the same time. For a protocol packet with a response, such as the TCP protocol, the protocol packet is directly copied. For a protocol packet that does not have a response, such as the UDP protocol, a ping detection packet is added before the transmission.
S705,linux防火墙模块同时监听双wan口的,首先反馈的数据报文则会被记录下来,对于TCP协议则会根据ACK报文作为反馈数据报文,对于UDP协议则会根据第一个回应的ping包作为反馈数据报文。并且和此wan口对应的关系记录到自建的动态路由表中。对于另一个wan口的报文则丢弃,并停止报文的复制工作。S705, the linux firewall module monitors the dual wan port at the same time, the first feedback data packet will be recorded. For the TCP protocol, the ACK packet is used as the feedback data packet, and the UDP protocol is based on the first response. The ping packet is used as a feedback data packet. And the relationship corresponding to the wan port is recorded in the self-built dynamic routing table. The packet of another wan port is discarded, and the copying of the packet is stopped.
S706,根据动态路由表项,利用netfilter的mangle链功能来对通过CPE的所有报文进行标签的标记工作。S706, according to the dynamic routing entry, using the meshel chain function of the netfilter to perform labeling work on all the packets passing the CPE.
S707,根据netfilter规则配置的标签来进行高级策略路由的配置。S707: Perform advanced policy routing configuration according to the label configured by the netfilter rule.
在相关技术中,主要是按照Linux的实现比如随机分配带宽或者ping探测即直接从两个WAN口直接ping例如8.8.8.8的IP地址,来选择路由,但在实际应用中,这样的选择并不很精确,例如如果这一条数据流的访问地址与8.8.8.8这样的固定IP地址完全不同,这就无法选择出一个真正适应的这条流的WAN口,甚至是一个截然相反的端口,反而使这条流的延迟或者丢包率增大,降低了用户体验。而且这种流的选择不具有实时的动态性,完全是固定下的路由选择,即使是每隔一段时间重新进行ping检测,也只能固定的选择某条路由或是将某条 网络状况较好的路由当作默认路由。其次,对于ping探测来说,并不具有实时性,报文必须等待ping检测结束之后才能进行路由分配数据发送,因此对于用户来说体验十分不好。In the related art, mainly according to the implementation of Linux, such as randomly allocating bandwidth or ping detection, directly pinging the IP address of 8.8.8.8 directly from two WAN ports to select a route, but in practical applications, such a choice is not Very precise, for example, if the access address of this data stream is completely different from the fixed IP address of 8.8.8.8, it is impossible to select a WAN port of the stream that is really adapted, or even a diametrically opposite port. The delay or packet loss rate of this stream increases, reducing the user experience. Moreover, the selection of such a stream does not have real-time dynamics, and is completely fixed routing. Even if the ping detection is repeated every once in a while, only a certain route or a certain piece can be selected. A route with a good network condition is considered as the default route. Secondly, for ping detection, it is not real-time. The packet must wait for the ping detection to complete before the route distribution data is sent. Therefore, the experience is very bad for the user.
本发明优选实施例的设备可根据由局域网(Local Area Network,简称为LAN)侧通过CPE传输的任意一条流的五元组信息来控制各个流传输的WAN口,精确配置高级策略路由。本发明的优选实施例,针对相关技术的一些技术专利的优势。The device of the preferred embodiment of the present invention can control the WAN port of each stream according to the quintuple information of any one stream transmitted by the CPE on the local area network (LAN) side, and accurately configure the advanced policy routing. Preferred embodiments of the present invention are directed to the advantages of some of the technical patents of the related art.
本发明优选实施例中的netfilter框架下的标签结合高级策略路由分配优点在于能够更精确的跟踪每一条流的发送情况,为每一条数据流选择各自独特的端口传输,这样就会对于每一条数据流来说就是一个最优化的路径,增加了用户体验度。The advantage of the label under the netfilter framework in combination with the advanced policy routing allocation in the preferred embodiment of the present invention is that it can more accurately track the transmission of each stream, and select each unique data transmission for each data stream, so that for each data Flow is an optimized path that increases user experience.
相关技术中的简单利用网络报文协议(Internet Control Message Protocol,简称为ICMP)协议的ping探测:在于ping探测会在数据传输之前会先发送ping报文,这时候真正的数据报文则会被等待,直到ping检测报文被回应才会真正分配WAN口进行数据报文的传输。而本发明优选实施例属于一种特殊的软切换,同时进行数据的传输,由于不需要在设备中等待,这时传输报文也不会占用CPE的内存,更符合传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,简称为TCP/IP)协议的特性。能够很好的提升数据传输的质量,增加用户体验度。A simple ping probe using the Internet Protocol Message Protocol (ICMP) protocol in the related art: the ping probe sends a ping packet before the data transmission, and the real data packet is Wait until the ping detection message is responded to actually allocate the WAN port for data packet transmission. The preferred embodiment of the present invention belongs to a special soft handover, and performs data transmission at the same time. Since there is no need to wait in the device, the transmission message does not occupy the memory of the CPE, and is more in line with the transmission control protocol/Internet interconnection protocol. (Transmission Control Protocol/Internet Protocol, abbreviated as TCP/IP) protocol. It can improve the quality of data transmission and increase user experience.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:Embodiments of the present invention also provide a storage medium. Optionally, in the embodiment, the foregoing storage medium may be configured to store program code for performing the following steps:
S1,终端对待传输的数据流报文进行复制,得到多个该数据流报文;S1. The terminal copies the data stream packet to be transmitted, and obtains multiple data stream packets.
S2,该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文;S2, the terminal simultaneously sends multiple data stream messages in multiple WAN ports on the terminal;
S3,该终端在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口。S3: The terminal monitors the first response packet corresponding to the data flow packet on the multiple WAN ports, and selects an optimal WAN port for transmitting the data flow message according to the speed of the feedback of the first response message.
可选地,存储介质还被设置为存储用于执行上述实施例的方法步骤的程序代码:Optionally, the storage medium is further arranged to store program code for performing the method steps of the above-described embodiments:
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。Optionally, in this embodiment, the foregoing storage medium may include, but not limited to, a USB flash drive, a Read-Only Memory (ROM), a Random Access Memory (RAM), a mobile hard disk, and a magnetic memory. A variety of media that can store program code, such as a disc or a disc.
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例的方法步骤。 Optionally, in this embodiment, the processor performs the method steps of the foregoing embodiments according to the stored program code in the storage medium.
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。For example, the specific examples in this embodiment may refer to the examples described in the foregoing embodiments and the optional embodiments, and details are not described herein again.
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。It will be apparent to those skilled in the art that the various modules or steps of the present invention described above can be implemented by a general-purpose computing device that can be centralized on a single computing device or distributed across a network of multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device such that they may be stored in the storage device by the computing device and, in some cases, may be different from the order herein. The steps shown or described are performed, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated as a single integrated circuit module. Thus, the invention is not limited to any specific combination of hardware and software.
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above description is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.
工业实用性Industrial applicability
通过本发明实施例,终端对待传输的数据流报文进行复制,得到多个该数据流报文;该终端同时在该终端上的多个广域网WAN口发送多个该数据流报文;该终端在该多个WAN口监听与该数据流报文对应的第一回应报文,依据该第一回应报文的反馈速度的快慢选择传输该数据流报文的最优WAN口,解决了终端的数据流分配的WAN口并不是其最优化的路径的问题,实现了终端的数据流分配的WAN口的合理性。 According to the embodiment of the present invention, the data stream packet to be transmitted by the terminal is copied to obtain a plurality of the data stream packets; the terminal simultaneously sends a plurality of the data stream packets in the WAN ports of the plurality of wide area networks on the terminal; the terminal The plurality of WAN ports are configured to monitor the first response packet corresponding to the data flow packet, and select an optimal WAN port for transmitting the data flow packet according to the feedback speed of the first response packet, thereby solving the terminal The WAN port allocated by the data stream is not the problem of its optimized path, and the rationality of the WAN port for the data stream allocation of the terminal is realized.

Claims (16)

  1. 一种数据流传输方法,包括:A data stream transmission method includes:
    终端对待传输的数据流报文进行复制,得到多个所述数据流报文;The terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet;
    所述终端在所述终端上的多个广域网WAN口发送多个所述数据流报文;Transmitting, by the terminal, a plurality of the data stream messages on a plurality of wide area network WAN ports on the terminal;
    所述终端在所述多个WAN口监听与所述数据流报文对应的第一回应报文,依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口。The terminal monitors, in the multiple WAN ports, the first response packet corresponding to the data flow packet, and selects the optimal transmission of the data flow packet according to the fast feedback speed of the first response packet. WAN port.
  2. 根据权利要求1所述的方法,其中,The method of claim 1 wherein
    所述最优WAN口是所述多个WAN口中反馈所述第一回应报文速度最快的WAN口。The optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the first response message.
  3. 根据权利要求1所述的方法,其中,在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:The method of claim 1, wherein the method further comprises: after selecting an optimal WAN port for transmitting the data stream message according to a speed of the feedback speed of the first response message, the method further comprising:
    所述终端停止复制所述数据流报文,将所述数据流报文通过所述最优WAN口传输。The terminal stops copying the data flow packet, and transmits the data flow packet through the optimal WAN port.
  4. 根据权利要求1所述的方法,其中,在终端对待传输的数据流报文进行复制之前,包括:The method according to claim 1, wherein before the data stream message to be transmitted by the terminal is copied, the method includes:
    在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成;Querying, in the dynamic routing table, an entry of the data flow corresponding to the data flow packet, where the dynamic routing table is composed of a WAN port and characteristic information of a data flow corresponding to the WAN port;
    在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
  5. 根据权利要求4所述的方法,其中,在终端对待传输的数据流报文进行复制之前,包括:The method according to claim 4, wherein before the data stream message to be transmitted by the terminal is copied, the method includes:
    在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。When an entry corresponding to the data flow is found in the dynamic routing table, a transmission path is configured for the data flow according to the routing configuration information of the entry.
  6. 根据权利要求1至3所述的方法,在依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:The method according to any one of claims 1 to 3, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the first response message, the method further includes:
    所述终端将所述最优WAN口和所述数据流的对应关系记录到动态路由表中。The terminal records the correspondence between the optimal WAN port and the data stream into a dynamic routing table.
  7. 一种数据流传输方法,包括:A data stream transmission method includes:
    终端对待传输的数据流报文进行复制,得到多个所述数据流报文;The terminal processes the data stream packet to be transmitted, and obtains the plurality of the data stream packet;
    所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文;Transmitting, by the terminal, the detection packet corresponding to the plurality of the data flow packets on the WAN port of the plurality of wide area networks on the terminal;
    所述终端在所述多个WAN口监听与所述检测报文对应的第二回应报文,依据所述第二回应报文的反馈速度的快慢选择传输所述数据报文的最优WAN口。The terminal monitors the second response packet corresponding to the detection packet on the multiple WAN ports, and selects an optimal WAN port for transmitting the data packet according to the speed of the feedback speed of the second response packet. .
  8. 根据权利要求7所述的方法,其中,所述方法还包括: The method of claim 7 wherein the method further comprises:
    所述终端在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文之后或者同时,在所述终端上的多个广域网WAN口发送所述数据流报文。After the plurality of wide area network WAN ports on the terminal send the detection packets corresponding to the plurality of the data stream messages, the terminal sends the data flow report on the WAN ports of the plurality of wide area networks on the terminal. Text.
  9. 根据权利要求7所述的方法,其中,The method of claim 7 wherein
    所述最优WAN口是所述多个WAN口中反馈所述第二回应报文速度最快的WAN口。The optimal WAN port is the fastest WAN port in the plurality of WAN ports that feeds back the second response message.
  10. 根据权利要求7所述的方法,其中,在依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:The method of claim 7, wherein the method further comprises: after selecting an optimal WAN port for transmitting the data stream message according to a speed of the feedback speed of the second response message, the method further comprising:
    所述终端停止复制所述数据流报文,将所述数据流报文通过所述最优WAN口传输。The terminal stops copying the data flow packet, and transmits the data flow packet through the optimal WAN port.
  11. 根据权利要求7所述的方法,其中,在终端对待传输的数据流报文进行复制之前,包括:The method according to claim 7, wherein before the data stream message to be transmitted by the terminal is copied, the method includes:
    在动态路由表中查找与所述数据流报文对应的数据流的条目,其中,所述动态路由表由WAN口和与WAN口对应的数据流的特征信息组成,所述动态路由表用于配置所述终端的数据流的传输路径;Querying, in the dynamic routing table, an entry of the data flow corresponding to the data flow message, where the dynamic routing table is composed of a WAN port and feature information of a data flow corresponding to the WAN port, where the dynamic routing table is used. Configuring a transmission path of the data stream of the terminal;
    在未查找到与所述数据流对应的条目的情况下,触发所述终端对待传输的数据流报文进行复制。If the entry corresponding to the data flow is not found, the data flow message to be transmitted by the terminal is triggered to be copied.
  12. 根据权利要求11所述的方法,其中,在终端对待传输的数据流报文进行复制之前,包括:The method according to claim 11, wherein before the data stream message to be transmitted by the terminal is copied, the method includes:
    在所述动态路由表中查找到与所述数据流对应的条目的情况下,依据所述条目的路由配置信息为所述数据流配置传输路径。When an entry corresponding to the data flow is found in the dynamic routing table, a transmission path is configured for the data flow according to the routing configuration information of the entry.
  13. 根据权利要求7至10所述的方法,在依据所述第二回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口之后,所述方法还包括:The method according to any one of claims 7 to 10, after selecting the optimal WAN port for transmitting the data stream message according to the speed of the feedback speed of the second response message, the method further includes:
    所述终端将所述最优WAN口和所述数据流的对应关系记录到动态路由表中。The terminal records the correspondence between the optimal WAN port and the data stream into a dynamic routing table.
  14. 根据权利要求7所述的方法,其中,所述检测报文包括:The method of claim 7, wherein the detecting the message comprises:
    Ping检测报文。Ping detection packets.
  15. 一种数据流传输装置,应用于终端,包括:A data stream transmission device is applied to a terminal, including:
    第一复制模块,设置为对待传输的数据流报文进行复制,得到多个所述数据流报文;a first copy module, configured to copy a data stream message to be transmitted, to obtain a plurality of the data stream messages;
    第一发送模块,设置为所述终端同时在所述终端上的多个广域网WAN口发送多个所述数据流报文;a first sending module, configured to send, by the terminal, a plurality of the data stream messages at a plurality of wide area network WAN ports on the terminal;
    第一监听模块,设置为在所述多个WAN口监听与所述数据流报文对应的第一回应报文,依据所述第一回应报文的反馈速度的快慢选择传输所述数据流报文的最优WAN口。The first monitoring module is configured to monitor the first response message corresponding to the data flow message on the plurality of WAN ports, and select to transmit the data flow report according to the speed of the feedback speed of the first response message The optimal WAN port of the text.
  16. 一种数据流传输装置,应用于终端,包括:A data stream transmission device is applied to a terminal, including:
    第二复制模块,设置为对待传输的数据流报文进行复制,得到多个所述数据流报文; a second copy module, configured to copy the data stream message to be transmitted, to obtain a plurality of the data stream messages;
    第二发送模块,设置为在所述终端上的多个广域网WAN口发送与多个所述数据流报文对应的检测报文;a second sending module, configured to send, by using a plurality of wide area network WAN ports on the terminal, detection packets corresponding to the plurality of data flow packets;
    第二监听模块,设置为在所述多个WAN口监听与所述检测报文对应的第二回应报文,依据所述第二回应报文的反馈速度的快慢选择传输所述数据报文的最优WAN口。 The second monitoring module is configured to monitor, in the multiple WAN ports, a second response packet corresponding to the detection packet, and select, according to a speed of the feedback speed of the second response packet, to transmit the data packet. The optimal WAN port.
PCT/CN2016/098067 2016-03-24 2016-09-05 Data stream transmission method and device WO2017161840A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610172732.8 2016-03-24
CN201610172732.8A CN107231303A (en) 2016-03-24 2016-03-24 Data flow transmission method and device

Publications (1)

Publication Number Publication Date
WO2017161840A1 true WO2017161840A1 (en) 2017-09-28

Family

ID=59899276

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/098067 WO2017161840A1 (en) 2016-03-24 2016-09-05 Data stream transmission method and device

Country Status (2)

Country Link
CN (1) CN107231303A (en)
WO (1) WO2017161840A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112583835A (en) * 2020-12-14 2021-03-30 深圳市共进电子股份有限公司 Method and device for matching network port data, router and readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110417707B (en) * 2018-04-27 2021-11-09 中兴通讯股份有限公司 Data transmission protection method, device, system and computer readable storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829197A (en) * 2006-04-14 2006-09-06 迈普(四川)通信技术有限公司 Method for dynamically selecting outlet pathway
CN101808034A (en) * 2010-03-16 2010-08-18 杭州华三通信技术有限公司 Method and device for routing management
US8260922B1 (en) * 2005-09-16 2012-09-04 Cisco Technology, Inc. Technique for using OER with an ECT solution for multi-homed sites
CN102761476A (en) * 2012-03-30 2012-10-31 杭州华三通信技术有限公司 Load balancing method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026589A (en) * 2007-04-05 2007-08-29 杭州华为三康技术有限公司 Route selecting method and router
US8885657B2 (en) * 2009-11-06 2014-11-11 Brocade Communications Systems, Inc. Automatic switch port selection
CN102684951B (en) * 2011-03-14 2015-08-05 鸿富锦精密工业(深圳)有限公司 The system of selection of many Wide Area Network interface networking, system and network equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260922B1 (en) * 2005-09-16 2012-09-04 Cisco Technology, Inc. Technique for using OER with an ECT solution for multi-homed sites
CN1829197A (en) * 2006-04-14 2006-09-06 迈普(四川)通信技术有限公司 Method for dynamically selecting outlet pathway
CN101808034A (en) * 2010-03-16 2010-08-18 杭州华三通信技术有限公司 Method and device for routing management
CN102761476A (en) * 2012-03-30 2012-10-31 杭州华三通信技术有限公司 Load balancing method and device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112583835A (en) * 2020-12-14 2021-03-30 深圳市共进电子股份有限公司 Method and device for matching network port data, router and readable storage medium

Also Published As

Publication number Publication date
CN107231303A (en) 2017-10-03

Similar Documents

Publication Publication Date Title
US10320749B2 (en) Firewall rule creation in a virtualized computing environment
US9806944B2 (en) Network controller and a computer implemented method for automatically define forwarding rules to configure a computer networking device
US9491063B2 (en) Method and apparatus for providing network services orchestration
CN104380693B (en) System and method for dynamic routing in the cluster
US20160234234A1 (en) Orchestrating the Use of Network Resources in Software Defined Networking Applications
EP3032859B1 (en) Access control method and system, and access point
US7349348B1 (en) Method and apparatus for determining a network topology in the presence of network address translation
EP2930899B1 (en) Tcp link configuration method and apparatus
CN108476231A (en) System and method for maintaining session via intermediate device
US20160150043A1 (en) Source ip address transparency systems and methods
CN106911778A (en) A kind of flow bootstrap technique and system
CN110891285B (en) Transmitting equipment, reflecting equipment, network performance testing method and system
US11153185B2 (en) Network device snapshots
US10326712B2 (en) Multicast data packet forwarding
CN102195882B (en) According to method and the device of the routing of data flow application type
EP3588859A1 (en) Network device configuration versioning
WO2016049926A1 (en) Data packet processing apparatus and method
US20200213233A1 (en) Balancing load
WO2017161840A1 (en) Data stream transmission method and device
CN112202795B (en) Data processing method, gateway equipment and medium
US9686175B2 (en) Methods, systems, and computer readable media for testing network devices using simulated application traffic
CN105959248B (en) The method and device of message access control
CN105812274B (en) Service data processing method and related equipment
WO2016047088A1 (en) Gateway device, session management method, and session management program recording medium
WO2016184079A1 (en) Method and device for processing system log message

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16895189

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16895189

Country of ref document: EP

Kind code of ref document: A1