Data processing method and device, electronic equipment and storage medium

By embedding the video network protocol stack into the operating system core, the cumbersome data transmission process of VOS streamed notebooks in the video network VOS streaming notebook is solved, which reduces the CPU usage frequency and hardware cost, improves data transmission efficiency, and improves device performance.

CN119201490APending Publication Date: 2024-12-27VISIONVERA INFORMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411138972.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-19
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

The data transmission process of VOS streamed notebooks in the Internet of Things is complicated, resulting in high CPU usage frequency, high hardware performance requirements, increased costs and low data transmission efficiency.

Method used

Embed the visual network protocol stack into the operating system kernel, determine the subnet port MAC when receiving data packets through the network port, unpack and cache them in the protocol stack, and the user layer APP directly reads data from the cache area, reducing the data in multiple layers Transmission between.

Benefits of technology

It reduces the frequency of CPU usage, reduces hardware costs, improves data transmission efficiency, and reduces non-native data processing through subnet MAC filtering, improving equipment performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201490A_ABST
    Figure CN119201490A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a data processing method and device, electronic equipment and a storage medium. The method comprises the following steps: when an external data packet is received through a network port, determining whether a sub-network port MAC (Media Access Control) corresponding to the data packet belongs to an articulated naturality web MAC; and when the sub-network port MAC corresponding to the data packet belongs to the articulated naturality web MAC, deblocking the data packet through an articulated naturality web protocol stack embedded into an operating system kernel, and caching the deblocked data in an articulated naturality web protocol stack cache region to wait for a user layer APP to read the data from the articulated naturality web protocol stack cache region. According to the embodiment of the invention, the data transmission process can be reduced, the use frequency of a CPU (Central Processing Unit) is reduced, and the data transmission efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a data processing method, device, electronic device and storage medium. Background Art

[0002] The Visual Network VOS streaming notebook is a secure and controllable self-developed product based on the Visual Network technology and equipped with the self-developed VOS operating system. It can provide video conferencing, remote desktop, video on demand, browser and other functions.

[0003] At present, the actual network port data reception and transmission and application layer data of the Visual Network VOS streaming notebook need to be converted by the Visual Network Agent. This conversion technology is to establish a virtual network card through the Visual Network Agent, and the virtual network card and the application program communicate data. The overall data process is relatively cumbersome and the data processing time is relatively long. The data is read from the kernel of the network port protocol stack to the application layer, and then put from the application layer to the kernel layer of the network port protocol stack, and finally read from the kernel layer to the application layer, so that users can get the data they really want to use. The frequent stacking and popping of large amounts of data leads to a high frequency of CPU (Central Processing Unit). Such frequent operations have relatively high requirements on the hardware performance of streaming notebooks, and the cost is also increased. At the same time, the data transmission process is relatively long and the data transmission efficiency is low. Summary of the invention

[0004] In view of the above problems, embodiments of the present application are proposed to provide a data processing method, device, electronic device and storage medium that overcome the above problems or at least partially solve the above problems.

[0005] In a first aspect, an embodiment of the present application provides a data processing method, which is applied to a visual networking device, and the method includes:

[0006] When an external data packet is received through the network port, determining whether the subnet port MAC corresponding to the data packet belongs to the visual network MAC;

[0007] When the subnet port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unpacked by the visual network protocol stack embedded in the operating system kernel, and the unpacked data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area.

[0008] Optionally, determining whether the subnet port MAC corresponding to the data packet belongs to a visual network MAC includes:

[0009] Extract the subnet port MAC in the data packet header of the data packet;

[0010] Determine whether the subnet port MAC is a pre-registered visual network MAC.

[0011] Optionally, the method further comprises:

[0012] Sending data reading instruction information to the user layer APP;

[0013] According to the data reading indication information, the user layer APP reads data from the visual networking protocol stack buffer area.

[0014] In a second aspect, an embodiment of the present application provides a data processing method, which is applied to a visual networking device, and the method includes:

[0015] When the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it determines the subnet port MAC information corresponding to the data to be sent, and performs visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent;

[0016] The data packet to be sent is sent to the corresponding device through the network port.

[0017] Optionally, when the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it determines the subnet port MAC information corresponding to the data to be sent, and performs visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent, including:

[0018] Encapsulate the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack to obtain protocol header information;

[0019] According to the maximum data transmission unit of the sub-network port which is preset, the protocol header information and the data to be sent are encapsulated by the visual network protocol to generate the data packet to be sent.

[0020] Optionally, the method further comprises:

[0021] Obtaining the destination address or channel type corresponding to the data packet to be sent;

[0022] Establish a network channel according to the destination address or channel type;

[0023] The to-be-sent data packet is sent to the device based on the network channel.

[0024] In a third aspect, an embodiment of the present application provides a data processing device, which is applied to a visual networking device, and the device includes:

