CN111711801B - Video data transmission method, device, server and computer readable storage medium - Google Patents

Video data transmission method, device, server and computer readable storage medium Download PDF

Info

Publication number
CN111711801B
CN111711801B CN202010621822.7A CN202010621822A CN111711801B CN 111711801 B CN111711801 B CN 111711801B CN 202010621822 A CN202010621822 A CN 202010621822A CN 111711801 B CN111711801 B CN 111711801B
Authority
CN
China
Prior art keywords
video data
sidecar
dpdk
server
network card
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
CN202010621822.7A
Other languages
Chinese (zh)
Other versions
CN111711801A (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.)
Chongqing Unisinsight Technology Co Ltd
Original Assignee
Chongqing Unisinsight 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 Chongqing Unisinsight Technology Co Ltd filed Critical Chongqing Unisinsight Technology Co Ltd
Priority to CN202010621822.7A priority Critical patent/CN111711801B/en
Publication of CN111711801A publication Critical patent/CN111711801A/en
Application granted granted Critical
Publication of CN111711801B publication Critical patent/CN111711801B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/181Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources

Abstract

The embodiment of the invention provides a video data transmission method, a video data transmission device, a server and a computer readable storage medium, and relates to the field of computer networks. The method comprises the steps that a micro service module of a server is provided with a Sidecar assembly, a corresponding DPDK virtual network card is deployed in the Sidecar assembly, when the micro service module receives and sends video data, the micro service module can receive the video data of a video acquisition end through the DPDK virtual network card in the Sidecar assembly, and the micro service module shares the video data to a service process of the server through the Sidecar assembly in a memory sharing mode. Therefore, the Sidecar component suitable for the video cloud is manufactured by using the technologies of DPDK, shared memory and the like, and compared with the Sidecar component in the traditional kernel socket mode, the Sidecar component can receive and transmit video data, the network throughput capacity of the server can be improved, and the CPU resource consumption caused by network IO can be reduced.

Description

Video data transmission method, device, server and computer readable storage medium
Technical Field
The invention relates to the field of computer networks, in particular to a video data transmission method, a video data transmission device, a video data transmission server and a computer-readable storage medium.
Background
The DPDK (Data Plane Development Kit) is developed by multiple companies such as 6WIND, Intel and the like, is mainly operated based on a linux system, is used for a function library and a drive set for fast Data packet processing, can greatly improve the Data processing performance and throughput and improve the working efficiency of a Data Plane application program. The Sidecar mode is a way to strip application functionality off of the application itself as a separate process, allowing for the non-intrusive addition of multiple functions to the application, avoiding the addition of extra configuration code to the application to meet third party component requirements, as if the Sidecar were added to a motorcycle; the most important significance is that the main program is focused on business logic, and basic public functions such as network conditions, service registration discovery and the like do not need to be concerned.
The performance overhead of the traditional linux network receiving and sending mode is relatively high, the linux network receiving and sending mode is relatively friendly to message type application programs, but the performance of the linux network receiving and sending mode is poor for applications with high network IO (input and output) requirements, the Processing process of receiving and sending network messages by a kernel is full of memory copy and kernel mode user mode switching, and when the network IO is high, high soft interrupt can be generated and CPU (Central Processing Unit) resources are consumed. Therefore, when transmission of massive video data is involved, a large amount of physical resources are consumed in video (picture) transmission due to a processing mode of linux for network IO, and not only is network throughput poor, but also CPU (central processing unit) resource loss is large.
Disclosure of Invention
In view of the above, the present invention provides a video data transmission method, a video data transmission device, a server, and a computer-readable storage medium, which improve the network throughput of the server and reduce the CPU resource loss.
In order to achieve the above purpose, the embodiment of the present invention adopts the following technical solutions:
in a first aspect, an embodiment of the present invention provides a video data transmission method, which is applied to a microservice module in a server, where the microservice module is provided with a sidecr component, and a corresponding DPDK virtual network card is deployed in the sidecr component, and the method includes:
after the Sidecar component is started, receiving video data of a video acquisition end through a DPDK virtual network card in the Sidecar component;
and sharing the video data to the service process of the server by the Sidecar component in a memory sharing mode.
In an alternative embodiment, the method further comprises:
and sending the video data to other micro service modules belonging to the same micro service system with the micro service module through a DPDK virtual network card in the Sidecar component.
In an alternative embodiment, the method further comprises:
and sending the video data to other equipment different from the server through a DPDK virtual network card in the Sidecar component.
In an optional embodiment, the Sidecar component shares the same memory area with the service process, and the step of sharing the video data to the service process of the server by the Sidecar component in a memory sharing manner includes:
and writing the video data into the memory area through the Sidecar component so that the business process can read the video data from the memory area.
In an optional embodiment, before the step of receiving the video data of the video capture end through the DPDK virtual network card in the Sidecar assembly, the method further includes:
receiving a flow receiving address acquisition request sent by a device access service module; the equipment access service module and the micro service module belong to the same micro service system;
and responding to the stream receiving address acquisition request, and sending a stream receiving address to the equipment access service module so that the equipment access service module can send the stream receiving address to the video acquisition end, and the video acquisition end can send acquired video data according to the stream receiving address.
In an alternative embodiment, the microservice module communicates with the Sidecar component in a shared memory manner.
In a second aspect, an embodiment of the present invention provides a video data transmission device, which is applied to a microservice module in a server, where the microservice module is provided with a sidecr component, and a corresponding DPDK virtual network card is deployed in the sidecr component, and the device includes:
the video receiving module is used for receiving video data of a video acquisition end through a DPDK virtual network card in the Sidecar component after the Sidecar component is started;
and the video sending module is used for sharing the video data to the service process of the server in a memory sharing mode through the Sidecar component.
In an optional embodiment, the video sending module is further configured to send the video data to other micro service modules belonging to the same micro service system as the micro service module through a DPDK virtual network card in the Sidecar component; and/or sending the video data to other equipment different from the server through a DPDK virtual network card in the Sidecar component.
In a third aspect, an embodiment of the present invention provides a server, including a processor and a memory, where the memory stores a computer program capable of being executed by the processor, and when the computer program is executed by the processor, the server implements the method according to any one of the foregoing embodiments.
In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored, and the computer program, when executed by a processor, implements the method according to any one of the foregoing embodiments.
In the video data transmission method, apparatus, server, and computer-readable storage medium provided in the embodiments of the present invention, since the microservice module in the server is provided with the Sidecar component, and the Sidecar component is deployed with the corresponding DPDK virtual network card, when the microservice module receives and sends video data, the microservice module can receive video data of the video acquisition end through the DPDK virtual network card in the Sidecar component, and share the video data to the service process of the server in a memory sharing manner through the Sidecar component. Therefore, through the technologies such as DPDK and shared memory, the Sidecar component suitable for the video cloud is manufactured to receive and send video data, and compared with the Sidecar component in the traditional kernel socket mode, the network throughput capacity of the server can be improved, the CPU resource consumption caused by network IO can be reduced, and the overall performance of the system is improved.
In order to make the aforementioned and other objects, features and advantages of the present invention comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present invention and therefore should not be considered as limiting the scope, and those skilled in the art can also obtain other related drawings based on the drawings without inventive efforts.
FIG. 1 is a block diagram of a server provided by an embodiment of the invention;
fig. 2 is a schematic flow chart illustrating a video data transmission method according to an embodiment of the present invention;
fig. 3 is a schematic flow chart of a video data transmission method provided by an embodiment of the invention;
FIG. 4 shows a schematic diagram of the transmission of video data between microservices;
fig. 5 is a schematic flow chart illustrating a video data transmission method according to an embodiment of the present invention;
FIG. 6 shows a schematic diagram of the transmission of video data between a microservice module and other devices;
fig. 7 is a schematic flow chart of a video data transmission method provided by an embodiment of the invention;
fig. 8 is a functional block diagram of a video data transmission apparatus according to an embodiment of the present invention;
fig. 9 is a block diagram showing another function of the video data transmission apparatus according to the embodiment of the present invention.
Icon: 100-a server; 110-a memory; 120-a processor; 130-a communication module; 800-video data transmission means; 810-a video receiving module; 820-a video transmission module; 910-a request receiving module; 920-request response module.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. The components of embodiments of the present invention generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations.
Thus, the following detailed description of the embodiments of the present invention, presented in the figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of selected embodiments of the invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present invention without making any creative effort, shall fall within the protection scope of the present invention.
It is noted that relational terms such as "first" and "second," and the like, may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.
Fig. 1 is a block diagram of a server 100 according to an embodiment of the present invention. The server 100 includes a memory 110, a processor 120, and a communication module 130. The memory 110, the processor 120, and the communication module 130 are electrically connected to each other directly or indirectly to enable data transmission or interaction. For example, the components may be electrically connected to each other via one or more communication buses or signal lines.
The memory 110 is used to store programs or data. The Memory 110 may be, but is not limited to, a Random Access Memory (RAM), a Read Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Read-Only Memory (EPROM), an electrically Erasable Read-Only Memory (EEPROM), and the like.
The processor 120 is used to read/write data or programs stored in the memory 110 and perform corresponding functions. For example, when the computer program stored in the memory 110 is executed by the processor 120, the video data transmission method disclosed in the following embodiments may be implemented.
The communication module 130 is used for establishing a communication connection between the server 100 and other communication terminals through a network, and for transceiving data through the network.
It should be understood that the configuration shown in fig. 1 is merely a schematic diagram of the configuration of the server 100, and that the server 100 may include more or fewer components than shown in fig. 1, or have a different configuration than shown in fig. 1. The components shown in fig. 1 may be implemented in hardware, software, or a combination thereof.
Embodiments of the present invention further provide a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by the processor 120, the computer program implements the video data transmission method disclosed in the following embodiments.
Fig. 2 is a schematic flow chart of a video data transmission method according to an embodiment of the present invention. It should be noted that the video data transmission method according to the embodiment of the present invention is not limited by fig. 2 and the following specific sequence, and it should be understood that, in other embodiments, the sequence of some steps in the video data transmission method according to the embodiment of the present invention may be interchanged according to actual needs, or some steps may be omitted or deleted. The specific flow shown in fig. 2 will be described in detail below.
Step S201, after the sidecr component is started, receives video data of the video capture end through the DPDK virtual network card in the sidecr component.
In this embodiment, the server 100 includes a micro service module, and the micro service module is provided with a Sidecar component, and a corresponding DPDK virtual network card is deployed in the Sidecar component. The specific implementation process is as follows: firstly, a docker (container), kubernets and a DPDK environment are built, a DPDK physical network card on the server 100 is virtualized into a plurality of DPDK virtual network cards through a virtualization technology, and then the DPDK virtual network cards are loaded in a Sidecar assembly. When the Sidecar component is started, the DPDK virtual network card is bound, and the Sidecar component has kernel transceiving capacity and DPDK transceiving capacity. In addition, when the Sidecar component is started, the conventional Sidecar service functions such as service registration discovery, load, fusing and the like can be completed.
The Sidecar mode is non-intrusive, so that modification does not need business process perception, business logic is not affected, the whole cloud video processing related service can be validated by modifying the mode, and the development iteration speed is obviously improved by the traditional process modification mode. Therefore, compared with a mode that the implementation of the DPDK technology under the conventional software architecture needs to modify services related to all video streams (picture streams), for example, related service software such as a media gateway server, a picture gateway server, and an analysis server needs to be modified, in this embodiment, by loading the DPDK virtual network card in the Sidecar component, the network IO capability is improved, and meanwhile, the development iteration speed can be effectively improved.
Tests show that on the premise of only DPDK stream receiving reconstruction, the processing capacity of a single service can be improved to 2.8G/s from the original limit of 1.93G/s, and when 1.93G/s data is processed in the same way, CPU consumption is reduced by 1 core, the processing capacity is improved, the hardware cost of a video cloud is reduced, and the product competitiveness can be effectively improved.
Step S202, the video data is shared to the service process of the server by the Sidecar component in a memory sharing manner.
The shared memory is one of the ways of inter-process communication, and has better performance because the memory can be directly operated. After the Sidecar component is started and operated, the Sidecar component and the service process can communicate through a shared memory, and transmission of video data is achieved. Specifically, the sdvi module and the service process share the same memory area, and the microserver module writes the video data into the memory area through the sdvi module, so that the service process can read the video data from the memory area.
In this embodiment, the Sidecar component of the micro service module monitors the port through the DPDK virtual network card, and after receiving the video data, the video data may be shared to the service process of the server 100 in a memory sharing manner, so as to complete service processing such as storage and analysis of the video data through the service process. Taking the micro service module as the streaming media service as an example, the Sidecar component of the streaming media service receives video data through the DPDK virtual network card, and sends the video data to the streaming media service process in a memory sharing manner, and the service process performs service processing such as decapsulation and video parsing.
With video monitoring as a scene, thousands of cameras (namely the video acquisition end) are deployed in a certain urban area and used for road monitoring, criminal investigation and case solving and the like. Supposing that a suspect is wanted in the whole city, face recognition needs to be performed on video data acquired by ten thousand high-definition cameras at the cloud end, a 4MB high-definition code stream consumes 40GB bandwidth, the 40GB bandwidth generates very many interrupt processing at an inner core, and meanwhile, considerable performance is consumed by multiple data copying brought by an inner core processing mode. In this embodiment, the system changes the Sidecar component in the conventional socket mode into the Sidecar component in the DPDK + shared memory mode, which greatly improves the performance, and actually measures the data stream with the bandwidth of 4GB, thereby saving approximately 5 cores of CPU resources.
As can be seen, in the video data transmission method provided in the embodiment of the present invention, since the microservice module in the server 100 is provided with the sider component, and the sider component is disposed with the corresponding DPDK virtual network card, when the microservice module receives and sends the video data, the microservice module may receive the video data of the video acquisition end through the DPDK virtual network card in the sider component, and share the video data to the service process of the server 100 in a memory sharing manner through the sider component. Therefore, through the technologies of DPDK, shared memory and the like, the Sidecar component suitable for the video cloud is manufactured to receive and send video data, and compared with the Sidecar component in the traditional kernel socket mode, the network throughput capacity of the server 100 can be improved, the CPU resource consumption caused by network IO can be reduced, and the overall performance of the system is improved.
Optionally, in this embodiment, the micro service module and the Sidecar component communicate in a memory sharing manner. For example, when the micro service module is used as a sender service and needs to send a video, video data may be continuously shared to the Sidecar component in a memory sharing manner, and the Sidecar component sends the video data to a receiver service through the DPDK virtual network card.
Optionally, referring to fig. 3, the video data transmission method may further include:
and S301, sending the video data to other micro-service modules belonging to the same micro-service system as the micro-service module through a DPDK virtual network card in the Sidecar component.
Taking fig. 4 as an example, assuming that the microservice module in this embodiment is microservice a, when the microservice a needs to send video data to microservice B (other microservice modules) belonging to the same microservice system, the video data may be shared to the Sidecar component of the microservice a in a memory sharing manner, and the Sidecar component of the microservice a sends the video data to the microservice B through the DPDK virtual network card; the microservice B serves as a receiver of the video data, can receive the video data through a DPDK virtual network card of the Sidecar component, and can also send the received video data to other service processes on the service end in a memory sharing manner according to service requirements.
In this embodiment, the micro service module sends the video data to other micro service modules, so that the other micro service modules can perform corresponding processing on the video data. For example, for traffic video data, the micro service module may send the traffic video data to other micro service modules for identification processing, and determine whether a violation vehicle exists and identify the license plate number of the violation vehicle.
Optionally, referring to fig. 5, the video data transmission method may further include:
step S501, sending the video data to a device different from the server through the DPDK virtual network card in the Sidecar component.
In this embodiment, the microserver module may send the video data to another device for STORAGE or screen display through the DPDK virtual network card in the Sidecar component, where the other device may be a STORAGE device (STORAGE), a PC (Personal Computer), or the like as shown in fig. 6.
Optionally, referring to fig. 7, before step S201, the video data transmission method may further include:
step S701, receiving a flow receiving address acquisition request sent by a device access service module; the equipment access service module and the micro service module belong to the same micro service system.
Step S702, responding to the request for obtaining the stream receiving address, sending the stream receiving address to the equipment access service module, so that the equipment access service module sends the stream receiving address to the video acquisition end, and the video acquisition end sends the acquired video data according to the stream receiving address.
In this embodiment, the micro service system may further include a registry service module and a configuration center service module, and for all micro services in the micro service system, after being started, the registry service module completes routine operations such as registration and configuration information reading by the configuration center service module. When the equipment access service module acquires the stream receiving address from the micro service module, the equipment access service module inquires the address of the micro service module from the registration center service module and sends the stream receiving address acquisition request to the micro service module, and the micro service module responds to the stream receiving address acquisition request. And after the equipment access service module acquires the stream receiving address, the equipment access service module informs the video acquisition end of sending the acquired video data to the stream receiving address. Therefore, the micro-service module can receive the video data of the video acquisition end through the DPDK virtual network card in the Sidecar component.
It should be noted that, in this embodiment, the microserver module receives and transmits data in a DPDK + shared memory manner for the video request; for non-video messages, the original kernel network card mode can still be adopted to receive and transmit data due to relatively low network IO.
To execute the corresponding steps in the above embodiments and various possible manners, an implementation manner of a video data transmission apparatus is provided below, please refer to fig. 8, which is a functional block diagram of a video data transmission apparatus 800 according to an embodiment of the present invention. It should be noted that the basic principle and the resulting technical effects of the video data transmission apparatus 800 provided in the present embodiment are the same as those of the above embodiments, and for the sake of brief description, reference may be made to corresponding contents in the above embodiments for parts of the present embodiment that are not mentioned. The video data transmission apparatus 800 includes: a video receiving module 810 and a video transmitting module 820.
Alternatively, the above modules may be stored in the memory 110 shown in fig. 1 in the form of software or Firmware (Firmware) or may be fixed in an Operating System (OS) of the server 100, and may be executed by the processor 120 in fig. 1. Meanwhile, data, codes of programs, and the like required to execute the above-described modules may be stored in the memory 110.
The video receiving module 810 is configured to receive video data of a video capture end through a DPDK virtual network card in the Sidecar component after the Sidecar component is started.
It is understood that the video receiving module 810 can perform the step S201.
The video sending module 820 is used for sharing video data to the business process of the server 100 by the Sidecar component in a memory sharing manner.
In this embodiment, the video sending module 820 is specifically configured to write video data into the memory area through the Sidecar component, so that the business process can read the video data from the memory area.
Optionally, the video sending module 820 may also be configured to send video data to other micro service modules belonging to the same micro service system as the micro service module through a DPDK virtual network card in the Sidecar component; and/or, the video data is transmitted to other devices different from the server 100 through the DPDK virtual network card in the Sidecar component.
It is understood that the video transmission module 820 may perform the above steps S202, S501, S301.
Optionally, referring to fig. 9, the video data transmission apparatus 800 may further include a request receiving module 910 and a request responding module 920.
The request receiving module 910 is configured to receive a request for acquiring a stream receiving address sent by a device access service module; the equipment access service module and the micro service module belong to the same micro service system.
It is understood that the request receiving module 910 may perform the step S701.
The request response module 920 is configured to respond to the request for obtaining the stream receiving address, and send the stream receiving address to the device access service module, so that the device access service module sends the stream receiving address to the video capture end, and the video capture end sends the captured video data according to the stream receiving address.
It is understood that the request response module 920 may perform the step S702.
In summary, in the video data transmission method, the apparatus, the server, and the computer-readable storage medium provided in the embodiments of the present invention, since the microserver module in the server is provided with the Sidecar component, and the Sidecar component is disposed with the corresponding DPDK virtual network card, when the microserver module receives and transmits video data, the microserver module can receive video data of the video acquisition end through the DPDK virtual network card in the Sidecar component, and share the video data to the service process of the server in a memory sharing manner through the Sidecar component. Therefore, by using technologies such as DPDK and shared memory, the Sidecar component suitable for the video cloud is manufactured to receive and send video data, and compared with the Sidecar component in the traditional kernel socket mode, the network throughput capacity of the server can be improved, the CPU resource consumption caused by network IO can be reduced, and the overall performance of the system is improved. The Sidecar mode is non-intrusive, so that modification does not need business process perception, business logic is not affected, the whole cloud video processing related service can be validated by modifying the mode, and the development iteration speed is obviously improved by the traditional process modification mode.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other ways. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
In addition, the functional modules in the embodiments of the present invention may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.
The functions, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention or a part thereof which substantially contributes to the prior art may be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. The video data transmission method is characterized in that the video data transmission method is applied to a micro service module in a server, the micro service module is provided with a Sidecar component, a corresponding DPDK virtual network card is deployed in the Sidecar component, the DPDK virtual network card is obtained by virtualizing a DPDK physical network card on the server through virtualization technology and is loaded into the Sidecar component, and the Sidecar component has a kernel transceiving capacity and a DPDK transceiving capacity after the DPDK virtual network card is deployed; the method comprises the following steps:
after the Sidecar component is started, receiving video data of a video acquisition end through a DPDK virtual network card in the Sidecar component;
and sharing the video data to a service process of the server by the Sidecar component in a memory sharing mode, so that the service process de-encapsulates and analyzes the video data.
2. The method of claim 1, further comprising:
and sending the video data to other micro-service modules belonging to the same micro-service system with the micro-service module through a DPDK virtual network card in the Sidecar component.
3. The method of claim 1, further comprising:
and sending the video data to other equipment different from the server through a DPDK virtual network card in the Sidecar component.
4. The method of claim 1, wherein the Sidecar component shares the same memory area with the business process, and the step of sharing the video data to the business process of the server through the Sidecar component in a memory sharing manner comprises:
and writing the video data into the memory area through the Sidecar component so that the business process can read the video data from the memory area.
5. The method of claim 1, wherein before the step of receiving the video data of the video acquisition end through the DPDK virtual network card in the Sidecar component, the method further comprises:
receiving a flow receiving address acquisition request sent by a device access service module; the equipment access service module and the micro service module belong to the same micro service system;
and responding to the stream receiving address acquisition request, and sending a stream receiving address to the equipment access service module so that the equipment access service module can send the stream receiving address to the video acquisition end, and the video acquisition end can send acquired video data according to the stream receiving address.
6. The method of any of claims 1-5, wherein the microservice module communicates with the Sidecar component in a shared memory manner.
7. A video data transmission device is characterized in that the video data transmission device is applied to a micro service module in a server, the micro service module is provided with a Sidecar assembly, a corresponding DPDK virtual network card is deployed in the Sidecar assembly, the DPDK virtual network card is obtained by virtualizing a DPDK physical network card on the server through virtualization technology and is loaded into the Sidecar assembly, and the Sidecar assembly has kernel transceiving capacity and DPDK transceiving capacity after the DPDK virtual network card is deployed; the device comprises:
the video receiving module is used for receiving video data of a video acquisition end through a DPDK virtual network card in the Sidecar component after the Sidecar component is started;
and the video sending module is used for sharing the video data to a service process of the server through the Sidecar component in a memory sharing mode so as to enable the service process to decapsulate and analyze the video data.
8. The apparatus of claim 7, wherein the video sending module is further configured to send the video data to other micro service modules belonging to the same micro service system as the micro service module through a DPDK virtual network card in the Sidecar component; and/or sending the video data to other equipment different from the server through a DPDK virtual network card in the Sidecar component.
9. A server, characterized in that it comprises a processor and a memory, said memory storing a computer program executable by said processor, said computer program, when executed by said processor, implementing the method according to any one of claims 1-6.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-6.
CN202010621822.7A 2020-06-30 2020-06-30 Video data transmission method, device, server and computer readable storage medium Active CN111711801B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010621822.7A CN111711801B (en) 2020-06-30 2020-06-30 Video data transmission method, device, server and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010621822.7A CN111711801B (en) 2020-06-30 2020-06-30 Video data transmission method, device, server and computer readable storage medium

