WO2024002123A1 - 一种基于cxl协议的网络连接方法及系统 - Google Patents

一种基于cxl协议的网络连接方法及系统 Download PDF

Info

Publication number
WO2024002123A1
WO2024002123A1 PCT/CN2023/103035 CN2023103035W WO2024002123A1 WO 2024002123 A1 WO2024002123 A1 WO 2024002123A1 CN 2023103035 W CN2023103035 W CN 2023103035W WO 2024002123 A1 WO2024002123 A1 WO 2024002123A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
data
host
cxl
network card
Prior art date
Application number
PCT/CN2023/103035
Other languages
English (en)
French (fr)
Inventor
郝沁汾
李晓霖
Original Assignee
无锡芯光互连技术研究院有限公司
芯光智网集成电路设计(无锡)有限公司
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 无锡芯光互连技术研究院有限公司, 芯光智网集成电路设计(无锡)有限公司 filed Critical 无锡芯光互连技术研究院有限公司
Publication of WO2024002123A1 publication Critical patent/WO2024002123A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • 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]

Definitions

  • the present invention relates to the field of network communication technology, and more specifically, to a network connection method and system based on the CXL protocol.
  • the network card is a network component that works at the second link layer. It is the interface that connects the computer and the transmission medium in the LAN. It not only realizes the physical connection and electrical signal matching with the LAN transmission medium, but also involves the sending and receiving of frames, Frame encapsulation and decapsulation, media access control, data encoding and decoding, and data caching functions, etc.
  • the network card obtains network data from the network through the transceiver, and restores the network data into data according to the network card's own functions. For example, a traditional network card frames the network data received by the physical layer and removes the Ethernet frame header after verification to obtain the final data packet.
  • the network card copies the received data packets to the host-side memory through the PCIE DMA mechanism.
  • the network card triggers a PCIE interrupt to notify the operating system that the data packet has been received.
  • the operating system's interrupt service function reads the data packet from the memory according to the interrupt number and calls the corresponding protocol stack for processing, and finally copies the data to the user program space.
  • the sending process is the opposite:
  • the user program processes the data to be sent through the corresponding protocol stack, and the resulting data packet is stored in the host-side memory.
  • the host notifies the network card of the data packet sent through the PCIE interface, such as the host-side memory address, length, etc.
  • the network card uses the PCIE DMA mechanism to retrieve and send data packets from the corresponding host-side memory.
  • the network card converts the sent data into physical layer network data through its own functions and sends it to the network. For example, a traditional network card adds an Ethernet header to the header of the data packet sent, and adds an FCS checksum to the tail, encapsulates it into a network message, and finally converts it into network data and sends it to the network.
  • the network card occupies a certain amount of memory bandwidth. However, due to the low network bandwidth, the memory bandwidth is only occupied by a small proportion of the network card.
  • network bandwidth has reached the 400Gbps Ethernet mark in 2020, and is developing towards faster 800Gbps or even 1.6Tbps.
  • storage technology was developing slowly, and the memory wall problem was still unresolved. Therefore, the growing gap between network bandwidth and memory bandwidth causes the network card to occupy more memory bandwidth. In this case, the memory bandwidth available to user programs running on the host is reduced, further exacerbating the memory wall problem.
  • the existing technology has a PCIE real-time network card based on an FPGA module, including: a ZYNQ module, including an FPGA chip; at least one PHY chip connected to the ZYNQ module, and the PHY chip communicates with the ZYNQ module through MII and/or RMII interfaces.
  • the PHY chip is connected to an external interface;
  • the PCIE bus is connected to the ZYNQ module and is used to transfer the received data to the ZYNQ module for processing.
  • the ZYNQ module includes an FPGA chip with an ARM core; the FPGA chip is connected to the host memory through the PCIE bus, and the FPGA chip and the host memory interact with each other through the PCIE bus.
  • the present invention provides a network connection method and system based on the CXL protocol, which has the characteristics of remarkable effects.
  • a network connection method based on the CXL protocol including: setting the host-side CXL_IP module in the host, and setting the network card-side CXL_IP module and network card memory in the network card; the host-side CXL_IP module and the network card-side CXL_IP module are connected through the CXL protocol, and the network card side CXL_IP module and network card memory connection;
  • the present invention solves the problem of excessively high memory bandwidth occupied by the prior art, and has remarkable effects.
  • the network based on the PCIE protocol is also reconstructed to obtain a network application programming interface based on the CXL protocol.
  • the interface of the network application program is called a network API; the host-side CXL_IP module and the network card-side CXL_IP module are both based on Network API of CXL protocol for data transmission.
  • the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory, and the host-side data in the network card memory is read and sent to the network.
  • the specific process is:
  • S101 Send the host-side data to the network card memory through the network API based on the CXL protocol; the host-side data includes the data to be sent and its control information;
  • the host inputs the command to send data into the network card through the network API based on the CXL protocol;
  • the network card reads the data to be sent and its control information in the memory of the network card according to the command to send data, and converts the read data to be sent into corresponding data packets according to its control information;
  • the network card converts the data packet into network data and uploads it to the network.
  • the network data is received and saved into the network card memory, and the network data in the network card memory is sent to the host-side CXL_IP module through the network card-side CXL_IP module, thereby sending the network data to the host.
  • the specific process is:
  • the network card unpacks the data packet, obtains the data payload, and saves it to the network card memory
  • the host queries the network card whether it has received the data packet through the network API based on the CXL protocol;
  • the network card determines whether the data packet is received in the network card memory. If it is received, the network card notifies the host that the data packet has been received through the network API based on the CXL protocol, and executes step S205; if not, it returns to step S201 to receive the network again. decoupling data;
  • the host reads data from the network card memory through the network API based on the CXL protocol, and receives the data payload sent from the network card.
  • the network data is binary stream data.
  • step S203 if the host uses the interrupt mechanism, the following steps are used to receive the data payload:
  • the network card triggers a host interrupt without querying the host, obtains the interrupt number, and notifies the host that the data packet has been received through the network API based on the CXL protocol;
  • the host reads data from the network card memory through the network API based on the CXL protocol according to the interrupt number, and receives the data payload sent from the network card.
  • a network connection system based on the CXL protocol including a host and a network card;
  • the host includes a host-side CXL_IP module for sending and receiving data;
  • the network card includes a network card-side CXL_IP module for sending and receiving data and a network card memory for storing host-side data and network data;
  • the host-side CXL_IP module and the network card-side CXL_IP module are connected through the CXL protocol; the network card-side CXL_IP module is connected to the network card memory; the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory and read The host-side data in the network card memory is sent to the network; the network data is received and saved in the network card memory, and the network data in the network card memory is sent to the host-side CXL_IP module through the network card-side CXL_IP module, thereby sending the network data to the host.
  • the network card also includes a network offloading unit for encapsulating data packets into network data and decapsulating network data into data payloads, a transceiver for receiving and sending network data; the network card side CXL_IP module, and network card memory. , network offloading unit, and transceiver are connected in sequence;
  • the network card side CXL_IP module receives the host side data from the host side CXL_IP module.
  • the host side data includes the data to be sent and its control information, and saves the data to be sent and its control information into the network card memory;
  • the network card side CXL_IP module After receiving the command to send data, the network offload unit reads the network card memory and converts the data to be sent in the network card memory into data packets according to its control information. Finally, the data packets are converted into network data, and the network data is transmitted through the transceiver. Upload to the Internet;
  • the network offloading unit converts the network data into data packets, unpacks the data packets, obtains the data payload, and saves it to the network card memory; the network card side CXL_IP module notifies the host that the network data has been received After reading the data, read the data payload in the network card memory and send the data payload to the host-side CXL_IP module.
  • the host also includes a host memory module for storing data and a CPU for controlling the sending and receiving of data; the host memory module, CPU, and host-side CXL_IP module are connected in sequence;
  • the CPU controls the host memory module to send the host-side data to the network card through the host-side CXL_IP module, and sends the command to send data to the network card through the host-side CXL_IP module;
  • the CPU When receiving network data from the network, the CPU queries or receives the network data storage situation of the network card through the host-side CXL_IP module, receives the data load of the network data according to the data storage situation, and stores the data load in the host memory module.
  • the network card is a network card without an operating system
  • the network card memory is DRAM memory.
  • the present invention realizes network data transmission based on the CXL protocol and reduces the occupancy rate of the host-side memory bandwidth by the network card.
  • the present invention also sets The network card memory stores the sent and received data packets in the memory on the network card, further reducing the network card's occupation rate of the host-side memory bandwidth; thus, the present invention solves the problem of the existing technology occupying too high memory bandwidth, and has Features with remarkable effects.
  • Figure 1 is a schematic flow chart of the network connection method adopted in the present invention.
  • Figure 2 is a schematic diagram of the network connection system used in the present invention.
  • FIG. 3 is a schematic diagram of data transmission of the present invention in Embodiment 4.
  • a network connection method based on the CXL protocol includes: setting the host-side CXL_IP module in the host, and setting the network card-side CXL_IP module and network card memory in the network card; the host-side CXL_IP module and the network card-side CXL_IP module pass CXL protocol connection, network card side CXL_IP module and network card memory connection;
  • the network card-side CXL_IP module is connected to the network card-side CXL_IP module by directly inserting into the PCIE slot.
  • the network based on the PCIE protocol is also reconstructed to obtain a network application programming interface based on the CXL protocol.
  • the interface of the network application program is called a network API; the host-side CXL_IP module and the network card-side CXL_IP Modules all use network API based on CXL protocol for data transmission.
  • CXL Compute Express Link
  • Compute Express Link is an open industrial standard used for high-bandwidth and low-latency device interconnection. It can be used to connect CPU and Accelerator, Memory Buffer and Smart NIC and other types of devices. Used in scenarios such as AI Machine Learning and high-performance computing.
  • the CXL_IP module used in this embodiment can use the CXL_IP core provided by Intel or plda.
  • a network connection method based on the CXL protocol includes: setting the host-side CXL_IP module in the host, and setting the network card-side CXL_IP module and network card memory in the network card; the host-side CXL_IP module and the network card-side CXL_IP module pass CXL protocol connection, network card side CXL_IP module and network card memory connection;
  • the network based on the PCIE protocol is also reconstructed to obtain a network application programming interface based on the CXL protocol.
  • the interface of the network application program is called a network API; the host-side CXL_IP module and the network card-side CXL_IP Modules all use network API based on CXL protocol for data transmission.
  • the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory, and the host-side data in the network card memory is read and sent to the network.
  • the specific process is:
  • S101 Send the host-side data to the network card memory through the network API based on the CXL protocol; the host-side data includes the data to be sent and its control information;
  • the host inputs the command to send data into the network card through the network API based on the CXL protocol;
  • the network card reads the data to be sent and its control information in the memory of the network card according to the command to send data, and converts the read data to be sent into corresponding data packets according to its control information;
  • the network card converts the data packet into network data and uploads it to the network.
  • a network connection method based on the CXL protocol includes: setting the host-side CXL_IP module in the host, and setting the network card-side CXL_IP module and network card memory in the network card; the host-side CXL_IP module and the network card-side CXL_IP module pass CXL protocol connection, network card side CXL_IP module and network card memory connection;
  • the network based on the PCIE protocol is also reconstructed to obtain a network application programming interface based on the CXL protocol.
  • the interface of the network application program is called a network API; the host-side CXL_IP module and the network card-side CXL_IP Modules all use network API based on CXL protocol for data transmission.
  • the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory, and the host-side data in the network card memory is read and sent to the network.
  • the specific process is:
  • S101 Send the host-side data to the network card memory through the network API based on the CXL protocol; the host-side data includes the data to be sent and its control information;
  • the host inputs the command to send data into the network card through the network API based on the CXL protocol;
  • the network card reads the host-side data and its control information according to the command to send data, and converts the read data to be sent into corresponding data packets according to its control information;
  • the network card converts the data packet into network data and uploads it to the network.
  • network data is received and saved in the network card memory, and the network data in the network card memory is sent to the host-side CXL_IP module through the network card-side CXL_IP module, thereby sending the network data to the host.
  • the specific process is:
  • the network card unpacks the data packet, obtains the data payload, and saves it to the network card memory
  • the host queries the network card whether it has received the data packet through the network API based on the CXL protocol;
  • the network card determines whether the data packet is received in the network card memory. If it is received, the network card notifies the host that the data packet has been received through the network API based on the CXL protocol, and executes step S205; if not, it returns to step S201 to receive the network again. decoupling data;
  • the host reads data from the network card memory through the network API based on the CXL protocol, and receives the data payload sent from the network card.
  • the network data is binary stream data.
  • a network connection method based on the CXL protocol includes: setting the host-side CXL_IP module in the host, and setting the network card-side CXL_IP module and network card memory in the network card; the host-side CXL_IP The module and the network card-side CXL_IP module are connected through the CXL protocol, and the network card-side CXL_IP module is connected to the network card memory;
  • the network based on the PCIE protocol is also reconstructed to obtain a network application programming interface based on the CXL protocol.
  • the interface of the network application program is called a network API; the host-side CXL_IP module and the network card-side CXL_IP Modules all use network API based on CXL protocol for data transmission.
  • the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory, and the host-side data in the network card memory is read and sent to the network.
  • the specific process is:
  • S101 Send the host-side data to the network card memory through the network API based on the CXL protocol; the host-side data includes the data to be sent and its control information;
  • the host inputs the command to send data into the network card through the network API based on the CXL protocol;
  • the network card reads the host-side data and its control information according to the command to send data, and converts the read data to be sent into corresponding data packets according to its control information;
  • the network card converts the data packet into network data and uploads it to the network.
  • network data is received and saved in the network card memory, and the network data in the network card memory is sent to the host-side CXL_IP module through the network card-side CXL_IP module, thereby sending the network data to the host.
  • the specific process is:
  • the network card unpacks the data packet, obtains the data payload, and saves it to the network card memory
  • the host queries the network card whether it has received the data packet through the network API based on the CXL protocol;
  • the network card determines whether the data packet is received in the network card memory. If it is received, the network card notifies the host that the data packet has been received through the network API based on the CXL protocol, and executes step S205; if not, it returns to step S201 to receive the network again. decoupling data;
  • the host reads data from the network card memory through the network API based on the CXL protocol, and receives the data payload sent from the network card.
  • the network data is binary stream data.
  • the external device when the external device is ready to receive more data, it can send an interrupt request signal to the processor. This is when the processor responds, suspends the processing of the current program, and switches to the program that serves the specific I/O device. This program is called an interrupt handler. After the service response to the device is completed, the processor resumes its original execution.
  • step S203 if the host uses the interrupt mechanism, the following steps are used to receive the data payload:
  • the network card triggers a host interrupt without querying the host, obtains the interrupt number, and notifies the host that the data packet has been received through the network API based on the CXL protocol;
  • the host reads data from the network card memory through the network API based on the CXL protocol according to the interrupt number, and receives the data payload sent from the network card.
  • the CXL protocol includes three sub-protocols: CXL.io, CXL.cache, and CXL.memory, where CXL.io is an IO type, similar to traditional PCIe; CXL.cache allows the device to access main memory and cache; CXL .memory allows the CPU to access the device's memory.
  • the operating system controls the data packet to be transmitted between the host side and the network card side through CXL_IP based on the CXL_IP network API; when there is no interrupt processing, the host and the network card transmit CXL.memory through the network
  • the API transmits data in the network card memory and the host memory; when the interrupt is processed, the network card reports the data situation by actively sending CXL.io to the host, and then transmits data in the network card memory and the host memory through the network API; the data packet passes through the host end
  • the CXL_IP module on the network card side is accessed in the network card memory; the network card memory transmits data to the transceiver through the network offload unit through the RDMA protocol.
  • the present invention realizes network data transmission based on the CXL protocol and reduces the occupancy rate of the host-side memory bandwidth by the network card.
  • the present invention also sets The network card memory stores the sent and received data packets in the memory on the network card, further reducing the network card's occupation rate of the host-side memory bandwidth; thus, the present invention solves the problem of the existing technology occupying too high memory bandwidth, and has Features with remarkable effects.
  • a network connection system based on the CXL protocol includes a host and a network card
  • the host includes a host-side CXL_IP module for sending and receiving data;
  • the network card includes a network card-side CXL_IP module for sending and receiving data and a network card memory for storing host-side data and network data;
  • the host-side CXL_IP module and the network card-side CXL_IP module are connected through the CXL protocol; the network card-side CXL_IP module is connected to the network card memory; the host-side data is sent to the network card-side CXL_IP module through the host-side CXL_IP module; the host-side data is stored in the network card memory and read The host-side data in the network card memory is sent to the network; the network data is received and saved in the network card memory, and the network data in the network card memory is sent to the host-side CXL_IP module through the network card-side CXL_IP module, thereby sending the network data to the host.
  • the network card also includes a network offloading unit for encapsulating data packets into network data and decapsulating network data into data payloads, a transceiver for receiving and sending network data; the network card side CXL_IP The module, network card memory, network offload unit, and transceiver are connected in sequence;
  • the network card side CXL_IP module receives the host side data from the host side CXL_IP module.
  • the host side data includes the data to be sent and its control information, and saves the data to be sent and its control information into the network card memory;
  • the network card side CXL_IP module After receiving the command to send data, the network offload unit reads the network card memory and converts the data to be sent in the network card memory into data packets according to its control information. Finally, the data packets are converted into network data, and the network data is transmitted through the transceiver. Upload to the Internet;
  • the network offloading unit converts the network data into data packets, unpacks the data packets, obtains the data payload, and saves it to the network card memory; the network card side CXL_IP module notifies the host that the network data has been received After reading the data, read the data payload in the network card memory and send the data payload to the host-side CXL_IP module.
  • the host also includes a host memory module for storing data and a CPU for controlling the sending and receiving of data; the host memory module, CPU, and host-side CXL_IP module are connected in sequence;
  • the CPU controls the host memory module to send the host-side data to the network card through the host-side CXL_IP module, and sends the command to send data to the network card through the host-side CXL_IP module;
  • the CPU When receiving network data from the network, the CPU queries or receives the network data storage situation of the network card through the host-side CXL_IP module, receives the data load of the network data according to the data storage situation, and stores the data load in the host memory module.
  • the network card is a network card without an operating system
  • the network card memory is DRAM memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及网络通信技术领域,提出了一种基于CXL协议的网络连接方法及系统,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。本发明解决了现有技术占用内存带宽过高的问题,且具有效果显著的特点。

Description

一种基于CXL协议的网络连接方法及系统 技术领域
本发明涉及网络通信技术领域,更具体的,涉及一种基于CXL协议的网络连接方法及系统。
背景技术
网卡是工作在第二层链路层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据缓存的功能等。
目前常见的网卡总线接口类型为PCIE和USB。以基于PCIE接口的网卡为例,接收网络数据包的流程如下:
网卡通过收发器从网络中得到网络数据,并根据网卡自身功能,将网络数据恢复成数据。如传统网卡对物理层接收到的网络数据成帧处理,校验无误之后去掉以太网帧头,得到最终的数据包。
网卡通过PCIE DMA机制,将接收到的数据包复制到主机侧内存中。
网卡触发PCIE中断,通知操作系统已接收到数据包。
操作系统的中断服务函数根据中断号,从内存读取数据包并调用对应协议栈进行处理,最后将数据复制到用户程序空间。
发送过程则与之相反:
用户程序通过对应协议栈,对准备发送的数据进行处理,得到的数据包保存在主机侧内存中。
主机通过PCIE接口,通知网卡发送数据包的信息,如主机侧内存地址,长度等。
网卡通过PCIE DMA机制,从对应的主机侧内存中取出发送数据包。
网卡通过自身功能,将发送数据转化成物理层的网络数据并发送到网络中。如传统网卡在发送数据包头部加上以太网头部,尾部加上FCS校验等,封装成网络报文,最终转化成网络数据发送到网络中。
无论是发送数据还是接收数据的流程中,网卡都占用了一定的内存带宽,然而由于网络带宽较低,因此内存带宽只被网卡占用较小的比例。
随着网络技术的发展,网络带宽在2020年已经迈向400Gbps以太网大关,并正向着更快的800Gbps,甚至1.6Tbps发展。而此时存储技术发展缓慢,内存墙问题依然没得到解决。因此网络带宽与内存带宽日益增大的差距,导致了网卡需要占用更多的内存带宽。在这种情况下,主机上运行的用户程序能够使用的内存带宽被降低,进一步加重了内存墙的问题。
现有技术有一种基于FPGA模块的PCIE实时网卡,包括:ZYNQ模块,包括FPGA芯片;与所述ZYNQ模块连接的至少一个PHY芯片,所述PHY芯片通过MII和\或RMII接口与ZYNQ模块进行数据交互,所述PHY芯片与外接接口连接;PCIE总线,与所述ZYNQ模块连接,用于将接收的数据传递至所述ZYNQ模块处理。所述ZYNQ模块包括带ARM核的FPGA芯片;所述FPGA芯片通过所述PCIE总线与主机内存相连,所述FPGA芯片与所述主机内存通过所述PCIE总线进行数据交互。
然而现有技术存在通过网络进行数据传输时占用内存带宽过高的问题,因此如何发明一种占用内存带宽低的新型网络连接方法,是本技术领域亟需解决的问题。
发明内容
本发明为了解决现有技术占用内存带宽过高的问题,提供了一种基于CXL协议的网络连接方法及系统,其具有效果显著的特点。
为实现上述本发明目的,采用的技术方案如下:
一种基于CXL协议的网络连接方法,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
上述方案中,通过在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块,实现了基于CXL协议的网络数据传输,降低了网卡对主机侧内存带宽的占用率,同时本发明还通过设置网卡内存,将发送与接收的数据包存储 在网卡上的内存中,进一步降低了网卡对主机侧内存带宽的占用率;由此本发明解决了现有技术占用内存带宽过高的问题,且具有效果显著的特点。
优选的,还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
进一步的,通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络,具体流程为:
S101.将主机端数据通过基于CXL协议的网络API发送到网卡内存中;所述的主机端数据包括待发送数据及其控制信息;
S102.主机通过基于CXL协议的网络API将发送数据的命令输入网卡;
S103.网卡根据发送数据的命令读取网卡内存中的待发送数据及其控制信息,并将读取出的待发送数据根据其控制信息转化成对应的数据包;
S104.网卡将数据包转换成网络数据并上传到网络。
更进一步的,接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机,具体流程为:
S201.通过网卡从网络下载网络数据,并将网络数据转换为数据包;
S202.网卡将数据包进行解包,得到数据载荷,并保存到网卡内存中;
S203.主机通过基于CXL协议的网络API查询网卡是否接收到数据包;
S204.网卡判断网卡内存中是否受到数据,若收到,则网卡通过基于CXL协议的网络API通知主机已接收到数据包,并执行步骤S205;若没有受到,则回到步骤S201重新接收网路解耦数据;
S205.主机通过基于CXL协议的网络API从网卡内存中读取数据,并接收从网卡发送的数据载荷。
更进一步的,所述的网络数据为二进制流数据。
更进一步的,步骤S203中,若主机使用中断机制,则采用以下步骤接收数据载荷:
A1.网卡不经过主机查询,触发主机中断,得到中断号,并通过基于CXL协议的网络API通知主机已接收到数据包;
A2.主机根据中断号,通过基于CXL协议的网络API从网卡内存读取数据,并接收从网卡发送的数据载荷。
一种基于CXL协议的网络连接系统,包括主机和网卡;
所述的主机包括用于收发数据的主机端CXL_IP模块;
所述的网卡包括用于收发数据的网卡端CXL_IP模块和用于存储主机端数据和网络数据的网卡内存;
主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接;网卡端CXL_IP模块和网卡内存连接;通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
优选的,所述的网卡还包括用于将数据包封装为网络数据和将网络数据解封装为数据载荷的网络卸载单元、用于接收和发送网络数据的收发器;网卡端CXL_IP模块、网卡内存、网络卸载单元、收发器依次连接;
网卡端CXL_IP模块接收到来自主机端CXL_IP模块的主机端数据,所述的主机端数据包括待发送数据及其控制信息,并将待发送数据及其控制信息保存到网卡内存中;网卡端CXL_IP模块收到发送数据的命令后,由网络卸载单元读取网卡内存,并将网卡内存中的待发送数据根据其控制信息转换为数据包,最后将数据包转换为网络数据,通过收发器将网络数据上传到网络;
收发器从网络下载网络数据后,由网络卸载单元将网络数据转换为数据包,并将数据包进行解包,得到数据载荷,并保存到网卡内存中;网卡端CXL_IP模块通知主机已接收到网络数据后,读取网卡内存中的数据载荷,并将数据载荷发送给主机端CXL_IP模块。
进一步的,所述的主机还包括用于存储数据的主机内存模块和用于控制数据的发送与接收的CPU;主机内存模块、CPU、主机端CXL_IP模块依次连接;
向网络发送主机端数据时,CPU控制主机内存模块将主机端数据通过主机端CXL_IP模块发送到网卡,并通过主机端CXL_IP模块将发送数据的命令发送到网卡;
从网络接收网络数据时,CPU通过主机端CXL_IP模块查询或接收网卡的网络数据存储情况,根据数据存储情况接收网络数据的数据荷载,并将数据荷载储存 在主机内存模块中。
更进一步的,所述的网卡为无操作系统网卡,网卡内存为DRAM内存。
本发明的有益效果如下:
本发明通过在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块,实现了基于CXL协议的网络数据传输,降低了网卡对主机侧内存带宽的占用率,同时本发明还通过设置网卡内存,将发送与接收的数据包存储在网卡上的内存中,进一步降低了网卡对主机侧内存带宽的占用率;由此本发明解决了现有技术占用内存带宽过高的问题,且具有效果显著的特点。
附图说明
图1是本发明采用的网络连接方法的流程示意图。
图2是本发明采用的网络连接系统示意图。
图3是实施例4中本发明的数据传输示意图。
具体实施方式
下面结合附图和具体实施方式对本发明做详细描述。
实施例1
如图1所示,一种基于CXL协议的网络连接方法,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
本实施例中,由于CXL协议兼容PCIE协议,网卡端CXL_IP模块通过直接插入PCIE插槽与网卡端CXL_IP模块连接。
通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
在一个具体实施例中,还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
本实施例中,CXL全称是Compute Express Link,是一种开放工业标准,用于高带宽低延迟的设备互联。它可以用来连接CPU和Accelerator,Memory  Buffer以及Smart NIC等类型的设备。用于AI Machine Learning,高性能计算等场景。
本实施例所采用的的CXL_IP模块可采用intel或plda提供的CXL_IP核。
实施例2
如图1所示,一种基于CXL协议的网络连接方法,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
在一个具体实施例中,还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
在一个具体实施例中,通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络,具体流程为:
S101.将主机端数据通过基于CXL协议的网络API发送到网卡内存中;所述的主机端数据包括待发送数据及其控制信息;
S102.主机通过基于CXL协议的网络API将发送数据的命令输入网卡;
S103.网卡根据发送数据的命令读取网卡内存中的待发送数据及其控制信息,并将读取出的待发送数据根据其控制信息转化成对应的数据包;
S104.网卡将数据包转换成网络数据并上传到网络。
实施例3
如图1所示,一种基于CXL协议的网络连接方法,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数 据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
在一个具体实施例中,还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
在一个具体实施例中,通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络,具体流程为:
S101.将主机端数据通过基于CXL协议的网络API发送到网卡内存中;所述的主机端数据包括待发送数据及其控制信息;
S102.主机通过基于CXL协议的网络API将发送数据的命令输入网卡;
S103.网卡根据发送数据的命令读取主机端数据及其控制信息,并将读取出的待发送数据根据其控制信息转化成对应的数据包;
S104.网卡将数据包转换成网络数据并上传到网络。
在一个具体实施例中,接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机,具体流程为:
S201.通过网卡从网络下载网络数据,并将网络数据转换为数据包;
S202.网卡将数据包进行解包,得到数据载荷,并保存到网卡内存中;
S203.主机通过基于CXL协议的网络API查询网卡是否接收到数据包;
S204.网卡判断网卡内存中是否受到数据,若收到,则网卡通过基于CXL协议的网络API通知主机已接收到数据包,并执行步骤S205;若没有受到,则回到步骤S201重新接收网路解耦数据;
S205.主机通过基于CXL协议的网络API从网卡内存中读取数据,并接收从网卡发送的数据载荷。
在一个具体实施例中,所述的网络数据为二进制流数据。
实施例4
如图1所示,一种基于CXL协议的网络连接方法,包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP 模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
在一个具体实施例中,还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
在一个具体实施例中,通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络,具体流程为:
S101.将主机端数据通过基于CXL协议的网络API发送到网卡内存中;所述的主机端数据包括待发送数据及其控制信息;
S102.主机通过基于CXL协议的网络API将发送数据的命令输入网卡;
S103.网卡根据发送数据的命令读取主机端数据及其控制信息,并将读取出的待发送数据根据其控制信息转化成对应的数据包;
S104.网卡将数据包转换成网络数据并上传到网络。
在一个具体实施例中,接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机,具体流程为:
S201.通过网卡从网络下载网络数据,并将网络数据转换为数据包;
S202.网卡将数据包进行解包,得到数据载荷,并保存到网卡内存中;
S203.主机通过基于CXL协议的网络API查询网卡是否接收到数据包;
S204.网卡判断网卡内存中是否受到数据,若收到,则网卡通过基于CXL协议的网络API通知主机已接收到数据包,并执行步骤S205;若没有受到,则回到步骤S201重新接收网路解耦数据;
S205.主机通过基于CXL协议的网络API从网卡内存中读取数据,并接收从网卡发送的数据载荷。
在一个具体实施例中,所述的网络数据为二进制流数据。
本实施例中,当外部设备准备接收更多数据时,可以给处理器发送一个中断请求信号。这是处理器会做出响应,暂停当前程序的处理,转去处理服务于特定I/O设备的程序,这个程序称为中断处理程序。在对该设备的服务响应完成后,处理器恢复原先的执行。
在一个具体实施例中,步骤S203中,若主机使用中断机制,则采用以下步骤接收数据载荷:
A1.网卡不经过主机查询,触发主机中断,得到中断号,并通过基于CXL协议的网络API通知主机已接收到数据包;
A2.主机根据中断号,通过基于CXL协议的网络API从网卡内存读取数据,并接收从网卡发送的数据载荷。
本实施例中,CXL协议包括三个子协议:CXL.io、CXL.cache、CXL.memory,其中是CXL.io为IO类型,和传统PCIe类似;CXL.cache允许设备访问主存和cache;CXL.memory允许CPU访问设备的内存。
如图3所示,本实施例中,由操作系统控制数据包通过基于CXL_IP网络API在主机端和网卡端的CXL_IP之间进行传输;当没有中断处理时,主机和网卡通过传输CXL.memory通过网络API在网卡内存和主机内存中进行数据传输;当中断处理时,网卡通过主动发送CXL.io到主机汇报数据情况,然后通过网络API在网卡内存和主机内存中进行数据传输;数据包经主机端和网卡端的CXL_IP模块在网卡内存进行存取;网卡内存通过RDMA协议经过网络卸载单元对收发器进行数据传输。
本发明通过在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块,实现了基于CXL协议的网络数据传输,降低了网卡对主机侧内存带宽的占用率,同时本发明还通过设置网卡内存,将发送与接收的数据包存储在网卡上的内存中,进一步降低了网卡对主机侧内存带宽的占用率;由此本发明解决了现有技术占用内存带宽过高的问题,且具有效果显著的特点。
实施例5
如图2所示,一种基于CXL协议的网络连接系统,包括主机和网卡;
所述的主机包括用于收发数据的主机端CXL_IP模块;
所述的网卡包括用于收发数据的网卡端CXL_IP模块和用于存储主机端数据和网络数据的网卡内存;
主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接;网卡端CXL_IP模块和网卡内存连接;通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
在一个具体实施例中,所述的网卡还包括用于将数据包封装为网络数据和将网络数据解封装为数据载荷的网络卸载单元、用于接收和发送网络数据的收发器;网卡端CXL_IP模块、网卡内存、网络卸载单元、收发器依次连接;
网卡端CXL_IP模块接收到来自主机端CXL_IP模块的主机端数据,所述的主机端数据包括待发送数据及其控制信息,并将待发送数据及其控制信息保存到网卡内存中;网卡端CXL_IP模块收到发送数据的命令后,由网络卸载单元读取网卡内存,并将网卡内存中的待发送数据根据其控制信息转换为数据包,最后将数据包转换为网络数据,通过收发器将网络数据上传到网络;
收发器从网络下载网络数据后,由网络卸载单元将网络数据转换为数据包,并将数据包进行解包,得到数据载荷,并保存到网卡内存中;网卡端CXL_IP模块通知主机已接收到网络数据后,读取网卡内存中的数据载荷,并将数据载荷发送给主机端CXL_IP模块。
在一个具体实施例中,所述的主机还包括用于存储数据的主机内存模块和用于控制数据的发送与接收的CPU;主机内存模块、CPU、主机端CXL_IP模块依次连接;
向网络发送主机端数据时,CPU控制主机内存模块将主机端数据通过主机端CXL_IP模块发送到网卡,并通过主机端CXL_IP模块将发送数据的命令发送到网卡;
从网络接收网络数据时,CPU通过主机端CXL_IP模块查询或接收网卡的网络数据存储情况,根据数据存储情况接收网络数据的数据荷载,并将数据荷载储存在主机内存模块中。
在一个具体实施例中,所述的网卡为无操作系统网卡,网卡内存为DRAM内存。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。凡在本发明的精神和原则之内所作的任何修改、 等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

  1. 一种基于CXL协议的网络连接方法,其特征在于:包括:在主机内设置主机端CXL_IP模块,并在网卡内设置网卡端CXL_IP模块和网卡内存;主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接,网卡端CXL_IP模块和网卡内存连接;
    通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;
    接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
  2. 根据权利要求1所述的基于CXL协议的网络连接方法,其特征在于:还重构了基于PCIE协议的网络,得到基于CXL协议的网络应用程序编程接口,将网络应用程序的接口称为网络API;所述的主机端CXL_IP模块和网卡端CXL_IP模块均使用基于CXL协议的网络API进行数据传输。
  3. 根据权利要求2所述的基于CXL协议的网络连接方法,其特征在于:通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络,具体流程为:
    S101.将主机端数据通过基于CXL协议的网络API发送到网卡内存中;所述的主机端数据包括待发送数据及其控制信息;
    S102.主机通过基于CXL协议的网络API将发送数据的命令输入网卡;
    S103.网卡根据发送数据的命令读取网卡内存中的待发送数据及其控制信息,并将读取出的待发送数据根据其控制信息转化成对应的数据包;
    S104.网卡将数据包转换成网络数据并上传到网络。
  4. 根据权利要求2所述的基于CXL协议的网络连接方法,其特征在于:接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机,具体流程为:
    S201.通过网卡从网络下载网络数据,并将网络数据转换为数据包;
    S202.网卡将数据包进行解包,得到数据载荷,并保存到网卡内存中;
    S203.主机通过基于CXL协议的网络API查询网卡是否接收到数据包;
    S204.网卡判断网卡内存中是否受到数据,若收到,则网卡通过基于CXL协议的网络API通知主机已接收到数据包,并执行步骤S205;若没有受到,则回 到步骤S201重新接收网路解耦数据;
    S205.主机通过基于CXL协议的网络API从网卡内存中读取数据,并接收从网卡发送的数据载荷。
  5. 根据权利要求4所述的基于CXL协议的网络连接方法,其特征在于:所述的网络数据为二进制流数据。
  6. 根据权利要求4所述的基于CXL协议的网络连接方法,其特征在于:在步骤S203中,若主机使用中断机制,则采用以下步骤接收数据载荷:
    A1.网卡不经过主机查询,触发主机中断,得到中断号,并通过基于CXL协议的网络API通知主机已接收到数据包;
    A2.主机根据中断号,通过基于CXL协议的网络API从网卡内存读取数据,并接收从网卡发送的数据载荷。
  7. 一种基于CXL协议的网络连接系统,其特征在于:包括主机和网卡;
    所述的主机包括用于收发数据的主机端CXL_IP模块;
    所述的网卡包括用于收发数据的网卡端CXL_IP模块和用于存储主机端数据和网络数据的网卡内存;
    主机端CXL_IP模块和网卡端CXL_IP模块通过CXL协议连接;网卡端CXL_IP模块和网卡内存连接;通过主机端CXL_IP模块发送主机端数据到网卡端CXL_IP模块;将主机端数据存储到网卡内存中,读取网卡内存中的主机端数据并发送到网络;接收网络数据并保存到网卡内存中,将网卡内存中的网络数据通过网卡端CXL_IP模块发送到主机端CXL_IP模块中,从而将网络数据发送到主机。
  8. 根据权利要求7所述的基于CXL协议的网络连接系统,其特征在于:所述的网卡还包括用于将数据包封装为网络数据和将网络数据解封装为数据载荷的网络卸载单元、用于接收和发送网络数据的收发器;网卡端CXL_IP模块、网卡内存、网络卸载单元、收发器依次连接;
    网卡端CXL_IP模块接收到来自主机端CXL_IP模块的主机端数据,所述的主机端数据包括待发送数据及其控制信息,并将待发送数据及其控制信息保存到网卡内存中;网卡端CXL_IP模块收到发送数据的命令后,由网络卸载单元读取网卡内存,并将网卡内存中的待发送数据根据其控制信息转换为数据包,最后将数据包转换为网络数据,通过收发器将网络数据上传到网络;
    收发器从网络下载网络数据后,由网络卸载单元将网络数据转换为数据包, 并将数据包进行解包,得到数据载荷,并保存到网卡内存中;网卡端CXL_IP模块通知主机已接收到网络数据后,读取网卡内存中的数据载荷,并将数据载荷发送给主机端CXL_IP模块。
  9. 根据权利要求7所述的基于CXL协议的网络连接系统,其特征在于:所述的主机还包括用于存储数据的主机内存模块和用于控制数据的发送与接收的CPU;主机内存模块、CPU、主机端CXL_IP模块依次连接;
    向网络发送主机端数据时,CPU控制主机内存模块将主机端数据通过主机端CXL_IP模块发送到网卡,并通过主机端CXL_IP模块将发送数据的命令发送到网卡;
    从网络接收网络数据时,CPU通过主机端CXL_IP模块查询或接收网卡的网络数据存储情况,根据数据存储情况接收网络数据的数据荷载,并将数据荷载储存在主机内存模块中。
  10. 根据权利要求8所述的基于CXL协议的网络连接系统,其特征在于:所述的网卡为无操作系统网卡,网卡内存为DRAM内存。
PCT/CN2023/103035 2022-06-30 2023-06-28 一种基于cxl协议的网络连接方法及系统 WO2024002123A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210760854.4 2022-06-30
CN202210760854.4A CN115174409A (zh) 2022-06-30 2022-06-30 一种基于cxl协议的网络连接方法及系统

Publications (1)

Publication Number Publication Date
WO2024002123A1 true WO2024002123A1 (zh) 2024-01-04

Family

ID=83488395

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/103035 WO2024002123A1 (zh) 2022-06-30 2023-06-28 一种基于cxl协议的网络连接方法及系统

Country Status (2)

Country Link
CN (1) CN115174409A (zh)
WO (1) WO2024002123A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174409A (zh) * 2022-06-30 2022-10-11 无锡芯光互连技术研究院有限公司 一种基于cxl协议的网络连接方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360093A (zh) * 2021-06-03 2021-09-07 锐掣(杭州)科技有限公司 内存系统和设备
CN113645258A (zh) * 2021-10-18 2021-11-12 阿里云计算有限公司 数据传输方法、装置、存储介质、处理器及电子设备
US20220147476A1 (en) * 2020-11-06 2022-05-12 Samsung Electronics Co., Ltd. Memory device including direct memory access engine, system including the memory device, and method of operating the memory device
CN115174409A (zh) * 2022-06-30 2022-10-11 无锡芯光互连技术研究院有限公司 一种基于cxl协议的网络连接方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100574200C (zh) * 2005-12-31 2009-12-23 中国科学院计算技术研究所 具有硬件加速功能的智能以太网卡
WO2015149374A1 (zh) * 2014-04-04 2015-10-08 华为技术有限公司 众核下网络数据的分发方法及系统
WO2018102969A1 (zh) * 2016-12-05 2018-06-14 华为技术有限公司 NVMe over Fabric架构中数据读写命令的控制方法、设备和系统
TW202211035A (zh) * 2020-04-06 2022-03-16 南韓商三星電子股份有限公司 用於資源分配的系統、元件以及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220147476A1 (en) * 2020-11-06 2022-05-12 Samsung Electronics Co., Ltd. Memory device including direct memory access engine, system including the memory device, and method of operating the memory device
CN113360093A (zh) * 2021-06-03 2021-09-07 锐掣(杭州)科技有限公司 内存系统和设备
CN113645258A (zh) * 2021-10-18 2021-11-12 阿里云计算有限公司 数据传输方法、装置、存储介质、处理器及电子设备
CN115174409A (zh) * 2022-06-30 2022-10-11 无锡芯光互连技术研究院有限公司 一种基于cxl协议的网络连接方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MAXWELL2IC: "Brief Description of CXL", CSDN BLOG, 6 March 2022 (2022-03-06), pages 1 - 8, Retrieved from the Internet <URL:https://blog.csdn.net/maxwell2ic/article/details/123306538?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22123306538%22%2C%22source%22%3A%22unlogin%22%7D&fromshare=blogdetail> *

Also Published As

Publication number Publication date
CN115174409A (zh) 2022-10-11

Similar Documents

Publication Publication Date Title
US7817634B2 (en) Network with a constrained usage model supporting remote direct memory access
WO2022105884A1 (zh) 数据传输方法、装置、网络设备、存储介质
US8458280B2 (en) Apparatus and method for packet transmission over a high speed network supporting remote direct memory access operations
US8542693B2 (en) Managing free packet descriptors in packet-based communications
JP3329390B2 (ja) 高速一括ファイル転送方法及び装置
WO2024002123A1 (zh) 一种基于cxl协议的网络连接方法及系统
JP2016510524A (ja) 通信トラフィック処理アーキテクチャおよび方法
CN113709047B (zh) 一种汽车域控制器数据转发系统及方法
KR20140048815A (ko) Tcp 가속화를 포함하는 내장형 자동차용 획득 장치를 위한 분산형 측정 배열
CN113746749A (zh) 网络连接设备
EP1554644A2 (en) Method and system for tcp/ip using generic buffers for non-posting tcp applications
CN114513472A (zh) 网络拥塞控制方法及装置
US20090086729A1 (en) User datagram protocol (UDP) transmit acceleration and pacing
US11520724B2 (en) Application-transparent near-memory processing architecture with memory channel network
US7213074B2 (en) Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet
CN116248758A (zh) 一种高效的内核-片上网络的桥式连接结构
US20060114892A1 (en) Method and apparatus to transmit state information through a communication link
CN113556320B (zh) 以太网多路音频实时传输方法及设备
CN116266800A (zh) 组播传输方法、装置和系统
CN114760370A (zh) 基于udp协议的上位机与fpga高速数据传输架构及实现方法
US20230179545A1 (en) Packet forwarding apparatus with buffer recycling and associated packet forwarding method
US20230385223A1 (en) Compute Express Link™ (CXL) Over Ethernet (COE)
US20230418697A1 (en) Data transmission system and related device
CN115622958B (zh) 一种zynq系统及虚拟mac实现方法
CN115442267B (zh) 一种基于arinc664协议的icmp方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23830299

Country of ref document: EP

Kind code of ref document: A1