一种发送数据包的方法及装置
技术领域
本发明涉及通信技术领域,特别涉及一种发送数据包的方法及装置。
背景技术
对于车联网的各种use case(用例)中,有的use case要求的数据传输时延是20ms,有的是100ms或者160ms。
由于D2D(Device to Device,设备对设备)技术中的D2D discovery(D2D发现)提供的发送周期是320ms,D2D communication的调度周期是40ms。那么,即使后续将TTI(Transmission Time Interval,传输时间间隔)缩减为当前的一半,所有的周期降为一半,考虑到传输时延,调度时机等因素,也很难保证20ms内将数据发送到对端。
因此,现有技术的不足在于:如果采用D2D技术进行相关数据的传输,对于20ms低时延的情况,很难满足车联网的各种use case需求。
进一步的,目前也没有机制提供数据包的时延要求信息。
发明内容
本发明提供了一种发送数据包的方法及装置,用以满足各种时延数据传输的需要,以便按相应的时延要求将各种时延数据包传输到对端。
本发明实施例中提供了一种发送数据包的方法,包括:
在应用层产生数据包时,根据数据包产生原因确定该数据包发送时的时延要求;
在将数据包发往接入层时携带发送指示,所述发送指示是根据时延要求确定的;
在接入层根据所述发送指示以及根据当前资源情况,确定发送数据包的发送资源;
在所述发送资源上发送数据包。
较佳地,当前资源情况是当前的资源授权的情况。
较佳地,在根据所述发送指示确定该数据包发送的时延要求是低时延时:
根据当前的资源授权的情况,在当前有发送资源时,停止其他数据的发送,将当前有的发送资源确定为发送数据包的发送资源;
根据当前的资源授权的情况,在当前没有发送资源时,将用于广播的发送资源确定为发送数据包的发送资源,和/或将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源。
较佳地,将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源时,在所述发送资源上发送数据包时,在最近的发送资源上连续多次发送同一数据包,或在多个之前预留的D2D发送资源池中最近的发送资源上发送同一数据包。
较佳地,所述发送指示通过优先级信息来指示时延要求。
较佳地,在将数据包发往接入层时携带发送指示时,使用层间原语来携带,或使用预设的数据格式来携带。
本发明实施例中提供了一种发送数据包的装置,包括:
时延要求模块,用于在应用层产生数据包时,根据数据包产生原因确定该数据包发送时的时延要求;
指示模块,用于在将数据包发往接入层时携带发送指示,所述发送指示是根据时延要求确定的;
资源模块,用于在接入层根据所述发送指示以及根据当前资源情况,确定发送数据包的发送资源;
发送模块,用于在所述发送资源上发送数据包。
较佳地,资源模块进一步用于当前资源情况是当前的资源授权的情况。
较佳地,资源模块进一步用于在根据所述发送指示确定该数据包发送的时延要求是低时延时:根据当前的资源授权的情况,在当前有发送资源时,停止其他数据的发送,将当前有的发送资源确定为发送数据包的发送资源;根据当前的资源授权的情况,在当前没有发送资源时,将用于广播的发送资源确定为发送数据包的发送资源,和/或将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源。
较佳地,发送模块进一步用于将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源时,在所述发送资源上发送数据包时,在最近的发送资源上连续多次发送同一数据包,或在多个之前预留的D2D发送资源池中最近的发送资源上发送同一数据包。
较佳地,指示模块进一步用于所述发送指示通过优先级信息来指示时延要求。
较佳地,指示模块进一步用于在将数据包发往接入层时携带发送指示时,使用层间原语来携带,或使用预设的数据格式来携带。
本发明有益效果如下:
在本发明实施例提供的技术方案中,由于在产生数据包时便根据数据包产生原因确定了该数据包的时延要求,这样,在为该数据包分配发送资源时,便可以根据时延要求来安排与之相适应的发送资源,也即,将传输时延指示信息给底层,使得底层能够根据时延指示信息选择传输资源。显然,当确定该数据包是低时延要求时,便可以安排与该时延要求相适应的资源去发送,因此,采用本方案可以满足各种时延数据传输的需要,以便按相应的时延要求将各种时延数据包传输到对端。
进一步的,方案中还提供了在确定该数据包发送的时延要求是低时延时的资源分配方案。
进一步的,还提供了确保数据包发送可靠性的方案。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中车联网通信方式示意图;
图2为本发明实施例中D2D发现/通信示意图;
图3为本发明实施例中一个SCI周期内SCI和data的传输示意图;
图4为本发明实施例中发送数据包的方法实施流程示意图;
图5为本发明实施例中发送数据包的装置结构示意图;
图6为本发明实施例中基站结构示意图。
具体实施方式
下面结合附图对本发明的具体实施方式进行说明。
发明人在发明过程中注意到:
图1为车联网通信方式示意图,如图所示,在车联网中,V2X(vehicle to X,车对外界的信息交换)包括V2V(vehicle to vehicle,车对车的信息交换)、V2I(Vehicle-to-Infrastructure,车与基础设施的信息交换)、V2P(Vehicle-to-Pedestrian,车与人的信息交换)三种。
由于3GPP SA1(System Architecture,3GPP标准化组织中的***架构需求组)对V2I和V2P的use case和requirement(需求)还没有完全确定,这里只列出与V2V相关的内容。
SA1定义的V2V use case和requirement如表1所示:
表1 SA1定义的V2V use case和requirement
通过这些use case的时延要求可以看出,在pre-crash sensing warining的情况下,时延要求是20ms,并且要求高可靠传输。
对于紧急事件触发的消息,这些消息不是通常的100ms要求,而可能是50ms,甚至更短。在这些情况下,一方面要满足时延要求,另一方面也要保证可靠传输。
然而,现有的D2D通信机制并不能保证该低时延要求,也不能保证传输的可靠性,下面进行具体说明。
一、D2D接近服务
D2D,即终端直通技术,是指邻近的终端可以在近距离范围内通过直连链路进行数据传输的方式,不需要通过中心节点(即基站)进行转发,也不需要通过传统的蜂窝链路进行UE间的信息传输。
3GPP中,D2D接近服务包括以下两大类:
D2D发现:UE使用E-UTRA来确认另外一个UE在其附近。例如,D2D UE可以使用该服务来寻找附近的出租车、寻找在其附近的朋友等;
D2D通信:图2为D2D发现/通信示意图,如图所示,相互接近的UE,通过在两个UE之间直接建立链路,这样将原本通过网络传输的通信链路转化为本地的直接通信链路,节省了大量的带宽和网络效率;或者两个相互接近的UE,可以利用直接链路通信来获得稳定高速低廉的通信服务。接近服务通信一般是在网络侧控制或者辅助下进行的,eNB(evolvedNode Base Station,演进型基站)甚至可能会为进行接近服务通信的UE动态地分配资源。
为了便于描述,可以定义两种链路类型:
D2D链路:设备和设备之间直接进行通信的链路;
D2N(Device-to-Node,设备到节点)链路:设备和网络节点之间进行通信的链路。
此外,参与D2D发现/通信的UE分为两种角色:
D2D发送UE:即发送D2D发现/通信消息的UE;
D2D接收UE:即接收D2D发送UE发送的发现/通信消息的UE。
二、PC5接口D2D通信的传输方法
在Rel-12(Release-12,版本12)的D2D通信中,仅引入两种物理信道的定义:
SCI(Scheduling Control Information,调度控制信息),其用于传输D2D链路上的调度信令,接收端根据接收到的SCI中的信令指示,进行Data(数据)信道的检测;
Data信道,用于传输D2D链路上的数据,其传输的属性在SCI中指示。
图3为一个SCI周期内SCI和data的传输示意图,如图所示的SCI周期内,在SCI中承载的控制信令中,主要包含如下信息:
1、SA(Scheduling Assignment,调度分配)ID(8比特):
SA ID主要用于接收UE判断当前的传输的业务是否是自己需要接收的业务。
2、MCS(Modulation and Coding Scheme,调制编码方式)(5比特)
用于指示后续数据传输的MCS,其沿用现有的LTE(Long Term Evolution,长期演进)的MCS和TBS(Transport Block Size,传输块格式)的设计,在mode 1资源分配方法中,如果eNB通过高层信令配置了D2D数据传输MCS的等级,那么SCI中的MCS依据高层信令的配置获得;如果eNB没有配置数据传输的MCS的等级,那么UE自发的选择数据传输的MCS等级。
3、Hopping flag(跳频标志)和资源指示信息
比特)
在D2D通信中为了获得更好的覆盖范围,需要支持跳频的传输,从而获得频域分集增益。同时在Public Safety(公共安全)网络中需要支持多种业务类型,而不仅仅是VoIP(Voice over IP,基于IP的语音传输)业务,因此在Data的传输中没有划分频域子信道,而是采用灵活的资源指示的方法。在此基础上,DCI format(Downlink Control Informationformat,下行控制信令格式)0的跳频和资源指示信息可以完全的复用在SCI中。在Mode 1的资源分配方法中,Hopping Flag和资源指示信息是根据D2D grant(资源授权)中的信息直接得到的。
4、T-RPT(Time Repetition Patterns for Transmission,发送时间重复图样)指示(7比特)
通过***预定义或者高层配置的T-RPT index(索引)与具体pattern(模式)的对应关系,在SCI中指示Data传输的T-RPT pattern的index信息,从而接收端可以根据SCI中的T-RPT的指示接收数据。
Mode 1资源分配方法中,T-RPT指示的是连续的N个上行子帧中的T-RPT pattern,Mode 1中T-RPT信息是根据D2D grant中的指示信息直接获得的。
Mode 2资源分配方法中,T-RPT指示的是连续的N个D2D子帧中的T-RPT pattern,Mode 2中是依据D2D子帧进行确定。
5、TA(Timing Advance,时间提前量)(6比特)
这里TA主要用于指示Mode 1资源分配方法中,Data传输的定时的提前量。由于Mode 1的UE处于RRC(Radio Resource Control,无线资源控制)连接状态,一方面Mode 1的UE可以获得TA信息,另一方面通过与蜂窝上行PUSCH(Physical Uplink Shared Channel,物理上行链路共享信道)同步的传输方式,会降低对蜂窝PUSCH传输的干扰。
三、LTE D2D通信资源分配方式
D2D通信支持两种D2D发送资源分配方式:
1、UE自主选择资源的资源分配方式(Mode2):即UE自行从预配置或者网络广播的发送资源池中选择发送资源进行D2D发送的方式;
2、网络调度的资源分配方式(Mode1):即由网络根据UE上报的Sidelink(直通链路)BSR(Buffer state reporting,缓冲区上报)为UE分配资源的方式。
综上可见,目前D2D的设计无法满足V2V中最快20ms的传输时延要求,即使在未来将TTI缩减为一半,也不能保证数据可以在20ms内传输到对端。另外目前也没有区分不同的数据的不同时延要求。进一步的,目前也没有机制提供数据包的时延要求信息。
基于此,在本发明实施例提供了一种发送数据包的方法,用以满足低时延数据传输的需要,以便更快地将低时延数据包传输到对端。例如对于紧急事件触发的消息的传输,进一步的还用以保证可靠传输。
图4为发送数据包的方法实施流程示意图,如图所示,可以包括:
步骤401、在应用层产生数据包时,根据数据包产生原因确定该数据包发送时的时延要求;
步骤402、在将数据包发往接入层时携带发送指示,所述发送指示是根据时延要求确定的;
步骤403、在接入层根据所述发送指示以及根据当前资源情况,确定发送数据包的发送资源;
步骤404、在所述发送资源上发送数据包。
该方案可在V2V的终端上实施,实施中,应用层产生数据包,根据产生的原因(如根据use case的相关消息)的不同,确定时延信息,并将该信息发给接入层,如PDCP(PacketData Convergence Protocol,分组数据聚合协议)层。
实施中,当前资源情况可以是当前的grant(资源授权)的情况。
具体实施中,在根据所述发送指示确定该数据包发送的时延要求是低时延时:
根据当前的grant(资源授权)的情况,在当前有发送资源时,停止其他数据的发送,将当前有的发送资源确定为发送数据包的发送资源;
根据当前的grant(资源授权)的情况,在当前没有发送资源时,将用于广播的发送资源确定为发送数据包的发送资源,和/或将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源。
具体的,接入层可以根据上层携带的指示信息,根据当前的grant(资源授权)的情况,确定采用何种方式进行发送:
当当前有发送资源时(如mode 1方式获取的资源),可以停止其他数据的发送,提前调度低时延要求的数据包发送;
当当前没有发送资源时,直接从广播或者之前预留的D2D发送资源池中选择最近的发送资源进行发送。
具体实施中,为了提高数据传输的可靠性,数据包可以连续重复多次发送,也可以选择多个资源池进行相同数据发送。也即,在将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源时,可以在所述发送资源上发送数据包时,在最近的发送资源上连续多次发送同一数据包,或在多个之前预留的D2D发送资源池中最近的发送资源上发送同一数据包。
实施中,在将数据包发往接入层时携带发送指示时,可以使用层间原语来携带,或使用预设的数据格式来携带。
具体的,发送的时延信息可以使用层间原语来携带,也可以使用特定的数据格式来携带。时延信息的内容可以采用1比特来指示,例如,将该比特设置为1时,表示是低时延的数据包,设置为0时或者没有携带该比特,则表示为正常时延的数据包。也可以用多个预先设定长度的比特来表示,不同的取值,代表时延要求不同。
上述方案中,主要构思在于,应用层在下发数据包时携带该数据包的时延指示信息,接入层根据该指示信息,尽快选择资源发送出去。如果当前正好有因为其他数据申请的资源,则暂停其他数据发送,优先发送时延要求20ms的数据包。如果当前没有可用发送资源,则在广播或者预留的资源池中选择发送资源,尽快发送时延要求为20ms的数据包。并且,可以重复几次发送。为更好地理解,下面再以实例进行说明。
实施例1:
当一辆车发现要发生与另一辆车不可避免地碰撞时,即pre-crash sensingwarning的use case,此时会产生相关的告警消息。应用层将该告警消息附加上时延指示信息发送给低层。MAC(Media Access Control,媒体接入控制)层收到该数据包,以及时延指示信息后,查看当前是否存在授权的专用发送资源,该发送资源可能是因为其他数据而请求到的,如果存在,则终端使用该发送资源,优先调度该告警消息的数据包,并且可以连续重传多次。如果当前没有授权的专用发送资源,则从广播或者预配置的资源池中选择临近的发送资源进行该消息发送,可以连续发送多次。如果存在多个资源池,终端也可以选择在多个资源池上都选择发送资源进行发送。
实施例2:
低时延指示信息可以通过层间原语,进行携带。比如应用层将该数据发给PDCP时,单独指示该低时延指示信息,PDCP给RLC(Radio Link Control,无线链路控制),RLC发给MAC,都通过层间原语进行该指示信息的转发。MAC收到后,根据该指示信息,执行实施例1中的资源选择和发送过程。
实施例3:
本例中,发送指示是可以通过优先级信息来指示时延要求的。
该指示信息可以和优先级信息绑定。比如现在随着数据包传输的优先级指示为3个比特,当3个比特均为1时,表示是最低时延发送,那么当MAC收到该信息时,执行实施例1中的资源选择和发送过程。
实施例4:
该指示信息可以通过特殊的PDCP头结构来指示后面数据包部分的前1-多个比特为时延信息。比如:PDCP头中的SDU(Service Data Unit业务数据单元)type(类型)中增加一类:低时延数据。
那么可以根据PDCP头中的这个信息,获知该数据包为低时延数据包。在发送给底层时,单独指示其为低时延数据包,这里可以采用但不局限于使用特殊的RLC SDU格式以及MAC SDU格式。在相应的SDU格式中增加相应的域来指示相关的低时延信息。在MAC层调度传输时优先处理,并根据资源情况,选择合适的发送资源进行发送。
对于接收端,在收到此类型的PDCP数据包,可以根据包头的信息,优先发送给上层,尽快发出告警。
实施例5:
当应用层指示了该数据包为低时延数据包时,接入层按照下面的顺序原则进行资源选择:
有立刻可以使用的基站分配的专用发送资源,则优先使用该资源发送告警信息;
如果没有合适的专用发送资源池,则在广播或者预配置的资源池中进行选择
当存在多个资源池,终端可以选择最高优先级的资源池中的资源进行发送,也可以忽略这些资源池的优先级绑定关系,而是直接从中选择最近的发送资源进行发送;
如果sidelink接口上的信道质量不好,则选择多个资源池中的多个最近的发送资源进行相同数据包的发送,以提高接收成功率。如,在有4个资源池的情况下,可以选择2-4个资源池的资源进行发送。
基于同一发明构思,本发明实施例中还提供了一种发送数据包的装置,由于该装置解决问题的原理与一种发送数据包的方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
图5为发送数据包的装置结构示意图,如图所示,装置中可以包括:
时延要求模块501,用于在应用层产生数据包时,根据数据包产生原因确定该数据包发送时的时延要求;
指示模块502,用于在将数据包发往接入层时携带发送指示,所述发送指示是根据时延要求确定的;
资源模块503,用于在接入层根据所述发送指示以及根据当前资源情况,确定发送数据包的发送资源;
发送模块504,用于在所述发送资源上发送数据包。
实施中,资源模块还可以进一步用于当前资源情况是当前的资源授权的情况。
实施中,资源模块还可以进一步用于在根据所述发送指示确定该数据包发送的时延要求是低时延时:根据当前的资源授权的情况,在当前有发送资源时,停止其他数据的发送,将当前有的发送资源确定为发送数据包的发送资源;根据当前的资源授权的情况,在当前没有发送资源时,将用于广播的发送资源确定为发送数据包的发送资源,和/或将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源。
实施中,发送模块还可以进一步用于将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源时,在所述发送资源上发送数据包时,在最近的发送资源上连续多次发送同一数据包,或在多个之前预留的D2D发送资源池中最近的发送资源上发送同一数据包。
实施中,指示模块还可以进一步用于所述发送指示通过优先级信息来指示时延要求。
实施中,指示模块还可以进一步用于在将数据包发往接入层时携带发送指示时,使用层间原语来携带,或使用预设的数据格式来携带。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
在实施本发明实施例提供的技术方案时,可以按如下方式实施。
图6为基站结构示意图,如图所示,基站中包括:
处理器600,用于读取存储器620中的程序,执行下列过程:
在应用层产生数据包时,根据数据包产生原因确定该数据包发送时的时延要求;
在接入层根据所述发送指示以及根据当前资源情况,确定发送数据包的发送资源;
收发机610,用于在处理器600的控制下发送数据,执行下列过程:
在将数据包发往接入层时携带发送指示,所述发送指示是根据时延要求确定的;
在所述发送资源上发送数据包。
实施中,当前资源情况是当前的资源授权的情况。
实施中,在根据所述发送指示确定该数据包发送的时延要求是低时延时:
根据当前的资源授权的情况,在当前有发送资源时,停止其他数据的发送,将当前有的发送资源确定为发送数据包的发送资源;
根据当前的资源授权的情况,在当前没有发送资源时,将用于广播的发送资源确定为发送数据包的发送资源,和/或将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源。
实施中,将之前预留的D2D发送资源池中最近的发送资源确定为发送数据包的发送资源时,在所述发送资源上发送数据包时,在最近的发送资源上连续多次发送同一数据包,或在多个之前预留的D2D发送资源池中最近的发送资源上发送同一数据包。
实施中,所述发送指示通过优先级信息来指示时延要求。
实施中,在将数据包发往接入层时携带发送指示时,使用层间原语来携带,或使用预设的数据格式来携带。
其中,在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器600代表的一个或多个处理器和存储器620代表的存储器的各种电路链接在一起。总线架构还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机610可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器600负责管理总线架构和通常的处理,存储器620可以存储处理器600在执行操作时所使用的数据。
综上所述,在本发明实施例提供的技术方案中,在应用层生成的数据在发给底层传输时,携带该数据的时延指示信息。底层收到后,根据该指示信息进行资源选择和发送。具体的,是将传输时延指示信息给底层,使得底层能够根据时延指示信息选择传输资源。也因而可以使低时延要求的数据包尽快地发送给接收端。满足其低时延,高可靠的传输要求。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。