[go: up one dir, main page]

WO2019179157A1 - 一种数据流量处理方法及相关网络设备 - Google Patents

一种数据流量处理方法及相关网络设备 Download PDF

Info

Publication number
WO2019179157A1
WO2019179157A1 PCT/CN2018/117555 CN2018117555W WO2019179157A1 WO 2019179157 A1 WO2019179157 A1 WO 2019179157A1 CN 2018117555 W CN2018117555 W CN 2018117555W WO 2019179157 A1 WO2019179157 A1 WO 2019179157A1
Authority
WO
WIPO (PCT)
Prior art keywords
link
network device
data stream
bandwidth
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2018/117555
Other languages
English (en)
French (fr)
Inventor
陈李昊
张民贵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to EP18910881.4A priority Critical patent/EP3758409A4/en
Publication of WO2019179157A1 publication Critical patent/WO2019179157A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers

Definitions

  • the present application relates to the field of communications, and in particular, to a data traffic processing method and related network device.
  • a hybrid access network allows users to access the Internet using different types of access methods.
  • the hybrid access network includes a home gateway (HG) and a hybrid access aggregation point (HAAP).
  • HAAP is used to implement a hybrid access network with different types of access modes for users of each HG.
  • the different types of access modes may include a digital subscriber line (DSL) and a long term evolution (LTE).
  • DSL digital subscriber line
  • LTE long term evolution
  • the user establishes a binding tunnel (ie, an LTE tunnel or a DSL tunnel) with the HAAP through HG dialing, and transmits data through the tunnel.
  • a binding tunnel ie, an LTE tunnel or a DSL tunnel
  • the dual tunnel binding mode is automatically enabled and the service traffic of the user is offloaded packet by packet. That is, packets in one service flow may be sent to different tunnels. transmission.
  • the packet Because the transmission delay on each tunnel is different, the packet will have a delay difference when the tunnel reaches the receiving end. When any one of the bonded tunnels is congested, the packet has arrived at the receiving end through another tunnel. The text needs to wait, causing the transmission delay of one link to affect the entire transmission process, lowering the overall throughput of the tunnel, and even causing a buffer overflow even in the case of serious packet loss.
  • the present application provides a data traffic processing method, which can monitor the bandwidth of a link environment and the transmission rate of a data stream to dynamically adjust the data flow load between network devices, thereby helping to improve the bandwidth utilization of links between network devices. rate.
  • a first aspect of the present invention provides a data traffic processing method, where the method is applicable to a hybrid access network, where the hybrid access network includes a first network device and a second network device, where the first network device passes the first chain.
  • the road and the second link are connected to the second network device, and the method includes:
  • the second network device sends a plurality of data streams, where the first total rate indicates a sum of rates of the first network device sending each of the plurality of data streams, and the rate of each data stream is When the first network device sends the data stream, the first network device needs to reach the sending rate, and when the first network device sends the data stream, the data stream is sent according to the sending rate required by the data stream;
  • the first network device determines that the first total rate of sending the data stream via the first link is greater than the bandwidth of the first link, indicating that the bandwidth of the first link cannot withstand all data flows on the link
  • the first network device first determines the first data stream that needs to be offloaded, and the first rate that the first network device sends the first data stream is less than or equal to the first
  • the first remaining bandwidth of the second link the first remaining bandwidth indicating the available bandwidth of the second link that is not occupied by the data stream, so if the data stream is occupied in the second link, the link bandwidth is subtracted from the data stream.
  • the transmission rate is the remaining bandwidth, which may also be referred to as the nominal bandwidth or the maximum available bandwidth of the first link;
  • the method for determining the first data stream may be multiple. Two types are introduced here: first, first determining the remaining bandwidth of the second link, and then selecting the first data according to the remaining bandwidth of the second link and the screening condition. Flowing; secondly, arranging and combining the transmission rate of all data streams on the first link and the remaining bandwidth of each remaining link, and then substituting the screening conditions to select the first data stream and the second link;
  • the first data stream is switched from the first link to the second link after the first network device first determines the first data stream.
  • the embodiment of the present application can dynamically adjust the load balancing by comparing the sum of the transmission rates of all the data streams on the link and the link bandwidth, and adjust the data flow on the congestion link to the relatively idle link, which is helpful.
  • link congestion can be reduced to a certain extent, and the flexibility of data transmission is also improved.
  • the congestion condition of the first link is improved.
  • the first network device continues to determine if the total rate of transmission of the data stream via the first link is greater than the bandwidth of the first link. If the first network device determines that the total rate of the first link transmission data stream is still greater than the bandwidth of the first link, the first network device may adjust the second data in the first link according to the foregoing implementation manner. flow.
  • the method further includes:
  • the first network device Determining, by the first network device, whether a second total rate of transmitting the data stream via the first link is greater than a bandwidth of the first link, wherein the second total rate indicates that the first network device transmits A sum of rates of each of the plurality of data streams except the first data stream. That is, the second total rate refers to the sum of the rates expected to be reached for each data stream other than the first data stream in the first link;
  • the first network device determines the second data stream, the multiple The data stream includes the second data stream, and the second rate at which the first network device sends the second data stream is less than or equal to a second remaining bandwidth of the second link, Switching a data stream to the second link, so the second remaining bandwidth is equal to the first remaining bandwidth minus the first rate;
  • the first network device switches the second data flow from the first link to the second link.
  • the first network device is further connected to the second network device by using a third link, where the method further include:
  • the first network device determines a third data stream, the multiple The data stream includes the third data stream, the third rate at which the first network device sends the third data stream is less than or equal to a third remaining bandwidth of the third link, and the third remaining bandwidth indication The available bandwidth in the third link that is not occupied by the data stream;
  • the first network device switches the third data stream from the first link to the third link.
  • the third data stream may also be determined from the first link, so that the first network device sends The third rate of the third data stream is less than or equal to the third remaining bandwidth of the third link.
  • the first link can be offloaded, which helps reduce the congestion of the first link and improve the bandwidth of the link other than the first link. Utilization rate.
  • the first network device sends the first data stream.
  • the first rate is less than or equal to the first remaining bandwidth of the second link, and the method further includes:
  • the first network device Transmitting, by the first network device, that the first rate of the first data stream is less than or equal to a difference between a value of the first remaining bandwidth and a first threshold, where the first threshold indicates a security value of the handover data stream, where the The presence of a threshold helps the link to avoid congestion after receiving the adjusted data stream.
  • the two methods for determining the first data stream and the second link mentioned in the foregoing embodiment may be simply modified, that is, the screening condition is changed to the first network device to send the first
  • the first rate of the data stream is less than or equal to the difference between the value of the first remaining bandwidth and the first threshold.
  • introducing a safety margin helps the link to avoid congestion after receiving the adjusted data stream.
  • the method further includes:
  • the first network device sends a request message to the second network device via the first link, where the request message includes a link identifier, and the link identifier indicates the first link.
  • the attribute value field of the request packet only includes the link identifier, and the effect to be achieved by the solution can be achieved.
  • the receiving period indicates a difference between a time when the second network device receives the request message and a time when the previous request message of the request message is received, where the number of received messages indicates the Receiving, by the second network device, the number of data packets, the number of received bytes indicating the number of bytes included in the data packet received by the second network device in the receiving period;
  • the first network device updates the bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the load balancing mechanism between the network devices can be implemented according to the newly defined control packet format and the link bandwidth detection mechanism, that is, the delay and packet loss of the link can be measured in real time by sending the control packet. To detect link bandwidth.
  • the first network device determines the first link according to the response packet.
  • Packet loss rate and transmission rate including:
  • the first network device determines the packet loss rate according to the number of the sent packets and the number of the received packets. It can be understood that when the number of sent packets is equal to the number of received packets, the packet loss rate is Zero, when the number of sent messages is not equal to the number of received messages, the packet loss rate is not zero;
  • the first network device determines the transmission rate according to the number of received bytes and the reception period.
  • the packet loss rate and the transmission speed of the packet can be determined by comparing the packets in the sending process and the receiving process, thereby achieving the purpose of monitoring the communication quality of the link, and laying the foundation for the subsequent optimization and updating of the bandwidth.
  • the first network device is Updating the bandwidth of the first link by using the packet loss rate and the transmission rate, including:
  • the first network device When the packet loss rate is not zero, or when the packet loss rate is zero and the transmission rate is greater than the bandwidth of the first link, the first network device will be the first link The value of the bandwidth is updated to the value of the transmission rate;
  • the first network device maintains a value of a bandwidth of the first link when the packet loss rate is zero and the transmission rate is less than or equal to a bandwidth of the first link.
  • the bandwidth of the link can be optimized and updated, so that the bandwidth utilization of the link is improved and the congestion situation can be improved.
  • the request message further includes a sequence.
  • the sequence number indicates the request message
  • the response message includes the sequence number.
  • the attribute value field of the request message only includes the link identifier, but the first network device periodically sends a large number of packets.
  • the attribute value field of the request packet should include the link identifier and the serial number. The role of the sequence number is used to identify the sequence of the packets.
  • the method further includes:
  • the first network device determines that a difference between a delay of the first link and a delay of the second link is less than the second threshold, the first network device passes the Transmitting, by the link, the first data packet to the second network device and the second data packet to the second network device via the second link, where the first data stream includes the A data message and a second data message.
  • the size of the delay difference between the tunnels can be flexibly determined whether the flow-by-flow load balancing mode or the packet-by-packet load balancing mode is used, which provides multiple possibilities for the solution, so that each load balancing in different situations Both ways can maximize the overall transfer rate.
  • the first network device is a home gateway HG device and the The second network device is a hybrid access aggregation node HAAP device; or the first network device is a HAAP device and the second network device is an HG device.
  • the type of the first network device and the second network device are not specifically limited in the solution, and can be applied to any network device that transmits the data stream, which embodies the universality and practicability of the embodiment.
  • the second aspect of the present invention provides a first network device, where the first network device is applied in a hybrid access network, where the hybrid access network further includes a second network device, where the first network device is The link and the second link are connected to the second network device, where the first network device includes a processing module and a sending module;
  • the sending module is configured to send, by using the first link, multiple data streams to the second network device;
  • the processing module is configured to determine whether a first total rate of sending a data stream via the first link is greater than a bandwidth of the first link, where the first total rate indicates a location sent by the sending module The sum of the rates of each of the plurality of data streams;
  • the processing module determines that the first total rate of sending the data stream via the first link is greater than the bandwidth of the first link, the processing module is further configured to determine the first data stream, the multiple data The flow includes the first data stream, where a first rate of the first data stream sent by the sending module is less than or equal to a first remaining bandwidth of the second link, where the first remaining bandwidth indicator is The available bandwidth in the second link that is not occupied by the data stream;
  • the processing module is further configured to switch the first data stream from the first link to the second link.
  • the embodiment of the present application can dynamically adjust the load balancing by comparing the sum of the transmission rates of all the data streams on the link and the link bandwidth, and adjust the data flow on the congestion link to the relatively idle link, which is helpful.
  • link congestion can be reduced to a certain extent, and the flexibility of data transmission is also improved.
  • the first network device includes:
  • the processing module is further configured to determine whether a second total rate of sending the data stream through the first link is greater than a bandwidth of the first link, where the second total rate is sent by the sending module a sum of rates of each of the plurality of data streams except the first data stream;
  • the processing module determines that the second total rate of sending the data stream via the first link is greater than the bandwidth of the first link, the processing module is further configured to determine the second data stream, the multiple data The flow includes the second data stream, where a second rate of the second data stream sent by the sending module is less than or equal to a second remaining bandwidth of the second link, and a value of the second remaining bandwidth a difference equal to a value of the first remaining bandwidth and a value of the first rate;
  • the processing module is further configured to switch the second data stream from the first link to the second link.
  • the first network device is further connected to the second network device by using a third link;
  • the processing module is further configured to determine whether a second total rate of sending the data stream through the first link is greater than a bandwidth of the first link, where the second total rate is sent by the sending module a sum of rates of each of the plurality of data streams except the first data stream;
  • the processing module determines that the second total rate of sending the data stream via the first link is greater than the bandwidth of the first link, the processing module is further configured to determine a third data stream, the multiple pieces of data The flow includes the third data stream, where a third rate of the third data stream sent by the sending module is less than or equal to a third remaining bandwidth of the third link, where the third remaining bandwidth indicator is The available bandwidth in the third link that is not occupied by the data stream;
  • the processing module is further configured to switch the third data stream from the first link to the third link.
  • the solution does not only include two links.
  • the third data stream may also be determined from the first link, so that the first network device sends the third data.
  • the third rate of the stream is less than or equal to the third remaining bandwidth of the third link.
  • the first link can be offloaded, which helps reduce the congestion of the first link and improve the bandwidth of the link other than the first link. Utilization rate.
  • the first data stream sent by the sending module is The rate is less than or equal to the first remaining bandwidth of the second link, and specifically includes:
  • the first rate of the first data stream sent by the sending module is less than or equal to the difference between the value of the first remaining bandwidth and the first threshold, and the first threshold indicates a security value of the switching data stream.
  • introducing a safety margin helps the link to avoid congestion after receiving the adjusted data stream.
  • the first network device further includes a receiving module
  • the sending module is further configured to send, by using the first link, a request message to the second network device, where the request message includes a link identifier, where the link identifier indicates the first link;
  • the receiving module is configured to receive, by using the first link, a response message of the request message from the second network device, where the response message includes the number of received messages, the number of received bytes, and the receiving a period, the receiving period indicating a difference between a time when the second network device receives the request message and a time when the previous request message of the request message is received, where the number of received messages indicates The number of received data packets by the second network device in the receiving period, where the number of received bytes indicates the number of bytes included in the data packet received by the second network device in the receiving period;
  • the processing module is further configured to determine a packet loss rate and a transmission rate of the first link according to the response packet;
  • the processing module is further configured to update a bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the load balancing mechanism between the network devices can be implemented according to the newly defined control packet format and the link bandwidth detection mechanism, that is, the delay and packet loss of the link can be measured in real time by sending the control packet. To detect link bandwidth.
  • the processing module determines, according to the response packet, the first link is lost.
  • Packet rate and transmission rate including:
  • the processing module is further configured to determine a number of sent packets in a sending period between sending the request message and sending a previous request message of the request message;
  • the processing module is further configured to determine the packet loss rate according to the number of the sent packets and the number of the received packets;
  • the processing module is further configured to determine the transmission rate according to the number of received bytes and the receiving period.
  • the packet loss rate and the transmission speed of the packet can be determined by comparing the packets in the sending process and the receiving process, thereby achieving the purpose of monitoring the communication quality of the link, and laying the foundation for the subsequent optimization and updating of the bandwidth.
  • the processing module is The packet rate and the transmission rate update the bandwidth of the first link, and specifically includes:
  • the processing module is further configured to: when the packet loss rate is not zero, or when the packet loss rate is zero and the transmission rate is greater than a bandwidth of the first link, the first chain The value of the bandwidth of the road is updated to the value of the transmission rate;
  • the processing module is further configured to maintain a value of a bandwidth of the first link when the packet loss rate is zero and the transmission rate is less than or equal to a bandwidth of the first link.
  • the bandwidth of the link can be optimized and updated, so that the bandwidth utilization of the link is improved and the congestion situation can be improved.
  • the first network device of the second aspect of the embodiment of the present application includes:
  • the processing module is further configured to determine whether a difference between a delay of the first link and a delay of the second link is less than a second threshold;
  • the sending module is further configured to use the first The link sends a first data packet to the second network device and a second data packet to the second network device via the second link, where the first data stream includes the first data packet Data message and second data message.
  • the size of the delay difference between the tunnels can be flexibly determined whether the flow-by-flow load balancing mode or the packet-by-packet load balancing mode is used, which provides multiple possibilities for the solution, so that each load balancing in different situations Both ways can maximize the overall transfer rate.
  • a third aspect of the present invention provides a data traffic processing system, wherein the data traffic processing system includes a first network device and a second network device, where the first network device and the second network device are hybrid accesses.
  • the data traffic processing system includes:
  • the second network device sends a plurality of data streams, where the first total rate indicates a sum of rates of the first network device sending each of the plurality of data streams;
  • the first network device determines the first data stream, the multiple The data stream includes the first data stream, and the first network device sends the first data stream at a first rate that is less than or equal to a first remaining bandwidth of the second link, where the first remaining bandwidth indicator is The available bandwidth in the second link that is not occupied by the data stream;
  • the first network device switches the first data flow from the first link to the second link
  • the second network device receives the first data stream through the second link.
  • the data traffic processing system further includes:
  • the second network device sends a response packet by using the first link, where the response packet includes the number of received packets, the number of received bytes, and a receiving period, where the receiving period indicates that the second network device receives a difference between a time of the request message and a time of receiving the previous request message of the request message, where the number of the received message indicates that the second network device receives the data message in the receiving period
  • the number of received bytes indicating the number of bytes included in the data message received by the second network device in the receiving period
  • the first network device updates the bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the data traffic processing system can also be used to perform the embodiments described in any one of the second aspect of the present application to the eighth embodiment of the second aspect.
  • the present application has the following advantages:
  • the embodiment of the present application can dynamically adjust the data flow load between network devices by monitoring the bandwidth of the link environment and the transmission rate of the packet, that is, the service flow on the congestion link can be reasonably adjusted to be relatively idle according to the congestion situation.
  • Links can reduce link congestion to a certain extent and help improve the bandwidth utilization of links between network devices.
  • FIG. 1 is a network topology diagram of a hybrid access network in an embodiment of the present application
  • FIG. 3 is an encapsulation format of a traditional control packet in a GRE binding tunnel according to an embodiment of the present disclosure
  • FIG. 5 is a schematic diagram of an embodiment of a data traffic processing method according to an embodiment of the present application.
  • FIG. 6 is a schematic diagram of another embodiment of a data traffic processing method according to an embodiment of the present application.
  • FIG. 7 is a schematic diagram of a scenario of a data traffic processing method according to an embodiment of the present application.
  • FIG. 8 is a schematic flowchart of a link bandwidth detection mechanism in an embodiment of the present application.
  • FIG. 9 is a schematic diagram of an interaction embodiment between a first network device and a second network device according to an embodiment of the present application.
  • FIG. 10 is a schematic diagram of sending control packets between a first network device and a second network device in the embodiment of the present application;
  • FIG. 11 is an encapsulation format of a newly defined request packet in a GRE binding tunnel according to an embodiment of the present disclosure
  • FIG. 12 is an encapsulation format of a newly defined response packet in a GRE binding tunnel according to an embodiment of the present disclosure
  • FIG. 13 is a schematic diagram of an embodiment of a first network device according to an embodiment of the present application.
  • FIG. 14 is a schematic diagram of another embodiment of a first network device according to an embodiment of the present application.
  • FIG. 15 is a schematic diagram of still another embodiment of a first network device according to an embodiment of the present application.
  • the present invention provides a data traffic processing method, which can dynamically adjust the data flow load between network devices, that is, can reasonably adjust the data flow on the congestion link to a relatively idle link according to the congestion situation, which can be certain To reduce the degree of link congestion, it helps to improve the bandwidth utilization of links between network devices.
  • FIG. 1 is a network topology diagram of a hybrid access network, which can be applied to transmit data between a hybrid access aggregation point (HAAP) and a home gateway (HG).
  • the HG may be a router or a Layer 3 switch, and the HG may be connected to the user terminal.
  • the user terminal may specifically include at least one of the following devices: a mobile terminal, a personal computer, or an Internet Protocol television (IPTV).
  • IPTV Internet Protocol television
  • Hybrid Access networks can be implemented based on a variety of different types of hybrid access methods, such as digital subscriber line (DSL) and long term evolution (LTE).
  • DSL digital subscriber line
  • LTE long term evolution
  • the LTE link can access the core network through the base station, and the DSL link establishes communication transmission between the HG and the HAAP by using the DSL access multiplexer and the broadband network gateway.
  • the Hybrid Access network is implemented between the HG and the HAAP through the tunnel binding of the Generic Routing Encapsulation (GRE) tunnel.
  • GRE tunnel binding is based on the GRE protocol to bind the transmission link between the HG and the HAAP to the GRE binding. tunnel.
  • an LTE link and a DSL link are included between the HG and the HAAP as an example, as shown in FIG. 1 .
  • the HG and the HAAP are not limited to the above two link forms, and may also include, for example, a third generation (3G, Third Generation) link, a fifth generation (5G, 5th generation), or a fiber optic connection. ) link etc.
  • the HG encapsulates the data packet into the GRE packet based on the GRE protocol, and sends the GRE packet to the HAAP through the DSL link, or the HAAP encapsulates the data packet into the GRE packet based on the GRE protocol, and sends the GRE to the HG through the DSL link.
  • the DSL link may also be referred to as a DSL GRE tunnel.
  • the HG encapsulates the data packet into the GRE packet based on the GRE protocol, and sends the GRE packet to the HAAP through the LTE link, or the HAAP encapsulates the data packet into the GRE packet based on the GRE protocol, and sends the GRE to the HG through the LTE link.
  • the LTE link may also be referred to as an LTE GRE tunnel.
  • the DSL GRE tunnel and the LTE GRE tunnel are bound to the GRE binding tunnel. Therefore, in the embodiment of the present application, the GRE binding tunnel includes a DSL GRE tunnel and an LTE GRE tunnel.
  • the data packet and the control packet transmitted on the GRE binding tunnel have a certain encapsulation format.
  • the encapsulation format of the data packet is as shown in Figure 2, including the media header and the outer network protocol (IP) header.
  • IP outer network protocol
  • the fields in the GRE header include flag bits (such as c, k, and s), reserved bits Reserved, version number ver, protocol type Protocol Type, sum check code checksum, keyword key, and message sequence number sequence number, each The detailed meaning of the fields can be found in the Internet Engineering Task Force (IETF) request for comments (RFC).
  • IETF Internet Engineering Task Force
  • the encapsulation format of the GRE Tunnel Bonding control packet is shown in Figure 3.
  • the standard GRE format header contains the flag bit, reserved bit, version number, protocol type, keyword, information type MsgType, attribute type Attribute Type, and attribute length Attribute. Length and attribute value Attribute Value, etc. The meaning of each field can be found in RFC 8157.
  • Data streams can be classified into video data streams, text data streams, and voice data streams according to service types.
  • Data flows can also be classified into low-priority data flows and high-priority data flows according to service priorities. Therefore, the data stream is a collection of multiple data packets belonging to the same feature attribute, and the data stream may include multiple data messages.
  • the data stream also includes a flow identifier that is used to identify the data flow. In this application, a data stream may also be referred to as a traffic flow.
  • packet-by-packet load balancing to transmit data, that is, load balancing in units of packets, and send packets in one data stream to different links for transmission, for example, A packet is transmitted on the first link, and the second packet is transmitted on the second link, and the first packet and the second packet belong to the same data stream.
  • the specific method is shown in Figure 4.
  • On the sending end all the packets will be assigned a sequence number, which is bound to the tunnel.
  • the network device decides to assign the current packet to some In a tunnel, the message is then transmitted through the tunnel.
  • the packets transmitted by different tunnels are in different order when they arrive at the receiving end.
  • the receiving end buffers the incoming packets to merge with the incoming packets, and then weights all the packets according to the sequence number of the packets. Sort.
  • the packet-by-packet load balancing method can show the advantage of high bandwidth when the network is in good condition. However, when the network status is not good and the transmission delay of different tunnels is large, it takes a lot of time for the receiving end to wait for all the packets to be aggregated. Therefore, this method will lower the overall throughput of the bonded tunnel. In severe cases, it may even occur.
  • the buffer overflows, which causes packets to be discarded and the application layer triggers retransmission.
  • the data flow processing method based on the flow-by-flow load balancing is provided in the embodiment of the present application.
  • the data traffic processing method is applicable to a hybrid access network, where the hybrid access network includes a first network device and a second network device, where the first network device is connected to the second network device via the first link and the second link. .
  • the HG is the first network device of the transmitting end
  • the HAAP is the second network device of the receiving end
  • the HG is the second network device of the receiving end.
  • a DSL link and an LTE link are taken as an example for description.
  • the first link is a DSL link and the second link is an LTE link.
  • the first link is an LTE link and the second link is a DSL link.
  • the flow-by-flow load balancing mode refers to the transmission in units of data streams, that is, the current multiple data streams of a user are allocated to different links of the bound tunnel. For example, the first data stream and the second data stream are transmitted through the first link, and the third data stream and the fourth data stream are transmitted through the second link.
  • the sum of the total rates of data flows carried on any one of the links exceeds the configured bandwidth of the link, or when the link is in a congestion state, select a data stream of the user on the link, and The stripe stream is redistributed to another most suitable link.
  • FIG. 5 A schematic flowchart of a data traffic processing method provided by an embodiment of the present application is shown in FIG. 5, and includes:
  • the first network device determines whether a first total rate of sending the data stream via the first link is greater than a bandwidth of the first link, where the first network device sends multiple data streams to the second network device via the first link.
  • the first total rate indicates a sum of rates of the first network device transmitting each of the plurality of data streams; the first network device may send the plurality of data streams to the second network device by using the first link, where A total rate indicates the sum of the rates at which the first network device transmits each of the plurality of data streams.
  • the rate of each of the multiple data streams that are sent refers to the required transmission rate of the data stream when the first network device sends the data stream. When the first network device sends the data stream, the data stream is sent according to the sending rate required by the data stream.
  • the actual transmission rate of the data stream on the first link depends on whether the first link can provide sufficient bandwidth. If the first link does not provide sufficient bandwidth, the actual transmission rate may be less than the transmission rate required for the data stream.
  • the bandwidth represents the maximum amount of data passed in a unit of time.
  • the bandwidth of the first link represents the maximum amount of data that passes through the cross-sectional area of the first link per unit time.
  • the bandwidth of the first link may also be referred to as the nominal bandwidth or the maximum available bandwidth of the first link.
  • the first network device determines the first data stream, where the multiple data streams include the first data stream, The first rate that the first network device sends the first data stream is less than or equal to the first remaining bandwidth of the second link, where the first remaining bandwidth indicates that the second link does not have the available bandwidth occupied by the data stream;
  • the first network device needs to compare the sum of the transmission rates expected by all the data streams on the link with the bandwidth of the link, and when the first network device determines that the sum of the transmission rates of all the data streams on the first link is greater than the When the bandwidth of the link indicates that the link cannot withstand such a large amount of traffic, the first network device needs to determine the first data stream, and the first rate of sending the first data stream is less than or equal to the first remaining of the second link. bandwidth.
  • the first remaining bandwidth refers to the bandwidth occupied by the data stream in the second link, and the remaining available bandwidth that is not occupied by the data stream. Therefore, if a data stream is occupied in the second link, the link bandwidth is subtracted from the data stream to obtain the remaining bandwidth.
  • the first type when the sum of the transmission rates of all the data streams on the first link is greater than the bandwidth of the link, the remaining bandwidth of the second link is determined first, and then determined according to the remaining bandwidth of the second link and the screening condition.
  • the first data stream on the first link, the first rate of transmitting the first data stream should be less than or equal to the first remaining bandwidth of the second link.
  • the first data stream and the second data may be simultaneously selected by using a combination of arrangement and combination.
  • Link The transmission rate of each data stream on the first link and the remaining bandwidth of each remaining link are arranged and combined, and the first data stream and the second link satisfying the condition are selected therefrom.
  • each link remaining refers to a link between the HG and the HAAP except the first link.
  • FIG. 6 is a schematic flowchart of a data traffic processing method according to an embodiment of the present application:
  • the first network device determines a transmission rate of each data stream on the first link.
  • the transmission rate refers to the transmission rate that the data stream is required to reach.
  • the transmission speed of the jth stream on link i can be written as R ij .
  • the first network device determines remaining bandwidth of each link remaining.
  • the first network device needs to determine the remaining bandwidth of each link (excluding the first link), if the first network device knows the bandwidth of the link (the bandwidth may be the rated bandwidth of the transmission link or the access network device) If the bandwidth is not allocated, the bandwidth can be directly determined. If the bandwidth is not configured, refer to the implementation manner of the link bandwidth detection mechanism in the embodiment of the present application to determine the link bandwidth. When a data stream occupies the link bandwidth, the remaining bandwidth is equal to the link bandwidth minus the transmission rate of the occupied data stream; when no data stream occupies the link bandwidth, the remaining bandwidth is the link bandwidth.
  • the bandwidth of the link, R ix is the Xth traffic flow transmitted by the first link.
  • the first network device determines that R ix and C ry satisfying C ry -R ix ⁇ 0 and closest to 0 are the first data stream and the second link. It is calculated that the flow F 12 should be assigned to the link L2. After this adjustment, there was no traffic overflow on all three links.
  • the first network device switches the first data stream from the first link to the second link.
  • the embodiment of the present application can dynamically adjust the load balancing by comparing the sum of the transmission rates of all the data streams on the link and the link bandwidth, and adjust the data flow on the congestion link to the relatively idle link, which is helpful.
  • link congestion can be reduced to a certain extent, and the flexibility of data transmission is also improved.
  • the congestion condition of the first link is improved.
  • the first network device continues to determine whether a total rate of sending the data stream via the first link is greater than a bandwidth of the first link. If the first network device determines that the total rate of the first link transmission data stream is still greater than the bandwidth of the first link, the first network device may adjust the first link according to the foregoing implementation manner of the embodiment of the present application.
  • the second data stream in .
  • the first network device after the first offloading, the first network device needs to perform another judgment to determine whether the first link still has congestion. First, the first network device determines whether the second total rate of sending the data stream via the first link is greater than the bandwidth of the first link, wherein the second total rate indicates that the first network device sends the first data in the plurality of data streams. The sum of the rates of each data stream outside the stream. That is, the second total rate refers to the sum of the rates at which each data stream other than the first data stream is expected to be reached in the first link.
  • the first network device determines the second data stream, the plurality of data streams including the second data stream.
  • the second rate at which the first network device sends the second data stream is less than or equal to the second remaining bandwidth of the second link. Since the first data stream is switched to the second link during the first adjustment, the value of the second remaining bandwidth should be equal to the difference between the value of the first remaining bandwidth and the value of the first rate.
  • the first network device may determine, according to the implementation method provided by the foregoing embodiment, whether to adjust the second data flow to the second link according to a value of the second remaining bandwidth and a size of the second data stream transmission rate.
  • the first network device switches the second data flow from the first link to the second link.
  • the embodiment of the present application not only includes two links.
  • the third data stream may also be determined from the first link, and the first network device sends the third.
  • the third rate of the data stream is less than or equal to the third remaining bandwidth of the third link.
  • the second total rate of the first link sending data stream is greater than the first link.
  • the third network device may also determine the third data stream, the third rate at which the first network device sends the third data stream is less than or equal to the third remaining bandwidth of the third link, and the third remaining bandwidth indicates the third There is no available bandwidth in the link that is occupied by the data stream.
  • the embodiment of the present application is similar to the first alternative embodiment, and the purpose is to alleviate the congestion of the first link.
  • the remaining bandwidth of the second link is less than the transmission rate of the second data stream of the first link, there is also a third link capable of accepting the offload of the first link.
  • the third rate at which the first network device sends the third data stream is less than or equal to the third remaining bandwidth of the third link indicates that the third link is capable of receiving the third data stream. It can be understood that, in the embodiment of the present application, as long as the remaining bandwidth can withstand the offloaded data stream, the first link can be offloaded, which helps reduce the congestion of the first link and improves the congestion except the first link. Bandwidth utilization of the link.
  • a third optional embodiment of the data traffic processing method provided by the embodiment of the present invention is provided on the basis of the foregoing embodiment. It should be understood that this embodiment can be applied to step 102 of the foregoing manner, and in particular, the safety margin ⁇ is introduced in the aforementioned judgment condition C ry -R ix ⁇ 0. In this embodiment, introducing a safety margin helps the link to avoid congestion after receiving the adjusted data stream.
  • the two methods for determining the first data stream and the second link mentioned in the foregoing step 102 can be implemented as follows: (the first data stream and the second chain) Road as an example)
  • the first type when the sum of the transmission rates of all the data streams on the first link is greater than the bandwidth of the link, determining the first data stream on the first link according to the bandwidth of the second link, and the screening condition becomes The first rate of the first data stream should be less than or equal to the sum of the first remaining bandwidth and the safety margin.
  • the first data stream and the second link are simultaneously screened by means of permutation and combination and the filtering condition C ry -R ix - ⁇ 0, as follows: the transmission rate of all data streams on the first link and The remaining bandwidths of all the remaining links are arranged and substituted into C ry -R ix - ⁇ 0, and R ix and C ry satisfying the condition are selected, that is, the first data stream and the second link.
  • FIG. 8 is a schematic flowchart of a link bandwidth detection mechanism.
  • FIG. 9 is a schematic diagram of an interaction process of the first network device and the second network device based on FIG. 8.
  • FIG. 10 is a schematic diagram of a control message used to implement a link bandwidth detection mechanism in a multi-path transmission scenario.
  • a path is taken as an example to illustrate the process of the bandwidth detection mechanism. It can be understood that other paths between network devices can also utilize the bandwidth detection mechanism to determine the bandwidth.
  • the request message and the response message are both control messages.
  • the control message can detect the link transmission rate and the packet loss rate in advance, thereby determining the bandwidth of the link.
  • the first network device sends a request packet to the second network device by using the first link, where the request packet includes a link identifier, where the link identifier is used to indicate the first link.
  • the first network device first sends a request message to the second network device.
  • the request packet is a control packet.
  • the format header of the control packet in the embodiment of the present application is different from the traditional control packet format header. See FIG. 3 and FIG. 11 , the difference is that the new control packet is defined in the message. New attribute types, attribute lengths, and attribute values.
  • the newly defined attribute value field may specifically include a link identifier 1 for marking the uniqueness of the link and corresponding request.
  • the response packet of the packet is also returned along the original path according to the link identifier.
  • the field of the attribute value may further include a sequence number i of the message, where the role of the sequence number is used to identify the message.
  • the sequence number included in a request message is i
  • the sequence number of each next request message is i+1. Since the request message contains a sequence number, the order of sending the request message periodically does not affect the order between the request messages.
  • the first network device sends the first request packet and the second request packet as an example and is specifically described in conjunction with FIG. 9:
  • Steps 401 to 402 in FIG. 9 may be specifically implemented in step 301:
  • the first network device sends a first request packet, a second request packet, and first data.
  • first The data is data sent by the first network device to the second network device during the transmission period.
  • the first network device records a sending period and an attribute of the first data.
  • the attribute includes how many data packets (p si ) and how many bytes (b si ) are sent by the first network device to the second network device through the path during the sending period.
  • the attributes of the first data are the basis for calculating the packet loss rate and transmission speed thereafter.
  • the second network device receives the first request request message, the second request message, and the second data.
  • the time for receiving the second request message is the fourth time
  • the time period between the third time and the fourth time is the receiving period. Then, the second data is the data received by the second network device during the receiving period.
  • the second data received by the second network device may be the same as or different from the first data. If there is no packet loss during the transmission, the second data is the first data, and if there is a packet loss, the second data is different from the first data. Information such as packet loss rate and transmission speed can be calculated by comparing the attributes of the first data and the second data.
  • the second network device records the receiving period and the attribute of the second data, and sends the receiving period and the attribute of the second data to the first network device by using the response message;
  • the attribute of the second data refers to how many data packets (p ri ) and how many bytes (b ri ) the second network device receives from the first network device during the receiving period.
  • the second network device sends the information of the receiving period and the second data attribute to the first network device by using the response message.
  • step 301 After the first network device sends a request message to the second network device via the first link, in step 301:
  • the first network device receives the response packet from the second network device by using the first link, where the response packet includes the number of received packets, the number of received bytes, and the receiving period, and the receiving period indicates that the second network device receives the request packet.
  • the difference between the time of the text and the time of receiving the previous request message of the request message, the number of received messages indicates the number of data packets received by the second network device during the receiving period, and the number of received bytes indicates the number of received cycles.
  • the number of bytes included in the data packet received by the network device
  • the attribute value in the newly defined response message includes information such as the sequence number i and the link identifier 1, the number of packets received by the second network device p ri , the number of bytes received b ri , and the like, as shown in FIG. 12 .
  • the first network device determines, according to the response packet, a packet loss rate and a transmission rate of the first link.
  • the first network device may calculate a packet loss rate according to specific information in the response packet, for example, an attribute of the first data sent by the first network device in the sending period and an attribute of the second data received by the second network device in the receiving period. And transmission rate.
  • the first network device updates a bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the bandwidth of the link can be optimized and updated, so that the bandwidth utilization of the link is improved and the congestion situation can be improved.
  • the load balancing mechanism between the network devices can be implemented according to the newly defined control packet format and the link bandwidth detection mechanism, that is, the delay and packet loss of the link can be measured in real time by sending the control packet. To detect link bandwidth.
  • the first network device calculates a packet loss rate and a transmission speed according to the following formula:
  • Li (p si -p ri )/p si ;
  • L i is the packet loss rate of the data packet in the transmission period on the link
  • p si is the number of data packets sent by the first network device to the second network device through the path in the transmission period
  • p ri is the transmission period.
  • the number of data packets sent by the first network device received by the second network device, R i is the transmission speed of the message, and t is the time difference of the receiving period, that is, the third time to the fourth time.
  • the first network device updates the bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the method is as follows: (L i ⁇ 0 indicates that the link is lost)
  • the first network device updates the value of the bandwidth of the first link to the value of the transmission rate
  • the first network device When the packet loss rate is zero and the transmission rate is less than or equal to the bandwidth of the first link, the first network device maintains the value of the bandwidth of the first link.
  • the flow-by-flow load balancing mode is introduced, which helps to improve the bandwidth utilization of links between network devices when the delay of tunnel transmission is large.
  • Data can also be transmitted in a packet-by-packet load balancing manner when the delay of tunnel transmission is small.
  • the first link and the second link are the links that are respectively bound to the sequence numbers in the corresponding packets.
  • the size of the delay difference between the tunnels can be flexibly determined whether the flow-by-flow load balancing mode or the packet-by-packet load balancing mode is used, which provides multiple possibilities for the solution, so that each load balancing in different situations Both ways can maximize the overall transfer rate.
  • the first network device is applied in a hybrid access network, and the first network device includes a processing module 402 and a sending module 401.
  • the first network device provided in this embodiment of the present application is as shown in FIG. 13:
  • the sending module 401 is configured to send, by using the first link, multiple data streams to the second network device;
  • the processing module 402 is configured to determine whether a first total rate of sending the data stream by using the first link is greater than a bandwidth of the first link, where the first total rate indicates that the sending module 401 sends The sum of the rates of each of the plurality of data streams;
  • the processing module 402 determines that the first total rate of sending the data stream via the first link is greater than the bandwidth of the first link, the processing module 402 is further configured to determine the first data stream, where the The first data stream includes the first data stream, where the first rate of the first data stream sent by the sending module 401 is less than or equal to a first remaining bandwidth of the second link, the first remaining The bandwidth indicates that the second link has no available bandwidth occupied by the data stream;
  • the processing module 402 is further configured to switch the first data stream from the first link to the second link.
  • another embodiment of the present application includes:
  • the processing module 402 is further configured to determine whether a second total rate of sending the data stream via the first link is greater than a bandwidth of the first link, where the second total rate indicates that the sending module 401 sends The sum of the rates of each of the plurality of data streams except the first data stream;
  • the processing module 402 determines that the second total rate of transmitting the data stream via the first link is greater than the bandwidth of the first link, the processing module 402 is further configured to determine a second data stream, where the The second data stream includes the second data stream, where the second rate of the second data stream sent by the sending module 401 is less than or equal to a second remaining bandwidth of the second link, the second remaining The bandwidth is equal to the first remaining bandwidth minus the first rate;
  • the processing module 402 is further configured to switch the second data stream from the first link to the second link.
  • the first network device is further connected to the second network device by using a third link, including:
  • the processing module 402 is further configured to determine whether a second total rate of sending the data stream by using the first link is greater than a bandwidth of the first link, where the second total rate indicates the sending module 401 a sum of rates of each of the plurality of data streams transmitted except the first data stream;
  • the processing module 402 determines that the second total rate of transmitting the data stream via the first link is greater than the bandwidth of the first link, the processing module 402 is further configured to determine a third data stream, where the The third data stream includes the third data stream, where the third rate of the third data stream sent by the sending module 401 is less than or equal to a third remaining bandwidth of the third link, and the third remaining The bandwidth indicates an available bandwidth in the third link that is not occupied by the data stream;
  • the processing module 402 is further configured to switch the third data stream from the first link to the third link.
  • the first rate of the first data stream sent by the sending module 401 is less than or equal to the first remaining bandwidth of the second link. Specifically, including:
  • the first rate of the first data stream sent by the sending module 401 is less than or equal to the difference between the value of the first remaining bandwidth and the first threshold, and the first threshold indicates a security value of the switching data stream.
  • the first network device further includes a receiving module 403:
  • the sending module 401 is further configured to send, by using the first link, a request message to the second network device, where the request message includes a link identifier, where the link identifier indicates the first link ;
  • the receiving module 403 is configured to receive, by using the first link, a response packet of the request packet from the second network device, where the response packet includes the number of received packets, the number of received bytes, and a receiving period, where the receiving period indicates a difference between a time when the second network device receives the request message and a time when the previous request message of the request message is received, and the received message quantity indication Receiving, by the second network device, the number of data packets in the receiving period, where the number of received bytes indicates the number of bytes included in the data packet received by the second network device in the receiving period;
  • the processing module 402 is further configured to determine, according to the response message, a packet loss rate and a transmission rate of the first link.
  • the processing module 402 is further configured to update a bandwidth of the first link according to the packet loss rate and the transmission rate.
  • the processing module 402 determines, according to the response packet, a packet loss rate and a transmission rate of the first link, where include:
  • the processing module 402 is further configured to determine a number of sent packets in a sending period between sending the request message and sending a previous request message of the request message;
  • the processing module 402 is further configured to determine the packet loss rate according to the number of the sent packets and the number of the received packets;
  • the processing module 402 is further configured to determine the transmission rate according to the number of received bytes and the receiving period.
  • the processing module 402 updates the bandwidth of the first link according to the packet loss rate and the transmission rate. Specifically include:
  • the processing module 402 is further configured to: when the packet loss rate is not zero, or when the packet loss rate is zero and the transmission rate is greater than a bandwidth of the first link, the first The value of the bandwidth of the link is updated to the value of the transmission rate;
  • the processing module 402 is further configured to maintain a value of a bandwidth of the first link when the packet loss rate is zero and the transmission rate is less than or equal to a bandwidth of the first link.
  • another embodiment of the present application includes:
  • the processing module 402 is further configured to determine whether a difference between a delay of the first link and a delay of the second link is less than a second threshold;
  • the sending module 401 is further configured to: when the processing module 402 determines that a difference between a delay of the first link and a delay of the second link is less than the second threshold, Transmitting, by the first link, the first data packet to the second network device and the second data packet to the second network device via the second link, where the first data stream includes the The first data message and the second data message.
  • FIG. 15 is a schematic structural diagram of hardware of a first network device 1100 according to an embodiment of the present application.
  • the first network device 1100 shown in FIG. 15 can perform the corresponding steps performed by the first network device in the method of the above embodiment.
  • the first network device 1100 includes a processor 1101, a memory 1102, an interface 1103, and a bus 1104.
  • the interface 1103 can be implemented by using a wireless or wired manner, and specifically can be a network card.
  • the above processor 1101, memory 1102, and interface 1103 are connected by a bus 1104.
  • the interface 1103 may specifically include a transmitter and a receiver, configured to send and receive information between the first network device and the second network device in the foregoing embodiment.
  • the interface 1103 is configured to support sending a data stream to the second network device.
  • the interface 1103 is used to support the process S101 of FIG.
  • the processor 1101 is configured to perform processing performed by the first network device in the foregoing embodiment.
  • the processor 1101 is configured to send, by the first link, a first total rate of the data stream that is greater than a bandwidth of the first link; to determine the first data stream; to use the first data stream Switching from the first link to the second link; and/or other processes for the techniques described herein.
  • the memory 1102 includes an operating system 11021 and an application 11022 for storing programs, codes, or instructions that can be executed when a processor or a hardware device executes the programs, code, or instructions.
  • the memory 1102 can include a read-only memory (English: Read-only Memory, abbreviated as ROM) and a random access memory (English: Random Access Memory, abbreviation: RAM).
  • ROM Read-only Memory
  • RAM Random Access Memory
  • the first network device 1100 When the first network device 1100 needs to be run, booting is performed by the BIOS in the ROM or the bootloader booting system in the embedded system, and the first network device 1100 is booted into a normal running state. After the first network device 1100 enters the normal running state, the application program and the operating system running in the RAM are executed, thereby completing the processing procedure involving the first network device in the method embodiment.
  • FIG. 15 only shows a simplified design of the first network device 1100.
  • the first network device can contain any number of interfaces, processors or memories.
  • the embodiment of the present application provides a computer storage medium for storing computer software instructions used by the first network device, which includes a program designed to execute the foregoing method embodiments.
  • the embodiment of the present application further includes a data traffic processing system, where the data traffic processing system includes a first network device and a second network device, where the first network device is the first one in FIG. 13 or FIG. 14 or FIG. Internet equipment.
  • the steps of a method or algorithm described in connection with the present disclosure may be implemented in a hardware or may be implemented by a processor executing software instructions.
  • the software instructions may be comprised of corresponding software modules that may be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, removable hard disk, CD-ROM, or any other form of storage well known in the art.
  • An exemplary storage medium is coupled to the processor to enable the processor to read information from, and write information to, the storage medium.
  • the storage medium can also be an integral part of the processor.
  • the processor and the storage medium can be located in an ASIC. Additionally, the ASIC can be located in the user equipment.
  • the processor and the storage medium may also reside as discrete components in the user equipment.
  • the functions described herein can be implemented in hardware, software, firmware, or any combination thereof.
  • the functions may be stored in a computer readable medium or transmitted as one or more instructions or code on a computer readable medium.
  • Computer readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one location to another.
  • a storage medium may be any available media that can be accessed by a general purpose or special purpose computer.

