CN117319301A - Network congestion control method and device - Google Patents

Network congestion control method and device Download PDF

Info

Publication number
CN117319301A
CN117319301A CN202210726633.5A CN202210726633A CN117319301A CN 117319301 A CN117319301 A CN 117319301A CN 202210726633 A CN202210726633 A CN 202210726633A CN 117319301 A CN117319301 A CN 117319301A
Authority
CN
China
Prior art keywords
packet loss
network
tcp
data transmission
transmission rate
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.)
Pending
Application number
CN202210726633.5A
Other languages
Chinese (zh)
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 CN202210726633.5A priority Critical patent/CN117319301A/en
Priority to PCT/CN2023/100424 priority patent/WO2023246616A1/en
Publication of CN117319301A publication Critical patent/CN117319301A/en
Pending legal-status Critical Current

Links

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
    • 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/23Bit dropping

Abstract

The application provides a network congestion control method and a device, wherein the network congestion control method is applied to entrance equipment of a park network, the entrance equipment is used for being connected with an operator network, and the method comprises the following steps: acquiring a real-time bandwidth between the inlet equipment and the operator network; and if the data transmission rate represented by the real-time bandwidth between the inlet equipment and the operator network is larger than the data transmission rate represented by a preset system threshold, carrying out packet loss processing on the TCP message from the operator network, wherein the system threshold is obtained according to the contracted bandwidth of the park network and the operator network. The TCP message from the operator network is subjected to packet loss processing through the entrance equipment of the park network, so that the throughput of the entrance equipment is reduced, the problem that the park network is congested due to the fact that the real-time bandwidth between the entrance equipment and the operator network is larger than the contracted bandwidth is avoided, the independence and the controllability of the park network are improved, and the dependence of the park network on the operator network is reduced.

Description

