CN111935025A - Control method, device, equipment and medium for TCP transmission performance - Google Patents
Control method, device, equipment and medium for TCP transmission performance Download PDFInfo
- Publication number
- CN111935025A CN111935025A CN202010650366.9A CN202010650366A CN111935025A CN 111935025 A CN111935025 A CN 111935025A CN 202010650366 A CN202010650366 A CN 202010650366A CN 111935025 A CN111935025 A CN 111935025A
- Authority
- CN
- China
- Prior art keywords
- historical
- tcp
- parameter
- performance
- parameters
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
The application belongs to the technical field of communication and discloses a method, a device, equipment and a medium for controlling transmission performance of a TCP (transmission control protocol). Therefore, the current congestion control parameters of the TCP server can be adjusted in real time according to the historical performance parameter set in the TCP historical connection process, the data transmission performance is controlled, the universality is strong, the application range is wide, the parameters do not need to be adjusted and optimized manually according to a specific network environment, the control cost is reduced, and the processing efficiency is improved.
Description
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method, an apparatus, a device, and a medium for controlling TCP transmission performance.
Background
With the wide popularization of internet applications, the requirements of users on the internet transmission quality are higher and higher.
Since a Transmission Control Protocol (TCP) congestion Control policy may affect the Transmission performance of the TCP, in the prior art, a developer usually adjusts a policy operation parameter corresponding to a currently adopted congestion Control policy according to a specific network scenario, so as to improve the Transmission performance of the TCP.
However, the control method of TCP transmission performance in the prior art can only be applied to a specific network application scenario, and has a small application range, and when the network application scenario changes, a large amount of labor cost and time cost are required to be consumed for parameter adjustment, and it is difficult to ensure performance benefit.
Therefore, when the transmission performance of the TCP is controlled, how to improve the universality, reduce the control cost and ensure the performance benefit is a problem to be solved.
Disclosure of Invention
The embodiment of the application provides a method, a device, equipment and a medium for controlling transmission performance of TCP, which are used for improving universality, reducing control cost and ensuring performance benefit when the transmission performance of TCP is controlled.
In one aspect, a method for controlling TCP transmission performance is provided, including:
receiving a transmission performance adjusting request periodically sent by a TCP server;
acquiring a historical performance parameter set associated with the TCP server according to the transmission performance adjustment request; the historical performance parameter set comprises historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period;
determining a current congestion control parameter of the TCP server based on the historical performance parameter set;
and adjusting the data transmission performance of the TCP server according to the current congestion control parameter.
In one aspect, an apparatus for controlling TCP transmission performance is provided, including:
a receiving unit, configured to receive a transmission performance adjustment request periodically sent by a TCP server;
the acquiring unit is used for acquiring a historical performance parameter set associated with the TCP server according to the transmission performance adjusting request; the historical performance parameter set comprises historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period;
a determining unit, configured to determine a current congestion control parameter of the TCP server based on the historical performance parameter set;
and the adjusting unit is used for adjusting the data transmission performance of the TCP server according to the current congestion control parameter.
Preferably, the obtaining unit is further configured to:
when determining that the historical control parameters of the TCP server in the preset historical time period do not exist, counting the historical control parameters of the relevant server of the TCP server in the preset historical time period;
wherein the associated server is a server having a specified characteristic in common with the TCP server.
Preferably, the obtaining unit is further configured to:
and counting the historical control parameters of the associated terminals of the associated server in a preset historical time period.
Preferably, the adjusting unit is further configured to:
extracting strategy identification corresponding to a congestion control strategy and strategy operation parameters corresponding to the strategy identification from the current congestion control parameters;
and adjusting the data transmission performance of the TCP server based on the congestion control strategy and the strategy operation parameter corresponding to the strategy identification.
In one aspect, a control device is provided, which includes a memory, a processor and a computer program stored in the memory and capable of running on the processor, and when the processor executes the computer program, the processor executes the steps of any one of the above methods for controlling TCP transmission performance.
In one aspect, a computer-readable storage medium is provided, on which a computer program is stored, which, when being executed by a processor, implements the steps of any of the above-described methods for controlling TCP transmission performance.
In one aspect, a computer program product or computer program is provided that includes computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to cause the computer device to perform the method provided in any of the various alternative implementations of control of TCP transmission performance described above.
In the method, the apparatus, the device, and the medium for controlling the transmission performance of the TCP, a historical performance parameter set associated with the TCP server is obtained according to a transmission performance adjustment request of the TCP server, a current congestion control parameter of the TCP server is determined based on the historical performance parameter set, and data transmission performance adjustment is performed on the TCP server according to the current congestion control parameter. Therefore, the current congestion control parameters of the TCP server can be adjusted in real time according to the historical performance parameter set in the TCP historical connection process, the data transmission performance is controlled, the universality is strong, the application range is wide, the parameters do not need to be adjusted and optimized manually according to a specific network environment, the control cost is reduced, and the processing efficiency is improved.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the application. The objectives and other advantages of the application may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
fig. 1a is a first schematic diagram of a TCP transmission performance control system according to an embodiment of the present disclosure;
fig. 1b is a schematic structural diagram of a control system for TCP transmission performance according to an embodiment of the present disclosure;
fig. 2 is a flowchart of an implementation of a method for controlling TCP transmission performance according to an embodiment of the present application;
fig. 3a is a diagram illustrating a summary of history control parameter reporting messages in an embodiment of the present application;
FIG. 3b is a diagram illustrating an example of a parameter response message according to an embodiment of the present application;
FIG. 3c is a diagram of an exemplary parameter response message in an embodiment of the present application;
fig. 4 is an interaction diagram of a method for controlling TCP transmission performance according to an embodiment of the present application;
fig. 5 is a schematic structural diagram of a control device for TCP transmission performance according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of a control device in an embodiment of the present application.
Detailed Description
In order to make the purpose, technical solution and beneficial effects of the present application more clear and more obvious, the present application is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
First, some terms referred to in the embodiments of the present application are explained to facilitate understanding by those skilled in the art.
The terminal equipment: may be a mobile terminal, a fixed terminal, or a portable terminal such as a mobile handset, station, unit, device, multimedia computer, multimedia tablet, internet node, communicator, desktop computer, laptop computer, notebook computer, netbook computer, tablet computer, personal communication system device, personal navigation device, personal digital assistant, audio/video player, digital camera/camcorder, positioning device, television receiver, radio broadcast receiver, electronic book device, gaming device, or any combination thereof, including the accessories and peripherals of these devices, or any combination thereof. It is also contemplated that the terminal device can support any type of interface to the user (e.g., wearable device), and the like.
A server: the cloud server can be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, and can also be a cloud server for providing basic cloud computing services such as cloud service, a cloud database, cloud computing, cloud functions, cloud storage, network service, cloud communication, middleware service, domain name service, security service, big data and artificial intelligence platform and the like.
Historical performance index parameters: the measurement data transmission performance can be average bandwidth, median of broadband, average throughput of TCP, median of throughput, pause rate, connection time, size of downloaded file, etc.
Congestion control strategy: a congestion is caused by a demand for resources (link capacity, buffers and processors in the switching nodes, etc.) in the network that are more than available for a certain period of time, and a congestion control strategy is an algorithm that prevents too much data from being injected into the network causing congestion so that the routers or links are not overloaded.
Policy identification: is the Identification (ID) of the congestion control policy.
Congestion control parameters: the congestion control policy comprises policy identification and historical policy operation parameters corresponding to the congestion control policy.
Historical performance parameter set: the method is a set consisting of historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period.
Fitting function: representing the correspondence between historical performance indicator parameters and historical congestion control parameters.
And (3) extracting a function: for determining the next point to be explored based on the a posteriori distribution in combination with an exploration strategy.
And (4) associating the terminal: a terminal that establishes a TCP connection with a TCP server.
Historical control parameters: historical performance parameters and congestion control parameters corresponding to the TCP connection.
The association server: is a server having specified characteristics in common with the TCP server.
Cloud computing (cloud computing) is a computing model that distributes computing tasks over a pool of resources formed by a large number of computers, enabling various application systems to obtain computing power, storage space, and information services as needed. The network that provides the resources is referred to as the "cloud". Resources in the "cloud" appear to the user as being infinitely expandable and available at any time, available on demand, expandable at any time, and paid for on-demand.
A distributed cloud storage system (hereinafter, referred to as a storage system) refers to a storage system that integrates a large number of storage devices (storage devices are also referred to as storage nodes) of different types in a network through application software or application interfaces to cooperatively work by using functions such as cluster application, grid technology, and a distributed storage file system, and provides a data storage function and a service access function to the outside. At present, a storage method of a storage system is as follows: logical volumes are created, and when created, each logical volume is allocated physical storage space, which may be the disk composition of a certain storage device or of several storage devices. The client stores data on a certain logical volume, that is, the data is stored on a file system, the file system divides the data into a plurality of parts, each part is an object, the object not only contains the data but also contains additional information such as data identification (ID, ID entry), the file system writes each object into a physical storage space of the logical volume, and the file system records storage location information of each object, so that when the client requests to access the data, the file system can allow the client to access the data according to the storage location information of each object.
The process of allocating physical storage space for the logical volume by the storage system specifically includes: physical storage space is divided in advance into stripes according to a set of capacity measures of objects stored in a logical volume (the measures usually have a large margin with respect to the capacity of the actual objects to be stored) and Redundant Array of Independent Disks (RAID), and one logical volume can be understood as one stripe, thereby allocating physical storage space to the logical volume.
Artificial Intelligence (AI) is a theory, method, technique and application system that uses a digital computer or a machine controlled by a digital computer to simulate, extend and expand human Intelligence, perceive the environment, acquire knowledge and use the knowledge to obtain the best results. In other words, artificial intelligence is a comprehensive technique of computer science that attempts to understand the essence of intelligence and produce a new intelligent machine that can react in a manner similar to human intelligence. Artificial intelligence is the research of the design principle and the realization method of various intelligent machines, so that the machines have the functions of perception, reasoning and decision making.
The artificial intelligence technology is a comprehensive subject and relates to the field of extensive technology, namely the technology of a hardware level and the technology of a software level. The artificial intelligence infrastructure generally includes technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, operation/interaction systems, mechatronics, and the like. The artificial intelligence software technology mainly comprises a computer vision technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and the like.
Machine Learning (ML) is a multi-domain cross discipline, and relates to a plurality of disciplines such as probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and the like. The special research on how a computer simulates or realizes the learning behavior of human beings so as to acquire new knowledge or skills and reorganize the existing knowledge structure to continuously improve the performance of the computer. Machine learning is the core of artificial intelligence, is the fundamental approach for computers to have intelligence, and is applied to all fields of artificial intelligence. Machine learning and deep learning generally include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and formal education learning.
Bayes optimization model: the machine learning parameter adjusting method for the artificial intelligence has the main idea that given an optimized business objective function (a generalized function, only input and output need to be specified, and the internal structure and mathematical properties do not need to be known), the posterior distribution of the business objective function is updated by continuously adding a binary historical parameter group until the posterior distribution is basically fit with the real distribution. In short, the information of the last parameter is taken into consideration, so that the current parameter can be better adjusted. The Bayesian optimization model can consider the previous parameter information, continuously updates prior distribution, and has less parameter iteration times and high speed.
The design concept of the embodiment of the present application is described below.
With the wide popularization of internet applications, the requirements of users on the internet transmission quality are higher and higher. Conventionally, the internet application usually uses the TCP protocol as a bearer for data transmission, such as file downloading and video on demand.
Because the congestion control policy affects the transmission quality of TCP, developers often adjust historical policy operating parameters in the congestion control policy in a manual manner for a specific network scenario to improve the transmission performance of the TCP protocol.
However, when the network scene changes, the parameter needs to be adjusted again for a new network scene, which consumes a lot of labor cost and time cost, and has a small application range, poor versatility, and it is difficult to ensure performance benefit.
Obviously, a control scheme for TCP transmission performance, which has a wide application range and low control cost and can ensure performance gains, is not provided in the conventional technology, and therefore, a control scheme for TCP transmission performance is required, and when the TCP transmission performance is controlled, adaptive adjustment can be performed according to the current network application scenario, so that the control cost is reduced, and the performance gains are ensured.
In the scheme, a transmission performance adjustment request periodically sent by a TCP server is received, the current congestion control parameter of the TCP server is determined according to the historical performance index parameter and the congestion control parameter corresponding to each TCP connection in the preset historical time period, and the TCP server is controlled to perform data transmission control according to the determined current congestion control parameter.
To further illustrate the technical solutions provided by the embodiments of the present application, the following detailed description is made with reference to the accompanying drawings and the detailed description. Although the embodiments of the present application provide method steps as shown in the following embodiments or figures, more or fewer steps may be included in the method based on conventional or non-inventive efforts. In steps where no necessary causal relationship exists logically, the order of execution of the steps is not limited to that provided by the embodiments of the present application. The method can be executed in sequence or in parallel according to the method shown in the embodiment or the figure when the method is executed in an actual processing procedure or a device.
Fig. 1a is a schematic structural diagram of a TCP transmission performance control system according to the present invention. The system comprises a plurality of terminals, a plurality of TCP servers, a plurality of log servers and a control device.
Each TCP server: the system comprises a control device, a terminal and a control device, and is used for establishing TCP connection with one or more terminals by adopting a TCP protocol, realizing data transmission with the terminals through the TCP connection, recording historical control parameters corresponding to each TCP connection, uploading the recorded historical control parameters to a corresponding log server at regular intervals, sending transmission performance adjustment requests to the control device at regular intervals, receiving current congestion control parameters returned by the control device, and controlling data transmission according to the current congestion control parameters.
For example, the TCP server 1 performs data transmission with the terminal 1 and the terminal 2 using the TCP protocol, and the TCP server 2 performs data transmission with the terminal 3 and the terminal 4 using the TCP protocol.
Wherein, the historical control parameters comprise: historical performance parameters and historical congestion control parameters, and may also include server information as well as traffic objective functions and historical performance parameters used to determine historical performance index parameters. The historical congestion control parameters comprise historical strategy identification and historical strategy operation parameters corresponding to the historical congestion control strategy. The server information may be a network address of the server, identification information of the server, information of a machine room where the server is located, and the like.
The historical performance index parameter is used for measuring the data transmission performance and is determined according to the service objective function and each historical performance parameter. For example, the historical performance index parameters may be average bandwidth, bandwidth median, TCP average throughput, median throughput, stuck rate, connection time, and download file size, among others. The historical performance parameters are collected data related to performance of each TCP connection, and may be bandwidth, throughput, connection time, size of a downloaded file, and the like of each TCP connection.
For example, if the historical performance index parameter is an average bandwidth, the historical performance parameter is a bandwidth of each TCP connection, and the service objective function is used to determine an average value of each bandwidth to obtain an average bandwidth.
The input of the business objective function is historical performance parameters, the output of the business objective function is historical performance index parameters, and different historical performance index parameters can be generated through different business objective functions and the historical performance parameters. In practical application, the service objective function may be set according to a practical application scenario, which is not limited herein.
Each log server: the system is used for receiving the historical control parameters uploaded by the TCP server regularly, receiving the historical control parameters uploaded by each terminal, and reporting the summarized historical control parameters to the control equipment regularly.
In one embodiment, the terminal and the TCP server are respectively reported to the control device through different log servers.
In one embodiment, the terminal and the TCP server report to the control device through the same log server.
It should be noted that the log server and the terminal may be integrated in the same device, or may be different devices, and similarly, the log server and the TCP server may be integrated in the same device, or may be different devices. That is, the log server may be deployed in the terminal, may be deployed in the TCP server, and may be deployed in a single device.
For example, referring to fig. 1b, a second schematic structural diagram of a TCP transmission performance control system provided in the present application is shown. The system comprises a plurality of terminals, a plurality of TCP servers and a control device.
The log server and the TCP server are integrated in the same device, and the terminal can transmit the historical control parameters to the control device and also can transmit the historical control parameters to the control device through the TCP server.
The control device: the system can be a server or a terminal device, and is used for receiving the historical control parameters uploaded by the log server, generating a historical performance parameter set associated with the TCP server according to the historical control parameters of each TCP server, predicting the current congestion control parameter when the historical performance index parameter is optimal according to the historical performance parameter set associated with the TCP server, and controlling data transmission according to the current congestion control parameter.
Optionally, the control device may store, for a cloud server providing cloud storage and cloud computing, historical control parameters uploaded by the log server and historical performance parameter sets associated with the TCP servers in a cloud storage manner, and may predict current congestion control parameters of the TCP servers in a cloud computing manner.
It should be noted that the control device may be integrated with the TCP server in the same device, or may be different devices, and similarly, the control device may be integrated with the log server in the same device, or may be different devices.
That is to say, the TCP server, the log server, and the control device may be integrated in one device, or may be respectively deployed in different devices, in this embodiment, only the TCP server, the log server, and the control device are respectively deployed in different devices as an example for description, and in practical application, the TCP server, the log server, and the control device may be deployed according to a practical application scenario, which is not limited herein.
Therefore, the current congestion control parameter with the optimal transmission performance can be predicted according to the historical performance parameter, the service objective function, the historical strategy identification and the historical strategy operation parameter corresponding to each TCP connection of the TCP server, and the data transmission of the TCP server is adjusted according to the current congestion control parameter.
Fig. 2 is a flowchart illustrating an implementation of a method for controlling TCP transmission performance according to the present application. Based on the control system shown in fig. 1a, an implementation flow of the control method for TCP transmission performance is specifically described, and the specific flow of the method is as follows:
step 200: the TCP server periodically sends a transmission performance adjustment request to the control device.
Specifically, the TCP server sends a transmission performance adjustment request to the control device according to a first preset duration.
The first preset duration may be preset, or may be adjusted in real time according to an adjustment instruction of a user.
In one embodiment, the TCP server receives an adjustment instruction input by a user through a terminal or a periodic adjustment page, and adjusts the first preset duration according to a duration included in the adjustment instruction.
In practical applications, the first preset time period may be set according to practical application scenarios, for example, 30 minutes, and is not limited herein.
The transmission performance adjustment request includes server information. The server information may be an Internet Protocol (IP) address of the server, and optionally, may further include information of a machine room to which the TCP server belongs, such as a machine room identifier.
Further, when step 200 is executed, any one of the following manners may be adopted:
the first mode is as follows: and when the TCP server confirms that the preset trigger condition is met, sending a transmission performance adjusting request to the control equipment.
Optionally, the preset trigger condition may be determined according to a historical performance parameter corresponding to the TCP connection.
In one embodiment, when the TCP server determines that the historical performance parameter is within the preset parameter range, it determines that the preset trigger condition is met.
For example, when the TCP server determines that the throughput corresponding to the current TCP connection is lower than the preset throughput threshold, it determines that the preset trigger condition is met.
For another example, the TCP server determines that the connection time corresponding to the current TCP connection is lower than a preset time threshold, and determines that the preset trigger condition is met.
In practical application, the preset trigger condition, the preset parameter range, the preset throughput threshold value and the preset time threshold value may all be set according to a practical application scenario, which is not limited herein.
The second way is: and the TCP server sends a transmission performance adjusting request to the control equipment according to a preset time point.
The preset time point may be preset, or may be issued by the user in real time, or may be adjusted in real time according to a busy time period and an idle time period of data transmission, which is not limited herein.
In one embodiment, the user sends an adjustment request including a time point to the TCP server through the terminal, and the TCP adjusts the preset time point according to the received time point.
In one embodiment, a user inputs a time point through an input box in a time point setting page of a TCP server and clicks the page to submit, and the TCP server adjusts the preset time point according to the time point input by the user.
Therefore, the TCP server can set the first preset time and the preset time point according to the interaction with the user.
Step 201: the control device receives a transmission performance adjustment request periodically sent by the TCP server.
Step 202: and the control equipment acquires a historical performance parameter set associated with the TCP server according to the transmission performance adjustment request.
Specifically, when step 202 is executed, the following steps may be executed:
s2021: and the control equipment counts historical control parameters corresponding to each TCP connection in the TCP server in a preset historical time period according to the transmission performance adjusting request.
S2022: and the control equipment generates a historical performance parameter set associated with the TCP server according to the counted historical control parameters.
Specifically, when S2021 is executed, the history control parameter may be obtained in any one of the following manners:
the first mode is as follows: and the control equipment counts the historical control parameters corresponding to each TCP connection in the TCP server in a preset historical time period according to the locally stored historical control parameters.
Before executing S2021, each TCP server periodically uploads the historical control parameters to the control device through the log server.
In one embodiment, each TCP server establishes a TCP connection with the terminal using a TCP protocol, and realizes data transmission between the TCP server and the terminal through the established TCP connection, and records a historical control parameter corresponding to each TCP connection. And uploading the historical control parameters to a log server by each TCP server according to a second preset time length. And uploading the historical control parameters to the control equipment by the log server according to a third preset time length.
The first preset time length is longer than the second preset time length. In practical application, both the second preset time and the third preset time may be set according to a practical application scenario, for example, the first preset time is 30 minutes, and the second preset time is 20 minutes, which is not limited herein.
Fig. 3a is a diagram illustrating a summary of historical control parameter reporting messages. And the log server receives the message messages which are uploaded by each TCP server and contain the historical control parameters, and summarizes the IP address of the TCP server, the machine room identification, the service target, the historical performance index parameters and the historical congestion control parameters contained in each message. The historical congestion control parameters include historical policy identification and historical policy operating parameters. For example, the machine room is identified as 00001. The traffic objective is to maximize the average bandwidth. Historical performance index parameters: the average bandwidth is 10. The historical congestion control parameters include: strategy identification A and historical strategy operation parameter WA. The policy identification comprises A0,A1And A2Three kinds of the components are adopted. Policy identification is A0Historical strategic operating parameter WA00.1, 0.3; policy identification is A1Historical strategic operating parameter WA0={0.6,0.9}。
Therefore, the historical control parameters uploaded by each TCP server can be collected according to the IP of each TCP server.
Alternatively, the historical control parameters may be uploaded to the log server and the control device in the form of a log.
Further, the control device may also count the historical control parameters corresponding to each TCP connection in the associated terminal of the TCP server within a preset historical time period according to the historical control parameters stored locally.
The associated terminal is a terminal establishing TCP connection with a TCP server.
Before executing S2021, the terminal may also upload the historical control parameters to the control device periodically through the log server.
That is, each terminal establishes a TCP connection with the TCP server using a TCP protocol, and realizes data transmission between the TCP server and the terminal through the established TCP connection, and records a historical control parameter corresponding to each TCP connection. And each terminal uploads the historical control parameters to the log server according to the second preset time length. And uploading the historical control parameters to the control equipment by the log server according to a third preset time length.
Therefore, the control equipment can directly acquire the locally stored historical control parameters when receiving the transmission performance adjustment request, thereby improving the data processing speed and reducing the time cost.
The second way is: and the control equipment pulls the historical control parameters corresponding to each TCP connection in the TCP server in a preset historical time period from the log server according to the transmission performance adjustment request.
In one embodiment, the control device sends a data request message including a preset historical time period to the log server according to the transmission performance adjustment request, and receives historical control parameters corresponding to each TCP connection in the TCP server within the preset historical time period returned by the log server.
It should be noted that, the longer the preset historical time period is, the more the data amount of the obtained historical control parameter is, the more accurate the current congestion control parameter to be predicted subsequently is, but the larger the data calculation amount is, the greater the time cost is, conversely, the smaller the data amount of the historical control parameter is, the lower the accuracy of the predicted current congestion control parameter is, but the smaller the data calculation amount is, the smaller the time cost is. In practical application, the preset historical time period can be set according to practical application scenes so as to ensure the balance between the accuracy of the current congestion control parameter and the data processing efficiency. For example, the preset historical period of time is the last hour.
Further, the control device may further pull, from the log server, the historical control parameter corresponding to each TCP connection in the associated terminal of the TCP server within the preset historical period of time, according to the transmission performance adjustment request, in the same manner as the historical control parameter of the TCP server is pulled. And will not be described in detail herein.
Therefore, the control device can pull the required historical control parameters when receiving the transmission performance adjustment request, thereby reducing the occupied storage space.
Further, when the control device determines that there is no history control parameter of the TCP server within the preset history period, the history control parameter of the associated server of the TCP server within the preset history period is counted.
Optionally, the control device may further obtain a history control parameter of the associated terminal of the associated server.
In the embodiment of the present application, the historical control parameters of the associated server and the associated terminal may be obtained in the same manner as the historical control parameters of the TCP server and the associated terminal are obtained, which is not described herein again.
Wherein the associated server is a server having a specified characteristic in common with the TCP server. The control device previously takes a server having the same specified characteristics as the TCP server as an associated server of the TCP server.
Optionally, the specific feature may be any one or any combination of a machine room identifier, a service target, a geographic area, a network area, and a server function corresponding to the server. The machine room identifier is used for indicating the machine room where the server is located. The service target is the target of transmission performance adjustment. In practical applications, the specified features may also be other features, and are not limited herein.
In one embodiment, if the designated characteristic is a room identifier, the server in the same room as the TCP server is determined to be the associated server of the TCP server.
In one embodiment, the designated characteristics are a room identifier and a service objective, and the associated server of the TCP server is located in the same room as the TCP server and is the same as the service objective of the TCP server.
For example, assuming that the specified characteristics are a room identifier and a traffic target, the room identifier of the TCP server is 001, and the traffic target is to maximize the average bandwidth, the other server located in the 001 room and having the traffic target to maximize the average bandwidth is taken as the associated server of the TCP server.
In this way, each server having a common designated characteristic (e.g., same room, same traffic destination) with the TCP server can be used as the associated server of the TCP server. This is because the conventional technique has a problem of cold start, that is, in an initial stage, there are few or no historical control parameters, it is difficult to quickly determine an optimal current congestion control parameter, which not only loses data transmission performance, but also increases convergence time.
In the embodiment of the present application, the historical control parameters counted by the control device are: the historical control parameters of the TCP server, or the historical control parameters of the TCP server and the historical control parameters of the associated terminal, or the historical control parameters of the associated server of the TCP server and the historical control parameters of the associated terminal of the associated server.
In this way, the priority of the history control parameter of the TCP server and the priority of the history control parameter of the related server of the TCP server are lower in order, and the related terminal is used as the auxiliary data.
Further, the historical control parameters of the control device statistics may also adopt any one or any combination of the following parameters:
historical control parameters of the TCP server, historical control parameters of the associated terminal, historical control parameters of the associated server of the TCP server, and historical control parameters of the associated terminal of the associated server.
In this way, the priority of the historical control parameters of different devices may be the same.
Further, the log server can also screen the historical control parameters and send the screened historical control parameters to the control equipment.
In one embodiment, the log server performs random sampling on each historical control parameter in a random sampling manner, and sends the randomly sampled historical control parameter to the control device.
In one embodiment, the log server samples each historical control parameter according to a specified sampling duration, and sends the sampled historical control parameters to the control device.
In one embodiment, the log server screens each historical control parameter by using a preset screening condition, and sends the screened historical control parameter to the control device.
In practical application, the preset screening condition may be set according to a practical application scenario, which is not limited herein.
Therefore, the screened historical control parameters can be sent to the control equipment, the data volume of transmission is reduced, the occupied transmission resources are reduced, and the subsequent data processing speed is improved.
Specifically, when S2022 is executed, the following steps may be adopted:
step a: and the control equipment extracts historical strategy identification and historical strategy operation parameters corresponding to the historical congestion control strategy from the counted historical control parameters.
Specifically, the history control parameters include: historical performance parameters and historical congestion control parameters, wherein the historical congestion control parameters comprise historical strategy identification and historical strategy operation parameters corresponding to historical congestion control strategies.
Step b: and the control equipment generates historical congestion control parameters according to the historical strategy identification and the historical strategy operation parameters.
Specifically, the control device combines the historical policy identifier and the historical policy operating parameter into a historical congestion control parameter. The historical strategy operation parameter can be one or more.
For example, A represents the policy identifier corresponding to the congestion control policy, WARepresenting historical policy operating parameters in the congestion control policy, X being a historical congestion control parameter, X ═ a, WA}。
Step c: and the control equipment generates a historical performance index parameter according to the historical performance parameter in the counted historical control parameters and a preset service objective function.
Specifically, the control device inputs each statistical historical performance parameter into a preset service objective function, and outputs a historical performance index parameter.
For example, assuming that the traffic objective function is used to determine the median of each throughput, and the historical performance parameter is the median of the maximized throughput, the throughput for each TCP connection is input to the traffic objective function, and the median of the throughput (the historical performance index parameter) is output.
Step d: the control device obtains a binary historical parameter set of each TCP connection based on the historical congestion control parameter and the historical performance index parameter.
Specifically, X is a historical congestion control parameter, and U represents a historical performance index parameter, and the binary historical parameter set is (X, U).
Step e: the control device generates a historical performance parameter set associated with the TCP server by using each binary historical parameter group.
Specifically, the historical performance parameter set may be represented by D { (X)0,U0),(X1,U1)……(Xi-1,Ui-1)},X={A,WAI is a serial number, X is a historical congestion control parameter, U is a historical performance index parameter, A represents a policy identifier, WARepresenting historical policy operating parameters.
It should be noted that in the embodiment of the present application, there are multiple congestion control policies, and there may be one or multiple historical policy operation parameters.
Furthermore, any one or any combination of the historical performance index parameter, the binary historical parameter set and the historical performance parameter set can be generated by the log server, so that the calculation overhead of the control equipment is reduced, and the data processing speed of the control equipment is increased.
In one embodiment, the TCP server may further include a performance analysis tool, and perform real-time monitoring and performance analysis on data transmission of the TCP server through the performance analysis tool to obtain a historical performance index parameter, and send a historical control parameter including the historical performance index parameter to the control device.
Further, the TCP server may further display any one or any combination of the historical performance parameters, the historical congestion control parameters, the historical performance index parameters, and the current congestion control parameters to the user by using any one or any combination of a table, a text, and a graphic.
Wherein the graph comprises a line graph or a bar graph.
Further, the control device may also screen the binary historical parameter set to improve the accuracy and processing rate of the adjustment of the data transmission performance.
In one embodiment, the control device may further obtain a Uniform Resource Locator (URL) of the TCP connection, which is further included in the history control parameter. The method comprises the steps that one URL corresponds to one binary history parameter set, control equipment counts the number of the URLs, screens out the URLs with the largest number and the specified number, and combines the binary history parameter sets corresponding to the screened URLs to form a history performance parameter set.
Therefore, the binary historical parameter set can be screened according to the occurrence frequency of the URL, and the accuracy of data transmission performance adjustment is improved.
In one embodiment, the control device may further randomly sample the statistical historical control parameters, and generate a historical performance parameter set according to the randomly sampled historical control parameters.
Because the processing rate is low when the data volume is large, the embodiment of the application can adopt a data random sampling mode, reduce the calculation overhead and improve the data processing speed.
In one embodiment, the control device may further screen a specified number of binary sets of history parameters with the highest transmission performance index parameter, and generate the set of history performance parameters according to the screened binary sets of history parameters.
In one embodiment, the control device may further remove a specified number of binary history parameter groups with the lowest transmission performance index parameter from the binary history parameter groups, and form a history performance parameter set according to the filtered binary history parameter groups.
Therefore, the data with lower transmission performance index parameters can be deleted, so that the interference in the subsequent determination of the current congestion control parameters is reduced, and the accuracy of data transmission performance adjustment is improved.
Step 203: the control device determines current congestion control parameters of the TCP server based on the historical set of performance parameters.
Specifically, the control device constructs a fitting relation between the congestion control parameter and the historical performance index parameter according to the historical performance parameter set and by adopting a preset Bayesian optimization model, predicts the congestion control parameter when the optimal historical performance index parameter is obtained according to the fitting relation, and takes the congestion control parameter obtained by prediction as the current congestion control parameter.
The current congestion control parameter includes a policy identifier corresponding to the congestion control policy and a policy operation parameter. A Bayesian optimization model is used for machine learning parameter adjustment in an artificial intelligence technology, and the main idea is that an optimized business objective function (generalized function, only input and output need to be specified, and the internal structure and mathematical properties do not need to be known) is given, and the posterior distribution of the business objective function is updated by continuously adding binary historical parameter sets until the posterior distribution is basically fit with the real distribution. In short, the information of the last parameter is taken into consideration, so that the current parameter can be better adjusted. The Bayesian optimization model can consider the previous parameter information, continuously updates prior distribution, and has less parameter iteration times and high speed.
Optionally, when determining the current congestion control parameter by using the bayesian optimization model, the following formula may be used:
wherein, X*The current congestion control parameter is X, the historical congestion control parameter is R, the selection range of the historical congestion control parameter is U, and the historical performance index parameter is U.
In one embodiment, when determining the current congestion control parameter, the following steps may be adopted:
when step 203 is executed, the following steps may be adopted:
s2031: and the control equipment adopts a preset proxy model to fit the congestion control parameters and the historical performance index parameters in the historical performance parameter set to obtain a fitting function.
Optionally, the proxy model may adopt a gaussian process model, or may adopt other models, which is not limited herein. Wherein the fitting function represents a correspondence between the historical performance indicator parameter and the congestion control parameter.
Thus, by combining the binary historical parameter set with the gaussian process model, the range and probability of the historical performance index parameter corresponding to each historical congestion control parameter can be determined, that is, the corresponding relationship between the historical performance index parameter and the congestion control parameter is determined according to the prior data.
S2032: and the control equipment predicts the congestion control parameter corresponding to the optimal historical performance index parameter according to the fitting function and the preset extraction function, and takes the congestion control parameter obtained by prediction as the current congestion control parameter.
Optionally, the extraction function is used to determine a next point to be explored according to the posterior distribution and the exploration policy, and an Upper Confidence Bound (UCB) function may be used.
Thus, a gaussian process model fit can be made to the known set of binary historical parameters and the posterior distribution used in conjunction with an exploration strategy (e.g., UCB) to determine the next point that should be explored.
Optionally, when determining the current congestion control parameter, the following formula may be adopted:
wherein, X*F (-) is an extraction function, G (X) is a fitting function, X is a historical congestion control parameter, and R is a selection range of the congestion control parameter.
It should be noted that the objective of the performance optimization is to select the current congestion control parameter X that maximizes the historical performance index parameter through continuous iteration within the value range R*. In the performance optimization process, specific expressions or mathematical properties of U (X) do not need to be known, and only the final result needs to be obtained through iteration.
Therefore, the Bayesian optimization model is adopted, the congestion control parameters which should be used by the TCP server at present can be efficiently predicted in the R range, the convergence time of the performance is reduced, and the performance gain is ensured.
Furthermore, corresponding congestion control parameters can be set for each URL in advance, and the congestion control parameter corresponding to the URL with the largest number can be used as the current congestion control parameter.
Further, a congestion control parameter corresponding to the highest transmission performance index parameter may be determined, and the determined congestion control parameter may be used as the current congestion control parameter.
Further, when it is determined that the historical performance parameter set is an empty set, the control device determines the randomly acquired congestion control parameter as the current congestion control parameter.
In this way, if there is no historical control parameter for reference, and the current congestion control parameter cannot be predicted from the historical control parameter, the randomly obtained congestion control parameter is used as the current congestion control parameter.
Further, when it is determined that the historical performance parameter set is an empty set, the control device determines a preset standby congestion control parameter as a current congestion control parameter.
Wherein the control device sets in advance a backup congestion control parameter according to the frequency of use of each congestion control parameter.
In this way, the current congestion control parameter can be determined according to the frequency of use of the congestion control parameter.
According to the method and the device, the congestion control parameters when the performance data are optimal can be predicted according to the historical performance parameter set in the TCP historical connection process, and then the current congestion control parameters are operated.
In the conventional technology, only one congestion control strategy is usually considered, and parameters of the congestion control strategy are adjusted according to a specific application scenario to improve the TCP data transmission performance.
Furthermore, in the conventional technology, a random search mode is usually adopted to optimize parameters of the congestion control strategy, but the problem that the performance convergence time is long or the search range of the parameters is limited exists, and in the embodiment of the application, the Bayesian optimization model is adopted to reduce the performance convergence time and greatly improve the search range.
Step 204: and the control equipment adjusts the data transmission performance of the TCP server according to the current congestion control parameter.
Specifically, when step 204 is executed, the following steps may be adopted:
s2041: and the control equipment extracts the strategy identification corresponding to the congestion control strategy and the strategy operation parameter corresponding to the strategy identification from the current congestion control parameter.
S2042: and the control equipment adjusts the data transmission performance of the TCP server based on the congestion control strategy and the strategy operation parameter corresponding to the strategy identification.
Specifically, the control device returns a parameter response message containing the policy identifier and the policy operation parameter to the TCP server. And the TCP server receives the parameter response message returned by the control equipment, acquires the strategy identification and the strategy operation parameter contained in the parameter response message, and adjusts the data transmission performance according to the congestion control strategy and the strategy operation parameter corresponding to the strategy identification.
For example, referring to FIG. 3b, an example of a parameter response message is shown in FIG. one. TCP Server IP is 1.1.1.1, policy identification A2Historical strategic operating parameter WA2Is {0.5, 0.8 }.
For another example, referring to fig. 3c, an example of a parameter response message is shown in fig. two. TCP Server IP is 1.1.1.2, policy identification A2Historical strategic operating parameter WA2Is {0.7, 0.7 }.
In the embodiment of the present application, only the adjustment of the data transmission performance of one TCP server is taken as an example for description, and in practical applications, the data transmission performance of other TCP servers may also be adjusted by using the same principle, which is not described herein again.
Therefore, the congestion control strategy and the historical strategy operation parameter when the performance index parameter is optimal can be predicted according to the historical congestion control strategy, the historical strategy operation parameter and the historical performance index parameter adopted in the TCP historical connection process, and the TCP server is controlled to operate according to the determined congestion control strategy and the historical strategy operation parameter.
Further, the TCP server determines whether a preset performance adjustment condition is met according to the historical performance parameters obtained in real time, if yes, step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines whether the historical performance parameter is lower than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines whether the continuous historical performance parameters within the preset adjustment time period are all lower than the preset performance threshold, if yes, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server counts the number of times that the historical performance parameter in the preset adjustment time period is lower than the preset performance threshold, and determines whether the number of times is higher than the preset adjustment number of times, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines an average value of the historical performance parameters within a preset adjustment time period, and determines whether the average value is lower than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines a median of the historical performance parameters within a preset adjustment time period, and determines whether the median is lower than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines a minimum value of the historical performance parameter within a preset adjustment time period, and determines whether the minimum value is lower than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines a variance of the historical performance parameter within a preset adjustment time period, and determines whether the variance is lower than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
In one embodiment, the TCP server determines the change rate of the historical performance parameter within a preset adjustment time period, and determines whether the minimum value of the change rates is higher than a preset performance threshold, if so, the step 200 is executed, otherwise, the transmission performance adjustment process is stopped.
Wherein, the change rate is the ratio of the difference between two adjacent historical performance parameters to the time.
Thus, when the rate of change is too high, the transmission performance is adjusted.
In practical application, the preset performance threshold, the preset adjustment time period, and the preset performance condition may be set according to a practical application scenario, which is not limited herein.
Further, the TCP server may further receive a user instruction sent by the user through the terminal or an input page of the TCP server, and if the instruction representing the transmission performance adjustment is received, execute the step 200, otherwise, stop the transmission performance adjustment process.
The service target, the transmission performance parameter and the service target function have corresponding relations, so that different transmission performance parameters and different service target functions are selected according to different service targets, the service targets can be set by user instructions or default settings, and can be adjusted in real time according to the user instructions. In the embodiment of the present application, only one service target, one transmission performance parameter, and one service target function are taken as examples to perform data transmission performance adjustment, and the number of the service targets, the transmission performance parameters, and the service target functions is not limited in practical application, that is, historical control parameters corresponding to different service targets can be obtained at the same time, and a plurality of service targets are subjected to balanced adjustment according to the counted historical control parameters.
The embodiment of the present application may be applied to a Content Delivery Network (CDN), a video call scenario, or other application scenarios in which data transmission is performed by using TCP connection, and is not limited herein.
In the embodiment of the application, the TCP server predicts the congestion control strategy and the strategy operation parameters when the data transmission performance is optimal in real time and automatically from the existing congestion control strategies, self-adaptive adjustment of the data transmission performance is realized, manual intervention is reduced, the performance optimization efficiency is improved, the performance benefit can be guaranteed, the universality is strong, the application range is expanded, manual parameter adjustment and optimization according to a specific network environment are not needed, the control cost is reduced, and the problem that the performance of different servers is low in the initial parameter optimization stage is solved in a data sharing mode among different servers.
Referring to fig. 4, an interactive diagram of a TCP transmission performance control method is shown, and the specific flow of the method is as follows:
step 400: the TCP server uploads the historical control parameters to the log server periodically.
Specifically, each TCP server sends the history control parameter to the log server according to a second preset duration.
Optionally, each terminal device may also send the history control parameter to the log server according to a second preset duration.
Step 401: the TCP server periodically sends a transmission performance adjustment request to the control device.
Specifically, the TCP server sends a transmission performance adjustment request to the control device according to a first preset duration.
Step 402: the control device sends a data request message to the log server according to the received transmission performance adjustment request.
Specifically, the control device acquires the IP address of the TCP server from the transmission performance adjustment request, and sends a data request message to the log server according to the IP address of the TCP server.
Step 403: the log server returns the historical control parameters to the control device.
Specifically, before step 403 is executed, the log server receives the historical control parameters uploaded by each TCP server and each terminal, and respectively summarizes the historical congestion control parameters and the historical performance index parameters used by each TCP server in each TCP connection in the latest T time according to the server information.
Step 404: the control device determines a current congestion control parameter from the historical control parameter.
Specifically, the control device constructs a historical performance parameter set associated with the TCP server according to the historical control parameters, and determines the current congestion control parameters according to the historical performance parameter set.
Further, if the control device determines that the historical performance parameter set is empty, the randomly acquired congestion control parameter is used as the current congestion control parameter.
Step 405: the control device returns the current congestion control parameters to the TCP server.
Step 406: the TCP server runs the received current congestion control parameters.
Based on the same inventive concept, the embodiment of the present application further provides a device for controlling TCP transmission performance, and because the principle of the device and the apparatus for solving the problem is similar to that of a method for controlling TCP transmission performance, the implementation of the device can refer to the implementation of the method, and repeated details are not repeated.
Fig. 5 is a schematic structural diagram of a device for controlling TCP transmission performance according to an embodiment of the present application. A control device for TCP transmission performance comprises:
a receiving unit 501, configured to receive a transmission performance adjustment request periodically sent by a TCP server;
an obtaining unit 502, configured to obtain a historical performance parameter set associated with the TCP server according to the transmission performance adjustment request; the historical performance parameter set comprises historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period;
a determining unit 503, configured to determine a current congestion control parameter of the TCP server based on the historical performance parameter set;
an adjusting unit 504, configured to perform data transmission performance adjustment on the TCP server according to the current congestion control parameter.
Preferably, the determining unit 503 is configured to:
fitting the congestion control parameters and the historical performance index parameters in the historical performance parameter set by adopting a preset proxy model to obtain a fitting function;
predicting congestion control parameters corresponding to the optimal historical performance index parameters according to the fitting function and a preset extraction function;
and taking the congestion control parameter obtained by prediction as the current congestion control parameter.
Preferably, the obtaining unit 502 is configured to:
according to the transmission performance adjustment request, counting historical control parameters corresponding to each TCP connection in the TCP server in a preset historical time period;
and generating a historical performance parameter set associated with the TCP server according to the counted historical control parameters.
Preferably, the obtaining unit 502 is configured to:
extracting historical strategy identification and historical strategy operation parameters corresponding to historical congestion control strategies from the counted historical control parameters;
generating historical congestion control parameters according to the historical strategy identification and the historical strategy operation parameters;
generating a historical performance index parameter according to a historical performance parameter in the counted historical control parameters and a preset service objective function;
obtaining a binary historical parameter group of each TCP connection based on the historical congestion control parameter and the historical performance index parameter;
and generating a historical performance parameter set associated with the TCP server by using each binary historical parameter group.
Preferably, the obtaining unit 502 is further configured to:
counting historical control parameters corresponding to each TCP connection in a relevant terminal of a TCP server within a preset historical time period;
the associated terminal is a terminal establishing TCP connection with a TCP server.
Preferably, the obtaining unit 502 is further configured to:
when determining that the historical control parameters of the TCP server in the preset historical time period do not exist, counting the historical control parameters of the relevant server of the TCP server in the preset historical time period;
wherein the associated server is a server having a specified characteristic in common with the TCP server.
Preferably, the obtaining unit 502 is further configured to:
and counting the historical control parameters of the associated terminals of the associated server in a preset historical time period.
Preferably, the adjusting unit 504 is further configured to:
extracting strategy identification corresponding to a congestion control strategy and strategy operation parameters corresponding to the strategy identification from the current congestion control parameters;
and adjusting the data transmission performance of the TCP server based on the congestion control strategy and the strategy operation parameter corresponding to the strategy identification.
In the method, the apparatus, the device, and the medium for controlling the transmission performance of the TCP, a historical performance parameter set associated with the TCP server is obtained according to a transmission performance adjustment request of the TCP server, a current congestion control parameter of the TCP server is determined based on the historical performance parameter set, and data transmission performance adjustment is performed on the TCP server according to the current congestion control parameter. Therefore, the current congestion control parameters of the TCP server can be adjusted in real time according to the historical performance parameter set in the TCP historical connection process, the data transmission performance is controlled, the universality is strong, the application range is wide, the parameters do not need to be adjusted and optimized manually according to a specific network environment, the control cost is reduced, and the processing efficiency is improved.
Fig. 6 shows a schematic configuration of a control device 6000. Referring to fig. 6, the control device 6000 includes: processor 6010, memory 6020, power supply 6030, display unit 6040, and input unit 6050.
The processor 6010 is a control center of the control apparatus 6000, connects various components using various interfaces and lines, and performs various functions of the control apparatus 6000 by running or executing software programs and/or data stored in the memory 6020, thereby performing overall monitoring of the control apparatus 6000.
In the embodiment of the present application, the processor 6010, when calling the computer program stored in the memory 6020, executes the control method of the TCP transmission performance as provided in the embodiment shown in fig. 2.
Alternatively, processor 6010 may include one or more processing units; preferably, processor 6010 may integrate an application processor that handles mainly the operating system, user interfaces, applications, etc. and a modem processor that handles mainly wireless communications. It is to be appreciated that the modem processor described above may not be integrated into processor 6010. In some embodiments, the processor, memory, and/or memory may be implemented on a single chip, or in some embodiments, they may be implemented separately on separate chips.
The memory 6020 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, various applications, and the like; the storage data area may store data created according to the use of the control device 6000, and the like. In addition, the memory 6020 may include high-speed random access memory and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid-state storage device.
The control device 6000 further includes a power supply 6030 (e.g., a battery) for powering the various components, which may be logically coupled to the processor 6010 via a power management system to manage charging, discharging, and power consumption via the power management system.
The display unit 6040 may be used to display information input by a user or information provided to the user, and various menus and the like of the control apparatus 6000, and in the embodiment of the present invention, is mainly used to display a display interface of each application in the control apparatus 6000 and objects such as text and pictures displayed in the display interface. The display unit 6040 may include a display panel 6041. The Display panel 6041 may be configured in the form of a Liquid Crystal Display (LCD), an Organic Light-Emitting Diode (OLED), or the like.
The input unit 6050 may be used to receive information such as numbers or characters input by a user. The input unit 6050 may include a touch panel 6051 and other input devices 6052. Touch panel 6051, also referred to as a touch screen, may collect touch operations by a user on or near touch panel 6051 (e.g., operations by a user on or near touch panel 6051 using a finger, a stylus, or any other suitable object or attachment).
Specifically, the touch panel 6051 may detect a touch operation by the user, detect signals resulting from the touch operation, convert the signals into touch point coordinates, send the touch point coordinates to the processor 6010, receive a command sent from the processor 6010, and execute the command. In addition, the touch panel 6051 can be implemented by various types such as a resistive type, a capacitive type, an infrared ray, and a surface acoustic wave. Other input devices 6052 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, power on and off keys, etc.), a trackball, a mouse, a joystick, and the like.
Of course, the touch panel 6051 may cover the display panel 6041, and when the touch panel 6051 detects a touch operation thereon or nearby, the touch operation is transmitted to the processor 6010 to determine the type of the touch event, and then the processor 6010 provides a corresponding visual output on the display panel 6041 according to the type of the touch event. Although in fig. 6, the touch panel 6051 and the display panel 6041 are two separate components to implement the input and output functions of the control device 6000, in some embodiments, the touch panel 6051 and the display panel 6041 may be integrated to implement the input and output functions of the control device 6000.
The control device 6000 may also include one or more sensors, such as pressure sensors, gravitational acceleration sensors, proximity light sensors, etc. Of course, the control device 6000 may also include other components such as a camera, which are not shown in fig. 6 and will not be described in detail since they are not components that are used in the embodiments of the present application.
Those skilled in the art will appreciate that fig. 6 is merely an example of a control device and is not intended to be limiting and may include more or less components than those shown, or some components in combination, or different components.
The embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the computer program implements the method for controlling the TCP transmission performance in any of the above-mentioned method embodiments.
Embodiments of the present application also provide a computer program product or computer program comprising computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the control method of the TCP transmission performance in any of the above-described method embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a general hardware platform, and certainly can also be implemented by hardware. Based on such understanding, the above technical solutions substantially or partially contributing to the related art may be embodied in the form of a software product, which may be stored in a computer-readable storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and includes several instructions for enabling a control device (which may be a personal computer, a server, or a network device, etc.) to execute the methods of the various embodiments or some parts of the embodiments.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.
Claims (10)
1. A control method for TCP transmission performance is characterized by comprising the following steps:
receiving a transmission performance adjusting request periodically sent by a TCP server;
acquiring a historical performance parameter set associated with the TCP server according to the transmission performance adjustment request; the historical performance parameter set comprises historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period;
determining a current congestion control parameter of the TCP server based on the historical set of performance parameters;
and adjusting the data transmission performance of the TCP server according to the current congestion control parameter.
2. The method of claim 1, wherein determining current congestion control parameters for the TCP server based on the historical set of performance parameters comprises:
fitting the congestion control parameters and the historical performance index parameters in the historical performance parameter set by adopting a preset proxy model to obtain a fitting function;
predicting congestion control parameters corresponding to optimal historical performance index parameters according to the fitting function and a preset extraction function;
and taking the congestion control parameter obtained by prediction as the current congestion control parameter.
3. The method of claim 1, wherein said obtaining a set of historical performance parameters associated with the TCP server in accordance with the transmission performance adjustment request comprises:
according to the transmission performance adjustment request, counting historical control parameters corresponding to each TCP connection in the TCP server within a preset historical time period;
and generating a historical performance parameter set associated with the TCP server according to the counted historical control parameters.
4. The method of claim 3, wherein said generating the set of historical performance parameters associated with the TCP server based on the statistical historical control parameters comprises:
extracting historical strategy identification and historical strategy operation parameters corresponding to historical congestion control strategies from the counted historical control parameters;
generating historical congestion control parameters according to the historical strategy identification and the historical strategy operation parameters;
generating a historical performance index parameter according to a historical performance parameter in the counted historical control parameters and a preset service objective function;
obtaining a binary historical parameter group of each TCP connection based on the historical congestion control parameter and the historical performance index parameter;
and generating a historical performance parameter set associated with the TCP server by using each binary historical parameter set.
5. The method of claim 3 or 4, wherein prior to generating the set of historical performance parameters associated with the TCP server from the statistical historical control parameters, further comprising:
counting historical control parameters corresponding to each TCP connection in the associated terminal of the TCP server within a preset historical time period;
and the associated terminal is a terminal establishing TCP connection with the TCP server.
6. The method of claim 3 or 4, wherein prior to generating the set of historical performance parameters associated with the TCP server from the statistical historical control parameters, further comprising:
when determining that the historical control parameters of the TCP server in a preset historical time period do not exist, counting the historical control parameters of the relevant server of the TCP server in the preset historical time period;
wherein the associated server is a server having a specified characteristic in common with the TCP server.
7. The method of claim 6, prior to generating the set of historical performance parameters associated with the TCP server based on the statistical historical control parameters, further comprising:
and counting the historical control parameters of the associated terminal of the associated server in a preset historical time period.
8. The method according to claim 1, wherein said adjusting the data transmission performance of the TCP server according to the current congestion control parameter comprises:
extracting strategy identification corresponding to a congestion control strategy and strategy operation parameters corresponding to the strategy identification from the current congestion control parameters;
and adjusting the data transmission performance of the TCP server based on the congestion control strategy corresponding to the strategy identification and the strategy operation parameter.
9. A control apparatus for TCP transmission performance, comprising:
a receiving unit, configured to receive a transmission performance adjustment request periodically sent by a TCP server;
an obtaining unit, configured to obtain, according to the transmission performance adjustment request, a historical performance parameter set associated with the TCP server; the historical performance parameter set comprises historical performance index parameters and historical congestion control parameters corresponding to each TCP connection in a preset historical time period;
a determining unit, configured to determine a current congestion control parameter of the TCP server based on the historical performance parameter set;
and the adjusting unit is used for adjusting the data transmission performance of the TCP server according to the current congestion control parameter.
10. A control device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the steps of the method according to any of claims 1-8 are implemented when the program is executed by the processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010650366.9A CN111935025B (en) | 2020-07-08 | 2020-07-08 | Control method, device, equipment and medium for TCP transmission performance |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010650366.9A CN111935025B (en) | 2020-07-08 | 2020-07-08 | Control method, device, equipment and medium for TCP transmission performance |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111935025A true CN111935025A (en) | 2020-11-13 |
CN111935025B CN111935025B (en) | 2023-10-17 |
Family
ID=73312311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010650366.9A Active CN111935025B (en) | 2020-07-08 | 2020-07-08 | Control method, device, equipment and medium for TCP transmission performance |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111935025B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112702276A (en) * | 2021-03-24 | 2021-04-23 | 腾讯科技(深圳)有限公司 | Transmission control method and device, electronic equipment and computer storage medium |
CN115499370A (en) * | 2021-06-17 | 2022-12-20 | 中国移动通信集团浙江有限公司 | Signaling network link fault processing method and device and computer readable storage medium |
CN116545942A (en) * | 2023-07-04 | 2023-08-04 | 腾讯科技(深圳)有限公司 | Data transmission method, device, electronic equipment and storage medium |
Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1574720A (en) * | 2003-05-29 | 2005-02-02 | 三星电子株式会社 | Method and system for controlling packet transmission using bind update message |
US20080225721A1 (en) * | 2007-03-12 | 2008-09-18 | Robert Plamondon | Systems and methods for providing quality of service precedence in tcp congestion control |
CN102143000A (en) * | 2011-03-31 | 2011-08-03 | 中兴通讯股份有限公司 | Method for controlling data recovery, node, control device and disaster-recovery system |
US20110280130A1 (en) * | 2010-02-03 | 2011-11-17 | Bridgewater Systems Corp. | Systems and Methods for Network Congestion Management Using Radio Access Network Congestion Indicators |
CN102546832A (en) * | 2012-02-29 | 2012-07-04 | 北京快网科技有限公司 | Message transmission method based on transmission control protocol (TCP) |
US20130021933A1 (en) * | 2011-07-21 | 2013-01-24 | Movik Networks | RAN Analytics, Control And Tuning Via Multi-Protocol, Multi-Domain, And Multi-RAT Analysis |
CN103858404A (en) * | 2012-02-24 | 2014-06-11 | 株式会社日立制作所 | Communication device |
US20140241159A1 (en) * | 2013-02-28 | 2014-08-28 | Cellco Partnership D/B/A Verizon Wireless | Optimization of transmission control protocol (tcp) connections in a wireless network |
US20140281018A1 (en) * | 2013-03-13 | 2014-09-18 | Futurewei Technologies, Inc. | Dynamic Optimization of TCP Connections |
US20140334296A1 (en) * | 2013-05-13 | 2014-11-13 | Futurewei Technologies, Inc. | Aggressive Transmission Control Protocol (TCP) Retransmission |
CN104836742A (en) * | 2015-05-07 | 2015-08-12 | 盐城工学院 | M2M (machine-to-machine) terminal and TCP transmission congestion control method and system thereof |
CN104954279A (en) * | 2014-03-28 | 2015-09-30 | 华为技术有限公司 | Transmission control method, device and system |
CN106533970A (en) * | 2016-11-02 | 2017-03-22 | 重庆大学 | Differential flow control method and device for cloud computing data center network |
CN107276850A (en) * | 2017-06-26 | 2017-10-20 | 中国电力科学研究院 | A kind of power information acquisition system unified interface test concurrent transmission method and system |
CN107800642A (en) * | 2016-08-31 | 2018-03-13 | 北京金山云网络技术有限公司 | A kind of jamming control method and device |
CN109525447A (en) * | 2019-01-07 | 2019-03-26 | 北京大米科技有限公司 | A kind of method, apparatus and electronic equipment adjusting network transmission bandwidth |
CN109586991A (en) * | 2017-09-29 | 2019-04-05 | 维布络有限公司 | Adaptive context aware function chain operational approach and system in communication network |
CN109688065A (en) * | 2018-12-28 | 2019-04-26 | 腾讯科技(深圳)有限公司 | Processing method, device and the storage medium of parameter |
US20190141113A1 (en) * | 2017-11-03 | 2019-05-09 | Salesforce.Com, Inc. | Simultaneous optimization of multiple tcp parameters to improve download outcomes for network-based mobile applications |
CN110059858A (en) * | 2019-03-15 | 2019-07-26 | 深圳壹账通智能科技有限公司 | Server resource prediction technique, device, computer equipment and storage medium |
CN110391989A (en) * | 2018-04-17 | 2019-10-29 | 网宿科技股份有限公司 | A kind of method and apparatus carried out data transmission |
CN110691035A (en) * | 2019-10-17 | 2020-01-14 | 北京达佳互联信息技术有限公司 | Method and device for determining network congestion, electronic equipment and storage medium |
US20200021497A1 (en) * | 2018-07-13 | 2020-01-16 | Arris Enterprises Llc | Traffic simulator for data transmission system |
CN110730105A (en) * | 2015-05-29 | 2020-01-24 | 腾讯科技(深圳)有限公司 | Picture data transmission method, device, equipment and storage medium |
CN110856214A (en) * | 2019-10-29 | 2020-02-28 | 广东省电信规划设计院有限公司 | TCP congestion control method and device |
-
2020
- 2020-07-08 CN CN202010650366.9A patent/CN111935025B/en active Active
Patent Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1574720A (en) * | 2003-05-29 | 2005-02-02 | 三星电子株式会社 | Method and system for controlling packet transmission using bind update message |
US20080225721A1 (en) * | 2007-03-12 | 2008-09-18 | Robert Plamondon | Systems and methods for providing quality of service precedence in tcp congestion control |
US20110280130A1 (en) * | 2010-02-03 | 2011-11-17 | Bridgewater Systems Corp. | Systems and Methods for Network Congestion Management Using Radio Access Network Congestion Indicators |
CN102143000A (en) * | 2011-03-31 | 2011-08-03 | 中兴通讯股份有限公司 | Method for controlling data recovery, node, control device and disaster-recovery system |
US20130021933A1 (en) * | 2011-07-21 | 2013-01-24 | Movik Networks | RAN Analytics, Control And Tuning Via Multi-Protocol, Multi-Domain, And Multi-RAT Analysis |
CN103858404A (en) * | 2012-02-24 | 2014-06-11 | 株式会社日立制作所 | Communication device |
CN102546832A (en) * | 2012-02-29 | 2012-07-04 | 北京快网科技有限公司 | Message transmission method based on transmission control protocol (TCP) |
US20140241159A1 (en) * | 2013-02-28 | 2014-08-28 | Cellco Partnership D/B/A Verizon Wireless | Optimization of transmission control protocol (tcp) connections in a wireless network |
US20140281018A1 (en) * | 2013-03-13 | 2014-09-18 | Futurewei Technologies, Inc. | Dynamic Optimization of TCP Connections |
US20140334296A1 (en) * | 2013-05-13 | 2014-11-13 | Futurewei Technologies, Inc. | Aggressive Transmission Control Protocol (TCP) Retransmission |
CN104954279A (en) * | 2014-03-28 | 2015-09-30 | 华为技术有限公司 | Transmission control method, device and system |
CN104836742A (en) * | 2015-05-07 | 2015-08-12 | 盐城工学院 | M2M (machine-to-machine) terminal and TCP transmission congestion control method and system thereof |
CN110730105A (en) * | 2015-05-29 | 2020-01-24 | 腾讯科技(深圳)有限公司 | Picture data transmission method, device, equipment and storage medium |
CN107800642A (en) * | 2016-08-31 | 2018-03-13 | 北京金山云网络技术有限公司 | A kind of jamming control method and device |
CN106533970A (en) * | 2016-11-02 | 2017-03-22 | 重庆大学 | Differential flow control method and device for cloud computing data center network |
CN107276850A (en) * | 2017-06-26 | 2017-10-20 | 中国电力科学研究院 | A kind of power information acquisition system unified interface test concurrent transmission method and system |
CN109586991A (en) * | 2017-09-29 | 2019-04-05 | 维布络有限公司 | Adaptive context aware function chain operational approach and system in communication network |
US20190141113A1 (en) * | 2017-11-03 | 2019-05-09 | Salesforce.Com, Inc. | Simultaneous optimization of multiple tcp parameters to improve download outcomes for network-based mobile applications |
CN110391989A (en) * | 2018-04-17 | 2019-10-29 | 网宿科技股份有限公司 | A kind of method and apparatus carried out data transmission |
US20200021497A1 (en) * | 2018-07-13 | 2020-01-16 | Arris Enterprises Llc | Traffic simulator for data transmission system |
CN109688065A (en) * | 2018-12-28 | 2019-04-26 | 腾讯科技(深圳)有限公司 | Processing method, device and the storage medium of parameter |
CN109525447A (en) * | 2019-01-07 | 2019-03-26 | 北京大米科技有限公司 | A kind of method, apparatus and electronic equipment adjusting network transmission bandwidth |
CN110059858A (en) * | 2019-03-15 | 2019-07-26 | 深圳壹账通智能科技有限公司 | Server resource prediction technique, device, computer equipment and storage medium |
CN110691035A (en) * | 2019-10-17 | 2020-01-14 | 北京达佳互联信息技术有限公司 | Method and device for determining network congestion, electronic equipment and storage medium |
CN110856214A (en) * | 2019-10-29 | 2020-02-28 | 广东省电信规划设计院有限公司 | TCP congestion control method and device |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112702276A (en) * | 2021-03-24 | 2021-04-23 | 腾讯科技(深圳)有限公司 | Transmission control method and device, electronic equipment and computer storage medium |
CN112702276B (en) * | 2021-03-24 | 2021-06-18 | 腾讯科技(深圳)有限公司 | Transmission control method and device, electronic equipment and computer storage medium |
CN115499370A (en) * | 2021-06-17 | 2022-12-20 | 中国移动通信集团浙江有限公司 | Signaling network link fault processing method and device and computer readable storage medium |
CN115499370B (en) * | 2021-06-17 | 2023-08-15 | 中国移动通信集团浙江有限公司 | Method and device for processing link failure of signaling network and computer readable storage medium |
CN116545942A (en) * | 2023-07-04 | 2023-08-04 | 腾讯科技(深圳)有限公司 | Data transmission method, device, electronic equipment and storage medium |
CN116545942B (en) * | 2023-07-04 | 2023-09-26 | 腾讯科技(深圳)有限公司 | Data transmission method, device, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN111935025B (en) | 2023-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111835827B (en) | Internet of things edge computing task unloading method and system | |
US10560546B2 (en) | Optimizing user interface data caching for future actions | |
US20190221187A1 (en) | System, apparatus and methods for adaptive data transport and optimization of application execution | |
US6012052A (en) | Methods and apparatus for building resource transition probability models for use in pre-fetching resources, editing resource link topology, building resource link topology templates, and collaborative filtering | |
CN111935025B (en) | Control method, device, equipment and medium for TCP transmission performance | |
CN113475089B (en) | Method and system for user-oriented content streaming | |
CN113037877B (en) | Optimization method for time-space data and resource scheduling under cloud edge architecture | |
WO1999036869A1 (en) | Methods and apparatus for using attribute transition probability models for pre-fetching resources | |
US10592578B1 (en) | Predictive content push-enabled content delivery network | |
CN109348264B (en) | Video resource sharing method and device, storage medium and electronic equipment | |
CN108696400A (en) | network monitoring method and device | |
CN113543160B (en) | 5G slice resource allocation method, device, computing equipment and computer storage medium | |
US11750711B1 (en) | Systems and methods for adaptively rate limiting client service requests at a blockchain service provider platform | |
CN114064394A (en) | Safety monitoring method and device based on edge calculation and terminal equipment | |
CN115714814B (en) | Edge cache replacement method based on multi-agent reinforcement learning | |
Zyrianoff et al. | Cache-it: A distributed architecture for proactive edge caching in heterogeneous iot scenarios | |
CN117972367B (en) | Data storage prediction method, data storage subsystem and intelligent computing platform | |
CN110191362B (en) | Data transmission method and device, storage medium and electronic equipment | |
Shi et al. | CoLEAP: Cooperative learning-based edge scheme with caching and prefetching for DASH video delivery | |
CN118210609A (en) | Cloud computing scheduling method and system based on DQN model | |
CN117539648A (en) | Service quality management method and device for electronic government cloud platform | |
CN117560327A (en) | Burst traffic oriented service quality adjustment method under limited network | |
CN113765993B (en) | Download speed prediction method, device and storage medium | |
US20080144653A1 (en) | Self learning performance optimized data transfer via one or several communication channels between systems | |
CN113762972A (en) | Data storage control method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |