一种无线链路控制实体中的状态信息处理方法转让专利

申请号 : CN200710179963.2

文献号 : CN101183916B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈春明

申请人 : 普天信息技术研究院有限公司

摘要 :

本发明公开了一种RLC中的状态信息处理方法。本发明中的RLC无需等待完整SDU的接收,即可提取出piggybacked STATUS PDU进行状态变量的更新,因而能够保证对STATUS PDU和piggybacked STATUS PDU的处理顺序与接收顺序一致,从而能够避免先根据后接收到的STATUS PDU更新状态变量而导致的RLC复位,因而避免了数据传输速率的突变,提高了数据传输的可靠性。

权利要求 :

1.一种RLC中的状态信息处理方法,其特征在于,该方法包括:接收到AMD PDU时,判断接收到的AMD PDU中是否携带了piggybackedSTATUS PDU,如果是,则先提取该AMD PDU中携带的piggybacked STATUSPDU,然后根据所述piggybacked STATUS PDU更新状态变量、再将该AMDPDU缓存;否则,直接将该AMD PDU缓存;

接收到STATUS PDU时,根据所述STATUS PDU更新状态变量。

2.如权利要求1所述的方法,其特征在于,所述AMD PDU对应的SDU接收完成后,该方法进一步包括:将所有缓存的AMD PDU去RLC头;

将去RLC头后的AMD PDU进行重组后发送到上层。

说明书 :

技术领域

本发明涉及移动通信中的数据传输技术,特别涉及一种无线链路控制实体(RLC)中的状态信息处理方法。

背景技术

在RLC间基于确认模式(AM)的数据传输过程中,发送端向接收端发送确认模式的协议数据单元(AMD PDU),而接收端会向发送端响应是否成功接收到AMD PDU,使得发送端能够确定是否需要重传该AMD PDU。
发送端和接收端都是一个RLC实体,每个RLC实体均包括发送侧和接收侧。图1为现有RLC模型的结构示意图。如图1所示,RLC由左侧的发送侧来实现数据发送。在发送侧,将上层的待发送数据包进行分割/串联(Segmentation/Concatenation)处理并添加RLC头之后构成AMD PDU;然后,将AMD PDU发送给复用单元(MUX),同时缓存在重传缓冲和管理单元(Retransmission Buffer&Management Unit),以便于在该AMD PDU未被对端成功接收时进行重传;复用单元根据RLC控制单元的指示,选择直接接收到的AMD PDU或重传缓冲和管理单元中的AMD PDU发送至发送缓冲器(Transmission Buffer),即选择发送新的AMD PDU还是选择重传AMD PDU;发送缓冲器中的AMD PDU经后续相应处理后即可发送。
接收端会根据其接收侧是否成功接收到AMD PDU而向发送端响应。具体来说,接收端通过其发送侧向发送端的响应中包括RLC超域(SUFI)信息,响应方式包括两种:一种方式,接收端将RLC SUFI信息构成一状态协议数据单元(STATUS PDU)后立即响应至发送端的接收侧;另一种方式,接收端将多个RLC SUFI信息分别构成对应的多个携带状态协议数据单元(piggybacked STATUS PDU)后,将多个piggybacked STATUS PDU分别携带于不同的AMD PDU,然后再反馈至发送端的接收侧。
对于上述两种方式的响应,发送端侧会采用不同的处理方式。
如果接收端采用STATUS PDU方式进行响应,参见图1右侧的接收侧,则发送端接收到STATUS PDU后,立即根据该STATUS PDU更新状态变量,并由复用单元选择缓存在重传缓冲和管理单元内的对应AMD PDU重新发送,同时,删除重传缓冲和管理单元中已被接收端成功接收到的AMD PDU。
如果接收端采用piggybacked STATUS PDU方式进行响应,参见图1右侧的接收侧,则发送端的接收侧需要先将AMD PDU进行解密,将解密得到的AMD PDU逐一缓存至接收缓冲和重传管理单元(Reception Buffer&Retransmission Management Unit);由于各AMD PDU分别包含了同一个服务数据单元(SDU)的一个分断,因此,在该SDU接收完成后,再将接收缓冲和重传管理单元中的AMD PDU进行去RLC头,并从AMD PDU中提取出piggybacked STATUS PDU;然后,发送端再根据提取出的piggybackedSTATUS PDU更新状态变量,并由复用单元选择缓存在重传缓冲和管理单元内的对应AMD PDU重新发送,同时,删除重传缓冲和管理单元中已被接收端成功接收到的AMD PDU。
在实际数传过程中,接收端不会仅限于一种响应方式,而会采取混合的响应方式。这样,就会存在以下问题:
参见图2,假设RLC1的发送侧先后向RLC2的接收侧发送了AMDPDU1、AMD PDU2、AMD PDU3、以及STATUS PDU1。其中,AMD PDU1、AMD PDU2、AMD PDU3分别包含了同一个SDU的各个分段;AMD PDU3包含了piggybacked STATUS PDU,表示RLC2之前向RLC1发送的某个AMD PDU是否被正确接收;STATUS PDU1表示RLC2之前向RLC1发送的其他AMD PDU是否被正确接收。具体流程假设如下:
1、RLC2的接收侧未能正确接收AMD PDU1,但正确接收到了AMDPDU2和AMD PDU3、以及STATUS PDU1。
2、RLC2将AMD PDU2和AMD PDU3解码后放到接收&重传缓存内,经判断发现未能正确接收到AMD PDU1,因而构造STATUS PDU2传递给RLC2的发送侧。另外,RLC2的接收侧将接收到STATUS PDU1直接发送到RLC2的发送侧,由RLC2的发送侧立即根据该STATUS PDU1更新状态变量,例如vt_a。
由于AMD PDU1、AMD PDU2、AMD PDU3分别包含了同一个SDU的各个分段,因此,对于AMD PDU2和AMD PDU3,需等待正确接收到AMDPDU1后才能够进行去头&提取piggybacked STATUS PDU的操作。
3、RLC2的发送侧将STATUS PDU2发给RLC1的接收侧,请求RLC1重发AMD PDU1。
4、RLC1收到STATUS PDU2以后,确定AMD PDU1需要重传,并AMD PDU1放到发送侧的发送缓存中。
5、RLC1的发送侧向RLC2的接收侧发送AMD PDU1以及其它的AMDPDU。
6、RLC2的接收侧接收到RLC1的发送侧重传的AMD PDU1,解码后放到接收&重传缓存内,并与之前缓存的AMD PDU2和AMD PDU3一起进行重组功能,然后提取出AMD PDU3内的piggybacked STATUS PDU,发送到RLC控制单元,RLC控制单元检测piggybacked STATUS PDU中的SUFI内容,发现与当前的状态变量不符,从而导致接收端的RLC复位。
可见,现有RLC中对STATUS PDU和piggybacked STATUS PDU的处理顺序会导致RLC的复位,从而在复位过程中会丢失来自上层的数据包,且复位过程中无法实现数据的传输,使得数据传输的速率会发生突变,可靠性较低。