Publications (2)

Publication Number Publication Date
CN111711801A CN111711801A (en) 2020-09-25
CN111711801B true CN111711801B (en) 2022-08-26

Family

ID=72545362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010621822.7A Active CN111711801B (en) 2020-06-30 2020-06-30 Video data transmission method, device, server and computer readable storage medium

Country Status (1)

Country Link
CN (1) CN111711801B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112383801B (en) * 2020-11-10 2023-04-07 重庆紫光华山智安科技有限公司 Media stream distribution method, device, distribution server and storage medium
CN112764705B (en) * 2021-01-26 2022-12-02 重庆紫光华山智安科技有限公司 User interface sharing method and electronic equipment
CN112925581A (en) * 2021-02-22 2021-06-08 百果园技术(新加坡)有限公司 Method and device for starting DPDK container and electronic equipment
CN113542437B (en) * 2021-09-16 2022-02-25 阿里云计算有限公司 Network system, network proxy method and device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8156528B2 (en) * 2001-03-22 2012-04-10 United Video Properties, Inc. Personal video recorder systems and methods
WO2019161557A1 (en) * 2018-02-24 2019-08-29 华为技术有限公司 Communication method and apparatus
US11659003B2 (en) * 2018-08-30 2023-05-23 International Business Machines Corporation Safe shell container facilitating inspection of a virtual container
US11134059B2 (en) * 2018-12-04 2021-09-28 Cisco Technology, Inc. Micro-firewalls in a microservice mesh environment
CN110086571A (en) * 2019-04-10 2019-08-02 广州华多网络科技有限公司 A kind of data transmission and received method, apparatus and data processing system
US11139991B2 (en) * 2019-09-28 2021-10-05 Intel Corporation Decentralized edge computing transactions with fine-grained time coordination

