[go: up one dir, main page]

CN115550080B - A network card, data transmission system, method, computer equipment and storage medium - Google Patents

A network card, data transmission system, method, computer equipment and storage medium Download PDF

Info

Publication number
CN115550080B
CN115550080B CN202211138632.5A CN202211138632A CN115550080B CN 115550080 B CN115550080 B CN 115550080B CN 202211138632 A CN202211138632 A CN 202211138632A CN 115550080 B CN115550080 B CN 115550080B
Authority
CN
China
Prior art keywords
data
module
network card
cache
network
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.)
Active
Application number
CN202211138632.5A
Other languages
Chinese (zh)
Other versions
CN115550080A (en
Inventor
刘晓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202211138632.5A priority Critical patent/CN115550080B/en
Publication of CN115550080A publication Critical patent/CN115550080A/en
Application granted granted Critical
Publication of CN115550080B publication Critical patent/CN115550080B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details

Landscapes

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

Abstract

The application relates to a network card, a data transmission system, a method, computer equipment and a storage medium, wherein the network card comprises a network card body and a shunt module, the network card body comprises a network port module, a data processing module and a cache module, the network port module comprises a transmission network port and at least one shunt network port, and the shunt network port is used for signal connection with second equipment for shunt; the data flow is intercepted to obtain shunt data and the shunt data is forwarded through the shunt network port when the cache occupation is larger than or equal to a first cache threshold value; when the buffer occupancy is smaller than or equal to a second buffer threshold, the returned shunt data is acquired through the shunt network port, and the network card can solve the problem of network resource waste caused by data discarding in the prior art.

Description

Network card, data transmission system, method, computer equipment and storage medium
Technical Field
The present application relates to the field of data transmission technologies, and in particular, to a network card, a data transmission system, a method, a computer device, and a storage medium.
Background
The network card is a network component working in a data link layer, is an interface for connecting a computer and a transmission medium in a network, not only can realize physical connection and electric signal matching with the transmission medium of a local area network, but also relates to functions of frame sending and receiving, frame encapsulation and unpacking, medium access control, data encoding and decoding, data caching and the like.
When the network card is not allocated with enough CPU resources, the data which is not processed in time is temporarily placed in the buffer memory of the network card, the data in the buffer memory of the network card is processed when waiting for the CPU to provide enough resources, when more data is sent to the network card end and the buffer memory of the network card is full, the network card discards the newly sent data, and the retransmission mechanism of the network protocol is utilized for retransmission, so that the network resource is wasted.
Disclosure of Invention
Based on the above, a network card, a data transmission system, a method and a storage medium are provided, so that the problem of network resource waste caused by data discarding in the prior art is solved.
In one aspect, a network card is provided, including:
The network card body comprises a network port module, a data processing module and a cache module, wherein the data processing module is in signal connection with the cache module, the network port module comprises a transmission network port and at least one shunt network port, and the shunt network port is used for shunting and returning shunt data;
The data processing module is used for receiving the data flow from the data processing module, and acquiring the buffer memory occupation amount of the buffer memory module, wherein when the buffer memory occupation amount is larger than or equal to a first buffer memory threshold value, the data flow is intercepted by the data flow to obtain the data flow and the data flow is forwarded through the data flow distribution network port; or when the buffer occupying amount is smaller than or equal to a second buffer threshold value, the distribution module acquires returned distribution data through the distribution network port.
In one embodiment, the network card further comprises a storage module for receiving the split data forwarded by the adjacent network card, and the storage module is in signal connection with the data processing module, wherein the adjacent network card is in signal connection with the network card body through the split network port.
In another aspect, there is provided a data transmission system comprising:
The first device comprises a first network card, wherein the first network card comprises a network port module, a data processing module and a cache module, the data processing module is in signal connection with the cache module, and the network port module comprises a transmission network port and at least one shunt network port; the first network card further comprises a shunting module for monitoring the data flow between the transmission network port and the data processing module and obtaining the cache occupation amount of the cache module;
the second device is in signal connection with the first device through the shunt network port;
When the buffer occupancy is greater than or equal to a first buffer threshold, the splitting module intercepts the data stream to obtain splitting data and forwards the splitting data to the second device through a splitting network port; or when the buffer occupancy is smaller than or equal to a second buffer threshold, the shunting module acquires shunting data stored in the second device through the shunting network port.
In still another aspect, a data transmission method is provided, including:
monitoring the data flow of the first network card and acquiring the cache occupation amount of the first network card;
when the buffer occupancy is greater than or equal to a first buffer threshold, intercepting the data stream to obtain shunt data;
forwarding the split data to a second device for the second device to store and obtain data to be recovered;
and when the buffer occupancy amount is reduced to be smaller than or equal to a second buffer threshold value, acquiring the data to be recovered returned by the second equipment.
In one embodiment, before forwarding the split data to the second device, the method further comprises:
and sending a diversion notification to enable the second equipment to respond to the diversion notification and prepare to accept resources.
In one embodiment, before the data to be recovered returned by the second device is obtained, the method further includes:
And sending a return notification to enable the second equipment to respond to the return notification and return the data to be recycled.
In one embodiment, when the buffer occupancy is lower than the first buffer threshold, the data stream is transparently transmitted to implement data transmission of the first network card.
In one embodiment, the obtaining the cache occupation amount of the first network card includes:
Monitoring the buffer status of the first network card with a first monitoring frequency, and determining whether the buffer is occupied:
if so, monitoring the buffer state of the first network card with a second monitoring frequency, and obtaining the buffer occupation amount, wherein the second monitoring frequency is larger than the first monitoring frequency.
There is also provided a computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of the method when executing the computer program
There is provided a computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of the method.
According to the network card, the data transmission system, the method, the computer equipment and the storage medium, the data flow entering the network card is monitored through the shunt module, the buffer occupation amount is obtained, when the buffer occupation amount is larger than or equal to the set first buffer threshold, the shunt mechanism is started, the data flow is intercepted and forwarded to the specific equipment connected with the shunt network port through the shunt network port, and when the buffer is reduced to the set second buffer threshold, the returned shunt data is obtained, so that the loss of the data is avoided, the data is not required to be retransmitted by a sender, and the waste of network resources is further reduced.
Drawings
FIG. 1 is a diagram of an application environment in one embodiment;
FIG. 2 is a schematic diagram of a network card according to an embodiment;
FIG. 3 is a block diagram of a data transmission system in one embodiment;
FIG. 4 is a flow chart of a data transmission method in another embodiment;
fig. 5 is an internal structural diagram of a computer device in one embodiment.
Reference numerals: the device comprises a first device 100, a first network card 110, a second device 200, a second network card 210, a data processing module 111, a buffer module 112, a transmission network port 113, a shunt network port 114, a shunt module 115 and a storage module 116.
Detailed Description
The present application will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present application more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the application.
The network card is an interface for data transmission of network equipment, taking a server as an example, the network card is taken as a data channel, receiving and sending data are carried, each time of correct receiving of the data can directly affect the acquisition and processing of the data by the server, when the network card is not distributed with enough CPU resources, the data which are not processed in time can be temporarily placed in a cache of the network card, the data in the cache of the network card are processed when the CPU can provide enough resources, but if the data in the cache of the network card can not be processed all the time, at the moment, more data are sent to the network card end, so that when the cache of the network card is full, the network card discards the newly sent data at the moment, in the prior art, after the data are discarded, the data are retransmitted by a retransmission mechanism of TCP/IP protocol, so that the integrity of the data is ensured, but the same data are sent for more than two times, and the waste of network resources is caused by such processing.
The network card provided by the application can be applied to an application environment as shown in fig. 1, wherein a terminal 102 communicates with a device 104 through a network. The terminal 102 may be, but not limited to, various personal computers, notebook computers, smartphones, tablet computers and portable wearable devices, the device 104 may be implemented by an independent device or a device cluster formed by a plurality of devices, taking the device 104 as a server, a network card of the server is connected with a port of a switch to implement data transmission, and the network card implements data transmission with an internal system of the server through a PCIE bus.
As shown in fig. 2, the network card provided by the present application includes:
the network card body comprises a network port module, a data processing module 111 and a cache module 112, wherein the data processing module 111 is in signal connection with the cache module 112, and the network port module comprises a transmission network port 113 and at least one shunt network port 114.
It can be understood that the network card body is connected with the switch port through the transmission network port 113, so as to realize uplink and downlink of data, and the data stream entering the network card from the switch is correspondingly processed in the data processing module 111, which is not described herein. When large-traffic data transmission is performed, a part of data traffic starts to occupy the data cache under the limitation of processing capacity.
The network card further includes a splitting module 115, where the splitting module 115 is configured to monitor a data flow between the transmission network port 113 and the data processing module 111, and obtain a buffer occupancy of the buffer module 112.
Illustratively, the splitting module 115 may be a splitting layer disposed inside the network card chip. Which is connected between the transmission network port 113 and the data processing module 111, and when the buffer is not occupied, the data stream is transmitted transparently through the splitting module 115, and when the network card buffer module 112 is found to be occupied by a certain value, the splitting mechanism can be started.
For example, when the buffer occupancy is greater than or equal to the first buffer threshold, the splitting module 115 intercepts the data stream to obtain splitting data and forwards the splitting data through the splitting network port 114, where the splitting network port 114 is used to connect to a second device for splitting, and the splitting data is temporarily stored by the second device. When the buffer occupancy is reduced, the split data stored in the second device may be re-acquired to ensure the integrity of the data, for example, when the buffer occupancy is less than or equal to the second buffer threshold, the splitting module 115 acquires the returned split data through the split network port 114.
The first buffer threshold and the second buffer threshold can be set according to the actual network card running condition, 50% buffer occupation amount is defined as the first buffer threshold, and 0% buffer occupation amount is defined as the second buffer threshold for explanation.
The network card provided by the application is provided with the shunt module 115, can monitor the received data flow, and when high data flow cannot be processed in time, forwards the data flow to the appointed second equipment, such as a server connected to the shunt network port 114, and returns the data when the second equipment is idle, so that the problem of data loss at the server end can be effectively solved, further, the retransmission of the data is avoided, and the waste of network resources is reduced.
In one embodiment, the network card further includes a storage module 116, where the storage module 116 is in signal connection with the data processing module 111, and the storage module 116 is configured to accept split data forwarded from an adjacent network card.
It is understood that the adjacent network card is in signal connection with the network card body through the shunt network port 114.
Illustratively, the storage module 116 may be a memory connected to the outside of the network card, or may be a part of a device to which the network card is connected, for example, an internal memory of a server to which the network card is connected, and when the local network card receives the split data transmitted by another server network card through the split network port 114, the local server may store the split data in its specific storage area.
The network card of the above embodiment may be applied to a plurality of servers at the same time, and each server may use, when receiving data, an adjacent server connected to the server via the split network port 114 as a split device, and may also be used as a split device of the adjacent server.
As shown in fig. 3, in one embodiment, a data transmission system is provided, comprising
The first device 100, for example, a home terminal server, is configured to receive a data stream from a switch, where the home terminal server includes a first network card 110, the first network card 110 includes a network port module, a data processing module 111, and a buffer module 112, where the data processing module 111 is in signal connection with the buffer module 112, when large-traffic data is present and cannot be processed in time, the buffer module 112 is used to buffer the data, the network port module includes a transmission network port 113 and at least one shunt network port 114, the switch is connected through the transmission network port 113, and the data stream from the switch port enters the data processing module 111 through the transmission network port 113; the first network card 110 further includes a splitting module 115, where the splitting module 115 is configured to monitor a data flow between the transmission network port 113 and the data processing module 111, and obtain a cache occupation amount of the cache module 112;
The data transmission system further comprises at least one second device 200, for example another server, which is adjacent to the home server, which is in signal connection with the first device 100 via the distribution network port 114.
When the cache occupancy of the home server is greater than or equal to a first cache threshold, for example, 50%, the splitting module 115 intercepts the data stream entering the first network card 110 of the home server to obtain split data, and forwards the split data to a neighboring server for storage through the split network port 114 without discarding.
When the buffer occupancy is less than or equal to the second buffer threshold, for example, when the buffer in the buffer module 112 is empty, the splitting module 115 acquires the splitting data stored in the proximity server through the splitting network port 114, and does not need to be retransmitted by the sender.
By adopting the data transmission system disclosed in the above embodiment, the data flow can be split and controlled in the first network card 110, and the data flow is split by the split network port 114 by means of the split module 115 of the first network card 110, for example, a split layer arranged in the first network card 110 chip, when the buffer memory of the network card reaches the preset first buffer memory threshold value, the data flow is split timely, so that the problem of packet loss is avoided.
In one embodiment, the proximity server adopts a second network card 210 with the same structure as the first network card 110 in the local server, the split network ports 114 of the first network card 110 and the second network card 210 are interconnected, and the respective internal memories of the local server and the proximity server are used as the storage modules 116 of the corresponding network cards, so that the local server and the proximity server can both be used as the split devices.
For example, when the local server receives high-traffic data, the local server is limited in processing capacity, the data traffic starts to occupy the buffer memory of the first network card 110, and when the buffer memory occupation amount of the buffer memory module 112 of the first network card 110 reaches 50%, the splitting module 115 starts a splitting mechanism to intercept the newly-entered data stream and forward the newly-entered data stream to the splitting network port 114 of the first network card 110, and the splitting interface of the second network card 210 of the neighboring server receiving the splitting data is connected to the splitting interface through the network line, and the neighboring server stores the splitting data in a specific area; when the buffer memory of the first network card 110 of the home server is emptied, the returned split data is acquired from the neighboring server to ensure the integrity of the data.
On the other hand, the home terminal server may be used as a splitting device of the neighboring server, for example, when the neighboring server receives high-traffic data, the buffer occupancy of the buffer module 112 of the second network card 210 reaches 50%, that is, the split data is forwarded to the home terminal server for storage through the connected split network port 114, and after the buffer is emptied, the returned split data is obtained from the home terminal server.
According to the data transmission system, the shunting module 115 is added in the network card to avoid data loss, when the buffer memory occupation amount of the network card exceeds a certain limit value, the shunting module 115 starts a shunting mechanism, forwards the data stream to the second equipment 200 connected with the shunting network port 114 in time, and acquires shunting data from the adjacent second equipment 200 when the buffer memory is idle, so that the purpose of avoiding data packet loss is achieved, a sender of data is not required to retransmit the data, and the waste of network resources is reduced.
In one embodiment, in the data transmission system, when the splitting module 115 of the first network card 110 of the home terminal server finds that the cache occupation amount is greater than or equal to 50% of the first cache threshold, a splitting notification is sent to the neighboring server, and the neighboring server responds to the splitting notification and prepares to accept the resource; when the cache of the home terminal server is emptied, the splitting module 115 of the first network card 110 sends a return notification to the neighboring server receiving the splitting data, and at this time, the neighboring server returns the splitting data stored before to the home terminal server after receiving the return notification.
In one embodiment, the splitting module 115 initially monitors the buffer status of the first network card 110 at a first monitoring frequency to determine whether the buffer is occupied: when the buffer memory is occupied, the buffer memory state of the first network card 110 is monitored at a second monitoring frequency, and the buffer memory occupation amount is obtained, wherein the second monitoring frequency is greater than the first monitoring frequency, and the shunt response speed is improved.
The above-mentioned data transmission system and each module in the network card may be implemented in whole or in part by software, hardware, and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
As shown in fig. 4, in one embodiment, a data transmission method is provided, which is described by taking application of the method to a server as an example, and includes the following steps:
in step 401, the splitting module 115 in the first network card 110 of the home server monitors the data flow of the first network card 110, and obtains the buffer occupancy rate of the first network card 110.
Illustratively, the splitting module 115 is connected between the network port module of the first network card 110 and the data processing module 111, and when the buffer module 112 is unoccupied or the buffer occupancy is small, the splitting module 115 realizes data flow transfer between the network port module and the data processing module 111 in a transparent transmission manner.
In step 402, the splitting module 115 performs threshold judgment on the buffer occupancy, and when the buffer occupancy is greater than or equal to a first buffer threshold, for example, 50%, the splitting module 115 intercepts the data stream to obtain splitting data, and forwards the splitting data to the second device 200, so that the second device 200 stores the splitting data to obtain data to be recycled.
It may be appreciated that the second device 200 has a storage module 116, and may receive and store the forwarded split data, where the second device 200 may be a neighboring server that is adjacent to the home server and connected by a network cable, and the first network card 110 of the home server is provided with a split network port 114, where the split network port 114 is in signal connection with the split module 115, and the neighboring server is in data communication with the home server through the split network port 114.
In step 403, when the buffer occupancy of the first network card 110 of the home terminal server is reduced to be less than or equal to the second buffer threshold, for example, after the buffer of the first network card 110 is emptied, the splitting module 115 in the first network card 110 of the home terminal server acquires the data to be recovered returned by the second device 200, and the data is normally transferred to the server upper protocol stack by the splitting module 115 for processing.
In the above data transmission method, the data is shunted through the shunt network port 114 by means of the shunt module 115 of the network card, when the buffer memory of the network card reaches the limit value, the data stream is shunted timely, and the shunt data is acquired from the second device 200 connected with the buffer memory after the buffer memory is reduced, so that the problem of data is avoided, and the data sender, such as a terminal, is not required to retransmit the data, thereby reducing the waste of network resources.
In another embodiment, the proximity server uses the second network card 210 with the same structure as the home server to perform data transmission, the split network ports 114 of the first network card 110 and the second network card 210 are interconnected to realize normal data circulation, and after the second network port obtains the split data of the first network card 110, the split module 115 of the second network port transparently transmits the transmitted split data for the proximity server to store. When the proximity server receives the high-flow data, the splitting module 115 of the second network port of the proximity server intercepts and splits the data flow entering the second network card 210, forwards the split data to the local server, and the splitting module 115 of the first network card 110 of the local server transparently transmits the split data, so that the local server can store the split data from the proximity server.
In one embodiment, the home server further comprises a step of sending a split notification to the second device 200 before forwarding the split data to the second device 200, for the second device 200 to prepare to accept resources, such as to prepare a specific storage space, in response to the split notification.
On the other hand, before the home server obtains the data to be recovered returned by the second device 200, the home server further includes a step of sending a return notification, so that the second device 200 returns the data to be recovered in response to the return notification.
In one embodiment, the splitting module 115 monitors the data stream in a variable frequency manner, after the data stream enters the first network card 110 on the local server, the splitting layer monitors the buffer status of the first network card 110 with a smaller first monitoring frequency, when the data stream starts to occupy the network card buffer, the splitting module 115 increases the monitoring frequency, monitors with a second monitoring frequency greater than the first monitoring frequency, thereby being beneficial to improving the response speed, and when the buffer occupancy reaches the threshold value, the splitting module timely splits the data stream.
The data transmission method provided by the application avoids data loss by adding a shunt module 115 such as a shunt layer in the network card, and the working principle is as follows: after the data stream enters the first network card 110 on the local end server, the streaming layer monitors the data stream, after the data stream starts to occupy the first network card 110 buffer, the streaming layer increases the monitoring frequency, when the network card buffer is found to be occupied to reach the first buffer threshold value, for example, 50%, a streaming mechanism is started, a streaming notification is sent to another server for receiving streaming data, the server is ready to receive streaming data, then the local end server intercepts the newly-incoming data stream and forwards the newly-incoming data stream to a streaming interface, the streaming interface of the local end server is connected to the streaming interface of the other server for receiving streaming data through a network cable, the data is stored in a specific area of the other server, a recovery instruction of the local end server is waited, when the buffer of the local end server is reduced by a second buffer threshold value, for example, the streaming layer of the first network card 110 of the local end server can send a traffic return notification to the other server, at the moment, after the other server receives the traffic return notification, the previously-stored data to be returned is sent back to the streaming interface of the local end server through the streaming interface of the local end server, and the streaming interface of the local end server is processed by the streaming interface layer, and the streaming protocol is processed by the streaming interface layer.
On the other hand, the home terminal server and the adjacent server can adopt the same network card to mutually accept the split data or transmit the split data back to each other.
According to the data transmission method provided by the application, the data stream is timely shunted before the cache of the network card is fully occupied, so that the problem of data loss is avoided, a data sender is not required to retransmit the data, and the waste of network resources is further reduced.
It should be understood that, although the steps in the flowchart of fig. 4 are shown in sequence as indicated by the arrows, the steps are not necessarily performed in sequence as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in fig. 4 may include multiple sub-steps or stages that are not necessarily performed at the same time, but may be performed at different times, nor do the order in which the sub-steps or stages are performed necessarily performed in sequence, but may be performed alternately or alternately with at least a portion of the sub-steps or stages of other steps or other steps.
In one embodiment, a computer device is provided, which may be a server, the internal structure of which may be as shown in fig. 5. The computer device includes a processor, a memory, a network interface, and a database connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device is for storing data. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a data transmission method.
It will be appreciated by those skilled in the art that the structure shown in FIG. 5 is merely a block diagram of some of the structures associated with the present inventive arrangements and is not limiting of the computer device to which the present inventive arrangements may be applied, and that a particular computer device may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
In one embodiment, a computer device is provided comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the steps of when executing the computer program:
step A, monitoring the data flow of the first network card 110, and obtaining the cache occupation amount of the first network card 110;
Step B, judging a threshold value of the occupied amount of the buffer, intercepting the data stream to obtain split data when the occupied amount of the buffer is larger than or equal to a first buffer threshold value, and forwarding the split data to the second device 200 so as to enable the second device 200 to store and obtain data to be recovered;
and step C, when the buffer occupancy amount is reduced to be smaller than or equal to a second buffer threshold value, acquiring the data to be recovered returned by the second device 200.
The computer equipment judges the threshold value of the buffer occupation amount of the network card, and intercepts and shunts the data stream entering the network card when the buffer occupation amount reaches a first buffer threshold value, so that the data is prevented from being discarded due to buffer occupation; after the buffer occupancy of the first network card 110 decreases to the second buffer threshold, the integrity of the data is ensured by acquiring the data to be recovered returned by the second device 200.
In one embodiment, the processor when executing the computer program further performs the steps of:
When the processor finds that the buffer occupancy amount of the first network card 110 is greater than or equal to the second buffer threshold, a shunting notification is sent to the second device 200, so that the second device 200 responds to the shunting notification, prepares to accept resources, intercepts a new incoming data stream, and forwards the new incoming data stream to a shunting interface, and the shunting interface is connected to the second device 200 through a network cable to realize the storage of shunting data by the second device 200.
In one embodiment, the processor when executing the computer program further performs the steps of:
and when the processor finds that the buffer occupancy is reduced to be less than or equal to the second buffer threshold, sending a return notification to the second device 200 so that the second device 200 responds to the return notification, and returning the data to be recycled after receiving the return notification by the second device 200.
In one embodiment, the processor executes the computer program to transparently transmit and not operate the data stream entering the first network card 110 via the transmission network port 113 when the buffer occupancy of the first network card 110 is below the first buffer threshold.
In one embodiment, the processor when executing the computer program further performs the steps of:
The split data forwarded from the adjacent network card is accepted through the split interface and stored in the own storage module 116.
The computer device may use another device as a distribution device when receiving the high-flow data, and forward the distribution data to itself, or receive the distribution data from the distribution device when receiving the high-flow data.
In one embodiment, when the processor executes the computer program, the buffer status of the first network card 110 is monitored at a first monitoring frequency to determine whether the buffer is occupied: if so, the buffer status of the first network card 110 is monitored with a second monitoring frequency, and the buffer occupancy is obtained, wherein the second monitoring frequency is greater than the first monitoring frequency, so as to improve the shunt response speed.
In one embodiment, a computer readable storage medium is provided having a computer program stored thereon, which when executed by a processor, performs the steps of:
Step A, determining the occupation condition of the buffer memory of the first network card 110, including monitoring the data flow of the first network card 110 and obtaining the occupation amount of the buffer memory of the first network card 110;
B, judging a threshold value of the occupied amount of the buffer, and intercepting the data stream to obtain shunt data when the occupied amount of the buffer is larger than or equal to a first buffer threshold value; forwarding the split data to a second device 200 for the second device 200 to store and obtain data to be recovered;
and step C, when the buffer occupancy amount is reduced to be smaller than or equal to a second buffer threshold value, acquiring the data to be recovered returned by the second device 200.
In one embodiment, the computer program when executed by the processor further performs the steps of:
Before forwarding the split data to the second device 200, a split notification is sent to the second device 200 for the second device 200 to prepare to take over resources, e.g. to prepare to store a specific area of the split data, in response to the split notification.
On the other hand, before the data to be recovered returned by the second device 200 is acquired, a return notification is sent to the second device 200, so that the second device 200 returns the data to be recovered in response to the return notification.
It is understood that the data stream is transparently transferred when the buffer occupancy is below the first buffer threshold.
In one embodiment, the computer program when executed by the processor further performs the steps of:
monitoring the buffer status of the first network card 110 at the first monitoring frequency to determine whether the buffer is occupied:
if so, the buffer status of the first network card 110 is monitored at a second monitoring frequency, and the buffer occupancy is obtained, wherein the second monitoring frequency is greater than the first monitoring frequency.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in embodiments provided herein may include non-volatile and/or volatile memory. The nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (SYNCHLINK) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), among others.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples illustrate only a few embodiments of the application, which are described in detail and are not to be construed as limiting the scope of the application. It should be noted that it will be apparent to those skilled in the art that several variations and modifications can be made without departing from the spirit of the application, which are all within the scope of the application. Accordingly, the scope of protection of the present application is to be determined by the appended claims.

Claims (9)

1.一种网卡,其特征在于,包括:1. A network card, comprising: 网卡本体,包括网口模块、数据处理模块以及缓存模块,其中,所述数据处理模块信号连接所述缓存模块,所述网口模块包括传输网口以及至少一个分流网口,所述分流网口用于分流以及回传分流数据;The network card body includes a network port module, a data processing module and a cache module, wherein the data processing module is connected to the cache module by signal, the network port module includes a transmission network port and at least one shunt network port, and the shunt network port is used to shunt and return shunt data; 分流模块,用于监控所述传输网口与所述数据处理模块之间的数据流,并获取所述缓存模块的缓存占用量,其中,当所述缓存占用量大于或者等于第一缓存阈值时,所述分流模块拦截所述数据流获得分流数据并通过所述分流网口转发所述分流数据;或,当所述缓存占用量小于或者等于第二缓存阈值时,所述分流模块通过所述分流网口获取回传的分流数据;A shunt module, used to monitor the data flow between the transmission network port and the data processing module, and obtain the cache occupancy of the cache module, wherein when the cache occupancy is greater than or equal to a first cache threshold, the shunt module intercepts the data flow to obtain shunt data and forwards the shunt data through the shunt network port; or, when the cache occupancy is less than or equal to a second cache threshold, the shunt module obtains the returned shunt data through the shunt network port; 所述网卡还包括用于承接来自结构相同的相邻网卡转发的分流数据的存储模块,所述存储模块与所述数据处理模块信号连接,其中,所述相邻网卡通过所述分流网口与所述网卡本体信号连接。The network card also includes a storage module for receiving diverted data forwarded from an adjacent network card with the same structure, and the storage module is signal-connected to the data processing module, wherein the adjacent network card is signal-connected to the network card body through the diverted network port. 2.一种数据传输系统,其特征在于,包括:2. A data transmission system, comprising: 第一设备,包括第一网卡,所述第一网卡包括网口模块、数据处理模块以及缓存模块,其中,所述数据处理模块信号连接所述缓存模块,所述网口模块包括传输网口以及至少一个分流网口;所述第一网卡还包括分流模块,用于监控所述传输网口与所述数据处理模块之间的数据流,并获取所述缓存模块的缓存占用量;第一网卡还包括用于承接来自相邻网卡转发的分流数据的存储模块,所述存储模块与所述数据处理模块信号连接;A first device includes a first network card, wherein the first network card includes a network port module, a data processing module and a cache module, wherein the data processing module is signal-connected to the cache module, and the network port module includes a transmission network port and at least one shunt network port; the first network card also includes a shunt module for monitoring a data flow between the transmission network port and the data processing module, and obtaining a cache occupancy of the cache module; the first network card also includes a storage module for receiving shunt data forwarded from an adjacent network card, and the storage module is signal-connected to the data processing module; 第二设备,包括与第一网卡结构相同的第二网卡,通过所述第二网卡的分流网口与所述第一设备的分流网口信号连接;The second device comprises a second network card having the same structure as the first network card, and is connected to the shunt network port signal of the first device through the shunt network port of the second network card; 其中,当所述缓存占用量大于或者等于第一缓存阈值时,所述分流模块拦截所述数据流获得分流数据并通过分流网口转发所述分流数据至所述第二设备;或,当所述缓存占用量小于或者等于第二缓存阈值时,所述分流模块通过所述分流网口获取存储于所述第二设备的分流数据。Among them, when the cache occupancy is greater than or equal to the first cache threshold, the diversion module intercepts the data flow to obtain diversion data and forwards the diversion data to the second device through the diversion network port; or, when the cache occupancy is less than or equal to the second cache threshold, the diversion module obtains the diversion data stored in the second device through the diversion network port. 3.一种数据传输方法,其特征在于,包括:3. A data transmission method, comprising: 监控第一网卡的数据流,并获取第一网卡的缓存占用量,其中,第一网卡包括网口模块、数据处理模块以及缓存模块,所述数据处理模块信号连接所述缓存模块,所述网口模块包括传输网口以及至少一个分流网口;所述第一网卡还包括分流模块,用于监控所述传输网口与所述数据处理模块之间的数据流,并获取所述缓存模块的缓存占用量;第一网卡还包括用于承接来自相邻网卡转发的分流数据的存储模块,所述存储模块与所述数据处理模块信号连接;Monitor the data flow of the first network card and obtain the cache occupancy of the first network card, wherein the first network card includes a network port module, a data processing module and a cache module, the data processing module is connected to the cache module by signal, and the network port module includes a transmission network port and at least one shunt network port; the first network card also includes a shunt module for monitoring the data flow between the transmission network port and the data processing module, and obtaining the cache occupancy of the cache module; the first network card also includes a storage module for receiving the shunt data forwarded from the adjacent network card, and the storage module is connected to the data processing module by signal; 当缓存占用量大于或者等于第一缓存阈值时,拦截所述数据流获得分流数据;When the cache occupancy is greater than or equal to a first cache threshold, intercepting the data flow to obtain diverted data; 转发所述分流数据至第二设备,以供所述第二设备存储获得待回收数据,其中,第二设备,包括与第一网卡结构相同的第二网卡,通过所述第二网卡的分流网口与所述第一网卡的分流网口信号连接;Forwarding the diverted data to a second device so that the second device can store and obtain the data to be recovered, wherein the second device includes a second network card with the same structure as the first network card, and the diverted network port of the second network card is connected to the diverted network port of the first network card through a signal; 当缓存占用量降低至小于或者等于第二缓存阈值时,获取所述第二设备回传的所述待回收数据。When the cache occupancy decreases to less than or equal to the second cache threshold, the to-be-reclaimed data returned by the second device is obtained. 4.根据权利要求3所述的一种数据传输方法,其特征在于,转发所述分流数据至第二设备之前,还包括:4. A data transmission method according to claim 3, characterized in that before forwarding the split data to the second device, it also includes: 发送分流通知,以供所述第二设备响应所述分流通知,准备承接资源。A diversion notification is sent, so that the second device can respond to the diversion notification and prepare to take over the resources. 5.根据权利要求3所述的一种数据传输方法,其特征在于,获取第二设备回传的所述待回收数据之前,还包括:5. A data transmission method according to claim 3, characterized in that before obtaining the to-be-recovered data returned by the second device, it also includes: 发送返回通知,以供所述第二设备响应所述返回通知,回传所述待回收数据。A return notification is sent, so that the second device responds to the return notification and returns the data to be recovered. 6.根据权利要求3所述的一种数据传输方法,其特征在于,当所述缓存占用量低于所述第一缓存阈值时,将所述数据流进行透明传输,以实现所述第一网卡的数据传输。6. A data transmission method according to claim 3, characterized in that when the cache occupancy is lower than the first cache threshold, the data stream is transparently transmitted to achieve data transmission of the first network card. 7.根据权利要求3所述的一种数据传输方法,其特征在于,所述获取第一网卡的缓存占用量,包括:7. A data transmission method according to claim 3, characterized in that the step of obtaining the cache occupancy of the first network card comprises: 以第一监控频率监控第一网卡的缓存状态,确定缓存是否被占用:Monitor the cache status of the first network card at the first monitoring frequency to determine whether the cache is occupied: 若是,则以第二监控频率监控所述第一网卡的缓存状态,获取所述缓存占用量,其中所述第二监控频率大于所述第一监控频率。If so, the cache state of the first network card is monitored at a second monitoring frequency to obtain the cache occupancy, wherein the second monitoring frequency is greater than the first monitoring frequency. 8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求3至7中任一项所述方法的步骤。8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to any one of claims 3 to 7 when executing the computer program. 9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求3至7中任一项所述的方法的步骤。9. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the steps of the method according to any one of claims 3 to 7 are implemented.
CN202211138632.5A 2022-09-19 2022-09-19 A network card, data transmission system, method, computer equipment and storage medium Active CN115550080B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211138632.5A CN115550080B (en) 2022-09-19 2022-09-19 A network card, data transmission system, method, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211138632.5A CN115550080B (en) 2022-09-19 2022-09-19 A network card, data transmission system, method, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN115550080A CN115550080A (en) 2022-12-30
CN115550080B true CN115550080B (en) 2024-09-24