[0025] A subnet port MAC determination module is used to determine whether the subnet port MAC corresponding to the data packet belongs to the visual network MAC when receiving an external data packet through the network port;

[0026] The data packet unpacking and caching module is used to unpack the data packet through the visual networking protocol stack embedded in the operating system kernel when the subnet port MAC corresponding to the data packet belongs to the visual networking MAC, and cache the unpacked data in the visual networking protocol stack cache area to wait for the user layer APP to read the data from the visual networking protocol stack cache area.

[0027] Optionally, the subnet port MAC determination module includes:

[0028] A subnet port MAC extraction unit, used to extract the subnet port MAC in the data packet header of the data packet;

[0029] The sub-network port MAC determination unit is used to determine whether the sub-network port MAC is a pre-registered visual network MAC.

[0030] Optionally, the device further comprises:

[0031] A read instruction sending module, used to send data read instruction information to the user layer APP;

[0032] A data reading module is used for the user layer APP to read data from the visual networking protocol stack buffer area according to the data reading indication information.

[0033] In a fourth aspect, an embodiment of the present application provides a data processing device, which is applied to a visual networking device, and the device includes:

[0034] A data packet acquisition module is used to determine the subnet port MAC information corresponding to the data to be sent when the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, and perform visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent;

[0035] The data packet sending module is used to send the data packet to be sent to the corresponding device through the network port.

[0036] Optionally, the data packet acquisition module includes:

[0037] A protocol header acquisition unit, used to encapsulate the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack to obtain protocol header information;

[0038] The data packet generation unit is used to perform visual network protocol encapsulation on the protocol header information and the data to be sent according to the maximum data transmission unit of the pre-set sub-network port, so as to generate the data packet to be sent.

[0039] Optionally, the device further comprises:

[0040] A destination address acquisition module, used to acquire the destination address or channel type corresponding to the data packet to be sent;

[0041] A network channel building module, used to build a network channel according to the destination address or channel type;

[0042] The module for sending the data packet to be sent is used to send the data packet to be sent to the device based on the network channel.

[0043] In a fifth aspect, an embodiment of the present application provides an electronic device, including:

[0044] one or more processors; and

[0045] One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, enable the device to perform any of the data processing methods described above.

[0046] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program that enables a processor to execute any of the data processing methods described above.

[0047] The embodiments of the present application include the following advantages:

[0048] The solution provided by the embodiment of the present application determines whether the sub-network port MAC corresponding to the data packet belongs to the visual network MAC when an external data packet is received through the network port. When the sub-network port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unpacked by the visual network protocol stack embedded in the operating system kernel, and the unpacked data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area. The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual network protocol stack receives the data and stores it in the protocol stack cache area. The user layer APP can read the data directly from the protocol stack cache area without the need for data to be transmitted between multiple layers, which can reduce the data transmission process and improve the data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for the device hardware performance are also low, and the hardware cost is reduced. Moreover, by filtering the sub-network port MAC, the visual network protocol stack can reduce the processing of non-local data, thereby improving the performance of the device. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] Figure 1A schematic diagram of an existing video data transmission process provided in an embodiment of the present application;

[0050] Figure 2 A flowchart of a data processing method provided in an embodiment of the present application;

[0051] Figure 3 A flowchart of a method for determining a subnet port MAC address provided in an embodiment of the present application;

[0052] Figure 4 A flowchart of a data reading method provided in an embodiment of the present application;

[0053] Figure 5 A flowchart of another data processing method provided in an embodiment of the present application;

[0054] Figure 6 A flowchart of a method for generating a data packet to be sent provided in an embodiment of the present application;

[0055] Figure 7 A flowchart of a method for sending a data packet to be sent provided in an embodiment of the present application;

[0056] Figure 8 A schematic diagram of a data transmission framework provided in an embodiment of the present application;

[0057] Fig. 9 A schematic diagram of an improved architecture of a visual network streaming notebook provided in an embodiment of the present application;

[0058] Fig.10 A schematic diagram of the structure of a data processing device provided in an embodiment of the present application;

[0059] Fig.11 A schematic diagram of the structure of another data processing device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0060] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0061] At present, the data transmission and reception process of the VOS streaming notebook internal network port can be as follows: Figure 1As shown, the visual network agent (V2V-AGENT) is required to perform conversion in this process. This conversion technology is to establish a virtual network card through the visual network agent, and the virtual network card and the application program communicate data. The data processing flow is as follows: 1. When the data packet arrives at the network interface, it is first received and processed by the network protocol stack of the operating system (such as the TCP / IP protocol stack) at the kernel layer. 2. The data packet is passed from the visual network agent to the application layer through the virtual network port, and the application layer can read and process the data. 3. The data is transmitted back to the kernel layer, and the data will be returned from the application layer to the network protocol stack of the kernel layer so that it can be sent through the network. Data packets need to be frequently stacked and popped during the processing process, resulting in a high CPU usage frequency of the visual network VOS streaming notebook, and at the same time, the hardware performance requirements of the visual network VOS streaming notebook are relatively high.

[0062] In order to solve the above problems, this application proposes to embed the visual networking protocol stack into the operating system kernel, and place the visual networking data in the visual networking port protocol stack. The user layer can directly obtain data from the visual networking port protocol stack to solve the problems of long data transmission process, frequent data operations, and high CPU usage.

[0063] Next, the technical solution of the embodiment of the present application is described in detail in conjunction with specific embodiments.

[0064] Reference Figure 2 , shows a flow chart of the steps of a data processing method provided by an embodiment of the present application, and the data processing method can be applied to visual networking devices. Figure 2 As shown, the data processing method may include: step 201 and step 202.

[0065] Step 201: When an external data packet is received through a network port, determine whether the sub-network port MAC corresponding to the data packet belongs to the visual network MAC.

[0066] The embodiments of the present application can be applied to the scenario where the visual Internet protocol stack is embedded into the operating system kernel to receive data and reduce the data transmission process.

[0067] The embodiment of the present application can be applied to a visual networking device, that is, the execution subject is a visual networking device. In this example, the visual networking device can be, but is not limited to, a visual networking VOS notebook.

[0068] The operating system kernel is a system software that provides hardware abstraction layer, disk and file system control, multitasking and other functions. It is the most basic part of the operating system and provides secure access to computer hardware for many applications. The kernel is responsible for managing system processes, memory, device drivers, files and network systems, etc., and determines the performance and stability of the system. It provides a method of hardware abstraction, hides the complexity of hardware operations, and provides a set of concise and unified interfaces for application software and hardware. In this example, the operating system kernel can be, but is not limited to, the operating system kernel of the Visual Network VOS notebook.

[0069] The visual networking protocol stack refers to a set of protocols designed to achieve real-time, efficient and secure transmission of video data in the visual networking environment. These protocols are organized according to a specific hierarchical structure and together form the basis of visual networking communication.

[0070] In this embodiment, the visual networking protocol stack can be pre-embedded into the operating system kernel of the visual networking device. When performing data communication, the visual networking protocol stack embedded in the operating system kernel can be called to receive data packets sent externally. In a specific implementation, the visual networking device can receive data packets sent by external devices through a network port (i.e., a visual networking port). At this time, it can be determined whether the sub-network port MAC corresponding to the data packet belongs to the visual networking MAC. Among them, the visual networking port is a physical network port, and an external device can send a data packet to the visual networking device through the visual networking port. When the visual networking port receives an external data packet, the sub-network port MAC in the data packet header is extracted to determine whether the sub-network port MAC corresponding to the data packet belongs to the visual networking MAC. This implementation process can be combined with Figure 3 This is described in detail as follows.

[0071] Reference Figure 3 , shows a flowchart of the steps of a method for determining a subnet port MAC provided by an embodiment of the present application. Figure 3 As shown, the subnet port MAC determination method may include: step 301 and step 302.

[0072] Step 301: extract the subnet port MAC in the data packet header of the data packet.

[0073] In this embodiment, the external device can be pre-registered in the visual network and apply for entry into the visual network to obtain a legal visual network number. At the same time, a subnet port can be assigned to the external device. The subnet port usually refers to a logical interface configured in the network configuration to realize a network card with multiple IP addresses. These subnet ports share the physical connection of the physical network card, but have independent IP addresses and configurations. The subnet port is bound to the MAC address of the external device. The subnet port MAC in this example is the MAC of the external device.

[0074] When an external device sends a data packet, the data packet header of the encapsulated data packet contains: the visual network number of the source end (i.e., the data sending end), the MAC address of the source end, the visual network number of the destination end (i.e., the receiving end) and the MAC address of the destination end and other information.

[0075] It can be understood that in the visual network, the visual network number is a unique identification code used to identify and connect each terminal within the visual network system. The visual network system assigns a unique combination of numbers or letters to each terminal for identification and communication between devices within the visual network. In a specific implementation, the visual network number is bound to the terminal MAC address of the networked terminal.

[0076] When the visual networking device receives an external data packet through the network port, the subnet port MAC in the data packet header can be extracted.

[0077] After extracting the subnet port MAC in the data packet header of the data packet, step 302 is executed.

[0078] Step 302: Determine whether the subnet port MAC is a pre-registered visual network MAC.

[0079] After extracting the subnet port MAC in the data packet header of the data packet, it is possible to first determine whether the subnet port MAC is a pre-registered visual network MAC. That is, the external device pre-applies to join the visual network, and the visual network device can record the subnet port MAC as the visual network MAC. When determining whether the subnet port MAC is the visual network MAC, it is possible to find out whether the subnet port MAC exists from the pre-recorded visual network MAC.

