[发明专利]网络通信方法、装置、设备、存储介质和程序产品在审
申请号: | 202111421323.4 | 申请日: | 2021-11-26 |
公开(公告)号: | CN114268654A | 公开(公告)日: | 2022-04-01 |
发明(设计)人: | 李毅伦;张培承;周祥为;秦文劭;万化 | 申请(专利权)人: | 上海浦东发展银行股份有限公司 |
主分类号: | H04L67/141 | 分类号: | H04L67/141;H04L67/146;H04L67/133;H04L67/60;H04L67/01 |
代理公司: | 华进联合专利商标代理有限公司 44224 | 代理人: | 黄晓庆 |
地址: | 200001 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 网络 通信 方法 装置 设备 存储 介质 程序 产品 | ||
本申请涉及一种网络通信方法、装置、设备、存储介质和程序产品。该方法包括响应于客户端发送的远程过程调用RPC连接请求,分配远程直接数据存取RDMA网络通信文件描述符;将RDMA网络通信文件描述符加入到RPC连接请求对应的RDMA完成队列中,建立与客户端之间的RPC通信通道;根据RPC通信通道与客户端进行RDMA通信。采用该方法能够提高网络传输量巨大、高吞吐时的网络通信性能。
技术领域
本申请涉及网络通信技术领域,特别是涉及一种网络通信方法、装置、设备、存储介质和程序产品。
背景技术
远程过程调用(Remote Procedure Call,RPC)是分布式系统常见的一种通信方式,其属于访问远程分布式数据库的主要模式。RPC机制与RPC工具也为分布式应用程序设计提供了手段和方便,用户可以无需知道网络结构和协议细节而直接使用RPC工具设计分布式应用程序。
相关技术中,RPC框架大部分是面向TCP/IP的网络传输方式,而TCP/IP得通信方式是需要数据发送方对数据进行封装及一些列多层网络协议的数据包处理工作后,数据包才能从缓冲区进行网络传输。且传输到了数据接收方后,数据接收方需要对数据包进行一系列多层协议的解析并将解析后的数据复制到相应位置的用户态缓冲时,用户应用程序才能被调用。
然而,在网络传输量巨大、高吞吐和低延迟的大规模集群以及分布式集群部署的区域,使用TCP/IP的RPC通信方式,已无法满足系统对通信的性能要求。
发明内容
基于此,有必要针对上述技术问题,提供一种能够在网络传输量巨大、高吞吐情况下,提高通信的性能的网络通信方法、装置、设备、存储介质和程序产品。
第一方面,本申请提供了一种网络通信方法,该方法包括:
响应于客户端发送的远程过程调用RPC连接请求,分配远程直接数据存取RDMA网络通信文件描述符;
将RDMA网络通信文件描述符加入到RPC连接请求对应的RDMA完成队列中,建立与客户端之间的RPC通信通道;
根据RPC通信通道与客户端进行RDMA通信。
在其中一个实施例中,在上述分配远程直接数据存取RDMA网络通信文件描述符之前,该方法包括:
获取已完成的RDMA工作队列中RDMA监听文件描述符的状态;
若RDMA监听文件描述符的状态为可读状态,确定客户端发送了RPC连接请求。
在其中一个实施例中,该方法包括:
建立与客户端之间的RPC通信通道后,将RDMA监听文件描述符的状态设置为可写状态;可写状态表示处于接收客户端发送RPC连接请求的状态。
在其中一个实施例中,该方法包括:上述将RDMA通信文件描述符加入到对应的RDMA完成工作队列中,包括:
将RDMA通信文件描述符加入到RPC连接请求对应的RDMA完成工作队列的套接字集合中。
在其中一个实施例中,该方法包括:
调用预设的队列创建组件,创建至少一个RDMA工作队列;RDMA工作队列用于供客户端与服务端进行通信。
在其中一个实施例中,上述调用预设的队列创建组件,创建至少一个RDMA工作队列,包括:
校验并修正用户输入的工作队列参数;
若工作队列参数合法,创建RDMA工作队列的资源信息,并申请RDMA工作队列的缓存空间,得到RDMA工作队列。
在其中一个实施例中,该方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海浦东发展银行股份有限公司,未经上海浦东发展银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111421323.4/2.html,转载请声明来源钻瓜专利网。