CN108632302B - 一种信息传输方法及装置 - Google Patents
一种信息传输方法及装置 Download PDFInfo
- Publication number
- CN108632302B CN108632302B CN201710155209.9A CN201710155209A CN108632302B CN 108632302 B CN108632302 B CN 108632302B CN 201710155209 A CN201710155209 A CN 201710155209A CN 108632302 B CN108632302 B CN 108632302B
- Authority
- CN
- China
- Prior art keywords
- sequence
- rlc
- rlc pdus
- pdu
- arrangement
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9057—Arrangements for supporting packet reassembly or resequencing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/324—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种信息传输方法及装置,所述方法包括:接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
Description
技术领域
本发明涉及通信领域中的信息传输技术,尤其涉及一种信息传输方法及装置。
背景技术
5G无线网络无线链路控制协议(RLC,Radio Link Control)协议中规定RLC层具备两种数据包递交方式:按照从底层(媒体访问控制MAC层)接收的先后顺序递交给分组数据汇聚协议(PDCP,Packet Data Convergence Protocol)层;完整的数据包PDCP协议数据单元(PDU)可以乱序递交给PDCP。但是,这种处理方式可能会导致PDCP层的处理负荷较大,并且降低PDCP的处理效率。
发明内容
本发明的主要目的在于提出一种信息传输方法及装置,旨在解决现有技术中存在的上述问题。
为实现上述目的,本发明提供一种信息传输方法,包括:
接收媒体访问控制(MAC,Media Access Control)层发来的MAC层协议PDU,从所述MAC层PDU中提取其包含的RLCPDU;
当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;
基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
本发明提供一种信息传输装置,所述装置包括:
接收单元,用于接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的RLC PDU;
排序单元,用于当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;
传输单元,用于基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
本发明提出的一种信息传输方法及装置,在将MAC层传递的PDU发送给PDCP层之前,能够对多个RLC PDU进行排序,基于排序向PDCP传输RLC PDU中包含的数据包。如此,就能够提前对要传输给PDCP层的数据包进行排序,从而降低PDCP层的处理负担,保证PDCP层的处理效率。
附图说明
图1为本发明实施例配置方法流程示意图1;
图2为本发明实施例处理场景示意图1;
图3为本发明实施例处理场景示意图2;
图4为本发明实施例排序处理示意图1;
图5为本发明实施例排序处理示意图2;
图6为本发明实施例排序处理示意图3;
图7为本发明实施例装置组成结构示意图;
图8为本发明实施例装置的一种硬件组成结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细说明。
实施例一、
本发明实施例提供一种信息传输方法,如图1所示,包括:
步骤101:接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的RLC PDU;
步骤102:当所述全部RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定所述各个RLC PDU的排列顺序;
步骤103:基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
这里,需要指出的是,关于本实施例提供的应用于能够执行以下功能的装置中,比如,可以执行:连接控制;分段/重组(就是将长度不同的高层PDU分组进行分段(发送端)重组(接收端)为较小的RLC负荷单元(SDU,即服务数据单元));级联;填充;错误纠正,在确认模式下通过重传来纠正错误;高层PDU的发送;流量控制等等。比如,具体可以为能够执行RLC层的所有功能的实体,可以理解的是,执行本实施例的功能的装置可能会具备其他功能,只是这里不进行穷举。
下面分别针对从一个MAC层PDU中包含的RLC PDU的数量不同的情况进行说明:
场景一、当一个MAC层PDU中仅包含一个RLC PDU时的处理方式:
步骤101中,从所述MAC层PDU中提取其包含的RLC PDU之后,还可以包括有:当提取到的所述RLC PDU的数量为1时,直接将所述RLC PDU发送至PDCP层。
比如,当一个MAC PDU中只包含一个RLC PDU时,如图2所示,一个MAC PDU中只包含一个RLC PDU。
MAC解析图2所示的MAC PDU,把MAC SDU,即RLC PDU直接地交给RLC。RLC收到该RLCPDU后,取出相应的RLC SN号,记录该序列号(SN),并把RLC SDU即PDCP PDU地交给PDCP。
场景二、当一个MAC层PDU中仅包含多于1个RLCPDU时的处理方式,可以有以下两种:
处理方式一、在执行RLC层的功能的时候,基于所述排列顺序将各个RLC PDU进行排序,将排序后的各个RLC PDU中包含的数据包传输至所述PDCP层。
具体来说,当一个MAC PDU中包含多于一个RLC PDU时,如图3所示,一个MAC PDU中包含多于一个RLC PDU,比如图中包含有4个RLC PDU。
MAC解析图3所示的MAC PDU,把MAC SDU,即RLC PDU直接地交给RLC。RLC收到多个RLC PDU后,取出相应的RLC SN号,记录该SN,并按照SN号的先后顺序把RLC PDU中包含的数据包,具体来说,RLC PDU中包含的数据包为RLC SDU即PDCP PDU交给PDCP。
处理方式二、仅将针对缓存地址的指针按照排列顺序发送给PDCP层,然后被动的根据PDCP的获取请求发送RLC PDU。具体来说:
所述从所述MAC层PDU中提取其包含的RLC PDU之后,所述方法还包括:缓存所述RLC PDU,获取各个RLC PDU对应的缓存地址;
相应的,所述基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层,包括:
将指向各个RLC PDU的缓存地址的指针信息,按照所述排列顺序发送至PDCP层;根据所述PDCP层发来的获取请求,传输各个RLC PDU中包含的数据包至所述PDCP层。
其中,缓存的位置可以为,将一个MAC PDU中包含的多个RLC PDU缓存在RLC对应的缓存中;或者,还可以为,将一个MAC PDU中包含的多个RLC PDU缓存在RLC以及PDCP层共同使用的缓存中。
采用本处理方式,处理RLC排序顺序时,不需要把PDCP PDU按照顺序进行拷贝,只需移动相应的指针即可。如果PDCP/RLC为共享buffer,如图4所示,只需要按照上述顺序把PDCP PDU缓存的指针发送给PDCP即可。
如果PDCP/RLC之间需要进行数据搬移,如图5所示,RLC只需在组给PDCP数据搬移消息时,把消息体静负荷的位置偏移按照上述顺序在消息头中填写好即可。总之,采用本处理方式,不需要对PDCP PDU数据包本身进行排序,只需按照SN号的先后顺序把存储数据包的地址指针地交给PDCP即可。
进一步地,需要指出关于如何排序RLC PDU的方式可以包括:
所述基于所述序列号确定各个RLC PDU的排列顺序,包括:
基于第一预设门限值,确定所述全部RLC PDU中各个RLC PDU的排列顺序;
或,
基于相邻两个RLC PDU对应的序列号的差值、以及第二预设门限值,确定所述全部RLC PDU中各个RLC PDU的排列顺序。
所述序列号的最大序列号以及最小序列号可以与所述序列号的长度相关,在通信***中,通常采用0、1构成某种信息或标识号,比如,当序列号(SN)的长度为8时,其最大表示的序列号可以为2的8次方,即最大序列号可以为255,最小序列号为0。
具体来说,基于第一预设门限值,确定所述全部RLC PDU中各个RLC PDU的排列顺序,的具体处理方式包括:
从所述全部RLC PDU中选取序列号大于第一预设门限值的N个RLC PDU,将所述N个RLC PDU按照所述序列号的先后顺序进行排列,得到所述N个RLC PDU对应的第一排列顺序;其中,所述第一预设门限值与所述序列号能够包含的最小序列号以及最大序列号相关;
从所述全部RLC PDU中选取序列号小于第一预设门限值的M个RLC PDU,将所述M个RLC PDU按照所述序列号的先后顺序进行排列,得到所述M个RLC PDU对应的第二排列顺序;其中,M和N均为整数,且M+N等于全部RLC PDU的数量;
将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序。
需要指出的是,上述第一预设门限值可以根据实际情况进行设置,比如,可以设置的接近最大序列号,设置为比最大序列号小一定数值,(比如可以设置为比最大序列号小10);当最大序列号为255时,可以将第一预设门限值设置为245。
另外,将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序的方式可以为:将第一排列顺序排列在第二排列顺序之前,组合得到排列顺序。
比如,可以为:当多个RLC PDU中的序列号有接近最大序列号的N个RLC PDU时,可以首选排序这N个RLC PDU,具体的排序方式可以有小到大进行排序得到第一排列顺序;然后再排序剩余的多个RLC PDU的序列,剩余部分的RLC PDU也采用有小到大的顺序进行排列得到第二排列顺序;最后将第一排列顺序中的N个RLC PDU排列在第二排列顺序的多个RLCPDU之前,得到最终的排列顺序。
关于本实施例中,把乱序数据包进行顺序处理的过程中,可以参照以下规则:
只按照RLC SN号的先后顺序进行排序,因为SN是循环数值,不能按照SN的大小进行排序;
按照顺序排序好后,SN可以不连续,只要SN是按照先后顺序即完成后排序;
在排序过程中,RLC不需要缓RLC SDU,也不需要等待缺失的RLC SN,只需要满足先后顺序后就可以地交给PDCP,如此不会在RLC增加除去正常解析数据包之外额外的处理时延和额外的负荷。
如图6所示,假设RLC SN号的长度为8比特,则SN按照0~255循环,假设MAC SDU中的RLC SN为255,3,7,4。MAC按照上述顺序把RLC PDU地交给RLC,因为按照RLC SN号循环原则,SN为255的RLC PDU可以认为包含为前一部分的数据内容,因此在先后顺序上早于3,因此RLC将得到的4个RLC PDU按照255,3,4,7的顺序进行排列,然后把排序后的RLC PDU交给PDCP。
进一步地,基于图6所示的场景,假设第一预设门限值设置为200,那么很明显需要首先提取SN为255的RLC PDU,将该RLC PDU放在第一排列顺序;然后对SN小于200的3个RLCPDU,按照SN的大小顺序进行排列得到第二排列顺序;最后,将第一排列顺序放在第二排列顺序之前,得到最后的排列顺序,也就是255-3-4-7。
或者,进行数据包的排序的具体处理方式,还可以采用另一种排序方式,基于预设规则,确定所述全部RLC PDU中各个RLC PDU的排列顺序,包括:
获取相邻两个RLC PDU的序列号之间的差值,判断所述差值是否大于第二预设门限值;
若确定相邻两个RLC PDU的序列号之间的差值大于第二预设门限值时,基于所述相邻两个RLC PDU确定排序分界位置;
将位于排序分界位置之前的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第三排列顺序;将位于排序分别位置之后的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第四排列顺序;
将第三排列顺序以及第四排列顺序进行组合得到所述排列顺序。
其中第二预设门限值也可以根据实际情况进行设置,比如,通常一个MAC数据包中能够包含的RLC PDU的数量也是有限的,并且乱序的情况不会非常严重,因此,可以基于两个相邻的RLC PDU之间的序列号差值来确定哪些是前一次序列号循环中设置的序列号,哪些是本次序列号循环使用时设置的序列号;另外,第二预设门限值的设置还可以与序列号能够包含的最大序列号相关,比如,可以为比最大序列号小50,比如,最大序列号为255时,那么第二预设门限值可以为205,也就是说,当检测到相邻的两个数据包的序列号中存在的差值大于205,那么就可以将两个数据包之间作为分界位置,对该分界位置之前的数据包(RLC PDU)进行排序,得到第三排列顺序;对该分界位置之后的数据包进行排序,得到第四排列顺序;再将两个排列顺序组合得到总的排列顺序。
同样可以以图4为例,图中RLC层得到的数据包中前一个RLC PDU的序列号为255,其相邻的后一个RLC PDU的序列号为3;255-3=252,很明显该差值较大,大于第二预设门限值(比如,第二预设门限值为245);那么确定第一个SN为255的数据包与第二个SN为3的数据包之间设置一个分界位置;将分界位置之前的SN为255的RLC PDU排列在第三排列顺序(由于在分界位置之前只有一个数据包因此直接将第三排列顺序对应一个数据包即可);将序列号为3及其之后的两个数据包进行按序排列,得到3→4→7,的第四排列顺序;将第三排列顺序放在第四排列顺序之前,得到255→3→4→7的最终排列顺序。
可见,通过采用上述方案,在将MAC层传递的PDU发送给PDCP层之前,能够对多个RLC PDU进行排序,基于排序向PDCP传输RLC PDU中包含的PDCP PDU。如此,就能够提前对PDCP PDU进行排序,从而降低PDCP层的处理负担,保证PDCP层的处理效率。
实施例二、
本发明实施例提供一种信息传输装置,如图7所示,包括:
接收单元71,用于接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;
排序单元72,用于当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;
传输单元73,用于基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
这里,需要指出的是,关于本实施例提供的应用于能够执行以下功能的装置中,比如,可以执行:连接控制;分段/重组(就是将长度不同的高层PDU分组进行分段(发送端)重组(接收端)为较小的RLC负荷单元(SDU));级联;填充;错误纠正,在确认模式下通过重传来纠正错误;高层PDU的发送;流量控制等等。比如,具体可以为能够执行RLC层的所有功能的实体,可以理解的是,执行本实施例的功能的装置可能会具备其他功能,只是这里不进行穷举。
下面分别针对从一个MAC层PDU中包含的RLC PDU的数量不同的情况进行说明:
场景一、当一个MAC层PDU中仅包含一个RLCPDU时的处理方式:
传输单元,用于当提取到的所述RLC PDU的数量为1时,直接将所述RLC PDU发送至PDCP层。
比如,当一个MAC PDU中只包含一个RLC PDU时,如图2所示,一个MAC PDU中只包含一个RLC PDU。
MAC解析图2所示的MAC PDU,把MAC SDU,即RLC PDU直接地交给RLC。RLC收到该RLCPDU后,取出相应的RLC SN号,记录该SN,并把RLC SDU即PDCP PDU地交给PDCP。
场景二、当一个MAC层PDU中仅包含多于1个RLCPDU时的处理方式,可以有以下两种:
处理方式一、所述排序单元,用于在执行RLC层的功能的时候,基于所述排列顺序将各个RLC PDU进行排序,将排序后的各个RLC PDU中包含的数据包传输至所述PDCP层。
具体来说,当一个MAC PDU中包含多于一个RLC PDU时,如图3所示,一个MAC PDU中包含多于一个RLC PDU,比如图中包含有4个RLC PDU。
MAC解析图3所示的MAC PDU,把MAC SDU,即RLC PDU直接地交给RLC。RLC收到多个RLC PDU后,取出相应的RLC SN号,记录该SN,并按照SN号的先后顺序把这些RLC SDU即PDCPPDU地交给PDCP。
处理方式二、仅将针对缓存地址的指针按照排列顺序发送给PDCP层,然后被动的根据PDCP的获取请求发送RLC PDU。具体来说:
所述装置还包括:
缓存单元74,用于缓存所述RLC PDU,获取各个RLC PDU对应的缓存地址;
相应的,所述排序单元73,用于将指向各个RLC PDU的缓存地址的指针信息,按照所述排列顺序发送至PDCP层;根据所述PDCP层发来的获取请求,传输各个RLC PDU中包含的数据包至所述PDCP层。
其中,缓存的位置可以为,将一个MAC PDU中包含的多个RLC PDU缓存在RLC对应的缓存中;或者,还可以为,将一个MAC PDU中包含的多个RLC PDU缓存在RLC以及PDCP层共同使用的缓存中。
采用本处理方式,处理RLC排序顺序时,不需要把PDCP PDU按照顺序进行拷贝。只需移动相应的指针即可。如果PDCP/RLC为共享buffer,如图4所示,只需要按照上述顺序把PDCP PDU缓存的指针发送给PDCP即可。
如果PDCP/RLC之间需要进行数据搬移,如图5所示,RLC只需在组给PDCP数据搬移消息时,把消息体静负荷的位置偏移按照上述顺序在消息头中填写好即可。总之,采用本处理方式,不需要对PDCP PDU数据包本身进行排序,只需按照SN号的先后顺序把存储数据包的地址指针地交给PDCP即可。
进一步地,需要指出关于如何排序RLC PDU的方式可以包括:
所述排序单元,用于基于第一预设门限值,确定所述全部RLC PDU中各个RLC PDU的排列顺序;
或,
基于相邻两个RLC PDU对应的序列号的差值、以及第二预设门限值,确定所述全部RLC PDU中各个RLC PDU的排列顺序。
其中,所述序列号的最大序列号以及最小序列号可以与所述序列号的长度相关,在通信***中,通常采用0、1构成某种信息或标识号,比如,当序列号(SN)的长度为8时,其最大表示的序列号可以为2的8次方,即最大序列号可以为255,最小序列号为0;
相应的,所述排序单元,用于从所述全部RLC PDU中选取序列号大于第一预设门限值的N个RLC PDU,将所述N个RLC PDU按照所述序列号的先后顺序进行排列,得到所述N个RLC PDU对应的第一排列顺序;其中,所述第一预设门限值与所述序列号能够包含的最小序列号以及最大序列号相关;
从所述全部RLC PDU中选取序列号小于第一预设门限值的M个RLC PDU,将所述M个RLC PDU按照所述序列号的先后顺序进行排列,得到所述M个RLC PDU对应的第二排列顺序;其中,M和N均为整数,且M+N等于全部RLC PDU的数量;
将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序。
需要指出的是,上述第一预设门限值可以根据实际情况进行设置,比如,可以设置的接近最大序列号,设置为比最大序列号小L;当最大序列号为255时,可以将第一预设门限值设置为100。
另外,将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序的方式可以为:将第一排列顺序排列在第二排列顺序之前,组合得到排列顺序。
比如,可以为:当多个RLC PDU中的序列号有接近最大序列号的N个RLC PDU时,可以首选排序这N个RLC PDU,具体的排序方式可以有小到大进行排序得到第一排列顺序;然后再排序剩余的多个RLC PDU的序列,剩余部分的RLC PDU也采用有小到大的顺序进行排列得到第二排列顺序;最后将第一排列顺序中的N个RLC PDU排列在第二排列顺序的多个RLCPDU之前,得到最终的排列顺序。
关于本实施例中,把乱序数据包进行顺序处理的过程中,可以参照以下规则:
只按照RLC SN号的先后顺序进行排序,因为SN是循环数值,不能按照SN的大小进行排序;
按照顺序排序好后,SN可以不连续,只要SN是按照先后顺序即完成后排序;
在排序过程中,RLC不需要缓RLC SDU,也不需要等待缺失的RLC SN,只需要满足先后顺序后就可以地交给PDCP,如此不会在RLC增加除去正常解析数据包之外额外的处理时延和额外的负荷。
如图6所示,假设RLC SN号的长度为8比特,则SN按照0~255循环,假设MAC SDU中的RLC SN为255,3,7,4。MAC按照上述顺序把RLC PDU地交给RLC,因为按照RLC SN号循环原则,SN为255的RLC PDU可以认为包含为前一部分的数据内容,因此在先后顺序上早于3,因此RLC将得到的4个RLC PDU按照255,3,4,7的顺序进行排列,然后把排序后的RLC PDU交给PDCP。
进一步地,基于图6所示的场景,假设第一预设门限值设置为200,那么很明显需要首先提取SN为255的RLC PDU,将该RLC PDU放在第一排列顺序;然后对SN小于200的3个RLCPDU,按照SN的大小顺序进行排列得到第二排列顺序;最后,将第一排列顺序放在第二排列顺序之前,得到最后的排列顺序,也就是255-3-4-7。
所述排序单元,用于获取相邻两个RLC PDU的序列号之间的差值,判断所述差值是否大于第二预设门限值;
若确定相邻两个RLC PDU的序列号之间的差值大于第二预设门限值时,基于所述相邻两个RLC PDU确定排序分界位置;
将位于排序分界位置之前的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第三排列顺序;将位于排序分别位置之后的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第四排列顺序;
将第三排列顺序以及第四排列顺序进行组合得到所述排列顺序。
其中第二预设门限值也可以根据实际情况进行设置,比如,通常一个MAC数据包中能够包含的RLC PDU的数量也是有限的,并且乱序的情况不会非常严重,因此,可以基于两个相邻的RLC PDU之间的序列号差值来确定哪些是前一次序列号循环中设置的序列号,哪些是本次序列号循环使用时设置的序列号;另外,可以将第二预设门限值的设置还可以与序列号能够包含的最大序列号相关,比如,可以为比最大序列号小50,比如,最大序列号为255时,那么第二预设门限值可以为205,也就是说,当检测到相邻的两个数据包的序列号中存在的差值大于205,那么就可以将两个数据包之间作为分界位置,该分界位置之前的数据包进行排序,得到第三排列顺序;该分界位置之后的数据包进行排序,得到第四排列顺序;再将两个排列顺序组合得到总的排列顺序。
同样可以以图4为例,图中RLC层得到的数据包中前一个RLC PDU的序列号为255,其相邻的后一个RLC PDU的序列号为3;255-3=252,很明显该差值较大,大于第二预设门限值(比如,为245);那么确定第一个SN为255的数据包与第二个SN为3的数据包之间设置一个分界位置;将分界位置之前的SN为255的RLC PDU排列在第三排列顺序(由于在分界位置之前只有一个数据包因此直接将第三排列顺序对应一个数据包即可);将序列号为3及其之后的两个数据包进行按序排列,得到3→4→7,的第四排列顺序;将第三排列顺序放在第四排列顺序之前,得到255→3→4→7的最终排列顺序。
可见,通过采用上述方案,在将MAC层传递的PDU发送给PDCP层之前,能够对多个RLC PDU进行排序,基于排序向PDCP传输RLC PDU中包含的PDCP PDU。如此,就能够提前对PDCP PDU进行排序,从而降低PDCP层的处理负担,保证PDCP层的处理效率。
进一步地,在前述实施例的基础之上,本发明实施例还可以提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令包括:
接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;
当所述全部RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定所述各个RLC PDU的排列顺序;
基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
这里,所述计算机存储介质可以用于网络侧的装置,比如,可以直接设置与网络侧的装置中,或者可以通过无线或有线的方式连接到网络侧的装置。
所述计算机可执行指令还包括:
将指向各个RLC PDU的缓存地址的指针信息,按照所述排列顺序发送至PDCP层;根据所述PDCP层发来的获取请求,传输各个RLC PDU中包含的数据包至所述PDCP层。
所述计算机可执行指令还包括:基于所述排列顺序将各个RLC PDU进行排序,将排序后的各个RLC PDU中包含的数据包传输至所述PDCP层。
所述计算机可执行指令还包括:至少基于所述序列号能够包含的最小序列号以及最大序列号,确定所述全部RLC PDU中各个RLC PDU的排列顺序。
所述计算机可执行指令还包括:从所述全部RLC PDU中选取序列号大于第一预设门限值的N个RLC PDU,将所述N个RLC PDU按照所述序列号的先后顺序进行排列,得到所述N个RLC PDU对应的第一排列顺序;其中,所述第一预设门限值与所述序列号能够包含的最小序列号以及最大序列号相关;从所述全部RLC PDU中选取序列号不大于第一预设门限值的M个RLC PDU,将所述M个RLC PDU按照所述序列号的先后顺序进行排列,得到所述M个RLC PDU对应的第二排列顺序;其中,M和N均为整数,且M+N等于全部RLC PDU的数量;将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序。
另外,本实施例还可以提供一种信息传输装置,其硬件组成实体可以参见图8所示,包括处理器、存储介质以及外部通信接口;其中,
存储介质,配置为存储计算机可执行指令;
处理器,配置为执行存储在所述存储介质上的计算机可执行指令,所述计算机可执行指令包括:接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;
当所述全部RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定所述各个RLC PDU的排列顺序;
基于所述排列顺序,将所述各个RLC PDU中包含的数据包传输至PDCP层。
上述处理器所配置的执行存储在所述存储介质上的计算机可执行指令中,还可以包括前述计算机存储介质中包含的其他指令,这里不再进行赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,装置,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种信息传输方法,其特征在于,所述方法包括:
接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;缓存所述RLC PDU,获取各个RLC PDU对应的缓存地址;
当所述RLC PDU的数量为1时,直接将所述RLC PDU中包含的数据包发送至分组数据汇聚协议PDCP层;
当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;其中,基于所述序列号确定各个RLC PDU的排列顺序包括:按照RLCPDU序列号完成排序,按照顺序排序好后的RLC PDU的序列号包括不连续的情况,且RLC不需要缓存RLC SDU,不需要等待缺失的RLC PDU序列号;
将指向各个RLC PDU的缓存地址的指针信息,按照所述排列顺序发送至PDCP层;
根据所述PDCP层发来的获取请求,传输各个RLC PDU中包含的数据包至所述PDCP层。
2.根据权利要求1所述的方法,其特征在于,所述基于所述序列号确定各个RLC PDU的排列顺序,包括:
基于第一预设门限值,确定全部RLC PDU中各个RLC PDU的排列顺序;
或,
基于相邻两个RLC PDU对应的序列号的差值、以及第二预设门限值,确定全部RLC PDU中各个RLC PDU的排列顺序。
3.根据权利要求2所述的方法,其特征在于,所述基于第一预设门限值,确定全部RLCPDU中各个RLC PDU的排列顺序,包括:
从所述全部RLC PDU中选取序列号大于第一预设门限值的N个RLC PDU,将所述N个RLCPDU按照所述序列号的先后顺序进行排列,得到所述N个RLC PDU对应的第一排列顺序;其中,所述第一预设门限值与所述序列号能够包含的最小序列号以及最大序列号相关;
从所述全部RLC PDU中选取序列号不大于第一预设门限值的M个RLC PDU,将所述M个RLC PDU按照所述序列号的先后顺序进行排列,得到所述M个RLC PDU对应的第二排列顺序;其中,M和N均为整数,且M+N等于全部RLC PDU的数量;
将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序。
4.根据权利要求2所述的方法,其特征在于,所述基于相邻两个RLC PDU对应的序列号的差值、以及第二预设门限值,确定全部RLC PDU中各个RLC PDU的排列顺序,包括:
获取相邻两个RLC PDU的序列号之间的差值,判断所述差值是否大于第二预设门限值;
若确定相邻两个RLC PDU的序列号之间的差值大于第二预设门限值时,基于所述相邻两个RLC PDU确定排序分界位置;
将位于排序分界位置之前的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第三排列顺序;将位于排序分别位置之后的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第四排列顺序;
将第三排列顺序以及第四排列顺序进行组合得到所述排列顺序。
5.一种信息传输装置,其特征在于,所述装置包括:
接收单元,用于接收媒体访问控制MAC层发来的MAC层协议数据单元PDU,从所述MAC层PDU中提取其包含的无线链路控制协议RLC PDU;
缓存单元,用于缓存所述RLC PDU,获取各个RLC PDU对应的缓存地址;
排序单元,用于当所述RLC PDU的数量为1时,直接将所述RLC PDU中包含的数据包发送至PDCP层;当所述RLC PDU的数量大于1时,获取每一个RLC PDU的序列号,基于所述序列号确定各个RLC PDU的排列顺序;其中,基于所述序列号确定各个RLC PDU的排列顺序包括:按照RLC PDU序列号完成排序,按照顺序排序好后的RLC PDU的序列号包括不连续的情况,且RLC不需要缓存RLC SDU,不需要等待缺失的RLC PDU序列号;
将指向各个RLC PDU的缓存地址的指针信息,按照所述排列顺序发送至PDCP层;根据所述PDCP层发来的获取请求,传输各个RLC PDU中包含的数据包至所述PDCP层。
6.根据权利要求5所述的装置,其特征在于,所述排序单元,用于基于第一预设门限值,确定全部RLC PDU中各个RLC PDU的排列顺序;
或,
基于相邻两个RLC PDU对应的序列号的差值、以及第二预设门限值,确定全部RLC PDU中各个RLC PDU的排列顺序。
7.根据权利要求6所述的装置,其特征在于,所述排序单元,用于从所述全部RLC PDU中选取序列号大于第一预设门限值的N个RLC PDU,将所述N个RLC PDU按照所述序列号的先后顺序进行排列,得到所述N个RLC PDU对应的第一排列顺序;其中,所述第一预设门限值与所述序列号能够包含的最小序列号以及最大序列号相关;从所述全部RLC PDU中选取序列号小于第一预设门限值的M个RLC PDU,将所述M个RLC PDU按照所述序列号的先后顺序进行排列,得到所述M个RLC PDU对应的第一排列顺序;其中,M和N均为整数,且M+N等于全部RLCPDU的数量;将所述第一排列顺序与第二排列顺序进行组合得到所述排列顺序。
8.根据权利要求6所述的装置,其特征在于,所述排序单元,用于获取相邻两个RLC PDU的序列号之间的差值,判断所述差值是否大于第二预设门限值;若确定相邻两个RLC PDU的序列号之间的差值大于第二预设门限值时,基于所述相邻两个RLC PDU确定排序分界位置;将位于排序分界位置之前的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第三排列顺序;将位于排序分别位置之后的至少一个RLC PDU,基于对应的序列号的先后顺序进行排序得到第四排列顺序;将第三排列顺序以及第四排列顺序进行组合得到所述排列顺序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710155209.9A CN108632302B (zh) | 2017-03-15 | 2017-03-15 | 一种信息传输方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710155209.9A CN108632302B (zh) | 2017-03-15 | 2017-03-15 | 一种信息传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108632302A CN108632302A (zh) | 2018-10-09 |
CN108632302B true CN108632302B (zh) | 2020-02-11 |
Family
ID=63686690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710155209.9A Active CN108632302B (zh) | 2017-03-15 | 2017-03-15 | 一种信息传输方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108632302B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111835457B (zh) * | 2019-08-09 | 2022-04-26 | 维沃移动通信有限公司 | 一种数据传输方法、接收设备及发送设备 |
WO2022178778A1 (zh) * | 2021-02-25 | 2022-09-01 | 华为技术有限公司 | 一种数据传输方法及通信装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030842A (zh) * | 2006-03-03 | 2007-09-05 | 华为技术有限公司 | 移动通信***中数据的重排方法及其装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120238208A1 (en) * | 2011-03-17 | 2012-09-20 | Maik Bienas | Mobile radio communication devices and servers |
US20150312697A1 (en) * | 2014-04-28 | 2015-10-29 | Intel IP Corporation | Dynamic declaration of conformity and certification for radio application distribution |
-
2017
- 2017-03-15 CN CN201710155209.9A patent/CN108632302B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101030842A (zh) * | 2006-03-03 | 2007-09-05 | 华为技术有限公司 | 移动通信***中数据的重排方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108632302A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11395184B2 (en) | Method and apparatus for receiving data packets | |
US8988994B2 (en) | System and method for creating logical radio link control (RLC) and medium access control (MAC) protocol data units (PDUs) in mobile communication system | |
US9838328B2 (en) | Radio communication apparatus | |
CN112153696B (zh) | Rlc sdu分段处理方法、装置及终端 | |
CN108632302B (zh) | 一种信息传输方法及装置 | |
CN104426638A (zh) | 一种数据递交方法和装置 | |
JP2023062123A (ja) | 無線通信装置、無線通信方法、及び無線通信システム | |
JP2009044695A (ja) | 通信制御方法、送信装置、およびコンピュータプログラム | |
US9794930B1 (en) | Method and apparatus for packet data unit processing for retransmission | |
US11917723B2 (en) | System and methods for transmitting protocol data units | |
EP2611093A1 (en) | Technique for handling memory resources of a memory buffer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |