Network card management method, management device, electronic equipment and management system

By selecting the network card corresponding to the maximum value of the code stream forwarding capability information in the vehicle video conference as the target network card and controlling its forwarding code stream data, the problems of time-consuming polling and waste of resources in the existing technology are solved, and a more efficient Stream forwarding and network card resource utilization.

CN119341986APending Publication Date: 2025-01-21NOBO AUTOMOTIVE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310897142.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-20
Publication Date
2025-01-21

AI Technical Summary

Technical Problem

The existing multi-channel network card management has problems such as polling time and waste of resources in on-board video conferencing, resulting in increased code stream forwarding time and excessive network card resource use.

Method used

By receiving the real-time code stream forwarding capability information of each network card and the code stream forwarding request of the client device, the network card corresponding to the maximum code stream forwarding capability information is selected as the target network card, and the target network card is controlled to forward the code stream data to the corresponding client. equipment.

Benefits of technology

This method effectively saves the time of code stream forwarding and the resources used by the network card, improves the throughput of the network card, and solves the problems of polling time-consuming and resource waste.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119341986A_ABST
    Figure CN119341986A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a network card management method and device, electronic equipment and a management system, and belongs to the technical field of network card application. The method comprises the following steps: receiving real-time code stream forwarding capability information of each network card, a code stream forwarding request of client equipment and code stream data; based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card, selecting the network card corresponding to the maximum value of the code stream forwarding capability information at the current moment as a target network card; and controlling the target network card to forward the code stream data to the corresponding client device. According to the process, the network card corresponding to the maximum value of the code stream forwarding capability information is selected as the target network card, and the code stream data is forwarded to the corresponding client equipment, so that the code stream forwarding time and the use resources of the network cards are saved, and meanwhile, the throughput of the network cards is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of network card application, and in particular to a management method, a management device, an electronic device and a management system for a network card. Background Art

[0002] At present, in-vehicle video conferencing usually uses multi-channel network card management, and multi-channel network card management has a binding driver. When the network card forwards the code stream data, it informs the binding driver through polling, and the binding driver may randomly assign the code stream data to different network cards for processing. Although load balancing is achieved, there are two defects: first, polling takes extra time; second, each forwarding of code stream data will occupy all network cards, resulting in a waste of resources. Summary of the invention

[0003] Based on this, the first aspect of the present invention provides a network card management method, which effectively saves the time of code stream forwarding and the use resources of the network card, and improves the throughput of the network card. The method includes:

[0004] Receive the real-time stream forwarding capability information of each network card, the stream forwarding request of the client device and the stream data;

[0005] Based on the received stream forwarding request and the real-time stream forwarding capability information of each network card, the network card corresponding to the maximum value of the stream forwarding capability information at the current moment is selected as the target network card;

[0006] Control the target network card to forward the code stream data to the corresponding client device.

[0007] In an embodiment of the present invention, the method further includes:

[0008] Randomly generate the timeout duration for each network card;

[0009] When each network card does not receive heartbeat information within the corresponding timeout period, the network card with the smallest timeout period is selected as the candidate network card;

[0010] Increase the term number value of the candidate network card and control the candidate network card to vote for the candidate network card;

[0011] Each network card except the candidate network card is used as a follower network card, and the candidate network card is controlled to send a voting request message to each follower network card;

[0012] When each follower network card receives the voting request information and determines that the follower network card has not sent voting information within the current term number, each follower network card is controlled to send voting information to the candidate network card;

[0013] Increase the term number value of each follower network card;

[0014] After the candidate network card receives the voting information of each follower network card, the candidate network card is determined to be the leader network card.

[0015] In the embodiment of the present invention, after the candidate network card receives the voting information of each follower network card and determines that the candidate network card is the leader network card, the following steps are included:

[0016] Control the leading network card to send heartbeat information to each follower network card at a first preset period;

[0017] When the leader network card receives the heartbeat feedback information of the follower network card, it determines that the follower network card is operating normally.

[0018] In an embodiment of the present invention, the method further includes:

[0019] When the leading network card does not receive the heartbeat feedback information of the following network card, it is determined that the following network card operates abnormally.

[0020] In an embodiment of the present invention, the method further includes:

[0021] Sending a detection data packet to each network card every second preset period;

[0022] Control each network card to generate reassembled data packets based on the detected data packets;

[0023] Calculate the packet loss rate of each network card based on the detection data packets and reassembled data packets;

