一种处理数据的方法及发送端的制作方法

文档序号:7951602阅读:155来源:国知局
专利名称:一种处理数据的方法及发送端的制作方法
技术领域
本发明涉及无线通信领域,特别是涉及一种处理数据的方法及发送端。
背景技术
WCDMA的RAN侧存在无线链路控制RLC协议层,其中有一种确认传输模式可提供一定的重传功能。主要原理如下1、发送端为发送的数据包进行编号,同时在发送时按照一定的规则(如周期触发或每发送N个数据触发等)向接收端发送轮询请求。
2、接收端在接收到发送端发来的数据时,一方面判断数据接收的正确性(通过数据的CRC校验结果来获得);另外一方面检测是否有发送端的轮询请求到达,如果是,则接收端向发送端发送数据接收状态(如在接收状态中指明接收窗中的数据哪些已经正确接收,哪些没有正确接收)。
3、发送端在收到所述接收状态后,对接收端没有正确接收的数据进行重传。
按照当前的协议规定,当发送端的发送窗变化时(可能由信道带宽或功率资源的变化所引起),发送端对发送窗之外的数据进行丢弃,同时发送端向接收端发送窗变化通知消息,以使接收端相应的变化接收窗,并对接收窗之外的数据进行丢弃。为了描述方便提供表一


表一注1上述名称后带1的表示窗滑动后的数据包编号,如VT(A)1,表示发送窗滑动后待确认的数据包编号。
基于上述表一,参见图1所示,当前数据已经发送到VT(S);参见图2所示,当前接收端接收的数据包与VT(S)相对应,为VR(S)。
但此时由于信道带宽或功率资源的变化,导致发送窗降低,即最大允许发送的数据包编号由VT(MS)变为VT’(MS)。按照现有协议规定,从VT’(MS)到VT(S)的数据将被丢弃(图1中灰色部分),那么将从VT’(S)继续发送数据(此时VT’(S)等于VT’(MS)),即VT’(MS)到VT(S)的数据将被重新发送。
同时,发送端向接收端发送发送窗降低通知消息,接收端收到所述窗降低通知消息后,会相应的变化接收窗,将最大允许接收的数据包编号由VR(MS)变为VR’(MS)。按照现有协议规定,从VR’(MS)到VR(S)的数据将被丢弃(图2中灰色部分)。对应发送端,接收端将从VR’(S)继续发送数据(此时VR’(S)等于VR’(MS)),VR’(MS)到VR(S)的数据将被重新接收。
之后,按照现有协议规定,发送窗会向VT’(MS)方向滑动,以使当前的发送窗中出现新的允许发送的数据包。参见图3所示,VT(A)向右滑动N个单位,变为VT(A)1;VT’(MS)向右滑动N个单位,变为VT’(MS)1。发送端从VT’(S)继续发送N个数据包。
接收端也相应的滑动接收窗,重新接收从VR’(S)开始的N个数据包。
重复上述流程,完成所有数据的发送和接收。
显然按照现有的协议,在降低发送窗后,可能会造成已发数据重传,进而浪费了网络资源,以及发送端和接收端的系统资源。

发明内容
本发明提供一种处理数据的方法及发送端,用以解决基于目前的无线链路控制RLC协议,在降低发送窗后可能会造成已发数据重传的问题。
本发明方法应用于降低无线链路控制RLC协议发送窗的情况,包括下列步骤A、在降低发送窗后,使得当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,发送端及接收端均保留VT’(MS)至VT(S)的数据;B、所述发送窗滑动,使得允许发送新数据包时,发送端主动获取所述新数据包的接收状态;C、发送端根据所述接收状态,向接收端重传数据。
所述步骤A中,在降低发送窗后,发送端不向接收端发送发送窗降低通知消息。
步骤B中所述发送端主动获取新数据包的接收状态,包括下列步骤B1、发送端判断本端缓存中是否存在所述新数据包的接收状态,若存在,则从本端直接获取,并转入步骤C;否则,转入步骤B2;B2、发送端主动向接收端发送轮询请求,以获取所述新数据包的接收状态。
随着所述发送窗的滑动,使得最大允许发送的数据包编号大于等于VT(S)后,发送端直接向接收端发送待发送数据包。
本发明的发送端,包括数据发送单元,用于按照无线链路控制RLC协议,将发送窗中的数据包逐一向接收端发送;轮询请求发送单元,用于向接收端发送轮询请求,以获知接收端的数据接收状态;
重传单元,用于根据所述接收状态,向接收端重传数据;比较单元,用于在降低发送窗后,比较出当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,使发送端及接收端均保留VT’(MS)至VT(S)的数据;获取单元,用于在所述比较单元比较出VT’(MS)小于VT(S)后,主动获取允许发送的新数据包的接收状态。
所述获取单元判断本端缓存中是否存在允许发送的新数据包的接收状态,若存在,则从本端直接获取;否则,触发所述轮询请求发送单元。
所述比较单元还用于实时比较最大允许发送的数据包编号与VT(S)的大小,当最大允许发送的数据包编号大于等于VT(S)后,使发送端直接向接收端发送待发送数据包。
本发明有益效果如下本发明方法应用于降低无线链路控制RLC协议发送窗的情况。当信道带宽或功率资源发生变化,引起发送窗降低,并且当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,发送端及接收端均不删除VT’(MS)至VT(S)的数据。即发送端继续保留在缓存中的VT’(MS)至VT(S)的数据,并且发送端不向接收端发送发送窗降低通知消息,所以接收端不会知道发送端的发送窗的变化,进而不会改变当前的接收窗,也就不会删除VR’(MS)至VR(S)的数据。
之后,按照现有协议发送窗会滑动,以使当前发送窗中出现新的允许发送的数据包,继续发送数据。当发送窗滑动,使得允许发送新数据包时,发送端先不发送数据,而是主动判断本端缓存中是否存在所述新数据包的接收状态,若存在,则根据所述接收状态,向接收端重传数据(即只重传接收状态中指明接收端没有正确接收到的数据包);否则,发送端主动向接收端发送轮询请求,以获取所述新数据包的接收状态,再根据所述接收状态,向接收端重传数据。
随着所述发送窗的滑动,使得最大允许发送的数据包编号大于等于VT(S)后,发送端直接向接收端发送待发送数据包(即发送窗已滑动过被影响的数据区域)。
为了支撑本发明方法,本发明还提供了一种发送端。
通过本发明的实施,发送窗降低所影响到的已正确发送和接收的数据不会再次重发,进而节约了网络资源,以及发送端和接收端的系统资源。


