[发明专利]一种应用于远程过程调用系统的零拷贝序列化方法在审

专利信息
申请号: 202111396667.4 申请日: 2021-11-23
公开(公告)号: CN114077507A 公开(公告)日: 2022-02-22
发明(设计)人: 田臣;张天凡;周华平;王怿 申请(专利权)人: 南京大学
主分类号: G06F9/54 分类号: G06F9/54;G06F9/50;G06F15/173
代理公司: 南京钟山专利代理有限公司 32252 代理人: 王路
地址: 210023 江苏*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 应用于 远程 过程 调用 系统 拷贝 序列 方法
【说明书】:

发明公开了一种应用于远程过程调用系统的零拷贝序列化方法,包括:步骤1:客户端应用程序调用序列化库,对应用程序的数据进行序列化;步骤2:序列化库将应用程序数据转换成字节流,随后根据内存分配策略申请内存,并根据内存批量注册策略将内存注册,再将转换后的字节流写入到分配的内存空间中,生成序列化后的消息;步骤3:客户端应用程序使用基于RDMA的RPC系统通过网络传输序列化后的消息,将序列化后的消息交由服务端的程序处理;步骤4:服务端的程序完成客户端的请求后,将运行结果按照上述步骤反向发回给客户端程序。本发明消除了现有序列化库中的多次拷贝,并有效减少了内存分配次数和内存分配总量,显著提升了RPC系统的吞吐量。

技术领域

本发明属于分布式计算系统技术领域,具体涉及一种应用于远程过程调用系统的零拷贝序列化方法。

背景技术

远程过程调用(Remote Procedure Call,RPC)是分布式系统通信的主要方式,它使得客户端可以像调用本地过程一样调用远程服务端的过程。RPC往往涉及到序列化,序列化一般是指将数据结构转换成适合存储或者传输的字节流。这里的序列化是指将客户请求转换成易于网络传输的格式。RPC的客户端将调用请求序列化后通过网络发送到服务端,服务器在收到网络消息后,对消息进行反序列化得到用户的请求,从而进行相应处理。服务器在相应的计算完成后,也会将返回值序列化后发送给客户端,客户端在反序列化后得到所需的计算结果。大量的研究表明,序列化在当前的数据中心中占据非常大的开销。

远程直接内存访问(Remote Direct Memory Access,RDMA)是为高性能计算设计的高速网络。随着基于以太网的RDMA网络(RDMA over Converged Ethernet,RoCE)的普及,RDMA逐渐在数据中心大规模部署,从而数据中心的网络传输性能有了大幅提升。RDMA与传统网络的Socket编程方式有较大的不同,这会为上层应用的程序员带来编程的困难。而RPC可以提供编程的透明性,因此在RDMA网络的基础上搭建高效的RPC系统成为学术界和工业界的研究热点。

RDMA的传输模式可以分为不可靠的数据报传输(Unreliable Datagram,UD)、不可靠的连接传输(Unreliable Connection,UC)和可靠的连接传输(Reliable Connection,RC)三类。其中UD和RC的应用较广,UD类似于传统网络中的用户数据报协议(User DatagramProtocol,UDP),RC类似于传统网络中的传输控制协议(Transmission Control Protocol,TCP)。

诸多基于RDMA UD和RDMA RC的RPC系统被提出并应用在数据中心里,这加速了网络中的数据交换,也使得序列化的开销问题日益突出,成为数据中心的瓶颈,针对序列化的优化迫在眉睫。

序列化一般由程序调用第三方序列化库来完成。在序列化库对消息进行序列化的过程中,由于序列化后生成的消息大小无法提前预知,所以序列化库会存在多次内存的重新分配和拷贝操作,这是序列化的一个重大开销来源。具体来说,序列化库会先分配一块内存缓冲区(例如1024字节),随后将序列化后的消息写入这块缓冲区中。如果序列化后的消息大小超过了此前分配的缓冲区大小,那么序列化库会重新分配一块更大的缓冲区(上次分配的1.5或者2倍大小),然后将原缓冲区的数据悉数拷贝到新缓冲区里,而后释放掉原缓冲区。如果新缓冲区大小也不够,便一直重复此过程直到序列化完成。

序列化过程中的多次内存拷贝严重影响了序列化的性能,因此结合基于RDMA的RPC系统,消除序列化过程中的内存拷贝,实现一个零拷贝的序列化方法可以有效提升系统性能,具有很大的价值。

发明内容

本发明针对现有序列化库在序列化过程中的多次内存拷贝问题,旨在实现一个零拷贝的序列化库,并能够和数据中心的RPC系统结合使用,以提高系统的整体性能。

为实现上述目的,本发明采用以下技术方案:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111396667.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top