[0080] If the MAC of the subnet port is not a pre-registered visual network MAC, then the external data packet can be filtered out and not processed, which can reduce the processing of local data of non-visual network devices, reduce the amount of data processing, and improve the data processing performance of visual network devices.

[0081] After determining that the subnet port MAC corresponding to the data packet belongs to the visual network MAC, execute step 202.

[0082] Step 202: When the subnet port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unpacked by the visual network protocol stack embedded in the operating system kernel, and the unpacked data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area.

[0083] The visual networking protocol stack buffer is a memory area in the operating system kernel that the visual networking protocol stack uses to store and temporarily save network data packets. When these data packets are passed between different layers of the protocol stack, they need to be temporarily stored for subsequent processing and forwarding. The visual networking protocol stack buffer ensures the smooth flow of network data packets in the visual networking protocol stack by providing the necessary memory space.

[0084] When it is determined that the subnet port MAC corresponding to the data packet belongs to the visual network MAC, the data packet can be unpacked through the visual network protocol stack embedded in the operating system kernel, and the unpacked data can be cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area. It can be understood that when the visual network protocol stack unpacks the data packet, the data packet header and data content of the data packet can be extracted, and the data packet header can contain parameters such as source information and destination information. Such as the visual network number of the source end (i.e., the data sending end), the MAC address of the source end, the visual network number of the destination end (i.e., the receiving end) and the MAC address of the destination end.

[0085] The embodiment of the present application embeds the visual networking protocol stack into the operating system kernel, and the visual networking protocol stack receives data and stores it in the visual networking protocol stack cache area. The user layer can directly read data from the visual networking protocol stack cache area without the need to transmit data between multiple layers, thereby reducing the data transmission process and improving data transmission efficiency.

[0086] In this embodiment, after the visual networking protocol stack caches the unpacked data in the visual networking protocol stack cache area, it can also send a data read instruction to the user layer APP to instruct the user layer APP to read the data from the visual networking protocol stack cache area. Figure 4 This is described in detail as follows.

[0087] Reference Figure 4 , shows a flow chart of the steps of a data reading method provided by an embodiment of the present application. Figure 4 As shown, the data reading method may include: step 401 and step 402.

[0088] Step 401: Send data reading indication information to the user layer APP.

[0089] In this embodiment, after the visual networking protocol stack caches the unpacked data in the visual networking protocol stack cache area, data reading indication information can be sent to the user layer APP. The data reading indication information can be used to prompt the user layer APP to read data from the visual networking protocol stack cache area.

[0090] After sending the data reading instruction information to the user layer APP, step 402 is executed.

[0091] Step 402: According to the data reading indication information, the user layer APP reads data from the visual networking protocol stack buffer area.

[0092] After sending data reading indication information to the user layer APP, the user layer APP can read data from the visual networking protocol stack buffer area according to the data reading indication information to perform data processing.

[0093] The embodiment of the present application sends a data reading instruction to the user layer APP after caching the unsealed data in the visual networking protocol stack cache area, so that the user layer APP can be prompted to read data from the visual networking protocol stack cache area in a timely manner, which can improve data processing efficiency, avoid the problem of data being stored in the cache area for too long, and reduce the system memory occupied by data storage.

[0094] The data processing method provided in the embodiment of the present application determines whether the sub-network port MAC corresponding to the data packet belongs to the visual network MAC when an external data packet is received through the network port. When the sub-network port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unsealed by the visual network protocol stack embedded in the operating system kernel, and the unsealed data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area. The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual network protocol stack receives the data and stores it in the protocol stack cache area. The user layer APP can read the data directly from the protocol stack cache area without the need for data to be transmitted between multiple layers, which can reduce the data transmission process and improve the data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for the device hardware performance are also low, and the hardware cost is reduced. Moreover, by filtering the sub-network port MAC, the visual network protocol stack can reduce the processing of non-local data, thereby improving the performance of the device.

[0095] Reference Figure 5 , shows a flowchart of another data processing method provided by an embodiment of the present application, which can be applied to visual networking devices. Figure 5 As shown, the data processing method may include: step 501 and step 502.

[0096] Step 501: When the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it determines the subnet port MAC information corresponding to the data to be sent, and encapsulates the data to be sent using the visual networking protocol based on the subnet port MAC information to obtain the data packet to be sent.

[0097] The embodiments of the present application can be applied to the scenario where the visual networking protocol stack is embedded into the operating system kernel for data transmission.

[0098] The embodiment of the present application can be applied to a visual networking device, that is, the execution subject is a visual networking device. In this example, the visual networking device can be, but is not limited to, a visual networking VOS streaming notebook.

