一种协议数据单元的检测方法和装置的制作方法

文档序号:7554120阅读:189来源:国知局
专利名称:一种协议数据单元的检测方法和装置的制作方法
技术领域
本发明涉及通信技术领域,特别是涉及一种协议数据单元的检测方法和装置。
背景技术
在第三代移动通信技术(3rd Generation, 3G)后的长期演进(Long TimeEvolution, LTE)系统中,根据LTE TS36.323协议,在分组数据汇聚协议(Packet DataConvergence Protocol, F1DCP)层的数据无线承载(Data Radio Bearer, DRB)上,当配络为确认模式(Acknowledged Mode, AM)时,系统维护了一个接收窗Reordering_Window,用于判定接收的协议数据单元(Protocol Data Unit, F1DU)是否已被接收过。其中判定条件如下:SN-Last_Submitted_PDCP_RX_SN>Reordering_ffindow,或 0 < Last_Submitted_PDCP_RX_SN-SN〈Reordering_Window。其中,SN为接收的 F1DU 的序列号(Sequence Number), Last_Submitted_PDCP_RX_SN为最后一次递交的PDU的SN。当接收的rou的SN满足上述任一判定条件时,该接收的PDU在接收窗外,说明已经接收过该rou,因此可以丢弃该rou。当接收的rou的SN均不满足上述判定条件时,该PDU在接收窗内,即未接收过该rou,因此可以按照协议规定,对该PDU去除rocp头、进行解密、头解压缩后,递交解出的F1DCP服务数据单元(Service Data Unit, SDU)给上层。在AM模式下,终端侧和网络侧会分别维护各自的状态参数,如终端侧的状态参数包括:接收端超巾贞号(Receive Hyper Frame Number, RX-HFN), Last_Submitted_PDCP_RX_SN和预计下次接收的H)U的序列号(Next_PDCP_RX_SN)等。网络侧的状态参数包括:预计下次发送的F1DU的序列号(Next_PDCP_TX_SN),发送端超巾贞号(Transport Hyper FrameNumber, TX-HFN)等。并且,终端侧通常会反馈状态报告给网络侧,网络侧会根据状态报告中已接收的I3DCP PDU的SN的值来重铬Next_PDCP_TX_SN和TX_HFN,以保证网络侧发送给终端的HXP SDU的SN是连续的。由于接收和反馈的时间差等,通常网络侧所确认终端已接收到的rou的SN比实际终端接收的rou的SN的值要小一些。因此,在AM模式下进行重建或切换时,终端侧和网络侧可分别依据维护的状态参数进行数据的传输。但是,当底层环境不好,特别是终端从一个小区重建或切换到另一个小区时,可能会导致终端侧维护的状态参数出现错误,从而导致终端侧实际已接收的rou的SN比网络侧所确认终端接收的SN的值要大的多,甚至可能出现终端侧的TX_HFN比网络侧的RX_HFN小一帧的情况,并且由于终端侧所维护的状态参数出现错误,还可能导致维护的状态参数比终端侧实际接收到的rou的SN大,即部分未接收的PDU落在接收窗外。当出现上述情况时,网络侧后续发送的大量PDU都将会被终端侧处理成在接收窗外,因此大量的PDU会被丢弃,当这些被丢弃的PDU中所包含的应用层业务数据是之前并没有发送过的数据时,还会引起应用层下行业务中断。

发明内容
本发明实施例提供了一种协议数据单元的检测方法和装置,以解决由于重建或切换而导致业务中断的问题。为了解决上述问题,本发明实施例公开了一种协议数据单元的检测方法,包括:接收协议数据单元,并检测到所述协议数据单元在接收窗外;若窗外缓存为空且上次递交的协议数据单元在接收窗外,则对所述协议数据单元进行第一递交处理,其中,所述窗外缓存用于存储在接收窗外的协议数据单元;若所述窗外缓存不为空,或,所述窗外缓存为空且上次递交的协议数据单元不在接收窗外,则将所述协议数据单元放入所述窗外缓存;当所述窗外缓存存满时,对所述窗外缓存中的协议数据单元进行第一递交处理。相应的,本发明实施例还公开了一种协议数据单元的检测装置,包括:接收模块,用于接收协议数据单元; 窗外检测模块,用于检测到所述协议数据单元在接收窗外后,当窗外缓存为空且上次递交的协议数据单元在接收窗外时,触发第一递交模块;在所述窗外缓存不为空,或,所述窗外缓存为空且上次递交的协议数据单元不在接收窗外时,将所述协议数据单元放入所述窗外缓存,其中,所述窗外缓存用于存储在接收窗外的协议数据单元;第一递交模块,用于在所述窗外缓存为空且上次递交的协议数据单元在接收窗外时,对所述协议数据单元进行第一递交处理;以及在所述窗外缓存存满时,对所述窗外缓存中的协议数据单元进行第一递交处理。与现有技术相比,本发明包括以下优点:本发明实施例对在接收窗外的PDU不会全部进行丢弃处理,而是进行一定的检测操作。具体的,当窗外缓存为空且上次递交的PDU在接收窗外,可以对该PDU进行第一递交处理;当窗外缓存不为空,或,窗外缓存为空且上次递交的PDU不在接收窗外,则将rou放入窗外缓存。然后在窗外缓存存满时,对所述窗外缓存中的PDU进行第一递交处理。从而本发明实施例可以递交部分落在接收窗外的rou,防止出现业务中断的情况,保证业务的正常执行。


