Data transmission method, device, equipment and medium under virtualization management

By using virtual Ethernet drivers to transmit data between different platform domains in the smart cockpit chip, the problem that the data interaction between the AP domain and the CP domain is not suitable for business needs is solved, and standardized and efficient data transmission is achieved.

CN116248772BActive Publication Date: 2025-08-29ECARX (HUBEI) TECHCO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310134855.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-20
Publication Date
2025-08-29
Estimated Expiration
2043-02-20

AI Technical Summary

Technical Problem

In the smart cockpit chip, the data interaction between the AP domain and the CP domain is mainly achieved through Mailbox and Share Memory, but the business data belongs to the application space and cannot meet the needs of software design and development, resulting in data transmission not being suitable for business needs.

Method used

The first platform domain receives service data in the user space, combines the virtual Ethernet driver in the kernel space, writes the data packets into the designated memory area, and sends a notification message to the second platform domain. After receiving the notification, the second platform domain acquires service data through its driver to realize data transmission across the platform domain.

Benefits of technology

It realizes standard network socket communication between different platform domains, supports multiple network protocol stacks, and provides efficient, simple and universal data transmission methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116248772B_ABST
    Figure CN116248772B_ABST
Patent Text Reader

Abstract

The present invention discloses a data transmission method, device, equipment and medium under virtualization management. The method is applied to the same system-on-chip (SOC), which includes a first platform domain and a second platform domain. The method includes: receiving business data in the user space through the first platform domain, combining with the first driver of the first virtual Ethernet in the kernel space, determining the target data packet of the business data in the target format, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain; receiving the notification message through the second platform domain, and obtaining business data in the user space of the second platform domain based on the notification message and combining with the second driver of the second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, support for standard network communication-related APIs between different platform domains and support for multiple network protocol stacks are achieved; a standard, efficient, simple and universal communication method for different platform domains is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of virtualization technology, and in particular to a data transmission method, device, equipment and medium under virtualization management. Background Art

[0002] The smart cockpit chip contains three independent CPU units: the Adaptive Platform (AP) domain, which is CPU Cluster 0 and contains two Cortex-A55s and four Cortex-A76s; the Classic Platform (CP) domain, which is CPU Cluster 1 and contains two Cortex-A55s; the RP domain is a security processor and contains one Cortex-R52; in addition, the E04 contains subsystem modules such as LPDDR5, UFS, GPU, VPU, HIFI5, Audio, DPU, and Ethernet. These subsystem modules can be assigned to different CPU domains for processing. In the vehicle system software, the AP domain and the CP domain need to exchange a large amount of data, such as vehicle signal data, AVM service control data, and image data projected from the navigation screen to the instrument panel.

[0003] Currently, data exchange between the AP domain and the CP domain is achieved through the Mailbox and Shared Memory underlying software. However, business data belongs to the application space, that is, the corresponding driver layer mechanism is not suitable for software design and development based on business needs. Summary of the Invention

[0004] The present invention provides a data transmission method, device, equipment and medium under virtualization management to achieve communication between different platform domains.

[0005] According to one aspect of the present invention, a data transmission method under virtualization management is provided, which is applied to the same system-on-chip (SOC), wherein the SOC includes a first platform domain and a second platform domain. The method includes:

[0006] receiving service data from the user space through the first platform domain, determining a target data packet of the service data in a target format in conjunction with a first driver of the first virtual Ethernet in the kernel space, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain;

[0007] The notification message is received through the second platform domain, and the service data is obtained in the user space of the second platform domain based on the notification message in combination with the second driver of the second virtual Ethernet in the kernel space of the second platform domain.

[0008] According to another aspect of the present invention, a data transmission device under virtualization management is provided, which is applied to the same system-on-chip (SOC), wherein the SOC includes a first platform domain and a second platform domain, and the device includes:

[0009] a sending module, configured to receive service data from the user space through the first platform domain, determine a target data packet of the service data in a target format in conjunction with a first driver of the first virtual Ethernet in the kernel space, write the target data packet into a designated memory area, and send a notification message to the second platform domain;

[0010] An acquisition module is used to receive the notification message through the second platform domain, and acquire the business data in the user space of the second platform domain based on the notification message in combination with the second driver of the second virtual Ethernet in the kernel space of the second platform domain.

[0011] According to a third aspect of the present invention, there is provided an electronic device, comprising:

[0012] at least one processor; and

[0013] a memory communicatively connected to the at least one processor; wherein,

[0014] The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the data transmission method under virtualization management described in any embodiment of the present invention.

[0015] According to a fourth aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the data transmission method under virtualization management described in any embodiment of the present invention when executed.

[0016] The technical solution of an embodiment of the present invention is applied to the same system-on-chip (SOC), which includes a first platform domain and a second platform domain. The method includes: receiving business data from the user space through the first platform domain, combining with a first driver of a first virtual Ethernet in the kernel space, determining a target data packet of the business data in a target format, writing the target data packet to a designated memory area, and sending a notification message to the second platform domain; receiving a notification message through the second platform domain, and obtaining business data in the user space of the second platform domain based on the notification message and combining with a second driver of a second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, support for standard network socket communication-related APIs and support for multiple network protocol stacks between different platform domains is achieved, thus achieving a standard, efficient, simple, and universal communication method for different platform domains.

[0017] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the present invention. Other features of the present invention will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0019] Figure 1 This is a flowchart of a data transmission method under virtualization management provided in accordance with the first embodiment of the present invention;

[0020] Figure 2 This is a flowchart of a data transmission method under virtualization management provided by Embodiment 2 of the present invention;

[0021] Figure 3 1 is a schematic diagram of the software architecture of a data transmission method under virtualization management provided in accordance with the second embodiment of the present invention;

[0022] Figure 4 This is a structural diagram of a data transmission device under virtualization management provided by Embodiment 3 of the present invention;

[0023] Figure 5 It is a schematic structural diagram of an electronic device implementing an embodiment of the present invention. DETAILED DESCRIPTION

[0024] In order to enable those skilled in the art to better understand the solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts should fall within the scope of protection of the present invention.

[0025] It should be noted that the terms "first", "second", etc. in the description and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0026] Example 1

[0027] Figure 1 A flowchart of a data transmission method under virtualization management is provided for the first embodiment of the present invention. This embodiment is applicable to cross-domain interactive data. The method is applied to the same system-on-chip (SOC), which includes a first platform domain and a second platform domain. It can be executed by a data transmission device under virtualization management. The data transmission device under virtualization management can be implemented in the form of hardware and / or software, and the data transmission device under virtualization management can be configured in an electronic device.

[0028] like Figure 1 As shown, the method includes:

[0029] S110. Receive business data from the user space through the first platform domain, determine the target data packet of the business data in the target format in combination with the first driver of the first virtual Ethernet in the kernel space, write the target data packet into the designated memory area, and send a notification message to the second platform domain.

[0030] In this embodiment, the first platform domain can be understood as an independent CPU unit, such as an AP domain or a CP domain. The user space can be understood as the running space of the user program. The kernel space can be understood as the running space of the Linux kernel, such as kernalspace. The first virtual Ethernet can be understood as a virtual network that works according to the Ethernet principle at the data link layer through software methods in the real Internet, and the first virtual Ethernet runs in the first platform domain. Business data can be understood as data that needs to be processed, such as vehicle signal data, AVM business control data, navigation screen projection to the instrument screen image data, etc. The target format can be understood as a format for writing, which can preferably be a raw format. The first driver can be understood as a program set in the first platform domain for realizing the business functions of the virtual network card, such as: turning the network card on and off, transmitting network frame data, receiving network frame data, etc.

[0031] In this embodiment, the second platform domain can be understood as an independent CPU unit, such as an AP domain or a CP domain. The target data packet can be understood as a data packet generated after processing service data and receivable by the second platform domain. The storage information can be understood as information including the address of the target data packet. The notification message can be understood as a message sent to the second platform domain to notify the second platform domain of the storage information of the target data packet.

[0032] Specifically, the first platform domain can receive service data sent from the user space. After transmitting the service data to the kernel space, the service data can be converted into a form that can be received by the virtual Ethernet. The service data in the converted form can then be encapsulated in combination with the first driver of the first virtual Ethernet in the kernel space. The encapsulated service data is re-encapsulated according to the target format to form a target data packet. The target data packet can be written into the designated memory area by dividing the shared memory area of ​​the memory hardware. The first platform domain can send a notification message to the second platform domain through the hardware channel. The memory hardware can be LPDDR and the hardware channel can be Mailbox. The present invention only uses this as an example and does not specifically limit the memory hardware and hardware channel.

[0033] S120: Receive a notification message through the second platform domain, and obtain service data in the user space of the second platform domain based on the notification message and the second driver of the second virtual Ethernet in the kernel space of the second platform domain.

[0034] In this embodiment, the second virtual Ethernet can be understood as a virtual network operating according to Ethernet principles implemented at the data link layer using software methods in the real Internet and running in the second platform domain. The second driver can be understood as a program configured in the second platform domain to implement the service functions of the virtual network card.

[0035] Specifically, the notification message sent by the first platform domain can be received through the hardware channel of the second platform domain. The second platform domain reads the target data packet from the memory hardware according to the notification message, and parses the target data packet through the second driver of the second virtual Ethernet in the kernel space of the second platform domain. The parsed target data packet is then converted into a form that can be received by the user space, that is, converted into a business data form, and the business data is sent to the user space of the second platform domain to obtain the business data in the user space of the second platform domain.

[0036] The technical solution of an embodiment of the present invention is applied to the same system-on-chip (SOC), which includes a first platform domain and a second platform domain. The method includes: receiving business data from the user space through the first platform domain, combining with a first driver of a first virtual Ethernet in the kernel space, determining a target data packet of the business data in a target format, writing the target data packet to a designated memory area, and sending a notification message to the second platform domain; receiving a notification message through the second platform domain, and obtaining business data in the user space of the second platform domain based on the notification message and combining with a second driver of a second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, support for standard network socket communication-related APIs and support for multiple network protocol stacks between different platform domains is achieved, thus achieving a standard, efficient, simple, and universal communication method for different platform domains.

[0037] Example 2

[0038] Figure 2 This is a flowchart of a data transmission method under virtualization management provided by the second embodiment of the present invention. This embodiment is a further refinement based on the above embodiment. Figure 2 As shown, the method includes:

[0039] S201: Receive service data from a user space through a first platform domain, and convert the service data into a first data stream through a set network protocol stack.

[0040] In this embodiment, the first data stream can be understood as a set of ordered byte data sequences with a start point and an end point in the first platform domain. The network protocol stack can be understood as a protocol stack set for completing communication.

[0041] The network protocol stack is configured with at least one standard network protocol, such as socket API, HTTP, TCP / UDP, SOME / IP and other network protocols.

[0042] Specifically, the first platform domain can receive business data in the user space, send the business data to the kernel space, and convert the business data in the kernel space through the set network protocol stack to form a first data stream under the corresponding network protocol.

[0043] S202: Encapsulate the first data stream into first network frame data under a specified protocol.

[0044] In this embodiment, the designated protocol can be understood as the protocol configured in the first platform domain. The first network frame data can be understood as the data transmitted in the first platform domain in the Ethernet.

[0045] Specifically, the first platform domain may encapsulate the first data stream according to a specified protocol to form network frame data corresponding to the first data stream.

[0046] Exemplarily, the designated protocol may be a TCP / IP protocol stack, and the first data stream is encapsulated by the TCP / IP protocol stack into TCP / IP protocol network frame data.

[0047] S203: Drive the first virtual network card through the first driver to encapsulate the first network frame data to obtain an intermediate data packet.

[0048] In this embodiment, the first virtual network card can be understood as a virtual network card in the first platform domain that simulates a network environment through software and simulates the function of a network adapter. The intermediate data packet can be understood as a data packet encapsulated in a memory format.

[0049] Specifically, after the first network frame data is formed, the first platform domain may drive the first virtual network card through the first driver program to encapsulate the first data frame data according to a set format to obtain an intermediate data packet.

[0050] Exemplarily, after the TCP / IP protocol network frame data is formed, the first driver drives the first virtual network card to encapsulate the first network frame data into an intermediate data packet in the RPMSG format.

[0051] S204: Encapsulate the intermediate data packet according to the target format to obtain the target data packet.

[0052] Specifically, after the intermediate data packet is formed, the first platform domain may encapsulate the intermediate data packet according to the target format to obtain a target data packet in the target format.

[0053] Exemplarily, the first platform domain may encapsulate the intermediate data packet in the RPMSG format to form a target data packet in the raw format.

[0054] S205: Writing the target data packet into the designated memory area through a preset bus protocol.

[0055] In this embodiment, the preset bus protocol can be understood as a bus protocol under a preset hardware mechanism. The storage address can be understood as a location where the target data packet is stored.

[0056] Specifically, the first platform domain may transmit the target data packet to the designated memory area through a preset bus protocol.

[0057] S206: After writing is completed, a notification message is sent to the second platform domain.

[0058] Specifically, after the first platform domain completes writing the target data packet, the first platform domain may automatically generate a notification message and send the notification message to the second platform domain according to a set transmission method.

[0059] For example, the first platform domain and the second platform domain can each be interconnected via Mailbox hardware. The first platform domain generates a Mailbox message based on stored information and sends the Mailbox message to the second platform domain. The term "Mailbox" refers to the ability of two different platform domains to exchange messages via a Mailbox hardware channel. A Mailbox consists of two FIFOs, status registers, and control registers, and is a bidirectional message channel.

[0060] S207: Determine a designated memory area according to the notification message.

[0061] Specifically, the second platform domain may receive the notification message sent by the first platform domain through a hardware channel. After receiving the notification message, the second platform domain may determine a designated memory area according to a pre-configured configuration.

[0062] Exemplarily, the second platform domain is connected to the LPDDR hardware via AXI, and a designated memory area on the LPDDR is determined by storing information.

[0063] S208. Read the target data packet from the designated memory area.

[0064] Specifically, the second platform domain may read the target data packet from the designated memory area through a set bus protocol.

[0065] S209: Determine a second data stream under the target protocol according to the target data packet and the second driver.

[0066] In this embodiment, the second data stream can be understood as a set of ordered byte data sequences with a start point and an end point in the second platform domain. The target protocol can be understood as the communication protocol configured in the second platform domain.

[0067] Specifically, the second platform domain can parse the target data packet through the second driver of the second virtual Ethernet in the kernel space, convert the parsed target data packet to form a second data stream under the target protocol. If the target protocol can be the TCP / IP protocol, the second data stream corresponds to the data stream under the TCP / IP protocol.

[0068] Furthermore, according to the target data packet and the second driver, the step of determining the second data flow under the target protocol may be:

[0069] The second virtual network card is driven by the second driver to parse the target data packet to determine the second network frame data; and the second network frame data is parsed to determine the second data stream.

[0070] In this embodiment, the second virtual network card can be understood as a virtual network card in the second platform domain that simulates a network environment and a network adapter function through software simulation. The second network frame data can be understood as data transmitted in the Ethernet in the second platform domain.

[0071] Specifically, the second platform domain may drive the second virtual network card through the second driver to parse the target data packet to determine the second network frame data, and then the second platform domain may parse the second network frame data to determine the second data flow.

[0072] Exemplarily, the second platform domain can first parse the target data table in the raw format to form a target data table in the RPMSG format, and drive the second virtual network card through the second driver to parse the target data packet in the RPMSG format to determine the second network frame data. The second platform domain then parses the second network frame data to determine the second data stream under the TCP / IP protocol.

[0073] S210: Parse the second data stream through a set network protocol stack to obtain service data in the user space.

[0074] Specifically, the second data stream is parsed through a set network protocol stack to obtain business data, and the business data is sent to the user space, and the business data is obtained in the user space.

[0075] The technical solution of the embodiment of the present invention is to encapsulate business data through the network protocol stack of the first platform domain to form a data stream, and encapsulate the data stream into network frame data under the specified protocol. The virtual Ethernet driver drives the virtual network card to encapsulate the network frame data to obtain an intermediate data packet, and encapsulates it according to the corresponding storage format and stores it in the shared memory. A notification message is sent to the second platform domain through the hardware channel. The target data packet is carried out by the second platform domain according to the notification message, and the target data packet is parsed. The target data packet is driven by the virtual Ethernet driver to parse the virtual network card to obtain network frame data, and then the network frame data is converted into business data through the network protocol stack and sent to the user space of the second platform domain. It realizes support for standard network socket communication-related APIs between different platform domains and supports multiple network protocol stacks; it realizes standard, efficient, simple and universal communication methods for different platform domains.

[0076] For example, to facilitate understanding of the present invention, a vehicle data service is taken as an example, the first platform domain is the AP domain, and the second platform domain is the CP domain. The AP domain can also be used as the second platform domain, and the CP domain can also be used as the first platform domain. An exemplary description is given in the form of software architecture. Figure 3 A software architecture diagram of a data transmission method under virtualization management provided in the second embodiment of the present invention is shown as follows: Figure 3 As shown:

[0077] 1. Vehicle service layer: The AP domain vehicle data service program can transmit business data to the AP domain TCP / IP protocol stack through standard socket API, HTTP, TCP / UDP, SOME / IP and other network protocol stacks; it also receives business data from the AP domain TCP / IP protocol stack;

[0078] 2. TCP / IP protocol stack: This stack is implemented by the Linux kernel in the AP domain. It receives data streams from the AP domain's vehicle service layer, encapsulates them into TCP / IP protocol network frames, and passes them to the virtual Ethernet driver. It also receives network frame data from the virtual Ethernet driver, parses it into TCP / IP protocol data streams, and passes it to the vehicle service layer.

[0079] 3. Virtual Ethernet driver: This is responsible for implementing the virtual network card API, such as turning the network card on and off, transmitting and receiving network frame data, etc. It is the core program of the virtual network card. It receives network frame data from the AP domain TCP / IP protocol stack, encapsulates it into RPMSG format data packets, and passes it to the AP domain RPMSG software layer. It also receives AP domain RPMSG format data packets, parses them into network frame data format, and passes them to the AP domain TCP / IP protocol stack.

[0080] 4. RPMSG software layer: This layer refers to the AP domain Remote Processor Messaging (RPMSG), a standard interface for cross-domain communication in heterogeneous multi-core SOCs. It receives RPMSG-formatted data packets from the AP domain virtual Ethernet driver, encapsulates them in raw format, writes them to a designated memory area in the AP domain shared memory, and sends Mailbox messages to the CP domain. It also receives Mailbox messages from the CP domain, retrieves raw data from the designated memory area in the AP domain shared memory, and passes it to the AP domain virtual Ethernet driver.

[0081] 5. Mailbox & Shared Memory: This refers to the underlying software implementation of AP domain communication. The Mailbox is primarily responsible for sending and receiving events, while the Shared Memory is shared between the AP domain and the CP domain, which handles large amounts of data. The AP Mailbox notifies the CP domain Mailbox of messages and also receives messages from the CP domain Mailbox.

[0082] 6. Vehicle service layer: refers to the CP domain vehicle service layer; its function is the same as "1. Vehicle service layer";

[0083] 7.TCP / IP protocol stack: refers to the TCP / IP protocol stack under the CP domain; its function is the same as "2.TCP / IP protocol stack";

[0084] 8. Virtual Ethernet driver: refers to the driver for the CP domain virtual Ethernet; its function is the same as that of "3. Virtual Ethernet driver";

[0085] 9.RPMSG software layer: refers to the CP domain RPMSG software layer; its function is the same as "4.RPMSG software layer";

[0086] 10.Mailbox & Shared Memory: refers to the CP domain Mailbox & Shared Memory; its function is the same as "5.Mailbox & Shared Memory".

[0087] Example 3

[0088] Figure 4 This is a structural diagram of a data transmission device under virtualized management provided by the third embodiment of the present invention. Figure 4 As shown, the device includes: a sending module 31 and an acquiring module 32.

[0089] a sending module 31 configured to receive service data from the user space through the first platform domain, determine a target data packet of the service data in a target format in conjunction with a first driver of the first virtual Ethernet in the kernel space, write the target data packet into a designated memory area, and send a notification message to the second platform domain;

[0090] The acquisition module 32 is used to receive the notification message through the second platform domain, and acquire the service data in the user space of the second platform domain based on the notification message and the second driver of the second virtual Ethernet in the kernel space of the second platform domain.

[0091] The technical solution of an embodiment of the present invention is applied to the same system-on-chip (SOC), which includes a first platform domain and a second platform domain. The method includes: receiving business data from the user space through the first platform domain, combining with a first driver of a first virtual Ethernet in the kernel space, determining a target data packet of the business data in a target format, writing the target data packet to a designated memory area, and sending a notification message to the second platform domain; receiving a notification message through the second platform domain, and obtaining business data in the user space of the second platform domain based on the notification message and combining with a second driver of a second virtual Ethernet in the kernel space of the second platform domain. Through the virtual Ethernet, support for standard network socket communication-related APIs and support for multiple network protocol stacks between different platform domains is achieved, thus achieving a standard, efficient, simple, and universal communication method for different platform domains.

[0092] Optionally, the sending module 31 is used to:

[0093] Converting the service data into a first data stream through a set network protocol stack;

[0094] Encapsulating the first data stream into first network frame data under a specified protocol;

[0095] The first virtual network card is driven by the first driver to encapsulate the first network frame data to obtain an intermediate data packet;

[0096] The intermediate data packet is encapsulated according to the target format to obtain the target data packet.

[0097] The network protocol stack is configured with at least one standard network protocol.

[0098] Optionally, the sending module 31 includes:

[0099] A first determining unit, configured to write the target data packet into a designated memory area in a shared memory;

[0100] The message notification unit is configured to send the notification message to the second platform domain after the writing is completed.

[0101] The first determining unit is specifically configured to:

[0102] Transmitting the target data packet to the designated memory area via a preset bus protocol;

[0103] Obtain a storage address of the designated memory area, and determine storage information according to the storage address.

[0104] Optionally, the acquisition module 32 includes:

[0105] a second determining unit, configured to determine the designated memory area according to the notification message;

[0106] A reading unit, configured to read the target data packet from the designated memory area;

[0107] a third determining unit, configured to determine a second data stream under a target protocol according to the target data packet and the second driver;

[0108] An acquiring unit is configured to parse the second data stream through a set network protocol stack and acquire the business data in the user space.

[0109] Furthermore, the third determining unit is specifically configured to:

[0110] The second driver drives the second virtual network card to parse the target data packet to determine the second network frame data;

[0111] The second network frame data is parsed to determine the second data flow.

[0112] The data transmission device under virtualization management provided by the embodiment of the present invention can execute the data transmission method under virtualization management provided by any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0113] Example 4

[0114] Figure 5 A schematic diagram of the structure of an electronic device 40 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or claimed herein.

[0115] like Figure 5 As shown, the electronic device 40 includes at least one processor 41 and a memory, such as a read-only memory (ROM) 42, a random access memory (RAM) 43, etc., which is communicatively connected to the at least one processor 41. The memory stores a computer program that can be executed by the at least one processor, and the processor 41 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 42 or the computer program loaded from the storage unit 48 into the random access memory (RAM) 43. Various programs and data required for the operation of the electronic device 40 can also be stored in the RAM 43. The processor 41, ROM 42, and RAM 43 are connected to each other via a bus 44. An input / output (I / O) interface 45 is also connected to the bus 44.

[0116] Multiple components in the electronic device 40 are connected to the I / O interface 45, including an input unit 46, such as a keyboard, a mouse, etc.; an output unit 47, such as various types of displays, speakers, etc.; a storage unit 48, such as a magnetic disk, an optical disk, etc.; and a communication unit 49, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 49 allows the electronic device 40 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0117] Processor 41 can be various general-purpose and / or specialized processing components with processing and computing capabilities. Some examples of processor 41 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various processors that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. Processor 41 executes the various methods and processes described above, such as the data transmission method under virtualization management.

[0118] In some embodiments, the data transmission method under virtualization management can be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as storage unit 48. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 40 via ROM 42 and / or communication unit 49. When the computer program is loaded into RAM 43 and executed by processor 41, one or more steps of the data transmission method under virtualization management described above can be performed. Alternatively, in other embodiments, processor 41 can be configured to perform the data transmission method under virtualization management by any other appropriate means (for example, by means of firmware).

[0119] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0120] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the computer program is executed by the processor, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The computer program may be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0121] In the context of the present invention, computer-readable storage media can be tangible media that can contain or store a computer program for use with an instruction execution system, device or equipment or used in combination with an instruction execution system, device or equipment. Computer-readable storage media can include but are not limited to electronic, magnetic, optical, electromagnetic, infrared or semiconductor systems, devices or equipment, or any suitable combination of the foregoing. Alternatively, computer-readable storage media can be machine-readable signal media. More specific examples of machine-readable storage media can include electrical connections based on one or more lines, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0122] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0123] The systems and techniques described herein can be implemented in a computing system that includes a back-end component (e.g., as a data server), a computing system that includes a first-piece component (e.g., an application server), a computing system that includes a front-end component (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with embodiments of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, first-piece components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0124] A computing system may include clients and servers. The clients and servers are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host. This server is a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services.

[0125] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in the present invention can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of the present invention can be achieved. This is not limited herein.

[0126] The above specific embodiments do not limit the scope of protection of the present invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention are intended to be included within the scope of protection of the present invention.

Claims

1. A data transmission method under virtualization management, characterized in that: Applied to the same system-on-chip (SOC), the SOC includes a first platform domain and a second platform domain, the method includes: receiving service data from the user space through the first platform domain, determining a target data packet of the service data in a target format in conjunction with a first driver of the first virtual Ethernet in the kernel space, writing the target data packet into a designated memory area, and sending a notification message to the second platform domain; receiving the notification message through the second platform domain, and determining the designated memory area according to the notification message; Read the target data packet from the designated memory area; Acquire the service data in the user space of the second platform domain according to the target data packet and a second driver of the second virtual Ethernet in the kernel space of the second platform domain; The step of determining a target data packet of the service data in a target format in combination with a first driver of the first virtual Ethernet in the kernel space includes: Converting the service data into a first data stream through a set network protocol stack; Encapsulating the first data stream into first network frame data under a specified protocol; The first driver drives a first virtual network card to encapsulate the first network frame data to obtain an intermediate data packet; the first virtual network card is a virtual network card in the first platform domain that simulates a network environment through software and simulates a network adapter function; The intermediate data packet is encapsulated according to the target format to obtain the target data packet.

2. The method according to claim 1, characterized in that Writing the target data packet into a designated memory area and sending a notification message to the second platform domain includes: Writing the target data packet into the designated memory area through a preset bus protocol; When writing is completed, the notification message is sent to the second platform domain.

3. The method according to claim 1, characterized in that The acquiring the service data in the user space of the second platform domain according to the target data packet in combination with the second driver of the second virtual Ethernet in the kernel space of the second platform domain includes: Determining a second data stream under a target protocol according to the target data packet and the second driver; The second data stream is parsed through a set network protocol stack to obtain the business data in the user space.

4. The method according to claim 3, characterized in that Determining a second data stream under a target protocol according to the target data packet and the second driver includes: The second driver drives the second virtual network card to parse the target data packet to determine the second network frame data; The second network frame data is parsed to determine the second data flow.

5. The method according to claim 1, wherein The network protocol stack is configured with at least one standard network protocol.

6. A data transmission device under virtualization management, characterized in that: Applicable to the same system-on-chip (SOC), the SOC including a first platform domain and a second platform domain, the device includes: a sending module, configured to receive service data from the user space through the first platform domain, determine a target data packet of the service data in a target format in conjunction with a first driver of the first virtual Ethernet in the kernel space, write the target data packet into a designated memory area, and send a notification message to the second platform domain; an acquisition module, configured to receive the notification message through the second platform domain, and determine the designated memory area according to the notification message; Read the target data packet from the designated memory area; Acquire the service data in the user space of the second platform domain according to the target data packet and a second driver of the second virtual Ethernet in the kernel space of the second platform domain; Wherein, the sending module is used for: Converting the service data into a first data stream through a set network protocol stack; Encapsulating the first data stream into first network frame data under a specified protocol; The first driver drives a first virtual network card to encapsulate the first network frame data to obtain an intermediate data packet; the first virtual network card is a virtual network card in the first platform domain that simulates a network environment through software and simulates a network adapter function; The intermediate data packet is encapsulated according to the target format to obtain the target data packet.

7. The device according to claim 6, characterized in that The sending module is specifically used for: Converting the service data into a first data stream through a set network protocol stack; Encapsulating the first data stream into first network frame data under a specified protocol; The first virtual network card is driven by the first driver to encapsulate the first network frame data to obtain an intermediate data packet; The intermediate data packet is encapsulated according to the target format to obtain the target data packet.

8. An electronic device, characterized in that: The electronic device comprises: at least one system-on-chip (SOC), the SOC including a first platform domain and a second platform domain; and a memory in communication with the at least one SOC; in, The memory stores a computer program that can be executed by the at least one SOC, and the computer program is executed by the at least one SOC so that the at least one SOC can execute the data transmission method under virtualization management according to any one of claims 1 to 5.

9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the data transmission method under virtualization management according to any one of claims 1 to 5 when executed.

Citation Information

Patent Citations

  • Efficient TCP / IP datagram processing method and system

    CN115103036A

  • Screen projection method and device under virtualization management, equipment and medium

    CN115344226A