1.一种am模式下的rlc实体的接收侧,其特征是,包括rlc控制单元、路由单元、接收窗单元、重排序单元、滑动窗判决单元、sdu重组单元;
所述rlc控制单元用来从路由单元接收rlc控制pdu,还用来从滑动窗判决单元接收更新后的接收窗信息,并作为上报rlc控制包的依据;
所述路由单元用来从底层接收数据pdu并传输给接收窗单元,还用来从底层接收rlc控制pdu并传输给rlc控制单元;
所述接收窗单元用来将路由单元传来的数据pdu与接收窗进行判断;所述接收窗的长度固定,其下沿为变量vr(r),其上沿为变量vr(mr);其中,vr(r)表示接收侧已连续接收到pdu的最大的接收序列号紧挨着的下一个接收序列号;vr(mr)为vr(r)与接收窗的固定长度之和;如果收到的pdu的接收序列号位于接收窗之外,将该pdu丢弃;如果收到的pdu的接收序列号位于接收窗之内,则缓存该pdu并提交给重排序单元;
所述重排序单元用来将接收窗单元缓存的数据pdu按照接收序列号的升序进行排列;
所述滑动窗判决单元用来对排序后的数据pdu进行组包,并将解析出的数据sdu或数据sdu的分段交给上层,丢弃所有无法解析的sdu或sdu分段;
所述滑动窗判决单元还用来在vr(r)=vr(h)时正常更新接收窗;这是指当从vr(r)开始连续地收到k个数据pdu时,则使接收窗的下沿vr(r)和上沿vr(mr)同步地向上增大k值;其中,vr(h)表示接收侧已接收到pdu的最大的接收序列号紧挨着的下一个接收序列号;
所述滑动窗判决单元还用来在vr(r)≠vr(h)、且vr(h)-vr(r)≥a时计算当前丢包率vr(lr);如果vr(lr)<丢包率阈值,则强制更新接收窗;这是指将新的vr(r)设定为现有的vr(h),同步调整vr(mr),这使接收窗的下沿和上沿同步地向上增大vr(h)-vr(r)值;其中,vr(lr)表示接收侧的当前丢包率,计算公式如下:
所述滑动窗判决单元还用来将更新后的接收窗信息通知rlc控制单元;
所述sdu重组单元将分段的数据sdu重新组合成一个完整的数据sdu。
2.根据权利要求1所述的am模式下的rlc实体的接收侧,其特征是,所述接收窗单元收到的pdu如果出现漏包,那么滑动窗判决单元将从数据pdu中解析出数据sdu或者数据sdu的分段,并将能够从数据pdu中解析出的数据sdu或数据sdu的分段交给sdu重组单元;当符合强制更新接收窗的条件时,滑动窗判决单元强制更新接收窗;此后,如果接收窗单元又收到之前漏掉的数据pdu,则丢弃该pdu。
3.根据权利要求1所述的am模式下的rlc实体的接收侧,其特征是,所述常量a设为200到300之间;常量a的取值越小,则接收窗所占用的内存资源就越小。
4.根据权利要求1所述的am模式下的rlc实体的接收侧,其特征是,vr(h)-vr(r)≥a改为vr(h)-vr(r)≤a。
5.根据权利要求1所述的am模式下的rlc实体的接收侧,其特征是,所述丢包率阈值设置为大于0且小于或等于5%。
6.一种am模式下的rlc实体接收数据的方法,其特征是,包括如下步骤:
步骤s210:从底层接收数据pdu;
步骤s220:将收到的数据pdu与接收窗进行判断;如果收到的pdu的接收序列号位于接收窗之内,则缓存该pdu;如果收到的pdu的接收序列号位于接收窗之外,将该pdu丢弃;
步骤s230:将缓存的数据pdu按照接收序列号的升序排列;
步骤s240:判断vr(r)是否等于vr(h)?如果是,则进入步骤s290;否则进入步骤s250;
步骤s250:判断vr(h)-vr(r)是否大于或等于常量a?如果是,进入步骤s260;否则退出流程,本次接收结束;
步骤s260:根据vr(r)和vr(h)计算当前丢包率vr(lr);
步骤s270:判断vr(lr)是否大于或等于丢包率阈值?如果是,则退出流程,本次接收结束;否则进入步骤s280;
步骤s280:对vr(r)到vr(h)之间收到的数据pdu进行组包,并将解析出的数据sdu或数据sdu的分段交给上层,丢弃所有无法解析的sdu或sdu分段;同时强制更新接收窗,即将新的vr(r)设定为现有的vr(h),同步调整vr(mr),这使接收窗的下沿和上沿同步地向上增大vr(h)-vr(r)值;随后进入步骤s295;
步骤s290:对收到的数据pdu进行组包,并将解析出的数据sdu或数据sdu的分段交给上层,丢弃所有无法解析的sdu或sdu分段;同时正常更新接收窗,即如果从vr(r)开始连续地收到k个数据pdu,则使接收窗的下沿vr(r)和上沿vr(mr)同步地向上增大k值;
步骤s295:将分段的数据sdu重新组合成一个完整的数据sdu。
7.根据权利要求6所述的am模式下的rlc实体接收数据的方法,其特征是,所述步骤s230中,如果发现缓存的数据pdu存在漏包,则启动重排序定时器等待;如果超时还没收到,就发送状态包请求发送端重传。
8.根据权利要求7所述的am模式下的rlc实体接收数据的方法,其特征是,如果在步骤s230中启动了重排序定时器,则在步骤s280中关闭重排序定时器。
9.根据权利要求6所述的am模式下的rlc实体接收数据的方法,其特征是,所述步骤s250中,“vr(h)-vr(r)是否大于或等于常量a”改为“vr(h)-vr(r)是否小于或等于常量a”。
10.根据权利要求6所述的am模式下的rlc实体接收数据的方法,其特征是,所述步骤s210由am模式下的rlc实体中的路由单元实现;
所述步骤s220由am模式下的rlc实体中的接收窗单元实现;
所述步骤s230由am模式下的rlc实体中的重排序单元实现;
所述步骤s240至步骤s290由am模式下的rlc实体中的滑动窗判决单元实现;
所述步骤s295由am模式下的rlc实体中的sdu重组单元实现。