CN116886789A - Data transmission method, device, equipment and medium - Google Patents

Data transmission method, device, equipment and medium Download PDF

Info

Publication number
CN116886789A
CN116886789A CN202310994752.3A CN202310994752A CN116886789A CN 116886789 A CN116886789 A CN 116886789A CN 202310994752 A CN202310994752 A CN 202310994752A CN 116886789 A CN116886789 A CN 116886789A
Authority
CN
China
Prior art keywords
processing unit
message
data processing
data
flow table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310994752.3A
Other languages
Chinese (zh)
Inventor
王帅
王绍坤
黄明亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yusur Technology Co ltd
Original Assignee
Yusur Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yusur Technology Co ltd filed Critical Yusur Technology Co ltd
Priority to CN202310994752.3A priority Critical patent/CN116886789A/en
Publication of CN116886789A publication Critical patent/CN116886789A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

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

Abstract

The present disclosure relates to a data transmission method, apparatus, device, and medium. The data transmission method comprises the following steps: acquiring a message of an application program, wherein the application program is deployed in a container of a cloud server node; generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables; based on the data processing unit driver program, the dynamic flow table and the message are issued to the data processing unit engine accelerator so that the data processing unit engine accelerator executes the forwarding operation of the message, and according to the embodiment of the disclosure, the message of the application program can be unloaded to the data processing unit engine accelerator so that the data processing unit engine accelerator executes the forwarding operation of the message, thereby reducing the resource consumption and the data transmission delay of the central processing unit and improving the data throughput.

Description

Data transmission method, device, equipment and medium
Technical Field
The disclosure relates to the technical field of software development, and in particular relates to a data transmission method, a device, equipment and a medium.
Background
The cloud primary network is a novel network architecture mode oriented to the cloud computing age and aims to provide more efficient, flexible and safe network services. By adopting network function virtualization technology, micro-service architecture thought, automatic operation and maintenance technology and the like, network services are split into smaller components and deployed into different container examples, so that the automatic operation and maintenance work is simplified and the security is higher. The idea of separating a control plane from a data plane is adopted, the control plane is responsible for control logic and decision of the whole network, and centrally manages all network devices and configures a data flow path; the data plane is the main working area of the network and is responsible for transmitting and processing data packets. The current cloud primary network architecture is mainly constructed by using a Kubernetes tool, wherein the Kubernetes is an efficient container scheduling engine, realizes basic container scheduling and micro-service scheduling frameworks, and provides the capabilities of service discovery and registration, configuration management, load balancing, fault isolation, automatic capacity expansion, service recovery and the like.
At present, a cloud primary network service architecture based on a container is constructed, and through the design of separating control logic and a data plane of a network, network control is more flexible, but with the increase of intensive applications represented by high-performance calculation and big data, network bandwidth and time delay requirements are more and more severe, and a computer architecture taking a central processing unit as a center becomes a system bottleneck. Particularly, in the application of the cloud primary network, a large amount of calculation work is needed in the process of analyzing and forwarding network data packets by a data plane in the cloud primary service architecture, such as analysis, matching, encapsulation and decapsulation of the data packets, checksum and the like.
Because a large amount of calculation work is performed on the data surface in the process of analyzing and forwarding the network data packet in the cloud primary service architecture, a large amount of central processing unit resources are consumed, so that the problems of large resource loss, small data throughput, prolonged transmission, complex scale management and the like occur in high-performance application scenes such as application calculation and network calculation, the control surface and the data surface work on a server, the central processing unit resources are occupied, and the performance of the server and the use of other application programs are influenced.
Disclosure of Invention
In order to solve the technical problems, the present disclosure provides a data transmission method, device, equipment and medium.
A first aspect of an embodiment of the present disclosure provides a data transmission method, including:
acquiring a message of an application program, wherein the application program is deployed in a container of a cloud server node;
generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables;
and based on the data processing unit driver program, the dynamic flow table and the message are issued to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes the forwarding operation of the message.
A second aspect of an embodiment of the present disclosure provides a data transmission apparatus, including:
the message acquisition module is used for acquiring a message of an application program, wherein the application program is deployed in a container of the cloud server node;
the flow table generating module is used for generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables;
and the data unloading module is used for transmitting the dynamic flow table and the message to the data processing unit engine accelerator based on the data processing unit driver program so as to enable the data processing unit engine accelerator to execute the forwarding operation of the message.
A third aspect of the disclosed embodiments provides an electronic device, comprising:
a processor;
a memory for storing executable instructions;
the processor is configured to read the executable instructions from the memory, and execute the executable instructions to implement the data transmission method provided in the first aspect.
A fourth aspect of the embodiments of the present disclosure provides a computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to implement the data transmission method provided in the first aspect.
Compared with the prior art, the technical scheme provided by the embodiment of the disclosure has the following advantages:
according to the data transmission method, the device, the equipment and the medium, the message of the application program can be obtained, the application program is deployed in the container of the cloud server node, the dynamic flow table corresponding to the message is generated based on the data processing unit and a plurality of preset static flow tables, and then the dynamic flow table and the message are issued to the data processing unit engine accelerator based on the data processing unit driver, so that the data processing unit engine accelerator executes the forwarding operation of the message, and therefore the message of the application program can be unloaded to the data processing unit engine accelerator, the data processing unit engine accelerator executes the forwarding operation of the message, network transmission and message forwarding in the central processing unit are not needed, the resource consumption and the data transmission delay of the central processing unit are reduced, and the data throughput is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the disclosure and together with the description, serve to explain the principles of the disclosure.
In order to more clearly illustrate the embodiments of the present disclosure or the solutions in the prior art, the drawings that are required for the description of the embodiments or the prior art will be briefly described below, and it will be obvious to those skilled in the art that other drawings can be obtained from these drawings without inventive effort.
Fig. 1 is a flowchart of a data transmission method provided in an embodiment of the present disclosure;
fig. 2 is a schematic diagram of an application scenario provided in an embodiment of the present disclosure;
FIG. 3 is a flow chart of another data transmission method provided by an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a data transmission device according to an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
Detailed Description
In order that the above objects, features and advantages of the present disclosure may be more clearly understood, a further description of aspects of the present disclosure will be provided below. It should be noted that, without conflict, the embodiments of the present disclosure and features in the embodiments may be combined with each other.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure, but the present disclosure may be practiced otherwise than as described herein; it will be apparent that the embodiments in the specification are only some, but not all, embodiments of the disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order and/or performed in parallel. Furthermore, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
It should be noted that in this document, relational terms such as "first" and "second" and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
It should be noted that references to "one", "a plurality" and "a plurality" in this disclosure are intended to be illustrative rather than limiting, and those of ordinary skill in the art will appreciate that "one or more" is intended to be understood as "one or more" unless the context clearly indicates otherwise.
In general, a large amount of computation work is performed on a data surface in a cloud primary service architecture in the process of analyzing and forwarding network data packets, and a large amount of central processing unit resources are consumed, so that the problems of large resource loss, small data throughput, prolonged transmission, complex scale management and the like occur in high-performance application scenes such as application computation and network computation, both the control surface and the data surface work on a server, and the central processing unit resources are occupied, so that the performance of the server and the use of other application programs are affected. In view of this problem, embodiments of the present disclosure provide a data transmission method, which is described below with reference to specific embodiments.
Fig. 1 is a flowchart of a data transmission method provided in an embodiment of the present disclosure, where the method may be performed by a data transmission device, and the data transmission device may be implemented in software and/or hardware, and the data transmission device may be configured in an electronic device, for example, a server or a terminal, where the terminal specifically includes a mobile phone, a computer, a tablet computer, or the like. In addition, the method can be applied to the application scenario shown in fig. 2, and it can be understood that the data transmission method provided by the embodiment of the disclosure can also be applied to other scenarios.
As shown in fig. 2, the application scenario includes a cluster main controller component, a target database, a cloud server node 1, a cloud server node 2 and an optical switch, wherein node container network interfaces, containers 1, containers 2 and data processing units are respectively disposed in the cloud server node 1 and the cloud server node 2, a data processing unit control plane component, a software defined network controller, a data processing unit data plane component, a data processing unit driver, a data processing unit engine accelerator and network port equipment are disposed in the data processing unit, a data processing unit in the cloud server node 1 or the cloud server node 2 is accessed into the cloud server node 1 or the cloud server node 2 through a bus interface, and the bus interface can be a preset PCIe interface.
The application scenario shown in fig. 2 is suitable for a data center cloud server deployed with a cloud primary cluster network, a cluster master controller component (Host Control Plane Master, HCPM) and a target database are deployed in the data center cloud server, and the cluster master controller component is used for taking charge of adding, deleting, changing and querying resources of a cluster network system, issuing network configuration information and network port allocation information in the cloud primary cluster network to a data processing unit control plane component in a data processing unit, and issuing forwarding rules, such as routing information, forwarding table items and the like, among network elements in the cloud primary cluster network to a software defined network controller in the data processing unit; the target database is used for receiving and storing configuration parameters issued by the cluster master controller component, wherein the configuration parameters can comprise cloud native cluster network parameters, port numbers, interface addresses, node names, network configuration parameters and the like.
A plurality of cloud server nodes, such as cloud server node 1 and cloud server node 2, may be included in the data center cloud server.
Taking the cloud server node 1 as an example for specific explanation, a plurality of containers, such as the container 1 and the container 2, may be disposed in the cloud server node 1, and user applications are disposed in the container 1 and the container 2. The node container network interface is used as a network proxy of the cloud server node and is responsible for network connection on each server node; the data processing unit Control plane component (Dpu Control PlaneComponent, DCPC) is used for receiving and synchronizing network configuration information and network port allocation information in the cloud primary cluster network issued by the cluster master controller component; the software defined network Controller (Sdn Controller) is used for receiving and synchronizing forwarding rules among network elements in the cloud primary cluster network issued by the cluster master Controller component; the Data processing unit Data plane component (Dpu Data PlaneDaemonset, DDPD) is used for sending a message entering and exiting the cloud server node 1, wherein the message comprises a Data flow head packet, and the Data flow head packet is sent to the Data processing unit driver according to a forwarding rule sent by the software defined network controller; the data processing unit driver is used for transmitting the data traffic head packet to the data processing unit engine accelerator; the data processing unit engine accelerator is used for executing forwarding operation on data traffic packets (including data traffic first packets) in the message, sending the data traffic packets to the optical switch based on the network port equipment, and forwarding the data traffic packets through the optical switch.
The cloud server node 2 is the same as the deployment in the cloud server node 1, and will not be described here.
The data transmission method shown in fig. 1 is described below in connection with the application scenario shown in fig. 2, and for example, the cloud server node 1 in fig. 2 may perform the method. As shown in fig. 1, the data transmission method provided in this embodiment includes the following steps.
S110, acquiring a message of an application program, wherein the application program is deployed in a container of a cloud server node.
In the embodiment of the disclosure, when the cloud server node needs to perform data network transmission, a message of an application program is acquired.
In the disclosed embodiment, the application is a user application. The cloud server node includes a plurality of containers therein.
The message may be generated by the container based on the application program according to the communication requirement, and the specific implementation manner of generating the message is similar to the existing manner of generating the message, which is not described herein.
The message includes a source MAC address, a source IP address, a destination MAC address, and a destination IP address.
S120, generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables.
In the embodiment of the disclosure, after a cloud server node acquires a message of an application program, a dynamic flow table corresponding to the message is generated based on a data processing unit and a plurality of preset static flow tables.
The cloud server node comprises a plurality of preset static flow tables, wherein the plurality of preset static flow tables are preset and stored in the cloud server node, each preset static flow table comprises a preset source MAC address, a preset source IP address, a preset destination MAC address, a preset destination IP address and action information, and the action information comprises message forwarding.
Specifically, after the cloud server node acquires the message of the application program, the message is matched with a plurality of preset static flow tables based on the data processing unit, and then a dynamic flow table corresponding to the message is generated according to the matching result.
S130, based on the data processing unit driver program, the dynamic flow table and the message are issued to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes the forwarding operation of the message.
In the embodiment of the disclosure, after generating the dynamic flow table corresponding to the message, the cloud server node issues the dynamic flow table and the message to the data processing unit engine accelerator based on the data processing unit driver, and further uninstalls the message to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes forwarding operation on the message.
The data processing unit engine accelerator executing the forwarding operation on the message may be understood that the data processing unit engine accelerator forwards the data traffic packet in the message to the target device according to the source MAC address, the source IP address, the destination MAC address, and the destination IP address in the message.
In the embodiment of the disclosure, a message of an application program can be acquired, wherein the application program is deployed in a container of a cloud server node, a dynamic flow table corresponding to the message is generated based on a data processing unit and a plurality of preset static flow tables, and then the dynamic flow table and the message are issued to a data processing unit engine accelerator based on a data processing unit driver, so that the data processing unit engine accelerator executes a forwarding operation on the message, and therefore the message of the application program can be unloaded to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes the forwarding operation on the message, network transmission and data forwarding in a central processing unit are not needed, the resource consumption and the data transmission delay of the central processing unit are reduced, and the data throughput is improved.
In an embodiment of the present disclosure, before S120, the data transmission method may further include: determining network port addresses of the container and the data processing unit based on a data processing unit control plane component in the data processing unit; the message is sent to the data processing unit based on the network port address.
In the embodiment of the present disclosure, the container is deployed on a host of a cloud server node, and to issue a message in the container to a data processing unit connected to the host, the issuing of the message needs to be performed through a network port of the container and the data processing unit.
Specifically, the data processing unit control plane component may acquire network configuration information and network port allocation information in the cloud primary cluster network from the cluster main controller component through network communication connection with the cluster main controller component, and store the network configuration information and the network port allocation information, and after acquiring the message, the cloud service node determines network port addresses of the container and the data processing unit based on the network configuration information and the network port allocation information stored in the data processing unit control plane component, and then sends the message to the data processing unit based on the network port address.
Further, based on the data processing unit and the plurality of preset static flow tables, the generating a dynamic flow table corresponding to the message may specifically include: based on a data processing unit data surface component in the data processing unit, matching the message with a plurality of preset static flow tables, and determining a target static flow table corresponding to the message; and generating a dynamic flow table corresponding to the message based on the target static flow table.
Specifically, after the cloud server node issues the message to the data processing unit, the source MAC address, the source IP address, the destination MAC address, and the destination IP address in the message are matched with a preset source MAC address, a preset source IP address, a preset destination MAC address, and a preset destination IP address in a plurality of preset static flow tables based on the data plane component of the data processing unit, a target static flow table matched with the message is determined, and then a dynamic flow table corresponding to the message is generated according to information in the target static flow table, where the dynamic flow table includes operation actions, such as forwarding operation, on the message.
Before the packet is matched with the plurality of preset static flow tables based on the data surface component of the data processing unit in the data processing unit, the data transmission method can further comprise the following steps: and the controller acquires a plurality of preset static flow tables from the cluster main controller component based on software definition in the data processing unit, and issues the plurality of preset static flow tables to the data surface component of the data processing unit.
In the embodiment of the present disclosure, before generating the dynamic flow table corresponding to the message, the cloud server node needs to acquire a plurality of preset static flow tables from the cluster master controller assembly in advance, and further acquire a plurality of preset static flow tables from the cluster master controller assembly based on network communication between the software defined network controller in the data processing unit and the cluster master controller assembly, and store and send the plurality of preset static flow tables to the data plane assembly of the data processing unit.
On the basis of the above embodiment of the present disclosure, the data transmission method may further include: after the message of the application program is obtained, comparing the message with the dynamic flow table to determine whether the data flow packet in the message is the first data flow packet corresponding to the application program; and when the data flow packet in the message is determined to be the non-data flow first packet, the message is issued to the data processing unit engine accelerator.
Specifically, after acquiring a new message of an application program, the cloud server node issues the new message to the data processing unit, compares a source MAC address, a source IP address, a destination MAC address and a destination IP address in the new message with a dynamic source MAC address, a dynamic source IP address, a dynamic destination MAC address and a dynamic destination IP address in a dynamic flow table in an engine accelerator of the data processing unit based on the data processing unit, and if the source MAC address, the source IP address, the destination MAC address and the destination IP address in the new message are consistent with the dynamic source MAC address, the dynamic source IP address, the dynamic destination MAC address and the dynamic destination IP address in the dynamic flow table, determines that a data flow packet in the new message is not a data flow first packet, directly forwards the new message through the engine accelerator of the data processing unit; if the source MAC address, the source IP address, the destination MAC address and the destination IP address in the new message are inconsistent with the dynamic source MAC address, the dynamic source IP address, the dynamic destination MAC address and the dynamic destination IP address in the dynamic flow table, the data flow packet in the new message is determined to be a data flow head packet, a target dynamic flow table corresponding to the new message is generated based on the data processing unit and a plurality of preset static flow tables, and the target dynamic flow table and the new message are issued to the data processing unit engine accelerator based on the data processing unit driver, so that the data processing unit engine accelerator executes forwarding operation on the new message.
In the embodiment of the disclosure, whether the data traffic packet in the message is the first data traffic packet can be judged, and when the data traffic packet in the message is the first non-data traffic packet, the forwarding operation of the message is directly executed through the data processing unit engine accelerator, so that the data transmission delay is further reduced, and the data transmission efficiency is accelerated.
In the embodiment of the present disclosure, a node container network interface is deployed on a cloud server node, and the data transmission method may further include: the cloud server node receives a container creation instruction sent by a cluster main controller component based on a node container network interface; a new container is created based on the container creation instructions.
The container creation instruction comprises information such as a cloud server node name, a trust certificate, an IP address, a MAC address and a container identification to be created, which correspond to the container.
Specifically, the real-time manner of creating a new container based on the container creation instruction is similar to the manner of creating an existing container, and will not be described here.
In the embodiment of the disclosure, a new container can be created according to the container creation instruction of the cluster master controller component, so that the rate and flexibility of container creation are improved.
Fig. 3 is a flowchart of another data transmission method provided in an embodiment of the disclosure, and as shown in fig. 3, the data transmission method may specifically include the following steps:
s310, acquiring a message of an application program, wherein the application program is deployed in a container of a cloud server node.
S320, based on the control surface component of the data processing unit in the data processing unit, determining the network port addresses of the container and the data processing unit, and sending the message to the data processing unit based on the network port addresses.
S330, based on the software defined network controller in the data processing unit, acquiring a plurality of preset static flow tables from the container cluster main controller component, and issuing the plurality of preset static flow tables to the data surface component of the data processing unit.
S340, matching the message with a plurality of preset static flow tables based on a data processing unit data surface component in the data processing unit, and determining a target static flow table corresponding to the message.
S350, generating a dynamic flow table corresponding to the message based on the target static flow table.
S360, based on the data processing unit driver program, the dynamic flow table and the message are issued to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes the forwarding operation of the message.
In the embodiment of the present disclosure, the steps S310 to S320 and the step S330 may be performed simultaneously, or the step S330 may be performed before the steps S310 to S320, which is not limited herein.
It should be noted that, the specific implementation of steps S310-S360 is similar to the implementation in the above embodiment, and will not be described here again.
In the embodiment of the disclosure, a message of an application program can be acquired, based on a data processing unit control surface component in a data processing unit, a network port address of a container and the data processing unit is determined, the message is transmitted to the data processing unit based on the network port address, a plurality of preset static flow tables are acquired from a container cluster main controller component based on a software definition network controller in the data processing unit, and are issued to the data processing unit data surface component, further, the message is matched with the plurality of preset static flow tables based on the data processing unit data surface component in the data processing unit, a target static flow table corresponding to the message is determined, a dynamic flow table corresponding to the message is generated based on the target static flow table, and the dynamic flow table and the message are issued to a data processing unit engine accelerator based on a data processing unit driver, so that the data processing unit engine accelerator executes forwarding operation on the message, thereby reducing resource consumption and data transmission delay of a central processor, and improving data throughput.
Fig. 4 is a schematic structural diagram of a data transmission device according to an embodiment of the present disclosure.
In the embodiment of the disclosure, the data transmission device may be disposed in an electronic device, which is understood to be a part of functional modules in the electronic device. Specifically, the electronic device may be a server or a terminal, where the terminal specifically includes a mobile phone, a computer, a tablet computer, or the like, which is not limited herein.
As shown in fig. 4, the data transmission apparatus 400 may include a message acquisition module 410, a flow table generation module 420, and a data offloading module 430.
The message acquisition module 410 may be configured to acquire a message of an application program, where the application program is deployed in a container of a cloud server node.
The flow table generating module 420 may be configured to generate a dynamic flow table corresponding to the packet based on the data processing unit and a plurality of preset static flow tables.
The data offload module 430 may be configured to issue the dynamic flow table and the message to the data processing unit engine accelerator based on the data processing unit driver, so that the data processing unit engine accelerator performs a forwarding operation on the message.
In the embodiment of the disclosure, a message of an application program can be acquired, wherein the application program is deployed in a container of a cloud server node, a dynamic flow table corresponding to the message is generated based on a data processing unit and a plurality of preset static flow tables, and then the dynamic flow table and the message are issued to a data processing unit engine accelerator based on a data processing unit driver, so that the data processing unit engine accelerator executes a forwarding operation on the message, and therefore the message of the application program can be unloaded to the data processing unit engine accelerator, so that the data processing unit engine accelerator executes the forwarding operation on the message, network transmission and data forwarding in a central processing unit are not needed, the resource consumption and the data transmission delay of the central processing unit are reduced, and the data throughput is improved.
In some embodiments of the present disclosure, the data transmission apparatus 400 may further include a port determination module and a message sending module.
The port determining module may be configured to determine, based on a data processing unit control plane component in the data processing unit, a network port address of the container and the data processing unit before generating the dynamic flow table corresponding to the packet based on the data processing unit and the plurality of preset static flow tables.
The message sending module may be configured to send the message to the data processing unit based on the network port address.
In some embodiments of the present disclosure, the flow table generating module 420 may be specifically configured to match a packet with a plurality of preset static flow tables based on a data plane component of a data processing unit in the data processing unit, and determine a target static flow table corresponding to the packet; and generating a dynamic flow table corresponding to the message based on the target static flow table.
In some embodiments of the present disclosure, the data transmission apparatus 400 may further include a flow table acquisition module.
The flow table obtaining module may be configured to obtain, based on a software defined network controller in the data processing unit, a plurality of preset static flow tables from the cluster main controller component before the packet is matched with the plurality of preset static flow tables based on the data plane component of the data processing unit in the data processing unit, and send the plurality of preset static flow tables to the data plane component of the data processing unit.
In some embodiments of the present disclosure, the data processing unit accesses the cloud server node through a bus interface.
In some embodiments of the present disclosure, the data transmission apparatus 400 may further include a determination module and a data issuing module.
The determining module may be configured to compare the message with the dynamic flow table after the message of the application program is obtained, and determine whether the data flow packet in the message is a data flow header packet corresponding to the application program.
The data issuing module may be configured to issue the packet to the engine accelerator of the data processing unit when it is determined that the data traffic packet in the packet is a non-data traffic first packet.
In some embodiments of the present disclosure, a node container network interface is deployed on a cloud server node.
The data transmission apparatus 400 may further include a creation instruction receiving module and a container creation module.
The creation instruction receiving module may be configured to receive, by the cloud server node, a container creation instruction sent by the cluster master controller component based on the node container network interface.
The container creation module may be configured to create a new container based on the container creation instructions.
It should be noted that, the data transmission apparatus 400 shown in fig. 4 may perform the steps in the above method embodiments, and implement the processes and effects in the above method embodiments, which are not described herein.
Fig. 5 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
In the embodiment of the present disclosure, the electronic device shown in fig. 5 may be a server or a terminal, where the terminal specifically includes a mobile phone, a computer, a tablet computer, or the like, which is not limited herein.
As shown in fig. 5, the electronic device may include a processor 510 and a memory 520 storing computer program instructions.
In particular, the processor 510 described above may include a Central Processing Unit (CPU), or an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), or may be configured as one or more integrated circuits that implement embodiments of the present disclosure.
Memory 520 may include mass storage for information or instructions. By way of example, and not limitation, memory 520 may comprise a Hard Disk Drive (HDD), floppy Disk Drive, flash memory, optical Disk, magneto-optical Disk, magnetic tape, or universal serial bus (Universal Serial Bus, USB) Drive, or a combination of two or more of these. Memory 520 may include removable or non-removable (or fixed) media, where appropriate. The memory 520 may be internal or external to the integrated gateway device, where appropriate. In a particular embodiment, the memory 520 is a non-volatile solid state memory. In a particular embodiment, the Memory 520 includes Read-Only Memory (ROM). The ROM may be mask-programmed ROM, programmable ROM (PROM), erasable PROM (Electrical Programmable ROM, EPROM), electrically erasable PROM (Electrically Erasable Programmable ROM, EEPROM), electrically rewritable ROM (Electrically Alterable ROM, EAROM), or flash memory, or a combination of two or more of these, where appropriate.
The processor 510 reads and executes the computer program instructions stored in the memory 520 to perform the steps of the data transmission method provided by the embodiments of the present disclosure.
In one example, the electronic device may also include a transceiver 530 and a bus 540. Wherein, as shown in fig. 5, the processor 510, the memory 520 and the transceiver 530 are connected and communicate with each other through a bus 540.
Bus 540 includes hardware, software, or both. By way of example, and not limitation, the buses may include an accelerated graphics port (Accelerated Graphics Port, AGP) or other graphics BUS, an enhanced industry standard architecture (Extended Industry Standard Architecture, EISA) BUS, a Front Side BUS (FSB), a HyperTransport (HT) interconnect, an industry standard architecture (Industrial Standard Architecture, ISA) BUS, an InfiniBand interconnect, a Low Pin Count (LPC) BUS, a memory BUS, a micro channel architecture (Micro Channel Architecture, MCa) BUS, a peripheral control interconnect (Peripheral Component Interconnect, PCI) BUS, a PCI-Express (PCI-X) BUS, a serial advanced technology attachment (Serial Advanced Technology Attachment, SATA) BUS, a video electronics standards association local (Video Electronics Standards Association Local Bus, VLB) BUS, or other suitable BUS, or a combination of two or more of these. Bus 540 may include one or more buses, where appropriate.
The present disclosure also provides a computer-readable storage medium, which may store a computer program that, when executed by a processor, causes the processor to implement the data transmission method provided by the embodiments of the present disclosure.
The storage medium may, for example, include a memory 520 of computer program instructions executable by the processor 510 of the electronic device to perform the data transmission methods provided by the embodiments of the present disclosure. Alternatively, the storage medium may be a non-transitory computer readable storage medium, for example, a ROM, a random access memory (Random Access Memory, RAM), a Compact disc-read only memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, and the like.
The foregoing is merely a specific embodiment of the disclosure to enable one skilled in the art to understand or practice the disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown and described herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (10)

1. The data transmission method is characterized by being applied to a cloud server node and comprising the following steps:
acquiring a message of an application program, wherein the application program is deployed in a container of the cloud server node;
generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables;
and transmitting the dynamic flow table and the message to a data processing unit engine accelerator based on a data processing unit driver program so that the data processing unit engine accelerator executes forwarding operation on the message.
2. The method of claim 1, wherein prior to the generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables, the method further comprises:
determining network port addresses of the container and the data processing unit based on a data processing unit control plane component in the data processing unit;
and sending the message to the data processing unit based on the network port address.
3. The method of claim 1, wherein generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables comprises:
the message is matched with the plurality of preset static flow tables based on a data processing unit data surface component in the data processing unit, and a target static flow table corresponding to the message is determined;
and generating a dynamic flow table corresponding to the message based on the target static flow table.
4. The method of claim 3, wherein prior to said matching said message with said plurality of preset static flow tables based on a data processing unit data plane component in said data processing unit, said method further comprises:
and acquiring the preset static flow tables from a cluster main controller component based on a software defined network controller in the data processing unit, and issuing the preset static flow tables to a data surface component of the data processing unit.
5. The method of claim 1, wherein the data processing unit accesses the cloud server node through a bus interface.
6. The method according to claim 1, wherein the method further comprises:
after a message of an application program is acquired, comparing the message with the dynamic flow table, and determining whether a data flow packet in the message is a data flow first packet corresponding to the application program;
and when the data flow packet in the message is determined to be a non-data flow first packet, the message is issued to the data processing unit engine accelerator.
7. The method of claim 1, wherein the cloud server node has a node container network interface disposed thereon, the method further comprising:
the cloud server node receives a container creation instruction sent by a cluster master controller component based on the node container network interface;
a new container is created based on the container creation instruction.
8. A data transmission apparatus, comprising:
the message acquisition module is used for acquiring a message of an application program, wherein the application program is deployed in a container of the cloud server node;
the flow table generating module is used for generating a dynamic flow table corresponding to the message based on the data processing unit and a plurality of preset static flow tables;
and the data unloading module is used for transmitting the dynamic flow table and the message to a data processing unit engine accelerator based on a data processing unit driver program so that the data processing unit engine accelerator executes forwarding operation on the message.
9. An electronic device, comprising:
a processor;
a memory for storing executable instructions;
wherein the processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the data transmission method of any of the preceding claims 1-7.
10. A computer readable storage medium, characterized in that the storage medium stores a computer program which, when executed by a processor, causes the processor to implement the data transmission method of any of the preceding claims 1-7.
CN202310994752.3A 2023-08-08 2023-08-08 Data transmission method, device, equipment and medium Pending CN116886789A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310994752.3A CN116886789A (en) 2023-08-08 2023-08-08 Data transmission method, device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310994752.3A CN116886789A (en) 2023-08-08 2023-08-08 Data transmission method, device, equipment and medium

Publications (1)

Publication Number Publication Date
CN116886789A true CN116886789A (en) 2023-10-13

Family

ID=88269988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310994752.3A Pending CN116886789A (en) 2023-08-08 2023-08-08 Data transmission method, device, equipment and medium

Country Status (1)

Country Link
CN (1) CN116886789A (en)

Similar Documents

Publication Publication Date Title
US11539626B2 (en) Method, apparatus, and system for load balancing of service chain
US9973390B2 (en) Method of discovering network topology
CN110635933B (en) Apparatus, control method, and recording medium for managing network of SDN
US10461958B2 (en) Packet transmission method and apparatus
US20130346585A1 (en) Network system, and policy route setting method
RU2610250C2 (en) Transmission node and buffer status reporting method
KR20220039814A (en) Service flow segmentation method, apparatus, and system, electronic device, and storage medium
US20120140640A1 (en) Apparatus and method for dynamically processing packets having various characteristics
US20240022501A1 (en) Data Packet Sending Method and Device
US20200244623A1 (en) Data transmission method, server and offload card
CN116886789A (en) Data transmission method, device, equipment and medium
CN112019492A (en) Access control method, device and storage medium
CN116016448A (en) Service network access method, device, equipment and storage medium
CN113676471B (en) Cross-node communication method, system, medium and electronic device based on container cloud platform
CN111193805B (en) Resource discovery method and device
CN114268591B (en) Data distribution method and device
US20170070430A1 (en) Network-on-chip flit transmission method and apparatus
CN115065637A (en) Method and device for transmitting computing power resource information and electronic equipment
WO2022111173A1 (en) Network slice access method, device, and system, and storage medium
JP6256471B2 (en) COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM
CN114785753B (en) Domain name resolution method, system, medium and electronic equipment of container cloud platform
CN117376061A (en) Service access method, device, electronic equipment and storage medium
CN117997899A (en) Data transmission method, device, electronic equipment and storage medium
CN111726372B (en) Thermal migration method, device, equipment and storage medium
CN117729156A (en) Message forwarding method and device, electronic equipment and storage medium

Legal Events

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