System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及高速数通,具体涉及一种完全基于fpga实现rdma的传输方法。
技术介绍
1、随着高速数据通信的快速发展,对传输链路的要求正变得越来越高,其中,rdma,即远程直接访问内存,是一种高性能网络通信技术,具有高带宽、低延迟、无cpu消耗、零拷贝等优点。如图3所示,是一种目前行业内主流的rdma的传输结构示意图,数据在传输的过程中,首先需要经由fpga进行协议转换,之后经协议转换后的数据通过pcie接口传输到cpu,并存储在rdma主节点cpu的ddr4中,其中,cpu作为rdma的控制器,会接收rdma的传输指令wqe,并发起rdma传输,将数据从rdma主节点传输到rdma从节点,其中wqe是指完成队列元素。在此传输系统中,fpga仅仅只承担网卡功能,用于实现协议转换;数据的传输本质上为从rdma主节点cpu的ddr4传输到rdma从节点cpu的ddr4,并且整个rdma的管控都由cpu负责。
2、但是,目前采取的这些措施至少包含以下三种问题:
3、1)成本高;这是因为在传输过程中需要有协议转换、pcie传输、ddr写入等诸多流程,数据传输链路过长、开销过大,难以满足日益增长的数据需求,同时,该方案必须有cpu参与,且对cpu的pcie资源有着硬性要求;
4、2)效率低下;这是因为在传输的过程中涉及到诸多流程,导致数据传输链路过长,存在数据传输延迟以及出现中间故障点;
5、3)适应性差;针对从节点的设计,ddr只能挂载在cpu下面,且cpu至fpga之间存在传输损耗,需
技术实现思路
1、针对上述三个问题,本专利技术的目的是提出一种完全基于fpga实现rdma的传输方法,通过将rdma主节点的控制面业务挂载在fpga上,rdma主节点的管控由fpga中的microblaze ip核承载,利用microblaze ip核代替cpu作为rdma主节点的控制器,克服了传统的rdma传输方法中数据传输链路过长、开销过大和效率低下的问题;同时,rdma从节点的ddr4挂载在fpga下面或者cpu下面,使该方法拥有更灵活的场景适用性。
2、通过以下技术方案实现的:
3、一种完全基于fpga实现rdma的传输方法,将rdma主节点的控制面业务挂载在fpga上,rdma主节点的管控由fpga中的microblaze ip核承载,利用microblaze ip核代替cpu作为rdma主节点的控制器;同时,rdma从节点的ddr4挂载在fpga下面或者cpu下面,所述方法的数据传输流程包括如下步骤:s1、rdma主节点通过网络传输的方式获取前端数据,并将前端数据存储在fpga的ddr4中;同时,将fpga中的microblaze ip核作为rdma主节点的控制器,在rdma主节点的控制器接收到rdma主节点发送的传输指令wqe时,利用rdma-core对wqe指令进行解析并获得解析结果;s2、根据wqe指令的解析结果,将wqe指令中的配置元素封装成数据包下发到rdma从节点中,同时,rdma主节点和rdma从节点的控制器进行交互,rdma主节点通过发送数据包告诉rdma从节点将要发送的数据所存放的ddr4起始地址、数据长度和数据的传输模式;rdma从节点接收到rdma主节点发送的数据包后,对数据包进行解析,并根据解析的结果获得数据在rdma主节点中所存放的ddr4起始地址以及数据长度和数据的传输模式,同时根据wqe指令的解析结果,rdma-core发起rdma传输,开始进行数据发送,将数据从主节点内存传输到从节点内存。
4、本专利技术通过利用microblaze ip核代替cpu作为rdma主节点的控制器,省去了cpu部分,优化了高速数据传输链路和控制模式,减少了传输路径及中间节点,实现了数据在主节点和从节点的fpga的ddr4中高速无损传输。
5、优选地,rdma主节点的控制面业务挂载在fpga上用于实现rdma主节点与cpu的完全解耦,其中,完全解耦是通过降低rdma主节点与cpu的依赖关系来对传输链路和控制模式进行优化。通过将rdma主节点与cpu进行完全解耦,省去了cpu至fpga之间的传输损耗,不再需要考虑cpu的器件选型及性能指标。
6、优选地,在进行rdma主节点与rdma从节点通信时,默认数据传输模式是数据从rdma主节点fpga的ddr4经100ge网络传输至rdma从节点fpga的ddr4;并且在打开rdma从节点的cpu与fpga的数据通道时,发起dma操作,数据将从rdma主节点fpga的ddr4经100ge网络传输至rdma从节点cpu的ddr4。通过对rdma从节点的设计,ddr4可以挂载在fpga下面或者cpu下面,突破了传统的rdma传输方法的设计理念,使本专利技术rdma的传输方法能适用更多的应用场景。
7、优选地,rdma中内置有dma设备,dma设备用于执行dma操作,将数据从rdma主节点fpga的ddr4传输到rdma从节点fpga的ddr4,并利用dma控制器管理和控制数据的传输过程;当进行数据传输时,dma设备通过dma控制器向cpu发送dma操作请求信号,获得总线控制权,并通过总线控制权进行dma操作,完成数据传输;其中,dma控制器包括一条地址总线、一条数据总线和控制寄存器。通过dma操作,不仅能够将数据从主节点fpga的ddr4经100ge网络传输至从节点fpga的ddr4,还能够将数据从主节点fpga的ddr4经100ge网络传输至从节点cpu的ddr4,实现了数据的高效传输,提升了rdma传输方法的整体性能和效率。
8、优选地,步骤s1中,wqe指令用于描述rdma通信中的工作请求,包括远程读、远程写、发起数据和接收数据,并且还包含了数据所在的内存地址、数据长度和访问密钥。在rdma传输过程中,wqe指令用于告诉rdma的控制器应该执行的操作以及相关的参数信息,确保了数据的高效传输。
9、优选地,步骤s2中,配置元素至少包括:传输模式、内存地址和要操作的数据长度。通过将配置元素发送到rdma从节点,使rdma从节点获得了数据的存储地址、传输模式以及数据长度,确保了数据传输的可靠性和准确性。
10、本专利技术与现有技术相比具有的有益效果是:
11、本专利技术的技术方案,通过将rdma主节点的控制面业务挂载在fpga上,rdma主节点的管控由fpga中的microblaze ip核承载,利用microblaze ip核代替cpu作为rdma主节点的控制器,可以将高速数据传输的链路最优化,提高了数据传输的效率,并减少了可能存在的中间故障点;同时,rdma从节点的ddr4挂载在fpga下面或者cpu下面,使本专利技术rdma的传输方法能适用更多的应用场景。
本文档来自技高网...【技术保护点】
1.一种完全基于FPGA实现RDMA的传输方法,其特征在于,将RDMA主节点的控制面业务挂载在FPGA上,RDMA主节点的管控由FPGA中的MicroBlaze IP核承载,利用MicroBlaze IP核代替CPU作为RDMA主节点的控制器;同时,RDMA从节点的DDR4挂载在FPGA下面或者CPU下面,所述方法的数据传输流程包括如下步骤:
2.根据权利要求1所述的一种完全基于FPGA实现RDMA的传输方法,其特征在于,RDMA主节点的控制面业务挂载在FPGA上用于实现RDMA主节点与CPU的完全解耦,其中,完全解耦是通过降低RDMA主节点与CPU的依赖关系来对传输链路和控制模式进行优化。
3.根据权利要求1所述的一种完全基于FPGA实现RDMA的传输方法,其特征在于,在进行RDMA主节点与RDMA从节点通信时,默认数据传输模式是数据从RDMA主节点FPGA的DDR4经100GE网络传输至RDMA从节点FPGA的DDR4;并且在打开RDMA从节点的CPU与FPGA的数据通道时,发起DMA操作,数据将从RDMA主节点FPGA的DDR4经100GE网络传输至
4.根据权利要求3所述的一种完全基于FPGA实现RDMA的传输方法,其特征在于,RDMA中内置有DMA设备,DMA设备用于执行DMA操作,将数据从RDMA主节点FPGA的DDR4传输到RDMA从节点FPGA的DDR4,并利用DMA控制器管理和控制数据的传输过程;当进行数据传输时,DMA设备通过DMA控制器向CPU发送DMA操作请求信号,获得总线控制权,并通过总线控制权进行DMA操作,完成数据传输;其中,DMA控制器包括一条地址总线、一条数据总线和控制寄存器。
5.根据权利要求1所述的一种完全基于FPGA实现RDMA的传输方法,其特征在于,步骤S1中,WQE指令用于描述RDMA通信中的工作请求,包括远程读、远程写、发起数据和接收数据,并且还包含了数据所在的内存地址、数据长度和访问密钥。
6.根据权利要求1所述的一种完全基于FPGA实现RDMA的传输方法,其特征在于,步骤S2中,配置元素至少包括:传输模式、内存地址和要操作的数据长度。
...【技术特征摘要】
1.一种完全基于fpga实现rdma的传输方法,其特征在于,将rdma主节点的控制面业务挂载在fpga上,rdma主节点的管控由fpga中的microblaze ip核承载,利用microblaze ip核代替cpu作为rdma主节点的控制器;同时,rdma从节点的ddr4挂载在fpga下面或者cpu下面,所述方法的数据传输流程包括如下步骤:
2.根据权利要求1所述的一种完全基于fpga实现rdma的传输方法,其特征在于,rdma主节点的控制面业务挂载在fpga上用于实现rdma主节点与cpu的完全解耦,其中,完全解耦是通过降低rdma主节点与cpu的依赖关系来对传输链路和控制模式进行优化。
3.根据权利要求1所述的一种完全基于fpga实现rdma的传输方法,其特征在于,在进行rdma主节点与rdma从节点通信时,默认数据传输模式是数据从rdma主节点fpga的ddr4经100ge网络传输至rdma从节点fpga的ddr4;并且在打开rdma从节点的cpu与fpga的数据通道时,发起dma操作,数据将从rdma主节点...
【专利技术属性】
技术研发人员:孟波,许光政,何国强,张韬,
申请(专利权)人:江苏华创微系统有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。