Network congestion control method and device
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a method and an apparatus for controlling network congestion.
Background
A campus network refers to an office local area network established for an enterprise or organization to enable digital office, production, and operation, such as a campus network, a community network, an enterprise network, and so on. With the gradual enrichment of park business, the park network bears more traffic, and when the transmission traffic of the park network in unit time exceeds the transmission traffic limited by the subscription bandwidth of the park network and an operator, the park network can generate network congestion, thereby affecting the normal work of users in the park network.
Disclosure of Invention
In view of the foregoing, it is necessary to provide a method and an apparatus for controlling network congestion, which perform packet loss processing on a TCP packet from an operator network through a campus network when a data transmission rate of the campus network exceeds a preset data transmission rate, so as to reduce the data transmission rate of the campus network and avoid network congestion of the campus network.
In a first aspect, an embodiment of the present application provides a network congestion control method, applied to an ingress device of a campus network, where the ingress device is configured to connect to an operator network, the method includes: acquiring a real-time bandwidth between the ingress device and the operator network; and if the data transmission rate represented by the real-time bandwidth between the inlet equipment and the operator network is greater than or equal to the data transmission rate represented by a preset system threshold, carrying out packet loss processing on the TCP message from the operator network, wherein the system threshold is obtained according to the contracted bandwidth of the park network and the operator network. By adopting the technical scheme, the data transmission rate represented by the real-time bandwidth between the park network and the operator network is larger than the data transmission rate represented by the preset system threshold, the park network side actively carries out packet loss processing on the TCP message from the operator network, and the throughput between the park network and the operator network is reduced by carrying out packet loss processing on the TCP message, so that the data transmission rate represented by the real-time bandwidth between the park network and the operator network is in the data transmission rate range represented by the preset system threshold, network congestion caused by bandwidth limitation of the park network is avoided, and meanwhile, the TCP message is actively lost through the park network, so that the independence and the controllability of the park network are reduced, and the dependence of the park network on the operator network is reduced.
In a possible implementation manner of the first aspect, the performing packet loss processing on a TCP packet from the operator network includes: acquiring priority information of the TCP message; and carrying out differential packet loss processing on the TCP message from the operator network according to the priority information. By adopting the technical scheme, different packet loss processing modes can be adopted for the TCP messages with different priority information, for example, the packet loss processing is not carried out on the TCP with higher priority, and the packet loss processing is carried out on the TCP messages with lower priority only. In a bandwidth limited scenario, different users in a campus network are provided with services of different needs.
In a possible implementation manner of the first aspect, the obtaining priority information of the TCP packet includes: obtaining a message identifier of the TCP message, wherein the message identifier is used for uniquely identifying the TCP message; and determining the priority information of the TCP message according to the message identifier.
By adopting the technical scheme, the TCP messages are identified through the message identification, and the priority information of each TCP message is determined through the message identification, so that the TCP messages from the operator network are subjected to differential packet loss processing according to the priority information. Wherein the message identifier can be an IP address or a MAC address.
In a possible implementation manner of the first aspect, the performing differential packet loss processing on the TCP packet from the operator network according to the priority information includes: determining a message to be processed in a TCP message from the operator network according to the priority information; and carrying out packet loss processing on the message to be processed, wherein the priority of the message to be processed is lower than the priority of other TCP messages in all TCP messages from the operator network.
By adopting the technical scheme, the ingress equipment of the park network only carries out packet loss processing on the TCP message with low priority, directly forwards the TCP message with high priority to the corresponding client, and directly forwards the TCP message of the high priority user due to the fact that the TCP message with high priority corresponds to the high priority user, so that the use experience of the high priority user under the scene of limited bandwidth is ensured.
In one possible implementation manner of the first aspect, the to-be-processed packet includes multiple TCP packets, and the performing packet loss processing on the to-be-processed packet includes: determining packet loss parameters of each TCP message in the message to be processed according to the priority information of the message to be processed; and carrying out packet loss processing on the TCP message corresponding to the message to be processed according to the packet loss parameters.
By adopting the technical scheme, the corresponding TCP message is subjected to packet loss processing according to the packet loss parameters corresponding to the priority information, so as to realize the differentiated processing of various TCP messages in the message to be processed.
Further, the packet loss parameter may be a packet loss rate or a packet loss number, and the TCP packets with different priority information correspond to different packet loss parameters.
In a possible implementation manner of the first aspect, the performing differential packet loss processing on the TCP packet from the operator network according to the priority information includes: determining a packet loss parameter of a TCP message from the operator network according to the priority information; and carrying out packet loss processing on the TCP message from the operator network according to the packet loss parameters, wherein different priority information corresponds to different packet loss parameters.
By adopting the technical scheme, all TCP messages from the operator network are subjected to packet loss processing, and the TCP messages with different priority information are subjected to packet loss processing through different packet loss parameters because different priority information corresponds to different packet loss parameters, so that the TCP messages from the operator network are subjected to differential packet loss processing.
In one possible implementation manner of the first aspect, the ingress device stores a packet loss sliding window, and the performing differential packet loss processing on the TCP packet from the operator network according to the priority information includes: and carrying out differential packet loss processing on the TCP message from the operator network according to the packet loss sliding window.
By adopting the technical scheme, the TCP message from the operator network is subjected to differential packet loss processing through a preset packet loss sliding window in the inlet equipment.
In a possible implementation manner of the first aspect, the performing, according to the packet loss sliding window, packet loss processing on the TCP packet includes: receiving a TCP message with the size of the packet loss sliding window from the operator network; carrying out packet loss processing on the TCP message with the size of the packet loss sliding window according to a preset packet loss parameter; and if the data transmission rate represented by the real-time bandwidths of the entry device and the operator network is larger than or equal to the data transmission rate represented by the system threshold after the packet loss processing, gradually increasing the packet loss parameter, and carrying out packet loss processing on the TCP message with the size of the packet loss sliding window received from the operator network according to the increased packet loss parameter until the data transmission rate represented by the real-time bandwidths of the entry device and the operator network is smaller than the data transmission rate represented by the system threshold.
By adopting the technical scheme, in the process of carrying out packet loss on the TCP message with the size of the packet loss sliding window from the operator network, the data transmission rate represented by the real-time bandwidth of the access equipment and the operator network is rapidly reduced to be smaller than the data transmission rate represented by the system threshold value by gradually increasing the packet loss parameter.
In a possible implementation of the first aspect, if the data transmission rate characterized by the real-time bandwidth between the ingress device and the operator network is changed from a data transmission rate characterized by being greater than or equal to the system threshold to a data transmission rate characterized by being less than the system threshold, the method further comprises: gradually reducing the packet loss parameter, and carrying out packet loss on the received TCP message with the size of the packet loss sliding window according to the reduced packet loss parameter until the packet loss parameter is 0, and not carrying out packet loss processing on the TCP message from the operator network.
By adopting the technical scheme, the data transmission rate represented by the real-time bandwidth between the inlet equipment and the operator network is changed from the data transmission rate represented by the system threshold value to the data transmission rate represented by the system threshold value, the packet loss parameters are gradually reduced, and the packet loss is carried out according to the reduced packet loss parameters.
In a possible implementation of the first aspect, the method further includes: adjusting the packet loss parameter according to the relation between the data transmission rate represented by the real-time bandwidth between the entrance equipment and the operator network and the data transmission rate represented by the system threshold; and carrying out packet loss processing on the TCP message from the operator network according to the adjusted packet loss parameters.
In one possible implementation manner of the first aspect, if the data transmission rate represented by the real-time bandwidth of the ingress device is greater than the data transmission rate represented by the preset system threshold, performing packet loss processing on the TCP packet from the operator network includes: if the system threshold is larger, the data transmission rate represented by the system threshold is smaller, and when the actual bandwidth is larger than or equal to the system threshold, the TCP message from the operator network is subjected to packet loss processing; and if the system threshold is larger, the data transmission rate represented by the system threshold is smaller, and when the absolute value of the difference value between the contracted bandwidth and the actual bandwidth is smaller than or equal to the system threshold, the TCP message from the operator network is subjected to packet loss processing.
Specifically, when the system threshold is larger, the data transmission rate represented by the system threshold is smaller, and the data transmission rate represented by the real-time bandwidth between the ingress device and the operator network is larger than or equal to the data transmission rate represented by the preset system threshold, which is: the actual bandwidth is greater than or equal to the system threshold.
When the system threshold is larger, the data transmission rate represented by the system threshold is smaller, and the data transmission rate represented by the real-time bandwidth between the entrance equipment and the operator network is larger than or equal to the data transmission rate represented by the preset system threshold, which is: the absolute value of the difference between the subscription bandwidth and the actual bandwidth is less than or equal to the system threshold. In a possible implementation of the first aspect, a data transmission rate characterized by a packet forwarding performance of the ingress device is greater than a data transmission rate characterized by the subscription bandwidth.
In a second aspect, an embodiment of the present application provides an ingress device, where the ingress device includes a receiving ingress module, a flow detection module, a back pressure control module, a sliding packet loss module, a forwarding module, and an egress forwarding module.
The system comprises a receiving inlet module, a flow detection module and a control module, wherein the receiving inlet module is used for receiving data sent by an operator network, and the flow detection module is used for detecting the transmitted data quantity within the preset time of inlet equipment so as to acquire the real-time bandwidth between the inlet equipment and the operator network; if the data transmission rate represented by the real-time bandwidth of the ingress device is smaller than the data transmission rate represented by the system threshold, the forwarding module is used for forwarding the data sent by the operator network to the egress forwarding module, and the egress forwarding module is used for forwarding the data sent by the forwarding module; if the data transmission rate represented by the real-time bandwidth of the ingress device is greater than or equal to the data transmission rate represented by the system threshold, the back pressure control module and the sliding packet loss module cooperate to perform packet loss processing on the TCP message from the operator network, and forward the TCP message after packet loss processing to the egress forwarding module so that the egress forwarding module forwards the received data.
In a third aspect, embodiments of the present application provide an inlet device comprising: one or more processors; a storage means for storing one or more programs; the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the network congestion control method of any of the first aspects.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the network congestion control method according to any of the first aspects.
In a fifth aspect, embodiments of the present application provide a campus network comprising an ingress device for performing the network congestion control method of any of the first aspects.
It should be appreciated that the technical effects of any one of the designs of the second to fifth aspects may refer to the advantages of the corresponding methods provided above, and are not described here again.
Drawings
Fig. 1 is a schematic diagram of a system architecture of a system network.
Fig. 2 is a flow chart of a network congestion control method according to an embodiment of the present application.
Fig. 3 is a flow chart of a packet loss processing method according to an embodiment of the present application.
Fig. 4 is a schematic diagram of packet loss processing of a packet loss sliding window according to an embodiment of the present application.
Fig. 5 is a schematic diagram of a change over time of a packet loss parameter of an ingress device according to an embodiment of the present application.
Fig. 6 is a schematic diagram of a state machine of an ingress device according to an embodiment of the present application.
Fig. 7 is a schematic block diagram of an inlet device according to an embodiment of the present application.
Fig. 8 is a hardware schematic of an inlet device according to an embodiment of the present application.
Detailed Description
The terms "first" and "second" are used below for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more of the described features. In the description of embodiments of the present application, words such as "exemplary" or "such as" are used to identify examples, illustrations, or descriptions. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used in the description of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. It should be understood that in this application, unless otherwise indicated, "a plurality" means two or more than two, "and/or" includes any and all combinations of one or more of the associated listed items.
First, technical terms related to embodiments of the present application are described:
1. bandwidth (Max net bit rate)
Bandwidth refers to the amount of data that can be transmitted in a unit of time (typically 1 second). Where subscription bandwidth is the theoretical highest achievable rate between a user (e.g., a campus network, which is a user subscribed to the carrier's network) and the access device to the user device of the carrier as specified in the broadband service agreement entered into by the carrier.
2. Throughput (throughput)
Throughput refers to the amount of data (measured in bits, bytes, packets, etc.) successfully transferred per unit time for a network, device, port, virtual circuit, or other facility.
3. TCP congestion control
TCP congestion control is an algorithm for transmission control protocol (Transmission Control Protocol, TCP) to avoid network congestion, and is a congestion control measure. TCP congestion control uses a diversified network congestion control method based on a line increase and decrease pattern (including slow start and congestion window patterns) to control congestion.
For easy understanding, the following describes the technical solutions in the embodiments of the present application with reference to the drawings.
A schematic architecture of a system network is first described in connection with fig. 1. As shown in fig. 1, the system network includes a campus network and an operator network. The carrier network includes an egress device 210, and communicates with the campus network through the egress device 210. For example, the carrier network sends downstream data to the campus network via the egress device 210. The egress device 210 may be a router, a switch, or the like.
The campus network includes ingress devices 110, switches 130, and clients 150.
The campus network is connected to the operator network through an ingress device 110. Ingress device 110 may be an edge switch, access switch, or the like. The ingress device 110 is used to enable communication between the campus network and the carrier network. For example, the campus network receives downstream data sent by the carrier network or sends upstream data to the carrier network through the ingress device 110. Wherein the ingress device 110 of the campus network of fig. 1 is directly connected to and communicates with the egress device 210 of the carrier network. It is to be appreciated that in other embodiments, the ingress device 110 of the campus network may be coupled to the egress device 210 of the carrier network via other forwarding devices or networks, such that the campus network communicates with the carrier network via other forwarding devices or networks.
As shown in fig. 1, clients 150 include client 1, client 2, client 3, and client 4. It is understood that fig. 1 is only an example, but not limited thereto. The client 150 may be a mobile terminal, a notebook computer, a desktop computer, or the like.
It will be appreciated that when the carrier network communicates with the campus network, the carrier network transmits downstream data from the carrier network to the ingress device 111 of the campus network via the egress device 210. The ingress device 110 forwards the downstream data to the corresponding switch 130 and by the switch 130 to the campus network's client 150. The ingress device 110 also receives upstream data sent by the switch 130 from the client 150 and forwards the upstream data to the egress device 210 of the carrier network, which egress device 210 receives upstream data from the campus network.
Obviously, when the traffic demand of the client 150 in the campus network becomes large, the amount of data transmitted between the ingress device 110 and the egress device 210 of the campus network in unit time exceeds the maximum amount of data defined by the subscription bandwidth of the campus network and the operator, which in turn causes network congestion to occur in the campus network. Network congestion can lead to reduced network transmission performance of the campus network, affecting the proper operation of all traffic of the campus network.
In view of the foregoing, the present application provides a network congestion control method by detecting real-time bandwidth between ingress devices 110 of a campus network and an operator network. When the data transmission speed represented by the real-time bandwidth between the ingress device 110 and the operator network reaches the preset data transmission rate, the ingress device 110 performs packet loss processing on the TCP packet from the operator network. The TCP message is subjected to packet loss processing so as to reversely control the overall flow of the entrance equipment 110 of the park network, thereby reducing the throughput of the entrance equipment 110 of the park network, ensuring that the real-time bandwidth between the entrance equipment 110 of the park network and the operator network is always kept within the contracted bandwidth range of the park network and the operator, and avoiding network congestion of the park network.
In particular, the transmission of messages between the operator network and the campus network is typically achieved through a sliding window mechanism. When the ingress device 110 performs packet loss processing on the TCP packet from the carrier network, the acknowledgement message of the TCP packet sent by the carrier network receiving campus network is reduced. In this way, the operator network will reduce the transmission window of the TCP packet according to the TCP congestion control, so that the data transmitted between the operator network and the campus network is reduced, the throughput of the ingress device 110 of the campus network is reduced, and the real-time bandwidth between the campus network and the operator network is reduced, so that the real-time bandwidth between the ingress device 110 of the campus network and the operator network is always kept within the subscription bandwidth of the campus network and the operator.
Fig. 2 is a schematic flow chart of a network congestion control method according to an embodiment of the present application. The network congestion control method can be applied to the entrance equipment of the campus network. The following describes in detail an example in which the network congestion control method is applied to the ingress device 110 of the campus network in fig. 1.
S201, acquiring a real-time bandwidth between the ingress device 110 and the operator network.
Specifically, the real-time bandwidth may be calculated by detecting the amount of data transmitted by the ingress device 110 for a preset time and according to the amount of data transmitted and the preset time. Illustratively, the amount of data transmitted by the ingress device 110 of the campus network in 3 seconds is 300MB, and the actual bandwidth between the ingress device 110 and the operator network is 300MB/3 s=100 MB/s.
It is understood that in embodiments of the present application, the real-time bandwidth may also be referred to as the throughput of ingress device 110. The real-time bandwidth may characterize the data transmission rate between the ingress device 110 and the carrier network. The amount of data transmitted includes downstream data received by the ingress device 110 from the operator network and upstream data forwarded by the ingress device 110 to the operator network.
S202, if the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is greater than or equal to the data transmission rate represented by the system threshold, performing packet loss processing on the TCP message from the operator network.
The system threshold is obtained according to the contracted bandwidth of the park network and the operator network. For example, if the subscription bandwidth is 100Mb/s, the system threshold may be 90Mb/s.
It will be appreciated that the relationship of real-time bandwidth to subscription bandwidth is determined by defining the relationship of the data transmission rate characterized by the real-time bandwidth between ingress device 110 and the carrier network to the data transmission rate characterized by the system threshold. When the data transmission rate characterized by the real-time bandwidth between the ingress device 110 and the carrier network is greater than or equal to the data transmission rate characterized by the system threshold, it is indicated that the real-time bandwidth between the ingress device 110 and the carrier network is close to the subscription bandwidth between the ingress device 110 and the carrier network, and that there is a risk of network congestion for the campus network. When the data transmission rate characterized by the real-time bandwidth between the ingress device 110 and the carrier network is less than the data transmission rate characterized by the system threshold, it is indicated that there is a large unused bandwidth between the real-time bandwidth between the ingress device 110 and the carrier network and the subscription bandwidth between the ingress device 110 and the carrier network, without processing the data transmitted between the ingress device 110 and the carrier network.
For example, if the subscription bandwidth is 100Mb/s, the system threshold may be 90Mb/s, which is greater than the system threshold when the real-time bandwidth between the ingress device 110 and the carrier network is 92Mb/s, indicating that the real-time bandwidth between the ingress device 110 and the carrier network is close to the subscription bandwidth between the ingress device 110 and the carrier network. In order to avoid that the real-time bandwidth between the campus network and the operator network exceeds the subscription bandwidth, the ingress device 110 side performs packet loss processing on the TCP message in the downlink data sent from the operator network, so as to reduce the real-time bandwidth between the ingress device 110 and the operator network, ensure that the real-time bandwidth between the ingress device 110 and the operator network is within the subscription bandwidth range between the ingress device 110 and the operator network, and avoid network congestion of the campus network.
It is understood that the data transmission rate characterized by the system threshold may be 90% -95% of the data transmission rate characterized by the subscription bandwidth. The system threshold value can not only ensure the bandwidth utilization rate of the park network, but also avoid the phenomenon that the real-time bandwidth of the park network exceeds the subscription bandwidth, so that the park network is congested. Of course, in other embodiments, the system threshold may be determined based on the network status of the campus network and the carrier network.
It will be appreciated that in some embodiments, the greater the system threshold, the greater the data transmission rate characterized by the system threshold. For example, the system threshold is a bandwidth threshold, which is used to indicate the bandwidth used by the campus network, and the specific implementation of step S202 may be to perform packet loss processing on the TCP packet from the operator network when the actual bandwidth is greater than or equal to the system threshold. For example, the subscription bandwidth is 100Mb/s, the system threshold is 90Mb/s, and when the real-time bandwidth is greater than or equal to 90Mb/s, the TCP message from the operator network is subjected to packet loss processing.
In some embodiments, the greater the system threshold, the less the data transmission rate characterized by the system threshold. For example, the system threshold is an unused bandwidth threshold, a threshold that is used to indicate unused bandwidth of the campus network. A specific implementation manner of step S202 may be to perform packet loss processing on a TCP packet from the operator network when the absolute value of the difference between the subscription bandwidth and the actual bandwidth is less than or equal to the system threshold. For example, when the subscription bandwidth is 100Mb/s, the system threshold is 10Mb/s, and the real-time bandwidth is 91Mb/s, and the absolute value of the difference between the subscription bandwidth and the actual bandwidth is 9Mb/s and less than the system threshold, the packet loss processing is performed on the TCP message from the operator network.
In summary, when the larger the system threshold is, the smaller the data transmission rate represented by the system threshold is, the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is greater than or equal to the data transmission rate represented by the preset system threshold, which is: the actual bandwidth is greater than or equal to the system threshold. When the system threshold is larger, the data transmission rate represented by the system threshold is smaller, and the data transmission rate represented by the real-time bandwidth between the inlet equipment and the operator network is larger than or equal to the data transmission rate represented by the preset system threshold, wherein the data transmission rate represented by the system threshold is: the absolute value of the difference between the signed bandwidth and the actual bandwidth is less than or equal to a system threshold.
It will be appreciated that in some embodiments, when the data transmission rate characterized by the real-time bandwidth of the ingress device 110 of the campus network is greater than or equal to the data transmission rate characterized by the system threshold, the data transmission rate characterized by the packet forwarding performance of the ingress device 110 is greater than the data transmission rate characterized by the subscription bandwidth in order to ensure that the on-campus network traffic may proceed properly. Wherein the packet forwarding capability is used to indicate the data forwarding capabilities of the ingress device 110.
In an embodiment, referring to fig. 3, the packet loss processing for the TCP packet from the operator network specifically includes:
s301, acquiring priority information of TCP messages from an operator network.
The priority information is used for indicating priority levels or importance degrees of a plurality of different TCP messages.
It is understood that the data transmitted between the campus network and the carrier network includes TCP messages and non-TCP messages (e.g., UDP messages). It should be noted that, in the embodiment of the present application, the ingress device 110 only processes the received TCP packet, and other non-TCP packets may be directly forwarded to the corresponding client without packet loss processing.
It will be appreciated that since the plurality of TCP messages received by the ingress device 110 from the operator network correspond to different clients, that is, the ingress device 110 forwards the TCP messages to the corresponding clients. Thus, the priority information of the TCP message corresponding to each client can be determined through the priority information of the client. Illustratively, the priority information includes a low priority and a high priority. Taking fig. 1 as an example, assuming that the clients 2, 3 and 4 in the campus network are low priority and the client 1 is high priority, the priority of the TCP packet corresponding to the client 1 is greater than the priority of the TCP packet corresponding to the clients 2, 3 and 4.
In some embodiments, the step of obtaining the priority information of the TCP packet from the carrier network in S301 includes:
acquiring a message identifier of a TCP message from an operator network;
and determining priority information of the corresponding TCP message according to the message identification.
Specifically, the ingress device 110 receives a plurality of TCP messages sent by the operator network, and then obtains a message identifier corresponding to each TCP message, and determines a priority corresponding to each TCP message according to the message identifier.
It may be appreciated that, in the embodiment of the present application, the packet identifier is used to identify a TCP packet or a client used by a user, so that an association relationship between the TCP packet and the client may be established through the packet identifier.
It is understood that the message identification may be an IP address or a MAC address. If the message identifier is an IP address, the IP address may be the IP address of the client. Of course, the message identifier may also be other parameters, such as a user-defined parameter or a destination port number in the TCP message, which is not limited herein, and only needs to ensure that the parameter can uniquely identify the TCP message and the client used by the user.
In some embodiments, the first correspondence is stored in the inlet device 110. The first corresponding relation comprises message identifications and priority information corresponding to each message identification. Correspondingly, determining the priority information of the corresponding TCP message according to the message identifier comprises:
And determining the priority information of the TCP message according to the message identification and the first corresponding relation.
Specifically, the ingress device 110 matches the packet identifier with the packet identifier in the first correspondence relationship to obtain priority information corresponding to the TCP packet.
In other embodiments, the ingress device 110 may also obtain the priority information of the corresponding TCP packet in other manners, for example, training an identification model through a machine learning algorithm, identifying the input TCP packet to the identification model, and outputting the priority information of the TCP packet by the identification model.
S302, carrying out differential packet loss processing on the TCP message according to the priority information.
It will be appreciated that when the campus network is commonly used by multiple users, different users perform different types of services through the campus network, or different users have different user identities, resulting in different users having different priorities, and thus clients used by the multiple users having different priorities. Therefore, the differential packet loss processing can be carried out on the plurality of TCP messages according to the priority information, and different processing modes can be adopted on the TCP messages of related users according to the priority of the users or the importance degree of the users executing the service. For example, in the case of bandwidth limitation, the TCP packets of the non-important users are dropped, and the TCP packets of the important users are not dropped, so that the real-time bandwidth between the campus network and the operator network is within the range of the contracted bandwidth between the ingress device 110 and the operator network, and the network congestion of the campus network is avoided. In addition, the TCP message corresponding to the important user does not perform packet loss or the packet loss rate of performing packet loss on the important user is smaller than the packet loss rate of performing packet loss on the common user, so that the use experience of the important user (or the user with higher priority) can be ensured under the scene of limited bandwidth of the campus network.
For example, referring to fig. 1, assuming that priorities of the client 2, the client 3 and the client 4 are equal, and priorities of TCP messages corresponding to the client 1 are greater than priorities of TCP messages corresponding to the client 2, the client 3 and the client 4, the ingress device 110 performs packet loss processing only on TCP messages corresponding to the client 2, the client 3 and the client 4, and does not perform packet loss processing on TCP messages of the client 1.
S302 is described in detail below in conjunction with embodiment 1 and embodiment 2.
Example 1:
in embodiment 1, in S302, differential packet loss processing is performed on a TCP packet according to priority information, including:
and determining a message to be processed in the TCP message according to the priority information, and carrying out packet loss processing on the message to be processed. The priority of the message to be processed is lower than the priority of the rest TCP messages in the TCP messages from the operator network.
Specifically, the ingress device 110 classifies TCP messages from the operator network into pending messages and normal processing messages according to the priority information. The priority of the message to be processed is lower than that of the message to be processed normally. The ingress device 110 performs packet loss processing on the message to be processed, and forwards the normal processing message normally. In this way, the ingress device 110 performs different packet loss processing modes on the TCP packets corresponding to the different priority information, so as to implement differential packet loss processing on the TCP packets.
Illustratively, ingress device 110 receives 70 TCP messages from an operator network: message 1 through message 70. Next, the ingress device 110 acquires priority information of 70 TCP packets, and then determines that: if the priority of the messages 1 to 10 is higher than that of the messages 11 to 70, the ingress device 110 forwards the messages 1 to 10 to the corresponding clients normally, and performs packet loss processing on the messages 11 to 70 according to a preset packet loss parameter (for example, the packet loss parameter is a packet loss rate).
It can be appreciated that, in another embodiment, if the message to be processed includes a plurality of TCP messages, the plurality of TCP messages have a plurality of priority information, and the second correspondence between the priority information of the message to be processed and the packet loss parameter is stored in the ingress device 110. Then, performing packet loss processing on the message to be processed may include:
determining packet loss parameters of the message to be processed according to the priority information of the message to be processed and the second corresponding relation;
and carrying out packet loss processing on a plurality of TCP messages to be processed according to the packet loss parameters.
Specifically, the multiple TCP packets in the to-be-processed packet have different priorities, and the ingress device 110 may set different packet loss rates according to the TCP packets with different priorities, and perform packet loss processing on the corresponding TCP packets according to the packet loss rates. Illustratively, the pending messages include 60 TCP messages: TCP message 11 to TCP message 70, wherein the priority of TCP message 11 to TCP message 30 is highest, the priority of TCP message 31 to TCP message 50 is next highest, and the priority of TCP message 51 to TCP message 70 is lowest. The ingress device 110 determines that the packet loss rate of the TCP packet 11 to the TCP packet 30 is 10%, the packet loss rate of the TCP packet 31 to the TCP packet is 15%, and the packet loss rate of the TCP packet 51 to the TCP packet 70 is 20% according to the priority information and the second correspondence, and then performs packet loss processing on the corresponding TCP packet according to the packet loss rate.
The packet loss parameter may be a packet loss rate. Of course, in other embodiments, the packet loss parameter may also be the number of packets lost.
It will be appreciated that the packet loss parameters may be preset in the ingress device 110 for the user. Of course, in other embodiments, the packet loss parameters may be determined according to the network status of the campus network and the carrier network.
Example 2:
in embodiment 2, the ingress device 110 receives TCP messages from the carrier network including a plurality of TCP messages, e.g., one for each client. In S302, differential packet loss processing is performed on the TCP packet from the operator network according to the priority information, including:
determining a packet loss parameter of the TCP message according to the priority information;
carrying out packet loss processing on TCP messages from an operator network according to the packet loss parameters;
the TCP messages with different priority information have different packet loss parameters.
Specifically, the ingress device 110 performs packet loss processing on all TCP packets from the operator network, and performs different packet loss processing on TCP packets with different priority information. Namely, the ingress device 110 obtains packet loss parameters corresponding to each type of TCP packet according to the priority information, and since the TCP packets with different priorities have different packet loss parameters, the ingress device 110 performs packet loss processing on a plurality of TCP packets of corresponding types according to the packet loss parameters.
Illustratively, the packet loss parameter is a packet loss rate, and the ingress device receives 60 TCP packets sent from the carrier network: the ingress device determines that the packet loss rate of the TCP packet 11 to the TCP packet 30 is 10%, the packet loss rate of the TCP packet 31 to the TCP packet is 15%, the packet loss rate of the TCP packet 51 to the TCP packet 70 is 20%, and the ingress device 110 performs packet loss processing on the corresponding TCP packet according to the packet loss rate, where the priority of the TCP packet 11 to the TCP packet 30 is highest, the priority of the TCP packet 31 to the TCP packet 50 is lowest, and the priority of the TCP packet 31 to the TCP packet 70 is lowest. Of course, in other embodiments, if the ingress device determines that the packet loss rate of the TCP packet 11 to the TCP packet 30 is 0%, the packet loss rate of the TCP packet 31 to the TCP packet is 15%, and the packet loss rate of the TCP packet 51 to the TCP packet 70 is 20% according to the priority information, the ingress device does not perform packet loss processing on the TCP packet 11 to the TCP packet 30.
It will be appreciated that in some embodiments, a packet loss sliding window is preset in the ingress device 110. The size of the packet loss sliding window can be preset by a user, and can also be determined according to the network state (such as real-time network speed) of the campus network. Correspondingly, the ingress device 110 may perform packet loss processing on the TCP packet from the carrier network according to the packet loss sliding window. Specifically, in embodiment 1 and embodiment 2, performing packet loss processing on a TCP packet from an operator network according to a packet loss parameter includes:
And carrying out packet loss processing on the TCP message from the operator network according to the packet loss parameters and the packet loss sliding window.
For example, referring to fig. 4, assume that the size of the packet loss sliding window is 10 TCP packets, the packet loss parameter is the number of packet losses, and the number of packet losses is 3. Thus, when the ingress device 110 receives 10 TCP messages from the operator network, 3 of the TCP messages are randomly discarded according to the packet loss sliding window and the packet loss parameter (3) as shown in the black box in fig. 4.
Of course, in other embodiments, if the ingress device 110 only performs packet loss on a to-be-processed packet in a TCP packet from the operator network, the ingress device 110 receives the to-be-processed packet with the size of the packet loss sliding window each time, and performs packet loss processing according to the to-be-processed packet with the size of the packet loss sliding window. For example, the size of the packet loss sliding window is 10 TCP packets, the packet loss parameter is the number of packet loss, the number of packet loss is 3, the ingress device 110 receives 50 TCP packets from the operator network, it receives 10 packets to be processed each time, and performs packet loss processing on the packets to be processed, that is, randomly discards 3 TCP packets in the packets to be processed.
It may be appreciated that referring to fig. 2 again, after performing packet loss processing on a TCP packet from an operator network for a preset time, or after performing packet loss processing on a TCP packet of a preset size (e.g. 10 MB) from an operator network, the network congestion control method further includes:
Acquiring real-time bandwidth between the ingress device 110 and the carrier network;
if the data transmission rate represented by the real-time bandwidth of the ingress device 110 is greater than or equal to the data transmission rate represented by the system threshold, performing packet loss processing on the subsequently received TCP message from the operator network, and detecting the real-time bandwidth between the ingress device 110 and the operator network after the packet loss processing; if the data transmission rate represented by the real-time bandwidth of the ingress device 110 is greater than or equal to the data transmission rate represented by the system threshold, packet loss processing is performed on the subsequently received TCP packet from the operator network, and the processing is sequentially circulated until the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is less than the data transmission rate represented by the system threshold. I.e. no packet loss processing is performed on subsequently received TCP packets from the operator network.
It may be appreciated that in some embodiments, performing packet loss processing on a TCP packet from an operator network according to a packet loss parameter includes:
receiving a TCP message with the size of a packet loss sliding window from an operator network;
carrying out packet loss processing on the TCP message with the size of the packet loss sliding window according to the packet loss parameters;
If the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is greater than or equal to the data transmission rate represented by the system threshold, gradually increasing the packet loss parameter, and carrying out packet loss on the received TCP message with the size of the packet loss sliding window according to the increased packet loss parameter until the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is less than the data transmission rate represented by the system threshold.
It can be understood that, if the packet loss parameter of the TCP packet from the operator network is fixed, the ingress device 110 performs packet loss processing on the TCP packet from the operator network according to the packet loss parameter, and then the ingress device 110 acquires the real-time bandwidth between the ingress device 110 and the operator network again. If the ingress device 110 determines that the data transmission rate represented by the real-time bandwidth is still greater than the data transmission rate represented by the system threshold, the ingress device 110 may perform the packet loss processing on the newly received TCP packet according to the packet loss parameter after the packet loss processing is gradually increased, so as to implement rapid adjustment on the rapidly increased real-time bandwidth between the ingress device 110 and the operator network.
In addition, the ingress device 110 may implement a rapid decrease in the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network to be less than the data transmission rate represented by the system threshold by gradually increasing the packet loss parameters corresponding to the packet loss process.
For example, assume that the packet loss sliding window is 20 TCP packets, the packet loss parameter is the number of packet loss, and the number of packet loss is 4. If the ingress device 110 receives 20 TCP messages from the operator network, the ingress device 110 obtains real-time bandwidth between the ingress device 110 and the operator network after discarding 4 TCP messages in the 20 TCP messages. If the data transmission rate represented by the real-time bandwidth is still greater than or equal to the data transmission rate represented by the system threshold, the number of lost packets is increased to 8, then 20 TCP messages from the operator network are received, and after the ingress device 110 discards 8 TCP messages in the 20 TCP messages, the real-time bandwidth of the ingress device 110 and the external network is obtained again. If the data transmission rate represented by the real-time bandwidth is still greater than or equal to the data transmission rate represented by the system threshold, the number of lost packets is continuously increased until the data transmission rate represented by the real-time bandwidth is less than the data transmission rate represented by the system threshold. In this way, when the received TCP packet is dropped to reduce the real-time bandwidth between the ingress device 110 and the operator network, by gradually increasing the packet loss parameter, the real-time bandwidth is reduced rapidly, so as to avoid that the real-time bandwidth of the campus network exceeds the subscription bandwidth.
In the embodiment of the present application, the ingress device 110 may gradually increase the packet loss parameter through a multiplication method. Illustratively, assuming that the packet loss parameter is the number of packets lost drop, when the real-time bandwidth of the ingress device 110 and the operator network is acquired for the first time, drop=0, step=1. Step is where the ingress device 110 first detects real-time bandwidth between the ingress device 110 and the carrier network. When the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is greater than the data transmission rate represented by the system threshold, the ingress device 110 may sequentially increase the number of dropped packets according to the following multiplication code:
threshold=drop;
drop=drop+step;
step=step*2;
the threshold may be a packet loss parameter preset by the ingress device 100, and the packet loss parameter may be a packet loss rate or a packet loss number.
Then, the ingress device 110 performs packet loss processing on the TCP packet from the packet loss sliding window of the operator network according to the gradually increased packet loss number until the ingress device 110 detects that the data transmission rate represented by the real-time bandwidth between the ingress device and the operator network is smaller than the data transmission rate represented by the system threshold.
Of course, in other embodiments, the ingress device 110 may take other methods of increasing the packet loss parameter, which are not limited in this application.
It will be appreciated that in other embodiments, when the data transmission rate characterized by the real-time bandwidth between the ingress device 110 and the operator network is changed from a data transmission rate characterized by greater than or equal to the system threshold to a data transmission rate characterized by less than the system threshold, the network congestion control method further comprises:
gradually reducing the packet loss parameter, and carrying out packet loss processing on the TCP message of the packet loss sliding window according to the reduced packet loss parameter until the packet loss parameter becomes 0.
For example, the ingress device 110 may gradually reduce the packet loss parameter by a dichotomy, that is, divide the packet loss parameter by 2 to obtain half of the original packet loss parameter, and perform packet loss processing on the TCP packet of the packet loss sliding window according to the reduced packet loss parameter until the packet loss parameter is reduced to 0, so that no packet loss processing is performed on all the TCP packets from the operator network at this time.
It will be appreciated that the ingress device 110 may employ other methods of packet loss parameter reduction, which are not limited in this application.
It may be understood that, in the above embodiment, by gradually increasing the packet loss parameter until the packet loss parameter is increased to the target packet loss parameter, when the TCP packet from the operator network is subjected to packet loss processing according to the target packet loss parameter and the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is smaller than the data transmission rate represented by the system threshold, by gradually decreasing the packet loss parameter and performing packet loss processing according to the decreased packet loss parameter, and detecting the relationship between the real-time bandwidth after packet loss processing and the data transmission rate represented by the system threshold, if the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is still smaller than the data transmission rate represented by the system threshold, the packet loss parameter is decreased again, and the packet loss processing is performed according to the decreased packet loss parameter, and the steps are sequentially cycled until the packet loss parameter is 0, and the packet loss processing is stopped or if the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is larger than the data transmission rate represented by the system threshold, the packet loss parameter is gradually increased, and the packet loss processing is performed according to the increased packet loss parameter.
In some embodiments, if after the TCP packet from the packet loss sliding window of the operator network is subjected to packet loss processing according to the reduced packet loss parameter, the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is changed to be greater than the data transmission rate represented by the system threshold again, the ingress device 110 gradually increases the packet loss parameter, then performs packet loss processing on the TCP packet from the operator network according to the increased packet loss parameter, and then increases or decreases the packet loss parameter according to the relationship between the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network and the data transmission rate represented by the system threshold, for example, the data transmission rate represented by the real-time bandwidth between the ingress device 110 and the operator network is greater than the data transmission rate represented by the system threshold again, then increases the packet loss parameter, and until the packet loss parameter is 0, the ingress device 110 does not perform packet loss processing on the TCP packet from the operator network any more.
For example, referring to fig. 5, fig. 5 is a schematic diagram showing a change of a packet loss parameter of the ingress device 110 with time. In fig. 6, the ordinate is the packet loss number, the abscissa is the time, before the time is a, the data transmission rate represented by the real-time bandwidths of the ingress device 110 and the operator network is smaller than the data transmission rate represented by the system threshold, the ingress device 110 directly forwards the TCP packet from the operator network to the client 150, after the time a, the data transmission rate represented by the real-time bandwidths of the ingress device 110 and the operator network is larger than the data transmission rate represented by the system threshold, the ingress device 100 performs packet loss processing on the TCP packet from the operator network, and gradually increases the packet loss parameter, when the time B is reached, the data transmission rate represented by the real-time bandwidths of the ingress device 110 and the operator network is smaller than the data transmission rate represented by the system threshold, the ingress device 110 gradually reduces the packet loss parameter, and performs packet loss processing on the TCP packet from the operator network according to the reduced packet loss parameter, when the time C is reached, the data transmission rate represented by the real-time bandwidths of the ingress device 110 and the operator network is smaller than the data transmission rate represented by the system threshold, the ingress device 110 is repeatedly processed according to the packet loss parameter, and the packet loss processing is performed on the TCP packet from the carrier network after the ingress device is adjusted to the data packet loss parameter, and the step is performed on the data packet from the carrier network is not represented by the carrier network, and the data packet loss processing is performed by the carrier network according to the real-time bandwidth.
Referring to fig. 6, a state machine of the ingress device 110 is provided in an embodiment of the present application. As shown in fig. 6, the inlet device 110 includes four states: idle state (idle), congestion state (congestion), recovery state (probe) and probe state (probe).
Wherein, as described above, the ingress device 110 is in an idle state when the data transmission rate characterized by the real-time bandwidth between the ingress device 110 and the carrier network is less than the data transmission rate characterized by the system threshold. For example, the state of the ingress device 110 prior to time A in FIG. 6 is an idle state.
The ingress device 110 is in a congested state when a data transfer rate characterized by a real-time bandwidth between the ingress device 110 and the carrier network is greater than or equal to a data transfer rate characterized by a system threshold. For example, in fig. 6, the status of the ingress device 110 after time a and before time B, and the status of the ingress device after time C and before time D are both in a congested state.
The ingress device 110 is in a recovery state when the data transmission rate characterized by the real-time bandwidth between the ingress device 110 and the carrier network changes from a data transmission rate characterized by greater than or equal to the system threshold to a data transmission rate characterized by less than the system threshold. For example, the state of the ingress device 110 after time B and before time C in fig. 6 is a recovery state.
When the ingress device 110 and the carrier network switch back and forth between the congestion state and the recovery state (for example, in the above embodiment, the packet loss parameter is adjusted according to the relationship between the data transmission rates represented by the real-time bandwidths of the ingress device 110 and the carrier network and the data transmission rate represented by the system threshold, and the TCP packet from the carrier network is subjected to packet loss processing according to the packet loss parameter) until the state balance point is found (for example, the target packet loss parameter is found), the ingress device 110 is in the detection state. For example, in the state of the ingress device 110 after time D in fig. 6, the ingress device 110 continuously detects the real-time bandwidth between the ingress device 110 and the operator network, decreases the packet loss parameter when the real-time bandwidth becomes smaller, and switches from the recovery state to the idle state when the packet loss parameter is 0.
Referring to fig. 7, fig. 7 is a schematic block diagram of the inlet device 110. The ingress device 110 includes a receiving ingress module, a flow detection module, a backpressure control module, a sliding window packet loss module, a forwarding module, and an egress forwarding module.
The receiving entrance module is used for receiving data sent by the operator network.
The traffic detection module is configured to detect an amount of data transmitted by the ingress device 110 within a preset time (including downlink data received by the ingress device 110 from the operator network and uplink data forwarded by the ingress device 110 to the operator network), so as to obtain a real-time bandwidth between the ingress device 110 and the operator network.
The forwarding module is configured to forward data sent from the operator network to the egress forwarding module when the data transmission rate characterized by the real-time bandwidth of the ingress device 110 is less than the data transmission rate characterized by the system threshold.
The egress forwarding module is configured to forward the data sent by the received forwarding module to the corresponding client 150.
If the data transmission rate represented by the real-time bandwidth of the ingress device 110 is greater than or equal to the data transmission rate represented by the system threshold, the back pressure control module and the sliding window packet loss module cooperate to perform packet loss processing on the TCP packet from the operator network, and forward the TCP packet after packet loss processing to the egress forwarding module, so that the egress forwarding module forwards the received data to the corresponding client 150. Specifically, if the data transmission rate represented by the real-time bandwidth of the ingress device 110 is greater than or equal to the data transmission rate represented by the system threshold, the back pressure control module is configured to determine a packet loss parameter (for a method for determining the packet loss parameter, see the above embodiment), and the sliding window packet loss module is configured to perform packet loss processing on a TCP packet from the operator network according to the packet loss parameter and a preset packet loss sliding window, and send the TCP packet after the packet loss processing to the egress forwarding module.
The egress forwarding module is further configured to forward the TCP packet after the packet loss processing by the sliding packet loss module to the corresponding client 150.
It is understood that fig. 7 is provided as an example of the inlet device 110 only and not as a limitation. The inlet device 110 may have more or fewer modules than shown in fig. 7.
Referring next to fig. 8, fig. 8 is a block diagram of an inlet device 110 according to an embodiment of the present application. As shown in fig. 8, the inlet apparatus 110 includes: processor 10, transmitter 20, receiver 30, memory 40 and port 50. The memory 40, the transmitter 20 and the receiver 30 and the processor 10 may be connected by a bus. Of course, in practical applications, the memory 40, the transmitter 20, the receiver 30, and the processor 10 may not be bus structures, but may be other structures, such as a star structure, which is not specifically limited in this application.
Alternatively, the processor 10 may be, in particular, a central processing unit, an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), one or more integrated circuits for controlling program execution, a hardware circuit developed using a field programmable gate array (Field Programmable Gate Array, FPGA), a baseband processor, or the like.
Alternatively, the processor 10 may include at least one processing core.
Alternatively, the Memory 40 may include a Read Only Memory (ROM), a random access Memory (Random Access Memory, RAM), and a disk Memory. The memory 40 is used to store data required by the processor 10 when operating. The number of memories 40 is one or more.
Optionally, the number of ports 50 is one or more for connection with an upper or lower level inlet device 110. If the ingress device 110 is a host or server connected ingress device 110, such as an access switch or edge switch, the port 50 is also used to connect with the host or server.
Alternatively, the transmitter 20 and the receiver 30 may be physically independent of each other or may be integrated together. The sender 20 may send data to a forwarding device of the campus network or a client of the campus network via port 50. The receiver 30 may receive data transmitted from the operator network through the port 50.
It will be appreciated by those skilled in the art that embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein. These computer program code may be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner.
The present embodiment also provides a computer storage medium having stored therein computer instructions which, when executed on an ingress device, cause the ingress device to perform the above-described related method steps to implement the network congestion control method in the above-described embodiments.
The present embodiment also provides a computer program product which, when run on an ingress device, causes the ingress device to perform the above-described relevant steps to implement the network congestion control method in the above-described embodiments.
In addition, embodiments of the present application also provide an apparatus, which may be specifically a chip, a component, or a module, and may include a processor and a memory connected to each other; the memory is configured to store computer-executable instructions, and when the device is running, the processor may execute the computer-executable instructions stored in the memory, so that the chip executes the network congestion control method in the above method embodiments.
From the foregoing description of the embodiments, it will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of functional modules is illustrated, and in practical application, the above-described functional allocation may be implemented by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to implement all or part of the functions described above.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the module or division of modules is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple modules or components may be combined or integrated into another apparatus, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or modules, which may be in electrical, mechanical, or other forms.
The modules illustrated as separate components may or may not be physically separate, and the components shown as modules may be one physical module or multiple physical modules, i.e., may be located in one place, or may be distributed across multiple different places. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist alone physically, or two or more modules may be integrated into one module. The integrated modules may be implemented in hardware or in software functional modules.
The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium, including several instructions for causing a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The foregoing is merely a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered in the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (16)

