一种分层结构的数据修复方法及实现该方法的节点设备的制作方法

文档序号:7863405阅读:245来源:国知局
专利名称:一种分层结构的数据修复方法及实现该方法的节点设备的制作方法
技术领域
本发明涉及单向网与双向网融合的分层数据传输与转发、修复技术领域,特别是涉及一种在单向网和双向网融合的网络环境下进行分层数据分发和修复的方法及网络节点设备。
背景技术
以下是本领域中的一些名词解释,其使用范围仅限于本发明点对点修复是指一个修复源向一个待修复终端发送修复数据片进行数据文件修复的行为。点对多点修复是指一个修复源同时向多个待修复终端发送修复数据片进行数据文件修复的行为。门限值是选择“点对点”修复和“点对多点”修复模式切换时所参考的同一数据片请求修复的终端数量。当终端数量低于门限值则采用点对点修复方法,高于门限值则采用点对多点修复方法。请求消息由终端发起的用于请求节点设备提供数据修复服务的消息,包含丢失数据片ID和终端ID,终端发送到请求消息可以在收到接收结束指示标志后,在一个设定时延内,以均勻分布的时间点选择向节点发送请求消息。转发请求消息由节点设备发起的用于将数据修复消息告知上一级节点设备或修复服务器的消息,包含丢失数据片ID、终端ID和转发请求的节点设备I D。响应消息节点设备发给终端用于数据修复的消息,含修复数据的响应消息包含消息头和数据片负载,响应消息头又包含数据片I D和目标终端I D。转发响应消息由上一级节点设备或修复服务器发起的用于将数据片发送至节点设备的消息。含修复数据的转发响应消息包含消息头和数据片负载,且转发响应消息头包含数据片ID,目标终端ID和转发请求的节点设备ID。播发服务器前端服务系统中的一种设备,其以单向网络为传输通道,负责向节点设备和终端播发数据。修复服务器前端服务系统中的一种设备,其以双向网络为传输通道,根据终端和节点设备的修复请求返回相应修复数据片、重定向消息或错误消息。节点设备具备向终端和其他修复节点设备提供数据修复功能的设备,其通过单向网络从播发服务器接收数据,通过双向网完成数据修复。与终端直连的节点设备尽量靠近终端部署,节点设备间级联,级联的最高端是修复服务器。终端终端通过单向网络从播发服务器接收数据,通过双向网连接节点设备。每个终端保存直连节点设备的地址和修复服务器地址。在3G移动通信领域中定义的多媒体广播多播业务MBMS (Multimedia BroadcastMulticast Service)中描述一种数据修复方法[3GPP TS26. 346],其修复步骤如下步骤一,终端识别文件单向传输终止;2/7页步骤二,终端定位传输过程中的丢失数据片;步骤三,终端计算随机后退时间,在修复服务器列表中随机选择一个修复服务器;
步骤四,终端发送请求消息;步骤五,修复服务器收到的修复请求消息,经过处理发送响应消息,可以包含四种数据修复数据、重定向到一个新的文件单向传输会话、重定向到其他服务器和返回错误描述请求。上述方法修复服务器收到在大量不同数据修复请求的时候,为避免请求内爆,依靠重定向完成服务器间的负载均衡,导致终端向修复服务器要至少发起两次请求才能完成数据修复,时间开销大,且上述方法适用于单向网和双向网同时存在的网络,终端与终端之间互不通信,服务器端重定向承受的压力大。