发明内容

有鉴于此,本发明提供了一种RLC中的状态信息处理方法,能够降低RLC复位的概率,避免数据传输速率的突变,从而提高数据传输的可靠性。
本发明提供的一种RLC中的状态信息处理方法,包括:
接收到AMD PDU时,判断接收到的AMD PDU中是否携带了piggybacked STATUS PDU,如果是,则先提取该AMD PDU中携带的piggybacked STATUS PDU,然后根据所述piggybacked STATUS PDU更新状态变量、再将该AMD PDU缓存;否则,直接将该AMD PDU缓存;
接收到STATUS PDU时,根据所述STATUS PDU更新状态变量。
所述AMD PDU对应的SDU接收完成后,该方法进一步包括:
将所有缓存的AMD PDU去RLC头;
将去RLC头后的AMD PDU进行重组后发送到上层。
由此可见,本发明中的RLC无需等待完整SDU的接收,即可提取出piggybacked STATUS PDU进行状态变量的更新,保证对STATUS PDU和piggybacked STATUS PDU的处理顺序与接收顺序一致,避免先根据后接收到的STATUS PDU更新状态变量而导致的RLC复位,因而避免了数据传输速率的突变,提高了数据传输的可靠性。

附图说明

图1为现有RLC模型的结构示意图。
图2为现有RLC间的一传输过程示意图。
图3为本发明RLC模型的结构示意图。
图4为本发明RLC中处理Piggybacked Status PDU以实现状态变量更新的流程示意图。
图5为本发明RLC间的一传输过程示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
在本发明中,当RLC接收到由包含piggybacked STATUS PDU的AMDPDU后,立即提取出该piggybacked STATUS PDU进行状态变量的更新,然后再将该AMD PDU缓存至接收缓冲和重传管理单元中,而无需等待完整SDU的接收完成,从而能够避免先根据后接收到的STATUS PDU更新状态变量而导致的RLC复位。
图3为本发明RLC模型的结构示意图。其中,如图3所示的发送侧与现有RLC模型相同。
参见如图3所示的RLC,如果其接收侧接收到STATUS PDU,则按照如图1所示的现有方式,立即发送至该RLC的发送侧,由该RLC的发送侧根据该STATUS PDU更新状态变量,并由发送侧的复用单元选择缓存在重传缓冲和管理单元内的对应AMD PDU进行重传,同时,删除重传缓冲和管理单元中已被其他RLC正确接收的AMD PDU。
参见如图3所示的RLC,如果其接收侧接收到包含piggybacked STATUSPDU的AMD PDU,则该RLC的接收侧将该AMD PDU解密后,立即从该AMD PDU中提取出piggybacked STATUS PDU并发送至该RLC的发送侧,由发送侧立即进行状态变量的更新,然后再将该AMD PDU缓存至接收缓冲器;在完整的SDU接收完成后,再将接收缓冲器中的所有AMD PDU进行去RLC头,而不再进行提取piggybacked STATUS PDU的操作,直接重组后发送至上层。
图4为本发明RLC中处理Piggybacked Status PDU以实现状态变量更新的流程示意图。在发送端向接收端发送了AMD PDU之后,如图4所示,本发明在RLC中处理Piggybacked Status PDU的方法包括:
步骤401,RLC的接收侧判断接收到的AMD PDU中是否携带了piggybacked STATUS PDU,如果是,则执行步骤402,否则执行步骤403。
步骤402,RLC的接收侧提取AMD PDU中携带的piggybacked STATUSPDU,并执行步骤403。
本步骤中,由RLC的接收侧提取AMD PDU中携带的piggybackedSTATUS PDU之后,即可立即发送至该RLC的发送侧,由该RLC的发送侧更新状态变量,并将重传缓冲&管理模块中与该piggybacked STATUS PDU对应的AMD PDU的重传。
步骤403,RLC的接收侧缓存该解密得到的AMD PDU。
本步骤中,解密得到的AMD PDU可以缓存在接收缓冲器中。
至此,本流程结束。
上述流程中,当一个完整SDU的接收完成之后,在RLC的接收侧将所有缓存的AMD PDU进行去RLC头的操作,而不再进行提取piggybackedSTATUS PDU的操作,然后将去RLC头操作后的AMD PDU进行重组后发送到上层。
在执行上述流程的同时,如果收到STATUS PDU,则采取与现有技术一致的方式进行处理。
可见,由于RLC无需等待完整SDU的接收即可提取出piggybackedSTATUS PDU进行状态变量的更新,因而能够保证对STATUS PDU和piggybacked STATUS PDU的处理顺序与接收顺序一致,从而能够避免先根据后接收到的STATUS PDU更新状态变量而导致的RLC复位,因而避免了数据传输速率的突变,提高了数据传输的可靠性。
下面,再对上述流程进行举例说明:
参见图5,仍假设RLC1的发送侧先后向RLC2的接收侧发送了AMDPDU1、AMD PDU2、AMD PDU3、以及STATUS PDU1。其中,AMD PDU1、AMD PDU2、AMD PDU3分别包含了同一个SDU的各个分段;AMD PDU3包含了piggybacked STATUS PDU,表示RLC2之前向RLC1发送的某个AMD PDU是否被正确接收;STATUS PDU1表示RLC2之前向RLC1发送的其他AMD PDU是否被正确接收。
1、RLC2的接收侧未能正确接收AMD PDU1,但正确接收到了AMDPDU2和AMD PDU3、以及STATUS PDU1。
2、RLC2将AMD PDU2和AMD PDU3解码后,经判断发现未能正确接收到AMD PDU1,因而构造STATUS PDU2传递给RLC2的发送侧,并从AMD PDU3中提取出piggybacked STATUS PDU,并发送至RLC2的发送侧,由RLC2的发送侧根据该piggybacked STATUS PDU更新状态变量。然后,RLC2的接收侧将解码后的AMD PDU2和AMD PDU3放到接收&重传缓存内。
另外,RLC2的接收侧将接收到STATUS PDU1直接发送到RLC2的发送侧,由RLC2的发送侧立即根据该STATUS PDU1再次更新状态变量。此时的STATUS PDU1不会与之前更新后状态变量不符,从而不会导致作为发送端的RLC复位。
3、RLC2的发送侧将STATUS PDU2发给RLC1的接收侧,请求RLC1重发AMD PDU1。
4、RLC1收到STATUS PDU2以后,确定AMD PDU1需要重传,并AMD PDU1放到发送侧的发送缓存中。
5、RLC1的发送侧向RLC2的接收侧发送AMD PDU1以及其它的AMDPDU。
6、RLC2的接收侧接收到RLC1的发送侧重传的AMD PDU1,解码后放到接收&重传缓存内,并与之前缓存的AMD PDU2和AMD PDU3一起进行重组功能。
可见,由于提取piggybacked STATUS PDU的过程无需等待完整SDU接收完成后再执行,因而不会导致RLC的复位。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。