图1为发送窗降低后的示意图;图2为接收窗降低后的示意图;图3为发送窗滑动后的示意图;图4为本发明发送端的结构示意图;图5为本发明方法步骤流程图;图6为本发明方法中的接收窗示意图。
具体实施例方式
基于目前的RLC协议,为了在降低发送窗后,避免已发数据重传,进而节约了网络资源,以及发送端和接收端的系统资源,本发明提供了一种发送端。参见图4所示,其包括环形相连的数据发送单元、轮询请求发送单元、重传单元、获取单元和比较单元;所述获取单元还与轮询请求发送单元相连。
所述数据发送单元,用于按照无线链路控制RLC协议,将发送窗中的数据包逐一向接收端发送。
所述轮询请求发送单元,用于向接收端发送轮询请求,以获知接收端的数据接收状态。
所述重传单元,用于根据所述接收状态,向接收端重传数据。
所述比较单元,用于在降低发送窗后,比较出当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,使发送端及接收端均不删除VT’(MS)至VT(S)的数据。进一步,所述比较单元还用于实时比较最大允许发送的数据包编号与VT(S)的大小,当最大允许发送的数据包编号大于等于VT(S)后,使发送端直接向接收端发送待发送数据包。
所述获取单元,用于在所述比较单元比较出VT’(MS)小于VT(S)后,主动获取允许发送的新数据包的接收状态。即所述获取单元判断本端缓存中是否存在允许发送的新数据包的接收状态,若存在,则从本端直接获取,并触发所述重传单元,完成重传工作;否则,触发所述轮询请求发送单元,使其发出轮询请求,以获取允许发送的新数据包的接收状态,之后触发所述重传单元,完成重传工作。
应用上述发送端,本发明提供了一种处理数据的方法,应用于降低RLC协议发送窗的情况,参见图5所示,包括下列步骤S1、降低发送窗且当前最大允许发送的数据包编号小于实际待发送的数据包编号。
S2、发送端及接收端均不删除被影响的数据。
S3、发送窗滑动,使得允许发送新的数据包。
S4、发送端主动获取所述新数据包的接收状态。
S5、发送端根据接收状态,向接收端重传数据。
S6、最大允许发送的数据包编号大于等于实际待发送的数据包编号后,直接发送待发送数据包。
以下通过两个实例具体描述本发明方法。
方法实例一发送端缓存中存在新数据包的接收状态。
S101、降低发送窗且当前最大允许发送的数据包编号小于实际待发送的数据包编号。
由于无线网络中的信道带宽或功率资源会随时变化,从而会导致发送窗的大小随之变化。为了描述方便,参见表一。
基于上述表一,参见图1所示,发送端通过数据发送单元,按照无线链路控制RLC协议,将发送窗中带有编号的数据包逐一向接收端发送。当前数据已经发送到VT(S);参见图6所示,当前接收端接收的数据包与VT(S)相对应,为VR(S)。
发送端发出数据后,通过轮询请求发送单元,按照一定的规则(如周期触发或每发送N个数据包触发等)向接收端发送轮询请求。接收端接收到发送端发来的数据时,一方面判断数据接收的正确性(通过数据的CRC校验结果来获得);另外一方面检测是否有发送端的轮询请求到达,若是,则接收端向发送端发送数据接收状态(如在接收状态中指明接收窗中的数据哪些已经正确接收,哪些没有正确接收)。
发送端收到所述接收状态后,将其保存在本端的缓存中。即本例中发送端存储有接收端发来的针对于VT(A)至VT(S)的接收状态。
但此时由于信道带宽受限或功率资源紧张导致发送窗降低,即最大允许发送的数据包编号由VT(MS)变为VT’(MS)。此时发送端通过内置的比较单元对VT’(MS)与VT(S)的大小进行比较,若VT’(MS)小于VT(S),则VT’(MS)到VT(S)的数据将被影响(图1中灰色部分),进而触发后续步骤。
S102、发送端及接收端均不删除被影响的数据。
本发明对现有协议进行了修改,对于发送端中从VT’(MS)到VT(S)的数据不作删除;并且在发送端的发送窗降低后,不向接收端发送发送窗降低通知消息,因此接收端不能获知发送端的发送窗变化,从而不会相应的改变接收窗的大小,进而不会影响到当前接收窗中的数据。即参见图6所示,接收端不会删除与VT’(MS)到VT(S)相对应的VR’(MS)到VR(S)的数据。
S103、发送窗滑动,使得允许发送新的数据包。
按照现有的发送机制,发送窗会整体向VT(MS)方向滑动,以使当前的发送窗中出现允许发送的新数据包。
参见图3所示,发送窗降低后的区域为VT(A)至VT’(MS),发送窗整体向右滑动了N个单位(所述N为自然数),即VT(A)滑动到VT(A)1,VT’(MS)滑动到VT’(MS)1。按照现有协议,VT’(MS)至VT’(MS)1这N个数据包就是所述允许发送的新数据包,当前待发送的数据包编号VT’(S)与VT’(MS)相同。发送窗滑动后,向接收端发送发送窗变化通知消息。
参见图6所示,接收端收到所述发送窗变化通知消息后,会随之变化。即接收窗整体向右滑动了N个单位,VR(A)滑动到VR(A)1,VR(MS)滑动到VR(MS)1。
S104、发送端主动获取所述新数据包的接收状态。
本发明在发送窗滑动,使得允许发送新的数据包后,不直接发送当前待发送的数据包(VT’(S)),而是主动获取所述N个新数据包的接收状态。即通过获取单元判断本端缓存中是否存在所述N个新数据包的接收状态。由于本例中发送端的缓存中已经存储有针对于VT(A)至VT(S)的接收状态,包含了所述N个新数据包的接收状态,所以本例中获取单元直接从本端的缓存中获取相关信息。
S105、发送端根据接收状态,向接收端重传数据。
发送端根据获取单元获取的所述N个新数据包的接收状态,确定接收端没有正确接收其中的哪些数据包,并通过重传单元向接收端重传相应的数据。由于当前的发送窗的区域为VT(A)1至VT’(MS)1,所以重传数据的编号应限制在当前的发送窗区域中。
接收端则照常接收发来的数据包。
S106、最大允许发送的数据包编号大于等于实际待发送的数据包编号后,直接发送待发送数据包。
随着发送窗的不断滑动,循环上述步骤S104和S105,即发送端主动获取本次滑动后,出现的新数据包的接收状态,并根据所述接收状态向接收端重传其没有正确接收的数据包。
所述比较单元实时比较VT’(MS)1与实际待发送的数据包编号VT(S)的大小。随着发送窗的不断滑动,当VT’(MS)1大于等于VT(S)后,使发送端直接向接收端发送待发送数据包。即不再通过获取单元获取允许发送的新数据包的接收状态,因为VT(S)之后的数据还没有发送过。
方法实例二发送端缓存中不存在新数据包的接收状态。
S201、降低发送窗且当前最大允许发送的数据包编号小于实际待发送的数据包编号。
由于无线网络中的信道带宽或功率资源会随时变化,从而会导致发送窗的大小随之变化。为了描述方便,参见表一。
基于上述表一,参见图1所示,发送端通过数据发送单元,按照无线链路控制RLC协议,将发送窗中带有编号的数据包逐一向接收端发送。当前数据已经发送到VT(S);参见图6所示,当前接收端接收的数据包与VT(S)相对应,为VR(S)。
发送端发出数据后,通过轮询请求发送单元,按照一定的规则(如周期触发或每发送N个数据包触发等)向接收端发送轮询请求,本例中发送端还没有向接收端发送针对于VT(A)至VT(S)的轮询请求。
但此时由于信道带宽受限或功率资源紧张导致发送窗降低,即最大允许发送的数据包编号由VT(MS)变为VT’(MS)。此时发送端通过内置的比较单元对VT’(MS)与VT(S)的大小进行比较,若VT’(MS)小于VT(S),则VT’(MS)到VT(S)的数据将被影响(图1中灰色部分),进而触发后续步骤。
S202、发送端及接收端均不删除被影响的数据。(与S102相同)S203、发送窗滑动,使得允许发送新的数据包。(与S103相同)S204、发送端主动获取所述新数据包的接收状态。
本发明在发送窗滑动,使得允许发送新的数据包后,不直接发送当前待发送的数据包(VT’(S)),而是主动获取所述N个新数据包的接收状态。即通过获取单元判断本端缓存中是否存在所述N个新数据包的接收状态。由于本例中发送端的缓存中不存在针对VT(A)至VT(S)的接收状态,即不包含所述N个新数据包的接收状态,所以本例中的获取单元触发所述轮询请求发送单元,向接收方发送轮询请求,以获取所述N个新数据包的接收状态。
S205、发送端根据接收状态,向接收端重传数据。(与S105相同)S206、最大允许发送的数据包编号大于等于实际待发送的数据包编号后,直接发送待发送数据包。(与S106相同)显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种处理数据的方法,应用于降低无线链路控制RLC协议发送窗的情况,包括下列步骤A、在降低发送窗后,使得当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,发送端及接收端均保留VT’(MS)至VT(S)的数据;B、所述发送窗滑动,使得允许发送新数据包时,发送端主动获取所述新数据包的接收状态;C、发送端根据所述接收状态,向接收端重传数据。
2.如权利要求1所述的方法,其特征在于,所述步骤A中,在降低发送窗后,发送端不向接收端发送发送窗降低通知消息。
3.如权利要求1所述的方法,其特征在于,步骤B中所述发送端主动获取新数据包的接收状态,包括下列步骤B1、发送端判断本端缓存中是否存在所述新数据包的接收状态,若存在,则从本端直接获取,并转入步骤C;否则,转入步骤B2;B2、发送端主动向接收端发送轮询请求,以获取所述新数据包的接收状态。
4.如权利要求1所述的方法,其特征在于,向接收端重传数据的编号限制在当前的发送窗中。
5.如权利要求1至4任一项所述的方法,其特征在于,随着所述发送窗的滑动,使得最大允许发送的数据包编号大于等于VT(S)后,发送端直接向接收端发送待发送数据包。
6.一种发送端,包括数据发送单元,用于按照无线链路控制RLC协议,将发送窗中的数据包逐一向接收端发送;轮询请求发送单元,用于向接收端发送轮询请求,以获知接收端的数据接收状态;重传单元,用于根据所述接收状态,向接收端重传数据;其特征在于,所述发送端还包括比较单元,用于在降低发送窗后,比较出当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,使发送端及接收端均保留VT’(MS)至VT(S)的数据;获取单元,用于在所述比较单元比较出VT’(MS)小于VT(S)后,主动获取允许发送的新数据包的接收状态。
7.如权利要求6所述的发送端,其特征在于,所述获取单元判断本端缓存中是否存在允许发送的新数据包的接收状态,若存在,则从本端直接获取;否则,触发所述轮询请求发送单元。
8.如权利要求6或7所述的发送端,其特征在于,所述比较单元还用于实时比较最大允许发送的数据包编号与VT(S)的大小,当最大允许发送的数据包编号大于等于VT(S)后,使发送端直接向接收端发送待发送数据包。
全文摘要
本发明公开了一种处理数据的方法及发送端,用以解决基于目前的无线链路控制RLC协议,在降低发送窗后可能会造成已发数据重传的问题。本发明方法应用于降低无线链路控制RLC协议发送窗的情况,包括下列步骤A、在降低发送窗后,使得当前最大允许发送的数据包编号VT’(MS)小于实际待发送的数据包编号VT(S)时,发送端及接收端均保留VT’(MS)至VT(S)的数据;B、所述发送窗滑动,使得允许发送新数据包时,发送端主动获取所述新数据包的接收状态;C、发送端根据所述接收状态,向接收端重传数据。
文档编号H04L29/06GK1852083SQ200610000909
公开日2006年10月25日 申请日期2006年1月12日 优先权日2006年1月12日
发明者吴玉忠, 王晓霞 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1