发明内容
本发明提供了一种分层结构的数据修复方法及实现该方法的节点设备,用于解决单向网与双向网融合环境下的分层数据传输、转发和修复的问题。本发明解决上述问题的技术方案如下一种分层结构的数据修复方法,包括以下步骤步骤1,终端定位数据丢失的位置,并向直连节点设备发送修复请求;步骤2,直连节点设备接收到修复请求后立即响应并回复确认信息,所述确认信息是指包含确认码的响应消息;步骤3,终端收到确认后启动计时器并在等待时延Tl后发送第二次请求消息,这里的请求消息中包含步骤2所述的确认码;步骤4,直连节点设备接收第二次修复请求消息后,若能立即提供修复服务,则节点设备为终端提供点对点或点对多点数据修复服务;步骤5,若直连节点设备无法提供修复服务,则该节点设备向终端回复可提供修复服务的终端地址和等待时延T2值,由终端根据自身情况选择修复方法。本发明的有益效果是本发明将采用网络节点设备转发方法进行数据修复,同时配合选择终端之间数据互补或向前端修复服务器直接请求进行点对点或点对多点数据修复。通过本发明的修复过程,可以减少修复请求在前端服务器和终端之间传输的数量和路径,减轻前端服务器的压力,降低了网络传输开销,提高修复效率。同时,还可以减少点对多点数据修复的数量和次数,提高单向网络的使用效率。在上述技术方案的基础上,本发明还可以做如下改进。进一步,所述步骤I具体包括步骤11,直连节点设备向终端和周围节点设备通告自身地址,终端和周围节点设备收到后更新相关保存地址;步骤12,终端收到单向网传输数据内容终止标识后,校验该数据是否完整,若收到完整内容,则保存成完整文件;步骤13,若收到数据不完整,则终端定位数据丢失的位置,并向直连节点设备发送修复请求,其中包括丢失数据片ID和终端ID。
采用上述进一步方案的有益效果是采用通告自身地址的方法可以使节点设备采用负载均衡等更为灵活的方法配置数据修复能力,同时终端可以根据自身的网络环境选择最近或能力最优的节点设备请求数据修复,提高数据修复的成功率。所述步骤2进一步包括步骤21,直连节点设备接收到修复请求后立即响应并回复确认消息,并在收到单向网络传输数据终止标识后的时延Tl内继续接收其他直连终端报告的数据修复请求;步骤22,若直连节点设备上有修复请求所述数据片,且为第一次收到修复请求,则执行步骤3 ;步骤23,若直连节点设备收到相同的修复请求,则所述直连节点设备进行计数并只回复响应消息;步骤24,若直连节点设备没有修复请求所述数据片,则立即向上一级节点设备发起转发请求消息,转发请求消息包括丢失数据片ID、终端ID和节点设备ID,若上一级节点设备也无所述数据片,则继续向上请求,转发请求消息在原内容的基础上增加该节点设备ID,直至最高层的修复服务器;步骤25,具有所述数据片的非直连节点设备或修复服务器收到请求后立即按照请求消息中的节点设备ID向下级节点设备发送包含数据片的响应消息。采用上述进一步方案的有益效果是节点设备作为播发内容播发的中继站点可以汇总来自终端的修复请求并提供数据修复服务,从而减少终端向修复服务器发送请求的数量,减轻修复服务器的压力,降低了网络传输开销,提高修复效率。进一步,所述步骤25中的非直连节点设备或修复服务器根据繁忙程度选择全部回复或只回复最后一级节点设备ID。采用上述进一步方案的有益效果是可以使得节点设备或修复服务器在服务压力较大时加快修复进程。进一步,所述步骤4进一步包括若请求终端数量小于门限值,则立即对终端进行点对点数据修复;若请求终端数量大于门限值,则进行点对多点数据修复。采用上述进一步方案的有益效果是节点设备可根据统计量灵活选择采用点对点或点对多点的方式对终端进行数据修复,进一步提高修复效率,减少网络传输开销。进一步,所述步骤5进一步包括若终端需要立即修复,则待修复终端向步骤5中的可修复终端发送请求并进行点对点修复;若终端可以等待,则在等待时延T2后重新向直连节点设备发起第二次请求,若仍无法修复则终端直接向修复服务器发起数据修复请求。采用上述进一步方案的有益效果是在实际应用中可根据终端的性能和网络环境对终端进行灵活的修复参数配置,如用户正进行文件播放,急需数据修复时,可选择向可修复终端请求进行修复。对于用户可等待的情况,可以在节点设备不繁忙的时候再行处理,通过延迟减轻节点设备的修复服务压力。一种实现所述数据修复方法的节点设备,包括网络通信组件、消息处理组件、数据缓存组件;网络通信组件其通过单向网与播发服务器通信,用于从播发服务器接收数据;其通过双向网向上依次连接上级节点设备直至修复服务器,用于向上级节点设备或修复服务器发送转发请求消息,并接收上级节点设备或修复服务器发送的响应消息;其通过双向网向下依次连接下级节点设备直至终端,用于接收终端发送的修复请求并获取修复请求中指定的数据片,并发送含该数据片的响应消息给终端;其与数据缓存组件及消息处理组件通信,用于将接收到转发响应消息中的数据片送至数据缓存组件,将所有请求消息提取核心消息结构送至消息处理组件,并将消息处理组件发来的响应消息头或转发响应消息头结
合和数据缓存组件发来的数据片组装成含数据片的响应消息或转发响应消息;消息处理组件其与网络通信组件及数据缓存组件通信,用于处理网络通信组件发送的请求消息,查询数据缓存组件中的数据,并向网络通信组件发送响应消息头或转发响应消息头;数据缓存组件其与网络通信组件及消息处理组件通信,用于接收网络通信组件发送的数据,并向消息处理组件提供数据存储查询结果。另外,上述涉及的各级节点设备结构是一样的,均包括网络通信组件、数据缓存组件和消息处理组件。本发明的有益效果是本发明的节点设备实现了单向网与双向网融合环境下的分层数据传输与转发及修复功能,同时通过对节点设备应对修复请求量的规模控制,实现层次化服务,减少了重复传输的数据量,提高了整体网络系统的服务效率。在上述技术方案的基础上,本发明还可以做如下改进。进一步,所述所述消息处理组件向所述网络通信组件发送响应消息头包括方式A、方式B或方式C :方式A,若消息处理组件收到网络通信组件发送的请求消息,向网络通信组件发送含确认信息的响应消息头,若查询到数据缓存组件中不存在所需数据,则发送转发请求消方式B,若消息处理组件收到网络通信组件发送的第二次请求消息,且查询到数据缓存组件中存在所需数据,则向网络通信组件发送响应消息头,否则发送步骤5所述可修复的终端地址和节点设备的等待时延T2值;方式C,若消息处理组件收到网络通信组件发送的转发响应消息,且所述转发响应消息是由下级节点设备的转发请求所致,则向网络通信组件发送转发响应消息头,其中包括相应节点设备ID、终端ID和数据片ID。采用上述进一步方案的有益效果是由消息处理组件根据当前状态及时处理发送的情况,尽量采用无状态的处理方法,减少对系统资源的占用。进一步,对于直连节点设备的消息处理组件,其还用于统计终端修复请求、向数据缓存组件查询修复所需数据的状态、并在网络繁忙时向终端发送可提供数据修复服务的终端地址和节点设备服务等待时延T2值。进一步,所述数据缓存组件根据容量和数据新旧定期更新,能设置缓存容量阈值,用于在超过阈值时自动删除陈旧的数据。采用上述进一步方案的有益效果是定期更新机制可以让在一定的容量条件下修复更多的内容,减少修复内容在节点设备上的缓存时间,加快节点设备的数据缓存组件的使用效率以及修复请求的命中率。


