服务器及其软件升级方法、ip机顶盒及其软件升级方法

文档序号:7942235阅读:268来源:国知局
专利名称:服务器及其软件升级方法、ip机顶盒及其软件升级方法
技术领域
本发明涉及机顶盒技术领域,特别是涉及服务器及其软件升级方法、IP机顶盒及其软件升级方法。
背景技术
IP机顶盒主要应用于交互式网络电视(Internet Protocol Television, IPTV)系统,具体来说,IPTV系统是一种基于IP网络、利用IP机顶盒作为接收终端,电视机作为显示设备的交互式信息服务系统。通过IP机顶盒来实现IPTV系统的视频点播、视频直播、时移播放、个人视频录制、远程教育、视频会议、电视购物以及游戏等各项功能。而IP机顶盒上述功能的实现离不开软件,随着机顶盒功能的不断扩展,同样需要采用软件升级使机顶盒具有最新的功能。目前IP机顶盒软件在线升级的方法为IP机顶盒开机时或者定时向服务器连接来查询是否有新版本软件。如果有,则IP机顶盒通过服务器IP地址和服务器建立连接关系,服务器通过传输控制协议(Transmission Control Protocol, TCP)或者用户数据包协议(User Datagram Protocol,UDP)向IP机顶盒发送新版本软件;或者IP机顶盒通过服务器建立的文件传输协议(File Transfer Protocol, FTP)服务,从服务器下载新版本软件,完成新版本软件的升级。在获知是否有新版本软件过程中,服务器和每个IP机顶盒终端要建立点到点连接,如果短时间内发生的连接请求数量巨大,容易导致服务器瘫痪;在知道有新版本软件后,不论是服务器通过TCP或UPD协议来和每个IP机顶盒终端建立连接并发送新版本软件,还是每个IP机顶盒终端通过FTP协议来从服务器中下载新版本软件,服务器同样需要和每个IP机顶盒终端建立点对点连接,对于有N个需升级IP机顶盒,就有N份相同的新版本软件从服务器发出送到不同IP机顶盒中。在IP机顶盒数量较大的运行网络,很容易由于短时间内大量连接请求导致服务器瘫痪,即使服务器连接数量足够,也可能由于数据量巨大的N份相同新版本软件数 据同时要从服务器发出,容易导致网络阻塞。如何减少服务器软件升级请求的连接个数,减少网络冗余数据,是目前亟待解决的一个问题。

发明内容
本发明主要解决的技术问题是提供一种服务器及其软件升级方法、IP机顶盒及其软件升级方法,能够在IP机顶盒软件升级时,减少服务器软件升级请求的连接个数以及减少网络冗余数据。为解决上述技术问题,本发明采用的一个技术方案是提供一种软件升级方法,该方法包括服务器侧接收IP机顶盒发送的软件升级请求;判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值;若判断为是,则通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。
其中,判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值步骤之后包括若判断为否,则服务器与IP机顶盒建立点到点的连接,播放软件数据。为解决上述技术问题,本发明采用的另一个技术方案是提供一种服务器,服务器包括第一接收单元,用于接收IP机顶盒发送的软件升级请求;第一判断单元,用于判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值;第一播放单元,用于在第一判断单元判断为是时,通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。其中,服务器还包括第二播放单元,用于在第一判断单元判断为否时,使服务器与IP机顶盒建立点到点的连接,播放软件数据。为解决上述技术问题,本发明采用的又一个技术方案是提供一种软件升级方法,该方法包括IP机顶盒侧获取组播数据;判断组播数据中的软件版本是否高于IP机顶盒中的软件版本;若判断为是,则继续判断组播数据是否包含软件数据;若判断为是,则获取软件数据,完成IP机顶盒软件的升级。其中,继续判断组播数据是否包含软件数据步骤之后包括若判断为否,则判断IP机顶盒是否发出软件升级请求;若判断为是,则判断发送软件升级请求的时间是否超过第二预设阈值;若判断为是,则IP机顶盒与服务器建立点到点的连接,IP机顶盒获取软件数据,完成升级。其中,获取软件数据、完成IP机顶盒软件的升级步骤之前包括获取组播数据中的传送周期和当前传送序号。其中,获取软件数据、完成IP机顶盒软件的升级步骤包括在经过传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级。为解决上述技术问题,本发明采用的又一个技术方案是提供一种IP机顶盒,IP机顶盒包括第一获取单元,用于获取组播数据;第二判断单元,用于判断组播数据中的软件版本是否高于IP机顶盒中的软件版本;第三判断单元,用于在第二判断单元判断为是时,继续判断组播数据是否包含软件数据;第二获取单元,用于在第三判断单元判断为是时,获取软件数据,完成IP机顶盒软件的升级。其中,IP机顶盒还包括第四判断单元,用于在第三判断单元判断为否时,判断IP机顶盒是否发出软件升级请求;第五判断单元,用于在第四判断单元判断为是时,判断发送软件升级请求的时间是否超过第二预设阈值;第三获取单元,用于在第五判断单元判断为是时,使IP机顶盒与服务器建立点到点的连接,以获取软件数据,完成升级。其中,IP机顶盒还包括第四获取单元,用于在第二获取单元获取软件数据之前,获取组播数据中的传送周期和当前传送序号;其中,第二获取单元具体用于在经过传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级。本发明的有益效果是区别于现有技术IP机顶盒与服务器通过建立点到点的连接,进行IP机顶盒软件升级的情况,本发明中,IP机顶盒通过获取服务器播放的组播数据判断服务器中的软件版本是否高于IP机顶盒中现有的软件版本,如果高就获取组播数据中的软件数据,完成IP机顶盒的升级 。为了减少服务器软件升级请求的连接个数,减少网络冗余数据,可在IP机顶盒软件升级请求的数量超过某一阈值时,采用组播的方式播放新版本的软件数据。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。


