CN114025013B - 一种信息处理方法、装置及设备 - Google Patents
一种信息处理方法、装置及设备 Download PDFInfo
- Publication number
- CN114025013B CN114025013B CN202111161169.1A CN202111161169A CN114025013B CN 114025013 B CN114025013 B CN 114025013B CN 202111161169 A CN202111161169 A CN 202111161169A CN 114025013 B CN114025013 B CN 114025013B
- Authority
- CN
- China
- Prior art keywords
- node
- connection
- access
- key
- memory
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种信息处理方法、装置及设备,该方法在第一节点和第二节点之间配置中间节点,中间节点接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。由此,通过中间节点能够实现在全闪分布式存储用户节点无需获取全闪分布式存储服务节点的IP地址的情况下,使用远程直接内存访问信息中的访问指令,高效的访问全闪服务节点。在保证全闪分布式存储的性能的情况下,显著提升全闪分布式存储的安全性,从而有效提升用户体验。
Description
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种信息处理方法、装置及设备。
背景技术
随着互联网、物联网以及人工智能等技术在各行业的不断推广和应用,企业对于数据实时性的需求日益增加,全闪分布式存储凭借其性能和稳定性成为企业高性能存储的主要选择。用户态RDMA(Remote Direct Memory Access,远程直接内存访问)是支持全闪存储高性能的关键技术之一。RDMA是一种直接内存访问技术,它将数据直接从一台计算机的内存传输至另一台计算机,无需双方操作系统的介入。RDMA的实现需要注册内存,RDMA软件层在内存中规划出的一片区域,用于存放收发的数据。用户在申请并注册用于存放数据的内存区域之后,能够利用RDMA访问这片MR(Memory Region,内存区域)。RDMA注册内存成功,会生成MR被注册的两个内存钥匙指向需要操作的内存区域,两个内存钥匙分别是lkey(本地key)和rkey(远程key),lkey用来执行RDMA_SEND或RDMA_RECV指令,lkey+rkey用来执行RDMA_WRITE或RDMA_READ指令。
但是,目前利用RDMA技术实现的全闪分布式存储,全闪分布式存储server(服务器)的IP地址必须暴露给client(用户)才能实现全闪分布式存储,存在较大的安全性隐患。
发明内容
本发明实施例提供一种信息处理方法、装置及设备。
根据本发明第一方面,提供了一种信息处理方法,所述方法包括:接收第一节点或第二节点发送的远程直接内存访问信息,所述远程直接内存访问信息包括访问指令;中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问。
根据本发明一实施方式,在接收第一节点或第二节点发送的远程直接内存访问信息之前,所述方法还包括:发送第一连接建立请求至第一节点,建立与所述第一节点的第一连接;接收第二节点的第二连接建立请求,建立与所述第二节点的第二连接。
根据本发明一实施方式,在接收第一节点或第二节点发送的远程直接内存访问信息之前,所述方法还包括:注册用于建立所述第一连接和所述第二连接的内存,所述第一连接和所述第二连接使用同一内存块。
根据本发明一实施方式,所述远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问,包括:在中间节点从所述第一节点接收到远程直接内存访问请求的情况下,将所述远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,并将所述第一访问转发信息发送至所述第二节点。
根据本发明一实施方式,所述在从所述第一节点接收到远程直接内存访问信息的情况下,将所述远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,包括:若所述访问指令中用于第一连接的内存钥匙包括所述第一节点的第一本地钥匙,则将所述第一本地钥匙替换为用于第二连接的第二中间本地钥匙,得到包括所述第二中间本地钥匙的第一访问转发信息;若所述访问指令中用于第一连接的内存钥匙包括所述第一节点的第一远程钥匙和第二中间本地钥匙,则将所述第一远程钥匙替换为用于第二连接的第二中间远程钥匙,将所述第二中间本地钥匙替换为所述第二节点用于第二连接的第二本地钥匙,得到包括所述第二中间远程钥匙和所述第二本地钥匙的第一访问转发信息。
根据本发明一实施方式,所述远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问,包括:在中间节点从所述第二节点接收到远程直接内存访问请求的情况下,将所述访问指令中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,并将所述第一访问转发信息发送至所述第一节点。
根据本发明一实施方式,所述在从所述第二节点接收到远程直接内存访问信息的情况下,将所述远程直接内存访问信息中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,包括:若所述访问指令中用于第二连接的内存钥匙包括所述第二节点的第二本地钥匙,则将所述第二本地钥匙替换为用于第一连接的第一中间本地钥匙,得到包括所述第一中间本地钥匙的第二访问转发信息;若所述访问指令中用于第二连接的内存钥匙包括所述第二节点的第二远程钥匙和第一中间本地钥匙,则将所述第二远程钥匙替换为用于第二连接的第一中间远程钥匙,将所述第一中间本地钥匙替换为所述第二节点用于第二连接的第一本地钥匙,得到包括所述第一中间远程钥匙和所述第一本地钥匙的第二访问转发信息。
根据本发明一实施方式,所述访问指令包括以下至少之一:从远程主机读取部分内存的访问指令、将数据写入远程主机的访问指令、远程主机原子操作的访问指令、发送数据至远程主机内存的访问指令和从远程主机的内存接收数据的访问指令。
根据本发明第二方面,还提供了一种信息处理装置,所述装置包括:接收模块,用于接收第一节点或第二节点发送的远程直接内存访问信息,所述远程直接内存访问请求包括访问指令;信息处理模块,用于中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问。
根据本发明第三方面,还提供了一种设备,所述设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述信息处理方法。
本发明实施例信息处理方法、装置及设备,在第一节点和第二节点之间配置中间节点,中间节点接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。由此,通过中间节点能够实现在全闪分布式存储用户节点无需获取全闪分布式存储服务节点的IP地址的情况下,使用远程直接内存访问信息中的访问指令,高效的访问全闪服务节点。在保证全闪分布式存储的性能的情况下,显著提升全闪分布式存储的安全性和保密性,从而有效提升用户体验。
需要理解的是,本发明的教导并不需要实现上面所述的全部有益效果,而是特定的技术方案可以实现特定的技术效果,并且本发明的其他实施方式还能够实现上面未提到的有益效果。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1示出了本发明实施例信息处理方法的实现流程示意图;
图2示出了本发明实施例信息处理方法中中间节点与第一节点和第二节点交互方式示意图;
图3示出了本发明实施例信息处理装置的组成结构示意图;
图4示出了本发明实施例设备的组成结构示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本发明的原理和精神。应当理解,给出这些实施方式仅仅是为使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为使本发明更加透彻和完整,并能够将本发明的范围完整地传达给本领域的技术人员。
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
图1示出了本发明实施例信息处理方法的实现流程示意图。
参考图1,本发明实施例信息处理方法,至少包括如下操作流程:操作101,接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令;操作102,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。
在操作101,接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令。
在本发明这一实施方式中,第一节点可以是多个用户节点的服务节点server,第二节点可以是多个用户节点中的任意一个用户节点client。
在本发明这一实施方式中,访问指令包括以下至少之一:从远程主机读取部分内存的访问指令RDMA_READ、将数据写入远程主机的访问指令RDMA_WRITE、远程主机原子操作的访问指令RDMA Atomic、发送数据至远程主机内存的访问指令RDMA_SEND和从远程主机的内存接收数据的访问指令RDMA_RECV。
远程主机原子操作的访问指令RDMA Atomic包括原子取、原子加、原子比较和原子交换,属于RDMA原子操作的扩展。
在本发明这一实施方式中,在接收第一节点或第二节点发送的远程直接内存访问信息之前,中间节点还发送第一连接建立请求至第一节点,建立与第一节点的第一连接,以及接收第二节点的第二连接建立请求,建立与第二节点的第二连接。
中间节点与第一节点和第二节点分别建立连接的操作可以结合图2进行说明。图2示出了本发明实施例信息处理方法中中间节点与第一节点和第二节点交互方式示意图。参考图2,中间节点可以作为client(用户节点)向第一节点server(服务节点)发送第一连接建立请求,client连接到server,建立第一连接conn1,生成中间节点用于第一连接的本地内存钥匙lkey2和远程内存钥匙rkey2。同样的,中间节点可以作为server接受第二节点client的第二连接建立请求,建立conn2,生成本地内存钥匙lkey3和远程内存钥匙rkey3,用于和第二节点client进行通信。
在本发明这一实施方式中,在接收第一节点或第二节点发送的远程直接内存访问信息之前,中间节点还注册用于建立第一连接和第二连接的内存,第一连接和第二连接使用同一内存块。
举例说明,如图2所示的中间节点注册的内存区域既用于第一连接,也用于第二连接,在执行RDMA访问指令的过程中可以减少内存拷贝。
在操作102,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。
在本发明这一实施方式中,远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问,包括:在中间节点从第一节点接收到远程直接内存访问请求的情况下,将远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,并将第一访问转发信息发送至第二节点。
在本发明这一实施方式中,在从第一节点接收到远程直接内存访问信息的情况下,将远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,包括:若访问指令中用于第一连接的内存钥匙包括第一节点的第一本地钥匙,则将第一本地钥匙替换为用于第二连接的第二中间本地钥匙,得到包括第二中间本地钥匙的第一访问转发信息;若访问指令中用于第一连接的内存钥匙包括第一节点的第一远程钥匙和第二中间本地钥匙,则将第一远程钥匙替换为用于第二连接的第二中间远程钥匙,将第二中间本地钥匙替换为第二节点用于第二连接的第二本地钥匙,得到包括第二中间远程钥匙和第二本地钥匙的第一访问转发信息。
举例说明,若访问指令为RDMA_SEND指令,client将RDMA_SEND(lkey4)指令发送至中间节点,由于中间节点将同一块内存同时注册到两个连接中,所以不需要内存拷贝,也无需经过CPU,即可直接将lkey4替换成中间节点lkey2,作为客户端将RDMA_SEND指令发送给server。
其中,RDMA_SEND(lkey4)表示RDMA_SEND指令中携带内存钥匙lkey4,lkey表示本地内存钥匙,rkey表示远程内存钥匙。下文类似的表达含义类似,均示出RDMA访问指令中携带相应的内存钥匙。
RDMA_RECV指令,对应于RDMA_SEND指令,与RDMA_SEND指令的数据方向相反。
若访问指令为RDMA_WRITE指令,client将RDMA_WRITE(lkey4+rkey3)指令发送至中间节点,中间节点收到client该访问指令后,需要将rkey3替换成server的rkey1,lkey4替换成lkey2,不执行内存拷贝,直接将数据执行RDMA_WRITE写入server的内存。
若访问指令为RDMA_READ指令,client将RDMA_READ(lkey4+rkey3)指令发送至中间节点,中间节点收到client该访问指令后,需要将rkey3替换成server的rkey1,lkey4替换成lkey2,直接访问server的内存读出数据后,不进行内存拷贝,由client执行RDMA_READ读取节点内存,将数据读到client。
在本发明这一实施方式中,远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问,包括:在中间节点从第二节点接收到远程直接内存访问请求的情况下,将访问指令中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,并将第一访问转发信息发送至第一节点。
在本发明这一实施方式中,在从第二节点接收到远程直接内存访问信息的情况下,将远程直接内存访问信息中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,包括:若访问指令中用于第二连接的内存钥匙包括第二节点的第二本地钥匙,则将第二本地钥匙替换为用于第一连接的第一中间本地钥匙,得到包括第一中间本地钥匙的第二访问转发信息;若访问指令中用于第二连接的内存钥匙包括第二节点的第二远程钥匙和第一中间本地钥匙,则将第二远程钥匙替换为用于第二连接的第一中间远程钥匙,将第一中间本地钥匙替换为第二节点用于第二连接的第一本地钥匙,得到包括第一中间远程钥匙和第一本地钥匙的第二访问转发信息。
举例说明,若访问指令为RDMA_SEND指令,server将RDMA_SEND(lkey1)指令发送至中间节点,由于中间节点将同一块内存同时注册到两个连接中,所以不需要内存拷贝,也无需经过CPU,即可直接将lkey1替换成中间节点lkey3,作为客户端将RDMA_SEND指令发送给client。
RDMA_RECV指令,对应于RDMA_SEND指令,与RDMA_SEND指令的数据方向相反。
若访问指令为RDMA_WRITE指令,server将RDMA_WRITE(lkey1+rkey2)指令发送至中间节点,中间节点收到server该访问指令后,需要将rkey2替换成client的rkey4,lkey1替换成lkey3,不执行内存拷贝,直接将数据执行RDMA_WRITE写入client的内存。
若访问指令为RDMA_READ指令,server将RDMA_READ(lkey1+rkey2)指令发送至中间节点,中间节点收到server该访问指令后,需要将rkey2替换成client的rkey4,lkey1替换成lkey3,直接访问client的内存读出数据后,不进行内存拷贝,由server执行RDMA_READ读取节点内存,将数据读到server。
由此,在中间节点实现RDMA_SEND、RDMA_RECV、RDMA_WRITE和RDMA_READ的软件支持下,有效避免了全闪server的将其IP地址暴露给全闪client。在无需将全闪server的IP地址暴露给全闪client的情况下,全闪client依然能够使用RDMA网络高效的访问全闪server的数据,既保证了全闪server的安全性和保密性,又保证了全闪分布式存储RDMA的高性能。
本发明实施例信息处理方法、装置及设备,在第一节点和第二节点之间配置中间节点,中间节点接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。由此,通过中间节点能够实现在全闪分布式存储用户节点无需获取全闪分布式存储服务节点的IP地址的情况下,使用远程直接内存访问信息中的访问指令,高效的访问全闪服务节点。在保证全闪分布式存储的性能的情况下,显著提升全闪分布式存储的安全性,从而有效提升用户体验。
同理,基于上文信息处理方法,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有程序,当程序被处理器执行时,使得处理器至少执行如下的操作步骤:操作101,接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问信息包括访问指令;操作102,中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。
进一步,基于如上文信息处理方法,本发明实施例还提供一种信息处理装置,如图3,该装置30包括:接收模块301,用于接收第一节点或第二节点发送的远程直接内存访问信息,远程直接内存访问请求包括访问指令;信息处理模块302,用于中间节点基于与第一节点之间的第一连接和与第二节点之间的第二连接,对访问指令进行连接切换处理,以使得第一节点和第二节点能使用访问指令实现远程直接内存访问。
根据本发明一实施方式,装置30还包括:第一连接模块,用于在接收第一节点或第二节点发送的远程直接内存访问信息之前,发送第一连接建立请求至第一节点,建立与第一节点的第一连接;第二连接模块,用于接收第二节点的第二连接建立请求,建立与第二节点的第二连接。
根据本发明一实施方式,装置30还包括:内存注册模块,用于在接收第一节点或第二节点发送的远程直接内存访问信息之前,注册用于建立第一连接和第二连接的内存,第一连接和第二连接使用同一内存块。
根据本发明一实施方式,远程直接内存访问信息中携带内存钥匙;相应的,信息处理模块302包括:第一转发子模块,用于在中间节点从第一节点接收到远程直接内存访问请求的情况下,将远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,并将第一访问转发信息发送至第二节点。
根据本发明一实施方式,第一转发子模块在从第一节点接收到远程直接内存访问信息的情况下,将远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,包括:若访问指令中用于第一连接的内存钥匙包括第一节点的第一本地钥匙,则将第一本地钥匙替换为用于第二连接的第二中间本地钥匙,得到包括第二中间本地钥匙的第一访问转发信息;若访问指令中用于第一连接的内存钥匙包括第一节点的第一远程钥匙和第二中间本地钥匙,则将第一远程钥匙替换为用于第二连接的第二中间远程钥匙,将第二中间本地钥匙替换为第二节点用于第二连接的第二本地钥匙,得到包括第二中间远程钥匙和第二本地钥匙的第一访问转发信息。
根据本发明一实施方式,远程直接内存访问信息中携带内存钥匙;相应的,信息处理模块302包括:第二转发子模块,用于在中间节点从第二节点接收到远程直接内存访问请求的情况下,将访问指令中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,并将第一访问转发信息发送至第一节点。
根据本发明一实施方式,第二转发子模块在从第二节点接收到远程直接内存访问信息的情况下,将远程直接内存访问信息中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,包括:若访问指令中用于第二连接的内存钥匙包括第二节点的第二本地钥匙,则将第二本地钥匙替换为用于第一连接的第一中间本地钥匙,得到包括第一中间本地钥匙的第二访问转发信息;若访问指令中用于第二连接的内存钥匙包括第二节点的第二远程钥匙和第一中间本地钥匙,则将第二远程钥匙替换为用于第二连接的第一中间远程钥匙,将第一中间本地钥匙替换为第二节点用于第二连接的第一本地钥匙,得到包括第一中间远程钥匙和第一本地钥匙的第二访问转发信息。
根据本发明一实施方式,访问指令包括以下至少之一:从远程主机读取部分内存的访问指令、将数据写入远程主机的访问指令、远程主机原子操作的访问指令、发送数据至远程主机内存的访问指令和从远程主机的内存接收数据的访问指令。
更进一步,基于如上文信息处理方法,本发明实施例还提供一种设备,如图4,该设备40包括:至少一个处理器401、以及与处理器401连接的至少一个存储器402、总线403;其中,处理器401、存储器402通过总线403完成相互间的通信;处理器401用于调用存储器402中的程序指令,以执行上述信息处理方法。
这里需要指出的是:以上对针对信息处理装置和设备实施例的描述,与前述图1至4所示的方法实施例的描述是类似的,具有同前述图1至4所示的方法实施例相似的有益效果,因此不做赘述。对于本发明配置信息的显示设备实施例中未披露的技术细节,请参照本发明前述图1至4所示的方法实施例的描述而理解,为节约篇幅,因此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种信息处理方法,所述方法包括:
接收第一节点或第二节点发送的远程直接内存访问信息,所述远程直接内存访问信息包括访问指令;
中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问;
其中,所述远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问,包括:
在中间节点从所述第一节点接收到远程直接内存访问请求的情况下,将所述远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,并将所述第一访问转发信息发送至所述第二节点。
2.根据权利要求1所述的方法,在接收第一节点或第二节点发送的远程直接内存访问信息之前,所述方法还包括:
发送第一连接建立请求至第一节点,建立与所述第一节点的第一连接;
接收第二节点的第二连接建立请求,建立与所述第二节点的第二连接。
3.根据权利要求1所述的方法,在接收第一节点或第二节点发送的远程直接内存访问信息之前,所述方法还包括:注册用于建立所述第一连接和所述第二连接的内存,所述第一连接和所述第二连接使用同一内存块。
4.根据权利要求1所述的方法,所述从所述第一节点接收到远程直接内存访问信息的情况下,将所述远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,包括:
若所述访问指令中用于第一连接的内存钥匙包括所述第一节点的第一本地钥匙,则将所述第一本地钥匙替换为用于第二连接的第二中间本地钥匙,得到包括所述第二中间本地钥匙的第一访问转发信息;
若所述访问指令中用于第一连接的内存钥匙包括所述第一节点的第一远程钥匙和第二中间本地钥匙,则将所述第一远程钥匙替换为用于第二连接的第二中间远程钥匙,将所述第二中间本地钥匙替换为所述第二节点用于第二连接的第二本地钥匙,得到包括所述第二中间远程钥匙和所述第二本地钥匙的第一访问转发信息。
5.根据权利要求1所述的方法,所述远程直接内存访问信息中携带内存钥匙;相应的,中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问,包括:
在中间节点从所述第二节点接收到远程直接内存访问请求的情况下,将所述访问指令中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,并将所述第二访问转发信息发送至所述第一节点。
6.根据权利要求5所述的方法,所述从所述第二节点接收到远程直接内存访问信息的情况下,将所述远程直接内存访问信息中用于第二连接的内存钥匙替换为相应的用于第一连接的内存钥匙,得到第二访问转发信息,包括:
若所述访问指令中用于第二连接的内存钥匙包括所述第二节点的第二本地钥匙,则将所述第二本地钥匙替换为用于第一连接的第一中间本地钥匙,得到包括所述第一中间本地钥匙的第二访问转发信息;
若所述访问指令中用于第二连接的内存钥匙包括所述第二节点的第二远程钥匙和第一中间本地钥匙,则将所述第二远程钥匙替换为用于第二连接的第一中间远程钥匙,将所述第一中间本地钥匙替换为所述第二节点用于第二连接的第一本地钥匙,得到包括所述第一中间远程钥匙和所述第一本地钥匙的第二访问转发信息。
7.根据权利要求1-6任一项所述的方法,所述访问指令包括以下至少之一:
从远程主机读取部分内存的访问指令、将数据写入远程主机的访问指令、远程主机原子操作的访问指令、发送数据至远程主机内存的访问指令和从远程主机的内存接收数据的访问指令。
8.一种信息处理装置,所述装置包括:
接收模块,用于接收第一节点或第二节点发送的远程直接内存访问信息,所述远程直接内存访问请求包括访问指令;
信息处理模块,用于中间节点基于与所述第一节点之间的第一连接和与所述第二节点之间的第二连接,对所述访问指令进行连接切换处理,以使得第一节点和第二节点能使用所述访问指令实现远程直接内存访问;
其中,所述远程直接内存访问信息中携带内存钥匙;相应的,所述信息处理模块包括:第一转发子模块,用于在中间节点从第一节点接收到远程直接内存访问请求的情况下,将远程直接内存访问信息中用于第一连接的内存钥匙替换为相应的用于第二连接的内存钥匙,得到第一访问转发信息,并将第一访问转发信息发送至第二节点。
9.一种设备,所述设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行权利要求1-7中任一项所述的信息处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111161169.1A CN114025013B (zh) | 2021-09-30 | 2021-09-30 | 一种信息处理方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111161169.1A CN114025013B (zh) | 2021-09-30 | 2021-09-30 | 一种信息处理方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114025013A CN114025013A (zh) | 2022-02-08 |
CN114025013B true CN114025013B (zh) | 2023-01-06 |
Family
ID=80055432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111161169.1A Active CN114025013B (zh) | 2021-09-30 | 2021-09-30 | 一种信息处理方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114025013B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103227778A (zh) * | 2013-03-26 | 2013-07-31 | 华为技术有限公司 | 内存访问方法、设备和系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2699030B1 (en) * | 2011-11-18 | 2016-05-18 | Huawei Technologies Co., Ltd. | Route switching device, network switching system and route switching method |
US10083131B2 (en) * | 2014-12-11 | 2018-09-25 | Ampere Computing Llc | Generating and/or employing a descriptor associated with a memory translation table |
US10157146B2 (en) * | 2015-02-12 | 2018-12-18 | Red Hat Israel, Ltd. | Local access DMA with shared memory pool |
US10706005B2 (en) * | 2017-12-08 | 2020-07-07 | Vmware, Inc. | File system interface for remote direct memory access |
CN111131470B (zh) * | 2019-12-27 | 2021-10-22 | 联想(北京)有限公司 | 终端设备及其数据处理方法以及数据处理系统 |
-
2021
- 2021-09-30 CN CN202111161169.1A patent/CN114025013B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103227778A (zh) * | 2013-03-26 | 2013-07-31 | 华为技术有限公司 | 内存访问方法、设备和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114025013A (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8347378B2 (en) | Authentication for computer system management | |
US20070041383A1 (en) | Third party node initiated remote direct memory access | |
US8458694B2 (en) | Hypervisor with cloning-awareness notifications | |
CN107689987B (zh) | 虚拟网络服务暴露方法及装置 | |
CN110719590B (zh) | 基于手机号码的一键登录方法、装置、设备及存储介质 | |
US8683169B2 (en) | Selecting an auxiliary storage medium for writing data of real storage pages | |
US8627434B2 (en) | Cross security-domain identity context projection within a computing environment | |
JP2002007182A (ja) | 外部記憶装置の共有ファイル管理方式 | |
CN114296646B (zh) | 基于io业务的缓存方法、装置、服务器和存储介质 | |
CN101253500A (zh) | 用于管理i/o的方法 | |
JP2004318744A (ja) | 高可用性を提供するデータベース処理方法 | |
JP2018156129A (ja) | 情報処理システム、情報処理装置及び情報処理方法 | |
CN114371914A (zh) | 容器ip地址配置方法、装置、存储介质及电子设备 | |
CN114025013B (zh) | 一种信息处理方法、装置及设备 | |
US20140365430A1 (en) | Information processing apparatus, system, and control method | |
CN109445966B (zh) | 事件处理方法、装置、介质和计算设备 | |
CN106843895B (zh) | 用于处理请求的方法、系统和可读存储介质 | |
US11509730B1 (en) | Analyzing web service frontends to extract security-relevant behavior information | |
CN114448929A (zh) | 数据链路转接方法、装置和系统,以及计算设备 | |
CN114449040A (zh) | 基于云平台的配置下发方法及装置 | |
CN115220640A (zh) | 用于处理数据的方法、电子设备和计算机程序产品 | |
US20210144217A1 (en) | Service communication proxy apparatus and method | |
CN114490104A (zh) | Android系统模块中的信息转发方法、装置、设备及介质 | |
WO2000034871A1 (fr) | Ordinateur, support enregistre comportant un programme de verification de la validite des adresses et procede de verification de la validite des adresses | |
CN115988080B (zh) | 一种基于代理中间件的微服务资源调用方法和系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |