报文发送方法、码流处理方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,具体而言,涉及一种报文发送方法、码流处理方法及装置。
【背景技术】
[0002]随着科技的发展,各种各样的终端给人们的生活带来了很大的便利,以交互式网络电视(Internet Protocol Televis1n,简称为IPTV)为例,IPTV是一种利用宽带网,集互联网、多媒体、通讯等技术于一体,向家庭用户提供包括数字电视在内的多种交互式服务的崭新技术。目前的技术让用户在家里除了能观看传统的直播频道之外,还可以点播等操作,而这些,都是由服务提供商(Internet Service Provider,简称为ISP)的服务器来提供服务的。
[0003]当发现频道码流的发送服务器有问题后,比如需要更换内存条,更换操作系统所在硬盘,升级替换软件版本等等,这些情况下都需要中止业务,将该频道删除,然后将频道码流重建到另外一台服务器上来提供服务,该操作的持续时间一般是5-10分钟。在这个期间,因为没有码流在组播组中,用户的体验就是黑屏。为了避免影响太大,一般会提前在终端上显示,这个就是大家经常会看到的在终端上显示的一段话:本台需要在某个时间段维护,暂时无法提供服务之类的,其实就是得中断业务。
[0004]从以上技术方案可以看出,相关技术中的中断业务的方法会存在以下缺点:
[0005]1.由于出现了黑屏,给用户带来很差的观看体验。
[0006]2.操作时间段受限。为了控制黑屏的影响范围,必须在观看用户数量少的时刻进行操作,所以一般选在凌晨2-3点,虽然重建的时间一般很短,但出于风险防范的角度,一般受影响的时间往往会超过10分钟,而且需要人工干预,以防止业务异常导致中断时间过长。
[0007]3.业务受损,虽然在观看用户数量少的时刻进行操作,但是如果处于在广告时间段的话,广告收入也同样会受损。
[0008]由此可知,在相关技术中,在进行组播频道的迀移时,会造成业务中断。
[0009]针对相关技术中存在的无法实现在不中断业务的情况下进行组播频道的迀移的问题,目前尚未提出有效的解决方案。
【发明内容】
[0010]本发明提供了一种报文发送方法、码流处理方法及装置,以至少解决相关技术中存在的无法实现在不中断业务的情况下进行组播频道的迀移的问题。
[0011 ] 根据本发明的一个方面,提供了一种报文发送方法,包括:第一服务器获取与第二服务器相同的码流并进行缓存;所述第一服务器获取发送所述码流的初始位置;所述第一服务器在所述第二服务器停止发送码流之后,构造所述码流所对应的报文并在所述初始位置根据所述第二服务器的源IP地址发送所述报文。
[0012]进一步地,所述第一服务器根据所述第二服务器的源IP地址发送所述报文包括:所述第一服务器增加本地路由,以利用所述第二服务器的源IP地址发送所述报文;或者,所述第一服务器将所述第二服务器的源IP地址填入所述报文的IP地址字段,并发送所述报文。
[0013]进一步地,所述第一服务器获取与所述第二服务器相同的码流并进行缓存之前,还包括:所述第一服务器接收服务控制单元SCU发送的通知消息,其中,所述通知消息用于通知所述第一服务器获取码流信息,所述码流信息用于所述第一服务器获取所述码流并进行缓存,所述码流信息包括如下信息至少之一:所述码流的源头、所述码流的协议类型、开始缓存所述码流的位置、所述第二服务器的信息。
[0014]进一步地,所述第一服务器获取与所述第二服务器相同的码流并进行缓存之后,还包括:所述第一服务器将获取所述码流的获取结果通知给服务控制单元SCU,其中,所述获取结果用于所述SCU判断是否需要重新选择用于替换所述第二服务器的服务器,并在确定不需要重新选择服务器之后,将所述第一服务器的信息发送给所述第二服务器。
[0015]进一步地,所述第一服务器构造所述码流所对应的报文并在所述初始位置根据所述第二服务器的源IP地址发送所述报文之后,还包括:所述第一服务器将发送所述报文的发送结果上报给服务控制单元SCUo
[0016]进一步地,所述第一服务器获取与所述第二服务器相同的码流包括以下至少之一:所述第一服务器从除所述第二服务器之外的其他服务器中获取所述码流;所述第一服务器从用于存储所述码流的存储设备中获取所述码流。
[0017]进一步地,所述第一服务器获取发送所述码流的初始位置包括以下至少之一:所述第一服务器通过与所述第二服务器协商的方式获取所述初始位置;所述第一服务器获取预先设置的所述初始位置。
[0018]根据本发明的另一方面,提供了一种码流处理方法,包括:第二服务器接收服务控制单元SCU发送的消息,其中,所述消息用于通知所述第二服务器由第一服务器接替所述第二服务器发送码流;所述第二服务器获取所述第一服务器发送所述码流的初始位置;所述第二服务器根据所述初始位置停止发送所述码流。
[0019]进一步地,所述第二服务器获取所述第一服务器发送所述码流的初始位置包括:所述第二服务器通过和所述第一服务器协商的方式获取所述初始位置。
[0020]进一步地,所述第二服务器接收所述SCU发送的消息包括:所述第二服务器通过与所述SCU交互码流实时信息的方式接收所述SCU发送的所述消息,其中,所述码流实时信息还用于所述SCU向第一服务器发送通知消息;所述通知消息用于所述第一服务器获取与所述第二服务器相同的码流并进行缓存,获取发送所述码流的初始位置,在所述第二服务器停止发送码流之后,构造所述码流所对应的报文并在所述初始位置根据所述第二服务器的源IP地址发送所述报文。
[0021]进一步地,所述通知消息通过通知所述第一服务器获取码流信息的方式通知所述第一服务器获取与所述第二服务器相同的码流并进行缓存,所述码流信息包括如下信息至少之一:所述码流的源头、所述码流的协议类型、开始缓存所述码流的位置、所述第二服务器的信息。
[0022]根据本发明的另一方面,提供了一种码流处理方法,包括:服务控制单元S⑶通知第一服务器获取并缓存与第二服务器相同的码流;所述SCU在接收到所述第一服务器发送的获取码流正常的信息后,将所述第一服务器的信息发送给所述第二服务器,其中,所述第一服务器的信息用于确定所述第一服务器发送所述码流的初始位置。
[0023]进一步地,在确定所述初始位置时是由所述第二服务器根据所述第一服务器的信息与所述第一服务器进行协商所确定的。
[0024]进一步地,所述SCU通知所述第一服务器获取并缓存与所述第二服务器相同的所述码流包括:所述SCU与所述第二服务器交互码流实时信息;所述SCU根据码流实时信息向所述第一服务器发送通知消息,其中,所述通知消息用于通知所述第一服务器获取并缓存与所述第二服务器相同的码流,所述通知消息还用于通知所述第一服务器获取发送所述码流的初始位置,在所述第二服务器停止发送码流之后,构造所述码流所对应的报文并在所述初始位置根据所述第二服务器的源IP地址发送所述报文。
[0025]进一步地,所述通知消息通过通知所述第一服务器获取码流信息的方式通知所述第一服务器获取与所述第二服务器相同的码流并进行缓存,其中,所述码流信息包括如下信息至少之一:所述码流的源头、所述码流的协议类型、开始缓存所述码流的位置、所述第二服务器的信息。
[0026]进一步地,所述方法还包括:所述SCU在接收到所述第一服务器发送的获取码流异常的信息后,选择新的用于接替所述第二服务器的服务器。
[0027]进一步地,所述SCU将所述第一服务器的信息发送给所述第二服务器之后,还包括:接收所述第一服务器上报的发送结果,其中,所述发送结果为所述第一服务器发送所述报文的发送结果。
[0028]根据本发明的另一方面,提供了一种报文发送装置,所述装置应用于第一服务器中,包括:第一获取模块,用于获取与第二服务器相同的码流并进行缓存;第二获取模块,用于获取发送所述码流的初始位置;第一发送模块,用于在所述第二服务器停止发送码流之后,构造所述码流所对应的报文并在所述初始位置根据所述第二服务器的源IP地址发送所述报文。
[0029]进一步地,所述第一发送模块包括:所述第一服务器增加本地路由,以利用所述第二服务器的源IP地址发送所述报文;或者,所述第一服务器将所述第二服务器的源IP地址填入所述报文的IP地址字段,并发送所述报文。
[0030]进一步地,所述装置还包括:第一接收模块,用于接收服务控制单元SCU发送的通知消息,其中,所述通知消息用于通知所述第一服务器获取码流信息,所述码流信息用于所述第一服务器获取所述码流并进行缓存,所述码流信息包括如下信息至少之一:所述码流的源头、所述码流的协议类型、开始缓存所述码流的位置、所述第二服务器的信息。
[0031]进一步地,所述装置还包括:第一通知模块,用于将获取所述码流的获取结果通知给服务控制单元SCU,其中,所述获取结果用于所述SCU判断是否需要重新选择用于替换所述第二服务器的服务器,并在确定不需要重新选择服务器之后,将所述第一服务器的信息发送给所述第二服务器。
[0032]进一步地,所述装置还包括:上报模块,用于将发送所述报文的发送结果上报给服务控制单元SCU。
[0033]进一步地,所述第一获取模块包括以下至少之一:所述第一服务器从除所述第二服务器之外的其他服务器中获取所述码流;所述第一服务器从用于存储所述码流的存储设备中获取所述码流。
[0034]进一步地,所述第二获取模块包括以下至少之一:所述第一服务器通过与所述第二服务器协商的方式获取所述初始位置;所述第一服务器获取预先设置的所述初始位置。
[0035]根据本发明的另一方面,提供了一种码流处理装置,所述装置应用于第二服务器中,包括:第二接收模块,用于接收服务控制单元SCU发送的消息,其中,所述消息用于通知所述第二服务器由第一服务器接替所述第二服务器发送码流;第三获取模块,用于获取所述第一服务器发