数据同步装置及方法

文档序号:8447303阅读:149来源:国知局
数据同步装置及方法
【技术领域】
[0001] 本发明设及计算机技术领域,特别设及一种数据同步装置及方法。
【背景技术】
[0002] 在网络中,当发送节点向接收节点发送数据报文的速率大于接收节点处理数据报 文的速率时,网络将会产生拥挤甚至死锁。为了防止网络出现拥挤或死锁,人们通常采用基 于信用的流量控制方案,控制发送节点向接收节点发送数据报文的速率。
[0003] 在实际应用过程中,发送节点与接收节点之间的连接设置有信用值,且发送节点 仅在该连接的信用值大于0时,才可W向接收节点发送数据报文,该信用值与接收节点中 缓冲区的缓存空间数量有关。当接收节点向缓冲区中提交新的缓存空间时,接收节点侧的 主机对保存的信用值进行维护,将该连接对应的信用值加1;当接收节点通过远程直接数 据存取(英文;RemoteDirectMemcxryAccess;简称;畑MA)接口适配器接收到发送节点发 送的数据报文时,则需要消耗缓冲区中的缓存空间,RDMA接口适配器将保存的信用值减1, 并将减1后的信用值通过应答报文发送至发送节点。发送节点根据该应答报文即知悉该连 接当前的信用值,并根据当前的信用值确定是否可W继续发送数据报文,从而实现控制发 送节点发送数据报文的速率。
[0004] 当RDMA接口适配器中保存的信用值被减至0时,RDMA接口适配器通过外设部件 互连快速通道(英文;PeripheralComponentInterconnectExpress;简称;PCIE;)获取主 机中维护的最新的信用值,并进行保存,同时向发送节点发送最新的信用值。
[0005] 在实现本发明的过程中,发明人发现现有技术至少存在W下问题:
[0006] 由于RDMA接口适配器只有在信用值为0时,才会通过PCIE从主机中获取最新的 信用值,且获取最新的信用值需要较长时间,导致获取最新的信用值期间,发送节点不能继 续向接收节点发送数据报文,造成数据报文的传输中断。

【发明内容】

[0007] 为了解决【背景技术】中RDMA接口适配器通过PCIE从主机中获取最新的信用值时, 数据报文的传输中断的问题,本发明实施例提供了一种数据同步装置及方法。所述技术方 案如下:
[000引第一方面,提供了一种数据同步装置,所述装置包括:
[0009] 接收模块,用于当接收到发送节点发送的数据报文时,将与所述发送节点对应的 第一信用值减1,并向所述发送节点发送携带有所述第一信用值的应答报文;
[0010] 检测模块,用于检测所述RDMA接口适配器维护的所述第一信用值是否小于当前 口限级别对应的同步阔值,所述同步阔值大于0 ;
[0011] 同步模块,用于当所述第一信用值小于所述同步阔值时,通过外设部件互连快速 通道PCIE同步主机中维护的第二信用值。
[0012] 在第一方面的第一种可能的实施方式中,所述RDMA接口适配器中设置有至少一 个口限级别,所述口限级别与所述同步阔值呈负相关关系。
[0013] 在第一方面的第二种可能的实施方式中,所述装置,还包括:
[0014] 获取模块,用于获取与所述同步阔值对应的调整范围值;
[0015] 计算模块,用于根据所述第二信用值与所述同步阔值计算信用值增量;
[0016] 调整模块,用于根据所述信用值增量与所述调整范围值,调整所述RDMA接口适配 器中的所述口限级别。
[0017] 结合第一方面的第二种可能的实施方式,在第一方面的第=种可能的实施方式 中,所述调整模块,包括:
[0018] 第一检测单元,用于检测所述信用值增量是否小于所述调整范围值的下限;
[0019] 第一调整单元,用于当所述信用值增量小于所述调整范围值的下限时,在所述当 前口限级别基础上下调预设级数。
[0020] 结合第一方面的第二种可能的实施方式,在第一方面的第四种可能的实施方式 中,所述调整模块,包括:
[0021] 第二检测单元,用于检测所述信用值增量是否大于所述调整范围值的上限;
[0022] 第二调整单元,用于当所述信用值增量大于所述调整范围值的上限时,在所述当 前口限级别基础上上调预设级数。
[0023] 结合第一方面的第二种可能的实施方式,在第一方面的第五种可能的实施方式 中,所述调整模块,包括:
[0024] 第S调整单元,用于当所述信用值增量大于所述调整范围值的下限,且小于所述 调整范围值的上限时,保持所述当前口限级别。
[0025] 结合第一方面、第一方面的第一种可能的实施方式、第一方面的第二种可能的实 施方式、第一方面的第=种可能的实施方式、第一方面的第四种可能的实施方式或第一方 面的第五种可能的实施方式,在第一方面的第六种可能的实施方式中,所述装置,还包括:
[0026] 发送模块,用于向所述发送节点发送携带有所述第二信用值的更新报文,所述更 新报文用于告知所述发送节点对应连接的最新信用值。
[0027] 第二方面,提供了一种数据同步方法,所述方法包括:
[002引当接收到发送节点发送的数据报文时,将与所述发送节点对应的第一信用值减1, 并向所述发送节点发送携带有所述第一信用值的应答报文;
[0029] 检测所述RDMA接口适配器维护的所述第一信用值是否小于当前口限级别对应的 同步阔值,所述同步阔值大于0 ;
[0030] 当所述第一信用值小于所述同步阔值时,通过外设部件互连快速通道PCIE同步 主机中维护的第二信用值。
[0031] 在第二方面的第一种可能的实施方式中,所述RDMA接口适配器中设置有至少一 个口限级别,所述口限级别与所述同步阔值呈负相关关系。
[0032] 在第二方面的第二种可能的实施方式中,所述方法,还包括:
[0033] 获取与所述同步阔值对应的调整范围值;
[0034] 根据所述第二信用值与所述同步阔值计算信用值增量;
[0035] 根据所述信用值增量与所述调整范围值,调整所述RDMA接口适配器中的所述口 限级别。
[0036] 结合第二方面的第二种可能的实施方式,在第二方面的第=种可能的实施方式 中,所述根据所述信用值增量与所述调整范围值,调整所述RDMA接口适配器中的所述口限 级别,包括:
[0037] 检测所述信用值增量是否小于所述调整范围值的下限;
[003引当所述信用值增量小于所述调整范围值的下限时,在所述当前口限级别基础上下 调预设级数。
[0039] 结合第二方面的第二种可能的实施方式,在第二方面的第四种可能的实施方式 中,所述根据所述信用值增量与所述调整范围值,调整所述RDMA接口适配器中的所述口限 级别,包括:
[0040] 检测所述信用值增量是否大于所述调整范围值的上限;
[0041] 当所述信用值增量大于所述调整范围值的上限时,在所述当前口限基础上上调预 设级数。
[0042] 结合第二方面的第二种可能的实施方式,在第二方面的第五种可能的实施方式 中,所述根据所述信用值增量与所述调整范围值,调整所述RDMA接口适配器中的所述口限 级别,包括:
[0043] 当所述信用值增量大于所述调整范围值的下限,且小于所述调整范围值的上限 时,保持所述当前口限级别。
[0044] 结合第二方面、第二方面的第一种可能的实施方式、第二方面的第二种可能的实 施方式、第二方面的第=种可能的实施方式、第二方面的第四种可能的实施方式或第二方 面的第五种可能的实施方式,在第二方面的第六种可能的实施方式中,所述方法,还包括:
[0045]向所述发送节点发送携带有所述第二信用值的更新报文,所述更新报文用于告知 所述发送节点对应连接的最新信用值。
[0046] 本发明实施例提供的技术方案带来的有益效果是:
[0047] 通过检测RDMA接口适配器维护的第一信用值是否小于当前口限级别对应的同步 阔值,并在第一信用值小于该同步阔值时,同步主机中维护的第二信用值;解决了RDMA接 口适配器通过PCIE从主机中获取最新的信用值时,数据报文的传输中断的问题;达到了 畑MA接口适配器在同步最新的信用值的过程中,发送节点仍旧能够发送数据报文,防止数 据报文传输中断的效果。
【附图说明】
[0048] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W根据该些附图获得其他 的附图。
[0049] 图1是本发明一个实施例提供的数据同步装置的结构方框图;
[0050] 图2是本发明另一实施例提供的数据同步装置的结构方框图;
[0化1]图3是本发明一个实施例提供的畑MA接口适配器的框图;
[0052]图4是本发明一个实施例提供的数据同步方法的方法流程图;
[0化3]图5A是本发明另一实施例提供的数据同步方法的方法流程图;
[0054] 图5B是本发明另一实施例提供的数据同步方法的方法流程图;
[0055] 图6A是本发明一个实施例提供的数据同步方法提供的应用场景的示意图;
[0化6] 图6B是本发明一个实施例提供的信用控制器的示意图。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1