[0024] When the packet loss rate of the target network card is greater than a preset value, the network card with a packet loss rate less than or equal to the preset value is used to forward the code stream data to the corresponding client device.

[0025] In an embodiment of the present invention, the method further includes:

[0026] Generate a secret key based on the first received bitstream data and obtain a secret key generation rule;

[0027] Based on the key generation rule, generate a key for the code stream data other than the code stream data received for the first time;

[0028] Control the target network card to forward the stream data to the corresponding client, including:

[0029] Control the target network card to forward the code stream data and the corresponding key to the corresponding client device.

[0030] A second aspect of the present invention provides a network card management device, the device comprising:

[0031] A receiving module, used to receive the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device and the code stream data;

[0032] The target network card selection module is used to select the network card corresponding to the maximum value of the current code stream forwarding capability information as the target network card based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card;

[0033] The data forwarding module is used to control the target network card to forward the code stream data to the corresponding client device.

[0034] A third aspect of the present invention provides an electronic device, the electronic device comprising a processor and a memory, the memory storing computer executable instructions that can be executed by the processor, and the processor executing the computer executable instructions to implement any of the above network card management methods.

[0035] A fourth aspect of the present invention provides a network card management system, the system comprising the above electronic device and client device;

[0036] The client device is used to send a stream forwarding request and stream data.

[0037] A fifth aspect of the present invention provides a machine-readable storage medium, on which instructions are stored, and when the instructions are executed by a processor, the network card management method as described in any one of the above items is implemented.

[0038] Through the above technical solution, the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device and the code stream data are received; based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card, the network card corresponding to the maximum value of the code stream forwarding capability information at the current moment is selected as the target network card; the target network card is controlled to forward the code stream data to the corresponding client device. This process saves the time of code stream forwarding and the use resources of the network card by selecting the network card corresponding to the maximum value of the code stream forwarding capability information as the target network card and forwarding the code stream data to the corresponding client device, while improving the throughput of the network card.

[0039] Other features and advantages of the embodiments of the present invention will be described in detail in the subsequent detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] The accompanying drawings are used to provide a further understanding of the embodiments of the present invention and constitute a part of the specification. Together with the following specific implementations, they are used to explain the embodiments of the present invention, but do not constitute a limitation on the embodiments of the present invention. In the accompanying drawings:

[0041] Figure 1 It is a flowchart of a method for managing a network card provided by an embodiment of the present invention;

[0042] Figure 2 It is a structural schematic diagram of a network card management device provided by an embodiment of the present invention;

[0043] Figure 3 is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention;

[0044] Figure 4 It is a structural diagram of a network card management system provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0045] The specific implementation of the embodiment of the present invention is described in detail below in conjunction with the accompanying drawings. It should be understood that the specific implementation described here is only used to illustrate and explain the embodiment of the present invention, and is not used to limit the embodiment of the present invention.

[0046] At present, with the increasing maturity of computer networks, convenient and fast information communication and collaboration methods have become a hot spot in network technology research and development. As a new communication and exchange tool, video conferencing has broken through geographical restrictions, and in-vehicle video conferencing applied to vehicles has developed rapidly. In-vehicle video conferencing usually uses multi-channel network card management, and there is a binding driver for multi-channel network card management. When the network card forwards the code stream data, it informs the binding driver through polling, and the binding driver may randomly assign the code stream data to different network cards for processing. Although load balancing is achieved, there are two defects: first, polling takes extra time; second, each forwarding of code stream data will occupy all network cards, resulting in resource waste.

[0047] Based on this, the present invention provides a method for managing a network card. Figure 1 A flowchart of a method for managing a network card provided by an embodiment of the present invention is shown in FIG. Figure 1 As shown, the method includes:

[0048] Step S101: receiving real-time stream forwarding capability information of each network card, a stream forwarding request of a client device, and stream data.

[0049] In actual applications, the client device registers to the audio and video server by configuring an account, and encodes the audio and video data collected by the camera and microphone inside the vehicle and sends it to the audio and video server.

[0050] The network card management pool in the audio and video server receives the code stream data and code stream forwarding request from the client device, and also receives the real-time code stream forwarding capability information of each network card. The network card management pool controls the corresponding network card to forward the code stream data according to different real-time code stream forwarding capability information.

[0051] Step S102: Based on the received stream forwarding request and the real-time stream forwarding capability information of each network card, a network card corresponding to the maximum stream forwarding capability information at the current moment is selected as the target network card.

[0052] In actual applications, after receiving the stream forwarding request from the client device, the network card management pool preferentially selects the network card with the largest stream forwarding capability information at the current moment as the target network card based on the real-time stream forwarding capability information of each network card, that is, selects the network card with the smallest used stream forwarding capability information as the target network card.

[0053] Step S103: Control the target network card to forward the code stream data to the corresponding client device.

[0054] In actual applications, when an in-vehicle video conference is established, there will be multiple client devices. The network card management pool controls the target network card to forward the stream data of the current client device to other client devices. It will also send the video data of other client devices to the vehicle's central control display screen and send the audio data to the speaker to establish an in-vehicle video conference.

[0055] Through the above embodiment, the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device, and the code stream data are received; based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card, the network card corresponding to the maximum value of the code stream forwarding capability information at the current moment is selected as the target network card; the target network card is controlled to forward the code stream data to the corresponding client device. This process saves the time of code stream forwarding and the use resources of the network card by selecting the network card corresponding to the maximum value of the code stream forwarding capability information as the target network card and forwarding the code stream data to the corresponding client device, while improving the throughput of the network card.

[0056] In one embodiment, the method further comprises:

[0057] Randomly generate the timeout duration for each network card;

[0058] When each network card does not receive heartbeat information within the corresponding timeout period, the network card with the smallest timeout period is selected as the candidate network card;

[0059] Increase the term number value of the candidate network card and control the candidate network card to vote for the candidate network card;

[0060] Each network card except the candidate network card is used as a follower network card, and the candidate network card is controlled to send a voting request message to each follower network card;

[0061] When each follower network card receives the voting request information and determines that the follower network card has not sent voting information within the current term number, each follower network card is controlled to send voting information to the candidate network card;

[0062] Increase the term number value of each follower network card;

[0063] After the candidate network card receives the voting information of each follower network card, the candidate network card is determined to be the leader network card.

[0064] In actual applications, when a network card is accidentally damaged during a video conference, the video conference will be affected, and each network card needs to be tested to ensure the stability of the video conference. Specifically, the network card is set to different roles such as follower network card, candidate network card and leader network card.

[0065] In actual applications, the timeout period for each network card to receive heartbeat information is randomly generated. For example, the timeout period of network card A is randomly set to 150 milliseconds, the timeout period of network card B is randomly set to 200 milliseconds, the timeout period of network card C is randomly set to 250 milliseconds, and the timeout period of network card D is randomly set to 300 milliseconds. In the initial state, when each network card does not receive the heartbeat information sent by the leading network card within the corresponding timeout period, the network card with the shortest timeout period among multiple network cards is selected as the candidate network card. Taking the above example, network card A can be selected as the candidate network card.

[0066] In actual applications, the candidate network card needs to send a request for voting information to other network cards to notify other network cards to vote for the candidate network card. After the candidate network card obtains the votes of each network card, it is promoted to the leading network card. Specifically, the network cards other than the candidate network card are determined as follower network cards. The candidate network card will increase its term number value and vote for itself. At the same time, a request for voting information is sent to each follower network card, requesting each follower network card to vote for the candidate network card. Taking network card A as a candidate network card as an example, the initial term number value of network card A is 0. When network card A is determined to be a candidate network card, the term number value becomes 1, and a request for voting information is sent to follower network card B, follower network card C, and follower network card D.

[0067] In actual applications, after receiving the request voting information, each follower network card determines whether to send voting information to other network cards within the current term number. When it is determined that each follower network card has not sent voting information to other network cards, it sends voting information to the candidate network card and increases the term number value corresponding to each follower network card. Specifically, taking the above as an example, after follower network card B, follower network card C, and follower network card D receive the request voting information from candidate network card A and determine that they have not sent voting information to other network cards within the current term number, they send voting information to candidate network card A and change the corresponding term number value from the initial value 0 to 1.

[0068] In actual application, after the candidate network card receives the voting information of each follower network card, the candidate network card is determined to be the leader network card. Specifically, taking the above example, after the candidate network card A receives the voting information of follower network card B, follower network card C and follower network card D, the candidate network card A is promoted to the leader network card.

[0069] In actual applications, the main work of the follower NIC is to receive and process messages from the leader NIC. When the waiting time for the leader NIC heartbeat information times out, it will take the initiative to stand up and recommend itself as a candidate NIC. The main work of the candidate NIC is to send a request for voting information to other NICs, notifying other follower NICs to vote for itself. If it wins the majority of votes, it will be promoted to the leader NIC. The main work of the leader NIC is to send heartbeat information to ensure that the leader NIC is working properly, without the need to elect other NICs as the leader NIC.

[0070] Through the above embodiment, the process sets multiple network cards to different roles, and can automatically switch the roles of network cards after the network card is damaged, thereby avoiding the problem of poor viewing effect of in-vehicle video conferencing caused by damage to a certain network card, and ensuring the security and stability of in-vehicle video conferencing.

[0071] In one embodiment, after the candidate network card receives the voting information of each follower network card and determines that the candidate network card is the leader network card, the following steps are performed:

[0072] Control the leading network card to send heartbeat information to each follower network card at a first preset period;

[0073] When the leader network card receives the heartbeat feedback information of the follower network card, it determines that the follower network card is operating normally.

[0074] In actual applications, after determining the leading network card, the leading network card sends heartbeat information to other following network cards at a first preset period to determine that the leading network card works normally, and there is no need to elect other network cards as the leading network card. The first preset period can be set as needed.

[0075] In actual applications, after receiving the heartbeat information, the follower network card will send a heartbeat feedback message to the leader network card, indicating that the heartbeat information of the leader network card has been received. After receiving the heartbeat feedback message, the leader network card determines that the corresponding follower network card is running normally and can forward the code stream data.

[0076] Through the above embodiment, the leading network card sends heartbeat information to each follower network card at a first preset period, notifying the heartbeat information that the leading network card is operating normally, and there is no need to select other network cards as the leading network card. At the same time, the leading network card determines that the follower network card is operating normally based on the heartbeat feedback information received from the follower network card. This process can effectively detect the operating status of the leading network card and the follower network card, ensure that each network card forwards the code stream data normally, and thus ensure the security and stability of the in-vehicle video conference.

[0077] In one embodiment, the method further comprises:

[0078] When the leading network card does not receive the heartbeat feedback information of the following network card, it is determined that the following network card operates abnormally.

[0079] In actual applications, when the leading network card does not receive the heartbeat feedback information of the following network card, it is determined that the following network card is operating abnormally and the following network card is in a fault state. After receiving the stream forwarding request of the client device, the following network card in the faulty state is eliminated and the following network card operating normally is selected to forward the stream data.

[0080] Through the above embodiment, after the leading network card does not receive the heartbeat feedback information of the following network card, it determines that the following network card is operating abnormally and is in a faulty state. When forwarding stream data, the network card management pool will exclude the network card in the faulty state and select the network card that is operating normally for data forwarding, thereby ensuring the security and stability of the in-vehicle video conference.

[0081] In one embodiment, the method further comprises:

[0082] Sending a detection data packet to each network card every second preset period;

[0083] Control each network card to generate reassembled data packets based on the detected data packets;

[0084] Calculate the packet loss rate of each network card based on the detection data packets and reassembled data packets;

[0085] When the packet loss rate of the target network card is greater than a preset value, the network card with a packet loss rate less than or equal to the preset value is used to forward the code stream data to the corresponding client device.

[0086] In actual applications, when the network of a certain network card is not very stable or network congestion occurs, if the code stream is still transmitted to the network card, the network card will lose a large amount of code stream data from the client device due to network problems, resulting in image freezes and sound loss in the in-vehicle video conference. Based on this, the present application sends a detection data packet to each network card every second preset period. After receiving the detection data packet, each network card reassembles the detection data packet to obtain a reassembled data packet, and sends the reassembled data packet to the network card management pool. The network card management pool calculates the packet loss rate of each network card based on the detection data packet and the reassembled data packet. Within a certain period, when it is detected that the packet loss rate of the target network card is greater than the preset value, the network card with a packet loss rate less than or equal to the preset value is automatically switched to forward the code stream data to the corresponding client device. Among them, the preset value can be set to 10%, and this application does not limit it. When the network returns to normal, switch the network card to the target network card so that the target network card continues to forward the code stream data to the corresponding client device.

[0087] Through the above embodiment, a detection data packet is sent to each network card at a second preset period, and the packet loss rate of each network card is calculated according to the detection data packet and the reassembled data packet processed by each network card. When the packet loss rate of the target network card exceeds the preset value, a network card less than or equal to the preset value is selected to forward the code stream data, thereby ensuring the stability of the in-vehicle video conference and improving the viewing experience of the client device for the in-vehicle video conference.

[0088] In one embodiment, the method further comprises:

[0089] Generate a secret key based on the first received bitstream data and obtain a secret key generation rule;

[0090] Based on the key generation rule, generate a key for the code stream data other than the code stream data received for the first time;

[0091] Control the target network card to forward the stream data to the corresponding client, including:

[0092] Control the target network card to forward the code stream data and the corresponding key to the corresponding client device.

[0093] In actual applications, after receiving a stream forwarding request from a client device, a secret key is randomly generated based on the first received stream data and sent to other client devices, and a secret key generation rule is obtained based on the secret key. When other stream data is received, a corresponding secret key is generated based on the secret key generation rule and the corresponding stream data.

[0094] In actual applications, the target network card is controlled to forward the code stream data and the secret key corresponding to the code stream data to the corresponding client device. The client device decrypts the code stream data according to the secret key and the key generation process to obtain the audio and video data.

[0095] Through the above embodiment, a key generation rule is generated by using the code stream data received for the first time, a key corresponding to the code stream data is generated using the key generation rule, and the key is sent to the corresponding client device, thereby ensuring the security of the in-vehicle video conference.

[0096] Based on the above network card management method, the embodiment of the present invention further provides a network card management device 200. Figure 2 A schematic diagram of the structure of a network card management device provided in an embodiment of the present invention, wherein the network card management device 200 includes:

[0097] The receiving module 201 is used to receive the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device and the code stream data;

[0098] The target network card selection module 202 is used to select the network card corresponding to the maximum value of the stream forwarding capability information at the current moment as the target network card based on the received stream forwarding request and the real-time stream forwarding capability information of each network card;

[0099] The data forwarding module 203 is used to control the target network card to forward the code stream data to the corresponding client device.

[0100] Through the above embodiment, the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device, and the code stream data are received; based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card, the network card corresponding to the maximum value of the code stream forwarding capability information at the current moment is selected as the target network card; the target network card is controlled to forward the code stream data to the corresponding client device. This process saves the time of code stream forwarding and the use resources of the network card by selecting the network card corresponding to the maximum value of the code stream forwarding capability information as the target network card and forwarding the code stream data to the corresponding client device, while improving the throughput of the network card.

[0101] The embodiment of the present invention further provides an electronic device, see Figure 3 As shown, the electronic device includes a processor 130 and a memory 131. The memory 131 stores machine executable instructions that can be executed by the processor 130. The processor 130 executes the machine executable instructions to implement the above-mentioned network card management method.

[0102] Further, Figure 3 The electronic device shown further includes a bus 132 and a communication interface 133 , and the processor 130 , the communication interface 133 and the memory 131 are connected via the bus 132 .

[0103] The memory 131 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 133 (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used. The bus 132 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0104] The processor 130 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the processor 130. The above processor 130 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the embodiment of the present invention can be directly embodied as a hardware decoding processor for execution, or a combination of hardware and software modules in the decoding processor for execution. The software module may be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 131, and the processor 130 reads the information in the memory 131 and completes the steps of the method of the above embodiment in combination with its hardware.

[0105] Based on the above network card management method, the embodiment of the present invention further provides a network card management system 400. Figure 4 A schematic diagram of a network card management system provided by an embodiment of the present invention, the system 400 comprises: the electronic device 300 and a client device 401;

[0106] The client device 401 is used to send a code stream forwarding request and code stream data.

[0107] Through the above embodiment, the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device, and the code stream data are received; based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card, the network card corresponding to the maximum value of the code stream forwarding capability information at the current moment is selected as the target network card; the target network card is controlled to forward the code stream data to the corresponding client device. This process saves the time of code stream forwarding and the use resources of the network card by selecting the network card corresponding to the maximum value of the code stream forwarding capability information as the target network card and forwarding the code stream data to the corresponding client device, while improving the throughput of the network card.

[0108] An embodiment of the present invention also provides a machine-readable storage medium, which stores machine-executable instructions. When the machine-executable instructions are called and executed by a processor, the machine-executable instructions prompt the processor to implement the above-mentioned network card management method. The specific implementation can be found in the method embodiment, which will not be repeated here.

[0109] A network card management method, management device, electronic device and management system provided in an embodiment of the present invention include a computer-readable storage medium storing program code. The instructions included in the program code can be used to execute the method in the previous method embodiment. The specific implementation can be found in the method embodiment and will not be repeated here.

[0110] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the system and device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0111] In addition, in the description of the embodiments of the present invention, unless otherwise clearly specified and limited, the terms "installed", "connected", and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection or an indirect connection through an intermediate medium, and it can be the internal communication of two components. For those skilled in the art, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0112] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, electronic device, or network device, etc.) to perform all or part of the steps of the methods of each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0113] In the description of the present invention, it should be noted that the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., indicating the orientation or positional relationship, are based on the orientation or positional relationship shown in the drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as limiting the present invention. In addition, the terms "first", "second", and "third" are used for descriptive purposes only, and cannot be understood as indicating or implying relative importance.

[0114] Finally, it should be noted that the above embodiments are only specific implementations of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The protection scope of the present invention is not limited thereto. Although the present invention is described in detail with reference to the above embodiments, those skilled in the art should understand that any person skilled in the art can still modify the technical solutions recorded in the above embodiments within the technical scope disclosed by the present invention, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A method for managing a network card, characterized in that: include: Receive the real-time stream forwarding capability information of each network card, the stream forwarding request of the client device and the stream data; Based on the received stream forwarding request and the real-time stream forwarding capability information of each network card, a network card corresponding to the maximum value of the stream forwarding capability information at the current moment is selected as the target network card; Control the target network card to forward the code stream data to the corresponding client device.

2. The method according to claim 1, characterized in that The method further comprises: Randomly generate a timeout duration for each network card; When each of the network cards does not receive heartbeat information within the corresponding timeout period, the network card with the smallest timeout period among the network cards is selected as a candidate network card; Increasing the term number value of the candidate network card, and controlling the candidate network card to vote for the candidate network card; Using each network card except the candidate network card as a follower network card, and controlling the candidate network card to send a voting request message to each follower network card; When each of the following network cards receives the request voting information and determines that the following network card has not sent voting information within the current term number, controlling each of the following network cards to send voting information to the candidate network card; Increasing the term number value of each follower network card; After the candidate network card receives the voting information of each follower network card, the candidate network card is determined to be the leader network card.

3. The method according to claim 2, characterized in that After the candidate network card receives the voting information of each follower network card and determines that the candidate network card is the leader network card, the method includes: Controlling the leader network card to send the heartbeat information to each follower network card at a first preset period; When the leader network card receives the heartbeat feedback information of the follower network card, it is determined that the follower network card operates normally.

4. The method according to claim 3, characterized in that The method further comprises: When the leader network card does not receive the heartbeat feedback information of the follower network card, it is determined that the follower network card operates abnormally.

5. The method according to claim 1, characterized in that The method further comprises: Sending a detection data packet to each of the network cards every second preset period; Control each network card to generate a reassembled data packet based on the detection data packet; Calculating the packet loss rate of each network card according to the detection data packet and the reassembled data packet; When the packet loss rate of the target network card is greater than a preset value, the network card whose packet loss rate is less than or equal to the preset value is used to forward the code stream data to the corresponding client device.

6. The method according to claim 1, characterized in that The method further comprises: Generate a secret key based on the first received bitstream data and obtain a secret key generation rule; Based on the key generation rule, generate a key for the code stream data except the code stream data received for the first time; The controlling the target network card to forward the code stream data to the corresponding client includes: The target network card is controlled to forward the code stream data and the corresponding secret key to the corresponding client device.

7. A network card management device, characterized in that: include: A receiving module, used to receive the real-time code stream forwarding capability information of each network card, the code stream forwarding request of the client device and the code stream data; A target network card selection module is used to select a network card corresponding to the maximum value of the code stream forwarding capability information at the current moment as the target network card based on the received code stream forwarding request and the real-time code stream forwarding capability information of each network card; The data forwarding module is used to control the target network card to forward the code stream data to the corresponding client device.

8. An electronic device, characterized in that: The electronic device comprises a processor and a memory, wherein the memory stores computer executable instructions that can be executed by the processor, and the processor executes the computer executable instructions to implement the network card management method according to any one of claims 1 to 6.

9. A network card management system, characterized in that: The system comprises the electronic device and the client device as claimed in claim 8; The client device is used to send a code stream forwarding request and code stream data.

10. A machine-readable storage medium having instructions stored thereon, characterized in that: When the instructions are executed by the processor, the network card management method according to any one of claims 1 to 6 is implemented.