数据的传输方法、装置、系统、组播管理设备和用户设备与流程

文档序号:21405704发布日期:2020-07-07 14:39阅读:153来源:国知局
数据的传输方法、装置、系统、组播管理设备和用户设备与流程
本公开涉及通信
技术领域
,特别涉及一种数据的传输方法、数据的传输装置、数据的传输系统、组播管理设备、用户设备和计算机可读存储介质。
背景技术
:数据分发接收技术适用于多种服务应用。例如,通过数据分发接收技术能够实现iptv(interactivepersonalitytelevision,交互式网络电视)的机顶盒升级。在相关技术中,通过单播传输方式实现数据分发接收。例如,可以通过单播传输方式实现多个iptv机顶盒的升级。技术实现要素:本公开的发明人发现上述相关技术中存在如下问题:在并发的用户量呈几何倍数增长的情况下,受制于用户数量以及传输带宽,对服务器的压力以及传输网络的压力就会激增,可能造成服务假死和服务器瘫痪等问题,从而导致数据传输效率低下。鉴于此,本公开提出了一种数据的传输技术方案,能够提高数据传输效率。根据本公开的一些实施例,提供了一种数据的传输方法,包括:建立信令组播通道和数据组播通道;通过所述信令组播通道发起信令组播,以便加入所述信令组播的组播组的各用户设备根据所述信令组播的报文,判断是否加入与所述信令组播相应的数据组播的组播组;通过所述数据组播通道发起所述数据组播,以便加入所述数据组播的组播组的用户设备从所述数据组播的报文中获取数据包。在一些实施例中,将待传输的所述数据包拆分为多个数据切片;将所述多个数据切片封装为所述数据组播的报文,所述数据组播的报文中包括所述数据包的拆分信息,以便所述用户设备根据所述拆分信息将所述多个数据切片组合为所述数据包。在一些实施例中,所述数据组播的报文中包括所述数据包的第一摘要信息,以便所述用户设备通过比较所述第一摘要信息和第二摘要信息对所述数据包进行验证,所述第二摘要信息为所述用户设备根据从所述数据组播的报文中获取的数据包计算得来。在一些实施例中,所述信令组播的报文包括:所述信令组播的标识、相应的所述数据组播的ip(internetprotocol,互联网协议)地址、相应的所述数据组播的端口。在一些实施例中,所述数据包为软件的升级包;所述信令组播的报文中包括:需要升级的用户设备的型号、所述软件的当前版本号、所述软件的升级版本号、升级类型为定向设备升级还是全部设备升级;在所述升级类型为定向设备升级的情况下,所述信令组播的报文还包括所述定向设备的ip地址段。根据本公开的另一些实施例,提供一种数据的传输方法,包括:通过组播管理设备建立的信令组播通道,加入所述组播管理设备发起的信令组播的组播组;根据从所述信令组播通道接收到的所述信令组播的报文,判断是否加入与所述信令组播相应的数据组播的组播组;在加入所述数据组播的组播组的情况下,通过所述组播管理设备建立的数据组播通道,加入所述数据组播的组播组;通过所述数据组播通道,接收所述数据组播的报文;从所述数据组播的报文中,获取数据包。在一些实施例中,从所述数据组播的报文中,获取多个数据切片和所述数据包的拆分信息;根据所述拆分信息将所述多个数据切片组合为所述数据包。在一些实施例中,从所述数据组播的报文中,获取所述数据包的第一摘要信息;计算所述数据包的第二摘要信息;通过比较所述第一摘要信息和所述第二摘要信息,对所述数据包进行验证。在一些实施例中,所述信令组播的报文中包括:所述信令组播的标识、相应的所述数据组播的ip地址、相应的所述数据组播的端口。在一些实施例中,所述数据包为软件的升级包;所述信令组播的报文中包括:需要升级的用户设备的型号、所述软件的当前版本号、所述软件的升级版本号、升级类型为定向设备升级还是全部设备升级,在所述升级类型为定向设备升级的情况下,所述信令组播的报文还包括所述定向设备的ip地址段。根据本公开的又一些实施例,提供一种组播管理设备,包括:建立单元,用于建立信令组播通道和数据组播通道;发起单元,用于通过所述信令组播通道发起信令组播,以便加入所述信令组播的组播组的各用户设备根据所述信令组播的报文,判断是否加入与所述信令组播相应的数据组播的组播组,通过所述数据组播通道发起所述数据组播,以便加入所述数据组播的组播组的用户设备从所述数据组播的报文中获取数据包。在一些实施例中,所述的组播管理设备,还包括:拆分单元,用于将待传输的所述数据包拆分为多个数据切片;封装单元,用于将所述多个数据切片封装为所述数据组播的报文,所述数据组播的报文中包括所述数据包的拆分信息,以便所述用户设备根据所述拆分信息将所述多个数据切片组合为所述数据包。根据本公开的又一些实施例,提供一种用户设备,包括:加入单元,用于通过组播管理设备建立的信令组播通道,加入所述组播管理设备发起的信令组播的组播组,在需要加入所述信令组播相应的数据组播的组播组的情况下,通过所述组播管理设备建立的数据组播通道,加入所述数据组播的组播组;判断单元,根据从所述信令组播通道接收到的所述信令组播的报文,判断是否加入与所述数据组播的组播组;接收单元,用于通过所述数据组播通道,接收所述数据组播的报文;获取单元,用于从所述数据组播的报文中,获取数据包。在一些实施例中,所述获取单元从所述数据组播的报文中,获取多个数据切片和所述数据包的拆分信息,根据所述拆分信息将所述多个数据切片组合为所述数据包。在一些实施例中,所述获取单元从所述数据组播的报文中,获取所述数据包的第一摘要信息;所述用户设备还包括:计算单元,用于计算所述数据包的第二摘要信息;验证单元,用于通过比较所述第一摘要信息和所述第二摘要信息,对所述数据包进行验证。根据本公开的再一些实施例,提供一种数据的传输系统,包括:组播管理设备,用于执行上述任一个实施例中的数据的传输方法。根据本公开的再一些实施例,提供一种数据的传输装置,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行上述任一个实施例中的数据的传输数据的传输方法。根据本公开的再一些实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一个实施例中的数据的传输方法。在上述实施例中,为信令和相应的数据分别建立了专用的组播通道,以组播的方式将数据分发到各用户设备。这样,节约了网络带宽、降低了服务器的并发压力,从而提高了数据传输的效率。附图说明构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:图1示出本公开的数据的传输方法的一些实施例的流程图;图2示出本公开的数据包拆分封装方法的一些实施例的流程图;图3示出本公开的数据包获取方法的一些实施例的流程图;图4示出本公开的数据包验证方法的一些实施例的流程图;图5示出本公开的数据的传输方法的另一些实施例的流程图;图6示出本公开的组播管理设备的一些实施例的框图;图7示出本公开的用户设备的一些实施例的框图;图8示出本公开的数据的传输系统的一些实施例的框图;图9示出本公开的数据的传输装置的一些实施例的框图;图10示出本公开的数据的传输装置的另一些实施例的框图。具体实施方式现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。图1示出本公开的数据的传输方法的一些实施例的流程图。如图1所示,该方法包括:步骤110,建立组播通道;步骤120,发起信令组播;步骤130,发起数据组播。在步骤110中,建立信令组播通道和数据组播通道。例如,可以将具备组播能力的ip网络作为数据传输的载体,预先在ip网络分配多个组播通道用于发送信令和数据。在步骤120中,通过信令组播通道发起信令组播,以便加入信令组播的组播组的各用户设备根据信令组播的报文,判断是否加入与信令组播相应的数据组播的组播组。在一些实施例中,针对待传输的数据包生成数据组播的报文,根据要发起的数据组播生成相应的信令组播的报文。例如,信令组播的报文可以包括信令组播的标识(ctc_upgrade)、相应的数据组播的ip地址、相应的数据组播的端口。在一些实施例中,用户设备可以为iptv的机顶盒,数据包可以为机顶盒软件的升级包。例如,信令组播的报文中包括需要升级的用户设备(如机顶盒)的型号、软件的当前版本号、软件的升级版本号、升级类型为定向设备升级还是全部设备升级。在升级类型为定向设备升级的情况下,信令组播的报文还包括定向设备的ip地址段。在一些实施例中,信令组播的报文中的各字段和占用的字节如表1所示。表1字段占用字节信令组播的标识16个字节机顶盒的型号16个字节软件的当前版本号32个字节软件的升级版本号32个字节数据包的md532个字节数据组播的ip地址16个字节数据组播的端口8个字节升级类型8个字节需要升级设备的起始ip地址16个字节需要升级设备的结束ip地址16个字节在一些实施例中,机顶盒开机后响应于组播管理平台发起的信令组播,加入该信令组播的组播组,监听该信令组播的报文。对升监听到的信令组播的报文进行解析,并判断是否需要加入相应的数据组播的组播组(例如,可以根据信令组播的报文中的设备型号、软件版本号等信息判断)。在判断为需要加的情况下,机顶盒加入该数据组播的组播组;在判断为不需要加的情况下,丢弃该信令组播的报文。在步骤130中,通过数据组播通道发起数据组播,以便加入数据组播的组播组的用户设备从数据组播的报文中获取数据包。这样,以预先分配的ip网络的特定组播通道为载体,快速以广播方式将数据分发至网络终端,从而可以有效地节省网络带宽,降低服务器并发压力,节省资源投入,缩短响应时限。在一些实施例中,可以数据包先拆分再封装,然后通过数据组播的方式发送给用户设备。例如,可以通过图2中的实施例来实现。图2示出本公开的数据包拆分封装方法的一些实施例的流程图。如图2所示,该方法包括:步骤210,拆分数据切片;步骤220,封装数据组播的报文。在步骤210中,将待传输的数据包拆分为多个数据切片。在步骤220中,将多个数据切片封装为数据组播的报文述数据组播的报文中包括数据包的拆分信息,以便用户设备根据拆分信息将多个数据切片组合为数据包。在一些实施例中,可以将多个数据切片封装为流媒体文件,作为数据组播的报文。数据组播的报文可以包括数据组播的标识(ctc_upgrade)、数据包的大小、拆分包(数据切片)的总数、本次发送的拆分包的序号、本次发送的数据包的大小等数据包的拆分信息,以及各拆分包的实际数据。例如,数据组播的报文中的各字段和占用的字节如表2所示。表2在一些实施例中,加入了数据组播的组播组的用户设备可以通过图3中的实施例对数据组播的报文进行解析、组合以获取数据包。图3示出本公开的数据包获取方法的一些实施例的流程图。如图3所示,该方法包括:步骤310,获取拆分信息;步骤320,组合数据包。在步骤310中,从数据组播的报文中,获取多个数据切片和数据包的拆分信息。例如,可以对数据组播的报文协议头进行解析,以获取数据包的拆分信息。在步骤320中,根据拆分信息将多个数据切片组合为数据包。例如,可以根据拆分信息获取数据组播的报文体中的各数据切片,再将这些数据切片组合成数据包。在一些实施例中,数据组播的报文中包括数据包的第一摘要信息,以便用户设备通过比较第一摘要信息和第二摘要信息对数据包进行验证。第二摘要信息为用户设备根据从数据组播的报文中获取的数据包计算得来。例如,用户设备可以通过图4的实施例对数据包进行验证。图4示出本公开的数据包验证方法的一些实施例的流程图。如图4所示,该方法包括:步骤410,获取第一摘要信息;步骤420,计算第二摘要信息;和步骤430,验证数据包。在步骤410中,从数据组播的报文中,获取数据包的第一摘要信息。例如,第一摘要信息为平台侧计算得来的数据包的md5(message-digestalgorithm,消息摘要算法)散列值。在步骤420中,计算数据包的第二摘要信息。例如,第二摘要信息为用户设备根据获取的数据包计算得来的数据包的md5散列值。在步骤430中,通过比较第一摘要信息和第二摘要信息,对所述数据包进行验证。在一些实施例中,数据包可以为升级包,在两个md5散列值相同的情况下,用户设备可以将升级包重新命名并存储,例如,存储为/cache/update.zip。然后,可以调用android系统的升级方法,例如,recoverysystem.installpackage(contextcontext,filepackagefile)等进行升级;在两个md5散列值不同的情况下,可以将升级包删除,并退出相应的数据组播的组播组。这样,可以同时验证获取的数据包的完整性和安全性,从而提高系统的可靠性和安全性。本公开的数据的传输方法能够在用户设备(如机顶盒)数量不受限制的情况下适用于多种业务,例如,同时针对一批开机的机顶盒升级、推送广告、apk(androidpackage,安卓安装包)升级等。还可以在用户设备数量不受限制的情况下,迅速将应急消息发布到一批开机的机顶盒,或者针对一批开机的机顶盒进行应急事件处理。下面从用户设备侧说明本公开的传输方法。图5示出本公开的数据的传输方法的另一些实施例的流程图。如图5所示,该方法包括:步骤510,加入信令组播;步骤520,判断是否加入数据组播;步骤530,加入数据组播;步骤540,接收数据组播的报文;和步骤550,获取数据包。在步骤510中,通过组播管理设备建立的信令组播通道,加入组播管理设备发起的信令组播的组播组。在步骤520中,根据从信令组播通道接收到的信令组播的报文,判断是否加入与信令组播相应的数据组播的组播组。在步骤530中,在加入数据组播的组播组的情况下,通过组播管理设备建立的数据组播通道,加入数据组播的组播组。在步骤540中,通过数据组播通道,接收数据组播的报文。在步骤550中,从数据组播的报文中,获取数据包。在上述实施例中,为信令和相应的数据分别建立了专用的组播通道,以组播的方式将数据分发到各用户设备。这样,节约了网络带宽、降低了服务器的并发压力,从而提高了数据传输的效率。图6示出本公开的组播管理设备的一些实施例的框图。如图6所示,组播管理设备6包括建立单元61、发起单元62。建立单元61建立信令组播通道和数据组播通道。发起单元62通过信令组播通道发起信令组播。加入信令组播的组播组的各用户设备根据信令组播的报文,判断是否加入与信令组播相应的数据组播的组播组。发起单元62通过数据组播通道发起数据组播。加入数据组播的组播组的用户设备从数据组播的报文中获取数据包。在一些实施例中,组播管理设备6还包括拆分单元63和封装单元64。拆分单元63将待传输的数据包拆分为多个数据切片。封装单元64将多个数据切片封装为数据组播的报文,数据组播的报文中包括数据包的拆分信息。用户设备根据拆分信息将多个数据切片组合为数据包。图7示出本公开的用户设备的一些实施例的框图。如图7所示,用户设备7包括加入单元71、判断单元72、接收单元73和获取单元74。加入单元71通过组播管理设备建立的信令组播通道,加入组播管理设备发起的信令组播的组播组。判断单元72根据从信令组播通道接收到的信令组播的报文,判断是否加入与数据组播的组播组。在需要加入信令组播相应的数据组播的组播组的情况下,加入单元71通过组播管理设备建立的数据组播通道,加入数据组播的组播组;接收单元73通过数据组播通道,接收数据组播的报文。获取单元74从数据组播的报文中获取数据包。在一些实施例中,获取单元74从数据组播的报文中,获取多个数据切片和数据包的拆分信息,根据拆分信息将多个数据切片组合为数据包。在一些实施例中,获取单元74从数据组播的报文中,获取数据包的第一摘要信息。用户设备7还可以包括计算单元75和验证单元76。计算单元75计算数据包的第二摘要信息。验证单元76通过比较第一摘要信息和第二摘要信息,对数据包进行验证。图8示出本公开的数据的传输系统的一些实施例的框图。如图8所示,数据的传输系统8包括:上述任一个实施例中的组播管理设备,用于执行上述任一个实施例中的数据的传输方法;和上述任一个实施例中的用户设备,用于执行上述任一个实施例中的数据的传输方法。图9示出本公开的数据的传输装置的一些实施例的框图。如图9所示,该实施例的数据的传输装置9包括:存储器91以及耦接至该存储器91的处理器92,处理器92被配置为基于存储在存储器91中的指令,执行本公开中任意一个实施例中的数据的传输方法。其中,存储器91例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)、数据库以及其他程序等。图10示出本公开的数据的传输装置的另一些实施例的框图。如图10所示,该实施例的数据的传输装置10包括:存储器1010以及耦接至该存储器1010的处理器1020,处理器1020被配置为基于存储在存储器1010中的指令,执行前述任意一个实施例中的数据的传输方法。存储器1010例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(bootloader)以及其他程序等。数据的传输装置10还可以包括输入输出接口1030、网络接口1040、存储接口1050等。这些接口1030、1040、1050以及存储器1010和处理器1020之间例如可以通过总线1060连接。其中,输入输出接口1030为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口1040为各种联网设备提供连接接口。存储接口1050为sd卡、u盘等外置存储设备提供连接接口。本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。至此,已经详细描述了根据本公开的数据的传输方法、数据的传输装置、数据的传输系统、组播管理设备、用户设备和计算机可读存储介质。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。可能以许多方式来实现本公开的方法和系统。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和系统。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1