一种解析协议数据单元的装置及方法

文档序号:7717035阅读:119来源:国知局
专利名称:一种解析协议数据单元的装置及方法
技术领域
本发明涉及无线通信系统,尤其涉及一种解析协议数据单元的装置及方法。
背景技术
作为一种新兴的宽带无线接入技术,WiMAX(全球微波接入互通技术)近年来受到 了业界的普遍关注。它的主要技术特点是传输速率高、覆盖范围大、支持移动性、提供QoS 保证并采用基于全IP的网络架构,实现了数据分组化、接入宽带化和终端移动化三者合 一,具有广泛的应用前景。 IEEE802. 16是一个支持高速无线接入的空中接口协议,定义了 WiMAX系统的物理 层和媒体接入控制(MAC)层规范。在WiMAX系统中的,数据是放在上下行子中帧进行发送 的,帧中的数据是以Burst(数据突发)为单位传输的,Burst是一起进行调整编码的数据 块单位。Burst的大小是动态改变的,在一个上行子帧中非HARQ的模式下每个MS只能有 一个Burst,也就是说一个MS的多个连接的PDU会放在一个Burst中发送。而在下行子帧 中,为了减少开销,通常会把调制编码方式与Boosting以及重复次数相同的不同MS的PDU 放在一个Burst进行发送,不管对于上行还是下行一个Burst会包含不同性质的PDU,所以 对于在Burst中解出PDU的算法有较高的要求。由于Burst只是一个编码块,不带其他额 外的信息,解Burst的时候,从第一个PDU开始解,只有正确解出前一个PDU的长度信息才 有可能正确解出后一个PDU,也就是在同一个Burst中,假如出错是在前面的PDU中,即使后 面的PDU全部正确,也有可能解不出来,只能丢弃。 IEEE802. 16定义的MAC PDU格式见图1,由MAC Header, Payload和CRC(Cyclic Redundancy Check,循环冗余校验)组成,CRC用于接收端校验所收到的数据是否正确,编 码简单且误判概率很低,在通信系统中得到了广泛的应用。MAC PDU可以没有Payload和 CRC,Payload的长度不固定,长度由MAC Header的长度域进行指示,CRC长度为4个Byte。 MAC Header的格式请见图2,MAC Header里面可以带多个子头,所以是不定长,最小长度是 6个Byte,其中长度域占ll个Bit,HCS(Header Check Sequence,头校验序列)占8个Bit, 其实就是8位的CRC校验和,用于对PDU MACHeader的正确性进行校验。PDU是否有CRC是 由在连接建立的时候由BS和MS进行协商的,而管理连接是必需带CRC的。如果连接协商 的结果是需要带CRC,那么这个连接的所有PDU都需要带CRC,如果协商的结果是不带CRC, 那么此连接上的PDU都不会带CRC。由于PDU CRC长度为4个Byte,对于小包来说开销较 大,对于误包要求不高的业务如语音和视频等,可以不需要带CRC。 一个PDU是否带HCS由 其中的CI域进行指示。 对于有CRC的PDU来说,CRC是对整个MAC PDU进行校验,包括MAC Header,而HCS 只是对MAC Header进行校验,而且CRC校验是32个Bit, HCS只有8个Bit, CRC比HCS有 更低的误判率。所以,假如HCS校验不过,CRC校验肯定不过,假如CRC不过,HCS有可能通 过,因为出现误码的有可能是payload或是CRC部分。 现有的在Burst中解PDU的算法, 一般都是从Burst的前面开始, 一个PDU —个PDU的解,先解出PDU的MAC Header,然后进行HCS校验,HCS校验通过后再对后面的数据 进行处理,如果HCS校验不过就会将此Burst后面的数据丢弃。按此算法,一个Burst中, 只要中间有一个PDU出错,此Burst后面的所有PDU都要丢弃,空口带宽对于无线通信系统 是珍贵的资源,假如已传输的正确数据没有被解出,其实就是浪费空口带宽。

