生成协议数据单元的方法及其设备和基站
技术领域
本发明大体上涉及移动通信领域,更具体地,涉及一种生成协议数据单元的方法及其设备和基站,应用在单频网(SFN)上,能够恢复服务数据传输过程中丢失的多个分组,以确保不同基站之间的内容同步。
背景技术
在采用单频网(SFN)技术的无线网络传输系统中,例如在LTE的多媒体广播和多播(MBMS)系统中,所有基站(以下简称为eNB)都是在时间和频率上完全同步。这样,如果每个eNB在同一个起始时刻发送同样的数据,并且采用同样的物理层调制编码技术,则在空间传播中,从各个eNB发出的信号具有同样的波形。在用户设备(以下简称为UE),可以将eNB所发送的数据看成是同一个eNB所发出的信号。由于UE接收到的都是有用的、传输同样数据的信号,这种技术可以极大地降低相邻小区干扰(因为此时来自相邻小区的都是有用信号而非干扰),因而适用于一些广播和多播系统。例如,在LTE的多媒体广播和多播系统中,采用了这样的单频网技术。
图1示出了LTE MBMS的网络拓扑结构。支持MBMS的网元主要包括:BM-SC(广播/多播业务中心)、SAE GW(SAE网关)、eNB(演进型基站)、UE(用户设备)。通常,UE和eNB之间的接口称为S1接口。
BM-SC是内容提供者的入口,用于授权和在PLMN中发起MBMS承载业务,并按照预定时间计划传送MBMS数据。SAE GW对用户进行MBMS承载业务控制,并将MBMS数据传送到E-UTRAN。eNB负责向指定的MBMS服务区的空中接口高效地传送MBMS数据。
图2示出了SFN的网络结构示意图。在图2中,各个基站采用相同的频点覆盖,小区和小区之间不需要用时间、频率或码进行复用。同一个业务在所有基站覆盖的区域都分配同样的时间和频率资源。由于采用相同的物理层调制和编码技术,从各个基站发出的相同数据的信号在空间的波形都一样。从UE接收机来看,就像是从一个基站发出的信号一样,只不过具有了一些较大时延的多径。单频网可以用所有基站和正常的基站发射功率来全覆盖,也可以用部分基站和升高的基站发射功率来全覆盖。
在LTE无线通信系统中,无线接口协议层分为三层。最底层是物理层(L1),位于物理层(L1)之上的协议层包括数据链路层(L2)和网络层(L3)。在无线接口中,数据链路层被划分为几个子层,其中包括媒体接入控制(MAC)协议子层、无线链路控制(RLC)协议子层、分组数据会聚协议(PDCP)子层。网络层(L3)提供了无线资源控制(RRC)功能。
在整个协议结构中,由于到达各个eNB的是IP数据分组,IP数据分组的长度是变化的,从几十个字节到最大1500个字节。而且,由于到达各个eNB的路由各不相同,在传输过程中,会出现多个分组丢失的情况。因此要确保各个eNB针对相同的eMBMS业务所发送的数据的内容同步,是一个必须要解决的问题。需要在向eNB分发数据期间分组丢失的情况下,实现eNB无线处理的简单恢复。
这里,分组丢失恢复的含义是将伪数据填入无线链路控制缓冲器中,而不用恢复分组中的实际数据,这是因为只要eNB知道要发送的分组的长度,就可以确保丢失分组以后的各个分组的发送在内容上都是同步的。
图3示出了现有的单播情况下RLC SDU(服务数据单元)和RLCPDU(协议数据单元)之间的关系,其基本思想为每一个分段都具有一个长度指示。如图3所示,假设在eNB,RLC PDU的尺寸是600字节,在RLC PDU报头中,包括用于SN和SI的2字节,每个LI的尺寸是2字节。
如图3所示,在S1接口丢失了两个分组(SN=i,i+1)。当eNB接收到序号SN=i+3的分组时,它知道前面的两个分组已经丢失。但是eNB仅仅知道2个分组丢失,分组的总长度是600字节,并不知道600字节在丢失的两个分组中的长度分布。
图4示出了两个丢失分组的字节长度的一种分布。如图4所示,丢失的两个分组一个是400字节,另一个是200字节,并且一共被划分成了三段,在不同的PDU中分别由各自的LI来指示。例如在前一PDU中,两个LI分别指示源自序号SN=i的SDU的296个字节,和源自序号SN=i+1的SDU的298个字节。在后一PDU中,三个LI分别指示源自序号SN=i+1的SDU的102个字节,源自序号SN=i+2的SDU的200个字节,和源自序号SN=i+3的SDU的290个字节。如果按照上述的方式进行恢复,则下一PDU的起始字节将是1286。
图5示出了两个丢失分组的字节长度的另一种分布。如图5所示,丢失的两个分组一个是298字节,另一个是302字节,并且各自为一个分段,总共形成了两段,在不同的PDU中分别由各自的LI来指示。例如在前一PDU中,两个LI分别指示源自序号SN=i的SDU的296个字节,和源自序号SN=i+1的SDU的298个字节。在后一PDU中,两个LI分别指示源自序号SN=i+2的SDU的302个字节,和源自序号SN=i+3的SDU的292个字节。如果按照上述的方式进行恢复,则下一PDU的起始字节是1288。
从上面的例子中可以看出,由于恢复的序号SN=i+1和序号SN=i+2的RLC SDU所划分的段数不同,并且每个段有自己的LI,即出现了两个LI或者三个LI,这导致了RLC PDU内容不同步。
可见,由于单个SDU所划分的段分别具有各自的LI,在多分组丢失的情况下,eNB无法得知各个分组中的字节长度的分布,从而无法正确恢复丢失的分组,进而造成了内容在eNB无法同步的问题。并且这样的内容不同步会影响到后续分组的内容同步。因此,利用该单播RLC PDU结构是无法在eNB恢复丢失的分组的,并且很容易导致内容不同步问题。
发明内容
鉴于上述问题,完成了本发明。本发明的目的在于提供一种生成协议数据单元的方法及其设备和基站,利用所生成的协议数据单元,能够恢复服务数据传输过程中丢失的多个分组,以确保不同基站之间的内容传输同步。本发明提供一种生成协议数据单元的方法及其设备和基站同样适用于单播传输。
在本发明的一个方面,提出了一种生成协议数据单元的方法,包括步骤:将输入的服务数据单元分割成至少一个分段,以将所述至少一个分段分布在至少一个协议数据单元中;以及在每个协议数据单元的报头中设置偏移字段和至少一个长度指示字段,所述偏移字段表示协议数据单元中出现的第一个新服务数据单元的第一段的偏移,而长度指示字段表示所述新服务数据单元的总长度。
在本发明的另一方面,提出了一种生成协议数据单元的方法,包括步骤:将输入的服务数据单元分割成至少一个分段,以将所述至少一个分段分布在至少一个协议数据单元中;以及在每个协议数据单元的报头中设置了至少一个长度指示字段,所述长度指示字段表示所述至少一个分段中的最后一个分段的长度。
在本发明的又一方面,提出了一种生成协议数据单元的设备,包括:分割装置,将输入的服务数据单元划分成至少一个分段,以将所述至少一个分段分布在至少一个协议数据单元中;计算装置,计算协议数据单元中出现的第一个新服务数据单元的第一段的偏移;以及设置装置,在每个协议数据单元的报头中设置偏移字段和至少一个长度指示字段,所述偏移字段表示所述偏移,而长度指示字段表示所述新服务数据单元的总长度。
在本发明的又一方面,提出了一种生成协议数据单元的设备,包括:分割装置,将输入的服务数据单元分割成至少一个分段,以将所述至少一个分段分布在至少一个协议数据单元中;计算装置,计算所述至少一个分段中的最后一个分段的长度;以及设置装置,在每个协议数据单元的报头中设置了至少一个长度指示字段,所述长度指示字段表示所述计算装置计算的长度。
利用本发明的上述方法和设备,由于即使单个SDU划分了多个分段但只用一个LI来指示,并且LI指示了在一个PDU中SDU的结束位置,从而确保了单频网中的eNB可以在多分组丢失的情况下恢复分组,避免了内容传输的不同步问题。
附图说明
通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:
图1示出了LTE MBMS的网络拓扑结构;
图2示出了SFN的网络结构示意图;
图3示出了现有的单播情况下RLC SDU和RLC PDU之间的关系;
图4示出了两个丢失分组的字节长度的一种分布;
图5示出了两个丢失分组的字节长度的另一种分布;
图6A示出了根据本发明第一实施例的形成PDU的数据格式的一种示例;
图6B示出了根据本发明第一实施例的形成PDU的数据格式的另一种示例;
图7示出了根据本发明第一实施例的生成PDU的设备的功能框图;
图8A示出了根据本发明第二实施例的形成PDU的数据格式的一种示例;
图8B示出了根据本发明第二实施例的形成PDU的数据格式的另一种示例;
图9示出了根据本发明第二实施例的生成PDU的设备的功能框图;
图10A是说明根据本发明第二实施例的两个丢失分组的字节长度的一种分布的恢复示意图;以及
图10B是说明根据本发明第二实施例的两个丢失分组的字节长度的另一种分布的恢复示意图。
具体实施方式
下面参照附图对本发明的优选实施例进行详细说明,在描述过程中省略了对于本发明来说是不必要的细节和功能,以防止对本发明的理解造成混淆。
图6A示出了根据本发明第一实施例的形成PDU的数据格式的一种示例;如图6A所示,在每个PDU的报头中设置了一个OFFSET字段和至少一个L1字段。OFFSET字段表示PDU中出现的第一个新SDU的第一段的偏移,每个RLC PDU有且只有一个OFFSET字段,如果一个SDU的第一分段恰好紧邻在L1字段之后,这将该OFFSET字段的值设置为0。此外,L1字段表示新SDU的总长度,如果在该PDU中有多个新SDU,则有多个L1字段。这里L1字段的长度是2个字节,OFFSET字段的长度是2个字节。
设置OFFSET字段的原因在于,当接收端,如UE发现一个PDU丢失,它可以根据OFFSET字段找到下一个新SDU的起始位置,否则如果没有OFFSET字段,接收端无法再找到完整的SDU的起始位置。
另外,在RLC PDU中有两个或者一个字节未充满的情况下,必须将下一RLC SDU的相应数目字节的数据填充到前一RLC PDU中,而不是将L1填充到前一RLC PDU中,从而保持一个SDU仅仅有一个LI。图6B示出了这样的一个例子。
图7示出了根据本发明第一实施例的生成PDU的设备的功能框图。如图7所示,设备100包括分割部分110,偏移计算部分120和设置部分130。
分割部分100接收外部输入的RCL SDU,按照RLC PDU的约定长度来分割接收的RLC SDU,以形成不同PDU的数据体。偏移计算部分120计算要填充在PDU中的各个新SDU分段的偏移位置,例如在数据传输流中的位置号。设置部分130将偏移计算部分120所计算的位置号写入到OFFSET字段中,并且在LI字段中写入相应的SDU的长度。
另外,在当前的RLC PDU中有两个或者一个字节未充满的情况下,将下一RLC SDU的相应数目字节(即未充满的字节数目)的数据填充到当前的RLC PDU中,而不是将下一RLC PDU的LI字段填充到当前RLC PDU字段的尾部。
图8A示出了根据本发明第二实施例的形成PDU的数据格式的一种示例。如图8A所示,根据本发明第二实施例的PDU数据格式的报头中包括了LI字段,而不包括OFFSET字段,但是这里的LI字段中的值表示在一个PDU中SDU的结束位置,也就是SDU的最后一个分段的长度。
如果最后一个SDU分段的长度比RLC PDU中的空闲空间小一个字节,也将下一RLC SDU的前一字节填充到该RLC PDU的尾部,如图8B所示。此时,该SDU分段的LI需要填充在后一个RLC PDU中,在另外一种情况下,即最后一个SDU分段的长度等于RLC PDU中的空闲空间,也需要将该SDU分段的LI值填充在后一个RLC PDU中。并且,这个LI值用保留的取值填到LI字段中。
下表给出了一些特殊情况下的特殊LI的保留值以及含义。
比特 | 描述 |
0000,0000,0000,000 | 前一RLC PDU被RLC SDU的最后一段正好填满,并且在前一RLC PDU中不存在指示RLCSDU的结束位置的LI。 |
0100,0000,0000,000 | RLC SDU的最后一段是正好充满前一RLCPDU,但多出一个字节,并且在前一RLC PDU中不存在指示RLC SDU的结束位置的LI。在前一RLC PDU中剩余的那个字节是下一RLCPDU的第一字节。 |
1000,0000,0000,000 | RLC SDU的最后一段是正好充满前一RLCPDU,但多出一个字节,并且在前一RLC PDU中不存在指示RLC SDU的结束位置的LI。在前一RLC PDU中剩余的那个字节被忽略。 |
1100,0000,0000,000 | 当前RLC PDU的剩下的字段为填充字节(padding)。 |
图9示出了根据本发明第二实施例的生成PDU的设备的功能框图。如图9所示,设备200包括分割部分210,计算部分220和设置部分230。
分割部分200接收外部输入的RCL SDU,按照RLC PDU的约定长度来划分接收的RLC SDU,以形成不同PDU的数据体。计算部分220计算当前SDU所分割的各个分段中最后一个分段的长度。设置部分130将计算部分220所计算的长度插入到LI字段中。
现在,根据本发明第二实施例,图10A和图10B示出了在两个分组丢失的字节长度不同分布的同步恢复示意图。基于图3所示,在S1接口丢失了两个分组(SN=i,i+1)。当eNB接收到序号SN=i+3的分组时,它知道前面的两个分组已经丢失。但是eNB仅仅知道2个分组丢失,分组的总长度是600字节,并不知道600字节在丢失的两个分组中的长度分布。
图10A示出了两个丢失分组的字节长度的一种分布。如图10A所示,丢失的两个分组一个是400字节,另一个是200字节,并且一共被划分成了三段,但只有在后一个的PDU中有LI来指示。例如在前一PDU中,一个LI指示源自序号SN=i的SDU的296个字节,而源自序号SN=i+1的SDU的300个字节根据本发明第二实施例的原则是非第一个分段没有LI。在后一PDU中,两个LI分别指示源自序号SN=i+1的SDU的100个字节,源自序号SN=i+2的SDU的200个字节,源自序号SN=i+3的SDU的294个字节根据本发明第二实施例的原则是非第一个分段没有LI。这样在这两个RLC PDU中填充的包括SN,LI的总RLC头的字节数为:
4字节SN+6字节LI=10字节。
如果按照上述的方式进行恢复,则下一PDU的起始字节将是:
(1200-10-296-600)字节+997-1=1290。
图10B示出了两个丢失分组的字节长度的另一种分布。如图10B所示,丢失的两个分组一个是298字节,另一个是302字节,并且各自为一个分段,总共形成了两段,在不同的PDU中分别由各自的LI来指示。例如在前一PDU中,两个LI分别指示源自序号SN=i的SDU的296个字节,和源自序号SN=i+1的SDU的298个字节。在后一PDU中,两个LI分别指示源自序号SN=i+2的SDU的302个字节,源自序号SN=i+3的SDU的294个字节根据本发明第二实施例的原则是非第一个分段没有LI。这样在这两个RLC PDU中填充的包括SN,LI的总RLC头的字节数为:
4字节SN+6字节LI=10字节。
如果按照上述的方式进行恢复,则下一PDU的起始字节将是:
(1200-10-296-600)字节+997-1=1290。
从上面的例子中可以看出,不管恢复的序号SN=i+1和序号SN=i+2的RLC SDU所划分的段数如何分布,由于遵循了“每个SDU一个LI”的原则,也就是说只会出现两个LI,因此在恢复出4byte LI+600bytes data后都会保持RLC PDU内容的同步。
除了应用于多播(MBMS)传输之外,本发明也可以应用于LTE的单播(unicast)传输,此时,针对单播传输的RLC PDU格式与第一实施例和第二实施例的方法和设备所生成的服务数据单元的格式一致,但不需要考虑数据包恢复。
因此,根据本发明,在组成RLC PDU的过程中,为各个SDU的一个分段设置LI,使得即便SDU被分割成多个SDU分段放到多个PDU中,每个SDU也只有一个LI。如果长度指示LI放在SDU的第一个分段之前,在每个PDU的报头中设置了一个OFFSET字段和至少一个LI字段,OFFSET字段表示PDU中出现的第一个新SDU的第一段的偏移,LI字段表示新SDU的总长度。如果长度指示LI放在SDU的最后一个分段之前,在每个PDU的报头中设置了至少一个LI字段,LI字段表示最后一个SDU分段的长度。
至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。