Landscapes

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

Abstract

本申请公开了一种数据流量处理方法,数据流量处理方法应用在混合接入网络中,混合接入网络包括第一网络设备和第二网络设备,第一网络设备经由第一链路和第二链路与第二网络设备连接,方法包括:首先第一网络设备确定经由第一链路发送数据流的第一总速率是否大于第一链路的带宽;当确定经由第一链路发送数据流的第一总速率大于第一链路的带宽时,第一网络设备确定第一数据流,发送第一数据流的第一速率小于或等于第二链路的第一剩余带宽,第一剩余带宽指示第二链路中没有被数据流占用的可用带宽;最后第一网络设备将第一数据流由第一链路切换到第二链路。通过上述方式,可实现网络设备间数据流负载的动态调整,有助于提高链路的带宽利用率。

Description

一种数据流量处理方法及相关网络设备
本申请要求于2018年03月22日提交中国专利局、申请号为201810244236.8、发明名称为“一种数据流量处理方法及相关网络设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,尤其涉及一种数据流量处理方法及相关网络设备。
背景技术
混合接入(hybrid access)网络允许用户使用不同类型的接入方式接入互联网。hybrid access网络包括家庭网关(HG,home gateway)和混合接入汇聚节点(HAAP,hybrid access aggregation point)。HAAP用于实现每个HG的用户绑定不同类型的接入方式混合接入网络。其中,不同类型的接入方式可以包括数字用户线路(DSL,digital subscriber line)和长期演进(LTE,long term evolution)等方式。
在hybrid access网络中,用户通过HG拨号,与HAAP建立绑定隧道(即LTE隧道、DSL隧道),通过上述隧道进行数据的传输。HG和HAAP之间在成功建立两种隧道之后,会自动开启双隧道绑定的模式并对用户的业务流量逐包进行分流,即一条业务流中的报文可能被发送到不同的隧道上进行传输。
由于每条隧道上的传输时延不同,因此报文在经过隧道达到接收端时会出现时延差的问题,当其中任意一条绑定隧道出现拥塞情况时,已经通过另一条隧道到达接收端的报文需要等待,导致一条链路的传输时延会影响整个传输过程,拉低隧道的整体吞吐量,严重时甚至还会发生缓存溢出,导致报文丢失的问题。
发明内容
本申请提供了一种数据流量处理方法,可通过监控链路环境的带宽和数据流的传输速率,实现网络设备间数据流负载的动态调整,因此有助于提高网络设备间链路的带宽利用率。
本发明第一方面提供了一种数据流量处理方法,该方法可应用于混合接入网络中,混合接入网络包括第一网络设备和第二网络设备,所述第一网络设备经由第一链路和第二链路与所述第二网络设备连接,所述方法包括:
所述第一网络设备确定经由所述第一链路发送数据流的第一总速率是否大于所述第一链路的带宽,其中,所述第一网络设备经由所述第一链路向所述第二网络设备发送多条数据流,所述第一总速率指示所述第一网络设备发送所述多条数据流中的每条数据流的速率之和,而每条数据流的速率是指第一网络设备发送该条数据流时,该条数据流要求达到的发送速率,第一网络设备在发送该条数据流时,会根据该条数据流要求的发送速率发送该条数据流;
当所述第一网络设备确定经由所述第一链路发送数据流的第一总速率大于所述第一链路的带宽时,说明第一链路的带宽承受不了该链路上所有数据流都按照期望的速率进行传输,因此所述第一网络设备先确定需要进行分流调整的第一数据流,所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,第一剩余带宽指示第二链路中没有被数据流占用的可用带宽,因此若第二链路中有数据流被占用,则应用链路带宽减去数据流的传输速率得到剩余带宽,该链路带宽也可以被称为第一链路的额定带宽或最大可用带宽;
其中确定第一数据流的方式可以有多种,在此介绍两种:第一种,先确定第二链路的剩余带宽,再根据第二链路的剩余带宽和筛选条件选出第一数据流;第二种,将第一链路上所有数据流的发送速率和余下每条链路的剩余带宽进行排列组合,然后代入筛选条件同时挑选出第一数据流和第二链路;
在第一网络设备需先确定第一数据流之后将所述第一数据流由所述第一链路切换到所述第二链路。
本申请实施例可通过对比链路上所有数据流的传输速率之和与链路带宽的情况对负载均衡进行动态调整,将拥塞链路上的数据流调整至相对空闲的链路上,有助于提高网络设备间链路的带宽利用率,可在一定程度上减少链路拥塞的情况,也提高了数据传输的灵活性。
将第一链路上的第一数据流切换到第二链路上之后,第一链路的拥塞情况得到改善。
第一网络设备继续确定经由第一链路发送数据流的总速率是否大于第一链路的带宽。如果所述第一网络设备确定第一链路发送数据流的总速率仍然大于第一链路的带宽,所述第一网络设备可以按照上述实现方式调整所述第一链路中的第二数据流。
结合本申请实施例第一方面,在本申请实施例第一方面的第一种实施方式中,所述方法还包括:
所述第一网络设备确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述第一网络设备发送所述多条数据流中除所述第一数据流之外的每条数据流的速率之和。也就是说,第二总速率指的是第一链路中除去第一数据流之外的每条数据流期望达到的速率之和;
当所述第一网络设备确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述第一网络设备确定第二数据流,所述多条数据流包括所述第二数据流,所述第一网络设备发送所述第二数据流的第二速率小于或等于所述第二链路的第二剩余带宽,由于第一次调整时将第一数据流切换至第二链路上,因此第二剩余带宽等于第一剩余带宽减去第一速率;
所述第一网络设备将所述第二数据流由所述第一链路切换到所述第二链路。
本申请实施例中在第一次对负载均衡进行动态调整之后,再次判断该链路是否还存在拥塞的情况,即第一链路的第二总速率是否大于该链路的带宽,若大于,则继续进行调整,有助于进一步提供链路利用率和减少链路拥塞。
结合本申请实施例第一方面,在本申请实施例第一方面的第二种实施方式中,所述第一网络设备还经由第三链路与所述第二网络设备连接,所述方法还包括:
所述第一网络设备确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述第一网络设备发送所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
当所述第一网络设备确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述第一网络设备确定第三数据流,所述多条数据流包括所述第三数据流,所述第一网络设备发送所述第三数据流的第三速率小于或等于所述第三链路的第三剩余带宽,所述第三剩余带宽指示所述第三链路中没有被数据流占用的可用带宽;
所述第一网络设备将所述第三数据流由所述第一链路切换到所述第三链路。
可以理解的是,本申请实施例中不仅仅包括两条链路的情况,在具有多条链路的情况 下,还可从第一链路中确定第三数据流,使得第一网络设备发送第三数据流的第三速率小于或等于第三链路的第三剩余带宽。在本方案中只要有剩余带宽能够承受分流的数据流,都可以为第一链路进行分流,有助于减少第一链路的拥塞情况和提高除第一链路之外的链路的带宽利用率。
结合本申请实施例第一方面至第一方面的的第二种实施方式,在本申请实施例第一方面的第三种实施方式中,所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述方法还包括:
所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差,所述第一阈值指示切换数据流的安全值,该第一阈值的存在有助于链路在接收被调整的数据流后,避免发生拥塞。
在引入安全裕量时只需将前述实施方式中提及的确定第一数据流和第二链路的两种方法进行简单变形即可,即将筛选条件变为第一网络设备发送所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差。
在本实施例中,引入安全裕量有助于链路在接收被调整的数据流后,避免发生拥塞。
结合本申请实施例第一方面至第一方面的的第三种实施方式,在本申请实施例第一方面的第四种实施方式中,所述方法还包括:
所述第一网络设备经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路。当第一网络设备仅向第二网络设备发送两个请求报文时,该请求报文的属性值字段中只包含链路标识也能实现本方案所要达到的效果;
所述第一网络设备经由所述第一链路接收来自所述第二网络设备的所述请求报文的应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
所述第一网络设备根据所述应答报文确定所述第一链路的丢包率和传输速率;
所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽。
本申请实施例中根据新定义的控制报文格式以及链路带宽的探测机制可实现网络设备间的负载均衡,即通过发送控制报文的形式能够即时测量链路的时延、丢包等情况,从而探测链路带宽。
结合本申请实施例第一方面的第四种实施方式,在本申请实施例第一方面的第五种实施方式中,所述第一网络设备根据所述应答报文确定所述第一链路的丢包率和传输速率,包括:
所述第一网络设备确定发送所述请求报文与发送所述请求报文的前一个请求报文之间的发送周期中的发送报文数量;
所述第一网络设备根据所述发送报文数量和所述接收报文数量确定所述丢包率,可以理解的是,发送报文的数量和接收报文的数量相等时,丢包率为零,当发送报文的数量和接收报文的数量不相等时,丢包率也就不为零;
所述第一网络设备根据接收字节数量和所述接收周期确定所述传输速率。
通过发送过程中和接收过程中报文情况的对比可确定丢包率和报文的传输速度,从而达到监测该链路通信质量的目的,并为后续优化更新带宽打下基础。
结合本申请实施例第一方面的第四种实施方式或第一方面的的第五种实施方式,在本申请实施例第一方面的第六种实施方式中,所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽,包括:
当所述丢包率不为零时,或者当所述丢包率为零并且所述传输速率大于所述第一链路的带宽时,所述第一网络设备将所述第一链路的带宽的值更新为所述传输速率的值;
当所述丢包率为零并且所述传输速率小于或等于所述第一链路的带宽时,所述第一网络设备保持所述第一链路的带宽的值。
通过丢包率和传输速度的情况可以对链路的带宽进行优化更新,使得链路的带宽利用率提高,拥塞情况也可得到改善。
结合本申请实施例第一方面的第四种实施方式至第一方面的的第六种实施方式,在本申请实施例第一方面的第七种实施方式中,所述请求报文还包括序列号,所述序列号指示所述请求报文,所述应答报文包括所述序列号。
当第一网络设备仅向第二网络设备发送两个请求报文时,该请求报文的属性值字段中仅包含链路标识也能实现本方案;但是当第一网络设备周期性地发送大量请求报文时,请求报文的属性值字段中应包含链路标识和序列号,该序列号的作用用于标识报文的先后顺序。
结合本申请实施例第一方面至第一方面的的第七种实施方式,在本申请实施例第一方面的第八种实施方式中,所述方法还包括:
所述第一网络设备确定所述第一链路的时延和所述第二链路的时延之间的差值是否小于第二阈值;
当所述第一网络设备确定所述第一链路的时延和所述第二链路的时延之间的差值小于所述第二阈值时,所述第一网络设备经由所述第一链路向所述第二网络设备发送第一数据报文和经由所述第二链路向所述第二网络设备发送第二数据报文,其中,所述第一数据流包括所述第一数据报文和第二数据报文。
本申请实施例中通过判断隧道之间时延差的大小可灵活决定是用逐流负载均衡方式还是用逐包负载均衡方式,为方案提供了多种可能性,使得不同情况下每种负载均衡方式都能够发挥最大优势,从而提高整体的传输速率。
结合本申请实施例第一方面至第一方面的的第八种实施方式,在本申请实施例第一方面的第九种实施方式中,所述第一网络设备是家庭网关HG设备和所述第二网络设备是混合接入汇聚节点HAAP设备;或者,所述第一网络设备是HAAP设备和所述第二网络设备是HG设备。
本方案中没有具体限制第一网络设备和第二网络设备的种类,可适用于任意传输数据流的网络设备之间,体现了本实施方案的普遍性和实用性。
本发明第二方面提供了一种第一网络设备,所述第一网络设备应用在混合接入网络中,所述混合接入网络还包括第二网络设备,所述第一网络设备经由第一链路和第二链路与所述第二网络设备连接,所述第一网络设备包括处理模块和发送模块;
所述发送模块,用于经由所述第一链路向所述第二网络设备发送多条数据流;
所述处理模块,用于确定经由所述第一链路发送数据流的第一总速率是否大于所述第 一链路的带宽,其中,所述第一总速率指示所述发送模块发送的所述多条数据流中的每条数据流的速率之和;
当所述处理模块确定经由所述第一链路发送数据流的第一总速率大于所述第一链路的带宽时,所述处理模块还用于确定第一数据流,所述多条数据流包括所述第一数据流,其中,所述发送模块发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述第一剩余带宽指示所述第二链路中没有被数据流占用的可用带宽;
所述处理模块,还用于将所述第一数据流由所述第一链路切换到所述第二链路。
本申请实施例可通过对比链路上所有数据流的传输速率之和与链路带宽的情况对负载均衡进行动态调整,将拥塞链路上的数据流调整至相对空闲的链路上,有助于提高网络设备间链路的带宽利用率,可在一定程度上减少链路拥塞的情况,也提高了数据传输的灵活性。
结合本申请实施例第二方面,在本申请实施例第二方面的第一种实施方式中,所述第一网络设备包括:
所述处理模块,还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
当所述处理模块确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块还用于确定第二数据流,所述多条数据流包括所述第二数据流,其中,所述发送模块发送的所述第二数据流的第二速率小于或等于所述第二链路的第二剩余带宽,所述第二剩余带宽的值等于所述第一剩余带宽的值与所述第一速率的值的差;
所述处理模块还用于将所述第二数据流由所述第一链路切换到所述第二链路。
本申请实施例中在第一次对负载均衡进行动态调整之后,再次判断该链路是否还存在拥塞的情况,即第一链路的第二总速率是否大于该链路的带宽,若大于,则继续进行调整,有助于进一步提供链路利用率和减少链路拥塞。
结合本申请实施例第二方面,在本申请实施例第二方面的第二种实施方式中,所述第一网络设备还经由第三链路与所述第二网络设备连接;
所述处理模块,还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
当所述处理模块确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块还用于确定第三数据流,所述多条数据流包括所述第三数据流,其中,所述发送模块发送的所述第三数据流的第三速率小于或等于所述第三链路的第三剩余带宽,所述第三剩余带宽指示所述第三链路中没有被数据流占用的可用带宽;
所述处理模块,还用于将所述第三数据流由所述第一链路切换到所述第三链路。
以理解的是,本方案不仅仅包括两条链路的情况,在具有多条链路的情况下,还可从第一链路中确定第三数据流,使得第一网络设备发送第三数据流的第三速率小于或等于第三链路的第三剩余带宽。在本方案中只要有剩余带宽能够承受分流的数据流,都可以为第一链路进行分流,有助于减少第一链路的拥塞情况和提高除第一链路之外的链路的带宽利用率。
结合本申请实施例第二方面至第二方面的的第二种实施方式,在本申请实施例第二方 面的第三种实施方式中,所述发送模块发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,具体包括:
所述发送模块发送的所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差,所述第一阈值指示切换数据流的安全值。
在本实施例中,引入安全裕量有助于链路在接收被调整的数据流后,避免发生拥塞。
结合本申请实施例第二方面至第二方面的的第三种实施方式,在本申请实施例第二方面的第四种实施方式中,所述第一网络设备还包接收模块;
所述发送模块,还用于经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路;
所述接收模块,用于经由所述第一链路接收来自所述第二网络设备的所述请求报文的应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
所述处理模块,还用于根据所述应答报文确定所述第一链路的丢包率和传输速率;
所述处理模块,还用于根据所述丢包率和所述传输速率更新所述第一链路的带宽。
本申请实施例中根据新定义的控制报文格式以及链路带宽的探测机制可实现网络设备间的负载均衡,即通过发送控制报文的形式能够即时测量链路的时延、丢包等情况,从而探测链路带宽。
结合本申请实施例第二方面的第四种实施方式,在本申请实施例第二方面的第五种实施方式中,所述处理模块根据所述应答报文确定所述第一链路的丢包率和传输速率,具体包括:
所述处理模块,还用于确定发送所述请求报文与发送所述请求报文的前一个请求报文之间的发送周期中的发送报文数量;
所述处理模块,还用于根据所述发送报文数量和所述接收报文数量确定所述丢包率;
所述处理模块,还用于根据接收字节数量和所述接收周期确定所述传输速率。
通过发送过程中和接收过程中报文情况的对比可确定丢包率和报文的传输速度,从而达到监测该链路通信质量的目的,并为后续优化更新带宽打下基础。
结合本申请实施例第二方面的第四种实施方式或第二方面的的第五种实施方式,在本申请实施例第二方面的第六种实施方式中,所述处理模块根据所述丢包率和所述传输速率更新所述第一链路的带宽,具体包括:
所述处理模块,还用于当所述丢包率不为零时,或者当所述丢包率为零并且所述传输速率大于所述第一链路的带宽时,将所述第一链路的带宽的值更新为所述传输速率的值;
所述处理模块,还用于当所述丢包率为零并且所述传输速率小于或等于所述第一链路的带宽时,保持所述第一链路的带宽的值。
通过丢包率和传输速度的情况可以对链路的带宽进行优化更新,使得链路的带宽利用率提高,拥塞情况也可得到改善。
结合本申请实施例第二方面至第二方面的的第七种实施方式,在本申请实施例第二方面的第八种实施方式中,所述第一网络设备包括:
所述处理模块,还用于确定所述第一链路的时延和所述第二链路的时延之间的差值是否小于第二阈值;
当所述处理模块确定所述第一链路的时延和所述第二链路的时延之间的差值小于所述第二阈值时,所述发送模块还用于经由所述第一链路向所述第二网络设备发送第一数据报文和经由所述第二链路向所述第二网络设备发送第二数据报文,其中,所述第一数据流包括所述第一数据报文和第二数据报文。
本申请实施例中通过判断隧道之间时延差的大小可灵活决定是用逐流负载均衡方式还是用逐包负载均衡方式,为方案提供了多种可能性,使得不同情况下每种负载均衡方式都能够发挥最大优势,从而提高整体的传输速率。
本发明第三方面提供了一种数据流量处理系统,其特征在于,所述数据流量处理系统包括第一网络设备和第二网络设备,所述第一网络设备和第二网络设备为混合接入网络中的设备,所述数据流量处理系统包括:
所述第一网络设备确定经由所述第一链路发送数据流的第一总速率是否大于所述第一链路的带宽,其中,所述第一网络设备经由所述第一链路向所述第二网络设备发送多条数据流,所述第一总速率指示所述第一网络设备发送所述多条数据流中的每条数据流的速率之和;
所述第二网络设备接收所述第一网络设备发送的所述多条数据流;
当所述第一网络设备确定经由所述第一链路发送数据流的第一总速率大于所述第一链路的带宽时,所述第一网络设备确定第一数据流,所述多条数据流包括所述第一数据流,所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述第一剩余带宽指示所述第二链路中没有被数据流占用的可用带宽;
所述第一网络设备将所述第一数据流由所述第一链路切换到所述第二链路;
所述第二网络设备通过所述第二链路接收所述第一数据流。
结合本申请实施例第三方面,在本申请实施例第三方面的另一种实施方式中,所述数据流量处理系统还包括:
所述第一网络设备经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路;
所述第二网络设备通过所述第一链路接收所述第一网络设备发送的请求报文;
所述第二网络设备通过所述第一链路发送应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
所述第一网络设备经由所述第一链路接收来自所述第二网络设备的所述请求报文的应答报文;
所述第一网络设备根据所述应答报文确定所述第一链路的丢包率和传输速率;
所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽。
所述数据流量处理系统还可用于执行本申请实施例第二方面至第二方面第八种实施方式中任一项所述的实施方式。
从以上技术方案可以看出,本申请具有以下优点:
本申请实施例通过监控链路环境的带宽和报文的传输速率,可实现网络设备间数据流负载的动态调整,即能够根据拥塞情况合理地将拥塞链路上的业务流调整至相对空闲的链路,可在一定程度上减少链路拥塞的情况,有助于提高网络设备间链路的带宽利用率。
附图说明
图1为本申请实施例中混合接入网络的网络拓扑图;
图2为本申请实施例中GRE绑定隧道中传统数据报文的封装格式;
图3为本申请实施例中GRE绑定隧道中传统控制报文的封装格式;
图4为本申请实施例中逐包负载的均衡方式;
图5为本申请实施例中数据流量处理方法的一个实施例示意图;
图6为本申请实施例中数据流量处理方法的另一个实施例示意图
图7为本申请实施例中数据流量处理方法的场景示意图;
图8为本申请实施例中链路带宽探测机制的流程示意图;
图9为本申请实施例中第一网络设备和第二网络设备的交互实施例示意图;
图10为本申请实施例中第一网络设备和第二网络设备之间的控制报文发送示意图;
图11为本申请实施例中GRE绑定隧道中新定义的请求报文的封装格式;
图12为本申请实施例中GRE绑定隧道中新定义的应答报文的封装格式;
图13为本申请实施例中第一网络设备的实施例示意图;
图14为本申请实施例中第一网络设备的另一实施例示意图;
图15为本申请实施例中第一网络设备的又一实施例示意图。
具体实施方式
本申请提供了一种数据流量处理方法,可实现网络设备间数据流负载的动态调整,即能够根据拥塞情况合理地将拥塞链路上的数据流调整至相对空闲的链路上,可在一定程度上减少链路拥塞,有助于提高网络设备间链路的带宽利用率。
图1为一种混合接入网络的网络拓扑图,可应用于混合接入汇聚节点(HAAP,hybrid access aggregation point)和家庭网关(HG,home gateway)之间传输数据。其中,HG可以是路由器或三层交换机,HG可与用户终端进行连接,所述用户终端具体可以包括下列设备中的至少一个:移动终端、个人计算机或互联网协议电视(IPTV,Internet Protocol television)等。Hybrid Access网络可以基于多种不同类型的混合接入方式而实现,例如数字用户线路(DSL,digital subscriber line)和长期演进(LTE,long term evolution)等接入方式。LTE链路可通过基站接入核心网络中,DSL链路通过使用DSL接入复用器和宽带网络网关建立起HG和HAAP之间的通信传输。
HG和HAAP之间通过通用路由封装(GRE,Generic Routing Encapsulation)隧道绑定Tunnel Bonding实现Hybrid Access网络,GRE隧道绑定是基于GRE协议将HG和HAAP之间的传输链路绑定为GRE绑定隧道。在本申请实施方式中,以HG和HAAP之间包括LTE链路和DSL链路为例进行说明,如图1所示。应当理解,HG和HAAP之间并不限于上述两种链路形式,例如还可以包括第三代(3G,Third Generation)链路、第五代(5G,5th Generation)或光纤连接(fibre optic connection)链路等。
HG基于GRE协议将数据报文封装为GRE报文通过DSL链路向HAAP发送所述GRE报文,或者HAAP基于GRE协议将数据报文封装为GRE报文通过DSL链路向HG发送所述GRE报文。因此,本申请实施例中,DSL链路也可以被称为DSL GRE隧道。HG基于GRE协议将数据报 文封装为GRE报文通过LTE链路向HAAP发送所述GRE报文,或者HAAP基于GRE协议将数据报文封装为GRE报文通过LTE链路向HG发送所述GRE报文。因此,本申请实施例中,LTE链路也可以被称为LTE GRE隧道。DSL GRE隧道和LTE GRE隧道被绑定为GRE绑定隧道,因此,在本申请实施方式中,GRE绑定隧道包括DSL GRE隧道和LTE GRE隧道。
在GRE绑定隧道上传输的数据报文和控制报文都有一定的封装格式,数据报文的封装格式如图2所示,包括媒体头、外层网际协议(IP,internet protocol)头、GRE头和内层IP数据包。其中GRE头中的字段包括标志位(例如c、k和s)、预留位Reserved、版本号ver、协议类型Protocol Type、总和检验码checksum、关键字key和报文序列号sequence number,每个字段的详细含义可参见因特网工程任务组(IETF,Internet Engineering Task Force)请求注解(RFC,request for comments)8157。
GRE Tunnel Bonding控制报文的封装格式如图3所示,标准的GRE格式头中包含标志位、预留位、版本号、协议类型、关键字、信息类型MsgType、属性类型Attribute Type、属性长度Attribute length和属性值Attribute Value等,各个字段的含义可详细参见RFC 8157。
本申请实施例中实现的是一种数据流量处理方法,数据流实质上是传输信息的一串数字编码信号序列。数据流按照业务类型可以分为视频类数据流、文本类数据流和语音类数据流等。数据流按照业务优先级还可以分为低优先级数据流和高优先级数据流等。因此,数据流是属于同一特征属性的多个数据报文的集合,数据流中可包含多个数据报文。数据流还包括流标识,所述流标识用于标识该数据流。在本申请中,数据流还可以被称为业务流。
基于上述应用场景,对于传输数据我们可以采用逐包负载均衡的方式进行传输,即以报文为单位进行负载均衡,将一条数据流中的报文发送到不同的链路上进行传输,例如第一报文经第一链路进行传输,第二报文经第二链路进行传输,而第一报文和第二报文同属于同一条数据流。具体方法如图4所示:在发送端,所有报文将被分配一个序列号(sequence number),该序列号与隧道进行绑定,通过负载均衡机制,网络设备决定将当前报文分配至某一隧道,报文随后通过该隧道进行传输。经过不同隧道传输的报文在到达接收端时顺序不同,因此接收端会对先到来的报文进行缓存以便和后进来的报文进行汇合,然后再根据报文序列号对所有报文进行重排序。逐包负载均衡方式在网络状态良好时可以体现出高带宽的优势。但是在网络状态不佳,不同隧道的传输时延差较大时,由于接收端等待所有报文汇聚需要耗费大量时间,因此该方式会拉低绑定隧道的整体吞吐量,严重时甚至会发生缓存溢出,进而引发报文丢弃,应用层触发重传的问题。
针对上述网络状态不佳时逐包负载均衡方式的缺陷,本申请实施例提供了一种基于逐流负载均衡的数据流量处理方法。该数据流量处理方法可应用于混合接入网络中,该混合接入网络包括第一网络设备和第二网络设备,第一网络设备经由第一链路和第二链路与第二网络设备连接。当HG为发送端的第一网络设备时,HAAP为接收端的第二网络设备,当HAAP作为发送端的第一网络设备时,HG为接收端的第二网络设备。在本申请实施方式中,以DSL链路和LTE链路为例进行说明。例如,第一链路是DSL链路,第二链路是LTE链路。或者,第一链路是LTE链路,第二链路是DSL链路。
逐流负载均衡方式是指以数据流为单位进行传输,即把一个用户当前的多条数据流分配到绑定隧道的不同链路上。举例说明,通过第一链路传输第一数据流和第二数据流,通 过第二链路传输第三数据流和第四数据流。当其中任意一条链路上承载的数据流的总速率之和超出了该链路的配置带宽时,或该链路出现拥塞状况时,选取该用户在该链路上的一条数据流,将这条数据流重新分配至另一个最合适的链路。本申请实施例提供的数据流量处理方法的流程示意图如图5所示,包括:
101、第一网络设备确定经由第一链路发送数据流的第一总速率是否大于第一链路的带宽,其中,第一网络设备经由第一链路向第二网络设备发送多条数据流,第一总速率指示第一网络设备发送多条数据流中的每条数据流的速率之和;第一网络设备可通过第一链路向第二网络设备发送多条数据流,其中,第一总速率指示第一网络设备发送多条数据流中的每条数据流的速率之和。其中,发送的多条数据流中的每条数据流的速率是指第一网络设备发送该条数据流时,该条数据流要求的发送速率。第一网络设备在发送该条数据流时,会根据该条数据流要求的发送速率发送该条数据流。但是,该条数据流在第一链路上实际的传输速率取决于第一链路是否能够提供足够的带宽。如果第一链路不能提供足够的带宽,实际的传输速率可能小于该条数据流要求的发送速率。其中,带宽表示单位时间内通过的最大数据量。第一链路的带宽表示单位时间内通过第一链路横截面积的最大数据量。第一链路的带宽也可以被称为第一链路的额定带宽或最大可用带宽。
102、当第一网络设备确定经由第一链路发送数据流的第一总速率大于第一链路的带宽时,第一网络设备确定第一数据流,多条数据流包括第一数据流,第一网络设备发送第一数据流的第一速率小于或等于第二链路的第一剩余带宽,第一剩余带宽指示第二链路中没有被数据流占用的可用带宽;
首先,第一网络设备需要对比链路上所有数据流期望达到的传输速率之和与该链路的带宽大小,当第一网络设备确定第一链路上所有数据流的传输速率之和大于该条链路的带宽时,说明该链路承受不了如此大的流量,则第一网络设备需要确定第一数据流,发送第一数据流的第一速率小于或等于第二链路的第一剩余带宽。第一剩余带宽是指除去第二链路中被数据流占用的带宽,剩余的没有被数据流占用的可用带宽。因此若第二链路中有数据流被占用,则应用链路带宽减去数据流的传输速率得到剩余带宽。具体的实现方式可以参见本申请实施例中链路带宽探测机制实现方式的描述,此处不进行赘述。
本申请实施例中确定第一数据流和第二链路的方法有多种,在此仅具体说明了两种方案:
第一种:当第一链路上所有数据流的传输速率之和大于该条链路的带宽时,先确定第二链路的剩余带宽,然后根据第二链路的剩余带宽和筛选条件确定出第一链路上的第一数据流,发送第一数据流的第一速率应小于或等于第二链路的第一剩余带宽。
第二种:
本申请实施例中当第一网络设备检测到第一链路上所有数据流的传输速率之和大于该条链路的带宽时还可以采用排列组合的方式同时选出第一数据流和第二链路:将第一链路上每条数据流的传输速率和余下每条链路的剩余带宽进行排列组合,从中选出满足条件的第一数据流和第二链路。其中,余下每条链路是指HG和HAAP之间的除去第一链路之外的链路。
具体的如图6所示,图6为本申请实施例中数据流量处理方法的流程示意图:
假设共有i条链路参与多路径传输(L 1,L 2,L 3,...,L i),链路i上有j个流 (F i1,F i2,...,F ij)。其中,i和j为正整数。
201、第一网络设备确定第一链路上每条数据流的传输速率;
该传输速率是指数据流要求达到的发送速率。链路i上的第j个流的传输速度可以记为R ij
202、第一网络设备确定余下每条链路的剩余带宽。
第一网络设备需要确定剩下每条链路(除去第一链路)的剩余带宽,若第一网络设备已知链路的带宽(该带宽可以是传输链路的额定带宽或接入网设备分配的带宽),则可直接确定带宽;若未配置带宽,可参见本申请实施例中链路带宽探测机制的实现方式确定链路带宽。当有数据流占用链路带宽时,剩余带宽等于链路带宽减去占用数据流的传输速率;当没有数据流占用链路带宽时,剩余带宽为链路带宽。
203、当第一链路上所有流的传输速率之和大于所述第一链路的带宽(即∑R ij>C i),则确定出第一链路i上的第一数据流和第二链路,将第一数据流重新分担到第二链路;
具体地,如图7所示,假设有L1(C1=10M)、L2(C2=10M)、L3(C3=10M)三条链路,L1链路上所有数据流的速率之和为∑R 1=12M>C 1=10M,即发生了流量溢出的情况,此时需要从L1上的三条流F 11、F 12、F 13中选出一条数据流分配到另一链路,即L2或L3,直到∑R ij≤C i为止。
第一网络设备确定第一链路L1上的所有流的传输速率为R 11=3M,R 12=4M,R 13=5M。并且第一网络设备确定每条链路的带宽为C1=10M,C2=10M,C3=10M。然后,所述第一网络设备将第一链路上所有数据流的传输速率和余下链路的剩余带宽进行排列组合分别代入C ry-R ix≥0,C ry表示余下链路中的第y条链路的带宽,R ix为第一条链路传输的第X条业务流。所述第一网络设备确定满足C ry-R ix≥0且最接近0的R ix和C ry是第一数据流和第二链路。经过计算得知应该把流F 12分配到链路L2。经过这次调整后,三个链路均没有出现流量溢出的情况。
103、第一网络设备将第一数据流由第一链路切换到第二链路。
本申请实施例可通过对比链路上所有数据流的传输速率之和与链路带宽的情况对负载均衡进行动态调整,将拥塞链路上的数据流调整至相对空闲的链路上,有助于提高网络设备间链路的带宽利用率,可在一定程度上减少链路拥塞的情况,也提高了数据传输的灵活性。
将第一链路上的第一数据流切换到第二链路上之后,第一链路的拥塞情况得到改善。可选的,所述第一网络设备继续确定经由第一链路发送数据流的总速率是否大于第一链路的带宽。如果所述第一网络设备确定第一链路发送数据流的总速率仍然大于第一链路的带宽,所述第一网络设备可以按照本申请实施方式的上述实现方式调整所述第一链路中的第二数据流。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第一个可选实施例中:
本申请实施例中,第一网络设备在进行第一次分流之后还需再进行一次判断,判断第一链路是否还存在拥塞的情况。首先,第一网络设备确定经由第一链路发送数据流的第二总速率是否大于第一链路的带宽,其中,第二总速率指示第一网络设备发送多条数据流中除第一数据流之外的每条数据流的速率之和。也就是说,第二总速率指的是第一链路中除去第一数据流之外的每条数据流期望达到的速率之和。
当第一网络设备确定经由第一链路发送数据流的第二总速率大于第一链路的带宽时,第一网络设备确定第二数据流,所述多条数据流包括第二数据流。第一网络设备发送第二数据流的第二速率小于或等于第二链路的第二剩余带宽。由于第一次调整时将第一数据流切换至第二链路上,因此第二剩余带宽的值应等于第一剩余带宽的值与第一速率的值的差。所述第一网络设备可以根据前述实施方式提供的实现方法,根据第二剩余带宽的值和第二数据流传输速率的大小确定是否将所述第二数据流调整到所述第二链路。
第一网络设备将第二数据流由第一链路切换到第二链路。
本申请实施例中在第一次对负载均衡进行动态调整之后,再次判断该链路是否还存在拥塞的情况,即第一链路的第二总速率是否大于该链路的带宽,若大于,则继续进行调整,有助于进一步提供链路利用率和减少链路拥塞。
可以理解的是,本申请实施例不仅仅包括两条链路的情况,在具有多条链路的情况下,还可从第一链路中确定第三数据流,第一网络设备发送第三数据流的第三速率小于或等于第三链路的第三剩余带宽。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第二个可选实施例中,若第一链路发送数据流的第二总速率大于第一链路的带宽时,则第一网络设备还可确定第三数据流,第一网络设备发送第三数据流的第三速率小于或等于第三链路的第三剩余带宽,第三剩余带宽指示第三链路中没有被数据流占用的可用带宽。
本申请实施例与第一个可选实施例类似,目的都是为了减轻第一链路的拥塞情况。当第二链路的剩余带宽小于第一链路的第二数据流的传输速率时,还有第三链路能够接受第一链路的分流。第一网络设备发送第三数据流的第三速率小于或等于第三链路的第三剩余带宽说明第三链路有能力接收第三数据流。可以理解的是本申请实施例中只要有剩余带宽能够承受分流的数据流,都可以为第一链路进行分流,有助于减少第一链路的拥塞情况和提高除第一链路之外的链路的带宽利用率。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第三个可选实施例。应当理解,该实施例可以应用于前述方式的步骤102中,具体的,在前述提及的判断条件C ry-R ix≥0中引入安全裕量γ。在本实施例中,引入安全裕量有助于链路在接收被调整的数据流后,避免发生拥塞。
结合上述,本实施例再引入安全裕量后,前述步骤102中提及的确定第一数据流和第二链路的两种方法可以按照如下方式实现:(以第一数据流和第二链路为例)
第一种,当第一链路上所有数据流的传输速率之和大于该条链路的带宽时,根据第二链路的带宽确定第一链路上的第一数据流,筛选条件变为第一数据流的第一速率应小于或等于第一剩余带宽和安全裕量之和。
第二种,用排列组合的方式和筛选条件C ry-R ix-γ≥0同时筛选出第一数据流和第二链路,具体如下:将第一链路上所有数据流的传输速率和余下所有链路的剩余带宽进行排列组合分别代入C ry-R ix-γ≥0,同时挑选出满足条件的R ix和C ry,即为第一数据流和第二链路。
本申请实施例中确定链路带宽的过程如第四个实施例中的步骤所示。
可选的,在上述实施例的基础上,本发明实施例提供的第四个可选实施例的流程示意图如图8所示,图8为链路带宽探测机制的流程示意图。
图9为基于图8的第一网络设备和第二网络设备的交互流程示意图。
图10为多路径传输场景下用于实现链路带宽探测机制的控制报文示意图。图中,第一网络设备与第二网络设备之间,只画出一条路径,以一条路径为例说明带宽探测机制的过程。可以理解的是网络设备之间的其他路径也可以利用该带宽探测机制确定带宽。请求报文和应答报文实质上都是控制报文,利用该控制报文可提前探测链路的传输速率以及丢包率,从而确定出链路的带宽。
下面将结合图8、图9、和图10共同介绍链路带宽探测机制的具体过程:
如图8所示:
301、第一网络设备经由第一链路向第二网络设备发送请求报文,请求报文包括链路标识,链路标识用于指示第一链路;
第一网络设备首先向第二网络设备发送请求报文。请求报文是一种控制报文,本申请实施例中的控制报文的格式头与传统的控制报文格式头不同,参见图3和图11所示,区别在于新的控制报文中定义了新的属性类型、属性长度和属性值。当第一网络设备向第二网络设备仅发送两个请求报文时,新定义的属性值字段中可具体包括链路标识l,该链路标识用于标志链路的唯一性,并且对应请求报文的应答报文也会根据该链路标识沿原路返回。
如图11所示,当第一网络设备向第二网络设备周期性地发送请求报文时,属性值的字段中还可包括报文的序列号i,该序列号的作用用于标识报文的先后顺序,具体地若某一请求报文中包含的序列号为i,则每下一个请求报文的序列号为i+1。由于请求报文中含有序列号,因此周期性发送请求报文的情况下也不会影响请求报文之间的顺序。
下面将以第一网络设备发送第一请求报文和第二请求报文为例并结合图9具体介绍:
在步骤301下可具体实施图9中的步骤401至402:
401、第一网络设备发送第一请求报文、第二请求报文以及第一数据;
若第一网络设备发送第一请求报文的时间为第一时间,发送第二请求报文的时间为第二时间,第一时间至第二时间之间的时间段则为发送周期,第一数据则为第一网络设备在发送周期内向第二网络设备发送的数据。
402、第一网络设备记录发送周期和第一数据的属性;
该属性包括发送周期内第一网络设备一共向第二网络设备通过该路径发了多少数据包(p si)、多少字节(b si)。第一数据的属性是此后计算丢包率和传输速度的基础。
403、第二网络设备接收第一请求请求报文、第二请求报文和第二数据;
若假设第二网络设备接收到第一请求报文的时间为第三时间,接收到第二请求报文的时间为第四时间,第三时间至第四时间之间的时间段则为接收周期,那么第二数据就是第二网络设备在接收周期内收到的数据。
第二网络设备接收到的第二数据有可能与第一数据相同,也有可能不同。若在传输过程中没有丢包的情况,那么第二数据就为第一数据,若有丢包的情况,则第二数据和第一数据不同。通过第一数据和第二数据的属性对比情况可计算出丢包率、传输速度等信息。
404、第二网络设备记录接收周期和第二数据的属性,并将接收周期和第二数据的属性通过应答报文发送给第一网络设备;
第二数据的属性是指第二网络设备在接收周期内接收到来自第一网络设备的多少数据包(p ri)、多少字节(b ri)。第二网络设备会将接收周期和第二数据属性这些信息通过应答 报文发送给第一网络设备。
继续参见图8和图10,在步骤301第一网络设备经由第一链路向第二网络设备发送请求报文之后:
302、第一网络设备经由第一链路接收来自第二网络设备的应答报文,应答报文包括接收报文数量、接收字节数量和接收周期,接收周期指示第二网络设备接收到请求报文的时刻和接收到请求报文的前一个请求报文的时刻的差值,接收报文数量指示接收周期内第二网络设备接收到数据报文的数量,接收字节数量指示接收周期内第二网络设备接收到数据报文包括的字节的数量;
新定义的应答报文中属性值包含序列号i和链路标识l、第二网络设备接收的数据包数量p ri、接收的字节数b ri等信息,如图12所示。
303、第一网络设备根据应答报文确定第一链路的丢包率和传输速率;
第一网络设备根据应答报文中的具体信息例如第一网络设备在发送周期内发送的第一数据的属性和第二网络设备在接收周期内接收的第二数据的属性可计算出丢包率和传输速率。
304、所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽。
通过丢包率和传输速度的对比可以对链路的带宽进行优化更新,使得链路的带宽利用率提高,拥塞情况也可得到改善。
本申请实施例中根据新定义的控制报文格式以及链路带宽的探测机制可实现网络设备间的负载均衡,即通过发送控制报文的形式能够即时测量链路的时延、丢包等情况,从而探测链路带宽。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第五个可选实施例中,第一网络设备根据如下公式计算丢包率和传输速度:
Li=(p si-p ri)/p si
R i=b ri/t;
L i为发送周期内的数据报文在该条链路上的丢包率,p si为发送周期内第一网络设备通过该路径向第二网络设备发送的数据包数量,p ri为发送周期内第二网络设备接收的来自第一网络设备发送的数据包的数量,R i为报文的传输速度,t为接收周期即第三时间至第四时间的时间差。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第六个可选实施例中,第一网络设备根据丢包率和传输速率更新第一链路的带宽:
第一网络设备每次收到应答报文,都可以计算出一个R i的值,据此探测该链路的带宽C,并且不断更新C,使之更接近于真实值。方法如下:(L i≠0表示该链路发生丢包)
Figure PCTCN2018117555-appb-000001
其含义为:
当丢包率不为零时,或者当丢包率为零并且传输速率大于第一链路的带宽时,第一网络设备将第一链路的带宽的值更新为传输速率的值;
当丢包率为零并且传输速率小于或等于第一链路的带宽时,第一网络设备保持第一链 路的带宽的值。
上述实施例中介绍的是逐流负载均衡方式,在隧道传输时延差较大时,有助于提高网络设备间链路的带宽利用率。在隧道传输时延差较小时还可采用逐包负载均衡的方式传输数据。
可选的,在上述实施例的基础上,本发明实施例提供的数据流量处理方法的第七个可选实施例中:
首先判断第一网络设备确定第一链路的时延和第二链路的时延之间的差值是否小于第二阈值;当第一网络设备确定第一链路的时延和第二链路的时延之间的差值小于第二阈值时,第一网络设备经由第一链路向第二网络设备发送第一数据报文,经由第二链路向第二网络设备发送第二数据报文,第一链路和第二链路是分别与对应报文中的序列号进行绑定的链路。
本申请实施例中通过判断隧道之间时延差的大小可灵活决定是用逐流负载均衡方式还是用逐包负载均衡方式,为方案提供了多种可能性,使得不同情况下每种负载均衡方式都能够发挥最大优势,从而提高整体的传输速率。
下面将从第一网络设备的角度介绍本申请实施例中的数据流量实现过程。
所述第一网络设备应用在混合接入网络中,所述第一网络设备包括处理模块402和发送模块401。本申请实施例提供的第一网络设备如图13所示:
所述发送模块401,用于经由所述第一链路向所述第二网络设备发送多条数据流;
所述处理模块402,用于确定经由所述第一链路发送数据流的第一总速率是否大于所述第一链路的带宽,其中,所述第一总速率指示所述发送模块401发送的所述多条数据流中的每条数据流的速率之和;
当所述处理模块402确定经由所述第一链路发送数据流的第一总速率大于所述第一链路的带宽时,所述处理模块402还用于确定第一数据流,所述多条数据流包括所述第一数据流,其中,所述发送模块401发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述第一剩余带宽指示所述第二链路中没有被数据流占用的可用带宽;
所述处理模块402,还用于将所述第一数据流由所述第一链路切换到所述第二链路。
在图13对应的实施例基础上,本申请的另一实施例包括:
所述处理模块402还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块401发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
当所述处理模块402确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块402还用于确定第二数据流,所述多条数据流包括所述第二数据流,其中,所述发送模块401发送的所述第二数据流的第二速率小于或等于所述第二链路的第二剩余带宽,所述第二剩余带宽等于所述第一剩余带宽减去所述第一速率;
所述处理模块402还用于将所述第二数据流由所述第一链路切换到所述第二链路。
在图13对应的实施例基础上,本申请的另一实施例中,所述第一网络设备还经由第三链路与所述第二网络设备连接,包括:
所述处理模块402,还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块401发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
当所述处理模块402确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块402还用于确定第三数据流,所述多条数据流包括所述第三数据流,其中,所述发送模块401发送的所述第三数据流的第三速率小于或等于所述第三链路的第三剩余带宽,所述第三剩余带宽指示所述第三链路中没有被数据流占用的可用带宽;
所述处理模块402,还用于将所述第三数据流由所述第一链路切换到所述第三链路。
在图13对应的实施例基础上,本申请的另一实施例中,所述发送模块401发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,具体包括:
所述发送模块401发送的所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差,所述第一阈值指示切换数据流的安全值。
在图13对应的实施例基础上,本申请另一实施例如图14所示,所述第一网络设备还包括接收模块403:
所述发送模块401,还用于经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路;
所述接收模块403,用于经由所述第一链路接收来自所述第二网络设备的所述请求报文的应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
所述处理模块402,还用于根据所述应答报文确定所述第一链路的丢包率和传输速率;
所述处理模块402,还用于根据所述丢包率和所述传输速率更新所述第一链路的带宽。
在上述图13和图14对应的实施例的基础上,本申请另一实施例中,所述处理模块402根据所述应答报文确定所述第一链路的丢包率和传输速率,具体包括:
所述处理模块402,还用于确定发送所述请求报文与发送所述请求报文的前一个请求报文之间的发送周期中的发送报文数量;
所述处理模块402,还用于根据所述发送报文数量和所述接收报文数量确定所述丢包率;
所述处理模块402,还用于根据接收字节数量和所述接收周期确定所述传输速率。
在上述图13和图14对应的实施例的基础上,本申请的另一实施例中,所述处理模块402根据所述丢包率和所述传输速率更新所述第一链路的带宽,具体包括:
所述处理模块402,还用于当所述丢包率不为零时,或者当所述丢包率为零并且所述传输速率大于所述第一链路的带宽时,将所述第一链路的带宽的值更新为所述传输速率的值;
所述处理模块402,还用于当所述丢包率为零并且所述传输速率小于或等于所述第一链路的带宽时,保持所述第一链路的带宽的值。
在上述图13和图14对应的实施例的基础上,本申请的另一实施例包括:
所述处理模块402,还用于确定所述第一链路的时延和所述第二链路的时延之间的差值是否小于第二阈值;
当所述处理模块402确定所述第一链路的时延和所述第二链路的时延之间的差值小于所述第二阈值时,所述发送模块401还用于经由所述第一链路向所述第二网络设备发送第 一数据报文和经由所述第二链路向所述第二网络设备发送第二数据报文,其中,所述第一数据流包括所述第一数据报文和第二数据报文。
可以理解的是,本申请实施例中的第二网络设备的内部模块与图13、图14以及对应实施例中包含的内部模块类似,具体此处不再赘述。
图15为本申请实施例的第一网络设备1100的硬件结构示意图。图15所示的第一网络设备1100可以执行上述实施例的方法中第一网络设备执行的相应步骤。
如图15所示,所述第一网络设备1100包括处理器1101、存储器1102、接口1103和总线1104。其中接口1103可以通过无线或有线的方式实现,具体来讲可以是网卡。上述处理器1101、存储器1102和接口1103通过总线1104连接。
所述接口1103具体可以包括发送器和接收器,用于第一网络设备与上述实施例中的第二网络设备之间收发信息。例如,所述接口1103用于支持向所述第二网络设备发送数据流。作为举例,所述接口1103用于支持图5中的过程S101。所述处理器1101用于执行上述实施例中由第一网络设备进行的处理。例如,所述处理器1101用于经由所述第一链路发送数据流的第一总速率是否大于第一链路的带宽;用于确定第一数据流;用于将所述第一数据流由所述第一链路切换到所述第二链路;和/或用于本文所描述的技术的其他过程。存储器1102包括操作系统11021和应用程序11022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中涉及第一网络设备的处理过程。可选的,所述存储器1102可以包括只读存储器(英文:Read-only Memory,缩写:ROM)和随机存取存储器(英文:Random Access Memory,缩写:RAM)。其中,所述ROM包括基本输入/输出系统(英文:Basic Input/Output System,缩写:BIOS)或嵌入式系统;所述RAM包括应用程序和操作系统。当需要运行第一网络设备1100时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导第一网络设备1100进入正常运行状态。在第一网络设备1100进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中涉及第一网络设备的处理过程。
可以理解的是,图15仅仅示出了第一网络设备1100的简化设计。在实际应用中,第一网络设备可以包含任意数量的接口,处理器或者存储器。
另外,本申请实施例提供了一种计算机存储介质,用于储存为上述第一网络设备所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。
本申请实施例还包括一种数据流量处理系统,所述数据流量处理系统包括第一网络设备和第二网络设备,所述第一网络设备为前述图13或图14或图15中的第一网络设备。
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存 储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明。所应理解的是,以上所述仅为本申请的具体实施方式而已。

Claims (19)

  1. 一种数据流量处理方法,其特征在于,所述数据流量处理方法应用在混合接入网络中,所述混合接入网络包括第一网络设备和第二网络设备,所述第一网络设备经由第一链路和第二链路与所述第二网络设备连接,所述方法包括:
    所述第一网络设备确定经由所述第一链路发送数据流的第一总速率是否大于所述第一链路的带宽,其中,所述第一网络设备经由所述第一链路向所述第二网络设备发送多条数据流,所述第一总速率指示所述第一网络设备发送所述多条数据流中的每条数据流的速率之和;
    当所述第一网络设备确定经由所述第一链路发送数据流的第一总速率大于所述第一链路的带宽时,所述第一网络设备确定第一数据流,所述多条数据流包括所述第一数据流,所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述第一剩余带宽指示所述第二链路中没有被数据流占用的可用带宽;
    所述第一网络设备将所述第一数据流由所述第一链路切换到所述第二链路。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述第一网络设备发送所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
    当所述第一网络设备确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述第一网络设备确定第二数据流,所述多条数据流包括所述第二数据流,所述第一网络设备发送所述第二数据流的第二速率小于或等于所述第二链路的第二剩余带宽,所述第二剩余带宽的值等于所述第一剩余带宽的值与所述第一速率的值的差;
    所述第一网络设备将所述第二数据流由所述第一链路切换到所述第二链路。
  3. 根据权利要求1所述的方法,其特征在于,所述第一网络设备还经由第三链路与所述第二网络设备连接,所述方法还包括:
    所述第一网络设备确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述第一网络设备发送所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
    当所述第一网络设备确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述第一网络设备确定第三数据流,所述多条数据流包括所述第三数据流,所述第一网络设备发送所述第三数据流的第三速率小于或等于所述第三链路的第三剩余带宽,所述第三剩余带宽指示所述第三链路中没有被数据流占用的可用带宽;
    所述第一网络设备将所述第三数据流由所述第一链路切换到所述第三链路。
  4. 根据权利要求1-3中任一项所述的方法,其特征在于,所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,包括:
    所述第一网络设备发送所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差,所述第一阈值指示切换数据流的安全值。
  5. 根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路;
    所述第一网络设备经由所述第一链路接收来自所述第二网络设备的所述请求报文的 应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
    所述第一网络设备根据所述应答报文确定所述第一链路的丢包率和传输速率;
    所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽。
  6. 根据权利要求5所述的方法,其特征在于,所述第一网络设备根据所述应答报文确定所述第一链路的丢包率和传输速率,包括:
    所述第一网络设备确定发送所述请求报文与发送所述请求报文的前一个请求报文之间的发送周期中的发送报文数量;
    所述第一网络设备根据所述发送报文数量和所述接收报文数量确定所述丢包率;
    所述第一网络设备根据接收字节数量和所述接收周期确定所述传输速率。
  7. 根据权利要求5或6所述的方法,其特征在于,所述第一网络设备根据所述丢包率和所述传输速率更新所述第一链路的带宽,包括:
    当所述丢包率不为零时,或者当所述丢包率为零并且所述传输速率大于所述第一链路的带宽时,所述第一网络设备将所述第一链路的带宽的值更新为所述传输速率的值;
    当所述丢包率为零并且所述传输速率小于或等于所述第一链路的带宽时,所述第一网络设备保持所述第一链路的带宽的值。
  8. 根据权利要求5-7中任一项所述的方法,其特征在于,所述请求报文还包括序列号,所述序列号指示所述请求报文,所述应答报文包括所述序列号。
  9. 根据权利要求1-8中任一项所述的方法,其特征在于,所述方法还包括:
    所述第一网络设备确定所述第一链路的时延和所述第二链路的时延之间的差值是否小于第二阈值;
    当所述第一网络设备确定所述第一链路的时延和所述第二链路的时延之间的差值小于所述第二阈值时,所述第一网络设备经由所述第一链路向所述第二网络设备发送第一数据报文和经由所述第二链路向所述第二网络设备发送第二数据报文,其中,所述第一数据流包括所述第一数据报文和第二数据报文。
  10. 根据权利要求1-9中任一项所述的方法,其特征在于,
    所述第一网络设备是家庭网关HG设备和所述第二网络设备是混合接入汇聚节点HAAP设备;或者
    所述第一网络设备是HAAP设备和所述第二网络设备是HG设备。
  11. 一种第一网络设备,其特征在于,所述第一网络设备应用在混合接入网络中,所述混合接入网络还包括第二网络设备,所述第一网络设备经由第一链路和第二链路与所述第二网络设备连接,所述第一网络设备包括处理模块和发送模块;
    所述发送模块,用于经由所述第一链路向所述第二网络设备发送多条数据流;
    所述处理模块,用于确定经由所述第一链路发送数据流的第一总速率是否大于所述第一链路的带宽,其中,所述第一总速率指示所述发送模块发送的所述多条数据流中的每条数据流的速率之和;
    当所述处理模块确定经由所述第一链路发送数据流的第一总速率大于所述第一链路 的带宽时,所述处理模块还用于确定第一数据流,所述多条数据流包括所述第一数据流,其中,所述发送模块发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,所述第一剩余带宽指示所述第二链路中没有被数据流占用的可用带宽;
    所述处理模块,还用于将所述第一数据流由所述第一链路切换到所述第二链路。
  12. 根据权利要求11所述的第一网络设备,其特征在于,
    所述处理模块,还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
    当所述处理模块确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块还用于确定第二数据流,所述多条数据流包括所述第二数据流,其中,所述发送模块发送的所述第二数据流的第二速率小于或等于所述第二链路的第二剩余带宽,所述第二剩余带宽的值等于所述第一剩余带宽的值与所述第一速率的值的差;
    所述处理模块还用于将所述第二数据流由所述第一链路切换到所述第二链路。
  13. 根据权利要求11所述的第一网络设备,其特征在于,所述第一网络设备还经由第三链路与所述第二网络设备连接;
    所述处理模块,还用于确定经由所述第一链路发送数据流的第二总速率是否大于所述第一链路的带宽,其中,所述第二总速率指示所述发送模块发送的所述多条数据流中除所述第一数据流之外的每条数据流的速率之和;
    当所述处理模块确定经由所述第一链路发送数据流的第二总速率大于所述第一链路的带宽时,所述处理模块还用于确定第三数据流,所述多条数据流包括所述第三数据流,其中,所述发送模块发送的所述第三数据流的第三速率小于或等于所述第三链路的第三剩余带宽,所述第三剩余带宽指示所述第三链路中没有被数据流占用的可用带宽;
    所述处理模块,还用于将所述第三数据流由所述第一链路切换到所述第三链路。
  14. 根据权利要求11-13中任一项所述的第一网络设备,其特征在于,所述发送模块发送的所述第一数据流的第一速率小于或等于所述第二链路的第一剩余带宽,具体包括:
    所述发送模块发送的所述第一数据流的第一速率小于或等于所述第一剩余带宽的值与第一阈值的差,所述第一阈值指示切换数据流的安全值。
  15. 根据权利要求11-14中任一项所述的第一网络设备,其特征在于,所述第一网络设备还包接收模块;
    所述发送模块,还用于经由所述第一链路向所述第二网络设备发送请求报文,所述请求报文包括链路标识,所述链路标识指示所述第一链路;
    所述接收模块,用于经由所述第一链路接收来自所述第二网络设备的所述请求报文的应答报文,所述应答报文包括接收报文数量、接收字节数量和接收周期,所述接收周期指示所述第二网络设备接收到所述请求报文的时刻和接收到所述请求报文的前一个请求报文的时刻的差值,所述接收报文数量指示所述接收周期内所述第二网络设备接收到数据报文的数量,所述接收字节数量指示所述接收周期内所述第二网络设备接收到数据报文包括的字节的数量;
    所述处理模块,还用于根据所述应答报文确定所述第一链路的丢包率和传输速率;
    所述处理模块,还用于根据所述丢包率和所述传输速率更新所述第一链路的带宽。
  16. 根据权利要求15所述的第一网络设备,其特征在于,所述处理模块根据所述应答 报文确定所述第一链路的丢包率和传输速率,具体包括:
    所述处理模块,还用于确定发送所述请求报文与发送所述请求报文的前一个请求报文之间的发送周期中的发送报文数量;
    所述处理模块,还用于根据所述发送报文数量和所述接收报文数量确定所述丢包率;
    所述处理模块,还用于根据接收字节数量和所述接收周期确定所述传输速率。
  17. 根据权利要求15或16所述的第一网络设备,其特征在于,所述处理模块根据所述丢包率和所述传输速率更新所述第一链路的带宽,具体包括:
    所述处理模块,还用于当所述丢包率不为零时,或者当所述丢包率为零并且所述传输速率大于所述第一链路的带宽时,将所述第一链路的带宽的值更新为所述传输速率的值;
    所述处理模块,还用于当所述丢包率为零并且所述传输速率小于或等于所述第一链路的带宽时,保持所述第一链路的带宽的值。
  18. 根据权利要求11-17中任一项所述的第一网络设备,其特征在于,所述第一网络设备包括:
    所述处理模块,还用于确定所述第一链路的时延和所述第二链路的时延之间的差值是否小于第二阈值;
    当所述处理模块确定所述第一链路的时延和所述第二链路的时延之间的差值小于所述第二阈值时,所述发送模块还用于经由所述第一链路向所述第二网络设备发送第一数据报文和经由所述第二链路向所述第二网络设备发送第二数据报文,其中,所述第一数据流包括所述第一数据报文和第二数据报文。
  19. 一种数据流量处理系统,其特征在于,所述数据流量处理系统包括第一网络设备和第二网络设备,所述第一网络设备为权利要求11至18中任一所述的第一网络设备。
PCT/CN2018/117555 2018-03-22 2018-11-27 一种数据流量处理方法及相关网络设备 Ceased WO2019179157A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP18910881.4A EP3758409A4 (en) 2018-03-22 2018-11-27 DATA TRAFFIC PROCESSING PROCESS AND ASSOCIATED NETWORK DEVICE

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810244236.8 2018-03-22
CN201810244236.8A CN110300431A (zh) 2018-03-22 2018-03-22 一种数据流量处理方法及相关网络设备

Publications (1)

Publication Number Publication Date
WO2019179157A1 true WO2019179157A1 (zh) 2019-09-26

Family

ID=67988206

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/117555 Ceased WO2019179157A1 (zh) 2018-03-22 2018-11-27 一种数据流量处理方法及相关网络设备

Country Status (3)

Country Link
EP (1) EP3758409A4 (zh)
CN (1) CN110300431A (zh)
WO (1) WO2019179157A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541959A (zh) * 2020-04-21 2020-08-14 国网浙江省电力有限公司信息通信分公司 带宽调整方法及相关装置、设备、计算机可读存储介质
CN113595919A (zh) * 2020-04-30 2021-11-02 华为技术有限公司 一种负载分担的方法及装置
CN116192757A (zh) * 2022-12-27 2023-05-30 天翼云科技有限公司 负载均衡方法、装置、电子设备及可读存储介质

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111083763B (zh) * 2019-12-17 2021-05-25 Oppo广东移动通信有限公司 网络控制方法、装置、存储介质及电子设备
CN111565421B (zh) * 2020-04-13 2023-08-18 达闼机器人股份有限公司 确定信号带宽的方法、装置、存储介质及终端和网络设备
CN112787919B (zh) * 2020-06-03 2022-07-15 中兴通讯股份有限公司 报文传输方法及设备、可读介质
CN111835589B (zh) * 2020-06-30 2022-07-12 新华三信息安全技术有限公司 链路质量探测方法、路径选择方法及其装置
CN111817890B (zh) * 2020-07-07 2023-04-18 国家电网有限公司 数据同步处理方法、装置、计算机设备及存储介质
CN111954237B (zh) * 2020-08-19 2021-04-16 瀚一数据科技(深圳)有限公司 一种网络设备之间实现数据快速传输的系统及方法
CN115987763A (zh) * 2021-10-14 2023-04-18 华为技术有限公司 一种流的搬移方法及网络设备
CN120021221A (zh) * 2023-11-17 2025-05-20 华为技术有限公司 链路拥塞处理方法、通信系统及相关装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102739518A (zh) * 2012-05-30 2012-10-17 杭州华三通信技术有限公司 一种流量负载分担方法和设备
US20120294152A1 (en) * 2011-05-20 2012-11-22 The Regents Of The University Of California Hybrid Cross-Layer Routing Protocol for MANETs
CN104158761A (zh) * 2014-08-05 2014-11-19 华为技术有限公司 一种分流流量的方法和装置
US9049137B1 (en) * 2012-08-06 2015-06-02 Google Inc. Hash based ECMP load balancing with non-power-of-2 port group sizes
CN106487676A (zh) * 2016-10-27 2017-03-08 盛科网络(苏州)有限公司 一种基于大象流的动态ecmp芯片实现方法
CN107454006A (zh) * 2016-05-31 2017-12-08 华为技术有限公司 混合接入网络中的流量分发方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101447929B (zh) * 2008-12-26 2011-06-08 华为技术有限公司 一种流量选路方法、路由器和通信系统
CN103560971A (zh) * 2013-10-31 2014-02-05 华为技术有限公司 网络流量均衡控制方法和装置
CN105656731A (zh) * 2014-11-14 2016-06-08 华为技术有限公司 数据传输的方法、装置及系统
CN105763467A (zh) * 2016-03-25 2016-07-13 杭州华三通信技术有限公司 流量切换方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120294152A1 (en) * 2011-05-20 2012-11-22 The Regents Of The University Of California Hybrid Cross-Layer Routing Protocol for MANETs
CN102739518A (zh) * 2012-05-30 2012-10-17 杭州华三通信技术有限公司 一种流量负载分担方法和设备
US9049137B1 (en) * 2012-08-06 2015-06-02 Google Inc. Hash based ECMP load balancing with non-power-of-2 port group sizes
CN104158761A (zh) * 2014-08-05 2014-11-19 华为技术有限公司 一种分流流量的方法和装置
CN107454006A (zh) * 2016-05-31 2017-12-08 华为技术有限公司 混合接入网络中的流量分发方法和装置
CN106487676A (zh) * 2016-10-27 2017-03-08 盛科网络(苏州)有限公司 一种基于大象流的动态ecmp芯片实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3758409A4

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111541959A (zh) * 2020-04-21 2020-08-14 国网浙江省电力有限公司信息通信分公司 带宽调整方法及相关装置、设备、计算机可读存储介质
CN113595919A (zh) * 2020-04-30 2021-11-02 华为技术有限公司 一种负载分担的方法及装置
CN116192757A (zh) * 2022-12-27 2023-05-30 天翼云科技有限公司 负载均衡方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
EP3758409A4 (en) 2021-03-10
EP3758409A1 (en) 2020-12-30
CN110300431A (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
WO2019179157A1 (zh) 一种数据流量处理方法及相关网络设备
EP3278514B1 (en) Data transmission
CN113676361B (zh) 针对体验质量度量的按需探测
US8982778B2 (en) Packet routing in a wireless communications environment
EP1938528B1 (en) Provision of qos treatment based upon multiple requests
US8982835B2 (en) Provision of a move indication to a resource requester
CN104158761B (zh) 一种分流流量的方法和装置
CN102474463B (zh) 通信装置以及通信方法
CN108023758B (zh) 一种混合接入网络中处理报文的方法及网络设备
CN107770085B (zh) 一种网络负载均衡方法、设备及系统
CN108234309B (zh) 一种网络数据的传输方法
CN109120540B (zh) 传输报文的方法、代理服务器和计算机可读存储介质
KR20160091118A (ko) 멀티 호밍 기반의 네트워크를 통한 패킷 전송 장치 및 방법
CN110944358B (zh) 数据传输方法和设备
US10999210B2 (en) Load sharing method and network device
CN113595920A (zh) 网络拥塞控制方法及设备
CN102594665A (zh) 业务数据传输方法和装置
TWI757887B (zh) 用以促進一資料流從一發送端透過多路徑傳輸至一接收端的方法、網路控制器以及電腦程式產品
US20250039092A1 (en) Flow-Specific Congestion Handling
CN106506434B (zh) 业务数据传输方法及装置
CN107222299A (zh) 一种数据传输方法、系统和电子设备

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: 18910881

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018910881

Country of ref document: EP

Effective date: 20200924