图1是本发明软件升级方法一实施例的流程示意图;图2是本发明软件升级方法另一实施例的流程示意图;图3是本发明软件升级方法又一实施例的流程示意图;图4是本发明软件升级方法又一实施例的流程示意图;图5是本发明服务器一实施例的结构示意图;图6是本发明IP机顶盒一实施例的结构示意图。
具体实施方式
下面结合附图和实施例对本发明进行详细说明。图1是本发明软件升级方法一实施例的流程示意图一,具体实施步骤如下步骤101,服务器侧接收IP机顶盒发送的软件升级请求;步骤102,判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值;在平时状态,服务器接收到IP机顶盒终端软件升级请求,统计在预定时间内软件升级请求的个数是否超过第一预设阈值。这里所说的预定时间可以根据需要人为规定。这里所说的第一预设阈值是指运营商自行规定的接收软件升级请求的个数。步骤103,若判断为是,则通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。如果服务器接收到的软件升级请求的个数超过第一预设阈值,服务器则把新版本软件版本信息,软件数据,以及传送周期,当前传送序号这些信息封装成升级数据包,通过Internet 组管理协议(Internet Group Management Protocol, IGMP)向网络进行组播。如果没有超过第一预设阈值,则接收个别IP机顶盒终端软件升级请求,建立点到点连接,完成软件数据的传送。这里,组播是在发送者和每一接收者之间实现点对多点的网络连接。譬如,一台发送者同时给多个的接收者传输相同的数据,只需复制一份的相同数据包即可,这样不仅提高了数据传送效率,还减少了骨干网络出现拥塞的可能性。现有机顶盒软件升级方式主要是在线升级和网络升级两种方式,其他方式如RS232接口升级、USB拷贝软件升级和机对机复制升级等。不同的升级方式都可以通过组播来提高数据传送的效率。本发明中,在预定时间内服务器所接收的软件升级请求的数量超过某一阈值时,采用组播的方式播放新版本的软件数据。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。图2是本发明软件升级方法另一实施例的流程示意图,具体实施步骤如下
步骤201,IP机顶盒侧获取组播数据;IP机顶盒终端在开机或需要时加入IGMP组播组,获得组播数据,所述组播数据包括两种形式,如下平时状态,服务器将当前软件版本信息封装成数据包,以一定时间间隔,譬如2_5分钟,通过IGMP协议向网络进行组播。当有新版本软件刚提交到服务器的一段时间内,譬如比如1-5天,服务器将新版本软件版本信息、软件数据、传送周期及当前传送序号等信息封装成升级数据包,通过IGMP协议向网络进行组播,比如规定每轮传送包含这些信息的升级数据包3次,两轮传送之间周期为10-20分钟。本发明将新版本软件刚提交到服务器的一段时间定义为第二预设阈值,譬如3天、5天或10天等。超过第二预设阈值,就为上述所说的平时状态。步骤202,判断组播数据中的软件版本是否高于IP机顶盒中的软件版本;步骤203,若判断为是,则继续判断组播数据是否包含软件数据;步骤204,若判断为是,则获取软件数据,完成IP机顶盒软件的升级。步骤202-204的整体描述为,获取组播数据后,首先判断出组播数据中的软件版本高于IP机顶盒中的软件版本,由于第二预设阈值的界定,不同的时间状态组播数据包含的信息不同,所以需要进一步判断组播数据中是否包含软件数据,如果包含软件数据,获取该软件数据,完成IP机顶盒软件的升级。需要指出的是,机顶盒分为硬件和软件部分,软件主要有硬件驱动层软件、实时操作系统、中间件和上 层应用软件等。升级需要的软件一般由LOADER和APP组成,所述LOADER是用于机顶盒软件升级的功能模块,在机顶盒出厂时已被植入机顶盒中。本发明中,IP机顶盒通过获取服务器播放的组播数据判断服务器中的软件版本是否高于IP机顶盒中现有的软件版本,如果高就获取组播数据中的软件数据,完成IP机顶盒的升级。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。图3是本发明软件升级方法又一实施例的流程示意图,具体实施步骤如下步骤301,服务器侧接收IP机顶盒发送的软件升级请求;步骤302,判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值;服务器接收到IP机顶盒终端软件升级请求,统计在预定时间内软件升级请求的个数是否超过第一预设阈值。步骤303,若判断为是,则通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包;如果服务器接收到的软件升级请求的个数超过第一预设阈值,服务器则把新版本软件版本信息,软件数据,以及传送周期,当前传送序号这些信息封装成升级数据包,通过IGMP协议向网络进行组播。步骤304,若判断为否,则服务器与IP机顶盒建立点到点的连接,播放软件数据。如果服务器接收到的软件升级请求的个数没有超过第一预设阈值,则接收个别IP机顶盒终端软件升级请求,建立点到点连接,完成软件数据的传送。本发明中,在预定时间内服务器所接收的软件升级请求的数量超过某一阈值时,采用组播的方式播放新版本的软件数据。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。图4是本发明软件升级方法又一实施例的流程示意图,具体实施步骤如下步骤401,IP机顶盒在开机或需要时加入组播组;步骤402,IP机顶盒侧获取组播数据;IP机顶盒终端在开机或需要时加入IGMP组播组,获得组播数据,所述组播数据包括两种形式,如下平时状态,服务器将当前软件版本信息封装成数据包,以一定时间间隔,譬如2_5分钟,通过IGMP协议向网络进行组播。当有新版本软件刚提交到服务器的一段时间内,譬如比如1-5天,服务器将新版本软件版本信息、软件数据、传送周期及当前传送序号等信息封装成升级数据包,通过IGMP协议向网络进行组播,比如规定每轮传送包含这些信息的升级数据包3次,两轮传送之间周期为10-20分钟。本发明将新版本软件刚提交到服务器的一段时间定义为第二预设阈值,譬如3天、5天或10天等。超过第二预设阈值,就为上述所说的平时状态。步骤403,判断组播数据中的软件版本是否高于IP机顶盒中的软件版本;步骤404,若判 断为是,则继续判断组播数据是否包含软件数据;获取组播数据后,由于第二预设阈值的界定,不同的时间状态组播数据包含的信息不同,所以需要进一步判断组播数据中是否包含软件数据。步骤405,若判断为否,则退出组播组;若判断当前IP机顶盒中的软件版本为最新版本,那么就不需要进行升级,退出组播组即可。步骤406,若步骤404判断为是,获取组播数据中的传送周期和当前传送序号;判断出该轮组播数据中包含软件数据后,若此时获取正在播放的软件数据,会导致获取软件数据的不完整,这就需要获取组播数据中的传送周期和当前传送序号,以待下一轮播放时获取完整的软件数据。步骤407,在经过传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级;步骤408,若步骤404判断为否,则判断IP机顶盒是否发出软件升级请求;若判断出该轮组播数据中不包含软件数据,那么就可以判断出此时为平时状态,即组播数据中只包含软件版本信息,这就需要重新向服务器发送软件升级请求。步骤409,若步骤408判断为是,则判断发送软件升级请求的时间是否超过第二预设阈值;向服务器发送软件升级请求后,需要判断发送软件升级请求的时间是否超过第二预设阈值,以确定在不同的时间状态是进行组播,还是进行点播。步骤410,若步骤408判断为否,则转入步骤401 ;
如果没有向服务器发送软件升级请求,那么不进行IP机顶盒的软件升级。步骤411,若步骤409判断为是,则IP机顶盒与服务器建立点到点的连接,IP机顶盒获取软件数据,完成升级;当IP机顶盒发送软件升级请求的时间超过第二预设阈值,说明此时已经过了软件数据进行组播的时间,需要与服务器建立点到点的连接,获取软件数据,完成升级。步骤412,若步骤409判断为否,则转入步骤402。当IP机顶盒发送软件升级请求的时间没有超过第二预设阈值,说明此时软件数据仍然进行组播,重新获取组播数据即可。本发明中,IP机顶盒通过获取服务器播放的组播数据判断服务器中的软件版本是否高于IP机顶盒中现有的软件版本,如果高就获取组播数据中的软件数据,完成IP机顶盒的升级。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。图5是本发明服务器一实施例的结构示意图,如图所示,服务器包括第一接收单元51、第一判断单元52、第一播放单元53和第二播放单元54。其中,第一接收单元51用于接收IP机顶盒发送的软件升级请求;第一判断单元52用于判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值;第一播放单元53用于在第一判断单元判断为是时,通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包;第二播放单元54用于在第一判断单元判断为否时,使服务器与IP机顶盒建立点到点的连接,播放软件数据。

当第一接收单元51接收IP机顶盒发送的软件升级请求后,第一判断单元52首先判断在预定时间内所接收的软件升级请求的数量是否超过第一预设阈值,当第一判断单元52判断为是时,第一播放单元53通过组播播放组播数据,组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包,当第一判断单元52判断为否时,月艮务器与IP机顶盒建立点到点的连接,第二播放单元54播放软件数据。本发明中,在预定时间内服务器所接收的软件升级请求的数量超过某一阈值时,采用组播的方式播放新版本的软件数据。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。图6是本发明IP机顶盒一实施例的结构示意图,如图所示,IP机顶盒包括第一获取单元61、第二判断单元62、第三判断单元63、第二获取单元64、第四判断单元65、第五判断单元66、第三获取单元67以及第四获取单元68。其中,第一获取单元61用于获取组播数据;第二判断单元62用于判断组播数据中的软件版本是否高于IP机顶盒中的软件版本;第三判断单元63用于在第二判断单元判断为是时,继续判断组播数据是否包含软件数据;第二获取单元64用于在第三判断单元判断为是时,获取软件数据,完成IP机顶盒软件的升级;第四判断单元65用于在第三判断单元判断为否时,判断IP机顶盒是否发出软件升级请求;第五判断单元66用于在第四判断单元判断为是时,判断发送软件升级请求的时间是否超过第二预设阈值;第三获取单元67用于在第五判断单元判断为是时,使IP机顶盒与服务器建立点到点的连接,以获取软件数据,完成升级;第四获取单元68用于在第二获取单元64获取软件数据之前,获取组播数据中的传送周期和当前传送序号;其中,第二获取单元64具体用于在经过传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级。第一获取单元61首先获取服务器端播放的组播数据,然后第二判断单元62判断组播数据中的软件版本是否高于IP机顶盒中的软件版本,当第二判断单元62判断为是时,第三判断单元63继续判断组播数据是否包含软件数据,当第三判断单元63判断为是时,第四获取单元68获取组播数据中的传送周期和当前传送序号,第二获取单元64在经过传送周期对应的时间后获取下一次组播播放的软件数据,完成IP机顶盒软件的升级。IP机顶盒另一种升级方式是,当第三判断单元63判断为否时,第四判断单元65判断IP机顶盒是否发出软件升级请求,当第四判断单元65判断为是时,第五判断单元66判断发送软件升级请求的时间是否超过第二预设阈值,当第五判断单元66判断为是时,IP机顶盒与服务器建立点到点的连接,第三获取单元67获取软件数据,完成升级。本发明中,IP机顶盒通过获取服务器播放的组播数据判断服务器中的软件版本是否高于IP机顶盒中现有的软件版本,如果高就获取组播数据中的软件数据,完成IP机顶盒的升级。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。·以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
权利要求
1.一种软件升级方法,其特征在于,所述方法包括 服务器侧接收IP机顶盒发送的软件升级请求; 判断在预定时间内所接收的所述软件升级请求的数量是否超过第一预设阈值; 若判断为是,则通过组播播放组播数据,所述组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。
2.根据权利要求1所述的方法,其特征在于, 所述判断在预定时间内所接收的所述软件升级请求的数量是否超过第一预设阈值步骤之后包括 若判断为否,则所述服务器与所述IP机顶盒建立点到点的连接,播放所述软件数据。
3.一种服务器,其特征在于,所述服务器包括 第一接收单元,用于接收IP机顶盒发送的软件升级请求; 第一判断单元,用于判断在预定时间内所接收的所述软件升级请求的数量是否超过第一预设阈值; 第一播放单元,用于在所述第一判断单元判断为是时,通过组播播放组播数据,所述组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。
4.根据权利要求3所述的服务器,其特征在于,所述服务器包括 第二播放单元,用于在所述第一判断单元判断为否时,使所述服务器与所述IP机顶盒建立点到点的连接,播放所述软件数据。
5.一种软件升级方法,其特征在于,所述方法包括 IP机顶盒侧获取组播数据; 判断所述组播数据中的软件版本是否高于所述IP机顶盒中的软件版本; 若判断为是,则继续判断所述组播数据是否包含软件数据; 若判断为是,则获取所述软件数据,完成所述IP机顶盒软件的升级。
6.根据权利要求5所述的方法,其特征在于, 所述继续判断组播数据是否包含软件数据步骤之后包括 若判断为否,则判断所述IP机顶盒是否发出软件升级请求; 若判断为是,则判断发送软件升级请求的时间是否超过第二预设阈值; 若判断为是,则所述IP机顶盒与服务器建立点到点的连接,所述IP机顶盒获取软件数据,完成升级。
7.根据权利要求5所述的方法,其特征在于, 所述获取软件数据、完成IP机顶盒软件的升级步骤之前包括 获取所述组播数据中的传送周期和当前传送序号; 所述获取软件数据、完成IP机顶盒软件的升级步骤包括 在经过所述传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级。
8.一种IP机顶盒,其特征在于,所述IP机顶盒包括 第一获取单元,用于获取组播数据; 第二判断单元,用于判断所述组播数据中的软件版本是否高于所述IP机顶盒中的软件版本;第三判断单元,用于在所述第二判断单元判断为是时,继续判断所述组播数据是否包含软件数据; 第二获取单元,用于在所述第三判断单元判断为是时,获取所述软件数据,完成所述IP机顶盒软件的升级。
9.根据权利要求8所述的IP机顶盒,其特征在于, 所述IP机顶盒包括 第四判断单元,用于在所述第三判断单元判断为否时,判断所述IP机顶盒是否发出软件升级请求; 第五判断单元,用于在所述第四判断单元判断为是时,判断发送软件升级请求的时间是否超过第二预设阈值; 第三获取单元,用于在所述第五判断单元判断为是时,使所述IP机顶盒与服务器建立点到点的连接,以获取软件数据,完成升级。
10.根据权利要求8所述的IP机顶盒,其特征在于, 所述IP机顶盒包括 第四获取单元,用于在第二获取单元获取软件数据之前,获取所述组播数据中的传送周期和当前传送序号; 其中,所述第二获取单元具体用于在经过所述传送周期对应的时间后接收下一次组播播放的软件数据,完成IP机顶盒软件的升级。
全文摘要
本发明公开了一种服务器及其软件升级方法、IP机顶盒及其软件升级方法,所述方法包括服务器侧接收IP机顶盒发送的软件升级请求;判断在预定时间内所接收的所述软件升级请求的数量是否超过第一预设阈值;若判断为是,则通过组播播放组播数据,所述组播数据是包含软件版本信息、软件数据、传送周期以及当前传送序号的升级数据包。本发明还提供了一种服务器,以及一种IP机顶盒及其软件升级方法。通过上述方式,可以减少服务器软件升级请求的连接个数,减少网络冗余数据,从而可以有效降低对服务器本身硬件资源和服务器带宽的要求,提高整个运营网络有效数据的传送效率。
文档编号H04L29/06GK103067415SQ201110316810
公开日2013年4月24日 申请日期2011年10月18日 优先权日2011年10月18日
发明者彭文剑 申请人:康佳集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1