1. A network congestion control method, applied to an ingress device of a campus network, the ingress device being configured to connect to an operator network, the network congestion control method comprising:
acquiring a real-time bandwidth between the ingress device and the operator network;
and if the data transmission rate represented by the real-time bandwidth between the inlet equipment and the operator network is greater than or equal to the data transmission rate represented by a preset system threshold, carrying out packet loss processing on a Transmission Control Protocol (TCP) message from the operator network, wherein the system threshold is obtained according to the contracted bandwidth of the park network and the operator network.
2. The network congestion control method according to claim 1, wherein said performing packet loss processing on the TCP packet from the operator network includes:
acquiring priority information of the TCP message;
and carrying out differential packet loss processing on the TCP message from the operator network according to the priority information.
3. The network congestion control method of claim 2, wherein the obtaining the priority information of the TCP packet comprises:
acquiring a message identifier of the TCP message, wherein the message identifier is used for identifying the TCP message;
And determining the priority information of the TCP message according to the message identifier.
4. A network congestion control method according to claim 2 or 3, wherein said performing differential packet loss processing on the TCP packet from the operator network according to the priority information comprises:
determining a message to be processed in a TCP message from the operator network according to the priority information;
and carrying out packet loss processing on the message to be processed, wherein the priority of the message to be processed is lower than the priority of other TCP messages in all TCP messages from the operator network.
5. The network congestion control method of claim 4, wherein the message to be processed comprises a plurality of TCP messages, and the packet loss processing of the message to be processed comprises:
determining packet loss parameters of each TCP message in the message to be processed according to the priority information of the message to be processed;
and carrying out packet loss processing on the TCP message corresponding to the message to be processed according to the packet loss parameters.
6. The network congestion control method according to claim 2, wherein said performing differential packet loss processing on the TCP packet from the operator network according to the priority information includes:
Determining a packet loss parameter of a TCP message from the operator network according to the priority information;
and carrying out packet loss processing on the TCP message from the operator network according to the packet loss parameters, wherein different priority information corresponds to different packet loss parameters.
7. The network congestion control method according to any one of claims 2 to 6, wherein a packet loss sliding window is stored in the ingress device, and the differential packet loss processing is performed on the TCP packet from the operator network according to the priority information, including:
and carrying out differential packet loss processing on the TCP message from the operator network according to the packet loss sliding window.
8. The network congestion control method according to claim 7, wherein said performing packet loss processing on the TCP packet according to the packet loss sliding window includes:
receiving a TCP message with the size of the packet loss sliding window from the operator network;
carrying out packet loss processing on the TCP message with the size of the packet loss sliding window according to a preset packet loss parameter;
and if the data transmission rate represented by the real-time bandwidths of the entry device and the operator network is larger than or equal to the data transmission rate represented by the system threshold after the packet loss processing, gradually increasing the packet loss parameter, and carrying out packet loss processing on the TCP message with the size of the packet loss sliding window received from the operator network according to the increased packet loss parameter until the data transmission rate represented by the real-time bandwidths of the entry device and the operator network is smaller than the data transmission rate represented by the system threshold.
9. The network congestion control method of claim 8, wherein if the data transmission rate characterized by the real-time bandwidth between the ingress device and the operator network is changed from a data transmission rate characterized by greater than or equal to the system threshold to a data transmission rate characterized by less than the system threshold, the method further comprises:
gradually reducing the packet loss parameter, and carrying out packet loss on the received TCP message with the size of the packet loss sliding window according to the reduced packet loss parameter until the packet loss parameter is 0.
10. The network congestion control method of claim 9, wherein the method further comprises:
adjusting the packet loss parameter according to the relation between the data transmission rate represented by the real-time bandwidth between the entrance equipment and the operator network and the data transmission rate represented by the system threshold;
and carrying out packet loss processing on the TCP message from the operator network according to the adjusted packet loss parameters.
11. The network congestion control method according to any one of claims 1 to 10, wherein when the system threshold is larger, the data transmission rate characterized by the system threshold is larger, and the data transmission rate characterized by the real-time bandwidth between the ingress device and the operator network is larger than or equal to the data transmission rate characterized by the preset system threshold, which is:
The actual bandwidth is greater than or equal to the system threshold.
12. The network congestion control method according to any one of claims 1 to 10, wherein when the system threshold is larger, the data transmission rate characterized by the system threshold is smaller, and the data transmission rate characterized by the real-time bandwidth between the ingress device and the operator network is greater than or equal to the data transmission rate characterized by a preset system threshold, which is:
the absolute value of the difference between the subscription bandwidth and the actual bandwidth is less than or equal to the system threshold.
13. A network congestion control method according to any one of claims 1 to 12, wherein the packet forwarding performance of the ingress device characterizes a data transmission rate greater than the data transmission rate characterized by the subscription bandwidth.
14. An inlet device, the inlet device comprising:
one or more processors;
a storage means for storing one or more programs;
the network congestion control method of any of claims 1 to 13, when the one or more programs are executed by the one or more processors, causing the one or more processors to implement the network congestion control method.
15. A computer readable storage medium having stored thereon a computer program, wherein the program, when executed by a processor, implements a network congestion control method according to any one of claims 1 to 13.
16. A campus network comprising an ingress device for performing the network congestion control method of any one of claims 1 to 13.
CN202210726633.5A 2022-06-23 2022-06-23 Network congestion control method and device Pending CN117319301A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210726633.5A CN117319301A (en) 2022-06-23 2022-06-23 Network congestion control method and device
PCT/CN2023/100424 WO2023246616A1 (en) 2022-06-23 2023-06-15 Network congestion control method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210726633.5A CN117319301A (en) 2022-06-23 2022-06-23 Network congestion control method and device