CN 102916837 A
说明书5/7页图I为本发明所述数据修复方法的流程图;图2为本发明所述数据修复方法中的请求转发序列图;图3为本发明所述数据修复方法中的请求转发终端互补序列图;图4为本发明所述数据修复方法中的请求转发终端与节点设备互补序列图;图5为本发明所述节点设备的结构示意图;
图6为本发明实施例二所述两层结构的数据修复系统的结构示意图。附图中,各标号所代表的部件列表如下I、节点设备,2、网络通信组件,3、消息处理组件,4、数据缓存组件,5、播发服务器,
6、上级节点设备,7、修复服务器,8、下级节点设备,9、终端,10、和终端直连的节点设备。
具体实施例方式以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。如图I所示,实施例一所述的一种分层结构的数据修复方法,包括以下步骤步骤1,终端定位数据丢失的位置,并向直连节点设备发送修复请求;步骤2,直连节点设备接收到修复请求后立即响应并回复确认信息,所述确认信息是包含确认码的响应消息;步骤3,终端收到确认后启动计时器并在等待时延Tl后发送第二次修复请求消息,所述第二次修复请求消息中包含步骤2所述的确认码;步骤4,直连节点设备接收第二次修复请求消息后,若能立即提供修复服务,则节点设备为终端提供点对点或点对多点数据修复服务;步骤5,若直连节点设备无法提供修复服务,则该节点设备向终端回复可提供修复服务的终端地址和等待时延T2值,由终端根据自身情况选择修复方法。对于上述步骤,所述步骤I具体包括步骤11,直连节点设备向终端和周围节点设备通告自身地址,收到后更新相关保存地址;步骤12,终端收到单向网传输数据内容终止标识后,校验该数据是否完整,若收到完整内容,则保存成完整文件;步骤13,若收到数据不完整,则终端定位数据丢失的位置,并向直连节点设备发送修复请求,其中包括丢失数据片ID和终端ID。如图2所示,当直连节点设备上没有终端所需数据片,通过将修复请求转发给上级节点设备,由上级节点设备下发修复数据片,再由直连节点设备进行点对点修复,具体即是所述步骤2表示的实现数据修复中的请求转发流程,包括步骤21,直连节点设备接收到修复请求后立即响应并回复确认消息,并在收到单向网络传输数据终止标识后的时延Tl内继续接收其他直连终端报告的数据修复请求;步骤22,若直连节点设备上有修复请求所述数据片,且为第一次收到修复请求,则执行步骤3 ;步骤23,若直连节点设备收到相同的修复请求,则所述节点设备进行计数并只回复响应消息;
8
步骤24,若直连节点设备没有请求所述数据片,则立即向上一级节点设备发起转发请求消息,转发请求包括丢失数据片ID、终端ID和节点设备ID,若上一级节点设备也无所述数据片,则继续向上请求,转发请求消息在原内容的基础上增加该节点设备ID,直至最高层的修复服务器;步骤25,具有所述数据片的非直连节点设备或修复服务器收到请求后立即按照请 求消息中的节点设备ID向下级节点设备发送包含数据片的响应消息。这里的非直连节点设备或修复服务器根据繁忙程度选择全部回复或只回复最后一级节点设备ID。所述步骤4进一步包括若请求终端数量小于门限值,则立即对终端进行点对点数据修复;若请求终端数量大于门限值,则进行点对多点数据修复。所述步骤5由终端决定修复方式分两种情况,其分别如图3和图4示。如图3所示,若直连节点设备无法提供修复服务,该直连节点设备向终端回复可提供修复服务的终端地址和节点设备的等待时延T2值,终端决定由可修复终端进行点对点修复的方法。如图4所示,直连节点设备无法提供修复服务,该直连节点设备向终端回复可提供修复服务的终端地址和节点设备的等待时延T2值,终端决定在等待时延T2结束后再向直连节点设备请求进行点对点修复的方法。因此,根据图3及图4表示的两种终端修复方式,具体有若终端需要立即修复,则由可修复终端对待修复终端进行点对点修复;若终端可以等待,则在等待时延T2超时后重新发起第二次修复请求,并返回执行步骤4。如图5所示,实现实施例一所述的数据修复方法的节点设备I包括网络通信组件
2、消息处理组件3和数据缓存组件4 ;网络通信组件2 :其通过单向网与播发服务器5通信,用于从播发服务器5接收数据;其通过双向网向上依次连接上级节点设备6直至修复服务器7,用于向上级节点设备6或修复服务器7发送转发请求消息,并接收上级节点设备6或修复服务器7发送的响应消息;其通过双向网向下依次连接下级节点设备8直至终端9,用于接收终端9发送的修复请求并获取修复请求中指定的数据片,并发送含该数据片的响应消息给终端9 ;其与数据缓存组件4及消息处理组件3通信,用于将接收到转发响应消息中的数据片送至数据缓存组件4,将所有请求消息提取核心消息结构送至消息处理组件3,并将消息处理组件3发来的响应消息头或转发响应消息头结合和数据缓存组件4发来的数据片组装成含数据片的响应消息或转发响应消息;消息处理组件3 :其与网络通信组件2及数据缓存组件4通信,用于处理网络通信组件2发送的请求消息,查询数据缓存组件4中的数据,并向网络通信组件2发送响应消息头或转发响应消息头;数据缓存组件4 :其与网络通信组件2及消息处理组件3通信,用于接收网络通信组件2发送的数据,并向消息处理组件3提供数据存储查询结果。进一步,消息处理组件3向网络通信组件2发送响应消息头包括方式A、方式B及方式C :方式A,若消息处理组件3收到网络通信组件2发送的请求消息,向网络通信组件2发送含确认信息的响应消息头,若查询到数据缓存组件4中不存在所需数据,则发送转发请求消息;
方式B,若消息处理组件3收到网络通信组件2发送的第二次请求消息,且查询到数据缓存组件4中存在所需数据,则向网络通信组件2发送响应消息头,否则发送步骤5所述可修复的终端地址和节点设备的等待时延T2值;方式C,若消息处理组件3收到网络通信组件2发送的转发响应消息,且所述转发响应消息是由下级节点设备8的转发请求所致,则向网络通信组件2发送转发响应消息头,其中包括相应节点设备ID、终端I D和数据片I D。进一步,对于直连节点设备I的消息处理组件3,其还用于统计终端修复请求、向数据缓存组件4查询修复所需数据的状态、并在网络繁忙时向终端9发送可提供数据修复服务的终端地址和节点设备服务等待时延T2值。进一步,所述数据缓存组件4根据容量和数据新旧定期更新,能设置缓存容量阈值,用于在超过阈值时自动删除陈旧的数据。针对实施例一所述分层结构的数据修复方法及节点设备,实施例二建立了一个具有两层节点设备结构的数据修复系统,所述数据修复系统的结构如图6所示,包括终端9、修复服务器7、播发服务器5、节点设备I以及和终端直连的节点设备10,其进行修复的方法及节点设备的构成同实施例一相同。该数据修复系统结构简单,实现了针对终端的点对多点数据修复。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种分层结构的数据修复方法,其特征在于,包括以下步骤步骤1,终端定位数据丢失的位置,并向直连节点设备发送包括丢失数据片ID和终端ID的修复请求;步骤2,直连节点设备接收到修复请求后立即响应并回复确认信息;步骤3,终端收到确认信息后启动计时器并在等待时延Tl后发送第二次修复请求消步骤4,直连节点设备接收第二次修复请求消息后,若能立即提供修复服务,则该直连节点设备为终端提供点对点或点对多点数据修复服务;步骤5,若直连节点设备无法提供修复服务,则该直连节点设备向终端回复可提供修复服务的终端地址和等待时延T2值,由终端选择修复方法。
2.根据权利要求I所述的数据修复方法,其特征在于,所述步骤I具体包括步骤11,直连节点设备向终端和周围节点设备通告自身地址,且终端和周围节点设备收到后更新相关保存地址;步骤12,终端收到单向网传输数据内容终止标识后,校验该数据是否完整,若收到完整内容,则保存成完整文件;步骤13,若收到数据不完整,则终端定位数据丢失的位置,并向直连节点设备发送修复请求。
3.根据权利要求I所述的数据修复方法,其特征在于,所述步骤2进一步包括步骤21,直连节点设备接收到修复请求后立即响应并回复确认消息,并在收到单向网络传输数据终止标识后的时延Tl内继续接收其他直连终端报告的数据修复请求;步骤22,若直连节点设备上有修复请求所述数据片,且为第一次收到修复请求,则执行步骤3 ;步骤23,若直连节点设备收到相同的修复请求,则所述直连节点设备进行计数并只回复确认信息;步骤24,若直连节点设备没有修复请求所述数据片,则立即向上一级节点设备发起转发请求消息,转发请求消息包括丢失数据片ID、终端ID和节点设备ID ;若上一级节点设备也无所述数据片,则继续向上请求,且转发请求消息在原内容的基础上增加该节点设备ID,直至最高层的修复服务器;步骤25,具有所述数据片的非直连节点设备或修复服务器收到请求后立即按照转发请求消息中的节点设备ID向下级节点设备发送包含数据片的响应消息。
4.根据权利要求3所述的数据修复方法,其特征在于,所述步骤25中的非直连节点设备或修复服务器根据繁忙程度选择全部回复或只回复最后一级节点设备ID。
5.根据权利要求I所述的数据修复方法,其特征在于,所述步骤4进一步包括若请求终端数量小于门限值,则立即对终端进行点对点数据修复;若请求终端数量大于门限值,则进行点对多点数据修复。
6.根据权利要求I所述的数据修复方法,其特征在于,所述步骤5进一步包括若终端需要立即修复,则待修复终端向步骤5中的可修复终端发送请求并进行点对点修复;若终端可以等待,则在等待时延T2后重新向直连节点设备发起第二次修复请求,若仍无法修复则终端直接向修复服务器发起数据修复请求。
7.一种实现权利要求I至6中任一所述数据修复方法的节点设备,其特征在于,包括网络通信组件、消息处理组件、数据缓存组件;网络通信组件其通过单向网与播发服务器通信,用于从播发服务器接收数据;其通过双向网向上依次连接上级节点设备直至修复服务器,用于向上级节点设备或修复服务器发送转发请求消息,并接收上级节点设备或修复服务器发送的响应消息;其通过双向网向下依次连接下级节点设备直至终端,用于接收终端发送的修复请求并获取修复请求中指定的数据片,并发送含该数据片的响应消息给终端;其与数据缓存组件及消息处理组件通信,用于将接收到转发响应消息中的数据片送至数据缓存组件,将所有请求消息提取核心消息结构送至消息处理组件,并将消息处理组件发来的响应消息头或转发响应消息头结合,再和数据缓存组件发来的数据片组装成含数据片的响应消息或转发响应消息;消息处理组件其与网络通信组件及数据缓存组件通信,用于处理网络通信组件发送的请求消息,查询数据缓存组件中的数据,并向网络通信组件发送响应消息头或转发响应消息头;数据缓存组件其与网络通信组件及消息处理组件通信,用于接收网络通信组件发送的数据,并向消息处理组件提供数据存储查询结果。
8.根据权利要求7所述的节点设备,其特征在于,所述消息处理组件向网络通信组件发送响应消息头或转发响应消息头包括方式A、方式B或方式C 方式A,若消息处理组件收到网络通信组件发送的请求消息,向网络通信组件发送含确认信息的响应消息头,若查询到数据缓存组件中不存在所需数据,则发送转发请求消息;方式B,若消息处理组件收到网络通信组件发送的第二次请求消息,且查询到数据缓存组件中存在所需数据,则向网络通信组件发送响应消息头,否则发送步骤5所述可修复的终端地址和节点设备的等待时延T2值;方式C,若消息处理组件收到网络通信组件发送的转发响应消息,且所述转发响应消息是由下级节点设备的转发请求所致,则向网络通信组件发送转发响应消息头,其中包括相应节点设备ID、终端ID和数据片ID。
9.根据权利要求7所述的节点设备,其特征在于,对于直连节点设备的消息处理组件,其还用于统计终端修复请求、向数据缓存组件查询修复所需数据的状态、并在网络繁忙时向终端发送可提供数据修复服务的终端地址和节点设备服务等待时延T2值。
10.根据权利要求7所述的节点设备,其特征在于,所述数据缓存组件根据容量和数据新旧定期更新,设置缓存容量阈值,用于在超过阈值时自动删除陈旧的数据。
全文摘要
本发明涉及一种分层结构的数据修复方法及实现该方法的节点设备。所述方法包括终端向直连节点设备发送修复请求,该节点设备再回复确认信息;终端收到确认信息后发送第二次请求消息,若直连节点设备上有所需数据片且能立即提供服务,则对终端提供点对点或点对多点数据修复;否则向终端回复可提供修复服务的终端地址和等待时延T2,由终端自行选择修复方式。所述节点设备包括网络通信组件、消息处理组件和数据缓存组件,且网络通信组件通过单向网与播发服务器通信,通过双向网与修复服务器及终端通信。本发明采用网络节点设备转发方法进行数据修复,减少了修复请求在前端和终端之间传输的数量和路径,减轻了前端服务器的压力,提高了修复效率。
文档编号H04L12/24GK102916837SQ20121040161
公开日2013年2月6日 申请日期2012年10月19日 优先权日2012年10月19日
发明者徐杰, 何晶, 张进, 万康 申请人:北京迈伦斯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1