[0099] After the user layer APP processes the unsealed data in the buffer area of ​​the visual networking protocol stack, it can obtain the data to be sent, and then the user layer APP can send the data to be sent to the visual networking protocol stack embedded in the operating system kernel.

[0100] When the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it can determine the subnet port MAC information corresponding to the data to be sent. Specifically, the data to be sent sent by the user layer APP is bound with the corresponding subnet port MAC information, and when the visual networking protocol stack receives the data to be sent, it can obtain the bound subnet port MAC information.

[0101] Then, the visual networking protocol stack can perform visual networking protocol encapsulation on the data to be sent according to the MAC information of the subnet port to obtain the data packet to be sent. In the visual networking environment, data encapsulation is a process of adding protocol headers layer by layer from the upper layer to the lower layer. This process ensures that the data can be correctly transmitted to the destination through the network. The encapsulation process of the data to be sent can be combined with Figure 6 This is described in detail as follows.

[0102] Reference Figure 6 , shows a flowchart of the steps of a method for generating a data packet to be sent provided by an embodiment of the present application. Figure 6 As shown, the method for generating a data packet to be sent may include: step 601 and step 602.

[0103] Step 601: Encapsulate the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack to obtain protocol header information.

[0104] In this embodiment, the subnet port MAC information may include the source subnet port MAC and the destination subnet port MAC. After the visual networking protocol stack determines the subnet port MAC information of the data to be sent, the source subnet port MAC and the destination subnet port MAC of the data to be sent may be encapsulated to obtain the protocol header information.

[0105] After encapsulating the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack and obtaining the protocol header information, execute step 602.

[0106] Step 602: Based on the maximum data transmission unit of the pre-set sub-network port, the protocol header information and the data to be sent are encapsulated by the visual Internet protocol to generate the data packet to be sent.

[0107] The Maximum Transmission Unit (MTU) is the size of the largest data packet that can be transmitted on an exponential network.

[0108] It is understandable that in actual applications, the MTU of the subnet port can be pre-configured by the business personnel. If it is not set, the MTU of the visual network is used by default. Among them, the MTU of the subnet port should be less than or equal to the MTU of the visual network.

[0109] After obtaining the protocol header information, the protocol header information and the data to be sent can be encapsulated by the visual network protocol according to the maximum data transmission unit of the pre-set subnet port to generate a data packet to be sent. For example, if the maximum data transmission unit is 20 megabytes and the size of the data to be sent is 30 megabytes, the data to be sent needs to be split into two parts for data encapsulation and transmission, wherein the size of the split data and the protocol header should be less than or equal to 20 megabytes, so as to transmit the encapsulated data packet.

[0110] It can be understood that the above examples are merely examples listed for a better understanding of the technical solutions of the embodiments of the present application, and are not intended to be the sole limitation to the embodiments.

[0111] The embodiment of the present application can avoid the problem of data congestion and inability to be normally sent to an external device due to a sent data packet being too large by encapsulating the data according to the maximum data transmission unit of the sub-network port.

[0112] After the data to be sent is encapsulated by the visual networking protocol based on the subnet port MAC information to obtain the data packet to be sent, step 502 is executed.

[0113] Step 502: Send the data packet to be sent to the corresponding device through the network port.

[0114] After the data to be sent is encapsulated by the visual networking protocol based on the MAC information of the sub-network port to obtain the data packet to be sent, the data packet to be sent can be sent to the corresponding device through the network port.

[0115] The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual network protocol stack receives data and stores it in the protocol stack buffer area. The user layer APP can directly read data from the protocol stack buffer area without the need for data transmission between multiple layers, which can reduce the data transmission process and improve data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for device hardware performance are also lower, and the hardware cost is reduced. Moreover, by encapsulating the sub-network port MAC, the data of the non-receiving sub-network port MAC can be filtered out to reduce the amount of data sent.

[0116] In this embodiment, when sending a data packet to be sent, a network channel can be established according to the destination address or channel type corresponding to the data packet to be sent to send the data packet. Figure 7 This is described in detail as follows.

[0117] Reference Figure 7 , shows a flowchart of a method for sending a data packet to be sent provided by an embodiment of the present application. Figure 7 As shown, the method for sending a data packet to be sent may include: step 701, step 702 and step 703.

[0118] Step 701: Obtain the destination address or channel type corresponding to the data packet to be sent.

[0119] In this embodiment, the destination address may be the address of the receiving end of the data packet to be sent. In this example, the destination address may be the IP address of the receiving end, or the MAC address of the receiving end. Specifically, the type of the destination address may be determined according to business requirements, and this embodiment does not limit this.

[0120] Channel type refers to the specific method or path over which data is transferred or communicated.

[0121] When a data packet to be sent is sent to an external device, a destination address or a channel type corresponding to the data packet to be sent may be obtained.

[0122] After the destination address or channel type corresponding to the data packet to be sent is obtained, step 702 is executed.

[0123] Step 702: Establish a network channel according to the destination address or channel type.

[0124] A network channel is a way of transmitting information. It completely connects the physical layer and network layer of a computer network, allowing smooth and efficient data transmission between nodes.

[0125] After obtaining the destination address or channel type corresponding to the data packet to be sent, a network channel can be established according to the destination address or channel type.

[0126] After the network channel is established according to the destination address or the channel type, step 703 is executed.

[0127] Step 703: Send the data packet to be sent to the device based on the network channel.

[0128] After a network channel is established according to the destination address or channel type, the data packets to be sent can be sent to external devices based on the network channel.

[0129] The embodiment of the present application can realize real-time data transmission by pre-establishing a communication channel with the receiving end for data transmission, greatly shortening the time of data transmission and improving data processing efficiency. At the same time, compared with traditional communication methods (such as telephone lines, satellite communications, etc.), network communication has more advantages in cost. Especially in large-scale data transmission and remote communication, network communication can significantly reduce communication costs.

[0130] The data processing method provided in the embodiment of the present application determines the MAC information of the subnet port corresponding to the data to be sent when the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, and encapsulates the data to be sent by the visual networking protocol based on the subnet port MAC information to obtain the data packet to be sent. The data packet to be sent is sent to the corresponding device through the network port. The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual networking protocol stack receives the data and stores it in the protocol stack buffer area. The user layer APP can read the data directly from the protocol stack buffer area without the need for data to be transmitted between multiple layers, which can reduce the data transmission process and improve the data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for the hardware performance of the device are also low, and the hardware cost is reduced. Moreover, by encapsulating the subnet port MAC, the data of the non-receiving terminal network port MAC can be filtered out to reduce the amount of data sent.

[0131] Next, combine Figure 8 and Fig. 9 The above technical solution provided in this embodiment is described in detail by taking the Visual Networking VOS streaming notebook as an example.

[0132] In the VOS streaming notebook, the VOS protocol stack can be embedded into the operating system kernel. The VOS streaming notebook can perform video protocol management and network port management, such as Fig. 9 shown.

[0133] Video link protocol management can include: network access management, data analysis management, data security management and network exit management.

[0134] Network access management refers to a series of audit, authentication and configuration processes for newly connected devices or users in the visual network to ensure that they meet the security and functional requirements of the network. When the subnet port corresponding to the device is started, the configuration is initialized and the application for access to the visual network is applied. The visual network can then allocate a visual network number.

[0135] Data analysis management refers to the process of analyzing, processing and converting data transmitted in the visual network to ensure that the data can be correctly identified, stored and used.

[0136] Data security management refers to the process of protecting data transmitted and stored in the visual network to prevent data leakage, tampering or illegal access. Data security management can be done in ways such as encrypted transmission and access permission control.

[0137] Network deregistration management refers to a series of deregistration, cleanup and recycling processes for devices or users that are no longer used in the visual network to ensure the effective use and security of network resources.

[0138] Network port management can include: network port mode management, network port associated devices, MAC filtering management, message statistics management and network port configuration management, among which:

[0139] Network port mode management refers to setting and adjusting the working mode of the network interface (network port) to adapt to different network environments and application requirements. In this example, you can set the promiscuous mode of the video network port. If the sub-network port is not configured in non-promiscuous mode, you must also enable the promiscuous mode of the video network port. The sub-network port enables promiscuous mode so that it can receive all multicast / broadcast messages.

[0140] Network port-associated device management refers to associating a network interface with a specific hardware device or logical entity for unified management and monitoring.

[0141] MAC filtering management refers to setting MAC address filtering policies at the subnet port to filter data transmitted to the destination that is not the destination MAC.

[0142] Message statistics management refers to the statistics and analysis of messages transmitted on the network interface in order to understand network traffic, performance bottlenecks and potential security threats. Message statistics management can include: Traffic statistics: statistics on the traffic size, traffic distribution and other information of each network port or the entire network. Performance analysis: analysis of network interface performance indicators such as throughput, latency, and packet loss rate. Security audit: detect potential security threats and abnormal behaviors by counting and analyzing message content.

[0143] Network port configuration management refers to the initialization and configuration adjustment of the network interface to ensure that it works as expected. In this example, network port configuration management can set the MTU of the subnet port. If the subnet port does not have an MTU, the MTU of the video network port will be used by default. If it is set, it cannot be greater than the MTU of the video network port.

[0144] The data processing flow can be as follows Figure 8 As shown in Figure 1, the visual networking protocol stack is embedded in the operating system kernel. When the subnet port is started, various configurations are initialized and an application is made to join the visual networking. The subnet port MAC has been registered in the visual networking server, and a legal visual networking number can be obtained by applying to join the visual networking.