Also Published As

Publication number Publication date
CN111711801A (en) 2020-09-25

Similar Documents

Publication Publication Date Title
CN111711801B (en) Video data transmission method, device, server and computer readable storage medium
JP6571161B2 (en) Method, apparatus, and system for exploring application topology relationships
WO2018120986A1 (en) Method for forwarding packet and physical host
US20210409351A1 (en) Shared resources for multiple communication traffics
US9331915B1 (en) Dynamic network traffic mirroring
CN106095622A (en) Data back up method and device
CN111431757A (en) Virtual network flow acquisition method and device
CN112261094A (en) Message processing method and proxy server
US20230152978A1 (en) Data Access Method and Related Device
CN111913782A (en) Method and equipment for realizing virtual machine flow mirror image based on tunnel technology
WO2023103419A1 (en) Message queue-based method and apparatus for sending 5g messages in batches, and electronic device
CN115080479B (en) Transmission method, server, device, bare metal instance and baseboard management controller
CN113498595B (en) PCIe-based data transmission method and device
CN112035074A (en) Printing implementation method, device and system and storage medium
CN115298656A (en) System and method for scheduling sharable PCIE endpoint devices
CN115396528A (en) Quic data transmission method and device based on protocol family
US10402252B1 (en) Alternative event reporting for peripheral devices
US20050108768A1 (en) Systems and methods for providing dynamic loading of applications over a network
CN112422485B (en) Communication method and device of transmission control protocol
CN114615355B (en) Message processing method and message analysis module
CN116774933A (en) Virtualization processing method of storage device, bridging device, system and medium
US9304957B2 (en) Image processing method, image processing apparatus, and control program
CN111556043B (en) Message processing method, device, system, equipment and readable storage medium
CN112559469A (en) Data synchronization method and device
CN116915667B (en) Network traffic acquisition method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant