用于路由器的数据传输方法及系统技术方案

技术编号:15942599 阅读:38 留言:0更新日期:2017-08-04 23:49
本发明专利技术公开了一种用于路由器的数据传输方法及系统,涉及数据传输领域。该方法的步骤为:发送端将需要传输的数据封装为OCM对象,创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标;发送端将OCM对象按照创建顺序添加至创建链表,OCM对象需要更新时,根据更新游标向接收端发送更新数据;当OCM对象需要删除时,根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端。本发明专利技术能够保证数据同步的精准,能够广泛适用于多种数据传输场景,显著的提升了用户体验。

【技术实现步骤摘要】
用于路由器的数据传输方法及系统
本专利技术涉及数据传输领域,具体涉及一种用于路由器的数据传输方法及系统。
技术介绍
路由器产品基于模块化思想,以组件作为基本功能单元。一个功能的实现往往需要多个组件之间的交互,组件之间的通信尤为重要。组件之间的通信一般采用TIPC(TransparentInterprocessCommunication,透明进程间通信技术)。与此同时,为了提高整个系统的性能,组件间的传输机制与底层的交互越少越好。路由器的传输一般为2种:1、普通数据传输,即不同业务组件之间发送或接收消息;2、数据备份传输,即路由器包括主板和备板,备板用于主板的备份,当主板出现异常时(例如宕机),备板会迅速转备为主(转变成异常前主板的配置),以保证业务的无缝连接,备板数据完全依赖于主板的数据。目前,路由器的传输机制为点到点单播通信机制,该通信机制不足以同时处理这两种传输场景,业务组件在调用该种传输机制时,实现比较复杂,需要业务自己考虑数据发送的时机和重传问题,因此,上述传输机制的适用范围比较单一,用户体验较差。
技术实现思路
针对现有技术中存在的缺陷,本专利技术解决的技术问题为:如何自动观察和发送同步数据,本专利技术保证了数据同步的精准,能够广泛适用于多种数据传输场景,显著的提升了用户体验。为达到以上目的,本专利技术提供的用于路由器的数据传输方法,包括以下步骤:步骤A:发送端将需要传输的数据封装为OCM对象,对每个OCM对象标记对应的对象标识符和类型,类型包括普通数据传输类型和备份数据传输类型,创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标;步骤B:发送端将OCM对象按照创建顺序添加至创建链表;步骤C:当OCM对象需要更新时,发送端在更新链表的链尾添加更新的OCM对象,根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据;步骤D:当OCM对象需要删除时,定义删除的OCM对象为D1,在创建链表中确定D1的上一个OCM对象D2,将D2添加至删除链表中的链尾,根据D2移动删除游标,根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端,在创建链表中删除D1。本专利技术提供的用于路由器的数据传输系统,包括对象链表创建模块、OCM对象添加模块、OCM对象更新模块和OCM对象删除模块;对象链表创建模块用于:将需要传输的数据封装为OCM对象,对每个OCM对象标记对应的对象标识符和类型,类型包括普通数据传输类型和备份数据传输类型,创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标;OCM对象添加模块用于:将OCM对象按照创建顺序添加至创建链表;OCM对象更新模块用于:当OCM对象需要更新时,在更新链表的链尾添加更新的OCM对象,根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据;OCM对象删除模块用于:当OCM对象需要删除时,定义删除的OCM对象为D1,在创建链表中确定D1的上一个OCM对象D2,将D2添加至删除链表中的链尾,根据D2移动删除游标,根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端,在创建链表中删除D1。与现有技术相比,本专利技术的优点在于:(1)参见本专利技术的步骤A至步骤D可知,与现有技术中需要业务自己考虑数据发送的时机和重传问题,本专利技术能够实现自动观察数据变化和自动发送数据,不仅保证了数据同步的精准,而且使得业务组件无需再考虑何时发送数据。因此,本专利技术实施例能够广泛适用于多种数据传输场景,显著的提升了用户体验。(2)本专利技术一次性批量更新和删除多条数据,工作效率较高,便于人们使用。(3)本专利技术为每个OCM对象添加有头部控制信息,通过头部控制信息能够方便的找到每个OCM对象在创建、更新和删除链表中的位置,清晰的得知OCM对象的类型和传输机制,便于人们使用。附图说明图1为本专利技术实施例中用于路由器的数据传输方法的流程图;图2为本专利技术实施例中S6的具体流程图;图3为本专利技术实施例中S8的具体流程图。具体实施方式以下结合附图及实施例对本专利技术作进一步详细说明。参见图1所示,本专利技术实施例中的用于路由器的数据传输方法,包括以下步骤:S1:发送端通过OCM(ObjectClassManagement,对象类型管理技术)将需要传输的数据封装为OCM对象。对每个OCM对象标记对应的oid(objectidentifier,对象标识符)和类型,类型包括普通数据传输类型和备份数据传输类型。通过OCM创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标,转到S2。S2:为每个OCM对象添加头部控制信息,同步控制信息包括传输机制、OCM对象位于创建链表、更新链表和删除链表中的位置,转到S3。S2的目的为:通过头部控制信息能够方便的找到每个OCM对象在创建、更新和删除链表中的位置,清晰的得知OCM对象的类型和传输机制,便于使用。S3:发送端将OCM对象按照创建顺序添加至创建链表,转到S4。S4:发送端将头部标识节点分别添加至更新链表和删除链表,转到S5。S5:若OCM对象需要更新,转到S6,若OCM对象需要删除,转到S7。S6:发送端在更新链表的链尾添加更新的OCM对象,根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据。参见图2所示,S6中根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据的具体流程为:S601:定义OCM对象更新后为U1,更新前为U2;判断更新游标是否为空,若是,则证明更新链表中未存在OCM对象(即未发生过更新),将更新游标指向U1,转到S604;否则证明更新链表中已存在更新的OCM对象(即已发生过更新),转到S602。S602:判断更新游标是否指向U2,若是,则证明当前OCM对象再次更新,转到S603,否则证明更新链表中存在不同的OCM对象(即发生过多次更新),保持更新游标的位置,转到S604。S603:在更新链表中判断U2的下一个OCM对象是否为空,若是,则证明更新链表中只有1个OCM对象更新,此时保持更新游标的位置,转到S604;否则证明更新链表中发生过多次更新,将更新游标指向U2的下一个OCM对象,在更新链表中删除U2(U2与U1的对象标识符相同,删除U2是为了保证准确传输U1),转到S604。S604:发送端将更新游标指向的OCM对象、以及之后的OCM对象进行打包后发送至接收端。S601~S603举例如下:第一次更新的OCM对象的对象标识符为1,更新游标为空,将更新游指向更新链表中的1(对应S601中更新游标为空的处理);第二次更新的OCM对象的对象标识符为2,更新游标之前已指向1(对应S602中更新游标未指向U2),此时需要更新1和2,更新顺序为1、2,因此保持更新游标的位置即可(对应S602中更新游标未指向U2的处理);第三次更新的OCM对象的对象标识符为1,更新游标之前已指向1,更新链表中的OCM对象排列顺序为第一次更新的1、2和第三次更新的1,此时需要更新2和第三次更新的1,更新顺序为2、1,因此将更新游标指向2(即下一个OCM对象,对应S602中更新游标指向U2、且S603中下一个OC本文档来自技高网...
用于路由器的数据传输方法及系统

【技术保护点】
一种用于路由器的数据传输方法,其特征在于,该方法包括以下步骤:步骤A:发送端将需要传输的数据封装为OCM对象,对每个OCM对象标记对应的对象标识符和类型,类型包括普通数据传输类型和备份数据传输类型,创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标;步骤B:发送端将OCM对象按照创建顺序添加至创建链表;步骤C:当OCM对象需要更新时,发送端在更新链表的链尾添加更新的OCM对象,根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据;步骤D:当OCM对象需要删除时,定义删除的OCM对象为D1,在创建链表中确定D1的上一个OCM对象D2,将D2添加至删除链表中的链尾,根据D2移动删除游标,根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端,在创建链表中删除D1。

【技术特征摘要】
1.一种用于路由器的数据传输方法,其特征在于,该方法包括以下步骤:步骤A:发送端将需要传输的数据封装为OCM对象,对每个OCM对象标记对应的对象标识符和类型,类型包括普通数据传输类型和备份数据传输类型,创建3个链表:创建链表、更新链表和删除链表,更新链表中设置有更新游标,删除链表中设置有删除游标;步骤B:发送端将OCM对象按照创建顺序添加至创建链表;步骤C:当OCM对象需要更新时,发送端在更新链表的链尾添加更新的OCM对象,根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据;步骤D:当OCM对象需要删除时,定义删除的OCM对象为D1,在创建链表中确定D1的上一个OCM对象D2,将D2添加至删除链表中的链尾,根据D2移动删除游标,根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端,在创建链表中删除D1。2.如权利要求1所述的用于路由器的数据传输方法,其特征在于,步骤C中所述根据更新的OCM对象移动更新游标后,根据更新游标向接收端发送更新数据的具体流程为:步骤C01:定义OCM对象更新后为U1,更新前为U2;判断更新游标是否为空,若是,将更新游标指向U1,转到步骤C04;否则转到步骤C02;步骤C02:判断更新游标是否指向U2,若是,转到步骤C03,否则保持更新游标的位置,转到步骤C04;步骤C03:在更新链表中判断U2的下一个OCM对象是否为空,若是,保持更新游标的位置,转到步骤C04;否则将更新游标指向U2的下一个OCM对象,在更新链表中删除U2,转到步骤C04;步骤C04:发送端将更新游标指向的OCM对象、以及之后的OCM对象进行打包后发送至接收端。3.如权利要求1所述的用于路由器的数据传输方法,其特征在于,步骤D中所述根据删除链表中的OCM对象创建删除开区间,将删除开区间发送至接收端的具体流程为:根据删除链表中的每一个OCM对象创建删除开区间,根据一个OCM对象创建删除开区间的流程为:将当前OCM对象作为删除开区间的左区间,在创建链表中确定当前OCM对象的下一个OCM对象,作为删除开区间的右区间,将删除开区间内的OCM对象作为需要删除的OCM对象。4.如权利要求1所述的用于路由器的数据传输方法,其特征在于,步骤A之后还包括以下步骤:为每个OCM对象添加头部控制信息,同步控制信息包括传输机制、OCM对象位于创建链表、更新链表和删除链表中的位置。5.如权利要求1至4任一项所述的用于路由器的数据传输方法,其特征在于,步骤D还包括以下步骤:当更新链表存在D1时,将D1删除。6.一种用于路由器的数据传输系统,其特征在于:该系统包括对象链表创建模块...

【专利技术属性】
技术研发人员:王明周朱晓凯
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1