图1是本发明实施例一提供的协议数据单元的检测方法流程图;图2是本发明实施例二提供的协议数据单元的检测方法流程图;图3是本发明实施例三提供的协议数据单元的检测方法流程图;图4是本发明实施例四提供的协议数据单元的检测装置流程图;图5是本发明实施例五提供的协议数据单元的检测装置流程图。
具体实施例方式为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。本发明实施例提供了一种协议数据单元的检测方法,当协议数据单元在接收窗外时,当达到一定的要求时,可以将协议数据单元进行第一递交处理。因此即使协议数据单元在接收窗外也可以进行递交,从而避免出现由于重建或切换而导致的业务中断。实施例一本发明实施例可以应用于在rocp层的DRB上,当配铬为AM模式时对I3DU的处理过程中,主要包括以下操作步骤。 参照图1,给出了本发明实施例一提供的协议数据单元的检测方法流程图。步骤101,接收协议数据单元,并检测到该协议数据单元在接收窗外。LTE系统的rocp层中可以接收rou,其中,AM模式下系统维护了一个接收窗Reordering_Window,用于对PDU是否已接收过进行判断。因此,可以检测该F1DU是否在接收窗Reordering_Window外,判定条件可以配络如下:SN-Last_Submitted_PDCP_RX_SN>Reordering_ffindow,或 0 < Last_Submitted_PDCP_RX_SN-SN〈Reordering_Windo w。其中,SN为接收的PDU的序列号,Last_Submitted_PDCP_RX_SN为最后一次递交的PDU 的 SN。当接收的rou的SN满足上述任一判定条件时,即可判定接收的PDU落在接收窗外。步骤102,若窗外缓存为空且上次递交的协议数据单元在接收窗外,则对该协议数据单元进行第一递交处理。本发明实施例中,为了防止由于重铬或切换等原因,致使未接收的PDU落在接收窗外,进而导致业务中断的情况。在系统中配铬了窗外缓存,该窗外缓存用于存储落在接收窗外的rou。从而在达到一定的标准时,可以将窗外缓存中的PDU进行递交,防止出现业务中断的问题。因此,为了确定落在接收窗外PDU是否需要进行递交,首先可以对窗外缓存进行检测,若窗外缓存为空,则要对上次递交的PDU进行检测,其中,上次递交的PDU指的是在当前时刻最后一次提交的rou。若此时窗外缓存为空,并且检测到上次递交的PDU在接收窗夕卜,则可以直接将PDU进行第一递交处理,即可以对该PDU去除rocp头、进行解密、头解压缩后,递交解出的rocp SDU给上层。步骤103,若窗外缓存不为空,或,窗外缓存为空且上次递交的协议数据单元不在接收窗外,则将该PDU放入窗外缓存。若对窗外缓存进行检测时,检测到窗外缓存不为空,则可以将该PDU存入窗外缓存。或者,对窗外缓存进行检测时,检测到窗外缓存为空,但是对上次递交的PDU进行检测,检测到上次递交的协议数据单元不在接收窗外,此时同样可以将rou放入窗外缓存。步骤104,当窗外缓存存满时,对窗外缓存中的协议数据单元进行第一递交处理。此过程中,当检测到窗外缓存已存满,则可以将窗外缓存中的PDU进行第一递交处理,即可以对窗外缓存中的PDU去除rocp头、进行解密、头解压缩后,递交解出的rocpSDU给上层综上所述,本发明实施例对在接收窗外的PDU不会全部进行丢弃处理,而是进行一定的检测操作。具体的,当窗外缓存为空且上次递交的PDU在接收窗外,可以对该PDU进行第一递交处理;当窗外缓存不为空,或,窗外缓存为空且上次递交的PDU不在接收窗外,则将PDU放入窗外缓存。然后在窗外缓存存满时,对窗外缓存中的rou进行第一递交处理。从而本发明实施例可以递交部分落在接收窗外的rou,防止出现业务中断的情况,保证业务的正常执行。实施例二参照图2,给出了本发明实施例二提供的协议数据单元的检测方法流程图。步骤2Ol,接收 PDU。步骤202,检测PDU是否在接收窗外。若是,即PDU在接收窗外,则后续执行步骤203 ;若否,即PDU在接收窗内,则后续执行步骤208。步骤203,检测窗外缓存是否为空。 若PDU在接收窗外,则检测窗外缓存是否为空。若是,即窗外缓存为空,则后续执行步骤204,若否,即窗外缓存不为空,则后续执行步骤205。步骤204,检测上次递交的PDU是否在接收窗外。若PDU在接收窗外且窗外缓存为空,则检测上次递交的PDU是否在接收窗外。若是,即上次递交的PDU在接收窗外,则执行步骤207 ;若否,即上次递交的PDU在接收窗内,则执行步骤205。步骤205,将PDU放入窗外缓存。若PDU在接收窗外,窗外缓存为空,并且上次递交的PDU在接收窗外,则可以将rou放入窗外缓存。步骤206,检测窗外缓存是否已存满。然后可以检测窗外缓存是否已存满。若是,即窗外缓存已存满,则后续执行步骤207 ;若否,即窗外缓存未存满,则返回步骤201,继续接收rou。步骤207,对PDU进行第一递交处理。若窗外缓存已存满,则可以对窗外缓存中的PDU进行第一递交处理。可选的,对PDU进行第一递交处理,包括:根据状态参数和该PDU计算超帧号;在不更新状态参数的基础上,根据超帧号对PDU进行解析并递交。本发明实施例中,在落在接收窗外的PDU满足标准时,可以对该PDU进行第一递交处理,具体包括:可以根据状态参数和该PDU计算HFN,窗外数据的HFN的计算方式可以如:若接收的PDU的SN ( Next_PDCP_RX_SN则,HFN等于此DRB所维护的状态参数中的RX_HFN,否贝U,即SN>Next_PDCP_RX_SN,则HFN等于此DRB所维护的状态参数中的RXJlFN-1。本发明实施例中,主要是终端侧的处理操作,因此终端侧维护的状态参数包括RX_HFN, Last_Submitted_PDCP_RX_SN, Next_PDCP_RX_SN 等,在进行第一递交处理时,可以不更新接收端的状态参数,而仅将解出的SDU递交给上层。这样一方面可以避免当这些窗外的PDU中所包含的应用层业务数据是之前并没有发送过的数据时所引起的应用层业务中断;另一方面若这些窗外的rou中所包含的应用层业务数据为重复数据,或是由于底层出错导致收到了大量窗外数据时,由于并没有更新接收端的状态参数,也不会对后续收到的正常的接收窗内的数据产生影响。步骤208,检测窗外缓存是否为空。若PDU在接收窗内,则检测窗外缓存是否为空。若是,即窗外缓存为空,则后续执行步骤210 ;若否,即窗外缓存不为空,则后续执行步骤209。步骤209,清空窗外缓存。若PDU在接收窗内且窗外缓存不为空,则说明存储了落在接收窗外的PDU在窗外缓存中后,继续接收到了在接收窗内的rou。可以理解的是,在此种情况下窗外缓存中在接收窗外的PDU是重复接收的,不需要重复递交,因此可以将窗外缓存中的PDU丢弃,即将窗外缓存清空。步骤210,对PDU进行异常检测。在实际的LTE系统中,由于物理 层和空口等因素影响,网络侧发送给终端的HXPPDU的SN极有可能在终端rocp层收到之前发生了突变。若突变后的SN比正常SN大了很多,且在接收窗内,则按照协议的规定,此SN异常的PDU会进行递交处理,并将SN异常的PDU所包含的SDU递交给上层。递交后状态参数中的Last_Submitted_PDCP_RX_SN会被更新为这个异常SN的值。因此,在DRB上配铬为AM模式时,之后收到的后续正常SN的TOU,都将会检测SN〈Last_Submitted_PDCP_RX_SN而被判定处于接收窗外,导致后续正常的I3DU被丢弃,此种情况会持续到直到收到SN比突变SN大的PDU为止。而在此期间将导致大量正常的PDU未被接收,进而导致终端下行数据业务在HXP层发生断流。因此,本发明实施例为了防止由于接收了突变的PDU导致后续出现下行数据业务断流的问题,在检测到PDU在接收窗内时,无论窗外缓存是否为空,都要对PDU进行异常检测。可选的,对PDU进行异常检测的步骤,包括:检测PDU是否满足第一预设条件;若PDU满足第一预设条件,则将PDU作为可疑rou,并存入到可疑缓存中;若PDU不满足第一预设条件,则对PDU进行第二递交处理。可以检测该PDU是否满足第一预设条件,其中,第一预设条件是检测PDU是否可疑的标准,其中,可疑指的是该PLC PDU的SN有可能发生了突变,因此第一预设条件用于判定该PDU是否可能发生突变。第一预设条件可以配络为:PDU的SN减去Last_Submitted_PDCP_RX_SN得到的差的绝对值大于指定值。本发明实施例为保证检测到可疑的rou,配铬了可疑缓存,其中,可疑缓存用于存储由异常检测确定的可疑rou,以及参考rou,并且,可疑缓存中第一个存储的PDU为可疑rou,其后存入的均为参考rou,后续通过参考PDU可以对可疑PDU是否发生突变进行检测。因此在检测到PDU可疑,但还无法确定PLC PDU的SN是否发生了突变时,可以采用可疑缓存暂时存储该PLC PDU0因此,当PDU满足第一预设条件,则将PDU作为可疑rou,并存入到可疑缓存中;若PDU不满足第一预设条件,则对PDU进行第二递交处理。后续,若检测到可疑PDU确实发生了突变,则可以不递交该可疑rou,防止出现业务断流的问题。
可选的,对PDU进行第二递交处理,包括:根据PDU更新接收端的状态参数;对I3DU进行解析并递交。本发明实施例中,第二递交处理可以理解为在HXP的DRB中一个PDU的递交处理方法,如根据该I3DU的SN更新接收端的状态参数中的RX_HFN,Last_Submitted_PDCP_RX_SN,Next_PDCP_RX_SN等,之后按协议的规定去除该I3DU的TOCP头、然后进行解密、头解压缩等得到对应的SDU,并递交解出的SDU给上层。综上所述,本发明实施例还可以对落在接收窗内的PDU进行异常检测,防止由于PDU的SN发生突变,导致出现有问题的接收端的状态参数进而影响业务的问题。实施例三可选的,在检测之前,还包括对可疑缓存的检测以及对窗外缓存的检测:检测可疑缓存,其中,可疑缓存用于存储由异常检测确定的可疑协议数据单元,以及参考协议数据单元;若可疑缓存不为空,则将PDU作为参考rou,并存入到可疑缓存中;若窗外缓存不为空,则检测窗外缓存是否为空;若窗外缓存为空,则对PDU是否在接收窗外进行检测。可选的,对rou进行异常检测,包括:检测rou是否满足第一预设条件;grou满足第一预设条件,则将PDU作为可疑rou,并存入到可疑缓存中;若PDU不满足第一预设条件,则对PDU进行第二递交处理。 可选的,将PDU作为参考PDU之后,还包括:检测可疑缓存是否已存满;若可疑缓存已存满,则检测可疑缓存中的可疑rou是否满足第二预设条件;若可疑rou满足第二预设条件,则丢弃可疑rou;若可疑rou不满足第二预设条件,则对可疑rou进行第二递交处理。可选的,丢弃可疑PDU之后,还包括:依次检测可疑缓存中的参考rou是否在接收窗外;若该参考PDU在接收窗外,则将参考PDU放入窗外缓存中;若该参考PDU在接收窗内,则丢弃窗外缓存中的rou,并对参考PDU进行异常检测。通过上述内容的论述,本发明实施例提供的方法还可以采用如下操作步骤。参照图3,给出了本发明实施例三提供的协议数据单元的检测方法流程图。步骤301,接收 PDU。步骤302,检测可疑缓存是否为空。接收PDU后,可以检测可疑缓存是否为空。若可疑缓存不为空,则后续执行步骤312;若可疑缓存为空,则后续执行步骤303。步骤303,检测PDU是否在接收窗外;在确定可疑缓存为空后,可以检测PDU是否在接收窗外。若检测到PDU在接收窗外,则后续执行步骤305 ;若检测到PDU不在接收窗外,则后续执行步骤304。步骤304,检测窗外缓存是否为空。若可疑缓存均为空,并且检测到PDU不在接收窗外,则可以进一步检测窗外缓存是否为空。若是,即窗外缓存为空,则后续执行步骤311 ;若否,即窗外缓存不为空,则后续执行步骤310。步骤305,检测窗外缓存是否为空。若可疑缓存为空且检测到PDU在接收窗外,则可以进一步检测窗外缓存是否为空。若是,即该窗外缓存为空,则后续执行步骤306 ;若否,即窗外缓存不为空,则后续执行步骤307。步骤306,检测上次递交的PDU是否在接收窗外。若窗外缓存和可疑缓存均为空,且该PDU在接收窗外,则可以检测上次递交的rou是否在接收窗外。若是,即上次递交的PDU在接收窗外,则后续执行步骤309 ;若否,即上次递交的PDU在接收窗内,则后续执行步骤307。步骤307,将该PDU放入窗外缓存。若窗外缓存和可疑缓存均为空,且该PDU在接收窗外,当上次递交的PDU在接收窗内时,可以将该PDU放入窗外缓存。此外,若可疑缓存为空且窗外缓存不为空,当该PDU在接收窗外,则同样可以将该PDU放入窗外缓存。 步骤308,检测窗外缓存是否已存满。若是,即窗外缓存已存满,则后续执行步骤309 ;若否,即窗外缓存未存满,则重新执行步骤301,继续接收rou。步骤309,对该PDU进行第一递交处理。若将PDU存入窗外缓存后,若检测到窗外缓存已存满,则可以对该PDU进行第一递交处理。可选的,对PDU进行第一递交处理,包括:根据状态参数和该PDU计算超帧号;在不更新状态参数的基础上,根据超帧号对PDU进行解析并递交。本发明实施例中,在落在接收窗外的PDU满足标准时,可以对该PDU进行第一递交处理,具体包括:可以根据状态参数和该PDU计算HFN,窗外数据的HFN的计算方式可以如:若接收的PDU的SN ( Next_PDCP_RX_SN则,HFN等于此DRB所维护的状态参数中的RX_HFN,否贝U,即SN>Next_PDCP_RX_SN,则HFN等于此DRB所维护的状态参数中的RXJlFN-1。本发明实施例中,主要是终端侧的处理操作,因此终端侧维护的状态参数包括RX_HFN, Last_Submitted_PDCP_RX_SN, Next_PDCP_RX_SN 等,在进行第一递交处理时,可以不更新接收端的状态参数,而仅将解出的SDU递交给上层。这样一方面可以避免当这些窗外的PDU中所包含的应用层业务数据是之前并没有发送过的数据时所引起的应用层业务中断;另一方面若这些窗外的rou中所包含的应用层业务数据为重复数据,或是由于底层出错导致收到了大量窗外数据时,由于并没有更新接收端的状态参数,也不会对后续收到的正常的接收窗内的数据产生影响。步骤310,清空窗外缓存。若可疑缓存为空且窗外缓存不为空,当该PDU在接收窗内,可以理解的是此时窗外缓存中的PDU是重复接收的,因此可以清空窗外缓存,即丢弃窗外缓存中的rou。步骤311,检测该PDU是否满足第一预设条件。若窗外缓存和可疑缓存均为空,且该PDU在接收窗内,则可以检测对该PDU进行异常检测,即该PDU是否满足第一预设条件。若是,即该PDU满足第一预设条件,则后续执行步骤312 ;若否,即该PDU不满足第一预设条件,则后续执行步骤322。步骤312,将PDU放入可疑缓存。本发明实施例中,为了对可疑rou的SN是否异常进行判定,可以配铬可疑缓存为既保存可疑的rou,也保存参考rou。具体实施中,可疑缓存可存放指定个数的rou,具体包括:一个可疑的PDu和多个参考rou。若检测到窗外缓存为空,且可疑缓存不为空,说明可疑缓存中存储有可疑rou,则可以将PDU作为参考PDU放入可疑缓存中。若窗外缓存和可疑缓存均为空,且该PDU在接收窗内,当该PDU满足第一预设条件时,说明该PDU存在可疑,可以将PDU放入可疑缓存。步骤313,检测可疑缓存是否已存满。在将参考PDU存入可疑缓存后,可以检测可疑缓存是否已存满。若是,即可疑缓存已存 满,则后续执行步骤314;若否,即可疑缓存未存满,则返回执行步骤301,继续接收rou。步骤314,检测可疑缓存中的可疑PDU是否满足第二预设条件。若可疑缓存已存满,则检测可疑缓存中的可疑PDU是否满足第二预设条件。其中,该第二预设条件是判定PDU是否发生突变的标准之一,用于判定可疑PDU的SN是否发生了突变。具体的,可以配铬该第二预设条件为可疑rou的SN大于任一参考rou的SN时。因此在检测可疑PDU发生突变与否时,检测可疑rou的SN是否大于任一参考rou的SN,若是,即可疑PDU的SN大于任一参考PDU的SN,则该可疑PDU满足第二预设条件;若否,即参考rou的SN均不小于可疑rou的SN,则该可疑pdu不满足第二预设条件。若是,即可疑缓存中的可疑PDU满足第二预设条件,则后续执行步骤315;若否,SP可疑缓存中的可疑PDU不满足第二预设条件,则后续执行步骤322。步骤315,丢弃该可疑H)U。当可疑缓存中的可疑PDU满足第二预设条件时,说明该可疑rou的SN发生了突变,因此可以丢弃该可疑rou。步骤316,检测可疑缓存中的参考PDU是否在接收窗外。对可疑缓存中的可疑pdu进行处理后,此时可疑缓存中仅剩参考rou。可以检测可疑缓存中的参考PDU是否在接收窗外。若是,即可疑缓存中的参考PDU在接收窗外,则后续执行步骤317;若否,即可疑缓存中的参考PDU在接收窗内,则后续执行步骤318。步骤317,将该参考PDU放入窗外缓存。若可疑缓存中的参考PDU在接收窗外,则将该参考PDU放入窗外缓存。步骤318,检测窗外缓存是否为空。若可疑缓存中的参考PDU在接收窗内,则检测窗外缓存是否为空。若是,即窗外缓存为空,则后续执行步骤320 ;若否,即窗外缓存不为空,则后续执行步骤319。步骤319,丢弃窗外缓存中的H)U。若可疑缓存中的参考PDU在接收窗内,且窗外缓存不为空,则可以丢弃窗外缓存中的rou。然后返回步骤301,继续接收rou
步骤320,检测该参考PDU是否满足第一预设条件。若可疑缓存中的参考PDU在接收窗内,且窗外缓存为空,则可以检测该参考PDU是否满足第一预设条件,即检测参考PDU是否可疑。若是,即该参考rou满足第一预设条件,则后续执行步骤321 ;若否,即该参考rou不满足第一预设条件,则后续执行步骤322。步骤321,将该参考PDU作为可疑H)U。若该参考PDU满足第一预设条件,则将该参考PDU作为可疑H)U,然后返回步骤301,继续接收rou。步骤322,对PDU进行第二递交处理。当窗外缓存和可疑缓存均为空,且该PDU在接收窗内时,若该PDU不满足第一预设条件,则说明该落在接收窗内的PDU不存在可疑,因此可以对PDU进行第二递交处理。若可疑缓存已存满,且可疑缓存中的可疑PDU不满足第二预设条件,则说明该可疑rou的SN未发生突变,因此可以将该可疑PDU进行第二递交处理。当可疑缓存中的参考PDU在接收窗内,且窗外缓存为空时,若参考PDU不满足第一预设条件,则说明参考PDU没有可疑,即参考rou的SN未发生突变,因此可以将该参考rou进行第二递交处理。可选的,对rou进行第二 递交处理,包括:根据PDU更新状态参数dirou进行解析并递交。本发明实施例中,第二递交处理可以理解为在HXP的DRB中一个PDU的递交处理方法,如根据该I3DU的SN更新状态参数中的RX_HFN,Last_Submitted_PDCP_RX_SN, Next_rocp_RX_SN等,之后按协议的规定去除该PDU的rocp头、然后进行解密、头解压缩等得到对应的SDU,并递交解出的SDU给上层。综上所述,本发明实施例中,可以在落在接收窗外的PDU满足标准时,对该PDU进行第一接收处理,防止由于重铬或切换而导致业务中断的现象。此外,还可以对落在接收窗内的PDU进行异常检测,从而检测出SN发生突变的rou,防止由于接收了 SN发生突变的rou而导致状态参数出现问题,使后续出现业务断流的问题。通过本发明实施例提供的方法,可以解决rou的接收过程中的各项问题,保证业务的正常执行。实施例四参照图4,给出了本发明实施例四提供的协议数据单元的检测装置流程图。相应的,本发明实施例还提供了一种PDU的检测装置,包括:接收模块41、窗外检测模块42、第一递交模块43。接收模块41,用于接收rou;窗外检测模块42,用于检测到PDU在接收窗外后,在窗外缓存为空且上次递交的PDU在接收窗外时,触发第一递交模块43 ;在窗外缓存不为空,或,窗外缓存为空且上次递交的PDU不在接收窗外时,将该PDU放入窗外缓存;第一递交模块43,用于在窗外缓存为空且上次递交的rou在接收窗外时,对rou进行第一递交处理;以及在窗外缓存存满时,对窗外缓存中的PDU进行第一递交处理。综上所述,本发明实施例对在接收窗外的PDU不会全部进行丢弃处理,而是进行一定的检测操作。具体的,当窗外缓存为空且上次递交的PDU在接收窗外,可以对该PDU进行第一递交处理;当窗外缓存不为空,或,窗外缓存为空且上次递交的PDU不在接收窗外,则将PDU放入窗外缓存。然后在窗外缓存存满时,对所述窗外缓存中的PDU进行第一递交处理。从而本发明实施例可以递交部分落在接收窗外的rou,防止出现业务中断的情况,保证业务的正常执行。实施例五参照图5,给出了本发明实施例五提供的协议数据单元的检测装置流程图。本发明实施例五还提供了一种rou的检测装置,包括:接收模块51,用于接收rou;窗外检测模块53,用于检测到该PDU在接收窗外后,在窗外缓存为空且上次递交的PDU在接收窗外时,触发第一递交模块53 ;在窗外缓存不为空,或,窗外缓存为空且上次递交的PDU不在接收窗外时,将PDU放入窗外缓存;第一递交模块54,用于在窗外缓存为空且上次递交的rou在接收窗外时,对rou进行第一递交处理;以及在窗外缓存存满时,对窗外缓存中的PDU进行第一递交处理。可选的,窗外检测模块53,还用于在PDU在接收窗内且窗外缓存为空时,触发异常检测模块55 ;在PDU在接收窗内且窗外缓存不为空时,丢弃窗外缓存中的rou,并触发异常检测模块。异常检测模块55,用于在PDU在接收窗内且窗外缓存为空时,对PDU进行异常检测。
可选的,还包括:可疑缓存检测模块52,用于检测可疑缓存是否为空,其中,可疑缓存用于存储由异常检测确定的可疑rou,以及参考rou ;在可疑缓存不为空时,将该pdu作为参考rou,并存入到可疑缓存中;在可疑缓存为空,触发窗外检测模块53以对该PDU是否在接收窗外进行检测。可选的,异常检测模块55,用于检测PDU是否满足第一预设条件;当PDU满足第一预设条件时,将PDU作为可疑rou,并存入到可疑缓存中;当PDU不满足第一预设条件时,触发第二递交模块56 ;第二递交模块56,用于在PDU不满足第一预设条件时,对PDU进行第二递交处理。可选的,还包括:异常处理模块57,用于检测可疑缓存是否已存满;在可疑缓存已存满时,检测可疑缓存中的可疑rou是否满足第二预设条件;在可疑rou满足第二预设条件时,丢弃该可疑rou ;在可疑PDU不满足第二预设条件时,触发第二递交模块56 ;第二递交模块56,还用于在可疑PDU不满足第二预设条件时,对该可疑PDU进行第二递交处理。可选的,异常处理模块57,还用于依次检测可疑缓存中的参考PDU是否在接收窗外;当参考PDU在接收窗外时,将该参考PDU放入窗外缓存中;当参考PDU在接收窗内时,丢弃窗外缓存中的rou,并触发异常检测模块55;异常检测模块55,还用于在参考PDU在接收窗内时,对参考PDU进行异常检测。可选的,第一递交模块54,用于根据状态参数和该PDU计算超帧号;在不更新状态参数的基础上,根据该超帧号对PDU进行解析并递交。可选的,第二递交模块56,用于根据该PDU更新状态参数;对PDU进行解析并递交。
综上所述,本发明实施例还可以对落在接收窗内的PDU进行异常检测,防止由于PDU的SN发生突变,导致出现有问题的状态参数进而影响业务的问题。其次,本发明实施例中,可以在落在接收窗外的PDU满足标准时,对该PDU进行第一接收处理,防止由于重铬或切换而导致业务中断的现象。此外,还可以对落在接收窗内的PDU进行异常检测,从而检测出SN发生突变的rou,防止由于接收了 SN发生突变的PDU而导致状态参数出现问题,使后续出现业务断流的问题。通过本发明实施例提供的方法,可以解决rou的接收过程中的各项问题,保证业务的正常执行。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操 作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。以上对本发明所提供的一种rou的检测方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种协议数据单元的检测方法,其特征在于,包括: 接收协议数据单元,并检测到所述协议数据单元在接收窗外; 若窗外缓存为空且上次递交的协议数据单元在接收窗外,则对所述协议数据单元进行第一递交处理,其中,所述窗外缓存用于存储在接收窗外的协议数据单元; 若所述窗外缓存不为空,或,所述窗外缓存为空且上次递交的协议数据单元不在接收窗外,则将所述协议数据单元放入所述窗外缓存; 当所述窗外缓存存满时,对所述窗外缓存中的协议数据单元进行第一递交处理。
2.根据权利要求1所述的方法,其特征在于,在检测之前,还包括: 检测可疑缓存是否为空,其中,所述可疑缓存用于存储由异常检测确定的可疑协议数据单元,以及参考协议数据单元; 若所述可疑缓存不为空,则将所述协议数据单元作为参考协议数据单元,并存入到可疑缓存中; 若所述可疑缓存为空,则对所述协议数据单元是否在接收窗外进行检测。
3.根据权利要求1或2任一所述的方法,其特征在于,接收协议数据单元之后,还包括: 若检测到所述协议数据单元在接收窗内且所述窗外缓存为空,则对所述协议数据单元进行异常检测; 若检测到所述协议数据单元在接收窗内且所述窗外缓存不为空,则丢弃所述窗外缓存中的协议数据单元,并对所述协议数据单元进行异常检测。
4.根据权利要求3所述的方法,其特征在于,所述对所述协议数据单元进行异常检测,包括: 检测所述协议数据单元是否满足第一预设条件; 若所述协议数据单元满足第一预设条件,则将所述协议数据单元作为可疑协议数据单元,并存入到可疑缓存中; 若所述协议数据单元不满足第一预设条件,则对所述协议数据单元进行第二递交处理。
5.根据权利要求2所述的方法,其特征在于,所述将所述协议数据单元作为参考协议数据单元之后,还包括: 检测所述可疑缓存是否已存满; 若所述可疑缓存已存满,则检测所述可疑缓存中的可疑协议数据单元是否满足第二预设条件; 若所述可疑协议数据单元满足第二预设条件,则丢弃所述可疑协议数据单元; 若所述可疑协议数据单元不满足第二预设条件,则对所述可疑协议数据单元进行第二递交处理。
6.根据权利要求5所述的方法,其特征在于,丢弃所述可疑协议数据单元之后,还包括: 依次检测所述可疑缓存中的参考协议数据单元是否在接收窗外; 若所述参考协议数据单元在接收窗外,则将所述参考协议数据单元放入窗外缓存中; 若所述参考协议数据单元在接收窗内,则丢弃所述窗外缓存中的协议数据单元,并对所述参考协议数据单元进行异常检测。
7.根据权利要求1所述的方法,其特征在于,所述对协议数据单元进行第一递交处理,包括: 根据状态参数和所述协议数据单元计算超帧号; 在不更新状态参数的基础上,根据所述超帧号对所述协议数据单元进行解析并递交。
8.根据权利要求4或5任一所述的方法,其特征在于,所述对协议数据单元进行第二递交处理,包括: 根据所述协议数据单元更新状态参数; 对协议数据单元进行解析并递交。
9.一种协议数据单元 的检测装置,其特征在于,包括: 接收模块,用于接收协议数据单元; 窗外检测模块,用于检测到所述协议数据单元在接收窗外后,当窗外缓存为空且上次递交的协议数据单元在接收窗外时,触发第一递交模块;在所述窗外缓存不为空,或,所述窗外缓存为空且上次递交的协议数据单元不在接收窗外时,将所述协议数据单元放入所述窗外缓存,其中,所述窗外缓存用于存储在接收窗外的协议数据单元; 第一递交模块,用于在所述窗外缓存为空且上次递交的协议数据单元在接收窗外时,对所述协议数据单元进行第一递交处理;以及在所述窗外缓存存满时,对所述窗外缓存中的协议数据单元进行第一递交处理。
10.根据权利要求9所述的装置,其特征在于,还包括: 可疑缓存检测模块,用于检测可疑缓存是否为空,其中,所述可疑缓存用于存储由异常检测确定的可疑协议数据单元,以及参考协议数据单元;在所述可疑缓存不为空时,将所述协议数据单元作为参考协议数据单元,并存入到可疑缓存中;在所述可疑缓存不空,触发窗外检测模块以对所述协议数据单元是否在接收窗外进行检测。
11.根据权利要求9或10任一所述的装置,其特征在于; 所述窗外检测模块,还用于在所述协议数据单元在接收窗内且窗外缓存为空时,触发异常检测模块;在所述协议数据单元在接收窗内且窗外缓存不为空时,丢弃所述窗外缓存中的协议数据单元,并触发异常检测模块。
异常检测模块,用于在所述协议数据单元在接收窗内且窗外缓存为空时,对所述协议数据单元进行异常检测。
12.根据权利要求11所述的装置,其特征在于; 所述异常检测模块,用于检测所述协议数据单元是否满足第一预设条件;当所述协议数据单元满足第一预设条件时,将所述协议数据单元作为可疑协议数据单元,并存入到可疑缓存中;当所述协议数据单元不满足第一预设条件时,触发第二递交模块; 第二递交模块,用于当所述协议数据单元不满足第一预设条件时,对所述协议数据单元进行第二递交处理。
13.根据权利要求10所述的装置,其特征在于,还包括: 异常处理模块,用于检测所述可疑缓存是否已存满;在所述可疑缓存已存满时,检测所述可疑缓存中的可疑协议数据单元是否满足第二预设条件;在所述可疑协议数据单元满足第二预设条件时,丢弃所述可疑协议数据单元;在所述可疑协议数据单元不满足第二预设条件时,触发第二递交模块; 所述第二递交模块,还用于在所述可疑协议数据单元不满足第二预设条件时,对所述可疑协议数据单元进行第二递交处理。
14.根据权利要求13所述的装置,其特征在于; 所述异常处理模块,还用于依次检测所述可疑缓存中的参考协议数据单元是否在接收窗外;当所述参考协议数据单元在接收窗外时,将所述参考协议数据单元放入窗外缓存中;当所述参考协议数据单元在接收窗内时,丢弃所述窗外缓存中的协议数据单元,并触发异常检测模块; 所述异常检测模块,还用于在所述参考协议数据单元在接收窗内时,对所述参考协议数据单元进行异常检测。
15.根据权利要求9所述的装置,其特征在于; 所述第一递交模块,用于根据状态参数和所述协议数据单元计算超帧号;在不更新状态参数的基础上,根据所述超帧号对所述协议数据单元进行解析并递交。
16.根据权利要求12或13任一所述的装置,其特征在于; 所述第二递交模块,用于根据所述协议数据单元更新状态参数;对协议数据单元进行解析并 递交。
全文摘要
本发明提供了一种协议数据单元的检测方法和装置,以解决由于重建或切换而导致业务中断的问题。所述的方法包括接收协议数据单元,并检测到所述协议数据单元在接收窗外;若窗外缓存为空且上次递交的协议数据单元在接收窗外,则对所述协议数据单元进行第一递交处理,其中,所述窗外缓存用于存储在接收窗外的协议数据单元;若所述窗外缓存不为空,或,所述窗外缓存为空且上次递交的协议数据单元不在接收窗外,则将所述协议数据单元放入所述窗外缓存;当所述窗外缓存存满时,对所述窗外缓存中的协议数据单元进行第一递交处理。
文档编号H04L1/00GK103227697SQ20131010004
公开日2013年7月31日 申请日期2013年3月26日 优先权日2013年3月26日
发明者王虎, 钟展辉, 王启君, 方晓波, 周光明 申请人:北京创毅视讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1