首页 / 专利库 / 专利权 / 第I章 / 国际申请 / 请求书 / 一种RPKI数据的主动同步方法和系统

一种RPKI数据的主动同步方法和系统

阅读:0发布:2020-12-25

专利汇可以提供一种RPKI数据的主动同步方法和系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种RPKI数据的主动同步方法和系统,将计算强/弱校验和、数据 块 搜索、强/弱校验和比较等CPU负载较大的步骤转移至RPKI依赖方执行,从而降低 数据仓库 的计算开销;而且,本发明建立了RPKI数据仓库监测系统,当RPKI数据仓库中的证书文件及签名对象发生变化时,监测系统将主动向RPKI依赖方发出通知,告知RPKI依赖方进行数据同步,从而减少“无效”同步 请求 的发生。,下面是一种RPKI数据的主动同步方法和系统专利的具体信息内容。

1.一种RPKI数据的主动同步方法,包括以下步骤:
(1)RPKI数据仓库预先计算每一个需同步文件的校验和,并将文件的校验和在校验和缓存中进行存储;
(2)建立RPKI数据仓库监测系统,当监测系统监测到RPKI数据仓库中的文件发生变化时,首先向RPKI数据仓库发送NOTIFY消息通知RPKI数据仓库更新校验和缓存,然后向RPKI依赖方发送NOTIFY消息通知RPKI依赖方发送文件同步请求至RPKI数据仓库;
(3)RPKI数据仓库接收RPKI依赖方发出的同步请求,从校验和缓存中获取需同步文件的校验和序列并将其发送给RPKI依赖方;
(4)RPKI依赖方基于接收到的校验和序列,通过对校验和进行搜索比较,查找出需RPKI数据仓库提供的文件数据,构建成指令列表;
(5)RPKI依赖方将所需的文件数据块列表发送至RPKI数据仓库;
(6)RPKI数据仓库将所需的文件数据块返回至RPKI依赖方;
(7)RPKI依赖方基于原始的需同步文件和接收到的文件数据块列表完成文件同步。
2.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(1)中,所述校验和为32位的弱“滚动”校验和与128位的强MD4校验和。
3.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(2)中,当RPKI数据仓库中的文件发生变动时,重新计算更新文件的校验和,对校验和缓存进行更新。
4.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(2)中,RPKI数据仓库接收到NOTIFY消息后,向监测系统发送ACK消息进行响应;若监测系统在一定的时间间隔T内没有接收到ACK消息,则重发NOTIFY消息一次或多次,以确保校验和缓存中的校验和得到及时的更新。
5.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(2)中,RPKI依赖方接收到NOTIFY消息后,向监测系统发送ACK消息进行响应;若监测系统在一定的时间间隔T内没有接收到ACK消息,则将重发NOTIFY消息一次或多次,以确保RPKI依赖方能够及时接收到文件同步通知。
6.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(2)中,RPKI数据仓库形成重点RPKI依赖方列表,当RPKI数据仓库文件发生变化时,只有列表中的成员可接收到NOTIFY消息。
7.如权利要求1所述的RPKI数据的主动同步方法,其特征在于,步骤(4)中,RPKI依赖方利用校验和搜索算法对需同步的文件数据块进行搜索,查找出需RPKI数据仓库提供的文件数据块。
8.一种RPKI数据的主动同步系统,包括:RPKI依赖方、RPKI数据仓库、校验和缓存和RPKI数据仓库监测系统;
所述RPKI数据仓库监测系统实时监测RPKI数据仓库文件的变化,通知RPKI数据仓库更新校验和缓存;以及主动通知RPKI依赖方向RPKI数据仓库发出同步请求;
所述RPKI数据仓库计算需同步文件的校验和,并存储在校验和缓存中;接收RPKI依赖方的同步请求,向RPKI依赖方返回校验和序列;根据指令列表向RPKI依赖方发送所需的文件数据块;
所述RPKI依赖方根据从RPKI数据仓库返回的校验和序列,查找出需RPKI数据仓库提供的文件数据块,构建成指令列表发送至RPKI数据仓库;以及根据RPKI数据仓库发回的文件数据块进行文件同步。

说明书全文

一种RPKI数据的主动同步方法和系统

技术领域

[0001] 本发明属于网络信息技术领域,具体涉及一种RPKI数据的主动同步方法和系统。

背景技术

[0002] RPKI技术的兴起源于一种互联网路由安全威胁——路由劫持。由于BGP(Border Gateway Protocol)协议缺乏对路由通告内容真实性的验证,黑客的蓄意攻击以及错误的网络参数配置都可能导致路由劫持现象的发生。路由劫持对互联网的正常运行影响极大,可能导致大面积的网络瘫痪。见诸报端的典型路由劫持事件有:1997年4月的AS 7007事件、2004年的12月土其TTNet路由劫持事件、2006年1月Con-Edison路由劫持事件以及2008年巴基斯坦电信劫持YouTube流量事件等。
[0003] 为增强域间路由系统的安全,不少研究针对BGP协议层面的缺陷提出了解决方案,其中以BBN公司Stephen Kent提出的S-BGP(Secure BGP)和思科公司Russ White提出的soBGP(Secure Origin BGP)在业界最具影响。RPKI的概念最早便诞生于描述S-BGP方案的学术论文中。S-BGP提出了一种附加签名的BGP扩展消息格式,用以验证路由通告中IP地址前缀和传播路径上AS号之间的绑定关系,从而避免路由劫持。基于这样的设计,数字证书和签名机制被引入BGP范畴,从而顺理成章需要一套公钥基础设施(PKI)的支持。为验证路由通告签名者所持有的公钥,该签名者的IP地址分配上游为其签发证书:一方面验证其公钥;另一方面验证该实体对某个IP地址前缀的所有权。基于IP地址资源分配关系而形成的公钥证书体系,RPKI的基本框架就此形成。
[0004] 根据当前的全球互联网号码资源分配关系,RPKI构建了一个面向IP地址及AS号码的授权认证体系,并以X.509证书扩展及若干签名对象的形式加以呈现。RPKI体系由三部分构成:资源公钥基础设施(RPKI),数字签名对象和存储PKI对象和签名路由对象的分布式数据仓库
[0005] 在RPKI中,码号资源的分配者在分配资源的同时,为其下游节点签发分配资源的证书。依托RPKI提供的认证功能,IP地址最终用户单位(资源持有者)通过发布一种路由起源声明(route origin attestation,ROA)的签名对象,将特定的IP地址前缀授权给某个AS进行路由广播。
[0006] 所有证书以及ROA均通过分布式的RPKI数据仓库(RPKI repository)进行集中和分发。当证书和签名对象被创建后,它们被上传到RPKI数据仓库中;同时RPKI数据仓库在全球范围内对所有的RPKI依赖方(Relying Party,RP)开放。
[0007] RPKI依赖方是RPKI系统的使用者,从RPKI中获取ROA进行验证,并将验证结果反馈给BGP路由器,BGP路由器根据验证结果构建自己的过滤表项。因此RPKI依赖方是连接RPKI和域间路由系统的桥梁,是整个应用环节上的重要一环。
[0008] 作为RPKI认证体系的依赖方,参与域间路由交互的网络运行单位(运营商、大型企业网络等)定期从RPKI数据仓库同步资源证书以及包括ROA在内的签名对象集合,并将经过验证的消息(IP地址前缀与AS号的映射关系)发送至边界路由器,供其在接收路由通告时进行真伪判断。
[0009] 随着RPKI协议标准化工作的完成,RPKI全球化部署即将展开。但在全球广泛部署RPKI的情形下,对大量地址和路由数据以及签名对象的同步及维护成为RPKI部署中效率和开销的最大问题。因而,如何减少RPKI数据仓库应对全球缓存系统(即RPKI依赖方)进行数据同步时的计算开销及响应时延,成为RPKI全球化部署的一个关键问题。
[0010] RPKI数据仓库与RPKI依赖方之间进行的数据同步是通过RSYNC(Remote Synchronize)来完成的。RSYNC是一个开源工具,可提供快速文件增量传输,其核心是“rsync算法”。该算法描述如下:
[0011] 假设有两台设备a与b。a上有文件A,b上有文件B,且文件A与B非常相似(可能来自同一份源文件,只做了少量修改)。则rsync算法由如下若干步骤组成:
[0012] 1、b以s个字节为单位,将文件B分割成不重叠的若干(例如B是1024字节,s是512字节,则B被分割成不重叠的2块)。最后一块可能不到s个字节。
[0013] 2、b对每个s字节块都计算两种校验和:32位的弱“滚动”校验和、128位的强MD4校验和。
[0014] 3、B将这些校验和发给a。
[0015] 4、a逐一搜索A中每个s字节块(因为A中出现不同内容的长度可能是非s整数倍的字节,所以A中每个s字节块的步进偏移量是1),找到与B中某s字节块有同样弱校验和与强校验和的字节块。
[0016] 5、a向b发送一串指令。b根据这些指令同步B文件。这些指令或者是到B某个字节块的引用,或者是数据内容,这些数据内容均是A中与B不同的字节块。
[0017] 6、b通过以上步骤,最终同步B文件。
[0018] 基于上述机制,RPKI的数据同步流程如图1所示。
[0019] 由rsync的算法实现过程可知,在RPKI依赖方利用rsync协议同RPKI数据仓库进行数据同步时,计算强/弱校验和(值)、搜索数据块、强/弱校验和比较等计算开销较大的步骤主要由RPKI数据仓库一端来完成。在面临全球缓存系统发起的大量同步请求时,当前的RSYNC文件同步机制会使得RPKI数据仓库端的计算开销及内存负载过大,极易造成RPKI数据仓库响应时延过长乃至失效。
[0020] 在RPKI数据同步体系中,RPKI依赖方为获取新的路由数据及签名对象,会定期(假设时间间隔为T)向RPKI数据仓库发出数据同步请求,该时间间隔由RPKI依赖方进行设定。当T设置较小时,RPKI数据仓库中的数据在短时间内没有发生变更,而在该情形下仍需要对RPKI依赖方的同步请求进行响应和处理。由于最终的同步结果是,RPKI依赖方并没有获取到新的证书及签名对象等文件,我们可将这种情形的同步称作“无效”同步。当大量“无效”同步请求发出时,会使RPKI数据仓库增加无谓的计算开销;相反的,当T设置过大时,RPKI数据仓库中证书文件的变化不能及时的被RPKI依赖方获取,则无法为域间路由系统中的BGP路由信息交换提供完整无误的决策参考。

发明内容

[0021] 针对以上问题,本发明提供了一种RPKI数据的主动同步方法和系统,不仅减少RPKI数据仓库在处理同步请求时的计算开销,而且将现有的RPKI数据仓库被动处理同步请求变为主动向RPKI依赖方发出同步通知的通信方式。
[0022] 为实现上述目的,本发明采用以下技术方案:
[0023] 一种RPKI数据的主动同步方法,包括以下步骤:
[0024] (1)RPKI数据仓库预先计算每一个需同步文件的校验和,并将文件的校验和在校验和缓存中进行存储;
[0025] (2)建立RPKI数据仓库监测系统,当监测系统监测到RPKI数据仓库中的文件发生变化时,首先向RPKI数据仓库发送NOTIFY消息通知RPKI数据仓库更新校验和缓存,然后向RPKI依赖方发送NOTIFY消息通知RPKI依赖方发送文件同步请求至RPKI数据仓库;
[0026] (3)RPKI数据仓库接收RPKI依赖方发出的同步请求,从校验和缓存中获取需同步文件的校验和序列(包括弱校验和与强校验和)并将其发送给RPKI依赖方;
[0027] (4)RPKI依赖方基于接收到的校验和序列,通过对校验和进行搜索比较,查找出需RPKI数据仓库提供的文件数据块,构建成指令列表;
[0028] (5)RPKI依赖方将所需的文件数据块列表发送至RPKI数据仓库;
[0029] (6)RPKI数据仓库将所需的文件数据块返回至RPKI依赖方;
[0030] (7)RPKI依赖方基于原始的需同步文件和接收到的文件数据块列表完成文件同步。
[0031] 进一步地,步骤(1)中,所述校验和为32位的弱“滚动”校验和与128位的强MD4校验和。
[0032] 进一步地,步骤(2)中,当RPKI数据仓库中的文件发生变动时,重新计算更新文件的校验和,对校验和缓存进行更新。
[0033] 进一步地,步骤(2)中,RPKI数据仓库接收到NOTIFY消息后,向监测系统发送ACK(ACKNOWLEDGEMENT的简称)消息进行响应;若监测系统在一定的时间间隔T内没有接收到ACK消息,将重发NOTIFY消息一次或多次(T的大小以及重发次数均可由数据仓库管理员进行设定),确保校验和缓存中的校验和得到及时的更新。
[0034] 进一步地,步骤(2)中,RPKI依赖方接收到NOTIFY消息后,向监测系统发送ACK消息进行响应;若监测系统在一定的时间间隔T内没有接收到ACK消息,则将重发NOTIFY消息一次或多次(T的大小以及重发次数均可由数据仓库管理员进行设定),以确保RPKI依赖方能够及时接收到文件同步通知。
[0035] 进一步地,步骤(2)中,RPKI数据仓库(依照影响范围大小等因素)形成重点RPKI依赖方列表,当RPKI数据仓库文件发生变化时,只有列表中的成员可接收到NOTIFY消息。
[0036] 进一步地,步骤(4)中,RPKI依赖方利用校验和搜索算法对需同步的文件数据块进行搜索,查找出需RPKI数据仓库提供的文件数据块。
[0037] 一种RPKI数据的主动同步系统,包括:RPKI依赖方、RPKI数据仓库、校验和缓存和RPKI数据仓库监测系统;
[0038] 所述RPKI数据仓库监测系统实时监测RPKI数据仓库文件的变化,通知RPKI数据仓库更新校验和缓存;以及主动通知RPKI依赖方向RPKI数据仓库发出同步请求;
[0039] 所述RPKI数据仓库计算需同步文件的校验和,并存储在校验和缓存中;接收RPKI依赖方的同步请求,向RPKI依赖方返回校验和序列;根据指令列表向RPKI依赖方发送所需的文件数据块;
[0040] 所述RPKI依赖方根据从RPKI数据仓库返回的校验和序列,查找出需RPKI数据仓库提供的文件数据块,构建成指令列表发送至RPKI数据仓库;以及根据RPKI数据仓库发回的文件数据块进行文件同步。
[0041] 本发明的有益效果如下:
[0042] 1)增设校验和缓存:存储校验和,在RPKI依赖方进行文件同步请求时,相应的校验和可直接从缓存中获取,减少了RPKI数据仓库对数据块校验和的重复计算和请求响应时间。
[0043] 2)建立RPKI数据仓库监测系统:实时监测RPKI数据仓库文件的变化,当文件出现变化时通知RPKI数据仓库对校验和缓存进行更新。
[0044] 3)改变RSYNC算法:将计算强/弱校验和、数据块搜索、强/弱校验和比较等CPU负载较大的步骤转移至RPKI依赖方执行,从而降低数据仓库的计算开销。
[0045] 4)与原始的RPKI数据仓库被动处理同步请求的方式不同,本发明基于建立的RPKI数据仓库监测系统,当数据仓库中的证书文件及签名对象发生变化时,监测系统将主动向RPKI依赖方发出通知,告知RPKI依赖方进行数据同步,从而减少“无效”同步请求的发生。附图说明
[0046] 图1是现有技术中RPKI数据仓库与RPKI依赖方之间的数据同步机制示意图。
[0047] 图2是本发明RPKI数据仓库监测系统示意图。
[0048] 图3是本发明中RPKI数据仓库与RPKI依赖方之间的数据同步机制示意图。
[0049] 图4是本发明数据同步主动通知机制示意图。

具体实施方式

[0050] 下面结合说明书附图及实施例进一步详细描述本发明,但这并非是对本发明的限制,本领域技术人员根据本发明的基本思想,可以做出各种修改或改进,只要不脱离本发明的基本思想,均在本发明的范围之内。
[0051] 本发明RPKI数据的主动同步方法可分为两大部分:
[0052] 第一部分,建立新的基于RSYNC的数据同步机制
[0053] 1)建立校验和缓存
[0054] RPKI数据仓库将每一个文件块预先进行校验和的计算,并将文件块的弱校验和和强校验和在缓存中进行存储,当文件发生变化时,校验和缓存则将文件相应的校验和进行更新。在RPKI依赖方进行文件同步请求时,相应的校验和可直接从缓存中获取,减少了RPKI数据仓库对数据块校验和的重复计算和请求响应时间。
[0055] 2)RPKI数据仓库监测系统实时监测文件的变化
[0056] 建立RPKI数据仓库监测系统,监测系统是通过对RPKI数据仓库中各个文件数字签名的前后对比来实现对文件变化的监测。如图2所示,当RPKI数据仓库中的a.cer等文件发生变动时,监测系统发送NOTIFY消息至数据仓库,RPKI数据仓库接收到NOTIFY消息后发送ACK消息至监测系统,以告知已收到文件变动的通知,同时对更新文件的校验和重新进行计算,并对缓存中相应的校验和进行更新。若监测系统在一定的时间间隔T内没有接收到ACK,将重发NOTIFY消息一次或多次(T的大小以及重发次数均可由数据仓库管理员进行设定),确保缓存中的校验和得到及时的更新。
[0057] 3)基于校验和缓存与数据仓库监测系统重建文件同步机制
[0058] 与原始的RSYNC算法不同,改进后的RSYNC同步算法将校验和计算、搜索及校验和比较等CPU负载较大的步骤交由RPKI依赖方来完成,从而降低RPKI数据仓库的计算开销。基于改进后的RSYNC算法,RPKI数据仓库与RPKI依赖方的数据同步机制如图3所示,具体描述如下:
[0059] (1)RPKI数据仓库预先计算需同步文件的弱校验和与强校验和,并在缓存中进行存储。
[0060] (2)RPKI依赖方发送同步请求给RPKI数据仓库。
[0061] (3)RPKI数据仓库收到同步请求后,从缓存中获取文件的校验和序列并将其发送给RPKI依赖方。
[0062] (4)RPKI依赖方基于接收到的校验和序列,利用校验和搜索算法(按照背景技术中所述rsync算法的步骤4进行)对待同步文件进行搜索,查找出需RPKI数据仓库提供的文件数据块,构建成指令列表。
[0063] (5)RPKI依赖方将所需的文件数据块列表发送至RPKI数据仓库。
[0064] (6)RPKI数据仓库将列表中的文件数据块返回至RPKI依赖方。
[0065] (7)RPKI依赖方基于原始的需同步文件和接收到的文件数据块列表进行文件的同步。
[0066] 第二部分,通过主动通知的方式告知RPKI依赖方进行资源证书以及相关对象的同步
[0067] (1)基于RPKI数据仓库监测系统建立主动通知机制
[0068] RPKI数据仓库监测系统是通过对RPKI数据仓库中各个文件数字签名的前后比对来实现对文件变化的监测。
[0069] 如图4所示,若RPKI数据仓库监测系统监测到证书文件或ROA等对象发生变化,则首先向RPKI数据仓库发送NOTIFY消息,以更新缓存。然后会向RPKI依赖方发送NOTIFY消息通知其进行文件同步。RPKI依赖方接收到NOTIFY消息后,向监测系统发送ACK消息进行响应,同时RPKI依赖方发送文件同步请求至RPKI数据仓库,运用改进后的数据同步机制进行文件的同步。若监测系统在一定的时间间隔T内没有接收到ACK消息,则将重发NOTIFY消息一次或多次(T的大小以及重发次数均可由数据仓库管理员进行设定),以确保RPKI依赖方能够及时接收到文件更新通知。
[0070] (2)建立RPKI依赖方列表
[0071] 在RPKI形成广泛部署、RPKI依赖方数量庞大的情形下,若RPKI数据仓库逐一的对所有的RPKI依赖方发送NOTIFY消息,会造成RPKI数据仓库负载过大,增加RPKI数据仓库失效的险。针对该情形,RPKI数据仓库依照影响范围大小等因素形成重点RPKI依赖方列表。当RPKI数据仓库文件发生变化时,只有列表中的成员可接收到有关文件更新的NOTIFY消息。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