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
- data
- rdma
- nfs
- communication protocol
- communication
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000012546 transfer Methods 0.000 claims abstract description 16
- 230000000977 initiatory effect Effects 0.000 claims abstract description 8
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241001362551 Samba Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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 (13)
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的高速缓存文件***通信方法及*** |
CN113395359A (zh) * | 2021-08-17 | 2021-09-14 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、*** |
CN113395293A (zh) * | 2021-07-13 | 2021-09-14 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
CN114629894A (zh) * | 2022-03-19 | 2022-06-14 | 苏州知微安全科技有限公司 | 一种物联网数据的传输方法及装置 |
-
2009
- 2009-07-07 CN CNA2009100168035A patent/CN101599991A/zh active Pending
Cited By (24)
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 | 华为技术有限公司 | 数据访问方法、装置及*** |
CN104915302A (zh) * | 2014-03-10 | 2015-09-16 | 华为技术有限公司 | 数据传输处理方法和数据传输器 |
CN104915302B (zh) * | 2014-03-10 | 2018-07-03 | 华为技术有限公司 | 数据传输处理方法和数据传输器 |
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的高速缓存文件***通信方法及*** |
CN113395293A (zh) * | 2021-07-13 | 2021-09-14 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
CN113395293B (zh) * | 2021-07-13 | 2023-09-15 | 上海睿赛德电子科技有限公司 | 一种基于rpc的网络套接字实现方法 |
CN113395359A (zh) * | 2021-08-17 | 2021-09-14 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、*** |
CN113395359B (zh) * | 2021-08-17 | 2021-10-29 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、*** |
WO2023019800A1 (zh) * | 2021-08-17 | 2023-02-23 | 苏州浪潮智能科技有限公司 | 基于远程直接内存访问的文件币集群数据传输方法、*** |
CN114629894A (zh) * | 2022-03-19 | 2022-06-14 | 苏州知微安全科技有限公司 | 一种物联网数据的传输方法及装置 |
CN114629894B (zh) * | 2022-03-19 | 2024-03-19 | 敦和万物信息技术(苏州)有限公司 | 一种用于电子数据取证的物联网数据的传输方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101599991A (zh) | 一种基于高速通信协议的提升网络文件***性能的方法 | |
CN111277616B (zh) | 一种基于rdma的数据传输方法和分布式共享内存*** | |
US10788992B2 (en) | System and method for efficient access for remote storage devices | |
US8725879B2 (en) | Network interface device | |
US7406481B2 (en) | Using direct memory access for performing database operations between two or more machines | |
US7103888B1 (en) | Split model driver using a push-push messaging protocol over a channel based network | |
KR101941416B1 (ko) | 네트워킹 기술들 | |
EP1868093B1 (en) | Method and system for a user space TCP offload engine (TOE) | |
US9331955B2 (en) | Transporting operations of arbitrary size over remote direct memory access | |
TWI332150B (en) | Processing data for a tcp connection using an offload unit | |
US10484472B2 (en) | Methods and systems for efficiently moving data between nodes in a cluster | |
US20060230119A1 (en) | Apparatus and method for packet transmission over a high speed network supporting remote direct memory access operations | |
US11025564B2 (en) | RDMA transport with hardware integration and out of order placement | |
CN100535886C (zh) | 一种节点之间的数据传输***和装置及方法 | |
US10999364B1 (en) | Emulation of memory access transport services | |
US20200272579A1 (en) | Rdma transport with hardware integration | |
EP4064641A1 (en) | Supporting communications for data storage | |
CN105141603A (zh) | 通信数据传输方法及*** | |
CN102843435A (zh) | 一种在集群***中存储介质的访问、响应方法和*** | |
CN108234595B (zh) | 日志传输方法及*** | |
CN111698274B (zh) | 数据处理方法及装置 | |
CN116471242A (zh) | 基于rdma的发送端、接收端、数据传输***及方法 | |
CN113572575B (zh) | 一种自适应数据传输方法及*** | |
CN109656705A (zh) | 一种数据处理的方法和装置 | |
KR20170116941A (ko) | 현재 확인 메시지에서 다음 rdma 동작을 위한 타겟 버퍼 어드레스의 피기배킹 시스템 및 방법 |
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 |