Publications (1)

Publication Number Publication Date
CN117319301A true CN117319301A (en) 2023-12-29

Family

ID=89241320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210726633.5A Pending CN117319301A (en) 2022-06-23 2022-06-23 Network congestion control method and device

Country Status (2)

Country Link
CN (1) CN117319301A (en)
WO (1) WO2023246616A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102104552B (en) * 2011-04-02 2014-02-12 杭州华三通信技术有限公司 Message control method and device based on ECN (Explicit Congestion Notification) mechanism
CN103414650B (en) * 2013-07-29 2016-12-07 上海华为技术有限公司 A kind of avoid congested method for routing and device
US20210328930A1 (en) * 2020-01-28 2021-10-21 Intel Corporation Predictive queue depth
CN113973085B (en) * 2020-07-22 2023-10-20 华为技术有限公司 Congestion control method and device
CN114640631A (en) * 2020-12-15 2022-06-17 华为技术有限公司 Congestion control method and network equipment

Also Published As

Publication number Publication date
WO2023246616A1 (en) 2023-12-28

Similar Documents

Publication Publication Date Title
US8213347B2 (en) Scalable IP-services enabled multicast forwarding with efficient resource utilization
EP1844596B1 (en) Method and system for mitigating denial of service in a communication network
US9276852B2 (en) Communication system, forwarding node, received packet process method, and program
US8879388B2 (en) Method and system for intrusion detection and prevention based on packet type recognition in a network
US10728154B2 (en) Flow table processing method and apparatus
US20070280277A1 (en) Method and system for adaptive queue and buffer control based on monitoring in a packet network switch
CN106330742B (en) Flow control method and network controller
CN106685827B (en) Downlink message forwarding method and AP (access point) equipment
KR20130023094A (en) Dynamic bandwidth re-allocation
CN107547442B (en) Data transmission buffer queue distribution method and device
WO2020083272A1 (en) Processing strategy generation method and system, and storage medium
EP1746771A1 (en) A method for redialing quickly to the broad band network of users
CN110278152B (en) Method and device for establishing fast forwarding table
EP2608460B1 (en) Method and device for sending messages
US20220286409A1 (en) Method and apparatus for configuring quality of service policy for service, and computing device
CN111386683A (en) System and method for accelerating or decelerating a data transport network protocol based on real-time transport network congestion conditions
US9537764B2 (en) Communication apparatus, control apparatus, communication system, communication method, method for controlling communication apparatus, and program
WO2017000861A1 (en) Method and apparatus for learning mac address in virtual local area network of switch
CN115766605A (en) Network congestion control method, device and system
CN111262792B (en) Message forwarding method, device, network equipment and storage medium
CN114095448A (en) Method and equipment for processing congestion flow
CN113595920A (en) Network congestion control method and equipment
CN113037691A (en) Message processing method, device and system
CN117319301A (en) Network congestion control method and device
CN113660198A (en) Self-adaptive method, management unit and system for gateway secure channel

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication