CN101599991A - 一种基于高速通信协议的提升网络文件系统性能的方法 - Google Patents
一种基于高速通信协议的提升网络文件系统性能的方法 Download PDFInfo
- Publication number
- CN101599991A CN101599991A CNA2009100168035A CN200910016803A CN101599991A CN 101599991 A CN101599991 A CN 101599991A CN A2009100168035 A CNA2009100168035 A CN A2009100168035A CN 200910016803 A CN200910016803 A CN 200910016803A CN 101599991 A CN101599991 A CN 101599991A
- Authority
- CN
- China
- Prior art keywords
- file system
- network file
- rdma
- communication
- protocol
- 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
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于高速通信协议的提升网络文件系统性能的方法,该方法是将RDMA高速通信协议加入网络文件系统的RPC远程调用协议中,在进行数据传输前,由发起通信节点向通信节点发送短信息,并从通信节点回馈的短信息中获知通信或数据传输的目的缓存地址及大小后,由发起通信的节点直接向目的缓存进行读写,以此提升网络文件系统的带宽,降低延迟,消减协议栈和CPU开销。加入RDMA高速通信协议还可省去同样的数据在不同内存空间的传输和拷贝流程,直接读写缓存,同时避免了相应的CPU中断。因为RDMA消减了CPU的数据转移开销,可以让CPU转而执行其他任务,提高了CPU的利用率。
Description
技术领域
本发明涉及计算机领域,具体的说就是一种应用于服务器集群的改进的、利用高速通信协议的提升网络文件系统性能的方法。
背景技术
网络文件系统是目前服务器集群中广泛应用的文件系统中的一种,包括NFS、CIFS、SAMBA等等。网络文件系统允许一个系统在网络上共享目录和文件。通过使用网络文件系统,用户和程序可以象访问本地文件一样访问网络上远端系统的文件。网络文件系统至少包括两个主要的部分:服务器端,以及至少一个客户端,客户端远程地访问保存在服务器端上的数据。
网络文件系统是基于远程过程调用(RPC)的文件系统结构。利用远程调用(RPC)技术,系统可以实现对网络上的服务器系统过程的远程执行请求。目前,RPC已经得到包括Solaris,Linux,以及Microsoft Windows等操作系统的支持。RPC的目的就是对通过网络进行过程的具体连接细节和方法进行抽象。这样,客户端和服务器就无须配备专门的网络代码,就可以进行网络文件的共享了。
网络文件系统好处有:本地服务器站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到;用户不必在网络上的每个机器里头都有一个自己的用于存放数据的目录。该目录可以放在网络文件系统服务器上并且在网络上每个服务器上都可以访问到。诸如软驱,CDROM之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动介质设备的数量。
在高速网络不断成长并得到推广的现在,尽管服务器集群配备了高速的RDMA网络设备,但由于目前的网络文件系统协议有局限,网络文件系统的性能瓶颈越来越体现在文件系统上而不是硬件上,即网络文件系统无法充分利用RDMA高速网络所提供的高带宽。
发明内容
本发明的目的是提供一种利用高速通信协议提升网络文件系统性能的方法,本发明的方法可以直接读写通信节点的缓存,避免了TCP/IP协议栈开销,卸载部分CPU负担,提高带宽,降低延迟,从而提升整个网络文件系统的性能。
本发明的目的是按以下方式实现的,将RDMA高速通信协议加入网络文件系统的RPC远程调用协议中,在进行数据传输前,由发起通信节点向通信节点发送短信息,并从通信节点回馈的短信息中获知通信或数据传输的目的缓存地址及大小后,由发起通信的节点直接向目的缓存进行读写,以此提升网络文件系统的带宽,降低延迟,消减协议栈和CPU开销。
对已配备了RDMA高速通信网络的网络文件系统的RPC远程调用协议加入RDMA高速通信协议,通过RDMA高速通信协议,在处理完短信息后,通信双方不需经过TCP/IP协议栈,直接读写对方的缓存来进行数据传输。
本发明的有益效果是本发明的方法可以直接读写通信节点的缓存,避免了TCP/IP协议栈开销,卸载部分CPU负担,提高带宽,降低延迟,从而提升整个网络文件系统的性能。RDMA高速通信协议还可省去同样的数据在不同内存空间的传输和拷贝流程,直接读写缓存,同时避免了相应的CPU中断。因为RDMA消减了CPU的数据转移开销,可以让CPU转而执行其他任务,提高了CPU的利用率。
附图说明
附图1是传统的基于TCP/IP协议栈的网络文件系统通信流程图;
附图2是加入RDMA高速通信协议的网络文件系统通信流程图。
具体实施方式
参照说明书附图对本发明的网络文件系统作以下详细地说明。
如图1所示,传统的流程中,从本地磁盘中读取数据到缓存中,再由本地文件系统从缓存中读取到网络文件系统中,然后由TCP/IP协议栈进行网络地址确认等TCP操作,最后通过网卡驱动来驱动网卡进行数据交换。
如图2所示,具体流程上,RDMA短信息传递路径同传统TPC/IP协议栈传输数据的路径相同,但是通过RDMA短信息确认数据传输的目的缓存地址和大小后,数据传输即可通过直接读写通信双方的缓存来进行。RDMA高速通信协议省去了同样的数据在不同内存空间的传输和拷贝流程,直接读写缓存,同时避免了相应的CPU中断。因为RDMA消减了CPU的数据转移开销,可以让CPU转而执行其他任务,提高了CPU的利用率。
实施例
将RDMA高速通信协议加入RPC协议中,无需对RPC协议做出修改,就像即插即用一样。利用RDMA高速通信协议,在通信或数据传输前,由发起RPC通信的节点向通信节点分发短信息,并从通信节点回馈的短信息中获知RPC通信或数据传输的目的缓存地址及大小后,由发起通信的节点直接向目的缓存进行读写。
DMA模型与TCP的数据流模型或UDP的数据报不同。在传统的模型里,数据是“盲传”的。数据流或数据块被传输到一个网络地址,但到达后对数据的最终处理完全交给了接收系统。RDMA模型的读写操作要求读取方和写入方了解数据传输的数据源和目的地的缓存的地址和大小。
如果你从一个主机端的内存里,通过RDMA向另一个主机端写数据块,你必须提供目的地缓存的虚拟地址,并保证缓存足够大以接收全部数据。同样的,当从远端主机读取数据时,一定要知道所读取的数据的虚拟地址和适当大小的本地缓存的地址。RDMA模型都提供消息队列以交换短信息。这些信息可用来激发RDMA的读和写操作并提供关于数据源和目的地的虚拟地址和消息大小。
例如,当一个网络文件系统的RPC客户端需要向一个服务器端发送一个呼叫信息,它首先要发送一个短信息到服务器端给出呼叫信息的虚拟地址和大小。这就是对服务器端的通知:有一个呼叫信息在等待。一旦收到这个短信息,服务器就可以分配所需大小的缓存,并初始化一个RDMA读操作从客户端的缓存传输这个RPC呼叫信息到服务器端的缓存。
当RDMA读取结束,服务器端就会传输一个短信息给客户端通知它信息已成功接收。一个进行RDMA写操作的呼叫信息与此类似。客户端先发送信息到服务器端要求一个目的缓存的地址,并要求其大小可以容纳RPC呼叫信息。一旦收到服务器端的反馈,客户端初始化一个RDMA写操作直接写到服务器端的缓存,当RDMA操作结束,客户端发送一个短信息到服务器端通知呼叫信息已传输并等待回应。
类似的方法可用于RPC应答信息。有很多不同的方法来综合运用RDMA和信息队列。可以通过优化进程来使信息数目最小,减小延迟,同时调节RDMA读和写操作的速度以最大化带宽。
RDMA可以加速网络文件系统传输,提升基于TCP/IP的客户的性能。许多客户使用网络文件系统的文件卷来向TCP/IP客户提供文件服务。这些TCP/IP进程开销可以被卸载到在TCP/IP和RDMA网络间移动网络文件系统传输的服务器上。RPC呼叫可以从TCP包中抽取出来,并通过RDMA发送到文件卷。来自文件卷的RPC回应可以由RDMA获取并通过TCP/IP返回。因为文件卷不再处理TCP/IP进程,就消减了它的服务延迟,并可以承担更高的网络文件系统负载。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。
Claims (2)
1、一种基于高速通信协议的提升网络文件系统性能的方法,其特征在于,将RDMA高速通信协议加入网络文件系统的RPC远程调用协议中,在进行数据传输前,由发起通信节点向通信节点发送短信息,并从通信节点回馈的短信息中获知通信或数据传输的目的缓存地址及大小后,由发起通信的节点直接向目的缓存进行读写,以此提升网络文件系统的带宽,降低延迟,消减协议栈和CPU开销。
2、根据权利要求1所述的方法,其特征在于,对已配备了RDMA高速通信网络的网络文件系统的RPC远程调用协议加入RDMA高速通信协议,通过RDMA高速通信协议,在处理完短信息后,通信双方不需经过TCP/IP协议栈,直接读写对方的缓存来进行数据传输。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNA2009100168035A CN101599991A (zh) | 2009-07-07 | 2009-07-07 | 一种基于高速通信协议的提升网络文件系统性能的方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNA2009100168035A CN101599991A (zh) | 2009-07-07 | 2009-07-07 | 一种基于高速通信协议的提升网络文件系统性能的方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN101599991A true CN101599991A (zh) | 2009-12-09 |
Family
ID=41421235
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CNA2009100168035A Pending CN101599991A (zh) | 2009-07-07 | 2009-07-07 | 一种基于高速通信协议的提升网络文件系统性能的方法 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN101599991A (zh) |
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103227778A (zh) * | 2013-03-26 | 2013-07-31 | 华为技术有限公司 | 内存访问方法、设备和系统 |
| CN103440202A (zh) * | 2013-08-07 | 2013-12-11 | 华为技术有限公司 | 一种基于rdma的通信方法、系统及通信设备 |
| CN103970670A (zh) * | 2013-01-31 | 2014-08-06 | 国际商业机器公司 | 用于使用rdma的数据传输的方法和设备 |
| CN104135496A (zh) * | 2013-05-02 | 2014-11-05 | 华中科技大学 | 一种同构环境下的rpc数据传输方法及系统 |
| CN104679688A (zh) * | 2013-12-02 | 2015-06-03 | 华为技术有限公司 | 数据访问方法、装置及系统 |
| CN104915302A (zh) * | 2014-03-10 | 2015-09-16 | 华为技术有限公司 | 数据传输处理方法和数据传输器 |
| CN105808345A (zh) * | 2014-12-31 | 2016-07-27 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
| CN106294842A (zh) * | 2016-08-19 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种数据交互方法、平台及分布式文件系统 |
| WO2017124917A1 (zh) * | 2016-01-18 | 2017-07-27 | 中兴通讯股份有限公司 | 数据处理方法和装置 |
| CN111416872A (zh) * | 2020-03-30 | 2020-07-14 | 中国人民解放军国防科技大学 | 基于mp和rdma的高速缓存文件系统通信方法及系统 |
| CN113395293A (zh) * | 2021-07-13 | 2021-09-14 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
| CN113395359A (zh) * | 2021-08-17 | 2021-09-14 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、系统 |
| CN114116239A (zh) * | 2020-08-10 | 2022-03-01 | 北京瀚海云星科技有限公司 | 一种引用参数的传输方法及远程过程调用方法 |
| CN114629894A (zh) * | 2022-03-19 | 2022-06-14 | 苏州知微安全科技有限公司 | 一种物联网数据的传输方法及装置 |
| CN119544819A (zh) * | 2024-11-27 | 2025-02-28 | 齐鲁工业大学(山东省科学院) | 一种rdma与cxl协议双向高速转换方法、装置及系统 |
-
2009
- 2009-07-07 CN CNA2009100168035A patent/CN101599991A/zh active Pending
Cited By (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103970670A (zh) * | 2013-01-31 | 2014-08-06 | 国际商业机器公司 | 用于使用rdma的数据传输的方法和设备 |
| US9497268B2 (en) | 2013-01-31 | 2016-11-15 | International Business Machines Corporation | Method and device for data transmissions using RDMA |
| CN103227778A (zh) * | 2013-03-26 | 2013-07-31 | 华为技术有限公司 | 内存访问方法、设备和系统 |
| CN103227778B (zh) * | 2013-03-26 | 2016-09-14 | 华为技术有限公司 | 内存访问方法、设备和系统 |
| CN104135496B (zh) * | 2013-05-02 | 2017-08-18 | 华中科技大学 | 一种同构环境下的rpc数据传输方法及系统 |
| CN104135496A (zh) * | 2013-05-02 | 2014-11-05 | 华中科技大学 | 一种同构环境下的rpc数据传输方法及系统 |
| CN103440202A (zh) * | 2013-08-07 | 2013-12-11 | 华为技术有限公司 | 一种基于rdma的通信方法、系统及通信设备 |
| CN103440202B (zh) * | 2013-08-07 | 2016-12-28 | 华为技术有限公司 | 一种基于rdma的通信方法、系统及通信设备 |
| CN104679688A (zh) * | 2013-12-02 | 2015-06-03 | 华为技术有限公司 | 数据访问方法、装置及系统 |
| CN104679688B (zh) * | 2013-12-02 | 2017-12-15 | 华为技术有限公司 | 数据访问方法、装置及系统 |
| CN104915302B (zh) * | 2014-03-10 | 2018-07-03 | 华为技术有限公司 | 数据传输处理方法和数据传输器 |
| CN104915302A (zh) * | 2014-03-10 | 2015-09-16 | 华为技术有限公司 | 数据传输处理方法和数据传输器 |
| CN105808345A (zh) * | 2014-12-31 | 2016-07-27 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
| CN105808345B (zh) * | 2014-12-31 | 2019-03-08 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
| WO2017124917A1 (zh) * | 2016-01-18 | 2017-07-27 | 中兴通讯股份有限公司 | 数据处理方法和装置 |
| CN106294842A (zh) * | 2016-08-19 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种数据交互方法、平台及分布式文件系统 |
| CN111416872A (zh) * | 2020-03-30 | 2020-07-14 | 中国人民解放军国防科技大学 | 基于mp和rdma的高速缓存文件系统通信方法及系统 |
| CN114116239A (zh) * | 2020-08-10 | 2022-03-01 | 北京瀚海云星科技有限公司 | 一种引用参数的传输方法及远程过程调用方法 |
| CN113395293B (zh) * | 2021-07-13 | 2023-09-15 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
| CN113395293A (zh) * | 2021-07-13 | 2021-09-14 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
| CN113395359B (zh) * | 2021-08-17 | 2021-10-29 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、系统 |
| CN113395359A (zh) * | 2021-08-17 | 2021-09-14 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、系统 |
| WO2023019800A1 (zh) * | 2021-08-17 | 2023-02-23 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、系统 |
| US12506803B2 (en) | 2021-08-17 | 2025-12-23 | Inspur Suzhou Intelligent Technology Co., Ltd. | Filecoin cluster data transmission method and system based on remote direct memory access |
| CN114629894A (zh) * | 2022-03-19 | 2022-06-14 | 苏州知微安全科技有限公司 | 一种物联网数据的传输方法及装置 |
| CN114629894B (zh) * | 2022-03-19 | 2024-03-19 | 敦和万物信息技术(苏州)有限公司 | 一种用于电子数据取证的物联网数据的传输方法及装置 |
| CN119544819A (zh) * | 2024-11-27 | 2025-02-28 | 齐鲁工业大学(山东省科学院) | 一种rdma与cxl协议双向高速转换方法、装置及系统 |
| CN119544819B (zh) * | 2024-11-27 | 2025-10-31 | 齐鲁工业大学(山东省科学院) | 一种rdma与cxl协议双向高速转换方法、装置及系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101599991A (zh) | 一种基于高速通信协议的提升网络文件系统性能的方法 | |
| CN109088892B (zh) | 数据传输方法、系统以及代理服务器 | |
| US10592464B2 (en) | Methods for enabling direct memory access (DMA) capable devices for remote DMA (RDMA) usage and devices thereof | |
| CN100468377C (zh) | 在网络协议处理的卸载中支持存储器管理的设备和方法 | |
| TWI332150B (en) | Processing data for a tcp connection using an offload unit | |
| CN100422958C (zh) | 用于执行数据库操作的方法 | |
| CN101015187B (zh) | 在网络协议处理的卸载中支持连接建立的设备和方法 | |
| CN107257329B (zh) | 一种数据分段卸载发送方法 | |
| US20080301254A1 (en) | Method and system for splicing remote direct memory access (rdma) transactions in an rdma-aware system | |
| US8271669B2 (en) | Method and system for extended steering tags (STAGS) to minimize memory bandwidth for content delivery servers | |
| CN111061425A (zh) | 主机、非易失性存储器快速固态驱动器及存储服务的方法 | |
| US20120030687A1 (en) | Efficient data transfer on local network connections using a pseudo socket layer | |
| US20100306387A1 (en) | Network interface device | |
| TW200814672A (en) | Method and system for a user space TCP offload engine (TOE) | |
| CN116089331A (zh) | 一种基于rdma的tte网络通讯方法 | |
| CN102546612A (zh) | 用户态下基于rdma协议的远程过程调用实现方法 | |
| CN107547623A (zh) | 应用数据传输方法、装置、应用服务器和应用代理服务器 | |
| US20220217098A1 (en) | Streaming communication between devices | |
| CN113553184A (zh) | 一种实现负载均衡的方法、装置、电子设备和可读存储介质 | |
| CN111404986B (zh) | 数据传输处理方法、设备和存储介质 | |
| US8072883B2 (en) | Internet small computer systems interface (iSCSI) distance acceleration device | |
| CN115509435B (zh) | 一种数据读写方法、装置、设备、介质 | |
| CN115086425B (zh) | 消息传输方法、装置、程序产品、介质及电子设备 | |
| EP1759317B1 (en) | Method and system for supporting read operations for iscsi and iscsi chimney | |
| CN111404842A (zh) | 数据传输方法、装置及计算机存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
| WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091209 |