Family

ID=84727913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211138632.5A Active CN115550080B (en) 2022-09-19 2022-09-19 A network card, data transmission system, method, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115550080B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114189477A (en) * 2021-10-22 2022-03-15 新华三大数据技术有限公司 Message congestion control method and device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539791B2 (en) * 2005-09-13 2009-05-26 Mediatek Inc. Method and apparatus for optimizing data buffering
CN106970827A (en) * 2017-03-27 2017-07-21 联想(北京)有限公司 Information processing method, information processor, electronic equipment
CN111858088B (en) * 2020-06-24 2024-06-14 珠海格力电器股份有限公司 Communication data processing method, device, computer equipment and storage medium
CN114253456B (en) * 2020-09-21 2025-06-10 深圳市茁壮网络股份有限公司 Cache load balancing method and device
CN114676020A (en) * 2022-03-25 2022-06-28 中国工商银行股份有限公司 Performance monitoring method and device of cache system, electronic equipment and storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114189477A (en) * 2021-10-22 2022-03-15 新华三大数据技术有限公司 Message congestion control method and device

Also Published As

Publication number Publication date
CN115550080A (en) 2022-12-30

Similar Documents

Publication Publication Date Title
US11652752B2 (en) Congestion control method and network device
US10868767B2 (en) Data transmission method and apparatus in optoelectronic hybrid network
CN113014528B (en) Message processing method, processing unit and virtual private network server
EP4202705A1 (en) Methods and systems for accessing host memory through non-volatile memory over fabric bridging with direct target access
US9559960B2 (en) Network congestion management
TWI734380B (en) Computer-implemented method and system and non-transitory computer-readable storage medium
US8432788B2 (en) Intelligent failback in a load-balanced networking environment
CN114448896B (en) Network optimization method and device
CN115967687B (en) Fast forwarding message method, network device, storage medium and computer program product
CN115865830A (en) Method and device for reducing RDMA network overhead based on connection management
CN106411872A (en) Method and device for compressing messages based on data message classification
CN114745331A (en) Congestion notification method and equipment
EP3930267A1 (en) Link aggregation port switching method, network device and computer storage medium
CN103763403B (en) Message flux control method and relevant apparatus and calculate node
CN113572582B (en) Data transmission and retransmission control method and system, storage medium and electronic device
CN115550080B (en) A network card, data transmission system, method, computer equipment and storage medium
CN114172892A (en) File upload method and device
CN114265788A (en) A device, method, device and medium for memory management
EP4064617B1 (en) Communication method and device
JP5957318B2 (en) Network system, information relay device, and packet distribution method
US8854957B2 (en) Packet retransmission control system, packet retransmission control method and retransmission control program
CN112655178A (en) Method, system and device for sending link aggregation control protocol message
CN111447046B (en) Service data transmission method, device, equipment and storage medium
CN116074253A (en) Message chained forwarding method and device
CN109302447B (en) Message processing method, device and system

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 215168 Jiangsu Province, Suzhou City, Wuzhong Economic Development Zone, Guoqiang Street, Guanpu Road No. 1, Building 9

Patentee after: Suzhou Yuannao Intelligent Technology Co.,Ltd.

Country or region after: China

Address before: 215168 Jiangsu Province, Suzhou City, Wuzhong Economic Development Zone, Guoqiang Street, Guanpu Road No. 1, Building 9

Patentee before: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd.

Country or region before: China