一种RLC状态变量同步方法、装置、基站和存储介质
技术领域
本发明涉及专网通信领域,更具体地,涉及一种RLC状态变量同步方法、装置、基站和存储介质。
背景技术
为了使基站高可靠运行,一般在基站中设置主业务板和备用业务板,当主业务板发生故障时,使用备用业务板代替主业务板继续进行通信业务的处理。当进行主业务板与备用业务板的切换(即主备切换)时,需要使备用业务板上的业务状态参数与用户终端同步匹配,才能实现应用层业务的连续保持。
其中,RLC(Radio Link Control,无线链路控制协议)状态变量是保证业务连续的一组关键参数。RLC运行模式包括AM模式(Acknowledged Mode,确认模式)和UM模式(Unacknowledged Mode,非确认模式),对RLC状态变量的同步方法根据运行模式而不同。语音通话、视频通话等业务的时延敏感度较高,RLC状态变量变化较快,一般使用UM模式。由此,UM模式下的RLC状态变量的同步需要在更短的时间内进行。在实现过程中,发明人发现传统技术中至少存在如下问题:传统的UM模式下的RLC状态变量同步方法可靠性不高,并且会产生较大的业务中断。
发明内容
基于此,有必要针对UM模式下的RLC状态变量同步方法可靠性不高的问题,提供一种RLC状态变量同步方法、装置、基站和存储介质。
为了实现上述目的,一方面,本申请实施例提供一种RLC状态变量同步方法,其特征在于,包括以下步骤:
接收到故障切换消息后,进行资源初始化;
资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
在其中一个实施例中,RLC同步数据包包括至少两个RLC PDU,RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
在其中一个实施例中,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
在其中一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;将基站端RLC接收状态变量与SN号适配的步骤,还包括:
根据SN号修改UM接收状态变量和UM最高接收状态变量。
另一方面,本申请实施例还提供一种RLC状态变量同步装置,其特征在于,包括:
资源初始化模块,用于接收到故障切换消息后,进行资源初始化;
上行方向同步模块,用于在资源初始化完成后,上行方向接收用户终端发送的RLCPDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
下行方向同步模块,用于生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
在其中一个实施例中,RLC同步数据包包括至少两个RLC PDU,RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
在其中一个实施例中,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
在其中一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;上行方向同步模块,还用于根据SN号修改UM接收状态变量和UM最高接收状态变量。
再一方面,本申请实施例提供一种基站,包括主业务板和备用业务板,备用业务板用于实现如上述的RLC状态变量同步方法。
一方面,本申请实施例提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的RLC状态变量同步方法。
上述技术方案中的一个技术方案具有如下优点和有益效果:
RLC状态变量同步方法,在接收到故障切换消息后,进行资源初始化。资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配。适配完成后,上行方向用户终端到基站的通信就可以正常进行了。之后,生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。这样,下行方向基站到用户终端的通信就可以正常进行了。基于此,该方法在因故障进行主备切换后,由基站端触发,免除用户终端触发的不确定性,并且不存在时间间隔,提高了RLC同步的可靠性,并改善了基站和用户终端在切换时的业务连续性。
附图说明
图1为一个实施例中RLC状态变量同步方法的流程示意图;
图2为另一个实施例中RLC状态变量同步方法的流程示意图;
图3为一个实施例中RLC状态变量同步装置的结构示意图;
图4为另一个实施例中RLC状态变量同步装置的结构示意图;
图5为本申请一个实施例中主备切换前后基站与用户终端通信关系的示意图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的首选实施例。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本申请的公开内容更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
有关主业务板和备用业务板切换时,使备用业务板得到与之前与用户终端匹配的状态变量的技术,传统技术中披露了两种思路。一种为设置定时周期,当周期计时结束时,将主业务板上的状态变量发给备用业务板,当主业务板故障,备用业务板使用上一周期更新的状态变量与用户终端继续通信。因为定时周期不能无限小,而UM模式下RLC状态变量的变化很快,不可避免的备用业务板的RLC状态变量会滞后于用户终端,产生丢包或延时,甚至业务中断。
另一种思路是,使用重建立进行基站和用户终端之间状态变量的同步,当主业务板故障切换至备用业务板时,备用业务板的高层发送一些错误的重配置信令触发用户终端开始进行重建立流程,重建立使得备用业务板和用户终端的状态变量都恢复到初始值。但是重建立只在一定业务条件下进行,不能可靠覆盖所有适用于UM模式的业务类型,且实现过程中发明人发现,用户终端收到重配置信令后,不一定会触发重建立流程,因此,这种方法也不能可靠的实现故障切换时UM模式下RLC状态变量的同步。
基于上述情况,如图1所示,本申请实施例提供一种RLC状态变量同步方法,该方法可应用于基站中的备用业务板中,包括:
步骤S110,接收到故障切换消息后,进行资源初始化;
接收到故障切换消息后,备用业务板开始进行资源初始化。在一个实施例中,故障切换消息由主业务板发来。在另一个实施例中,故障切换消息由监测主业务板运行状态的检测设备发来,该设备上运行HA(High Availability,支持硬件备份的高可靠)框架软件监测主业务板的运行状态指标。
步骤S120,资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLCPDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
具体的,用户终端并不知道基站端正在进行主备切换,仍然会向基站发送RLCPDU。备用业务板初始化之后,接收到用户终端发送的RLC PDU,解析出SN号,根据接收到的SN号修改基站端RLC接收状态变量。其中,RLC PDU即RLC协议数据单元,是RLC层传输数据的最小粒度。
需要说明的是,RLC协议的通信两端需要分别设置两组状态变量。两端相互通信时,第一端的RLC发送状态变量与第二端的RLC接收状态变量同步,第一端的RLC接收状态变量与第二段的RLC发送状态变量同步。通过,步骤S120,备用业务板上的基站端RLC接收状态变量与用户终端上的用户端RLC发送状态变量同步,上行方向的通信可以恢复。
步骤S130,生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
其中,RLC同步数据包中携带了表征基站端RLC发送状态变量的特征参数,用于指示用户终端根据该特征参数,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
上述实施例中通知备用业务板进行切换后,备用业务板立即开始资源初始化,并在初始化之后接收开始接收用户终端发送的RLC PDU,收到第一个RLC PDU后,解析出SN号,将基站端RLC接收状态变量与该SN号适配,完成上行方向的基站与用户终端的RLC状态变量同步。在下行方向上,发送RLC同步数据包至用户终端,使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步,完成下行方向的基站与用户终端的RLC状态变量同步,之后基站和用户终端就可以进行正常通信了。基于此,本实施例提供的RLC状态变量同步方法,由备用业务板触发,免除用户终端触发的不确定性,不受业务类型的限制,而且不存在定时周期的时间间隔,提高了RLC同步的可靠性,能有效改善基站和用户终端在主备切换时的业务连续性。
在一个实施例中,如图2所示,步骤S130与步骤S120同时进行。进一步缩短RLC状态变量的同步时长,使主备切换时基站与用户终端的通信业务连续性更好。
在一个实施例中,RLC同步数据包包括至少两个RLC PDU,RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
具体而言,RLC PDU包括头部和数据域,在通信业务运行时,RLC层上行接收多个RLC PDU,重排序后,去除RLC PDU的头部,将数据域进行组装,得到RLC SDU,将RLC SDU发至PDCP协议层。RLC SDU也是PDCP PDU,它同样有头部和数据域。因此,若在基站端构建RLCPDU时,将在其数据域中将PDCP PDU的头部构建为PDCP协议无法识别的,然后发送至用户终端。那么用户终端内RLC协议层将RLC SDU发送至PDCP协议层时,PDCP协议层因无法识别RLCSDU的头部而将其丢弃。本实施例中,用户终端通过携带在RLC PDU头部的特征参数,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。并且,当RLC协议层将处理好的RLCSDU发送至PDCP协议层时,由于RLC SDU头部不符合协议,RLC SDU被丢弃,不影响PDCP协议的状态变量,避免对PDCP层的造成影响。
对于UM 10bit场景,给出一个实施例,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
具体而言,UM 10bit场景下,SN号的取值范围在0至1023,重排序窗口的大小为512。设置备用业务板发送的两个RLC PDU的SN号为512和1023,防止由于SN号落在用户设备的重排序窗口外,而引起大量连续的丢包,导致通信业务不连续。
在一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;将基站端RLC接收状态变量与SN号适配的步骤,还包括:
步骤S122,根据SN号修改UM接收状态变量和UM最高接收状态变量。
其中,UM接收状态变量(UM receive state variable)即VR(UR),为在重排序窗口中的最小的还未被收到的RLC PDU的SN号。UM最高接收状态变量(UM highest receivingstatevariable)即VR(UH),为已经收到的所有RLC PDU中最大的SN号加1,即重排序窗口的上边界(不包含该变量)。具体的,在一个实施例中,将UM接收状态变量和UM最高接收状态变量的值均设置为等于用户终端发送来的第一个RLC PDU的SN号。使上行方向实现RLC状态变量同步。
在一个实施例中,在根据SN号修改UM接收状态变量和UM最高接收状态变量之后,还包括步骤:关闭重排序定时器。重排序定时器是为等待接收重排序窗口中未收到RLC PDU设置的定时器。关闭重排序定时器可以进一步加快本实施例中RLC状态变量的同步时长,使本实施例的同步更可靠,通信业务在主备切换时的流畅性更好。
进一步的,在一个实施例中,基站端RLC发送参数包括VT(US),在基站侧步骤S130具体流程为:
步骤S132,将VT(US)设置为512,生成头部中SN号为512的RLC PDU,并将SN号为512的RLC PDU发送至用户终端;
步骤S134,将VT(US)设置为1023,生成头部中SN号为1023的RLC PDU,并将SN号为512的RLC PDU发送至用户终端。
而在用户终端侧,分别接收SN号为512的RLC PDU和SN号为1023的RLC PDU。当收到后一个RLC PDU时,用户终端侧的VR(UH)减1等于512或1023,完成下行方向的同步。
需要说明的是,UM模式下RLC协议的接收数据规则为仅在以下两种情况下接收RLCPDU。1、当收到重排序窗口中的未收到的RLC PDU时。2、当收到SN号大于等于VR(UH)的RLCPDU时。而UM 10bit场景下,SN号的取值范围在0至1023,重排序窗口的大小为512。因此,在UM 10bit场景下,若分别接收到SN号为512和1023的RLC PDU,则至少有一个SN号是大于或等于VR(UH)的,即会被用户终端的RLC协议接收。接收后,VR(UH)减1即为512或1023,与此时基站端的VT(US)一致,完成下行方向的RLC状态变量的同步。而VT(US)的更新规则为发出一个RLC PDU则自加一。VR(UH)的更新规则为每接收一个RLC PDU后,判断出收到的SN号最大的RLC PDU,将该最大的SN号加一设置为新的VR(UH)。因此,同步之后基站端的VT(US)按步长1更新,用户终端的VR(UH)根据接收结果更新,实现数据同步。
在一个实施例中,如图3、4所示,提供了一种RLC状态变量同步装置,包括:
资源初始化模块210,用于接收到故障切换消息后,进行资源初始化;
上行方向同步模块220,用于在资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
下行方向同步模块230,用于生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
在一个实施例中,RLC同步数据包包括至少两个RLC PDU,该RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
在一个实施例中,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
在一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;上行方向同步模块220,还用于根据SN号修改UM接收状态变量和UM最高接收状态变量。
在一个实施例中,还包括:
通知模块240,分别连接上行方向同步模块220和下行方向同步模块230,当上行方向同步模块220和下行方向同步模块230均运行结束时,通知RLC协议层同步完成,恢复通信。
通知模块以RB无线承载为最小粒度,通过有关全局变量来完成两个模块的通知消息,通知模块还包括故障检测模块激活小区后及时告知RLC层进行相关操作。
在一个实施例中,还包括:
RLC协议模块250,用于对上下行数据进行处理,使用的上下行状态变量为经过上、下行状态变量恢复模块处理后得到的值。
RLC协议模块250,对UM模式上下行数据进行处理,使用的基站端RLC发送状态变量和基站端RLC接收状态变量为经过上行方向同步模块220和下行方向同步模块230处理后得到的值,此时业务可以正常进行了。
其中,RLC协议可以采用36.322协议。
关于RLC状态变量同步装置的具体限定可以参见上文中对于RLC状态变量同步方法的限定,在此不再赘述。上述RLC状态变量同步装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种基站300,包括主业务板310和备用业务板320,如图5所示,为主备切换前后基站300与用户终端通信关系的示意图。备用业务板320可实现以下步骤:
接收到故障切换消息后,进行资源初始化;
资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
在一个实施例中,RLC同步数据包包括至少两个RLC PDU,RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
在一个实施例中,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
在一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;备用业务板320还用于执行:
根据SN号修改UM接收状态变量和UM最高接收状态变量。
关于基站300的具体限定可以参见上文中对于RLC状态变量同步方法的限定,在此不再赘述。
在一个实施例中,提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
接收到故障切换消息后,进行资源初始化;
资源初始化完成后,上行方向接收用户终端发送的RLC PDU,并基于RLC PDU解析出SN号,将基站端RLC接收状态变量与SN号适配;
生成RLC同步数据包,并下行方向发送RLC同步数据包至用户终端,以使用户终端根据RLC同步数据包,将用户端RLC接收状态变量与基站端RLC发送状态变量同步。
在一个实施例中,RLC同步数据包包括至少两个RLC PDU,RLC PDU的数据域中的PDCP头部数据是PDCP协议无法识别的。
在一个实施例中,RLC同步数据包包括两个RLC PDU,RLC PDU头部携带的SN号分别为512和1023。
在一个实施例中,基站端RLC接收状态变量包括UM接收状态变量和UM最高接收状态变量;该计算机程序还用于执行:
根据SN号修改UM接收状态变量和UM最高接收状态变量。
关于存储介质的具体限定可以参见上文中对于RLC状态变量同步方法的限定,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。