[0145] The visual network port in the visual network VOS streaming notebook is connected to the external device through a physical network cable, and can receive data packets sent by the external device. When the visual network port receives a data packet sent by an external device, the subnet port MAC in the data packet header can be extracted to determine whether it is the specified subnet port MAC (i.e., the visual network MAC). If not, it is filtered out and not processed. If so, the visual network protocol stack embedded in the operating system kernel can receive the data packet for subsequent processing.

[0146] After receiving the data packet, the visual networking protocol stack can decapsulate the data packet to extract the data packet header and data content of the data packet. The data packet header can contain parameters such as source information and destination information, such as the visual networking number of the source end (i.e., the data sending end), the MAC address of the source end, the visual networking number of the destination end (i.e., the receiving end), and the MAC address of the destination end, and cache the decapsulated data in the visual networking protocol stack cache area.

[0147] After the visual networking protocol stack completes the unsealed data cache, it can notify the user layer APP to read the data from the visual networking protocol stack cache area for data processing, and return the processed data to the visual networking protocol stack.

[0148] When the visual network protocol stack receives the data to be sent from the user layer APP, it can encapsulate the data to be sent according to the MAC information of the subnet port of the data to be sent and the maximum data transmission unit of the subnet port, obtain the encapsulated data packet to be sent, and send the data packet to be sent to the corresponding device through the visual network port.

[0149] The above data processing flow is similar to Figure 1 Compared with the data processing process of the existing visual network VOS streaming notebook, it can effectively reduce the frequent operations of the user layer and the kernel layer and reduce the CPU utilization rate.

[0150] It should be noted that, for the method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present application are not limited by the described action sequence, because according to the embodiments of the present application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present application.

[0151] Reference Fig.10 , shows a schematic diagram of the structure of a data processing device provided in an embodiment of the present application, and the data processing device can be applied to a visual networking device. Fig.10 As shown, the data processing device 1000 may include the following modules:

[0152] The sub-network port MAC determination module 1010 is used to determine whether the sub-network port MAC corresponding to the data packet belongs to the visual network MAC when receiving an external data packet through the network port;

[0153] The data packet unsealing cache module 1020 is used to unseale the data packet through the visual networking protocol stack embedded in the operating system kernel when the subnet port MAC corresponding to the data packet belongs to the visual networking MAC, and cache the unsealed data in the visual networking protocol stack cache area to wait for the user layer APP to read the data from the visual networking protocol stack cache area.

[0154] Optionally, the subnet port MAC determination module includes:

[0155] A subnet port MAC extraction unit, used to extract the subnet port MAC in the data packet header of the data packet;

[0156] The sub-network port MAC determination unit is used to determine whether the sub-network port MAC is a pre-registered visual network MAC.

[0157] Optionally, the device further comprises:

[0158] A read instruction sending module, used to send data read instruction information to the user layer APP;

[0159] A data reading module is used for the user layer APP to read data from the visual networking protocol stack buffer area according to the data reading indication information.

[0160] The data processing device provided in the embodiment of the present application determines whether the sub-network port MAC corresponding to the data packet belongs to the visual network MAC when receiving an external data packet through the network port. When the sub-network port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unpacked by the visual network protocol stack embedded in the operating system kernel, and the unpacked data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area. The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual network protocol stack receives the data and stores it in the protocol stack cache area. The user layer APP can read the data directly from the protocol stack cache area without the need for data to be transmitted between multiple layers, which can reduce the data transmission process and improve the data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for the device hardware performance are also low, and the hardware cost is reduced. Moreover, by filtering the sub-network port MAC, the visual network protocol stack can reduce the processing of non-local data, thereby improving the device performance.

[0161] Reference Fig.11 , shows a schematic diagram of the structure of another data processing device provided in an embodiment of the present application, which can be applied to visual networking equipment. Fig.11 As shown, the data processing device 1100 may include the following modules:

[0162] The data packet acquisition module 1110 is used to determine the subnet port MAC information corresponding to the data to be sent when the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, and perform visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent;

[0163] The data packet sending module 1120 is used to send the data packet to be sent to the corresponding device through the network port.

[0164] Optionally, the data packet acquisition module includes:

[0165] A protocol header acquisition unit, used to encapsulate the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack to obtain protocol header information;

[0166] The data packet generation unit is used to perform visual network protocol encapsulation on the protocol header information and the data to be sent according to the maximum data transmission unit of the pre-set sub-network port, so as to generate the data packet to be sent.

[0167] Optionally, the device further comprises:

[0168] A destination address acquisition module, used to acquire the destination address or channel type corresponding to the data packet to be sent;

[0169] A network channel building module, used to build a network channel according to the destination address or channel type;

[0170] The module for sending the data packet to be sent is used to send the data packet to be sent to the device based on the network channel.

[0171] The data processing device provided in the embodiment of the present application, when receiving the data to be sent from the user layer APP through the visual networking protocol stack embedded in the operating system kernel, determines the sub-network port MAC information corresponding to the data to be sent, and performs visual networking protocol encapsulation on the data to be sent based on the sub-network port MAC information to obtain the data packet to be sent. The data packet to be sent is sent to the corresponding device through the network port. The embodiment of the present application embeds the network protocol stack into the operating system kernel in advance, and the visual networking protocol stack receives the data and stores it in the protocol stack buffer area. The user layer APP can read the data directly from the protocol stack buffer area without the need for data to be transmitted between multiple layers, which can reduce the data transmission process and improve the data transmission efficiency. At the same time, the CPU usage frequency can be reduced, the requirements for the hardware performance of the device are also low, and the hardware cost is reduced. Moreover, by encapsulating the sub-network port MAC, the data of the non-receiving terminal network port MAC can be filtered out to reduce the amount of data sent.

[0172] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0173] In an embodiment of the present application, an electronic device is also provided. The electronic device may include one or more processors, and one or more machine-readable media storing instructions thereon, the instructions being, for example, application programs. When the instructions are executed by the one or more processors, the processors execute any of the above data processing methods.

[0174] In an embodiment of the present application, a non-temporary computer-readable storage medium is also provided, on which a computer program is stored, and the program can be executed by a processor of an electronic device to implement any of the above data processing methods. For example, the non-temporary computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.

[0175] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0176] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, devices, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0177] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0178] These computer program instructions may also be stored in a computer readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0179] These computer program instructions can also be loaded into a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable terminal device provide for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0180] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present application.

[0181] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0182] The data processing method, device, electronic device and storage medium provided by the present application are introduced in detail above. The principles and implementation methods of the present application are explained in this article using specific examples. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for those skilled in the art, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. A data processing method, characterized in that: Applied to a visual networking device, the method comprises: When an external data packet is received through the network port, determining whether the subnet port MAC corresponding to the data packet belongs to the visual network MAC; When the subnet port MAC corresponding to the data packet belongs to the visual network MAC, the data packet is unpacked by the visual network protocol stack embedded in the operating system kernel, and the unpacked data is cached in the visual network protocol stack cache area to wait for the user layer APP to read the data from the visual network protocol stack cache area.

2. The method according to claim 1, characterized in that The determining whether the subnet port MAC corresponding to the data packet belongs to the visual network MAC includes: Extract the subnet port MAC in the data packet header of the data packet; Determine whether the subnet port MAC is a pre-registered visual network MAC.

3. The method according to claim 1, characterized in that The method further comprises: Sending data reading instruction information to the user layer APP; According to the data reading indication information, the user layer APP reads data from the visual networking protocol stack buffer area.

4. A data processing method, characterized in that: Applied to a visual networking device, the method comprises: When the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it determines the subnet port MAC information corresponding to the data to be sent, and performs visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent; The data packet to be sent is sent to the corresponding device through the network port.

5. The method according to claim 4, characterized in that When the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, it determines the subnet port MAC information corresponding to the data to be sent, and performs visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent, including: Encapsulate the source subnet port MAC and the destination subnet port MAC of the data to be sent through the visual networking protocol stack to obtain protocol header information; According to the maximum data transmission unit of the sub-network port which is preset, the protocol header information and the data to be sent are encapsulated by the visual network protocol to generate the data packet to be sent.

6. The method according to claim 4, characterized in that The method further comprises: Obtaining the destination address or channel type corresponding to the data packet to be sent; Establish a network channel according to the destination address or channel type; The to-be-sent data packet is sent to the device based on the network channel.

7. A data processing device, characterized in that: Applied to visual networking equipment, the device comprises: A subnet port MAC determination module is used to determine whether the subnet port MAC corresponding to the data packet belongs to the visual network MAC when receiving an external data packet through the network port; The data packet unpacking and caching module is used to unpack the data packet through the visual networking protocol stack embedded in the operating system kernel when the subnet port MAC corresponding to the data packet belongs to the visual networking MAC, and cache the unpacked data in the visual networking protocol stack cache area to wait for the user layer APP to read the data from the visual networking protocol stack cache area.

8. A data processing device, characterized in that: Applied to visual networking equipment, the device comprises: A data packet acquisition module is used to determine the subnet port MAC information corresponding to the data to be sent when the visual networking protocol stack embedded in the operating system kernel receives the data to be sent from the user layer APP, and perform visual networking protocol encapsulation on the data to be sent based on the subnet port MAC information to obtain the data packet to be sent; The data packet sending module is used to send the data packet to be sent to the corresponding device through the network port.

9. An electronic device, characterized in that: include: one or more processors; and One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, cause the apparatus to perform the data transmission method according to any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that: The computer program stored therein enables the processor to execute the data transmission method according to any one of claims 1 to 6.