WO2016172958A1 - Dynamic traffic control method, device and home gateway, and hybrid access aggregation point - Google Patents

Dynamic traffic control method, device and home gateway, and hybrid access aggregation point Download PDF

Info

Publication number
WO2016172958A1
WO2016172958A1 PCT/CN2015/078086 CN2015078086W WO2016172958A1 WO 2016172958 A1 WO2016172958 A1 WO 2016172958A1 CN 2015078086 W CN2015078086 W CN 2015078086W WO 2016172958 A1 WO2016172958 A1 WO 2016172958A1
Authority
WO
WIPO (PCT)
Prior art keywords
tcp connection
channel
connection channel
data packet
data
Prior art date
Application number
PCT/CN2015/078086
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 华为技术有限公司
Priority to PCT/CN2015/078086 priority Critical patent/WO2016172958A1/en
Priority to CN201580033512.0A priority patent/CN106464567B/en
Publication of WO2016172958A1 publication Critical patent/WO2016172958A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a traffic dynamic control method, a device, a gateway, and a convergence access convergence point.
  • the convergence of network broadband access has been a trend, including various fixed network and cable: x Digital Subscriber Line/Very High Rate Digital Subscriber Line (xDSL/VDSL), cable TV cable (Cable), Fiber, Wirless Fidelity (WiFi), Ethernet, third-generation mobile communication technology (the 3rd-generation, referred to as: 3G), fourth-generation mobile communication technology (the 4th-generation, referred to as: 4G) To maximize the coverage of the network.
  • 3G Third-generation mobile communication technology
  • 4th-generation referred to as: 4G
  • data messages can be concurrently transmitted, providing users with access to the Internet, providing personalized interactive TV (Interactive Personality TV, IPTV for short), IP-based voice calls (Voice over) IP, referred to as: VoIP) Voice call and other aspects of the business experience.
  • the LTE link includes a Home Gateway (HG) evolved Node B (eNodeB), an Evolved Packet Core (EPC) device, and a converged access.
  • HG Home Gateway
  • EPC Evolved Packet Core
  • HAAP Hybrid Access Aggregation Point
  • the DSL link includes an HG, a Digital Subscriber Line Access Multiplexer (DSLAM), a Broadband Network Gateway (BNG), and a HAAP.
  • GRE common routing encapsulation
  • the two tunnels are superimposed and bound, that is, the total bandwidth of the system is the sum of the bandwidths of the two links.
  • IP Internet Protocol
  • the Internet Protocol (IP) address of the data connection is redistributed in the bound tunnel.
  • the outer address of the tunnel is only responsible for the connection and transmission of the links of the two tunnels.
  • the inner address of the tunnel is user data.
  • the package address is used to communicate with the Internet.
  • the traffic is filled on the DSL tunnel according to a statically configured threshold. After the actual data packet reaches the threshold, the data flow overflows to the LTE tunnel. At the other end of the two tunnels, the received data packets are sorted and integrated to complete the binding of the entire data.
  • the egress bandwidth of the core network is generally allocated based on the proportion of each user. However, when the number of users is large and concurrently concurrent, the egress bandwidth of the network of the core network becomes a bottleneck, and the end user activation or core network device allocation cannot be achieved. Bandwidth. Therefore, traffic on the first tunnel cannot always overflow to the second tunnel for transmission.
  • the embodiment of the invention provides a method, a device, a gateway, and a convergence access aggregation point for solving the problem that the traffic on the first tunnel cannot overflow to another tunnel in the prior art.
  • an embodiment of the present invention provides a traffic dynamic control method, including:
  • the first device receives the data stream
  • the first device establishes N encapsulated TCP connection channels with the second device according to the stored connection information of the Transmission Control Protocol (TCP) connection with the second device, where N is greater than or equal to 2.
  • TCP Transmission Control Protocol
  • the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is a pin.
  • the loopback delay and the packet loss rate of the data packet are determined in advance according to the preset duration; L is a positive integer smaller than N.
  • the acquiring, by the first device, the connection information of the TCP connection with the second device includes:
  • the first GRE protocol control signaling sent by the first device to the second interface of the second device by using the first interface where the first GRE protocol control signaling carries the Internet Protocol IP address of the first interface a GRE tunnel is configured between the first interface and the second interface, and the second device records the IP address of the first interface as being between the first interface and the second interface. Destination IP address of the TCP connection channel;
  • the first device records an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
  • the preset is respectively The loopback delay and packet loss rate of the data packets measured in the duration determine the traffic overflow threshold, including:
  • the first device performs separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted.
  • the loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel include:
  • the comparison period is equal to M
  • M is a positive integer.
  • the data packet loopback delay and the packet loss ratio are determined according to statistics
  • the channel capability value of the TCP connection channel including:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the method further includes:
  • the first device After receiving the data stream, the first device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
  • the first device according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing the threshold, the data stream is sent to the second device by using at least one of the N TCP connection channels, including:
  • the first device If the first device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
  • the first device When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the first device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
  • the first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the first device according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing the threshold, the data stream is sent to the second device by using at least one of the N TCP connection channels, including:
  • the first device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
  • the first device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identification number is used to identify each TCP connection channel. link;
  • the first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the identifier of the added TCP connection channel is located before the data field of each data packet.
  • the first device is an HG
  • the second device is HAAP.
  • an embodiment of the present invention further provides a traffic dynamic control method, including:
  • the second device receives the data stream
  • the second device sends the data flow to the first one through the at least one TCP connection channel of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • the N TCP connection channels are TCP connection channels between the second device and the first device that are established; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP. Connection channel, according to the TCP connection channel, for a preset duration The internal data packet loopback delay and the packet loss rate are predetermined; L is a positive integer smaller than N.
  • the loopback delay of the data packet that is counted in the preset duration is respectively determined according to the TCP connection channel.
  • the packet loss rate determines the traffic overflow threshold, including:
  • the second device performs for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted.
  • the loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel include:
  • the comparison period is equal to M
  • M is a positive integer.
  • the data packet loopback delay and the packet loss ratio are determined according to statistics
  • the channel capability value of the TCP connection channel including:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the method further includes:
  • the second device After receiving the data stream, the second device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
  • the second device according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing threshold, the data stream is sent to the first device by using at least one of the N TCP connection channels, including:
  • the second device If the second device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
  • the second device When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the second device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
  • the second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the second device according to a traffic overflow threshold corresponding to the at least two TCP connection channels, is configured to Transmitting to the first device by using at least one of the at least two TCP connection channels, including:
  • the second device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel
  • the second device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
  • the second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the seventh aspect of the second aspect is located before the data field of each data packet.
  • the first device is an HG
  • the second device is HAAP.
  • a third aspect of the present invention provides a traffic dynamic control device, including:
  • a receiving module configured to receive a data stream
  • a storage module configured to store connection information for performing TCP connection with the peer device corresponding to the device where the storage module is located;
  • a processing module configured to establish, according to the connection information that the storage module performs a TCP connection with the peer device, establish N TCP connection channels with the peer device, where N is a positive integer greater than or equal to 2;
  • a sending module configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels established by the processing module
  • the connection channel is sent to the peer device
  • the traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels.
  • the packet loss rate is predetermined; L is a positive integer less than N.
  • the sending module is further configured to send, by using the first interface, the first GRE protocol control signaling to the second interface of the peer device
  • the first GRE protocol control signaling carries the Internet Protocol IP address of the first interface, and the GRE tunnel is configured between the first interface and the second interface;
  • the IP address of the first interface is recorded as the destination IP address of the TCP connection channel between the first interface and the second interface;
  • the receiving module is further configured to receive, by using the first interface, a first GRE protocol control signaling reply signaling sent by the peer device by using a second interface, where the first GRE protocol control signaling reply signaling Carrying the IP address of the second interface;
  • the storage module is configured to store an IP address of the second interface as the first interface and the The destination IP address of the TCP connection channel between the second interfaces.
  • the processing module is further configured to perform separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted.
  • the loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • determining, according to the determined channel capability value of the TCP connection channel, the traffic overflow gate corresponding to the TCP connection channel The processing module is specifically configured to use the value of the determined channel capability value of the TCP connection channel multiplied by X as a traffic overflow threshold, where 0 ⁇ X ⁇ 1; or
  • the comparison period is equal to M
  • M is a positive integer.
  • determining, according to the statistics, the data packet loopback delay and the packet loss ratio is specifically configured to determine a channel capability value of the TCP connection channel according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processing module is further configured to After receiving the data stream, the receiving module performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is arrived according to each data packet. The order of the determination is determined.
  • the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels is sent to the peer device by using at least one of the N TCP connection channels, and the processing module is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the processing module is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to send each data packet to the peer device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the processing module adds the identifier of the TCP connection channel to the data of each data packet. Before the field.
  • the device where the storage module is located is an HG
  • the peer device is a HAAP.
  • the embodiment of the present invention further provides a traffic dynamic control device, including:
  • a receiving module configured to receive a data stream
  • a sending module configured to send the data flow to the sending module by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels
  • the peer device corresponding to the device;
  • the N TCP connection channels are TCP connection channels between the established peer device and the device where the sending module is located; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is For each TCP connection channel, according to the TCP connection channel, the loopback delay and the packet loss rate of the data packet are determined in advance according to the preset duration; L is a positive integer smaller than N.
  • the method further includes:
  • Processing module for performing separately for each TCP connection channel :
  • the loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted.
  • the loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • the processing module is specifically used to:
  • the comparison period is equal to M
  • M is a positive integer.
  • the data packet loopback delay and the packet loss rate according to statistics are obtained.
  • the channel capability value of the TCP connection channel is determined, and the processing module is specifically configured to:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processing module is further used in After receiving the data stream, the receiving module performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
  • the processing module is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the processing module is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the processing module is specifically configured to add an identifier of a TCP connection channel to each data. Before the data field of the message.
  • the device where the sending module is located is a HAAP
  • the peer device is an HG.
  • the embodiment of the present invention further provides a gateway, including:
  • transceiver a transceiver, a memory, and a processor
  • the transceiver is configured to receive a data stream
  • the memory is configured to store connection information for performing a TCP connection with the HAAP
  • a processor configured to establish N TCP connection channels with the HAAP according to the connection information that is stored in the memory and perform a TCP connection with the HAAP, where N is a positive integer greater than or equal to 2;
  • the transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels of the N TCP connection channels stored in the memory a connection channel is sent to the HAAP;
  • the traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels.
  • the packet loss rate is predetermined; L is a positive integer less than N.
  • the transceiver is further configured to: send, by using a first interface, a first GRE protocol to a second interface of the converged access convergence point Controlling the signaling, the first GRE protocol control signaling carries the IP address of the first interface, and the GRE tunnel is configured between the first interface and the second interface; Recording, by the first interface, the IP address of the first interface is the destination IP address of the TCP connection channel between the first interface and the second interface; The first GRE protocol control signaling reply signaling, where the first GRE protocol control signaling reply signaling carries the IP address of the second interface;
  • the memory is configured to store an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
  • the processor is further configured to perform separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted.
  • the loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • determining, according to the determined channel capability value of the TCP connection channel, the traffic overflow gate corresponding to the TCP connection channel The processor is specifically configured to multiply the determined channel capability value of the TCP connection channel by the value of X as a traffic overflow threshold, where 0 ⁇ X ⁇ 1;
  • the comparison period is equal to M
  • M is a positive integer.
  • determining, according to the statistics, the data packet loopback delay and the packet loss ratio The processor is specifically configured to determine a channel capability value of the TCP connection channel according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processor is further configured to perform TCP encapsulation on each data packet corresponding to the data stream, and add a sequence number to each data packet header; the sequence number is based on a sequence of arrival of each data packet. definite.
  • the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels The data stream is sent to the HAAP through at least one of the N TCP connection channels, where the processor is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the transceiver is configured to send each data packet to the HAAP through a TCP connection channel corresponding to the identification number in each data packet.
  • the processor is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • Each data packet is sent to the converged access convergence point through a TCP connection channel corresponding to the identification number in each data packet.
  • the processing module adds the identifier of the TCP connection channel to the data of each data packet Before the field.
  • the embodiment of the present invention further provides a convergence access convergence point, including:
  • transceiver for receiving a data stream
  • a memory for storing a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels
  • the transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels stored in the memory. Sent to the gateway;
  • the N TCP connection channels are TCP connection channels between the established gateway and the converged access convergence point; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each The TCP connection channel is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and L is a positive integer smaller than N.
  • the processor is further configured to perform separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow corresponding to the TCP connection channel Threshold the processor is specifically used to:
  • the comparison period is equal to M
  • M is a positive integer.
  • the data packet loopback delay and the packet loss rate according to statistics are performed. Determining a channel capability value of the TCP connection channel, the processor is specifically configured to:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processor is further configured to perform TCP encapsulation on each data packet corresponding to the data stream, and add a sequence number to each data packet header; the sequence number is based on a sequence of arrival of each data packet. definite.
  • the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels is sent to the gateway by using at least one of the N TCP connection channels, where the processor is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels is sent to the gateway by using at least one of the N TCP connection channels, where the processor is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the transceiver is configured to send each data packet to the gateway through a TCP connection channel corresponding to the identification number in each data packet.
  • the processor is specifically configured to add an identifier of a TCP connection channel to each datagram. Before the data field of the text.
  • an embodiment of the present invention further provides a computer readable storage medium storing one or more programs, the one or more programs including instructions executed by an electronic device including a plurality of applications The method of causing the electronic device to perform the method of any one of the first to eighth possible implementations of the first aspect and the first aspect.
  • an embodiment of the present invention further provides a computer readable storage medium storing one or more programs, where the one or more programs include instructions that are executed by an electronic device that includes a plurality of applications. The method of causing the electronic device to perform the method of any one of the first to seventh possible implementations of the second aspect and the second aspect.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • Figure 1 is a schematic diagram of a GRE tunnel
  • FIG. 2 is a flowchart of a method for dynamically controlling traffic according to an embodiment of the present invention
  • FIG. 3 is a flowchart of another method for dynamically controlling traffic according to an embodiment of the present invention.
  • FIG. 4 is a schematic diagram of a traffic dynamic control device according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another flow dynamic control device according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a gateway according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic diagram of a convergence access convergence point according to an embodiment of the present invention.
  • FIG. 8 is a schematic diagram of a flow dynamic control system according to an embodiment of the present invention.
  • FIG. 9 is a schematic diagram of a method for learning LTE link parameters according to an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of a DSL link parameter learning method according to an embodiment of the present invention.
  • FIG. 11 is a schematic diagram of a method for a gateway to route the data packet to a binding virtual interface for TCP processing according to an embodiment of the present invention.
  • the embodiment of the invention provides a method, a device, a gateway, and a convergence access aggregation point for solving the problem that the traffic on the first tunnel cannot reach the other tunnel after the threshold is reached in the prior art.
  • the data bearer is separated from the existing mode, and the data transmission and the signaling interaction use different bearer protocols, and the data bearer channel is upgraded from the current GRE tunnel to the TCP protocol.
  • the dynamic statistics determine the loopback delay of the data packet and the packet loss rate within the preset duration to determine which TCP connection channel to transmit data. among them,
  • the method and the device are based on the same inventive concept. Since the principles of the method and the device for solving the problem are similar, the implementation of the device and the method can be referred to each other, and the repeated description is not repeated.
  • the embodiment of the invention provides a dynamic flow control method, as shown in FIG. 2, the method includes:
  • Step 201 The first device receives the data stream.
  • Step 202 The first device establishes N TCP connection channels with the second device according to the stored connection information of the TCP connection with the second device, where N is a positive integer greater than or equal to 2.
  • the number of established TCP connection channels is related to the connection information.
  • the connection information includes the IP addresses of the interfaces at both ends of the established TCP connection channel. Therefore the number of connected channels is related to the number of interfaces.
  • the stored connection information for performing a TCP connection with the second device is stored in advance and acquired.
  • Step 203 The first device sends the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Giving the second device.
  • the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP connection channel, and according to the TCP connection channel, the loopback delay of the data packet is counted according to the preset duration.
  • the packet loss rate is predetermined; L is a positive integer less than N.
  • a TCP connection channel corresponds to a traffic overflow threshold, and the traffic overflow threshold is determined on the TCP connection channel, and the data packet loopback delay and the packet loss rate are determined in a preset duration.
  • the first device may be a gateway, and the second device may be a convergence access convergence point.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • the first device obtains connection information for performing a TCP connection with the second device, and may be implemented by:
  • An IP address is configured, a GRE tunnel is configured between the first interface and the second interface, and the second device records the IP address of the first interface as the first interface and the second interface.
  • the first device records an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
  • the first GRE protocol control signaling may further carry a port number of the first interface when carrying the Internet Protocol IP address of the first interface.
  • the port number of the second interface may also be carried.
  • the gateway and HAAP supporting both DSL and LTE access are used as two convergence points of the network.
  • Two GRE tunnels are established between the two points through the links of LTE and DSL respectively.
  • the DSL interface and the LTE interface are included in the gateway, and only one interface is included on the HAAP, which is called T3.
  • the gateway On the LTE interface of the LTE link, the gateway sends the GRE protocol control signaling to the HAAP, and the GRE protocol control signaling carries the IP address of the LTE interface. You can also carry a port number.
  • the HAAP After receiving the GRE protocol control signaling, the HAAP records the IP address and port number of the LTE interface, and serves as the destination IP address and destination port number of the TCP connection channel between the TAP interface of the HAAP and the LTE interface of the gateway. .
  • the HAAP then sends the GRE protocol control signaling reply signaling to the gateway, and carries the IP address and port number of the TAP interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the T3 interface, and serves as the destination IP address and destination port of the TCP connection channel between the LTE interface of the gateway and the T3 interface of the HAAP. number.
  • the gateway On the DSL interface of the DSL link, the gateway sends GRE protocol control signaling to the HAAP.
  • the GRE protocol control signaling carries the IP address of the DSL interface. It can also carry the port number of the DSL interface.
  • the HAAP After receiving the GRE protocol control signaling through the T3 interface, the HAAP records the IP address of the DSL interface and serves as the destination IP address of the TCP connection channel between the TAP interface of the HAAP and the DSL interface of the gateway.
  • the HAAP then sends the GRE protocol control signaling reply signaling to the DSL interface of the gateway through the T3 interface, and carries the IP address of the TAP interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the T3 interface, and serves as the destination IP address of the TCP connection channel between the DSL interface of the gateway and the T3 interface of the HAAP.
  • the first device after receiving the data flow, performs TCP encapsulation on each data packet corresponding to the data flow, and adds a sequence number to each data packet header; the serial number is according to each datagram. The order in which the text arrives is determined.
  • the traffic overflow threshold is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and can be implemented in the following manner:
  • the first device performs for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the preset duration are measured, and the TCP connection channel is determined according to the statistics of the loopback delay of the data packet and the packet loss rate.
  • the channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  • the ACK of the data packet of the same sequence number received by the data packet on the TCP connection channel within the preset duration may be counted.
  • the time difference of the feedback is obtained, and then the average value of the time difference between the sending and receiving of each data message is obtained as the RTT value within the preset duration.
  • the packet loss rate of the TCP connection channel within the preset duration may be determined by whether each data packet receives the ACK feedback. After the data packet with the sequence number is sent, the sequence number of the data packet is continuous, so each sequence number in the ACK feedback of the data packet can be counted, so the packet loss rate can be determined.
  • determining the traffic overflow threshold of the TCP connection channel according to the determined channel capability value of the TCP connection channel may be implemented as follows:
  • the determined channel capability value of the TCP connection channel is multiplied by the value of X as the traffic overflow threshold, where 0 ⁇ X ⁇ 1.
  • the overflow threshold is used as the traffic overflow threshold for this comparison period.
  • the comparison period is equal to M preset durations, and M is a positive integer.
  • a preset duration can also be referred to as a time window, and a time concept is represented in the embodiment of the present invention.
  • each TCP connection channel is executed separately: when the predetermined initial traffic overflow threshold is the first time window (a time window is equal to a preset duration), the TCP connection channel data message is looped back.
  • the delay and packet loss rate are determined by multiplying the channel capability value of the TCP connection channel by a percentage (for example, 50%).
  • the loopback delay and the packet loss rate of the data packet in each subsequent time window are determined, and the channel capability value of the TCP connection channel is determined, and the determined channel capability value and the initial traffic overflow threshold are performed.
  • the comparison result is obtained, and the comparison result is saved, the flow threshold is adjusted according to the comparison result in the comparison period, and the adjusted flow threshold is saved.
  • a comparison period is equal to M time windows.
  • the flow overflow threshold is increased by 5%. If the channel capacity value determined in the three consecutive time windows is less than the currently saved traffic overflow threshold, the flow overflow threshold is lowered by 5%. In other cases, the flow overflow threshold is unchanged. Then, the adjusted flow overflow threshold is used as the flow overflow threshold of the dynamic control of the next comparative cycle of the comparison cycle. Therefore, the flow overflow threshold can be dynamically and real-time adjusted to ensure the superposition of the dual channel bandwidth.
  • determining the channel capability value of the TCP connection channel according to the loopback delay and the packet loss rate of the statistical data packet can be implemented by using the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Min means to take the minimum value.
  • BW is the activation bandwidth of the connection channel, which is predetermined, and once it is determined, it generally does not change.
  • the CWND and the MSS are obtained by TCP negotiation and are also fixed values. Therefore, the RTT and P in the above formula are dynamically changed, and real-time statistics are required.
  • the preset duration is T, that is, the period length.
  • the RTT value may be a data packet loopback delay that is counted in the previous time period.
  • P can be the packet loss rate of the data packet counted in the previous time period. Therefore, the overflow traffic threshold is dynamically changed in real time.
  • the gateway and HAAP periodically calculate the RTT and P values, and determine the overflow traffic threshold for the period, and save it in real time.
  • each data packet corresponding to the data stream is encapsulated by TCP, that is, each data packet corresponding to the data stream is used as a payload of the TCP packet.
  • the first device sends the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • Giving the second device includes:
  • the first device If the first device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
  • the first device When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the first device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
  • the first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the TCP connection channel corresponds to the TCP link
  • the identification number can be used to identify the TCP link.
  • the identification number is used to identify the TCP connection channel.
  • an identifier is added to a header of each data packet of the data flow, where the identifier is added to identify the first TCP.
  • the number of data packets connected to the channel is equal to the traffic overflow threshold.
  • the priority of the established TCP connection channel may be determined
  • the first device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel;
  • the first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • TCP1 For example, if there are 3 TCP connection channels established, they are TCP1, TCP2, and TCP3.
  • the priority of TCP1 is greater than the priority of TCP2, and the priority of TCP2 is greater than the priority of TCP3.
  • the first device may add the identifier of the TCP1 to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the TCP1, and reduce the sequence number of the data packet whose serial number reaches the traffic overflow threshold corresponding to the TCP1.
  • the identifier of the TCP2 is added to the header of the data packet whose sequence number value does not reach the traffic overflow threshold corresponding to TCP2.
  • the identifier of TCP3 is added to the header of the remaining data packet.
  • the first device may also add an identification number to the header of each data packet of the data stream when determining that the number of data packets of the data stream reaches the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2.
  • the number of added data packets identifying the identification number of TCP1 is less than or equal to the traffic overflow threshold of TCP1.
  • the number of added data packets that identify the identifier of TCP2 is less than or equal to the traffic overflow threshold of TCP2.
  • the identification number of the added TCP connection channel is located before the data field of each data packet. As shown in Table 1.
  • the embodiment of the invention provides a dynamic flow control method, as shown in FIG. 3, the method includes:
  • Step 301 The second device receives the data stream.
  • Step 302 The second device sends the data flow to at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Said first device;
  • the N TCP connection channels are TCP connection channels between the second device and the first device that are established; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP.
  • the connection channel is determined according to the loopback delay and the packet loss rate of the data packet that are counted within the preset duration according to the TCP connection channel; L is a positive integer smaller than N.
  • the first device has established a TCP connection channel between the first device and the second device when sending the data packet to the second device.
  • the second device may be a converged access aggregation point, and other network devices that can be used to implement the convergent aggregation function are applicable to the present invention, and the first device may be a gateway.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • the traffic overflow threshold is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration.
  • the second device performs for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • the ACK feedback of the data packet of the same sequence number received by the data packet on the TCP connection channel can be counted within the preset duration.
  • the time difference is then obtained as an average of the time difference between the transmission and reception of each data message as the RTT value within the preset duration.
  • the packet loss rate of the TCP connection channel within the preset duration may be determined by whether each data packet receives the ACK feedback. After the data packet with the sequence number is sent, the sequence number of the data packet is continuous, so each sequence number in the ACK feedback of the data packet can be counted, so the packet loss rate can be determined.
  • determining the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel may be implemented by:
  • the determined channel capability value of the TCP connection channel is multiplied by the value of X as the traffic overflow threshold, where 0 ⁇ X ⁇ 1.
  • the comparison period is equal to M
  • M is a positive integer.
  • determining the channel capability value of the TCP connection channel according to the statistics data packet loopback delay and the packet loss rate can be implemented by using the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the second device passes the data flow through the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • At least one TCP connection channel is sent to the first device, which can be implemented by:
  • the second device If the second device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
  • the second device When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the second device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
  • the second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the TCP connection channel corresponds to the TCP link, and the identification number can be used to identify the TCP link.
  • the identification number is used to identify the TCP connection channel.
  • an identifier is added to a header of each data packet of the data flow, where the identifier is added to identify the first TCP.
  • the number of data packets connected to the channel is equal to the traffic overflow threshold.
  • the second device is configured according to the N TCP connection channels.
  • the traffic overflow threshold corresponding to the L TCP connection channels in the medium, and the data flow is sent to the first device by using at least one of the N TCP connection channels, which can be implemented by:
  • the second device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel
  • the second device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
  • the second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • TCP1 For example, if there are 3 TCP connection channels established, they are TCP1, TCP2, and TCP3.
  • the priority of TCP1 is greater than the priority of TCP2, and the priority of TCP2 is greater than the priority of TCP3.
  • the first device may add the identifier of the TCP1 to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the TCP1, and reduce the sequence number of the data packet whose serial number reaches the traffic overflow threshold corresponding to the TCP1.
  • the identifier of the TCP2 is added to the header of the data packet whose sequence number value does not reach the traffic overflow threshold corresponding to TCP2.
  • the identifier of TCP3 is added to the header of the remaining data packet.
  • the first device may also add an identification number to the header of each data packet of the data stream when determining that the number of data packets of the data stream reaches the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2.
  • the number of added data packets identifying the identification number of TCP1 is less than or equal to the traffic overflow threshold of TCP1.
  • the number of added data packets that identify the identifier of TCP2 is less than or equal to the traffic overflow threshold of TCP2.
  • the data packet can pass only TCP1 and TCP2 transmission.
  • the identification number of the added TCP connection channel is located in data of each data packet. Before the field.
  • the embodiment of the present invention further provides a traffic dynamic control device, which may be an HG. As shown in FIG. 4, the device includes:
  • a receiving module 401 configured to receive a data stream
  • the storage module 402 is configured to store connection information for performing TCP connection with the peer device corresponding to the device where the storage module 402 is located.
  • the processing module 403 is configured to establish, according to the connection information that the storage module 402 stores the TCP connection with the corresponding peer device, establish N TCP connection channels with the peer device, where N is a positive integer greater than or equal to 2;
  • the sending module 404 is configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels established by the processing module 403. Sending a TCP connection channel to the peer device;
  • the traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels.
  • the packet loss rate is predetermined; L is a positive integer less than N.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • the sending module 404 is further configured to send, by using the first interface, the first GRE protocol control signaling to the second interface of the peer device, where the first GRE protocol control signaling carries the a network protocol IP address of the first interface, a GRE tunnel is configured between the first interface and the second interface, and the peer device records the IP address of the first interface as the first interface a destination IP address of the TCP connection channel between the second interfaces;
  • the receiving module 401 is further configured to receive, by using the first interface, a first GRE protocol control signaling reply signaling sent by the peer device by using the second interface, where the first GRE protocol control signaling reply
  • the IP address of the second interface is carried in the order;
  • the storage module 402 is configured to store an IP address of the second interface as the first interface.
  • the destination IP address of the TCP connection channel with the second interface is configured to store an IP address of the second interface as the first interface.
  • processing module 403 is further configured to perform separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • the processing module 403 is specifically configured to determine the channel capability value of the TCP connection channel. Multiply the value after X as the traffic overflow threshold, where 0 ⁇ X ⁇ 1; or
  • the comparison period is equal to M
  • M is a positive integer.
  • the processing module 403 is specifically configured to determine the channel capability value of the TCP connection channel according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processing module 403 is further configured to: after the receiving module receives the data stream, perform TCP encapsulation on each data packet corresponding to the data stream, and add a serial number in each data packet header.
  • the serial number is determined according to the order in which the individual data messages arrive.
  • the processing module 403 is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the sending module 404 is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the processing module 403 is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to send each data packet to the peer device by using a TCP connection channel corresponding to the identifier number in each data packet.
  • the processing module 403 adds the identification number of the TCP connection channel to the header of the data packet, specifically, the identification number of the TCP connection channel is added before the data field of each data packet.
  • the embodiment of the present invention further provides a traffic dynamic control device, which may be a HAAP. As shown in FIG. 5, the device includes:
  • the receiving module 501 is configured to receive a data stream.
  • the sending module 502 is configured to send the data flow to the sending by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • the peer device corresponding to the device where the module is located;
  • the N TCP connection channels are TCP connection channels between the established peer device and the device where the sending module is located; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is For each TCP connection channel, according to the TCP connection
  • the loopback delay and the packet loss rate of the data packet counted in the preset duration are predetermined; L is a positive integer smaller than N.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • the device further includes:
  • Processing module for performing separately for each TCP connection channel :
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • the comparison period is equal to M
  • M is a positive integer.
  • the channel capability value of the TCP connection channel is determined according to the statistics data packet loopback delay and the packet loss rate, and the processing module is specifically configured to:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processing module is further configured to: after the receiving module 501 receives the data stream, And performing a TCP encapsulation on each data packet corresponding to the data stream, and adding a sequence number to each data packet header; the sequence number is determined according to a sequence in which each data packet arrives.
  • the data stream is sent to the peer end by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • the device, the processing module is specifically configured to:
  • the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
  • the sending module 502 is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the data stream is sent to the peer end by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • the device is specifically configured to:
  • the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
  • the sending module is specifically configured to:
  • the data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  • the processing module is specifically configured to add an identification number of the TCP connection channel before the data field of each data packet.
  • a gateway is also provided in the embodiment of the present invention. As shown in FIG. 6, the gateway includes:
  • the transceiver 601, the processor 602, and the memory 603 are connected to each other. Not limited in the embodiment of the present invention Determine the specific connection medium between the above components.
  • the memory 603, the processor 602, and the transceiver are connected by a bus 604 in FIG. 6.
  • the bus is indicated by a thick line in FIG. 6, and the connection manner between other components is only schematically illustrated. Not limited to limits.
  • the bus 604 can be a peripheral component interconnect standard (English: peripheral component interconnect, PCI for short) or an extended industry standard architecture (English: extended industry standard architecture, EISA) bus.
  • the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 6, but it does not mean that there is only one bus or one type of bus.
  • the memory 603 is configured to store the program code executed by the processor 602, and may be a read-only memory (English: read-only memory, abbreviated as: ROM), and a random access memory (English: random-access memory, referred to as :RAM), can also be Electrically Erasable Programmable Read-Only Memory (EEPROM), disk storage media or other magnetic storage devices, or can be used to carry or store instructions or
  • EEPROM Electrically Erasable Programmable Read-Only Memory
  • the processor 602 in the embodiment of the present invention may be a general central processing unit (English: central processing unit, CPU for short).
  • the transceiver 601 can include, but is not limited to, an antenna, and a transceiver device for implementing the function of transmitting and receiving data messages is suitable for use in the present invention.
  • the transceiver 601 is configured to receive a data stream.
  • the storage 603 is configured to store connection information for performing a TCP connection with the fused access aggregation point
  • the processor 602 is configured to establish, according to the connection information that is stored in the memory 603 by using the TCP connection with the converged access aggregation point, to establish N TCP connection channels with the converged access aggregation point, where N is greater than or equal to 2. Integer
  • the transceiver 601 is further configured to: pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels of the N TCP connection channels stored by the memory. Sending, by the TCP connection channel, the converged access convergence point;
  • the traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels.
  • the packet loss rate is predetermined; L is a positive integer less than N.
  • the first GRE protocol control signaling sent by the transceiver 601 to the second interface of the fused access aggregation point by using the first interface where the first GRE protocol control signaling carries the Internet protocol of the first interface
  • An IP address a GRE tunnel is configured between the first interface and the second interface, and the fused access aggregation point records the IP address of the first interface as the first interface and the second The destination IP address of the TCP connection channel between the interfaces;
  • the memory 603 stores the IP address of the second interface as the destination IP address of the TCP connection channel between the first interface and the second interface.
  • the processor 602 performs separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • the processor 602 When determining the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel, the processor 602 multiplies the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow. Threshold, where 0 ⁇ X ⁇ 1; or the processor 602 compares the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusts the current current period according to the obtained comparison result. Comparing the periodic overflow threshold, the comparison period is equal to M preset durations, and M is a positive integer.
  • the processor 602 determines the channel capability value of the TCP connection channel according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processor 602 After the transceiver 601 receives the data stream, the processor 602 performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the serial number is based on each datagram. The order in which the text arrives is determined.
  • the processor 602 determines that if the established TCP connection channel is two, confirm that the first TCP connection channel is the default transmission channel; and determine that the number of data packets of the data stream reaches the first TCP connection channel.
  • the traffic overflow threshold an identifier is added to the header of each data packet of the data stream, where the identifier is used to identify a link corresponding to each TCP connection channel; the transceiver 601 passes each data packet through each datagram.
  • the TCP connection channel corresponding to the identification number in the text is sent to the HAAP.
  • the processor 602. Determine, if the established TCP connection channel is at least three, determine a priority of the established TCP connection channel; and use the datagram according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel.
  • the identifier is used to identify the link corresponding to each TCP connection channel; the transceiver 601 sends each data packet to the HAAP through the TCP connection channel corresponding to the identification number in each data packet. .
  • the processor 602 adds the identification number of the TCP connection channel before the data field of each data message.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • the embodiment of the invention further provides a converged access aggregation point, as shown in FIG. 7, the converged access Convergence points include:
  • the transceiver 701, the processor 702, and the memory 703 are connected to each other.
  • the specific connecting medium between the above components is not limited in the embodiment of the present invention.
  • the memory 703, the processor 702, and the transceiver are connected by a bus 704 in FIG. 6.
  • the bus is indicated by a thick line in FIG. 6, and the connection manner between other components is only schematically illustrated. Not limited to limits.
  • the bus 704 can be a peripheral component interconnect standard (English: peripheral component interconnect, PCI for short) or an extended industry standard architecture (English: extended industry standard architecture, EISA) bus.
  • the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 6, but it does not mean that there is only one bus or one type of bus.
  • the memory 703 is used to store the program code executed by the processor 702, and may be a read-only memory (English: read-only memory, abbreviated as: ROM), and a random access memory (English: random-access memory, referred to as :RAM), can also be Electrically Erasable Programmable Read-Only Memory (EEPROM), disk storage media or other magnetic storage devices, or can be used to carry or store instructions or
  • EEPROM Electrically Erasable Programmable Read-Only Memory
  • the processor 702 in the embodiment of the present invention may be a general central processing unit (English: central processing unit, CPU for short).
  • the transceiver 701 can include, but is not limited to, an antenna, and a transceiver device for implementing the function of transmitting and receiving data messages is suitable for use in the present invention.
  • the memory 703 also stores a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels;
  • the transceiver 701 After receiving the data stream, the transceiver 701 passes the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels stored in the memory 703. A TCP connection channel is sent to the gateway;
  • the N TCP connection channels are TCP connection channels between the established gateway and the converged access convergence point; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each The TCP connection channel is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and L is a positive integer smaller than N.
  • the processor 702 performs separately for each TCP connection channel:
  • the loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet.
  • the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
  • the processor 702 Determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel, the processor 702 multiplying the determined channel capability value of the TCP connection channel by a value of X as a traffic The overflow threshold, where 0 ⁇ X ⁇ 1; or the processor 702 compares the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusts according to the obtained comparison result in the current comparison period.
  • the current overflow period threshold of the comparison period, the comparison period is equal to M preset durations, and M is a positive integer.
  • the channel capability value of the TCP connection channel is determined according to the statistics data packet loopback delay and the packet loss rate, and the processor 702 determines the channel capability value of the TCP connection channel according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring.
  • Back delay, min means take the minimum value.
  • the processor 702 After the transceiver 701 receives the data stream, the processor 702 performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the serial number is based on each datagram. The order in which the text arrives is determined.
  • the overflow threshold is sent to the gateway by using at least one of the N TCP connection channels, and the processor 702 determines that if the established TCP connection channel is two, the first one is confirmed.
  • the TCP connection channel is the default transmission channel; the identification number of the first TCP connection channel is added to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the first TCP connection channel; and the data packet of the data stream is determined.
  • an identifier is added to the header of each data packet of the data stream, where the identifier is used to identify the link corresponding to each TCP connection channel;
  • the 701 sends the data packet to the gateway through a TCP connection channel corresponding to the identification number in each data packet.
  • the data flow is sent to the gateway through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels.
  • the processor 702 determines that the established TCP connection channel is at least three, determining the priority of the established TCP connection channel; according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel, Adding an identification number to each data packet header; the identifier number is used to identify a link corresponding to each TCP connection channel; then the transceiver 701 sends each data packet through a TCP connection channel corresponding to the identification number in each data packet. Give the first device.
  • the processor adds the identification number of the TCP connection channel before the data field of each data packet.
  • the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
  • Embodiments of the present invention also provide a computer readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by an electronic device including a plurality of applications, cause the The electronic device performs the flow dynamic control method in any of the embodiments corresponding to FIG. 2 described above.
  • Embodiments of the present invention also provide a computer readable storage medium storing one or more programs, the one or more programs including instructions, when the instructions are electronic including multiple applications
  • the electronic device is configured to execute the flow dynamic control method in any one of the embodiments corresponding to FIG. 3 above.
  • the traffic dynamic control system includes: a gateway, a Hybrid Access Aggregation Point (HAAP), and a broadband network gateway device (abbreviation: BNG) and a packet core network device (abbreviation: EPC) ).
  • HAAP Hybrid Access Aggregation Point
  • BNG broadband network gateway device
  • EPC packet core network device
  • the gateway's LAN address supports both IPv4 addresses (or A4 addresses) and IPv6 addresses (or A6 addresses). And the gateway allocates an IPv4 or IPv6 address to the terminal device through the PHCP.
  • the gateway includes two interfaces for the DSL interface and the LTE interface, and the HAAP includes one interface for the Tx/Rx interface.
  • the address D of the DSL interface is obtained by the gateway from the BNG device through the DSL link, and the address E of the LTE interface is obtained by the gateway through the EPC device.
  • T3 is the address of the Tx/Rx interface that is connected between the HAAP and the gateway.
  • TCP connection channels Before the data stream is transmitted, two TCP connection channels need to be established between the DSL interface and the Tx/Rx interface, the LTE interface, and the Tx/Rx interface. Parameters such as the address of the two TCP connection channels need to be acquired and saved for subsequent use by GRE protocol control signaling.
  • the specific acquisition methods are as follows:
  • the gateway sends the GRE protocol control signaling to the HAAP, where the GRE protocol control signaling carries the IP address (E) and the port number of the LTE interface.
  • the HAAP After receiving the GRE protocol control signaling, the HAAP records the IP address of the LTE interface and serves as the destination IP address of the TCP connection channel between the Tx/Rx interface of the HAAP and the LTE interface of the gateway.
  • the HAAP sends a GRE protocol control signaling reply signaling to the gateway, and carries the IP address of the TAP/Rx interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the Tx/Rx interface, and serves as the destination IP address of the TCP connection channel between the LTE interface of the gateway and the Tx/Rx interface of the HAAP. address.
  • the gateway sends GRE protocol control signaling to the HAAP, where the GRE protocol control signaling carries the IP address and port number of the DSL interface. Then, after receiving the GRE protocol control signaling through the Tx/Rx interface, the HAAP records the IP address and port number of the DSL interface, and serves as a TCP connection channel between the Tx/Rx interface of the HAAP and the DSL interface of the gateway. The destination IP address is used as the connection information.
  • the HAAP sends the GRE protocol control signaling reply signaling to the DSL interface of the gateway through the Tx/Rx interface, and carries the IP address of the Tx/Rx interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the Tx/Rx interface, and serves as the destination IP address of the TCP connection channel between the DSL interface of the gateway and the Tx/Rx interface of the HAAP. The address is the connection information.
  • the gateway receives the data packet sent by the terminal, and the data packet carries the IP address of the terminal.
  • the IP address of the terminal can be an A4 address or an A6 address. If the address is an A4 address, the gateway routes the data packet to the binding virtual interface for TCP processing, and then passes the A4 address to the NAT, and the NAT is the T1 address. It is then sent to HAAP through a DSL interface or an LTE interface. If the A6 address is used, the gateway routes the data packet to the bound virtual interface for TCP processing, and then sends the data packet to the HAAP through the DSL interface or the LTE interface. Because the A4 address is used as the private network address on the network side, the data packet carrying the A4 address cannot be transmitted on the Internet. If the data packet needs to be converted to a public network address, the T1 address is a preset public network. address. The A6 address is itself a public network address on the network side, so no further conversion is required.
  • the gateway routes the data packet to the bound virtual interface for TCP processing, as shown in Figure 11.
  • Step 1101 The gateway establishes two TCP connection channels with the HAAP according to the stored connection information of the TCP connection with the HAAP. Specifically, it is a first TCP connection channel between the DSL interface and the Tx/Rx interface, and a second TCP connection channel between the LTE interface and the Tx/Rx interface.
  • Step 1102 The gateway encapsulates the data packet by TCP and adds it to the header of each data packet. Add the serial number.
  • the data packet is encapsulated by TCP, that is, the data packet is added to the header of the TCP packet, as shown in Table 2.
  • Step 1103 when the gateway determines that the number of the data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, the gateway adds an identification number to the head of each data packet of the data flow.
  • the identification number is used to identify the link corresponding to each TCP connection channel.
  • Step 1104 The gateway sends each data packet to the HAAP through a TCP connection channel corresponding to the identification number in each data packet.
  • the gateway counts the loopback delay and the packet loss rate of the data packet in a time window, and then determines the channel capability of the first TCP connection channel.
  • the channel capability value of the first TCP connection channel can be determined according to the following formula:
  • the outbound indicates the channel capability value
  • the BW indicates the active bandwidth of the connected channel
  • the CWND indicates the size of the data packet transmission congestion window
  • the MSS indicates the maximum fragmented packet size
  • P indicates the packet loss rate
  • the RTT indicates the data packet ring. Back delay.
  • the traffic overflow threshold is then determined based on the channel capability of the first TCP connection channel. Specifically, the channel capability can be multiplied by an expected percentage (such as 50%) as the initial flow overflow threshold. E.g: Where R is the flow overflow threshold, 0 ⁇ X ⁇ 1.
  • the channel capability of the first TCP connection channel (corresponding to the DSL link) determined in each time window may be saved, and the determined channel capability value of the first TCP connection channel is compared with the traffic overflow threshold. The comparison result is saved.
  • the flow overflow threshold is adjusted.
  • the flow overflow threshold is lowered.
  • the RTT can be determined according to the time difference between each data message sent and received by the DSL connection channel. Since each data message adds a sequence number, the RTT is determined according to the time difference between the serial number corresponding to the data message sent and the ACK feedback received. The change in RTT reflects the change in the delay of the connection channel. Then, according to the ACK feedback condition of the message corresponding to each sequence number, the packet loss rate in the time window can be determined.
  • the HAAP sorts and sorts the data packet according to the serial number, and performs timeout retransmission for the unreceived data packet in the time window, and does not receive the predetermined time.
  • the data packet arrives, it considers that the packet is lost, and sends an ACK feedback to the gateway for the received data packet. Then, the received data packet is sent out of the TCP packet header.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the invention. It should be understood that the flow chart can be implemented by computer program instructions And/or a combination of the processes and/or blocks in the block diagrams, and the flowcharts and/or blocks in the flowcharts. These computer program instructions can be provided to a processor of a general purpose computer, a special purpose computer, an embedded processor, or other programmable data processing module to produce a machine for generating instructions for execution by a processor of a computer or other programmable data processing module. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing module to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing module to perform a series of operational steps on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Landscapes

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

Abstract

Provided in embodiments of the present invention are a dynamic traffic control method and device for addressing the problem in the prior art in which traffic in a first tunnel can never overflow to another tunnel. The method comprises: receiving, by a first device, a data stream; establishing, by the first device according to stored connection information of establishing a TCP connection with a second device, N TCP connection channels with the second device, N being a positive integer greater than or equal to 2; and transmitting, by the first device according to traffic overflow thresholds corresponding to L in the N TCP connection channels, the data stream to the second device via at least one of the N TCP connection channels, wherein the traffic overflow threshold corresponding to each of the N TCP connection channels is pre-determined for each TCP connection channel according to statistics of round trip delays and a data drop rate of data packets transmitted in the TCP connection channel in a preset time period, and L is a positive integer less than N.

Description

一种流量动态控制方法、设备及网关、融合接入汇聚点Traffic dynamic control method, device and gateway, and fusion access convergence point 技术领域Technical field
本发明涉及通信技术领域,尤其涉及一种流量动态控制方法、设备及网关、融合接入汇聚点。The present invention relates to the field of communications technologies, and in particular, to a traffic dynamic control method, a device, a gateway, and a convergence access convergence point.
背景技术Background technique
网络宽带接入的融合已经是一种趋势,包括各种固网和有线:数字用户线路(x Digital Subscriber Line/Very High Rate Digital Subscriber Line,简称:xDSL/VDSL),有线电视电缆(Cable),光纤,无线保真(Wirless Fidelity,简称:WiFi),以太网,第三代移动通信技术(the 3rd-generation,简称:3G)、第四代移动通信技术(the 4th-generation,简称:4G),来最大限度地保证网络的覆盖。通过这些融合的接入方式,可以实现数据报文的并发,为用户提供访问因特网(internet),提供个性化的互动的电视(Interactive Personality TV,简称:IPTV)、基于IP的语音呼叫(Voice over IP,简称:VoIP)语音通话等各个方面的业务体验。The convergence of network broadband access has been a trend, including various fixed network and cable: x Digital Subscriber Line/Very High Rate Digital Subscriber Line (xDSL/VDSL), cable TV cable (Cable), Fiber, Wirless Fidelity (WiFi), Ethernet, third-generation mobile communication technology (the 3rd-generation, referred to as: 3G), fourth-generation mobile communication technology (the 4th-generation, referred to as: 4G) To maximize the coverage of the network. Through these converged access methods, data messages can be concurrently transmitted, providing users with access to the Internet, providing personalized interactive TV (Interactive Personality TV, IPTV for short), IP-based voice calls (Voice over) IP, referred to as: VoIP) Voice call and other aspects of the business experience.
在数字用户线路(Digital Subscriber Line,简称:DSL)和长期演进(Long Term Evolution,简称:LTE)的组网中,将同时支持DSL和LTE接入的终端和核心网作为网络的两个汇聚点。如图1所示,在LTE链路包括网关(Home Gateway,简称HG)演进型节点B(evolved Node B,简称:eNodeB)、分组核心演进(Evolved Packet Core,简称:EPC)设备以及融合接入汇聚点(Hybrid Access Aggregation Point,简称:HAAP)。在DSL链路包括HG、数字用户线路接入复用器(Data Subscriber Line Access Multiplexer,简称:DSLAM)、宽带网络网关控制设备(Broadband Network Gateway,简称:BNG)以及HAAP。这两个点之间分别通过LTE和DSL的链路建立两条通用路由封装(generic routing encapsulation,简称GRE)隧道,并对两条隧道进行绑定,来完成数据报文在两个隧道的同时转发。 In the networking of Digital Subscriber Line (DSL) and Long Term Evolution (LTE), terminals and core networks supporting both DSL and LTE access are used as two convergence points of the network. . As shown in FIG. 1 , the LTE link includes a Home Gateway (HG) evolved Node B (eNodeB), an Evolved Packet Core (EPC) device, and a converged access. Hybrid Access Aggregation Point (HAAP). The DSL link includes an HG, a Digital Subscriber Line Access Multiplexer (DSLAM), a Broadband Network Gateway (BNG), and a HAAP. Two common routing encapsulation (GRE) tunnels are established between the two points through the LTE and DSL links, and the two tunnels are bound to complete the data packets in the two tunnels. Forward.
在数据处理上是对这两个隧道进行叠加绑定,即系统总的带宽即为两条链路的带宽之和。在绑定的隧道内会重新分配数据连接的互联网协议(Internet Protocol,简称:IP)地址,即隧道外层地址只负责两个隧道的链路的连接和传输,隧道内层地址为用户数据的封装地址,用来和因特网(Internet)进行通讯。In data processing, the two tunnels are superimposed and bound, that is, the total bandwidth of the system is the sum of the bandwidths of the two links. The Internet Protocol (IP) address of the data connection is redistributed in the bound tunnel. The outer address of the tunnel is only responsible for the connection and transmission of the links of the two tunnels. The inner address of the tunnel is user data. The package address is used to communicate with the Internet.
现有技术中,在数据传输时,是根据一个静态配置的门限值在DSL隧道上进行流量填充,在实际数据报文达到门限值后,数据流会溢出(overflow)到LTE隧道上。在两个隧道的另外一端对接收到的数据报文进行排序整合,来完成整个数据的绑定。In the prior art, during data transmission, the traffic is filled on the DSL tunnel according to a statically configured threshold. After the actual data packet reaches the threshold, the data flow overflows to the LTE tunnel. At the other end of the two tunnels, the received data packets are sorted and integrated to complete the binding of the entire data.
核心网的出口带宽一般是针对各个用户基于百分比的比例分配的,但是当用户量多且同时都在线并发时,核心网的网络的出口带宽会成为瓶颈,无法达到终端用户激活或核心网设备分配的带宽。因此在第一个隧道上流量始终无法溢出到第二个隧道进行传输。The egress bandwidth of the core network is generally allocated based on the proportion of each user. However, when the number of users is large and concurrently concurrent, the egress bandwidth of the network of the core network becomes a bottleneck, and the end user activation or core network device allocation cannot be achieved. Bandwidth. Therefore, traffic on the first tunnel cannot always overflow to the second tunnel for transmission.
发明内容Summary of the invention
本发明实施例提供一种流量动态控制方法、设备及网关、融合接入汇聚点,用于解决现有技术存在的在第一隧道上的流量始终无法溢出到另一个隧道上的问题。The embodiment of the invention provides a method, a device, a gateway, and a convergence access aggregation point for solving the problem that the traffic on the first tunnel cannot overflow to another tunnel in the prior art.
第一方面,本发明实施例提供了一种流量动态控制方法,包括:In a first aspect, an embodiment of the present invention provides a traffic dynamic control method, including:
第一设备接收到数据流;The first device receives the data stream;
所述第一设备根据存储的与第二设备进行传输控制协议(Transmission Control Protocol,简称:TCP)连接的连接信息,与所述第二设备建立N条封装TCP连接通道,N为大于等于2的正整数;The first device establishes N encapsulated TCP connection channels with the second device according to the stored connection information of the Transmission Control Protocol (TCP) connection with the second device, where N is greater than or equal to 2. Positive integer
所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备;Transmitting, by the first device, the data flow to the at least one TCP connection channel of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels Second device
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针 对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is a pin. For each TCP connection channel, according to the TCP connection channel, the loopback delay and the packet loss rate of the data packet are determined in advance according to the preset duration; L is a positive integer smaller than N.
结合第一方面,在第一方面的第一种可能的实现方式中,所述第一设备获取与所述第二设备进行TCP连接的连接信息,包括:With reference to the first aspect, in a first possible implementation manner of the first aspect, the acquiring, by the first device, the connection information of the TCP connection with the second device includes:
所述第一设备通过第一接口向所述第二设备的第二接口发送的第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述第二设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;The first GRE protocol control signaling sent by the first device to the second interface of the second device by using the first interface, where the first GRE protocol control signaling carries the Internet Protocol IP address of the first interface a GRE tunnel is configured between the first interface and the second interface, and the second device records the IP address of the first interface as being between the first interface and the second interface. Destination IP address of the TCP connection channel;
所述第一设备通过所述第一接口接收到所述第二设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;Receiving, by the first device, the first GRE protocol control signaling reply signaling sent by the second device by using the second interface, where the first GRE protocol control signaling is carried in the signaling The IP address of the second interface;
所述第一设备记录所述第二接口的IP地址作为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址。The first device records an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,包括:With reference to the first aspect or the first possible implementation manner of the first aspect, in the second possible implementation manner of the first aspect, for each TCP connection channel, according to the TCP connection channel, the preset is respectively The loopback delay and packet loss rate of the data packets measured in the duration determine the traffic overflow threshold, including:
所述第一设备针对每条TCP连接通道分别执行:The first device performs separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,包括:With reference to the second possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel, include:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为该条TCP 连接通道对应的流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the TCP The traffic overflow threshold corresponding to the connection channel, where 0<X<1; or
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第一方面的第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值,包括:With reference to the second or third possible implementation manner of the first aspect, in a fourth possible implementation manner of the foregoing aspect, the data packet loopback delay and the packet loss ratio are determined according to statistics The channel capability value of the TCP connection channel, including:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000001
Figure PCTCN2015078086-appb-000001
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第一方面和第一方面的第一种至第四种可能的实现方式中的任意一种,在第一方面的第五种可能的实现方式中,还包括:With reference to the first aspect, and any one of the first to fourth possible implementation manners of the first aspect, in a fifth possible implementation manner of the first aspect, the method further includes:
第一设备接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After receiving the data stream, the first device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备,包括:With reference to the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, the first device, according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing the threshold, the data stream is sent to the second device by using at least one of the N TCP connection channels, including:
所述第一设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the first device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
所述第一设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路; When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the first device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
结合第一方面的第五种可能的实现方式,在第一方面的第七种可能的实现方式中,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备,包括:With reference to the fifth possible implementation manner of the first aspect, in a seventh possible implementation manner of the first aspect, the first device, according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing the threshold, the data stream is sent to the second device by using at least one of the N TCP connection channels, including:
所述第一设备若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;If the first device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
所述第一设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;The first device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identification number is used to identify each TCP connection channel. link;
所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
结合第一方面的第六种或第七种可能的实现方式,在第一方面的第八种可能的实现方式中,所述添加的TCP连接通道的标识号位于各个数据报文的数据字段之前。In conjunction with the sixth or seventh possible implementation of the first aspect, in an eighth possible implementation manner of the first aspect, the identifier of the added TCP connection channel is located before the data field of each data packet. .
结合第一方面和第一方面的第一种至第八种可能的实现方式中的任意一种,在第一方面的第九种可能的实现方式中,所述第一设备为HG,所述第二设备为HAAP。With reference to the first aspect, and any one of the first to the eighth possible implementation manners of the first aspect, in the ninth possible implementation manner of the first aspect, the first device is an HG, The second device is HAAP.
第二方面,本发明实施例还提供了一种流量动态控制方法,包括:In a second aspect, an embodiment of the present invention further provides a traffic dynamic control method, including:
第二设备接收到数据流;The second device receives the data stream;
所述第二设备根据N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备;The second device sends the data flow to the first one through the at least one TCP connection channel of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. device;
其中,所述N条TCP连接通道为已建立的所述第二设备与第一设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长 内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the second device and the first device that are established; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP. Connection channel, according to the TCP connection channel, for a preset duration The internal data packet loopback delay and the packet loss rate are predetermined; L is a positive integer smaller than N.
结合第二方面,在第二方面的第一种可能的实现方式中,针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,包括:With reference to the second aspect, in a first possible implementation manner of the second aspect, for each of the TCP connection channels, the loopback delay of the data packet that is counted in the preset duration is respectively determined according to the TCP connection channel. The packet loss rate determines the traffic overflow threshold, including:
所述第二设备针对每条TCP连接通道分别执行:The second device performs for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,包括:With reference to the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel ,include:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold, where 0<X<1;
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值,包括:With reference to the first or second possible implementation manner of the second aspect, in a third possible implementation manner of the second aspect, the data packet loopback delay and the packet loss ratio are determined according to statistics The channel capability value of the TCP connection channel, including:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000002
Figure PCTCN2015078086-appb-000002
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第二方面和第二方面的第一种至第三种可能的实现方式中的任意一 种,在第二方面的第四种可能的实现方式中,还包括:Combining the second aspect with any one of the first to third possible implementations of the second aspect In a fourth possible implementation manner of the second aspect, the method further includes:
第二设备接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After receiving the data stream, the second device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述第二设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,包括:With reference to the fourth possible implementation manner of the second aspect, in a fifth possible implementation manner of the second aspect, the second device, according to the traffic corresponding to the L TCP connection channels in the N TCP connection channels And the overflowing threshold, the data stream is sent to the first device by using at least one of the N TCP connection channels, including:
所述第二设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the second device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
所述第二设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the second device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
结合第二方面的第四种可能的实现方式,在第二方面的第六种可能的实现方式中,所述第二设备根据至少两条TCP连接通道对应的流量溢出门限,将所述数据流通过所述至少两条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,包括:With the fourth possible implementation of the second aspect, in a sixth possible implementation manner of the second aspect, the second device, according to a traffic overflow threshold corresponding to the at least two TCP connection channels, is configured to Transmitting to the first device by using at least one of the at least two TCP connection channels, including:
所述第二设备若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;If the second device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
所述第二设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;The second device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
结合第二方面的第五种或第六种可能的实现方式,在第二方面的第七种 可能的实现方式中,所述添加的TCP连接通道的标识号位于各个数据报文的数据字段之前。In combination with the fifth or sixth possible implementation of the second aspect, the seventh aspect of the second aspect In a possible implementation manner, the identifier of the added TCP connection channel is located before the data field of each data packet.
结合第二方面和第二方面的第一种至第七种可能的实现方式中的任意一种,在第二方面的第八种可能的实现方式中,所述第一设备为HG,所述第二设备为HAAP。With reference to the second aspect, and any one of the first to seventh possible implementation manners of the second aspect, in the eighth possible implementation manner of the second aspect, the first device is an HG, The second device is HAAP.
第三方面,本发明实施例一种流量动态控制设备,包括:A third aspect of the present invention provides a traffic dynamic control device, including:
接收模块,用于接收数据流;a receiving module, configured to receive a data stream;
存储模块,用于存储与所述存储模块所在的设备对应的对端设备进行TCP连接的连接信息;a storage module, configured to store connection information for performing TCP connection with the peer device corresponding to the device where the storage module is located;
处理模块,用于根据所述存储模块存储的与所述对端设备进行TCP连接的连接信息,与对端设备建立N条TCP连接通道,N为大于等于2的正整数;a processing module, configured to establish, according to the connection information that the storage module performs a TCP connection with the peer device, establish N TCP connection channels with the peer device, where N is a positive integer greater than or equal to 2;
发送模块,用于根据所述处理模块建立的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备;a sending module, configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels established by the processing module The connection channel is sent to the peer device;
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
结合第三方面,在第三方面的第一种可能的实现方式中,所述发送模块,还用于通过第一接口向所述对端设备的第二接口发送的第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述对端设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;With reference to the third aspect, in a first possible implementation manner of the third aspect, the sending module is further configured to send, by using the first interface, the first GRE protocol control signaling to the second interface of the peer device The first GRE protocol control signaling carries the Internet Protocol IP address of the first interface, and the GRE tunnel is configured between the first interface and the second interface; The IP address of the first interface is recorded as the destination IP address of the TCP connection channel between the first interface and the second interface;
所述接收模块,还用于通过所述第一接口接收到所述对端设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;The receiving module is further configured to receive, by using the first interface, a first GRE protocol control signaling reply signaling sent by the peer device by using a second interface, where the first GRE protocol control signaling reply signaling Carrying the IP address of the second interface;
所述存储模块,用于存储所述第二接口的IP地址作为所述第一接口与所 述第二接口之间的TCP连接通道的目的IP地址。The storage module is configured to store an IP address of the second interface as the first interface and the The destination IP address of the TCP connection channel between the second interfaces.
结合第三方面或第三方面的第一种可能的实现方式,所述处理模块,还用于针对每条TCP连接通道分别执行:In combination with the third aspect or the first possible implementation manner of the third aspect, the processing module is further configured to perform separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限时,所述处理模块,具体用于将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者With reference to the second possible implementation manner of the third aspect, in a third possible implementation manner of the third aspect, determining, according to the determined channel capability value of the TCP connection channel, the traffic overflow gate corresponding to the TCP connection channel The processing module is specifically configured to use the value of the determined channel capability value of the TCP connection channel multiplied by X as a traffic overflow threshold, where 0<X<1; or
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第三方面的第二种或第三种可能的实现方式,在第三方面的第四种可能的实现方式中,根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值时,所述处理模块具体用于根据如下公式确定该TCP连接通道的通道能力值:With reference to the second or third possible implementation manner of the third aspect, in a fourth possible implementation manner of the third aspect, determining, according to the statistics, the data packet loopback delay and the packet loss ratio The processing module is specifically configured to determine a channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000003
Figure PCTCN2015078086-appb-000003
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第三方面和第三方面的第一种至第四种可能的实现方式中的任意一种,在第三方面的第五种可能的实现方式中,所述处理模块还用于在所述接收模块接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达 的先后顺序确定的。In combination with the third aspect and any one of the first to fourth possible implementation manners of the third aspect, in a fifth possible implementation manner of the third aspect, the processing module is further configured to After receiving the data stream, the receiving module performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is arrived according to each data packet. The order of the determination is determined.
结合第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备,所述处理模块具体用于:With reference to the fifth possible implementation manner of the third aspect, in a sixth possible implementation manner of the third aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, The data stream is sent to the peer device by using at least one of the N TCP connection channels, and the processing module is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于:The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
结合第三方面的第五种可能的实现方式,在第三方面的第七种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:With reference to the fifth possible implementation manner of the third aspect, in a seventh possible implementation manner of the third aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, When the data stream is sent to the peer device through the at least one of the N TCP connection channels, the processing module is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The sending module is specifically configured to send each data packet to the peer device by using a TCP connection channel corresponding to the identifier number in each data packet.
结合第三方面的第六种或第七种可能的实现方式,在第三方面的第八种可能的实现方式中,所述处理模块将TCP连接通道的标识号添加在各个数据报文的数据字段之前。In conjunction with the sixth or seventh possible implementation of the third aspect, in an eighth possible implementation manner of the third aspect, the processing module adds the identifier of the TCP connection channel to the data of each data packet. Before the field.
结合第三方面和第三方面的第一种至第八种可能的实现方式中的任意一种,在第三方面的第九种可能的实现方式中,所述存储模块所在的设备为HG, 所述对端设备为HAAP。With reference to the third aspect, and any one of the first to the eighth possible implementation manners of the third aspect, in the ninth possible implementation manner of the third aspect, the device where the storage module is located is an HG, The peer device is a HAAP.
第四方面,本发明实施例还提供了一种流量动态控制设备,包括:In a fourth aspect, the embodiment of the present invention further provides a traffic dynamic control device, including:
接收模块,用于接收数据流;a receiving module, configured to receive a data stream;
发送模块,用于根据N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述发送模块所在的设备对应的对端设备;a sending module, configured to send the data flow to the sending module by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels The peer device corresponding to the device;
其中,所述N条TCP连接通道为已建立的所述对端设备与所述发送模块所在的设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established peer device and the device where the sending module is located; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is For each TCP connection channel, according to the TCP connection channel, the loopback delay and the packet loss rate of the data packet are determined in advance according to the preset duration; L is a positive integer smaller than N.
结合第四方面,在第四方面的第一种可能的实现方式中,还包括:With reference to the fourth aspect, in a first possible implementation manner of the fourth aspect, the method further includes:
处理模块,用于针对每条TCP连接通道分别执行:Processing module for performing separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
结合第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,所述处理模块具体用于:With reference to the first possible implementation manner of the fourth aspect, in a second possible implementation manner of the fourth aspect, determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow corresponding to the TCP connection channel Threshold, the processing module is specifically used to:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold, where 0<X<1;
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第四方面的第一种或第二种可能的实现方式,在第四方面的第三种可能的实现方式中,在根据统计的所述数据报文环回时延以及所述丢包率确 定该TCP连接通道的通道能力值,所述处理模块具体用于:In conjunction with the first or second possible implementation of the fourth aspect, in a third possible implementation manner of the fourth aspect, the data packet loopback delay and the packet loss rate according to statistics are obtained. Indeed The channel capability value of the TCP connection channel is determined, and the processing module is specifically configured to:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000004
Figure PCTCN2015078086-appb-000004
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第四方面和第四方面的第一种至第三种可能的实现方式中的任意一种,在第四方面的第四种可能的实现方式中,所述处理模块,还用于在所述接收模块接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。With reference to the fourth aspect, and any one of the first to the third possible implementation manners of the fourth aspect, in a fourth possible implementation manner of the fourth aspect, the processing module is further used in After receiving the data stream, the receiving module performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
结合第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:With reference to the fourth possible implementation manner of the fourth aspect, in a fifth possible implementation manner of the fourth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, When the data stream is sent to the peer device through the at least one of the N TCP connection channels, the processing module is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于:The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
结合第四方面的第四种可能的实现方式,在第四方面的第六种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于: With reference to the fourth possible implementation manner of the fourth aspect, in a sixth possible implementation manner of the fourth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, When the data stream is sent to the peer device through the at least one of the N TCP connection channels, the processing module is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于:The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
结合第四方面的第五种或第六种可能的实现方式,在第四方面的第七种可能的实现方式中,所述处理模块,具体用于将TCP连接通道的标识号添加在各个数据报文的数据字段之前。In conjunction with the fifth or sixth possible implementation of the fourth aspect, in a seventh possible implementation manner of the fourth aspect, the processing module is specifically configured to add an identifier of a TCP connection channel to each data. Before the data field of the message.
结合第四方面和第四方面的第一种至第七种可能的实现方式中的任意一种,在第四方面的第八种可能的实现方式中,所述发送模块所在的设备为HAAP,所述对端设备为HG。With reference to the fourth aspect, and any one of the first to seventh possible implementation manners of the fourth aspect, in the eighth possible implementation manner of the fourth aspect, the device where the sending module is located is a HAAP, The peer device is an HG.
第五方面,本发明实施例还提供了一种网关,包括:In a fifth aspect, the embodiment of the present invention further provides a gateway, including:
收发器、存储器以及处理器;a transceiver, a memory, and a processor;
所述收发器,用于接收数据流;The transceiver is configured to receive a data stream;
所述存储器,用于存储与HAAP进行TCP连接的连接信息;The memory is configured to store connection information for performing a TCP connection with the HAAP;
处理器,用于根据所述存储器存储的与所述HAAP进行TCP连接的连接信息,与所述HAAP建立N条TCP连接通道,N为大于等于2的正整数;a processor, configured to establish N TCP connection channels with the HAAP according to the connection information that is stored in the memory and perform a TCP connection with the HAAP, where N is a positive integer greater than or equal to 2;
收发器,还用于根据所述存储器存储的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述HAAP;The transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels of the N TCP connection channels stored in the memory a connection channel is sent to the HAAP;
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
结合第五方面,在第五方面的第一种可能的实现方式中,所述收发器还用于:通过第一接口向所述融合接入汇聚点的第二接口发送的第一GRE协议 控制信令,所述第一GRE协议控制信令中携带所述第一接口的IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述融合接入汇聚点将所述第一接口的IP地址记录为所述第一接口与第二接口之间的TCP连接通道的目的IP地址;并通过所述第一接口接收到所述对端设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;With reference to the fifth aspect, in a first possible implementation manner of the fifth aspect, the transceiver is further configured to: send, by using a first interface, a first GRE protocol to a second interface of the converged access convergence point Controlling the signaling, the first GRE protocol control signaling carries the IP address of the first interface, and the GRE tunnel is configured between the first interface and the second interface; Recording, by the first interface, the IP address of the first interface is the destination IP address of the TCP connection channel between the first interface and the second interface; The first GRE protocol control signaling reply signaling, where the first GRE protocol control signaling reply signaling carries the IP address of the second interface;
所述存储器,用于存储所述第二接口的IP地址作为所述第一接口与第二接口之间的TCP连接通道的目的IP地址。The memory is configured to store an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
结合第五方面或第五方面的第一种可能的实现方式,所述处理器还用于针对每条TCP连接通道分别执行:In combination with the fifth aspect or the first possible implementation manner of the fifth aspect, the processor is further configured to perform separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
结合第五方面的第二种可能的实现方式,在第五方面的第三种可能的实现方式,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限时,所述处理器,具体用于将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者With reference to the second possible implementation manner of the fifth aspect, in a third possible implementation manner of the fifth aspect, determining, according to the determined channel capability value of the TCP connection channel, the traffic overflow gate corresponding to the TCP connection channel The processor is specifically configured to multiply the determined channel capability value of the TCP connection channel by the value of X as a traffic overflow threshold, where 0<X<1;
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第五方面的第二种或第三种可能的实现方式,在第三方面的第四种可能的实现方式中,根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值时,所述处理器具体用于根据如下公式确定该TCP连接通道的通道能力值:With reference to the second or third possible implementation manner of the fifth aspect, in a fourth possible implementation manner of the third aspect, determining, according to the statistics, the data packet loopback delay and the packet loss ratio The processor is specifically configured to determine a channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000005
Figure PCTCN2015078086-appb-000005
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第五方面和第五方面的第一种至第四种可能的实现方式中的任意一种,在第五方面的第五种可能的实现方式中,在所述收发器接收到数据流后,所述处理器还用于对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。With reference to the fifth aspect and any one of the first to fourth possible implementation manners of the fifth aspect, in a fifth possible implementation manner of the fifth aspect, after the transceiver receives the data stream, The processor is further configured to perform TCP encapsulation on each data packet corresponding to the data stream, and add a sequence number to each data packet header; the sequence number is based on a sequence of arrival of each data packet. definite.
结合第五方面的第五种可能的实现方式,在第五方面的第六种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述HAAP,所述处理器具体用于:With reference to the fifth possible implementation manner of the fifth aspect, in a sixth possible implementation manner of the fifth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, The data stream is sent to the HAAP through at least one of the N TCP connection channels, where the processor is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述收发器用于将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述HAAP。The transceiver is configured to send each data packet to the HAAP through a TCP connection channel corresponding to the identification number in each data packet.
结合第五方面的第五种可能的实现方式,在第五方面的第七种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述HAAP时,所述处理器具体用于:With reference to the fifth possible implementation manner of the fifth aspect, in a seventh possible implementation manner of the fifth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, When the data stream is sent to the HAAP through at least one of the N TCP connection channels, the processor is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于: The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述融合接入汇聚点。Each data packet is sent to the converged access convergence point through a TCP connection channel corresponding to the identification number in each data packet.
结合第五方面的第六种或第七种可能的实现方式,在第五方面的第八种可能的实现方式中,所述处理模块将TCP连接通道的标识号添加在各个数据报文的数据字段之前。With reference to the sixth or the seventh possible implementation manner of the fifth aspect, in the eighth possible implementation manner of the fifth aspect, the processing module adds the identifier of the TCP connection channel to the data of each data packet Before the field.
第六方面,本发明实施例还提供了一种融合接入汇聚点,包括:In a sixth aspect, the embodiment of the present invention further provides a convergence access convergence point, including:
收发器,用于接收数据流;a transceiver for receiving a data stream;
存储器,用于存储N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限;a memory for storing a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels;
收发器,还用于根据所述存储器存储的N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给网关;The transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels stored in the memory. Sent to the gateway;
其中,所述N条TCP连接通道为已建立的所述网关与所述融合接入汇聚点之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established gateway and the converged access convergence point; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each The TCP connection channel is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and L is a positive integer smaller than N.
结合第六方面,在第六方面的第一种可能的实现方式中,处理器还用于针对每条TCP连接通道分别执行:In conjunction with the sixth aspect, in a first possible implementation manner of the sixth aspect, the processor is further configured to perform separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
结合第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,所述处理器具体用于:With reference to the first possible implementation manner of the sixth aspect, in a second possible implementation manner of the sixth aspect, determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow corresponding to the TCP connection channel Threshold, the processor is specifically used to:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门 限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow gate Limit, where 0<X<1; or
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
结合第六方面的第一种或第二种可能的实现方式,在第六方面的第三种可能的实现方式中,在根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值,所述处理器具体用于:With reference to the first or second possible implementation manner of the sixth aspect, in a third possible implementation manner of the sixth aspect, the data packet loopback delay and the packet loss rate according to statistics are performed. Determining a channel capability value of the TCP connection channel, the processor is specifically configured to:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000006
Figure PCTCN2015078086-appb-000006
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
结合第六方面和第六方面的第一种至第三种可能的实现方式中的任意一种,在第六方面的第四种可能的实现方式中,在所述收发器接收到数据流后,所述处理器还用于对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。With reference to the sixth aspect and any one of the first to third possible implementation manners of the sixth aspect, in a fourth possible implementation manner of the sixth aspect, after the transceiver receives the data stream The processor is further configured to perform TCP encapsulation on each data packet corresponding to the data stream, and add a sequence number to each data packet header; the sequence number is based on a sequence of arrival of each data packet. definite.
结合第六方面的第四种可能的实现方式,在第六方面的第五种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述网关,所述处理器具体用于:With reference to the fourth possible implementation manner of the sixth aspect, in a fifth possible implementation manner of the sixth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, The data stream is sent to the gateway by using at least one of the N TCP connection channels, where the processor is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于: The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述所述网关。Sending each data packet to the gateway through a TCP connection channel corresponding to the identification number in each data packet.
结合第六方面的第四种可能的实现方式,在第六方面的第六种可能的实现方式中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述网关,所述处理器具体用于:With reference to the fourth possible implementation manner of the sixth aspect, in a sixth possible implementation manner of the sixth aspect, the traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels, The data stream is sent to the gateway by using at least one of the N TCP connection channels, where the processor is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述收发器用于将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述网关。The transceiver is configured to send each data packet to the gateway through a TCP connection channel corresponding to the identification number in each data packet.
结合第六方面的第五种或第六种可能的实现方式,在第六方面的第七种可能的实现方式中,所述处理器具体用于将TCP连接通道的标识号添加在各个数据报文的数据字段之前。With reference to the fifth or the sixth possible implementation manner of the sixth aspect, in a seventh possible implementation manner of the sixth aspect, the processor is specifically configured to add an identifier of a TCP connection channel to each datagram. Before the data field of the text.
第七方面,本发明实施例还提供了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子设备执行时使所述电子设备执行根据第一方面和第一方面的第一种至第八种可能的实现方式中的任意一种实现方式中所述方法。In a seventh aspect, an embodiment of the present invention further provides a computer readable storage medium storing one or more programs, the one or more programs including instructions executed by an electronic device including a plurality of applications The method of causing the electronic device to perform the method of any one of the first to eighth possible implementations of the first aspect and the first aspect.
第八方面,本发明实施例还提供了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子设备执行时使所述电子设备执行第二方面和第二方面的第一种至第七种可能的实现方式中的任意一种实现方式中所述方法。In an eighth aspect, an embodiment of the present invention further provides a computer readable storage medium storing one or more programs, where the one or more programs include instructions that are executed by an electronic device that includes a plurality of applications. The method of causing the electronic device to perform the method of any one of the first to seventh possible implementations of the second aspect and the second aspect.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。 According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
附图说明DRAWINGS
图1为GRE隧道示意图;Figure 1 is a schematic diagram of a GRE tunnel;
图2为本发明实施例提供的一种流量动态控制方法流程图;2 is a flowchart of a method for dynamically controlling traffic according to an embodiment of the present invention;
图3为本发明实施例提供的另一种流量动态控制方法流程图;FIG. 3 is a flowchart of another method for dynamically controlling traffic according to an embodiment of the present invention;
图4为本发明实施例提供的一种流量动态控制设备示意图;4 is a schematic diagram of a traffic dynamic control device according to an embodiment of the present invention;
图5为本发明实施例提供的另一种流量动态控制设备示意图;FIG. 5 is a schematic diagram of another flow dynamic control device according to an embodiment of the present invention;
图6为本发明实施例提供的一种网关示意图;FIG. 6 is a schematic diagram of a gateway according to an embodiment of the present disclosure;
图7为本发明实施例提供的一种融合接入汇聚点示意图;FIG. 7 is a schematic diagram of a convergence access convergence point according to an embodiment of the present invention;
图8为本发明实施例提供的流量动态控制系统示意图;FIG. 8 is a schematic diagram of a flow dynamic control system according to an embodiment of the present invention; FIG.
图9为本发明实施例提供的LTE链路参数学习方法示意图;FIG. 9 is a schematic diagram of a method for learning LTE link parameters according to an embodiment of the present invention;
图10为本发明实施例提供的DSL链路参数学习方法示意图FIG. 10 is a schematic diagram of a DSL link parameter learning method according to an embodiment of the present invention;
图11为本发明实施例提供的网关将所述数据报文路由到绑定虚拟接口进行TCP处理方法示意图。FIG. 11 is a schematic diagram of a method for a gateway to route the data packet to a binding virtual interface for TCP processing according to an embodiment of the present invention.
具体实施方式detailed description
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。The present invention will be further described in detail with reference to the accompanying drawings, in which FIG. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
本发明实施例提供一种流量动态控制方法、设备及网关、融合接入汇聚点,用于解决现有技术存在的在第一隧道上的流量达到门限后无法溢出到另一个隧道上的问题。本发明实施例中将数据承载的方式从现有的方式中分离,数据传输以及信令交互使用不同的承载协议,数据承载的通道由当前基于GRE隧道的方式升级到通过TCP协议方式,并通过动态的统计在预设时长内的数据报文环回时延以及丢包率确定通过哪个TCP连接通道传输数据。其中, 方法及装置是基于同一发明构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。The embodiment of the invention provides a method, a device, a gateway, and a convergence access aggregation point for solving the problem that the traffic on the first tunnel cannot reach the other tunnel after the threshold is reached in the prior art. In the embodiment of the present invention, the data bearer is separated from the existing mode, and the data transmission and the signaling interaction use different bearer protocols, and the data bearer channel is upgraded from the current GRE tunnel to the TCP protocol. The dynamic statistics determine the loopback delay of the data packet and the packet loss rate within the preset duration to determine which TCP connection channel to transmit data. among them, The method and the device are based on the same inventive concept. Since the principles of the method and the device for solving the problem are similar, the implementation of the device and the method can be referred to each other, and the repeated description is not repeated.
本发明实施例提供了一种流量动态控制方法,如图2所示,该方法包括:The embodiment of the invention provides a dynamic flow control method, as shown in FIG. 2, the method includes:
步骤201,第一设备接收到数据流。Step 201: The first device receives the data stream.
步骤202,所述第一设备根据存储的与第二设备进行TCP连接的连接信息,与第二设备建立N条TCP连接通道,N为大于等于2的正整数。Step 202: The first device establishes N TCP connection channels with the second device according to the stored connection information of the TCP connection with the second device, where N is a positive integer greater than or equal to 2.
其中,建立的TCP连接通道的数量,与所述连接信息相关。The number of established TCP connection channels is related to the connection information.
其中连接信息中包括了建立的TCP连接通道两端的接口IP地址。因此连接通道数量与接口数量相关。The connection information includes the IP addresses of the interfaces at both ends of the established TCP connection channel. Therefore the number of connected channels is related to the number of interfaces.
其中,存储的与第二设备进行TCP连接的连接信息是预先获取后存储的。The stored connection information for performing a TCP connection with the second device is stored in advance and acquired.
步骤203,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备。Step 203: The first device sends the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Giving the second device.
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,根据在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP connection channel, and according to the TCP connection channel, the loopback delay of the data packet is counted according to the preset duration. And the packet loss rate is predetermined; L is a positive integer less than N.
一条TCP连接通道对应一个流量溢出门限,并且该流量溢出门限是在该TCP连接通道上,在预设时长内统计的数据报文环回时延以及丢包率预先确定的。A TCP connection channel corresponds to a traffic overflow threshold, and the traffic overflow threshold is determined on the TCP connection channel, and the data packet loopback delay and the packet loss rate are determined in a preset duration.
其中,第一设备可以网关,第二设备可以是融合接入汇聚点。The first device may be a gateway, and the second device may be a convergence access convergence point.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
具体的,第一设备获取与所述第二设备进行TCP连接的连接信息,可以通过以下方式实现:Specifically, the first device obtains connection information for performing a TCP connection with the second device, and may be implemented by:
所述第一设备通过第一接口向所述第二设备的第二接口发送的第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协 议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述第二设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;The first GRE protocol control signaling sent by the first device to the second interface of the second device by using the first interface, where the first GRE protocol control signaling carries the Internet protocol of the first interface An IP address is configured, a GRE tunnel is configured between the first interface and the second interface, and the second device records the IP address of the first interface as the first interface and the second interface. The destination IP address between the TCP connection channels;
所述第一设备通过所述第一接口接收到所述第二设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;Receiving, by the first device, the first GRE protocol control signaling reply signaling sent by the second device by using the second interface, where the first GRE protocol control signaling is carried in the signaling The IP address of the second interface;
所述第一设备记录所述第二接口的IP地址作为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址。The first device records an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
可选地,所述第一GRE协议控制信令中在携带所述第一接口的互联网协议IP地址时,还可以携带第一接口的端口号。同理在所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址时,还可以携带第二接口的端口号。Optionally, the first GRE protocol control signaling may further carry a port number of the first interface when carrying the Internet Protocol IP address of the first interface. Similarly, when the IP address of the second interface is carried in the first GRE protocol control signaling reply signaling, the port number of the second interface may also be carried.
例如:在DSL和LTE的组网中,将同时支持DSL和LTE接入的网关和HAAP作为网络的两个汇聚点。这两个点之间分别通过LTE和DSL的链路建立两条GRE隧道。在网关上包括DSL接口和LTE接口,在HAAP上仅包括一个接口,称为T3。For example, in the networking of DSL and LTE, the gateway and HAAP supporting both DSL and LTE access are used as two convergence points of the network. Two GRE tunnels are established between the two points through the links of LTE and DSL respectively. The DSL interface and the LTE interface are included in the gateway, and only one interface is included on the HAAP, which is called T3.
在LTE链路的LTE接口上,网关向HAAP发送GRE协议控制信令,在该GRE协议控制信令中携带该LTE接口的IP地址。还可以携带端口号。On the LTE interface of the LTE link, the gateway sends the GRE protocol control signaling to the HAAP, and the GRE protocol control signaling carries the IP address of the LTE interface. You can also carry a port number.
然后HAAP接收到该GRE协议控制信令后,将该LTE接口的IP地址以及端口号记录下来,并作为HAAP的T3接口与网关的LTE接口之间的TCP连接通道的目的IP地址以及目的端口号。After receiving the GRE protocol control signaling, the HAAP records the IP address and port number of the LTE interface, and serves as the destination IP address and destination port number of the TCP connection channel between the TAP interface of the HAAP and the LTE interface of the gateway. .
之后HAAP向网关发送GRE协议控制信令答复信令,并在GRE协议控制信令答复信令中携带HAAP的T3接口的IP地址以及端口号。从而网关在接收到该GRE协议控制信令答复信令后,将该T3接口的IP地址记录下来,并作为网关的LTE接口与HAAP的T3接口之间的TCP连接通道的目的IP地址及目的端口号。The HAAP then sends the GRE protocol control signaling reply signaling to the gateway, and carries the IP address and port number of the TAP interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the T3 interface, and serves as the destination IP address and destination port of the TCP connection channel between the LTE interface of the gateway and the T3 interface of the HAAP. number.
在DSL链路的DSL接口上,网关向HAAP发送GRE协议控制信令,在 该GRE协议控制信令中携带该DSL接口的IP地址。还可以携带该DSL接口的端口号。On the DSL interface of the DSL link, the gateway sends GRE protocol control signaling to the HAAP. The GRE protocol control signaling carries the IP address of the DSL interface. It can also carry the port number of the DSL interface.
然后HAAP通过T3接口接收到该GRE协议控制信令后,将该DSL接口的IP地址记录下来,并作为HAAP的T3接口与网关的DSL接口之间的TCP连接通道的目的IP地址。After receiving the GRE protocol control signaling through the T3 interface, the HAAP records the IP address of the DSL interface and serves as the destination IP address of the TCP connection channel between the TAP interface of the HAAP and the DSL interface of the gateway.
之后HAAP通过T3接口向网关的DSL接口发送GRE协议控制信令答复信令,并在GRE协议控制信令答复信令中携带HAAP的T3接口的IP地址。从而网关在接收到该GRE协议控制信令答复信令后,将该T3接口的IP地址记录下来,并作为网关的DSL接口与HAAP的T3接口之间的TCP连接通道的目的IP地址。The HAAP then sends the GRE protocol control signaling reply signaling to the DSL interface of the gateway through the T3 interface, and carries the IP address of the TAP interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the T3 interface, and serves as the destination IP address of the TCP connection channel between the DSL interface of the gateway and the T3 interface of the HAAP.
可选地,第一设备接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。Optionally, after receiving the data flow, the first device performs TCP encapsulation on each data packet corresponding to the data flow, and adds a sequence number to each data packet header; the serial number is according to each datagram. The order in which the text arrives is determined.
其中,针对各个TCP连接通道,根据在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,可以通过以下方式实现:The traffic overflow threshold is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and can be implemented in the following manner:
所述第一设备针对每个TCP连接通道分别执行:The first device performs for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率,根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset duration are measured, and the TCP connection channel is determined according to the statistics of the loopback delay of the data packet and the packet loss rate. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
具体的,由于每个数据报文的头部中添加有序列号,则可以统计在预设时长内,各个数据报文在TCP连接通道上发送时间到接收的同序列号的数据报文的ACK反馈的时间差,然后获取各个数据报文的发送及接收的时间差的平均值作为该预设时长内的RTT值。通过每个数据报文是否接收到ACK反馈的情况可以确定该预设时长内的该TCP连接通道的丢包率。添加有序列号的数据报文发送后,由于数据报文的序列号是连续的,因此可以统计出数据报文的ACK反馈中的各个序列号,因此可以确定丢包率。 Specifically, since the serial number is added to the header of each data packet, the ACK of the data packet of the same sequence number received by the data packet on the TCP connection channel within the preset duration may be counted. The time difference of the feedback is obtained, and then the average value of the time difference between the sending and receiving of each data message is obtained as the RTT value within the preset duration. The packet loss rate of the TCP connection channel within the preset duration may be determined by whether each data packet receives the ACK feedback. After the data packet with the sequence number is sent, the sequence number of the data packet is continuous, so each sequence number in the ACK feedback of the data packet can be counted, so the packet loss rate can be determined.
进一步地,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道的流量溢出门限,可以通过如下实现方式:Further, determining the traffic overflow threshold of the TCP connection channel according to the determined channel capability value of the TCP connection channel may be implemented as follows:
第一种实现方式:The first way to achieve:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1。The determined channel capability value of the TCP connection channel is multiplied by the value of X as the traffic overflow threshold, where 0<X<1.
第二种实现方式:The second way to achieve:
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,并将调节后的流量溢出门限作为本次比较周期的流量溢出门限。其中,所述比较周期等于M个预设时长,M为正整数。一个预设时长也可以称为一个时间窗口,本发明实施例中表示一个时间概念。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, and adjusting the adjusted flow rate The overflow threshold is used as the traffic overflow threshold for this comparison period. The comparison period is equal to M preset durations, and M is a positive integer. A preset duration can also be referred to as a time window, and a time concept is represented in the embodiment of the present invention.
其中,首先,针对每条TCP连接通道分别执行:在预定一个初始流量溢出门限可以是最开始一个时间窗口(一个时间窗口等于一个预设时长)统计的该条TCP连接通道数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值再乘以一个百分比(例如,50%)后得到的。然后,在之后的每个时间窗口内统计的数据报文环回时延以及丢包率再确定该条TCP连接通道的通道能力值,并将确定的通道能力值与初始流量溢出门限值进行比较,得到比较结果,并将比较结果保存,根据比较周期内的比较结果调节流量门限值,并将调节后的流量门限值保存。一个比较周期等于M个时间窗口。First, each TCP connection channel is executed separately: when the predetermined initial traffic overflow threshold is the first time window (a time window is equal to a preset duration), the TCP connection channel data message is looped back. The delay and packet loss rate are determined by multiplying the channel capability value of the TCP connection channel by a percentage (for example, 50%). Then, the loopback delay and the packet loss rate of the data packet in each subsequent time window are determined, and the channel capability value of the TCP connection channel is determined, and the determined channel capability value and the initial traffic overflow threshold are performed. For comparison, the comparison result is obtained, and the comparison result is saved, the flow threshold is adjusted according to the comparison result in the comparison period, and the adjusted flow threshold is saved. A comparison period is equal to M time windows.
例如,连续3个时间窗口(一个比较周期)内确定的通道能力值均大于当前保存的流量溢出门限值,则将流量溢出门限值调高5%。若连续3个时间窗口内确定的通道能力值均小于当前保存的流量溢出门限值,则将流量溢出门限值调低5%,其余情况,流量溢出门限值不变。则将调节后的流量溢出门限作为该比较周期的下一个比较周期流量动态控制的流量溢出门限。从而能够动态实时的调整流量溢出门限,保证双通道带宽的叠加使用。For example, if the channel capability value determined in three consecutive time windows (one comparison period) is greater than the currently saved traffic overflow threshold, the flow overflow threshold is increased by 5%. If the channel capacity value determined in the three consecutive time windows is less than the currently saved traffic overflow threshold, the flow overflow threshold is lowered by 5%. In other cases, the flow overflow threshold is unchanged. Then, the adjusted flow overflow threshold is used as the flow overflow threshold of the dynamic control of the next comparative cycle of the comparison cycle. Therefore, the flow overflow threshold can be dynamically and real-time adjusted to ensure the superposition of the dual channel bandwidth.
进一步地,根据统计数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值,可以通过以下公式实现: Further, determining the channel capability value of the TCP connection channel according to the loopback delay and the packet loss rate of the statistical data packet can be implemented by using the following formula:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000007
Figure PCTCN2015078086-appb-000007
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延。min表示取最小值。min(A,B)表示取A和B的值的最小值,例如min(5,4)=4。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay. Min means to take the minimum value. Min(A, B) represents the minimum value of the values of A and B, for example, min(5, 4)=4.
其中,BW是连接通道的激活带宽,是预先确定的,一旦确定后,一般不再变化。CWND和MSS由TCP协商获取,也为固定值。因此上述公式中的RTT和P为动态变化的,需要实时统计。Among them, BW is the activation bandwidth of the connection channel, which is predetermined, and once it is determined, it generally does not change. The CWND and the MSS are obtained by TCP negotiation and are also fixed values. Therefore, the RTT and P in the above formula are dynamically changed, and real-time statistics are required.
其中,预设时长为T,即周期长度。则RTT值可以是上一个时间周期中统计的数据报文环回时延。P可以是上一个时间周期统计的数据报文的丢包率。因此溢出流量门限是实时动态变化,网关和HAAP周期性的统计RTT和P值,并确定出该周期的溢出流量门限值,并实时保存。The preset duration is T, that is, the period length. Then, the RTT value may be a data packet loopback delay that is counted in the previous time period. P can be the packet loss rate of the data packet counted in the previous time period. Therefore, the overflow traffic threshold is dynamically changed in real time. The gateway and HAAP periodically calculate the RTT and P values, and determine the overflow traffic threshold for the period, and save it in real time.
具体地,对所述数据流对应的各个数据报文进行TCP封装,即将数据流对应的各个数据报文作为TCP报文的载荷。Specifically, each data packet corresponding to the data stream is encapsulated by TCP, that is, each data packet corresponding to the data stream is used as a payload of the TCP packet.
进一步地,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备,包括:Further, the first device sends the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Giving the second device includes:
所述第一设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the first device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
所述第一设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the first device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
其中,TCP连接通道对应TCP链路,则标识号可以用于标识TCP链路的, 当然也可以说标识号是用于标识TCP连接通道的。Wherein, the TCP connection channel corresponds to the TCP link, and the identification number can be used to identify the TCP link. Of course, it can be said that the identification number is used to identify the TCP connection channel.
在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,其中添加标识号标识第一TCP连接通道的数据报文的数量等于流量溢出门限值。在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限,还可以将数据报文在两条TCP连接通道上平均分配传输。When it is determined that the number of data packets of the data stream reaches a traffic overflow threshold corresponding to the first TCP connection channel, an identifier is added to a header of each data packet of the data flow, where the identifier is added to identify the first TCP. The number of data packets connected to the channel is equal to the traffic overflow threshold. After determining that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, the data packet may be evenly distributed and transmitted on the two TCP connection channels.
可选地,所述第一设备若建立的TCP连接通道为至少三个,可以确定所述建立的TCP连接通道的优先级;Optionally, if the first device establishes at least three TCP connection channels, the priority of the established TCP connection channel may be determined;
所述第一设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;The first device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel;
所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
例如:若建立的TCP连接通道为3个,分别为TCP1、TCP2和TCP3。其中,TCP1的优先级大于TCP2的优先级,且TCP2的优先级大于TCP3的优先级。For example, if there are 3 TCP connection channels established, they are TCP1, TCP2, and TCP3. The priority of TCP1 is greater than the priority of TCP2, and the priority of TCP2 is greater than the priority of TCP3.
其中所述第一设备可以将序列号未达到TCP1对应的流量溢出门限的数据报文的头部添加TCP1的标识号;并将序列号达到TCP1对应的流量溢出门限的数据报文的序列号减去TCP1对应的流量溢出门限后,得到的序号值未达到TCP2对应的流量溢出门限的数据报文的头部添加TCP2的标识号;在其余的数据报文的头部添加TCP3的标识号。The first device may add the identifier of the TCP1 to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the TCP1, and reduce the sequence number of the data packet whose serial number reaches the traffic overflow threshold corresponding to the TCP1. After the traffic overflow threshold corresponding to TCP1 is received, the identifier of the TCP2 is added to the header of the data packet whose sequence number value does not reach the traffic overflow threshold corresponding to TCP2. The identifier of TCP3 is added to the header of the remaining data packet.
第一设备还可以在确定所述数据流的数据报文的数量达到TCP1的流量溢出门限以及TCP2的流量溢出门限之和时,在所述数据流的各个数据报文的头部添加标识号时,添加的标识TCP1的标识号的数据报文的数量小于等于TCP1的流量溢出门限值。添加的标识TCP2的标识号的数据报文的数量小于等于TCP2的流量溢出门限值。The first device may also add an identification number to the header of each data packet of the data stream when determining that the number of data packets of the data stream reaches the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2. The number of added data packets identifying the identification number of TCP1 is less than or equal to the traffic overflow threshold of TCP1. The number of added data packets that identify the identifier of TCP2 is less than or equal to the traffic overflow threshold of TCP2.
在第一设备在确定所述数据流的数据报文的数量达到TCP1的流量溢出门限,但是未达到TCP1的流量溢出门限以及TCP2的流量溢出门限之和时, 可以将数据报文仅通过TCP1以及TCP2传输。When the first device determines that the number of data packets of the data flow reaches the traffic overflow threshold of TCP1, but does not reach the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2, Data messages can be transmitted only through TCP1 and TCP2.
进一步的,添加的TCP连接通道的标识号位于各个数据报文的数据字段之前。如表1所示。Further, the identification number of the added TCP connection channel is located before the data field of each data packet. As shown in Table 1.
表1Table 1
Figure PCTCN2015078086-appb-000008
Figure PCTCN2015078086-appb-000008
本发明实施例提供了一种流量动态控制方法,如图3所示,该方法包括:The embodiment of the invention provides a dynamic flow control method, as shown in FIG. 3, the method includes:
步骤301,第二设备接收到数据流;Step 301: The second device receives the data stream.
步骤302,所述第二设备根据N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备;Step 302: The second device sends the data flow to at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Said first device;
其中,所述N条TCP连接通道为已建立的所述第二设备与第一设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the second device and the first device that are established; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP. The connection channel is determined according to the loopback delay and the packet loss rate of the data packet that are counted within the preset duration according to the TCP connection channel; L is a positive integer smaller than N.
其中,第一设备在向第二设备发送数据报文时,已经建立了第一设备与第二设备之间的TCP连接通道。The first device has established a TCP connection channel between the first device and the second device when sending the data packet to the second device.
其中,第二设备可以是融合接入汇聚点,以及其他可以用于实现融合汇聚功能的网络设备均适用于本发明,第一设备可以是网关。 The second device may be a converged access aggregation point, and other network devices that can be used to implement the convergent aggregation function are applicable to the present invention, and the first device may be a gateway.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
可选地,针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,可以通过以下方式实现:Optionally, for each of the TCP connection channels, the traffic overflow threshold is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration.
所述第二设备针对每条TCP连接通道分别执行:The second device performs for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
具体的,由于每个数据报文的头部中添加有序列号,则可以统计预设时长内,各个数据报文在TCP连接通道上发送时间到接收的同序列号的数据报文的ACK反馈的时间差,然后获取各个数据报文的发送及接收的时间差的平均值作为该预设时长内的RTT值。通过每个数据报文是否接收到ACK反馈的情况可以确定该预设时长内的该TCP连接通道的丢包率。添加有序列号的数据报文发送后,由于数据报文的序列号是连续的,因此可以统计出数据报文的ACK反馈中的各个序列号,因此可以确定丢包率。Specifically, since the sequence number is added to the header of each data packet, the ACK feedback of the data packet of the same sequence number received by the data packet on the TCP connection channel can be counted within the preset duration. The time difference is then obtained as an average of the time difference between the transmission and reception of each data message as the RTT value within the preset duration. The packet loss rate of the TCP connection channel within the preset duration may be determined by whether each data packet receives the ACK feedback. After the data packet with the sequence number is sent, the sequence number of the data packet is continuous, so each sequence number in the ACK feedback of the data packet can be counted, so the packet loss rate can be determined.
进一步地,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,可以通过以下方式实现:Further, determining the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel may be implemented by:
第一种实现方式:The first way to achieve:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1。The determined channel capability value of the TCP connection channel is multiplied by the value of X as the traffic overflow threshold, where 0<X<1.
第二种实现方式:The second way to achieve:
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。 Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
可选地,根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值,可以通过以下公式实现:Optionally, determining the channel capability value of the TCP connection channel according to the statistics data packet loopback delay and the packet loss rate can be implemented by using the following formula:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000009
Figure PCTCN2015078086-appb-000009
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
进一步地,若N等于2时,所述第二设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,可以通过以下方式实现:Further, if N is equal to 2, the second device passes the data flow through the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. At least one TCP connection channel is sent to the first device, which can be implemented by:
所述第二设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the second device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
所述第二设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the second device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
其中,TCP连接通道对应TCP链路,则标识号可以用于标识TCP链路的,当然也可以说标识号是用于标识TCP连接通道的。The TCP connection channel corresponds to the TCP link, and the identification number can be used to identify the TCP link. Of course, the identification number is used to identify the TCP connection channel.
在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,其中添加标识号标识第一TCP连接通道的数据报文的数量等于流量溢出门限值。在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限,还可以将数据报文在两条TCP连接通道上平均分配传输。When it is determined that the number of data packets of the data stream reaches a traffic overflow threshold corresponding to the first TCP connection channel, an identifier is added to a header of each data packet of the data flow, where the identifier is added to identify the first TCP. The number of data packets connected to the channel is equal to the traffic overflow threshold. After determining that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, the data packet may be evenly distributed and transmitted on the two TCP connection channels.
若N为大于等于3的正整数,所述第二设备根据所述N条TCP连接通道 中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,可以通过以下方式实现:If N is a positive integer greater than or equal to 3, the second device is configured according to the N TCP connection channels. The traffic overflow threshold corresponding to the L TCP connection channels in the medium, and the data flow is sent to the first device by using at least one of the N TCP connection channels, which can be implemented by:
所述第二设备若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;If the second device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
所述第二设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;The second device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
例如:若建立的TCP连接通道为3个,分别为TCP1、TCP2和TCP3。其中,TCP1的优先级大于TCP2的优先级,且TCP2的优先级大于TCP3的优先级。For example, if there are 3 TCP connection channels established, they are TCP1, TCP2, and TCP3. The priority of TCP1 is greater than the priority of TCP2, and the priority of TCP2 is greater than the priority of TCP3.
其中所述第一设备可以将序列号未达到TCP1对应的流量溢出门限的数据报文的头部添加TCP1的标识号;并将序列号达到TCP1对应的流量溢出门限的数据报文的序列号减去TCP1对应的流量溢出门限后,得到的序号值未达到TCP2对应的流量溢出门限的数据报文的头部添加TCP2的标识号;在其余的数据报文的头部添加TCP3的标识号。The first device may add the identifier of the TCP1 to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the TCP1, and reduce the sequence number of the data packet whose serial number reaches the traffic overflow threshold corresponding to the TCP1. After the traffic overflow threshold corresponding to TCP1 is received, the identifier of the TCP2 is added to the header of the data packet whose sequence number value does not reach the traffic overflow threshold corresponding to TCP2. The identifier of TCP3 is added to the header of the remaining data packet.
第一设备还可以在确定所述数据流的数据报文的数量达到TCP1的流量溢出门限以及TCP2的流量溢出门限之和时,在所述数据流的各个数据报文的头部添加标识号时,添加的标识TCP1的标识号的数据报文的数量小于等于TCP1的流量溢出门限值。添加的标识TCP2的标识号的数据报文的数量小于等于TCP2的流量溢出门限值。The first device may also add an identification number to the header of each data packet of the data stream when determining that the number of data packets of the data stream reaches the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2. The number of added data packets identifying the identification number of TCP1 is less than or equal to the traffic overflow threshold of TCP1. The number of added data packets that identify the identifier of TCP2 is less than or equal to the traffic overflow threshold of TCP2.
在第一设备在确定所述数据流的数据报文的数量达到TCP1的流量溢出门限,但是未达到TCP1的流量溢出门限以及TCP2的流量溢出门限之和时,可以将数据报文仅通过TCP1以及TCP2传输。When the first device determines that the number of data packets of the data stream reaches the traffic overflow threshold of TCP1, but fails to reach the sum of the traffic overflow threshold of TCP1 and the traffic overflow threshold of TCP2, the data packet can pass only TCP1 and TCP2 transmission.
进一步地,所述添加的TCP连接通道的标识号位于各个数据报文的数据 字段之前。Further, the identification number of the added TCP connection channel is located in data of each data packet. Before the field.
本发明实施例中还提供了一种流量动态控制设备,该设备可以是HG,如图4所示,该设备包括:The embodiment of the present invention further provides a traffic dynamic control device, which may be an HG. As shown in FIG. 4, the device includes:
接收模块401,用于接收数据流;a receiving module 401, configured to receive a data stream;
存储模块402,用于存储与所述存储模块402所在的设备对应的对端设备进行TCP连接的连接信息;The storage module 402 is configured to store connection information for performing TCP connection with the peer device corresponding to the device where the storage module 402 is located.
处理模块403,用于根据所述存储模块402存储的与对应的对端设备进行TCP连接的连接信息,与对端设备建立N条TCP连接通道,N为大于等于2的正整数;The processing module 403 is configured to establish, according to the connection information that the storage module 402 stores the TCP connection with the corresponding peer device, establish N TCP connection channels with the peer device, where N is a positive integer greater than or equal to 2;
发送模块404,用于根据所述处理模块403建立的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备;The sending module 404 is configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels established by the processing module 403. Sending a TCP connection channel to the peer device;
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
可选地,所述发送模块404,还用于通过第一接口向所述对端设备的第二接口发送的第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述对端设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;Optionally, the sending module 404 is further configured to send, by using the first interface, the first GRE protocol control signaling to the second interface of the peer device, where the first GRE protocol control signaling carries the a network protocol IP address of the first interface, a GRE tunnel is configured between the first interface and the second interface, and the peer device records the IP address of the first interface as the first interface a destination IP address of the TCP connection channel between the second interfaces;
所述接收模块401,还用于通过所述第一接口接收到所述对端设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;The receiving module 401 is further configured to receive, by using the first interface, a first GRE protocol control signaling reply signaling sent by the peer device by using the second interface, where the first GRE protocol control signaling reply The IP address of the second interface is carried in the order;
所述存储模块402,用于存储所述第二接口的IP地址作为所述第一接口 与所述第二接口之间的TCP连接通道的目的IP地址。The storage module 402 is configured to store an IP address of the second interface as the first interface. The destination IP address of the TCP connection channel with the second interface.
可选地,所述处理模块403,还用于针对每条TCP连接通道分别执行:Optionally, the processing module 403 is further configured to perform separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
进一步地,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限时,所述处理模块403,具体用于将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Further, when the flow overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel, the processing module 403 is specifically configured to determine the channel capability value of the TCP connection channel. Multiply the value after X as the traffic overflow threshold, where 0<X<1; or
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值时,所述处理模块403具体用于根据如下公式确定该TCP连接通道的通道能力值:When the channel capability value of the TCP connection channel is determined according to the statistics of the data packet loopback delay and the packet loss rate, the processing module 403 is specifically configured to determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000010
Figure PCTCN2015078086-appb-000010
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
可选地,所述处理模块403还用于在所述接收模块接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。Optionally, the processing module 403 is further configured to: after the receiving module receives the data stream, perform TCP encapsulation on each data packet corresponding to the data stream, and add a serial number in each data packet header. The serial number is determined according to the order in which the individual data messages arrive.
进一步地,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备,所述处理模块403具体用于: Further, the data stream is sent to the pair through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. The processing module 403 is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述发送模块404,具体用于:The sending module 404 is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块403具体用于:And when the data stream is sent to the peer device by using at least one of the N TCP connection channels, according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. The processing module 403 is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The sending module is specifically configured to send each data packet to the peer device by using a TCP connection channel corresponding to the identifier number in each data packet.
所述处理模块403在将所述各个数据报文头部添加TCP连接通道的标识号时,具体是将TCP连接通道的标识号添加在各个数据报文的数据字段之前。When the processing module 403 adds the identification number of the TCP connection channel to the header of the data packet, specifically, the identification number of the TCP connection channel is added before the data field of each data packet.
本发明实施例还提供了一种流量动态控制设备,该设备可以为HAAP,如图5所示,该设备包括:The embodiment of the present invention further provides a traffic dynamic control device, which may be a HAAP. As shown in FIG. 5, the device includes:
接收模块501,用于接收数据流;The receiving module 501 is configured to receive a data stream.
发送模块502,用于根据N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述发送模块所在的设备对应的对端设备;The sending module 502 is configured to send the data flow to the sending by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. The peer device corresponding to the device where the module is located;
其中,所述N条TCP连接通道为已建立的所述对端设备与所述发送模块所在的设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通 道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established peer device and the device where the sending module is located; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is For each TCP connection channel, according to the TCP connection The loopback delay and the packet loss rate of the data packet counted in the preset duration are predetermined; L is a positive integer smaller than N.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
可选地,该设备还包括:Optionally, the device further includes:
处理模块,用于针对每条TCP连接通道分别执行:Processing module for performing separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,所述处理模块具体用于:Determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel, where the processing module is specifically configured to:
将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold, where 0<X<1;
将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
在根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值,所述处理模块具体用于:The channel capability value of the TCP connection channel is determined according to the statistics data packet loopback delay and the packet loss rate, and the processing module is specifically configured to:
根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000011
Figure PCTCN2015078086-appb-000011
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
可选地,所述处理模块,还用于在所述接收模块501接收到数据流后, 对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。Optionally, the processing module is further configured to: after the receiving module 501 receives the data stream, And performing a TCP encapsulation on each data packet corresponding to the data stream, and adding a sequence number to each data packet header; the sequence number is determined according to a sequence in which each data packet arrives.
其中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备,所述处理模块具体用于:The data stream is sent to the peer end by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. The device, the processing module is specifically configured to:
若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
所述发送模块502,具体用于:The sending module 502 is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
其中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:The data stream is sent to the peer end by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. The device is specifically configured to:
若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
所述发送模块,具体用于:The sending module is specifically configured to:
将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
所述处理模块,具体用于将TCP连接通道的标识号添加在各个数据报文的数据字段之前。The processing module is specifically configured to add an identification number of the TCP connection channel before the data field of each data packet.
本发明实施例中还提供了一种网关,如图6所示,该网关包括:A gateway is also provided in the embodiment of the present invention. As shown in FIG. 6, the gateway includes:
收发器601、存储器602以及处理器603;The transceiver 601, the memory 602, and the processor 603;
收发器601、处理器602以及存储器603相互连接。本发明实施例中不限 定上述部件之间的具体连接介质。本发明实施例在图6中以存储器603、处理器602以及收发器之间通过总线604连接,总线在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线604可以是外设部件互连标准(英文:peripheral component interconnect,简称:PCI)总线或扩展工业标准结构(英文:extended industry standard architecture,简称:EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The transceiver 601, the processor 602, and the memory 603 are connected to each other. Not limited in the embodiment of the present invention Determine the specific connection medium between the above components. In the embodiment of the present invention, the memory 603, the processor 602, and the transceiver are connected by a bus 604 in FIG. 6. The bus is indicated by a thick line in FIG. 6, and the connection manner between other components is only schematically illustrated. Not limited to limits. The bus 604 can be a peripheral component interconnect standard (English: peripheral component interconnect, PCI for short) or an extended industry standard architecture (English: extended industry standard architecture, EISA) bus. The bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 6, but it does not mean that there is only one bus or one type of bus.
本发明实施例中存储器603,用于存储处理器602执行的程序代码,可以是只读存储器(英文:read-only memory,简称:ROM),随机存取存储器(英文:random-access memory,简称:RAM),也可以是电可擦可编程只读存储器(英文:Electrically Erasable Programmable Read-Only Memory,简称:EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此,例如存储器603可以是上述存储器的组合。In the embodiment of the present invention, the memory 603 is configured to store the program code executed by the processor 602, and may be a read-only memory (English: read-only memory, abbreviated as: ROM), and a random access memory (English: random-access memory, referred to as :RAM), can also be Electrically Erasable Programmable Read-Only Memory (EEPROM), disk storage media or other magnetic storage devices, or can be used to carry or store instructions or The desired program code in the form of a data structure and any other medium that can be accessed by a computer, but is not limited thereto, for example, the memory 603 may be a combination of the above-described memories.
本发明实施例中处理器602,可以是一个通用的中央处理单元(英文:central processing unit,简称CPU)。The processor 602 in the embodiment of the present invention may be a general central processing unit (English: central processing unit, CPU for short).
收发器601可以包括但不仅限于天线,用于实现收发数据报文功能的收发设备均适用于本发明。The transceiver 601 can include, but is not limited to, an antenna, and a transceiver device for implementing the function of transmitting and receiving data messages is suitable for use in the present invention.
所述收发器601,用于接收数据流;The transceiver 601 is configured to receive a data stream.
所述存储器603,用于存储与融合接入汇聚点进行TCP连接的连接信息;The storage 603 is configured to store connection information for performing a TCP connection with the fused access aggregation point;
处理器602,用于根据所述存储器603存储的与所述融合接入汇聚点进行TCP连接的连接信息,与所述融合接入汇聚点建立N条TCP连接通道,N为大于等于2的正整数;The processor 602 is configured to establish, according to the connection information that is stored in the memory 603 by using the TCP connection with the converged access aggregation point, to establish N TCP connection channels with the converged access aggregation point, where N is greater than or equal to 2. Integer
收发器601,还用于根据所述存储器存储的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述融合接入汇聚点; The transceiver 601 is further configured to: pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels of the N TCP connection channels stored by the memory. Sending, by the TCP connection channel, the converged access convergence point;
其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
所述收发器601通过第一接口向所述融合接入汇聚点的第二接口发送的第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述融合接入汇聚点将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;The first GRE protocol control signaling sent by the transceiver 601 to the second interface of the fused access aggregation point by using the first interface, where the first GRE protocol control signaling carries the Internet protocol of the first interface An IP address, a GRE tunnel is configured between the first interface and the second interface, and the fused access aggregation point records the IP address of the first interface as the first interface and the second The destination IP address of the TCP connection channel between the interfaces;
通过所述第一接口接收到所述融合接入汇聚点通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;存储器603将存储所述第二接口的IP地址并作为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址。Receiving, by the first interface, the first GRE protocol control signaling reply signaling sent by the fused access aggregation point by using the second interface, where the first GRE protocol control signaling reply signaling carries the second The IP address of the interface; the memory 603 stores the IP address of the second interface as the destination IP address of the TCP connection channel between the first interface and the second interface.
处理器602,针对每条TCP连接通道分别执行:The processor 602 performs separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限时,处理器602将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者处理器602将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。When determining the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel, the processor 602 multiplies the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow. Threshold, where 0<X<1; or the processor 602 compares the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusts the current current period according to the obtained comparison result. Comparing the periodic overflow threshold, the comparison period is equal to M preset durations, and M is a positive integer.
在根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值时,所述处理器602根据如下公式确定该TCP连接通道的通道能力值:When determining the channel capability value of the TCP connection channel according to the statistical data packet loopback delay and the packet loss rate, the processor 602 determines the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000012
Figure PCTCN2015078086-appb-000012
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
在收发器601接收到数据流后,处理器602对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After the transceiver 601 receives the data stream, the processor 602 performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the serial number is based on each datagram. The order in which the text arrives is determined.
在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述融合接入汇聚点,所述处理器602确定若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;收发器601将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述HAAP。Transmitting the data stream to the converged access aggregation by using at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. Point, the processor 602 determines that if the established TCP connection channel is two, confirm that the first TCP connection channel is the default transmission channel; and determine that the number of data packets of the data stream reaches the first TCP connection channel. When the traffic overflow threshold, an identifier is added to the header of each data packet of the data stream, where the identifier is used to identify a link corresponding to each TCP connection channel; the transceiver 601 passes each data packet through each datagram. The TCP connection channel corresponding to the identification number in the text is sent to the HAAP.
在根据至少两条TCP连接通道对应的流量溢出门限,将所述数据流通过所述至少两条TCP连接通道中的至少一条TCP连接通道发送给所述融合接入汇聚点时,所述处理器602确定若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;收发器601将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述HAAP。And when the data stream is sent to the fused access aggregation point through at least one of the at least two TCP connection channels according to a traffic overflow threshold corresponding to the at least two TCP connection channels, the processor 602. Determine, if the established TCP connection channel is at least three, determine a priority of the established TCP connection channel; and use the datagram according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel. The identifier is used to identify the link corresponding to each TCP connection channel; the transceiver 601 sends each data packet to the HAAP through the TCP connection channel corresponding to the identification number in each data packet. .
处理器602将TCP连接通道的标识号添加在各个数据报文的数据字段之前。The processor 602 adds the identification number of the TCP connection channel before the data field of each data message.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
本发明实施例还提供了一种融合接入汇聚点,如图7所示,该融合接入 汇聚点包括:The embodiment of the invention further provides a converged access aggregation point, as shown in FIG. 7, the converged access Convergence points include:
收发器701、处理器702、存储器703。The transceiver 701, the processor 702, and the memory 703.
收发器701、处理器702以及存储器703相互连接。本发明实施例中不限定上述部件之间的具体连接介质。本发明实施例在图6中以存储器703、处理器702以及收发器之间通过总线704连接,总线在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线704可以是外设部件互连标准(英文:peripheral component interconnect,简称:PCI)总线或扩展工业标准结构(英文:extended industry standard architecture,简称:EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The transceiver 701, the processor 702, and the memory 703 are connected to each other. The specific connecting medium between the above components is not limited in the embodiment of the present invention. In the embodiment of the present invention, the memory 703, the processor 702, and the transceiver are connected by a bus 704 in FIG. 6. The bus is indicated by a thick line in FIG. 6, and the connection manner between other components is only schematically illustrated. Not limited to limits. The bus 704 can be a peripheral component interconnect standard (English: peripheral component interconnect, PCI for short) or an extended industry standard architecture (English: extended industry standard architecture, EISA) bus. The bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 6, but it does not mean that there is only one bus or one type of bus.
本发明实施例中存储器703,用于存储处理器702执行的程序代码,可以是只读存储器(英文:read-only memory,简称:ROM),随机存取存储器(英文:random-access memory,简称:RAM),也可以是电可擦可编程只读存储器(英文:Electrically Erasable Programmable Read-Only Memory,简称:EEPROM)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此,例如存储器703可以是上述存储器的组合。In the embodiment of the present invention, the memory 703 is used to store the program code executed by the processor 702, and may be a read-only memory (English: read-only memory, abbreviated as: ROM), and a random access memory (English: random-access memory, referred to as :RAM), can also be Electrically Erasable Programmable Read-Only Memory (EEPROM), disk storage media or other magnetic storage devices, or can be used to carry or store instructions or The desired program code in the form of a data structure and any other medium that can be accessed by a computer, but is not limited thereto, for example, the memory 703 may be a combination of the above-described memories.
本发明实施例中处理器702,可以是一个通用的中央处理单元(英文:central processing unit,简称CPU)。The processor 702 in the embodiment of the present invention may be a general central processing unit (English: central processing unit, CPU for short).
收发器701可以包括但不仅限于天线,用于实现收发数据报文功能的收发设备均适用于本发明。The transceiver 701 can include, but is not limited to, an antenna, and a transceiver device for implementing the function of transmitting and receiving data messages is suitable for use in the present invention.
存储器703还存储N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限;The memory 703 also stores a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels;
收发器701接收到数据流后,根据所述存储器703存储的N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给网关; After receiving the data stream, the transceiver 701 passes the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels stored in the memory 703. A TCP connection channel is sent to the gateway;
其中,所述N条TCP连接通道为已建立的所述网关与所述融合接入汇聚点之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established gateway and the converged access convergence point; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each The TCP connection channel is determined according to the loopback delay and the packet loss rate of the data packet in the preset duration, and L is a positive integer smaller than N.
可选地,处理器702针对每条TCP连接通道分别执行:Optionally, the processor 702 performs separately for each TCP connection channel:
分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的数据报文环回时延以及丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the TCP connection channel are measured, and the channel capability value of the TCP connection channel is determined according to the statistics of the loopback delay and the packet loss rate of the data packet. The traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel.
在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,所述处理器702将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者处理器702将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Determining, according to the determined channel capability value of the TCP connection channel, a traffic overflow threshold corresponding to the TCP connection channel, the processor 702 multiplying the determined channel capability value of the TCP connection channel by a value of X as a traffic The overflow threshold, where 0<X<1; or the processor 702 compares the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusts according to the obtained comparison result in the current comparison period. The current overflow period threshold of the comparison period, the comparison period is equal to M preset durations, and M is a positive integer.
在根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值,所述处理器702根据如下公式确定该TCP连接通道的通道能力值:The channel capability value of the TCP connection channel is determined according to the statistics data packet loopback delay and the packet loss rate, and the processor 702 determines the channel capability value of the TCP connection channel according to the following formula:
Figure PCTCN2015078086-appb-000013
Figure PCTCN2015078086-appb-000013
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
在收发器701接收到数据流后,处理器702对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After the transceiver 701 receives the data stream, the processor 702 performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the serial number is based on each datagram. The order in which the text arrives is determined.
其中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流 量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述网关,所述处理器702确定若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;将序列号未达到第一TCP连接通道对应的流量溢出门限的数据报文的头部添加第一TCP连接通道的标识号;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;然后收发器701将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述网关。Wherein the flow corresponding to the L TCP connection channels in the N TCP connection channels The overflow threshold is sent to the gateway by using at least one of the N TCP connection channels, and the processor 702 determines that if the established TCP connection channel is two, the first one is confirmed. The TCP connection channel is the default transmission channel; the identification number of the first TCP connection channel is added to the header of the data packet whose sequence number does not reach the traffic overflow threshold corresponding to the first TCP connection channel; and the data packet of the data stream is determined. When the number of the data reaches the traffic overflow threshold corresponding to the first TCP connection channel, an identifier is added to the header of each data packet of the data stream, where the identifier is used to identify the link corresponding to each TCP connection channel; The 701 sends the data packet to the gateway through a TCP connection channel corresponding to the identification number in each data packet.
其中,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述网关时,处理器702若确定建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;然后收发器701将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The data flow is sent to the gateway through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels. If the processor 702 determines that the established TCP connection channel is at least three, determining the priority of the established TCP connection channel; according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel, Adding an identification number to each data packet header; the identifier number is used to identify a link corresponding to each TCP connection channel; then the transceiver 701 sends each data packet through a TCP connection channel corresponding to the identification number in each data packet. Give the first device.
所述处理器将TCP连接通道的标识号添加在各个数据报文的数据字段之前。The processor adds the identification number of the TCP connection channel before the data field of each data packet.
通过本发明实施例提供的方案,通过实时统计的数据报文环回时延以及丢包率确定流量溢出门限,然后根据动态变化的流量溢出门限动态对流量进行控制,使得数据在一个通道能够溢出到另一个通道上。According to the solution provided by the embodiment of the present invention, the traffic overflow threshold is determined by the real-time statistics of the loopback delay and the packet loss rate of the data packet, and then the traffic is dynamically controlled according to the dynamically changing traffic overflow threshold, so that the data can overflow in one channel. Go to another channel.
本发明实施例还提供了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子设备执行时使所述电子设备执行上述图2所对应的实施例中任意一种情况下的流量动态控制方法。Embodiments of the present invention also provide a computer readable storage medium storing one or more programs, the one or more programs including instructions that, when executed by an electronic device including a plurality of applications, cause the The electronic device performs the flow dynamic control method in any of the embodiments corresponding to FIG. 2 described above.
本发明实施例还提供了一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子 设备执行时使所述电子设备执行上述图3所对应的实施例中任意一种情况下的流量动态控制方法。Embodiments of the present invention also provide a computer readable storage medium storing one or more programs, the one or more programs including instructions, when the instructions are electronic including multiple applications When the device is executed, the electronic device is configured to execute the flow dynamic control method in any one of the embodiments corresponding to FIG. 3 above.
下面结合具体应用场景对本发明实施例作具体说明。The embodiments of the present invention are specifically described below in conjunction with specific application scenarios.
流量动态控制系统,如图8所示,包括:网关,融合接入汇聚点(Hybrid Access Aggregation Point,简称:HAAP),以及宽带网络网关设备(简称:BNG)和分组核心网设备(简称:EPC)。The traffic dynamic control system, as shown in FIG. 8, includes: a gateway, a Hybrid Access Aggregation Point (HAAP), and a broadband network gateway device (abbreviation: BNG) and a packet core network device (abbreviation: EPC) ).
其中,网关的LAN地址同时支持IPv4地址(或者称为A4地址)和IPv6地址(或者称为A6地址)。并且网关通过PHCP给终端设备分配IPv4或者IPv6地址。The gateway's LAN address supports both IPv4 addresses (or A4 addresses) and IPv6 addresses (or A6 addresses). And the gateway allocates an IPv4 or IPv6 address to the terminal device through the PHCP.
网关包括两个接口为DSL接口和LTE接口,HAAP包括一个接口为Tx/Rx接口。The gateway includes two interfaces for the DSL interface and the LTE interface, and the HAAP includes one interface for the Tx/Rx interface.
DSL接口的地址D是网关通过DSL链路从BNG设备获取的,LTE接口的地址E是网关通过EPC设备获取的。The address D of the DSL interface is obtained by the gateway from the BNG device through the DSL link, and the address E of the LTE interface is obtained by the gateway through the EPC device.
T3为HAAP和网关之间连接的Tx/Rx接口的地址。T3 is the address of the Tx/Rx interface that is connected between the HAAP and the gateway.
在传输数据流之前,需要在DSL接口和Tx/Rx接口,LTE接口和Tx/Rx接口之间建立两条TCP连接通道。两条TCP连接通道的地址等参数需要通过GRE协议控制信令获取并保存以便后续使用。具体的获取方式如下:Before the data stream is transmitted, two TCP connection channels need to be established between the DSL interface and the Tx/Rx interface, the LTE interface, and the Tx/Rx interface. Parameters such as the address of the two TCP connection channels need to be acquired and saved for subsequent use by GRE protocol control signaling. The specific acquisition methods are as follows:
如图9所示,在LTE接口上:As shown in Figure 9, on the LTE interface:
P1:网关向HAAP发送GRE协议控制信令,在该GRE协议控制信令中携带该LTE接口的IP地址(E)以及端口号。然后HAAP接收到该GRE协议控制信令后,将该LTE接口的IP地址记录下来,并作为HAAP的Tx/Rx接口与网关的LTE接口之间的TCP连接通道的目的IP地址。P1: The gateway sends the GRE protocol control signaling to the HAAP, where the GRE protocol control signaling carries the IP address (E) and the port number of the LTE interface. After receiving the GRE protocol control signaling, the HAAP records the IP address of the LTE interface and serves as the destination IP address of the TCP connection channel between the Tx/Rx interface of the HAAP and the LTE interface of the gateway.
P2:HAAP向网关发送GRE协议控制信令答复信令,并在GRE协议控制信令答复信令中携带HAAP的Tx/Rx接口的IP地址。从而网关在接收到该GRE协议控制信令答复信令后,将该Tx/Rx接口的IP地址记录下来,并作为网关的LTE接口与HAAP的Tx/Rx接口之间的TCP连接通道的目的IP地址。P2: The HAAP sends a GRE protocol control signaling reply signaling to the gateway, and carries the IP address of the TAP/Rx interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the Tx/Rx interface, and serves as the destination IP address of the TCP connection channel between the LTE interface of the gateway and the Tx/Rx interface of the HAAP. address.
如图10所示,在DSL接口上: As shown in Figure 10, on the DSL interface:
S1:网关向HAAP发送GRE协议控制信令,在该GRE协议控制信令中携带该DSL接口的IP地址及端口号。然后HAAP通过Tx/Rx接口接收到该GRE协议控制信令后,将该DSL接口的IP地址及端口号记录下来,并作为HAAP的Tx/Rx接口与网关的DSL接口之间的TCP连接通道的目的IP地址,即作为连接信息。S1: The gateway sends GRE protocol control signaling to the HAAP, where the GRE protocol control signaling carries the IP address and port number of the DSL interface. Then, after receiving the GRE protocol control signaling through the Tx/Rx interface, the HAAP records the IP address and port number of the DSL interface, and serves as a TCP connection channel between the Tx/Rx interface of the HAAP and the DSL interface of the gateway. The destination IP address is used as the connection information.
S2:HAAP通过Tx/Rx接口向网关的DSL接口发送GRE协议控制信令答复信令,并在GRE协议控制信令答复信令中携带HAAP的Tx/Rx接口的IP地址。从而网关在接收到该GRE协议控制信令答复信令后,将该Tx/Rx接口的IP地址记录下来,并作为网关的DSL接口与HAAP的Tx/Rx接口之间的TCP连接通道的目的IP地址,即作为连接信息。S2: The HAAP sends the GRE protocol control signaling reply signaling to the DSL interface of the gateway through the Tx/Rx interface, and carries the IP address of the Tx/Rx interface of the HAAP in the GRE protocol control signaling reply signaling. Therefore, after receiving the GRE protocol control signaling reply signaling, the gateway records the IP address of the Tx/Rx interface, and serves as the destination IP address of the TCP connection channel between the DSL interface of the gateway and the Tx/Rx interface of the HAAP. The address is the connection information.
通过上述图9和图10所述的两个交互过程,完成的TCP连接通道两端的地址参数的学习。Through the two interaction processes described above in FIG. 9 and FIG. 10, the learning of the address parameters at both ends of the completed TCP connection channel is performed.
网关接收到终端发送的数据报文,数据报文中携带终端的IP地址。终端的IP地址可以为A4地址或者A6地址。若为A4地址,网关将所述数据报文路由到绑定虚拟接口进行TCP处理,然后将所述A4地址经过NAT,NAT为T1地址。然后通过DSL接口或者LTE接口发送给HAAP。若为A6地址,网关将所述数据报文路由到绑定虚拟接口进行TCP处理,然后直接通过DSL接口或者LTE接口发送给HAAP。由于针对A4地址来说,在网络侧则作为私有网络地址,因此携带有A4地址的数据报文无法在因特网中传输,则需要转换为一个公共网络地址,则T1地址为一个预设的公网地址。针对A6地址在网络侧本身就是一个公共网络地址,因此不需要再进行转换。The gateway receives the data packet sent by the terminal, and the data packet carries the IP address of the terminal. The IP address of the terminal can be an A4 address or an A6 address. If the address is an A4 address, the gateway routes the data packet to the binding virtual interface for TCP processing, and then passes the A4 address to the NAT, and the NAT is the T1 address. It is then sent to HAAP through a DSL interface or an LTE interface. If the A6 address is used, the gateway routes the data packet to the bound virtual interface for TCP processing, and then sends the data packet to the HAAP through the DSL interface or the LTE interface. Because the A4 address is used as the private network address on the network side, the data packet carrying the A4 address cannot be transmitted on the Internet. If the data packet needs to be converted to a public network address, the T1 address is a preset public network. address. The A6 address is itself a public network address on the network side, so no further conversion is required.
网关将所述数据报文路由到绑定虚拟接口进行TCP处理,具体可以通过以下方式,如图11所示:The gateway routes the data packet to the bound virtual interface for TCP processing, as shown in Figure 11.
步骤1101,网关根据存储的与HAAP进行TCP连接的连接信息,与HAAP建立两条TCP连接通道。具体为DSL接口与Tx/Rx接口之间的第一TCP连接通道,以及LTE接口与Tx/Rx接口之间的第二TCP连接通道。Step 1101: The gateway establishes two TCP connection channels with the HAAP according to the stored connection information of the TCP connection with the HAAP. Specifically, it is a first TCP connection channel between the DSL interface and the Tx/Rx interface, and a second TCP connection channel between the LTE interface and the Tx/Rx interface.
步骤1102,网关对数据报文进行TCP封装,并在各个数据报文头部中添 加序列号。Step 1102: The gateway encapsulates the data packet by TCP and adds it to the header of each data packet. Add the serial number.
其中,对数据报文进行TCP封装,即将数据报文添加TCP报文的头部,如表2所示。The data packet is encapsulated by TCP, that is, the data packet is added to the header of the TCP packet, as shown in Table 2.
表2Table 2
Figure PCTCN2015078086-appb-000014
Figure PCTCN2015078086-appb-000014
步骤1103,所述网关在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路。 Step 1103, when the gateway determines that the number of the data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, the gateway adds an identification number to the head of each data packet of the data flow. The identification number is used to identify the link corresponding to each TCP connection channel.
步骤1104,所述网关将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给HAAP。Step 1104: The gateway sends each data packet to the HAAP through a TCP connection channel corresponding to the identification number in each data packet.
具体的,网关在一个时间窗口内统计数据报文环回时延以及丢包率,然后确定第一TCP连接通道的通道能力。可以根据如下公式确定第一TCP连接通道的通道能力值:Specifically, the gateway counts the loopback delay and the packet loss rate of the data packet in a time window, and then determines the channel capability of the first TCP connection channel. The channel capability value of the first TCP connection channel can be determined according to the following formula:
Figure PCTCN2015078086-appb-000015
Figure PCTCN2015078086-appb-000015
其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay.
然后根据第一TCP连接通道的通道能力确定流量溢出门限。具体的,可 以是:将通道能力乘以一个预期的百分比(比如50%),作为初始的流量溢出门限值。例如:
Figure PCTCN2015078086-appb-000016
其中,R表示流量溢出门限,0<X<1。
The traffic overflow threshold is then determined based on the channel capability of the first TCP connection channel. Specifically, the channel capability can be multiplied by an expected percentage (such as 50%) as the initial flow overflow threshold. E.g:
Figure PCTCN2015078086-appb-000016
Where R is the flow overflow threshold, 0 < X < 1.
当前,还可以将每个时间窗口内确定的第一TCP连接通道(DSL链路所对应)的通道能力保存,将确定的第一TCP连接通道的通道能力值与流量溢出门限值进行比较,并将比较结果进行保存,当确认连续M个时间窗口内,第一TCP连接通道的通道能力值均大于流量溢出门限值,则调高流量溢出门限值。当确认连续M个时间窗口内,第一TCP连接通道的通道能力值均小于流量溢出门限值,则调低流量溢出门限。Currently, the channel capability of the first TCP connection channel (corresponding to the DSL link) determined in each time window may be saved, and the determined channel capability value of the first TCP connection channel is compared with the traffic overflow threshold. The comparison result is saved. When the channel capability value of the first TCP connection channel is greater than the flow overflow threshold value in the continuous M time window, the flow overflow threshold is adjusted. When it is confirmed that the channel capacity value of the first TCP connection channel is less than the flow overflow threshold within consecutive M time windows, the flow overflow threshold is lowered.
其中,可以根据每个数据报文在DSL的连接通道发送和接收到ACK反馈的时间差确定RTT。由于每个数据报文会添加序列号,根据该序列号对应数据报文发送和接收到ACK反馈的时间差确定RTT。RTT的变化反映了连接通道时延的变化。然后根据各个序列号对应的报文的ACK反馈情况可以确定时间窗口内的丢包率。The RTT can be determined according to the time difference between each data message sent and received by the DSL connection channel. Since each data message adds a sequence number, the RTT is determined according to the time difference between the serial number corresponding to the data message sent and the ACK feedback received. The change in RTT reflects the change in the delay of the connection channel. Then, according to the ACK feedback condition of the message corresponding to each sequence number, the packet loss rate in the time window can be determined.
具体的,HAAP在接收到网关发送的数据报文后,根据序列号对数据报文进行排序整理,针对未接收到的数据报文在该时间窗口内进行超时重传,如果达到预定时间未接收到的数据报文,则认为丢包,并对接收到的数据报文,向网关发送ACK反馈。然后将接收到的数据报文去除TCP报文头部发送出去。Specifically, after receiving the data packet sent by the gateway, the HAAP sorts and sorts the data packet according to the serial number, and performs timeout retransmission for the unreceived data packet in the time window, and does not receive the predetermined time. When the data packet arrives, it considers that the packet is lost, and sends an ACK feedback to the gateway for the received data packet. Then, the received data packet is sent out of the TCP packet header.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图 和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理模块的处理器以产生一个机器,使得通过计算机或其他可编程数据处理模块的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the invention. It should be understood that the flow chart can be implemented by computer program instructions And/or a combination of the processes and/or blocks in the block diagrams, and the flowcharts and/or blocks in the flowcharts. These computer program instructions can be provided to a processor of a general purpose computer, a special purpose computer, an embedded processor, or other programmable data processing module to produce a machine for generating instructions for execution by a processor of a computer or other programmable data processing module. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理模块以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing module to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理模块上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing module to perform a series of operational steps on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。While the preferred embodiment of the invention has been described, it will be understood that Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and the modifications and
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。 It is apparent that those skilled in the art can make various modifications and variations to the embodiments of the invention without departing from the spirit and scope of the embodiments of the invention. Thus, it is intended that the present invention cover the modifications and modifications of the embodiments of the invention.

Claims (42)

  1. 一种流量控制方法,其特征在于,包括:A flow control method, comprising:
    第一设备接收到数据流;The first device receives the data stream;
    所述第一设备根据存储的与第二设备进行传输控制协议TCP连接的连接信息,与所述第二设备建立N条TCP连接通道,N为大于等于2的正整数;The first device establishes N TCP connection channels with the second device according to the stored connection information of the TCP connection with the second device, where N is a positive integer greater than or equal to 2;
    所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备;Transmitting, by the first device, the data flow to the at least one TCP connection channel of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels Second device
    其中,所述N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the N TCP connection channels is for each TCP connection channel, and the data packets are counted back within the preset duration according to the TCP connection channel. The delay and the packet loss rate are predetermined; L is a positive integer less than N.
  2. 如权利要求1所述的方法,其特征在于,所述第一设备获取与所述第二设备进行TCP连接的连接信息,包括:The method of claim 1, wherein the first device acquires connection information for performing a TCP connection with the second device, including:
    所述第一设备通过第一接口向所述第二设备的第二接口发送第一GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述第二设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;Transmitting, by the first device, the first GRE protocol control signaling to the second interface of the second device by using the first interface, where the first GRE protocol control signaling carries an Internet Protocol IP address of the first interface, Configuring a GRE tunnel between the first interface and the second interface; and causing the second device to record the IP address of the first interface as the TCP between the first interface and the second interface The destination IP address of the connection channel;
    所述第一设备通过所述第一接口接收到所述第二设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;Receiving, by the first device, the first GRE protocol control signaling reply signaling sent by the second device by using the second interface, where the first GRE protocol control signaling is carried in the signaling The IP address of the second interface;
    所述第一设备记录所述第二接口的IP地址作为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址。The first device records an IP address of the second interface as a destination IP address of a TCP connection channel between the first interface and the second interface.
  3. 如权利要求1或2所述的方法,其特征在于,针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,包括: The method according to claim 1 or 2, wherein, for each TCP connection channel, determining a loopback delay and a packet loss rate of the data packet that are counted within the preset duration according to the TCP connection channel Traffic overflow thresholds, including:
    所述第一设备针对每条TCP连接通道分别执行:The first device performs separately for each TCP connection channel:
    分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  4. 如权利要求3所述的方法,其特征在于,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,包括:The method of claim 3, wherein determining a traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel comprises:
    将确定的该条TCP连接通道的通道能力值乘以X后的值作为该条TCP连接通道对应的流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold corresponding to the TCP connection channel, where 0<X<1;
    将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
  5. 如权利要求3或4所述的方法,其特征在于,所述根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值,包括:The method according to claim 3 or 4, wherein the determining the channel capability value of the TCP connection channel according to the statistical data packet loopback delay and the packet loss rate comprises:
    根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
    Figure PCTCN2015078086-appb-100001
    Figure PCTCN2015078086-appb-100001
    其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
  6. 如权利要求1~5任一项所述的方法,其特征在于,还包括:The method according to any one of claims 1 to 5, further comprising:
    第一设备接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After receiving the data stream, the first device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
  7. 如权利要求6所述的方法,其特征在于,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备, 包括:The method according to claim 6, wherein the first device passes the data flow through the N TCPs according to a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels. Transmitting at least one TCP connection channel in the connection channel to the second device, include:
    所述第一设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the first device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
    所述第一设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the first device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
    所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  8. 如权利要求6所述的方法,其特征在于,所述第一设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第二设备,包括:The method according to claim 6, wherein the first device passes the data flow through the N TCPs according to a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels. Sending, to the second device, at least one TCP connection channel in the connection channel, including:
    所述第一设备若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;If the first device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
    所述第一设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,在所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;The first device adds an identification number to each data packet header according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
    所述第一设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第二设备。The first device sends each data packet to the second device by using a TCP connection channel corresponding to the identifier number in each data packet.
  9. 如权利要求7或8所述的方法,其特征在于,所述添加的TCP连接通道的标识号位于各个数据报文的数据字段之前。The method according to claim 7 or 8, wherein the identification number of the added TCP connection channel is located before the data field of each data message.
  10. 如权利要求1~9任一项所述的方法,其特征在于,所述第一设备为家庭网关HG,所述第二设备为融合接入汇聚点HAAP。The method according to any one of claims 1 to 9, wherein the first device is a home gateway HG, and the second device is a converged access aggregation point HAAP.
  11. 一种流量动态控制方法,其特征在于,包括:A flow dynamic control method, comprising:
    第二设备接收到数据流;The second device receives the data stream;
    所述第二设备根据N条传输控制协议TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至 少一条TCP连接通道发送给所述第一设备;The second device passes the traffic overflow threshold corresponding to the L TCP connection channels in the TCP connection channel of the N transmission control protocols, and passes the data flow through the N TCP connection channels to Sending less than one TCP connection channel to the first device;
    其中,所述N条TCP连接通道为已建立的所述第二设备与第一设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the second device and the first device that are established; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each TCP. The connection channel is determined according to the loopback delay and the packet loss rate of the data packet that are counted within the preset duration according to the TCP connection channel; L is a positive integer smaller than N.
  12. 如权利要求11所述的方法,其特征在于,针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延及丢包率确定流量溢出门限,包括:The method according to claim 11, wherein for each TCP connection channel, the traffic overflow is determined according to the loopback delay and the packet loss rate of the data packet counted within the preset duration for the TCP connection channel. Thresholds, including:
    所述第二设备针对每条TCP连接通道分别执行:The second device performs for each TCP connection channel:
    分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  13. 如权利要求12所述的方法,其特征在于,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,包括:The method of claim 12, wherein the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel, including:
    将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold, where 0<X<1;
    将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
  14. 如权利要求12或13所述的方法,其特征在于,根据统计的数据报文环回时延以及丢包率确定该TCP连接通道的通道能力值,包括:The method according to claim 12 or 13, wherein the channel capability value of the TCP connection channel is determined according to the statistics data packet loopback delay and the packet loss rate, including:
    根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
    Figure PCTCN2015078086-appb-100002
    Figure PCTCN2015078086-appb-100002
    其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢 包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the congestion packet for the data packet, the MSS indicates the size of the largest fragmented packet, and P indicates the lost bandwidth. Packet rate, RTT indicates the loopback delay of the data packet, and min indicates the minimum value.
  15. 如权利要求11~14任一项所述的方法,其特征在于,还包括:The method of any of claims 11 to 14, further comprising:
    第二设备接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。After receiving the data stream, the second device performs TCP encapsulation on each data packet corresponding to the data stream, and adds a sequence number to each data packet header; the sequence number is based on the arrival of each data packet. The order is determined.
  16. 如权利要求15所述的方法,其特征在于,所述第二设备根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,包括:The method according to claim 15, wherein the second device passes the data stream through the N TCPs according to a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels. Sending, to the first device, at least one TCP connection channel in the connection channel, including:
    所述第二设备若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;If the second device establishes two TCP connection channels, confirm that the first TCP connection channel is the default transmission channel;
    所述第二设备在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;When the number of the data packets of the data stream reaches the traffic overflow threshold corresponding to the first TCP connection channel, the second device adds an identifier to the head of each data packet of the data stream, where the identifier is The number is used to identify the link corresponding to each TCP connection channel;
    所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  17. 如权利要求15所述的方法,其特征在于,所述第二设备根据至少两条TCP连接通道对应的流量溢出门限,将所述数据流通过所述至少两条TCP连接通道中的至少一条TCP连接通道发送给所述第一设备,包括:The method according to claim 15, wherein the second device passes the data stream through at least one of the at least two TCP connection channels according to a traffic overflow threshold corresponding to at least two TCP connection channels. The connection channel is sent to the first device, including:
    所述第二设备若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;If the second device establishes at least three TCP connection channels, determining a priority of the established TCP connection channel;
    所述第二设备根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;The second device adds an identification number to each data packet header according to a priority of each TCP connection channel and a traffic overflow threshold corresponding to each TCP connection channel; the identifier number is used to identify each TCP connection channel. link;
    所述第二设备将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述第一设备。The second device sends each data packet to the first device by using a TCP connection channel corresponding to the identifier number in each data packet.
  18. 如权利要求16或17所述的方法,其特征在于,所述添加的TCP连 接通道的标识号位于各个数据报文的数据字段之前。A method according to claim 16 or 17, wherein said added TCP connection The identification number of the connected channel is located before the data field of each data packet.
  19. 如权利要求11~18任一项所述的方法,其特征在于,所述第一设备为家庭网关HG,所述第二设备为融合接入汇聚点。The method according to any one of claims 11 to 18, wherein the first device is a home gateway HG, and the second device is a converged access convergence point.
  20. 一种流量动态控制设备,其特征在于,包括:A flow dynamic control device, comprising:
    接收模块,用于接收数据流;a receiving module, configured to receive a data stream;
    存储模块,用于存储与所述存储模块所在的设备对应的对端设备进行传输控制协议TCP连接的连接信息;a storage module, configured to store connection information of a transmission control protocol TCP connection of the peer device corresponding to the device where the storage module is located;
    处理模块,用于根据所述存储模块存储的与所述对端设备进行TCP连接的连接信息,与对端设备建立N条TCP连接通道,N为大于等于2的正整数;a processing module, configured to establish, according to the connection information that the storage module performs a TCP connection with the peer device, establish N TCP connection channels with the peer device, where N is a positive integer greater than or equal to 2;
    发送模块,用于根据所述处理模块建立的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备;a sending module, configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels established by the processing module The connection channel is sent to the peer device;
    其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
  21. 如权利要求20所述的设备,其特征在于,所述发送模块,还用于通过第一接口向所述对端设备的第二接口发送的第一通用路由封装GRE协议控制信令,所述第一GRE协议控制信令中携带所述第一接口的互联网协议IP地址,所述第一接口与所述第二接口之间配置有GRE隧道;使得所述对端设备将所述第一接口的IP地址记录为所述第一接口与所述第二接口之间的TCP连接通道的目的IP地址;The device according to claim 20, wherein the sending module is further configured to encapsulate GRE protocol control signaling by using a first interface to the first universal route sent by the second interface of the peer device, The first GRE protocol control signaling carries the Internet Protocol IP address of the first interface, and the GRE tunnel is configured between the first interface and the second interface, so that the peer device sets the first interface The IP address is recorded as the destination IP address of the TCP connection channel between the first interface and the second interface;
    所述接收模块,还用于通过所述第一接口接收到所述对端设备通过第二接口发送的第一GRE协议控制信令答复信令,所述第一GRE协议控制信令答复信令中携带所述第二接口的IP地址;The receiving module is further configured to receive, by using the first interface, a first GRE protocol control signaling reply signaling sent by the peer device by using a second interface, where the first GRE protocol control signaling reply signaling Carrying the IP address of the second interface;
    所述存储模块,用于存储所述第二接口的IP地址作为所述第一接口与所述第二接口之间的所述TCP连接通道的目的IP地址。The storage module is configured to store an IP address of the second interface as a destination IP address of the TCP connection channel between the first interface and the second interface.
  22. 如权利要求20或21所述的设备,其特征在于,所述处理模块,还 用于针对每条TCP连接通道分别执行:The device according to claim 20 or 21, wherein said processing module further Used to execute separately for each TCP connection channel:
    分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  23. 如权利要求22所述的设备,其特征在于,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限时,所述处理模块,具体用于将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者The device according to claim 22, wherein the processing module is specifically configured to determine the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel. The value of the channel capability of the TCP connection channel is multiplied by the value of X as the traffic overflow threshold, where 0<X<1;
    将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
  24. 如权利要求22或23所述的设备,其特征在于,在根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值时,所述处理模块具体用于根据如下公式确定该TCP连接通道的通道能力值:The device according to claim 22 or 23, wherein, when determining the channel capability value of the TCP connection channel according to the statistical data packet loopback delay and the packet loss rate, the processing module is specific Used to determine the channel capability value of the TCP connection channel according to the following formula:
    Figure PCTCN2015078086-appb-100003
    Figure PCTCN2015078086-appb-100003
    其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the data packet transmission congestion window, the MSS indicates the maximum fragmented packet size, P indicates the packet loss rate, and the RTT indicates the data packet ring. Back delay, min means take the minimum value.
  25. 如权利要求20~25任一项所述的设备,其特征在于,所述处理模块还用于在所述接收模块接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。The device according to any one of claims 20 to 25, wherein the processing module is further configured to perform TCP encapsulation on each data packet corresponding to the data stream after the receiving module receives the data stream. And adding a sequence number in each data packet header; the sequence number is determined according to the order in which the data packets arrive.
  26. 如权利要求25所述的设备,其特征在于,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备,所述处 理模块具体用于:The device according to claim 25, wherein said data stream is passed through said N TCP connection channels according to a traffic overflow threshold corresponding to L of said N TCP connection channels Sending at least one TCP connection channel to the peer device, where The management module is specifically used to:
    若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
    所述发送模块,具体用于:The sending module is specifically configured to:
    将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  27. 如权利要求25所述的设备,其特征在于,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:The device according to claim 25, wherein said data stream is passed through said N TCP connection channels according to a traffic overflow threshold corresponding to L of said N TCP connection channels When the at least one TCP connection channel is sent to the peer device, the processing module is specifically configured to:
    若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
    所述发送模块,具体用于将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The sending module is specifically configured to send each data packet to the peer device by using a TCP connection channel corresponding to the identifier number in each data packet.
  28. 如权利要求26或27所述的设备,其特征在于,所述处理模块将TCP连接通道的标识号添加在各个数据报文的数据字段之前。The device according to claim 26 or 27, wherein the processing module adds the identification number of the TCP connection channel before the data field of each data message.
  29. 如权利要求20~28任一项所述的设备,其特征在于,所述存储模块所在的设备为家庭网关HG,所述对端设备为融合接入汇聚点HAAP。The device according to any one of claims 20 to 28, wherein the device in which the storage module is located is a home gateway HG, and the peer device is a converged access aggregation point HAAP.
  30. 一种流量动态控制设备,其特征在于,包括:A flow dynamic control device, comprising:
    接收模块,用于接收数据流;a receiving module, configured to receive a data stream;
    发送模块,用于根据N条传输控制协议TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述发送模块所在的设备对应的对端设备; a sending module, configured to send, according to a traffic overflow threshold corresponding to the L TCP connection channels in the TCP connection channel of the N transmission control protocols, the data flow to the at least one TCP connection channel of the N TCP connection channels The peer device corresponding to the device where the sending module is located;
    其中,所述N条TCP连接通道为已建立的所述对端设备与所述发送模块所在的设备之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established peer device and the device where the sending module is located; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is For each TCP connection channel, according to the TCP connection channel, the loopback delay and the packet loss rate of the data packet are determined in advance according to the preset duration; L is a positive integer smaller than N.
  31. 如权利要求30所述的设备,其特征在于,还包括:The device of claim 30, further comprising:
    处理模块,用于针对每条TCP连接通道分别执行:Processing module for performing separately for each TCP connection channel:
    分别统计该条TCP连接通道在预设时长内的数据报文环回时延以及丢包率;根据统计的所述数据报文环回时延以及所述丢包率确定该条TCP连接通道的通道能力值,根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限。The loopback delay and the packet loss ratio of the data packet in the preset length of the TCP connection channel are respectively counted. The loopback delay of the data packet and the packet loss rate are used to determine the TCP connection channel. The channel capability value determines the traffic overflow threshold corresponding to the TCP connection channel according to the determined channel capability value of the TCP connection channel.
  32. 如权利要求31所述的设备,其特征在于,在根据确定的该条TCP连接通道的通道能力值确定该条TCP连接通道对应的流量溢出门限,所述处理模块具体用于:The device according to claim 31, wherein the traffic overflow threshold corresponding to the TCP connection channel is determined according to the determined channel capability value of the TCP connection channel, and the processing module is specifically configured to:
    将确定的该条TCP连接通道的通道能力值乘以X后的值作为流量溢出门限,其中0<X<1;或者Multiplying the determined channel capability value of the TCP connection channel by the value of X as the traffic overflow threshold, where 0<X<1;
    将确定的该条TCP连接通道的通道能力值与上一个比较周期确定的流量溢出门限进行比较,根据得到的比较结果在当前比较周期内调节当前比较周期的流量溢出门限,所述比较周期等于M个预设时长,M为正整数。Comparing the determined channel capability value of the TCP connection channel with the flow overflow threshold determined by the previous comparison period, and adjusting the flow overflow threshold of the current comparison period in the current comparison period according to the obtained comparison result, the comparison period is equal to M The preset duration, M is a positive integer.
  33. 如权利要求31或32所述的设备,其特征在于,在根据统计的所述数据报文环回时延以及所述丢包率确定该TCP连接通道的通道能力值,所述处理模块具体用于:The device according to claim 31 or 32, wherein the channel capability value of the TCP connection channel is determined according to the statistical data packet loopback delay and the packet loss rate, and the processing module is specifically used. to:
    根据如下公式确定该TCP连接通道的通道能力值:Determine the channel capability value of the TCP connection channel according to the following formula:
    Figure PCTCN2015078086-appb-100004
    Figure PCTCN2015078086-appb-100004
    其中,Through out表示通道能力值,BW表示连接通道的激活带宽,CWND表示数据报文发送拥塞窗口大小,MSS表示最大分片报文的大小,P表示丢 包率,RTT表示数据报文的环回时延,min表示取最小值。The outbound indicates the channel capability value, the BW indicates the active bandwidth of the connected channel, the CWND indicates the size of the congestion packet for the data packet, the MSS indicates the size of the largest fragmented packet, and P indicates the lost bandwidth. Packet rate, RTT indicates the loopback delay of the data packet, and min indicates the minimum value.
  34. 如权利要求30~33任一项所述的设备,其特征在于,所述处理模块,还用于在所述接收模块接收到数据流后,对所述数据流对应的各个数据报文进行TCP封装,并在各个数据报文头部中添加序列号;所述序列号是根据各个数据报文到达的先后顺序确定的。The device according to any one of claims 30 to 33, wherein the processing module is further configured to perform TCP on each data packet corresponding to the data stream after the receiving module receives the data stream. Encapsulating, and adding a serial number in each data packet header; the serial number is determined according to the order in which each data packet arrives.
  35. 如权利要求34所述的设备,其特征在于,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:The device according to claim 34, wherein the data stream is passed through the N TCP connection channels according to a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels. When the at least one TCP connection channel is sent to the peer device, the processing module is specifically configured to:
    若建立的TCP连接通道为两个,确认其中第一TCP连接通道为默认传输通道;在确定所述数据流的数据报文的数量达到第一TCP连接通道对应的流量溢出门限时,在所述数据流的各个数据报文的头部添加标识号,所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is two, it is confirmed that the first TCP connection channel is the default transmission channel; when it is determined that the number of data packets of the data flow reaches the traffic overflow threshold corresponding to the first TCP connection channel, Adding an identification number to the header of each data packet of the data stream, where the identifier number is used to identify a link corresponding to each TCP connection channel;
    所述发送模块,具体用于:The sending module is specifically configured to:
    将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  36. 如权利要求34所述的设备,其特征在于,在根据所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述对端设备时,所述处理模块具体用于:The device according to claim 34, wherein the data stream is passed through the N TCP connection channels according to a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels. When the at least one TCP connection channel is sent to the peer device, the processing module is specifically configured to:
    若建立的TCP连接通道为至少三个,确定所述建立的TCP连接通道的优先级;根据各个TCP连接通道的优先级以及各个TCP连接通道对应的流量溢出门限,将所述各个数据报文头部添加标识号;所述标识号用于标识各个TCP连接通道对应的链路;If the established TCP connection channel is at least three, the priority of the established TCP connection channel is determined; and each data packet header is determined according to the priority of each TCP connection channel and the traffic overflow threshold corresponding to each TCP connection channel. Add an identification number; the identification number is used to identify a link corresponding to each TCP connection channel;
    所述发送模块,具体用于:The sending module is specifically configured to:
    将各个数据报文通过各个数据报文中的标识号对应的TCP连接通道发送给所述对端设备。 The data packets are sent to the peer device through the TCP connection channel corresponding to the identifier in each data packet.
  37. 如权利要求35或36所述的设备,其特征在于,所述处理模块,具体用于将TCP连接通道的标识号添加在各个数据报文的数据字段之前。The device according to claim 35 or claim 36, wherein the processing module is specifically configured to add an identification number of the TCP connection channel before the data field of each data packet.
  38. 如权利要求30~37任一项所述的设备,其特征在于,所述发送模块所在的设备为融合接入汇聚点HAAP,所述对端设备为家庭网关HG。The device according to any one of claims 30 to 37, wherein the device in which the sending module is located is a converged access aggregation point HAAP, and the peer device is a home gateway HG.
  39. 一种网关,其特征在于,包括:A gateway, comprising:
    收发器、存储器以及处理器;a transceiver, a memory, and a processor;
    所述收发器,用于接收数据流;The transceiver is configured to receive a data stream;
    所述存储器,用于存储与融合接入汇聚点HAAP进行传输控制协议TCP连接的连接信息;The memory is configured to store connection information that is connected to the convergence access point HAAP for a transmission control protocol TCP connection;
    处理器,用于根据所述存储器存储的与所述HAAP进行TCP连接的连接信息,与所述HAAP建立N条TCP连接通道,N为大于等于2的正整数;a processor, configured to establish N TCP connection channels with the HAAP according to the connection information that is stored in the memory and perform a TCP connection with the HAAP, where N is a positive integer greater than or equal to 2;
    收发器,还用于根据所述存储器存储的所述N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给所述HAAP;The transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels of the N TCP connection channels stored in the memory a connection channel is sent to the HAAP;
    其中,N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The traffic overflow threshold corresponding to each of the TCP connection channels of the N TCP connection channels is a loopback delay of the data packets that are counted within the preset duration according to the TCP connection channel for each of the TCP connection channels. The packet loss rate is predetermined; L is a positive integer less than N.
  40. 一种融合接入汇聚点,其特征在于,包括:A converged access convergence point characterized by comprising:
    收发器,用于接收数据流;a transceiver for receiving a data stream;
    存储器,用于存储N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限;a memory for storing a traffic overflow threshold corresponding to L TCP connection channels in the N TCP connection channels;
    收发器,还用于根据所述存储器存储的N条TCP连接通道中的L条TCP连接通道对应的流量溢出门限,将所述数据流通过所述N条TCP连接通道中的至少一条TCP连接通道发送给网关;The transceiver is further configured to pass the data flow through at least one of the N TCP connection channels according to a traffic overflow threshold corresponding to the L TCP connection channels in the N TCP connection channels stored in the memory. Sent to the gateway;
    其中,所述N条TCP连接通道为已建立的所述网关与所述融合接入汇聚点之间的TCP连接通道;N条TCP连接通道中每条TCP连接通道对应的流量溢出门限是针对每条TCP连接通道,分别根据对该条TCP连接通道,在预 设时长内统计的数据报文环回时延以及丢包率预先确定的;L为小于N的正整数。The N TCP connection channels are TCP connection channels between the established gateway and the converged access convergence point; the traffic overflow threshold corresponding to each TCP connection channel in the N TCP connection channels is for each The TCP connection channel is respectively based on the TCP connection channel Set the loopback delay and packet loss rate of the data packet in the duration to be predetermined; L is a positive integer less than N.
  41. 一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子设备执行时使所述电子设备执行根据权利要求1至9任一项所述方法。A computer readable storage medium storing one or more programs, wherein the one or more programs include instructions that, when executed by an electronic device comprising a plurality of applications, cause the electronic device to execute A method according to any one of claims 1 to 9.
  42. 一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当被包括多个应用程序的电子设备执行时使所述电子设备执行根据权利要求11至18任一项所述方法。 A computer readable storage medium storing one or more programs, wherein the one or more programs include instructions that, when executed by an electronic device comprising a plurality of applications, cause the electronic device to execute A method according to any one of claims 11 to 18.
PCT/CN2015/078086 2015-04-30 2015-04-30 Dynamic traffic control method, device and home gateway, and hybrid access aggregation point WO2016172958A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2015/078086 WO2016172958A1 (en) 2015-04-30 2015-04-30 Dynamic traffic control method, device and home gateway, and hybrid access aggregation point
CN201580033512.0A CN106464567B (en) 2015-04-30 2015-04-30 Dynamic flow control method, device, gateway and fusion access convergent point

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/078086 WO2016172958A1 (en) 2015-04-30 2015-04-30 Dynamic traffic control method, device and home gateway, and hybrid access aggregation point

Publications (1)

Publication Number Publication Date
WO2016172958A1 true WO2016172958A1 (en) 2016-11-03

Family

ID=57198053

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/078086 WO2016172958A1 (en) 2015-04-30 2015-04-30 Dynamic traffic control method, device and home gateway, and hybrid access aggregation point

Country Status (2)

Country Link
CN (1) CN106464567B (en)
WO (1) WO2016172958A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314163A (en) * 2019-12-03 2020-06-19 深信服科技股份有限公司 Data packet transmission method and system
CN111464456A (en) * 2020-03-31 2020-07-28 杭州迪普科技股份有限公司 Flow control method and device
CN112866079A (en) * 2020-12-31 2021-05-28 广州技象科技有限公司 Method, device, equipment and storage medium for transmitting regular messages based on Internet of things
CN113438324A (en) * 2021-08-25 2021-09-24 北京拙成科技发展有限公司 Digital information transmission method and system
CN114785735A (en) * 2022-04-26 2022-07-22 杭州迪普信息技术有限公司 FPGA-based network message current limiting method and device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218186B (en) * 2017-07-05 2021-02-23 华为技术有限公司 Multipath data transmission processing method and network equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004002085A1 (en) * 2002-06-20 2003-12-31 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for resource allocation
EP2203018A1 (en) * 2008-12-09 2010-06-30 Vodafone Group PLC Method and device for controlling multi-path connections in radio access networks
WO2015001395A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Limited Methods and systems for transmitting packets through network interfaces
WO2015001393A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Ltd. Methods and systems for transmitting packets through aggregated end-to-end connection
WO2015001394A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Ltd. Methods and systems for transmitting packets through aggregated end-to-end connection

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104158761B (en) * 2014-08-05 2018-02-13 华为技术有限公司 A kind of method and apparatus of bypass flow

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004002085A1 (en) * 2002-06-20 2003-12-31 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for resource allocation
EP2203018A1 (en) * 2008-12-09 2010-06-30 Vodafone Group PLC Method and device for controlling multi-path connections in radio access networks
WO2015001395A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Limited Methods and systems for transmitting packets through network interfaces
WO2015001393A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Ltd. Methods and systems for transmitting packets through aggregated end-to-end connection
WO2015001394A1 (en) * 2013-07-05 2015-01-08 Pismo Labs Technology Ltd. Methods and systems for transmitting packets through aggregated end-to-end connection

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111314163A (en) * 2019-12-03 2020-06-19 深信服科技股份有限公司 Data packet transmission method and system
CN111464456A (en) * 2020-03-31 2020-07-28 杭州迪普科技股份有限公司 Flow control method and device
CN111464456B (en) * 2020-03-31 2023-08-29 杭州迪普科技股份有限公司 Flow control method and device
CN112866079A (en) * 2020-12-31 2021-05-28 广州技象科技有限公司 Method, device, equipment and storage medium for transmitting regular messages based on Internet of things
CN112866079B (en) * 2020-12-31 2022-10-28 广州技象科技有限公司 Method, device and equipment for transmitting regular messages based on Internet of things and storage medium
CN113438324A (en) * 2021-08-25 2021-09-24 北京拙成科技发展有限公司 Digital information transmission method and system
CN114785735A (en) * 2022-04-26 2022-07-22 杭州迪普信息技术有限公司 FPGA-based network message current limiting method and device
CN114785735B (en) * 2022-04-26 2023-09-12 杭州迪普信息技术有限公司 FPGA-based network message current limiting method and device

Also Published As

Publication number Publication date
CN106464567B (en) 2020-04-28
CN106464567A (en) 2017-02-22

Similar Documents

Publication Publication Date Title
WO2016172958A1 (en) Dynamic traffic control method, device and home gateway, and hybrid access aggregation point
EP3531620B1 (en) Method for processing message in hybrid access network, and network device
EP3281380B1 (en) Method and system for the scheduling of packets in a bundling scenario based on tcp tunnels and native tcp information
US11159423B2 (en) Techniques for efficient multipath transmission
JP7050094B2 (en) Packet transmission method, proxy server, and computer readable storage medium
US20190182146A1 (en) Improved Resource Usage In A Multipath Network
CN109792404A (en) Pass through the method and system of the tunnel group transport packet at network node
US9331914B2 (en) Service specific bandwidth policy configuration in data networks
CN109644161B (en) MP-GW port mapping method and system divided according to service flow in multi-path environment
WO2023050415A1 (en) Multipath transmission method and apparatus, and communication device
CN112714072B (en) Method and device for adjusting sending rate
KR101708977B1 (en) Packet processing apparatus of wireless lan and the method thereof
JP2002247067A (en) Band controller
US20220070736A1 (en) Traffic steering device
EP3350969B1 (en) Multiplexing data
CN110876160A (en) Resource transmission control method and device based on multimode base station
CN113330782B (en) Selecting a network based on real-time network characteristics
CN102972079A (en) Processing method and base station for transmitting voice over internet protocol based service data packet
JP5033604B2 (en) Transmission side wireless communication apparatus and packet transmission method
JP3759465B2 (en) Terminal device

Legal Events

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

Ref document number: 15890338

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15890338

Country of ref document: EP

Kind code of ref document: A1