[发明专利]一种基于RDMA的数据传输方法和分布式共享内存系统在审
申请号: | 201811474421.2 | 申请日: | 2018-12-04 |
公开(公告)号: | CN111277616A | 公开(公告)日: | 2020-06-12 |
发明(设计)人: | 舒继武;唐小岚;陆游游;陈游旻;杨洪章;张晗 | 申请(专利权)人: | 中兴通讯股份有限公司;清华大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 黎雷;姜凤岩 |
地址: | 518057 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 rdma 数据传输 方法 分布式 共享 内存 系统 | ||
1.一种基于远程直接内存访问RDMA的数据传输方法,应用于分布式共享内存系统,其特征在于,包括:
第一节点创建至少两个完成队列CQ,并将CQ与CPU固定映射;
创建队列对QP链路,将至少两个QP共享绑定同一个CQ;
通过创建的所述QP链路并发向第二节点发送数据。
2.根据权利要求1所述的方法,其特征在于,通过创建的所述QP链路并发向第二节点发送数据,具体包括:
在待发送数据为请求命令时,通过所述QP链路中的第一链路发送;
在待发送数据为内存数据时,通过所述QP链路中的第二链路发送。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当分布式共享内存系统的客户端读取到服务端节点的数据后,计算校验码并判断是否与读取到的校验码相同,若两者相同,则完成读操作;否则,重新读取。
4.一种基于RDMA的分布式共享内存系统,其特征在于,所述共享内存系统包括客户端和服务端,所述服务端包括主节点和副节点,所述共享内存系统各节点通过RDMA进行网络互连,并通过如权利要求1-3任一所述方法进行数据传输。
5.如权利要求4所述系统,其特征在于,所述系统的各节点通过快速两阶段提交协议进行共享内存系统的更新操作。
6.如权利要求5所述系统,其特征在于,当所述系统的服务端主节点接收到来自客户端的更新请求时,所述主节点发起写操作,将需要更新的内容发送至副节点的日志区。
7.如权利要求5所述系统,其特征在于,所述两阶段提交协议的第一阶段具体包括:
所述系统的主节点向所有副节点发起准备请求prepare,并等待副节点响应。
当所述副节点收到所述主节点的提交请求时,通过刷新指令flush将日志持久化;
若副节点的刷写日志操作执行成功,则返回成功消息success,否则返回失败消息fail。
8.如权利要求7所述系统,其特征在于,所述两阶段提交协议的第二阶段具体包括:
当主节点从各所述副节点获得的完成消息都为success时,主节点向所有副节点发出保存请求commit;
当所述副节点收到主节点的commit请求时,副节点将日志区数据转写入数据区;若写入成功,则释放事务期间内占用的资源,副节点向主节点发送success消息;
主节点若收到所有副节点反馈的success消息,则完成事务提交,成功返回客户端。
9.如权利要求7所述系统,其特征在于,若主节点在第一阶段的询问超时之前没有获取到所有副节点的success响应消息,则主节点通知所有副节点删除日志,返回客户端写入失败;
若主节点在第二阶段的询问超时之前没有获取到所有副节点的success响应消息,则主节点向未响应节点重复发送提交请求,副节点恢复工作后,执行相应提交操作并返回。
10.如权利要求4所述系统,其特征在于,所述系统通过锁机制实现并发控制,当客户端发出更新请求时,检查需要更新的目标区域,若已上锁,则等待锁释放;否则,对目标区域加锁直至完成写操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司;清华大学,未经中兴通讯股份有限公司;清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811474421.2/1.html,转载请声明来源钻瓜专利网。