发明内容
本发明要解决的技术问题是提供一种解析PDU的装置及方法,可实现当Burst中
的PDU解析错误时尽可能地正确解析出该Burst中后续的PDU,减少丢包率。 为了解决上述问题,本发明提供了一种解析协议数据单元的方法,包括协议数据
单元(PDU)解析装置对数据突发的PDU进行解析时,若连续两个PDU的头校验序列(HCS)
校验均错误,则采用HCS识别来识别出所述数据突发中后续可用数据。 进一步地,所述采用HCS识别来识别出后续数据突发中的可用数据是指, 若对所述数据突发的第N个及第N+l个PDU进行HCS校验时均出错,将所述第N
个PDU的MAC Header的下一个字节的地址记为N,将所述数据突发的末地址记为M,对地址
N至地址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验成功则该部分
HCS校验成功的数据可用,若HCS校验完毕后均错误则所述数据突发的后续数据没有可用
数据; 所述6《n《M-N。 进一步地,所述采用HCS识别来识别出后续数据突发中的可用数据是指, 若所述数据突发的第N个及第N+l个PDU均解析出错,则从第N+2个PDU开始对
剩余的各PDU均进行HCS校验,若第N+i个PDU进行HCS校验成功,则所述第N+i个PDU为
可用数据,若剩余的各PDU均校验错误则所述数据突发的后续数据没有可用数据; 对剩余的各PDU进行HCS校验时,各PDU的首地址根据前一个PDU的长度字段获知。 进一步地,当识别出所述数据突发的后续数据中存在可用数据时,对该可用数据 作为当前PDU的MAC Header进行解析处理。 进一步地,所述方法适用于全球微波接入互通技术系统。 本发明还提供一种解析协议数据单元的装置,包括协议数据单元(PDU)解析模 块、缓存模块; 所述缓存模块,用于存储接收的数据突发的数据; 所述PDU解析模块,用于从所述缓存模块读取PDU,并对所述PDU进行解析处理,还 用于当连续两个PDU的头校验序列(HCS)校验均错误时,识别出所述数据突发中后续可用 数据。 进一步地,所述PDU解析模块识别出所述数据突发中后续可用数据是指,
若对所述数据突发的第N个及第N+l个PDU进行HCS校验时均出错,将所述第N 个PDU的MAC Header的下一个字节的地址记为N,将所述数据突发的末地址记为M,PDU解 析模块对地址N至地址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验 成功则该部分HCS校验成功的数据可用,若HCS校验完毕后均错误则所述数据突发的后续 数据没有可用数据;
5
所述6《n《M-N。 进一步地,所述PDU解析模块识别出所述数据突发中后续可用数据是指,
若所述数据突发的第N个及第N+l个PDU均解析出错,PDU解析模块从第N+2个 PDU开始对剩余的各PDU进行HCS校验,若对第N+i个PDU的HCS校验成功,则所述第N+i个 PDU为可用数据,若剩余的各PDU均校验错误则所述数据突发的后续数据没有可用数据;
对剩余的各PDU进行HCS校验时,PDU解析模块是根据前一个PDU的长度字段获 知下一个PDU的首地址。 进一步地,所述PDU解析模块还用于识别出所述数据突发中的可用数据后,对该
可用数据作为当前PDU的MAC Header进行解析处理。 进一步地,所述装置适用于全球微波接入互通技术系统。 综上所述,本发明提出一种解析PDU的装置及方法,可以减少处理复杂度并通过 HCS纠错,降低由于误码而产生的丢包,而且当一个Burst中前面的PDU有错误后面正确的 PDU会被正确解出,减少丢包率。本发明尤其适用于Wimax宽带无线接入系统。


图1是MAC PDU格式; 图2是一般MAC Header格式; 图3是本发明装置的结构示意图; 图4是本发明处理带CRC的PDU的流程图; 图5是本发明处理不带CRC的PDU的流程图; 图6是本发明所提出的HCS匹配法的具体实施的流程图; 图7是本发明所提出的HCS尝试法的具体实施的流程图。
具体实施例方式
下面结合附图对本发明用于WiMAX系统中解PDU的装置进行说明。 本实施例提供一种解析PDU的装置,如图3所示,包括无线接收模块、PDU解析模
块、缓存模块、纠错模块及PDU接收统计模块; 无线接收模块,用于从空口接收数据帧,并将接收的数据帧发送至缓存模块;
在Wimax系统中,对于MS就是下行子帧,对于BS就是上行子帧;
缓存模块,用于存储从空口接收到的Burst数据; PDU解析模块,用于从缓存模块读取PDU,并对PDU进行解析处理,还用于当连续两 个PDU的HCS校验均错误时,识别出该Burst中后续可用数据。 PDU解析模块可以但不限于采用以下两种方式对Burst中后续数据进行识别
(1)若对Burst的第N个及第N+l个PDU进行HCS校验时均出错,将第N个PDU的 MAC Header的下一个字节的地址记为N,将该Burst的末地址记为M, PDU解析模块对地址 N至地址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验成功则该部分 HCS校验成功的数据可用,若HCS校验完毕后均错误则该Burst的后续数据没有可用数据;
所述6《n《M-N。 (2)若Burst的第N个及第N+l个PDU均解析出错,PDU解析模块从第N+2个PDU
6开始对剩余的各PDU进行HCS校验,若对第N+i个PDU的HCS校验成功,则该第N+i个PDU 为可用数据,若剩余的各PDU均校验错误则该Burst的后续数据没有可用数据;
对剩余的各PDU进行HCS校验时,PDU解析模块是根据前一个PDU的长度字段获 知下一个PDU的首地址。 PDU解析模块还用于当对某个PDU进行HCS校验错误时通知HCS纠错模块对该PDU MAC Header进行纠错处理,以及接收纠错结果,当纠错成功时PDU解析模块对该Burst的后 续PDU进行解析处理,若连续两个PDU的HCS校验错误且纠错不成功则PDU解析模块对后 续数据进行HCS识别。 PDU解析模块还用于识别出Burst中的可用数据后,对该可用数据作为当前PDU的 MAC Header进行解析处理。 PDU解析模块还用于当正确解出PDU时通知PDU接收统计模块,以及当CRC校验错 误、HCS校验错误时通知PDU接收统计模块。 此处对PDU进行解析处理包括对PDU进行CRC校验、HCS校验及解PDU的操作;
HCS纠错模块,用于当PDU解析模块对PDU进行HCS校验错误时对该PDU MAC Header进行纠错,并将纠错结果发送至PDU解析模块; HCS校验不过时,对PDU MAC Header进行纠错,只能纠正某些情况的错误;
PDU接收统计模块,用于统计出Burst中正确解出的PDU数目,CRC校验错误的PDU 数目,HCS校验错误的PDU数目。 本实施例提供一种解析PDU的方法,从Burst中解析PDU时会有三种情况
(a)第N个PDU的MAC Header被正确解出,可以根据第N个PDU的Length域,解 出第N+l个PDU ; (b)第N个PDU的MAC Header有误,即HCS校验不过(HCS纠错之后还是有错), 但是Length域还是有效,可以通过Length域找出下一个PDU的正确的位置,这个是通过第 N+l个PDU的MAC Header的HCS校验来验证,如果第N+l个PDU的MAC Header可以通过 HCS校验,就说明第N个PDU的Length是有效的,后续的处理同情况(a);
(c)这种情况与情况(b)相对,就是第N个PDU的MAC Header有误,即HCS校验 不过(HCS纠错之后还是有错),且第N个PDU的Length域是无效的。为了寻找后续的可 用数据,可以通过HCS校验和的特征来寻找,针对情况(c),下面的实施例介绍了两种方法 HCS匹配法和HCS尝试法。 本发明用于Wimax系统中解PDU方法的具体实施步骤如下
以下是对带CRC的PDU的处理,如图4所示 步骤101 :从空口接收数据帧,并保存数据帧中的Burst。以下为引用1。 步骤102 :检查Burst中的当前PDU是否有CRC,当前PDU即当前正在处理的PDU,
是则转入步骤103,否则转入引用2。 步骤103 :对当前PDU进行CRC校验。 步骤104 :判断CRC校验是否通过,是则转入步骤105,否则转入步骤106。
步骤105 :解当前PDU,并转入步骤109。
步骤106 :对当前PDU进行HCS校验。 步骤107 :判断HCS校验是否通过,是则转入步骤108,否则转入步骤110。
步骤108 :解当前PDU MAC Header,之后转入步骤109 ; 步骤109 :判断是否还有下一个PDU,是则转入下一个PDU,并执行步骤102,否则转 入步骤114。 步骤110 :对当前PDU MAC Header进行纠错,之后转入步骤111。 步骤111 :判断纠错是否成功,是则转入步骤112,否则转入步骤113 ; 步骤112 :对纠错后的当前PDU进行CRC校验,之后转入步骤104 ; 步骤113 :判断是否连续两次HCS校验错误,是则转入引用3采用HCS识别方法来
识别该Burst后续数据中的可用数据,否则转入步骤109 ; 步骤114 :判断是否还有下一个Burst,是则转入引用l,否则转入步骤115。
步骤115 :统计本帧处理的PDU,流程结束。
以下是不带CRC PDU的处理,如图5所示 从引用2进入以下流程,以下流程都是由解PDU模块103实施。
步骤201 :对当前PDU进行HCS校验。 步骤202 :判断HCS校验是否通过,是则转入步骤203,否则转入步骤204。
步骤203 :解当前PDU,并转入步骤206。
步骤204 :对当前PDU MAC Header进行纠错。 步骤205 :判断纠错是否成功,是则转入步骤203,否则转入步骤209 ; 步骤206 :判断是否还有下一个PDU,是则转入下一个PDU,并返回引用l,否则转入
步骤207。 步骤207 :判断是否还有下一个Burst,是则转入引用1,否则转入步骤208。
步骤208 :统计本帧处理的PDU,流程结束。 步骤209 :判断是否连续两次HCS校验错误,是则转入引用3采用HCS识别方法来
识别该Burst后续数据中的可用数据,否则转入步骤206 ; 以下介绍两种HCS识别方法来识别该Burst后续数据中的可用数据; (l)HCS匹配法由于HCS是PDU MAC Header的原始数据通过某种算法,得到一个
新的数据,而这个新的数据与原数据有着固有的内在关系。通过把原数据和新数据组合在
一起,形成新的数据,因此这个新数据具有自我校验的能力,而且这个新数据如果得到正确
传送,在接收端计算得到校验和是零。根据此特点,可以在第三种情况的时候找出有效的
PDU MACHeader数据,就是进行HCS匹配,对6个Byte或以上的数据进行HCS校验和运算,
假如校验通过就说明这些数据有可能是一个正确的PDU MACHeader。 HCS匹配法是指,若对Burst的第N个及第N+l个PDU进行HCS校验时均出错,将 第N个PDU的MAC Header的下一个字节的地址记为N,将该Burst的末地址记为M,对地址 N至地址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验成功则对该部 分HCS校验成功的数据可用,若HCS校验完毕后均错误则该Burst的后续数据没有可用数 据;所述6《n《M-N。
其具体实施步骤如图6所示 从引用3进入后采用HCS匹配法的流程如下所述; 步骤301 :将连续两次HCS校验错误的PDU记为PDU N及PDU N+l ,将第N个PDU 的MAC Header的下一个字节作为进行HCS识别的数据的首地址。
步骤302 :将首地址加6个字节(MAC Header的最小长度)作为进行HCS校验的 数据的末地址。 步骤303 :判断进行HCS校验的数据的末地址是否大于Burst的末地址,是则转入 步骤307,否则转入步骤304。 步骤304 :对首地址和末地址之间的数据做HCS校验。
步骤305 :判断HCS校验是否有误,是则转入步骤306,否则转入步骤309 ;
步骤306 :将做HCS校验的数据的末地址加1,然后转入步骤303。
步骤307 :将做HCS校验的数据的首地址加1 。 步骤308 :首地址是否大于Burst的末地址减6,是则退出,否则转入步骤302。
步骤309 :将首地址和末地址之间的有效数据作为当前PDU的MACHeader,之后转 入引用1。 (2)HCS尝试法HCS匹配法可以找到所有正确PDU MAC Header,但是当错误PDU 较长时,通过HCS匹配法查找此错误PDU后的剩余Burst中的有效PDU MAC Header的HCS 校验和运算次数可能会很多。由于PDUMAC Header的最小长度为6Byte, Length域的长度 为libit,也就说HCS错误时,Length错误概率最大为23%,也就是说Length域只是有可 能错,按照此Length域往下解PDU还是有可能解出正确的PDU MAC Header, HCS尝试法就 是按此思路查找正确的PDU MAC Header,此算法虽然不一定能找到所有的正确的PDU MAC Header,但是复杂度大大降低。HCS尝试法是指,若Burst的第N个及第N+l个PDU均解析出错,则从第N+2个PDU 开始对剩余的各PDU均进行HCS校验,若第N+i个PDU进行HCS校验成功,则该第N+i个 PDU为可用数据,若剩余的各PDU均校验错误则该Burst的后续数据没有可用数据;对剩余 的各PDU进行HCS校验时,各PDU的首地址根据前一个PDU的长度字段获知。
其具体实施步骤如图7所示 从引用3进入后采用HCS尝试法的流程如下所述;
将连续两次HCS校验错误的PDU记为PDU N及PDU N+l ; 步骤401 :取第N+l个PDU的MAC Header的length域计算出下一个PDU的首地 址,即第N+2个PDU的首地址。 步骤402 :判断PDU N+2的首地址是否大于Burst的末地址,是则退出,否则转入 步骤403。 步骤403 :对PDU N+2进行HCS校验。 步骤404 :判断HCS校验是否有误,是则转入步骤405,否则转入步骤406 ;
步骤405 :N值加1,之后转入步骤401 ; 步骤406 :将首地址和末地址之间的有效数据作为当前PDU的MACHeader,之后转 入引用1。
9
权利要求
一种解析协议数据单元的方法,包括协议数据单元(PDU)解析装置对数据突发的PDU进行解析时,若连续两个PDU的头校验序列(HCS)校验均错误,则采用HCS识别来识别出所述数据突发中后续可用数据。
2. 如权利要求1所述的方法,其特征在于所述采用HCS识别来识别出后续数据突发中的可用数据是指,若对所述数据突发的第N个及第N+l个PDU进行HCS校验时均出错,将所述第N个PDU 的MAC Header的下一个字节的地址记为N,将所述数据突发的末地址记为M,对地址N至地 址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验成功则该部分HCS校 验成功的数据可用,若HCS校验完毕后均错误则所述数据突发的后续数据没有可用数据;所述6《n《M-N。
3. 如权利要求l所述的方法,其特征在于所述采用HCS识别来识别出后续数据突发中的可用数据是指,若所述数据突发的第N个及第N+l个PDU均解析出错,则从第N+2个PDU开始对剩余 的各PDU均进行HCS校验,若第N+i个PDU进行HCS校验成功,则所述第N+i个PDU为可用 数据,若剩余的各PDU均校验错误则所述数据突发的后续数据没有可用数据;对剩余的各PDU进行HCS校验时,各PDU的首地址根据前一个PDU的长度字段获知。
4. 如权利要求2或3所述的方法,其特征在于当识别出所述数据突发的后续数据中存在可用数据时,对该可用数据作为当前PDU的 MAC Header进行解析处理。
5. 如权利要求1所述的方法,其特征在于 所述方法适用于全球微波接入互通技术系统。
6. —种解析协议数据单元的装置,包括协议数据单元(PDU)解析模块、缓存模块;其特 征在于所述缓存模块,用于存储接收的数据突发的数据;所述PDU解析模块,用于从所述缓存模块读取PDU,并对所述PDU进行解析处理,还用于 当连续两个PDU的头校验序列(HCS)校验均错误时,识别出所述数据突发中后续可用数据。
7. 如权利要求6所述的装置,其特征在于所述PDU解析模块识别出所述数据突发中后续可用数据是指,若对所述数据突发的第N个及第N+l个PDU进行HCS校验时均出错,将所述第N个PDU 的MAC Header的下一个字节的地址记为N,将所述数据突发的末地址记为M,PDU解析模块 对地址N至地址M之间的所有长度为n的数据依次进行HCS校验;若出现HCS校验成功则 该部分HCS校验成功的数据可用,若HCS校验完毕后均错误则所述数据突发的后续数据没 有可用数据;所述6《n《M-N。
8. 如权利要求6所述的装置,其特征在于所述PDU解析模块识别出所述数据突发中后续可用数据是指,若所述数据突发的第N个及第N+l个PDU均解析出错,PDU解析模块从第N+2个PDU开 始对剩余的各PDU进行HCS校验,若对第N+i个PDU的HCS校验成功,则所述第N+i个PDU 为可用数据,若剩余的各PDU均校验错误则所述数据突发的后续数据没有可用数据;对剩余的各PDU进行HCS校验时,PDU解析模块是根据前一个PDU的长度字段获知下 一个PDU的首地址。
9. 如权利要求7或8所述的装置,其特征在于所述PDU解析模块还用于识别出所述数据突发中的可用数据后,对该可用数据作为当 前PDU的MAC Header进行解析处理。
10. 如权利要求7所述的装置,其特征在于 所述装置适用于全球微波接入互通技术系统。
全文摘要
本发明提供了一种解析协议数据单元的装置及方法,该方法包括协议数据单元(PDU)解析装置对数据突发的PDU进行解析时,若连续两个PDU的头校验序列(HCS)校验均错误,则采用HCS识别来识别出所述数据突发中后续可用数据。采用本发明的技术方案,可实现当数据突发中的PDU解析错误时尽可能地正确解析出该数据突发中后续的PDU,减少丢包率。
文档编号H04W28/04GK101742557SQ20091020592
公开日2010年6月16日 申请日期2009年10月30日 优先权日2009年10月30日
发明者陈嘉明 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1