CN100358277C - 一种防止状态变量异常更新的方法 - Google Patents
一种防止状态变量异常更新的方法 Download PDFInfo
- Publication number
- CN100358277C CN100358277C CNB2004100088216A CN200410008821A CN100358277C CN 100358277 C CN100358277 C CN 100358277C CN B2004100088216 A CNB2004100088216 A CN B2004100088216A CN 200410008821 A CN200410008821 A CN 200410008821A CN 100358277 C CN100358277 C CN 100358277C
- Authority
- CN
- China
- Prior art keywords
- pdu
- sequence number
- state variable
- current
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种防止状态变量异常更新的方法,适用于包括发送实体和接收实体的通信系统中,且发送实体与接收实体间通信采用自动重传机制,该方法还包括:当接收实体收到一个协议数据单元PDU后,计算当前收到的PDU的序列号与状态变量VR(H)对应的序列号之间的距离,判断计算出的距离是否大于所设定的更新幅度,如果是,则丢弃当前接收到的PDU;否则,将状态变量VR(H)更新为当前所接收PDU的序列号加1。该方法能避免滑动窗口协议中发生协议的异常处理。
Description
技术领域
本发明涉及数据单元处理技术,尤指一种通信系统中自动重传机制下防止状态变量异常更新的方法。
背景技术
通用移动通信系统(UMTS,Universal Mobile Telecommunications System)是采用宽带码分多址(WCDMA)空中接口技术的第三代移动通信系统,通常也将它称为WCDMA系统。UMTS系统采用了与第二代移动通信系统类似的结构,包括无线接入网络(RAN,Radio Access Network)和核心网络(CN,CoreNetwork),其中,无线接入网络用于处理所有与无线有关的功能,核心网络负责处理UMTS系统内所有的话音呼叫和数据连接,并实现与外部网络的交换和路由功能。在实际组网中,通用陆地无线接入网络(UTRAN)、核心网络与用户设备(UE,User Equipment)一起构成完整的UMTS系统;核心网络从逻辑上又分为:电路交换域(CS,Circuit Switched Domain)和分组交换域(PS,Packet Switched Domain)。
在UMTS系统中,UTRAN的无线接口协议结构如图1所示,WCDMA的无线接口分为物理层、数据链路层、网络层,其中,物理层又称为层一(L1);数据链路层又称为层二(L2),包括介质访问控制(MAC)子层、无线链路控制(RLC)子层、分组数据压缩协议(PDCP)子层和广播/多播控制(BMC)子层;网络层又称为层三(L3),包括无线资源控制(RRC)子层。
物理层通过业务接入点SAPs与L2的MAC子层和L3的RRC子层连接,提供不同的传输信道到MAC层,MAC层通过不同逻辑信道给高层提供服务。传输信道特性由无线接口上传输信道物理特性进行描述;逻辑信道特性由传输消息的不同类型描述;物理信道特性在频分复用(FDD)制式中由码域、频率域确定。数据链路层的RLC支持三种传输模式:透明模式(TM)、非确认模式(UM)、确认模式(AM),实现分段、级联、填充、重组、差错控制、流量控制、重复性检测等功能。其中,AM模式具有自动请求重发(ARQ)机制,且RLC AM模式可采用滑动窗口协议。
AM模式的ARQ机制包括两个对等实体:RLC AM的发送实体和接收实体,发送实体用于调度和发送数据单元;接收实体负责发送状态报告到发送实体,报告数据单元的接收状况,状态报告中包含针对所接收数据单元的肯定确认或否定确认,肯定确认表示相应数据单元被正确接收,否定确认表示相应数据单元错误或丢失。触发接收实体发送状态报告的机制之一是由发送实体发送查询请求,该查询请求通过设置数据单元的查询比特域实现。具体实现过程如图2所示,包括:
RLC AM的发送实体接收高层发来的协议数据单元(PDU);对所收到的RLC业务数据单元(SDU)进行分段/级联处理,还可能进行填充处理;然后组装确认模式数据(AMD)的PDU,设置长度指示(LI)域来定义AMD PDU内SDU的边界;同时,重传缓冲器根据自身当前的存储状态报告缓存需要重传的AMD PDU;发送缓冲器对新组装的AMD PDU和要重传的AMD PDU进行调度;调度到的PDU如果允许发送,则根据高层配置的规则设置查询比特,如果是新的AMD PDU,还要设置序列号(SN)域,之后对调度到的AMD PDU进行加密,提交给底层发送出去。
RLC AM的接收实体对正确接收到的AMD PDU进行解密,放到接收缓冲区中;接收实体根据高层配置的状态报告触发机制以及AMD PDU中查询比特的值判断是否需要发送状态报告,如果需要发送,则组装状态报告发送到底层;然后判断解析出的AMD PDU能否能重组出RLC SDU,如果能重组出完整的RLC SDU,则进行重组操作,并将组装后的PDU提交到高层。
在RLC AM模式数据收发过程中,发送窗口和接收窗口也做相应的变化。RLC窗口如图3所示,状态变量VT(A)、VT(S)、VT(MS)、VR(R)、VR(H)、VR(MR)的取值从0到4095。VT(A)到VT(MS)的距离为发送窗口大小,单位为AMD PDU个数;VR(R)到VR(MR)的距离为接收窗口的大小,单位为AMD PDU个数。VT(A)之前为已经按顺序确认的AMD PDU,VT(A)到VT(S)之间为已经至少发送过一次但还没有收到正确接收确认状态报告的AMD PDU,VT(S)到VT(MS)之间为允许发送的AMD PDU;VR(R)之前为已经按顺序正确接收到的AMD PDU,VR(R)到VR(H)之间为未确认是否正确接收的AMD PDU,VR(H)到VR(MR)之间为允许接收的AMD PDU。
在发送端,当有新的AMD PDU发送时,VT(S)向后移动;当状态报告表明序列号为VT(A)的AMD PDU已经被正确接收到,VT(A)向后移动。在接收端,当接收到VR(H)与VR(MR)之间的AMD PDU时,VR(H)向后移动;当确认正确接收到序列号为VR(R)的AMD PDU时,VR(R)向后移动。
在实际应用中,接收实体只处理序列号在接收窗口内的AMD PDU,丢弃序列号在接收窗口外的AMD PDU。其中,序列号就是对AMD PDU的编号,一般用n个比特来表示序列号。根据现有协议规定,当收到序列号为x的AMDPDU时,如果x满足:VR(H)≤x<VR(MR),则将状态变量VR(H)更新为x+1,即:移动VR(H)至序列号为x+1的AMD PDU的位置。
在滑动窗口协议中,当RLC窗口大小最大为2n-1-1时,由于窗口小,可覆盖的AMD PDU少,所以基本不会出现VR(H)异常更新的问题。但是,如果RLC窗口的大小大于2n-1-1,该窗口覆盖的AMD PDU数目就多,那么,收到满足VR(H)≤x<VR(MR)条件的、序列号为x的AMD PDU时,就很可能会导致状态变量VR(H)的异常更新。比如:有1000个PDU按序列号顺序排列,如果RLC窗口大小为1000,VR(H)在序列号400的位置,假如此时收到序列号为600的PDU,按协议规定,VR(H)就会更新为601,那么,在向发送实体返回的状态报告中就会出现大量被否定确认、要求重发的PDU,就相当于协议出现了异常处理。但是,如果RLC窗口大小为500,VR(H)在序列号400的位置,当收到序列号为600的PDU时,就会被认为是错误数据被丢弃,VR(H)也不会移动。
图4为接收到PDU后导致状态变量VR(H)异常更新的情况示例,图4中的发送窗口大小和接收窗口大小均为4095。如图4所示,在某一时刻,发送窗口和接收窗口移动到图示的状态,如果此时接收实体收到序列号为100的PDU,根据目前协议的规定,由于序列号为100的PDU在VR(H)和VR(MR)之间,所以会更新VR(H)为101,这就会触发协议的异常处理,进而导致复位发生。
另外,为了防止发生协议异常处理的问题,通常需要将n值设大,但n值越大,就会使每个PDU在传输中携带一个位数很长的序列号,从而增加每个PDU的头开销,这就意味着要占用更多的空口资源传送同样的数据净荷,代价较大。
发明内容
有鉴于此,本发明的主要目的在于提供一种防止状态变量异常更新的方法,使其能避免滑动窗口协议中发生协议的异常处理。
为达到上述目的,本发明的技术方案是这样实现的:
一种防止状态变量异常更新的方法,适用于包括发送实体和接收实体的通信系统中,且发送实体与接收实体间通信采用自动重传机制,该方法包括:
接收实体收到一个协议数据单元PDU后,计算当前收到的PDU的序列号与标识最后一个已接收PDU的状态变量对应的序列号之间的距离,判断计算出的距离是否大于所设定的更新幅度,如果是,则丢弃当前接收到的PDU;否则,将标识最后一个已接收PDU的状态变量更新为当前所接收PDU的序列号加1。
上述方案中,当接收实体收到一个协议数据单元PDU后,可以先判断当前接收窗口的大小是否大于2n-1-1,如果不大于,则将标识最后一个已接收PDU的状态变量更新为当前所接收PDU的序列号加1,否则,再计算序列号之间的距离;这里,n为PDU序列号的位数。
其中,所述的更新幅度为:一个传输时间间隔(TTI)内当前业务无线承载所能接收的最大PDU数与信道环境系数之积。步骤b中所述计算为:将当前收到的PDU的序列号加上2n,再减去标识最后一个已接收PDU的状态变量对应的序列号,然后再将得到的差值对2n取模,其中,n为PDU序列号的位数。
上述方案中,所述通信系统为WCDMA系统、或为TD-SCDMA系统、或CDMA2000系统。在WCDMA系统或TD-SCDMA系统中,所述自动重传机制在无线链路控制协议的确认模式下实现。在CDMA2000系统中,所述自动重传机制在链路接入控制协议的自动重传请求子层中实现。
本发明所提供的防止状态变量异常更新的方法,将当前接收到的序列号与状态变量VR(H)对应的序列号进行比较,如果不在所设定的合理范围,则不对VR(H)进行更新,即不移动VR(H),从而防止了状态变量VR(H)的异常更新;尤其是大大减少了RLC窗口大小大于2n-1-1情况下状态变量VR(H)的异常更新;避免了由于发送窗口和接收窗口重叠所导致的协议异常处理,降低了数据单元的丢弃率。并且,本发明可以应用于各种具有自动重传机制的通信系统中,适应性强、且使用简单、方便、灵活。
附图说明
图1为无线接口协议的组成结构示意图;
图2为RLC AM功能实体模型的结构和工作原理示意图;
图3为RLC窗口的组成示意图;
图4为RLC窗口一实施例的组成示意图;
图5为本发明方法的实现流程图。
具体实施方式
本发明适用的通信系统由包含发送实体的发送节点和包含接收实体的接收节点组成,并且,发送实体和接收实体之间的通信采用自动重传请求(ARQ)机制。这里,所述的通信系统可以是WCDMA系统、或TD-SCDMA系统、或是CDMA2000系统。对于WCDMA系统或TD-SCDMA系统,自动重传请求机制在RLC协议的AM模式下实现;对于CDMA2000系统,自动重传请求机制在链路接入控制(LAC)协议的ARQ子层中实现。
最佳的,本发明适用于WCDMA系统中通用陆地无线接入网络(UTRAN)的RLC层的AM模式下,本发明实施的功能实体结构参见图2所示。
基于图2所示的结构,本发明的核心思想是:在RLC窗口大小大于2n-1-1的情况下,对当前接收到的序列号x与状态变量VR(H)对应的序列号进行比较,如果两者之间的距离处于所规定的合理的更新幅度,则按协议规定更新VR(H),即移动VR(H)到x+1的位置;否则,不更新VR(H)。
这里,如果设定一个TTI内当前发送/接收实体对应的无线承载(RB),或说当前业务RB最大可接收的AMD PDU数为N,根据信道环境获取的信道环境系数为a,则所提到的更新幅度可以是:a与N之积。其中,N值的计算与TTI的大小、所用RB的速率有关,实际上,N是标准中规定的一个参数;信道环境系数a值的确定与其使用的信道,如:使用专用信道、公共信道等等因素有关,比如:当该无线承载配置单独的专用传输信道,且信道条件较好时,a可以取3~5。一般,该信道环境系数a根据经验值得到。
本发明中,当接收窗口大于2n-1-1,如:n为12,接收窗口大于2047时,通过对接收到的、序列号x满足VR(H)≤x<VR(MR)的AMD PDU做特殊处理,来避免异常情况的发生。因为每次收到的、位于VR(H)与VR(MR)之间的AMDPDU的序列号x不应超过当前VR(H)太多,最好x等于VR(H),否则,就会导致VR(H)的异常更新。但考虑到数据在传输过程中可能发生错误或丢失的情况,又允许x大于VR(H),为了综合考虑上述两种情况,本发明对x与VR(H)之间的距离设定一个合理的更新幅度。接收方每次收到AMD PDU更新VR(H)时,先对其更新幅度进行判断,如果超过所设定的更新幅度范围,则认为收到异常的AMD PDU,就直接丢弃当前接收到的AMD PDU;如果在更新幅度范围内,再对VR(H)进行更新、移动。
本发明方法具体的实现过程如图5所示,包括以下步骤:
步骤501~502:当收到序列号为x,且x满足VR(H)≤x<VR(MR)的AMD PDU后,先判断当前配置的接收窗口是否大于2n-1-1,如果不是,则直接执行步骤505;否则,执行步骤503。
步骤503~504:根据序列号值计算判断x与VR(H)之间的距离,判断所计算出的距离是否在设定的更新幅度内,如果假定更新幅度为a与N之积,这里就是判断x与VR(H)之间的距离是否小于等于a×N,当然,也可以根据需要采用其它方法设定更新幅度的大小。如果x与VR(H)的距离在更新幅度范围内,则执行步骤505;否则,就直接丢弃当前接收到的AMD PDU。
这里,x与VR(H)之间的距离是这样计算的:(x+2n-VR(H))mod2n,其中,mod表示取模。
步骤505~506:正常更新VR(H)为x+1,然后对当前接收到的AMD PDU进行相应处理。
举个例子,假定n为12,当前接收窗口大小为4095,更新幅度为50,当前VR(R)对应的序列号为103,VR(H)对应的序列号为502,VR(MR)对应的序列号为904。如果此时接收实体收到序号为587的AMD PDU,那么,由于接收窗口大小4095大于212-1-1=2047,就计算接收到的AMD PDU与VR(H)之间的距离(587+4096-502)mod 4096=85,该距离大于更新幅度50,所以,直接丢弃当前接收到的AMD PDU。如果此时接收实体收到序号为537的AMD PDU,那么,由于接收窗口大小4095大于212-1-1=2047,就计算接收到的AMD PDU与VR(H)之间的距离(537+4096-502)mod 4096=35,该距离小于更新幅度50,则正常更新VR(H)为x+1,然后对所接收到的AMD PDU进行相应处理。
本发明所述的方法也可以不仅针对接收窗口大于2n-1-1的情况,而适用于任何大小的接收窗口。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (8)
1、一种防止状态变量异常更新的方法,适用于包括发送实体和接收实体的通信系统中,且发送实体与接收实体间通信采用自动重传机制,其特征在于,该方法包括:
接收实体收到一个协议数据单元PDU后,计算当前收到的PDU的序列号与标识最后一个已接收PDU的状态变量对应的序列号之间的距离,判断计算出的距离是否大于所设定的更新幅度,如果是,则丢弃当前接收到的PDU;否则,将标识最后一个已接收PDU的状态变量更新为当前所接收PDU的序列号加1。
2、根据权利要求1所述的方法,其特征在于,该方法进一步包括:接收实体收到一个协议数据单元PDU后,先判断当前接收窗口的大小是否大于2n-1-1,如果不大于,则将标识最后一个已接收PDU的状态变量更新为当前所接收PDU的序列号加1,并结束当前流程;否则,再计算当前收到的PDU序列号与标识最后一个已接收PDU的状态变量对应序列号之间的距离;其中,n为PDU序列号的位数。
3、根据权利要求1所述的方法,其特征在于,所述更新幅度为:一个传输时间间隔TTI内当前业务无线承载所能接收的最大PDU数与信道环境系数之积。
4、根据权利要求1所述的方法,其特征在于,所述序列号间距离的计算为:将当前收到的PDU的序列号加上2n,再减去标识最后一个已接收PDU的状态变量对应的序列号,然后再将得到的差值对2n取模,其中,n为PDU序列号的位数。
5、根据权利要求1至4任一项所述的方法,其特征在于,所述通信系统为WCDMA系统、或为TD-SCDMA系统。
6、根据权利要求5所述的方法,其特征在于,所述自动重传机制在无线链路控制协议的确认模式下实现。
7、根据权利要求1至4任一项所述的方法,其特征在于,所述通信系统为CDMA2000系统。
8、根据权利要求7所述的方法,其特征在于,所述自动重传机制在链路接入控制协议的自动重传请求子层中实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100088216A CN100358277C (zh) | 2004-03-12 | 2004-03-12 | 一种防止状态变量异常更新的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100088216A CN100358277C (zh) | 2004-03-12 | 2004-03-12 | 一种防止状态变量异常更新的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1667994A CN1667994A (zh) | 2005-09-14 |
CN100358277C true CN100358277C (zh) | 2007-12-26 |
Family
ID=35038893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100088216A Expired - Fee Related CN100358277C (zh) | 2004-03-12 | 2004-03-12 | 一种防止状态变量异常更新的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100358277C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100583824C (zh) * | 2006-06-02 | 2010-01-20 | 华为技术有限公司 | 高速下行分组接入的数据收发方法及设备 |
CN101478380B (zh) * | 2008-01-03 | 2013-02-27 | 中兴通讯股份有限公司 | 一种自动重传请求窗口管理方法 |
US8526440B2 (en) | 2008-04-28 | 2013-09-03 | Qualcomm Incorporated | Partial radio link control status report |
CN101631009B (zh) * | 2008-07-14 | 2013-08-07 | 中兴通讯股份有限公司 | 传输块重传方法和装置、终端设备 |
CN114374656B (zh) * | 2020-10-14 | 2024-05-14 | 上海华为技术有限公司 | 一种数据处理方法及相关设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1379557A (zh) * | 2002-05-16 | 2002-11-13 | 武汉汉网高技术有限公司 | 多拒绝自动请求重传arq机制 |
CN1411227A (zh) * | 2001-09-25 | 2003-04-16 | 华为技术有限公司 | 推动无线链路控制层数据发送窗口快速滑动的方法及装置 |
CN1430345A (zh) * | 2002-01-03 | 2003-07-16 | 华硕电脑股份有限公司 | 用于高速无线通信系统中的防止延迟的窗口化机械装置 |
US20030169741A1 (en) * | 2001-10-19 | 2003-09-11 | Torsner Per Johan | Avoiding stall conditions and sequence number ambiguity in an automatic repeat request protocol |
-
2004
- 2004-03-12 CN CNB2004100088216A patent/CN100358277C/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411227A (zh) * | 2001-09-25 | 2003-04-16 | 华为技术有限公司 | 推动无线链路控制层数据发送窗口快速滑动的方法及装置 |
US20030169741A1 (en) * | 2001-10-19 | 2003-09-11 | Torsner Per Johan | Avoiding stall conditions and sequence number ambiguity in an automatic repeat request protocol |
CN1430345A (zh) * | 2002-01-03 | 2003-07-16 | 华硕电脑股份有限公司 | 用于高速无线通信系统中的防止延迟的窗口化机械装置 |
CN1379557A (zh) * | 2002-05-16 | 2002-11-13 | 武汉汉网高技术有限公司 | 多拒绝自动请求重传arq机制 |
Also Published As
Publication number | Publication date |
---|---|
CN1667994A (zh) | 2005-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1878155B1 (en) | Method of transmitting control information in wireless communication system and transmission window updating method using the same | |
KR101141645B1 (ko) | 데이터 블록 전송 제어 방법 | |
US7974259B2 (en) | Enhanced polling method for preventing deadlock in a wireless communications system | |
KR100765121B1 (ko) | 송신버퍼의 프로토콜 데이터 유닛 폴링 방법 | |
JP4607339B2 (ja) | フレキシブル無線リンク制御プロトコル | |
EP2288202B1 (en) | Method for transmitting data from RLC layer in radio communication system | |
US8824376B2 (en) | Method for sending status information in mobile telecommunications system and receiver of mobile telecommunications | |
CN101888291B (zh) | 实施增强专用频道传输数据使用期间定时器的方法及装置 | |
EP1695462B1 (en) | Transmitting and receiving control protocol data unit having processing time information | |
KR101467798B1 (ko) | 무선통신시스템에서의 상태정보 전송 방법 및 수신장치 | |
EP2229745B1 (en) | Status reporting for retransmission protocol | |
US20100257423A1 (en) | Method of performing arq procedure for transmitting high rate data | |
KR20040040710A (ko) | 무선 링크 제어 프로토콜에 따르는 수신기에서의 알엘씨데이터 수신 윈도우 처리 방법 | |
WO2009045787A2 (en) | Status report method in a wireless communication system | |
US20060221965A1 (en) | Method of transferring data packets in a communications network | |
CN100358277C (zh) | 一种防止状态变量异常更新的方法 | |
KR100828322B1 (ko) | Umts시스템에서 무선링크제어계층의 상태변수에 의한재전송방법 | |
CN100433611C (zh) | 一种通信系统中调度状态报告请求数据单元的方法 | |
KR20050075566A (ko) | 무선 링크 제어 윈도우의 데드락 방지 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071226 Termination date: 20150312 |
|
EXPY | Termination of patent right or utility model |