CN112399477B - 一种通信方法及设备 - Google Patents
一种通信方法及设备 Download PDFInfo
- Publication number
- CN112399477B CN112399477B CN201910755315.XA CN201910755315A CN112399477B CN 112399477 B CN112399477 B CN 112399477B CN 201910755315 A CN201910755315 A CN 201910755315A CN 112399477 B CN112399477 B CN 112399477B
- Authority
- CN
- China
- Prior art keywords
- data packet
- compressed
- packet
- buffer
- pdcp layer
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 500
- 238000000034 method Methods 0.000 title claims abstract description 360
- 239000000872 buffer Substances 0.000 claims abstract description 337
- 230000011664 signaling Effects 0.000 claims abstract description 104
- 238000012545 processing Methods 0.000 claims description 139
- 230000006837 decompression Effects 0.000 claims description 127
- 230000015654 memory Effects 0.000 claims description 83
- 238000004590 computer program Methods 0.000 claims description 29
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 description 118
- 230000008569 process Effects 0.000 description 69
- 238000010586 diagram Methods 0.000 description 36
- 230000000694 effects Effects 0.000 description 31
- 238000013461 design Methods 0.000 description 30
- 238000007906 compression Methods 0.000 description 28
- 230000006835 compression Effects 0.000 description 28
- 238000012217 deletion Methods 0.000 description 22
- 230000037430 deletion Effects 0.000 description 22
- 238000005516 engineering process Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000013144 data compression Methods 0.000 description 8
- 238000007781 pre-processing Methods 0.000 description 6
- 230000008713 feedback mechanism Effects 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 5
- 230000007774 longterm Effects 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- 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/04—Protocols for data compression, e.g. ROHC
-
- 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/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本申请涉及一种通信方法及设备,第一设备删除第一数据包。所述第一设备向第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。即使第一设备删除了第一数据包,由于第一设备和第二设备的缓存的状态可以保持一致,因此第一设备也能对序列号位于第一数据包之后的压缩的第二数据包进行正确的解压缩,提高了接收端对数据包解压缩的成功率,减小了数据包丢失的可能性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种通信方法及设备。
背景技术
在长期演进(long term evolution,LTE)系统的确认模式(acknowledged mode,AM)传输中,引入了上行数据压缩(uplink data compression,UDC)技术,在分组数据汇聚协议(packet data convergence protocol,PDCP)层进行实现。UDC技术主要针对某些有大量重复内容的数据包,如LTE网络语音业务(voice over long term evolution,VoLTE)中传输会话发起协议(session initiation protocol,SIP)的数据包,通过传输数据包与数据包之间的差异部分,来降低需要传输的数据量。
既然是传输差异部分,那么接收端就需要基于前面的已接收的数据包对后面的压缩的数据包进行解压缩。目前,发送端和接收端都会维护一个缓存(buffer),发送端会将已经压缩的数据包的原始信息放入缓存,在对下一个数据包进行压缩时,就基于缓存所包括的内容来压缩。对于接收端来说,在接收一个新的压缩的数据包时,就会基于缓存所包括的内容来对该压缩的数据包进行解压缩。可见,发送端和接收端的缓存内容需要一致,这样才会使得接收端实现正确的解压缩。
对于发送端的PDCP层来说,有可能会删除一些数据包,这些数据包不会发送给接收端。例如,发送端的PDCP层向接收端发送了压缩的数据包1、压缩的数据包2和压缩的数据包4,数据包3被删除,因此未向接收端发送压缩的数据包3。但是数据包4在压缩时,还是基于数据包3进行的压缩,也就是说,发送端的缓存会包括数据包3。则接收端接收了压缩的数据包4之后,因为未接收压缩的数据包3,接收端的缓存中不会包括数据包3,因此接收端对压缩的数据包4解压缩会出错。在这种情况下,接收端向发送端发送控制(control)协议数据单元(protocol data unit,PDU),指示解压缩出错。发送端接收该control PDU之后,对于还没进行压缩的数据包,发送端可以不再根据缓存中的内容来压缩,而是可以根据预设的信息来压缩,这样接收端在接收这些压缩的数据包后就可以根据预设的信息实现正常的解压缩。但是接收端从发现解压缩失败到接收能够正确解压缩的数据包,这个过程中接收端对所接收的压缩的数据包均会解压缩失败,导致大量的数据包丢失。
发明内容
本申请实施例提供一种通信方法及设备,用于提高对数据包解压缩的正确率。
第一方面,提供第一种通信方法,该方法包括:第一设备删除第一数据包;所述第一设备向第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。
该方法可由第一通信装置执行,第一通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第一设备。示例性地,第一设备为终端设备或网络设备。
在本申请实施例中,第一设备如果删除了第一数据包,则可以确定第二数据包对应的第一缓存,第一缓存用于对第二数据包进行压缩,也用于对压缩的第二数据包进行解压缩。因此,第一设备可以将第一缓存指示给第二设备,从而第二设备可以根据第一缓存对压缩的第二数据包进行解压缩。这样,即使第一设备删除了第一数据包,由于第一设备和第二设备的缓存的状态可以保持一致,因此第一设备也能对序列号位于第一数据包之后的压缩的第二数据包进行正确的解压缩,提高了接收端对数据包解压缩的成功率,减小了数据包丢失的可能性。
结合第一方面,在第一方面的第一种可能的实施方式中,所述第一信令为控制PDU。
第一信令还可以是其他的形式,本申请实施例不对第一信令进行限制。
结合第一方面或第一方面的第一种可能的实施方式,在第一方面的第二种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
第一信令还可以包括进一步的信息,以使得第二设备能够更好地确定第一缓存所针对的数据包。
第二方面,提供第二种通信方法,该方法包括:第二设备接收来自第一设备的第一信令;所述第二设备的PDCP层根据所述第一信令所包括或指示的第一缓存,对压缩的第二数据包进行解压缩。
该方法可由第二通信装置执行,第二通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第二设备。示例性地,第二设备为终端设备或网络设备。
结合第二方面,在第二方面的第一种可能的实施方式中,第二设备接收来自第一设备的第一信令,包括:所述第二设备在PDCP层的重排序定时器超时之前,接收来自所述第一设备的所述第一信令,所述重排序定时器用于所述第二设备检测尚未收到的数据包。
第二设备可能是在重排序定时器超时之前接收第一信令。
结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述第二设备根据所述第一信令所指示的第一缓存,对所述压缩的第二数据包进行解压缩,包括:
所述第二设备在所述重排序定时器超时时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩;或,
所述第二设备在接收所述第一信令时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩。
第二设备可以继续等待重排序定时器超时再对压缩的第二数据包解压缩,以减少出错的概率,或者,第二设备也可以在接收第一信令时就根据第一缓存对压缩的第二数据包解压缩,无需等待重排序定时器超时,有助于减小时延,提高处理效率。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式,在第二方面的第三种可能的实施方式中,在第二设备接收来自第一设备的第一信令之前,还包括:
所述第二设备接收来自所述第一设备的所述压缩的第二数据包;
所述第二设备对所述压缩的第二数据包解压缩失败;
所述第二设备存储所述压缩的第二数据包。
很可能在第二设备接收第一缓存之前就已经接收了压缩的第二数据包,则第二设备可以正常对压缩的第二数据包进行解压缩。由于没有第一缓存,因此第二设备对压缩的第二数据包的解压缩可能会失败。如果解压缩失败,则第二设备可以存储压缩的第二数据包,以等待第一缓存的到来,从而减小丢包量。
结合第二方面或第二方面的第一种可能的实施方式或第二方面的第二种可能的实施方式或第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
关于第二方面或第二方面的各种可能的实施方式的技术效果,可参考对于第一方面或第一方面的各种可能的实施方式的技术效果的介绍。
第三方面,提供第三种通信方法,该方法包括:第一设备的PDCP层删除第一数据包;所述第一设备向第二设备发送第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态,所述第二数据包为压缩的第一数据包。
该方法可由第三通信装置执行,第三通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第一设备。示例性地,第一设备为终端设备或网络设备。
在这种方法中,虽然第一设备的PDCP层删除了第一数据包,但第一设备仍然可以继续发送压缩的第一数据包,这样可以保持第一设备和第二设备的缓存状态一致,第二设备可以根据压缩的第一数据包对后续的数据包进行解压,从而减小丢包量。
结合第三方面,在第三方面的第一种可能的实施方式中,所述第一设备向第二设备发送所述第一信息,包括:
所述第一设备向所述第二设备发送所述第二数据包,所述第二数据包携带对应于PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
所述第一设备向所述第二设备发送控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
第一设备可以直接携带第一标识来指示第二数据包仅用于解压缩或同步缓存状态,指示方式较为明确。或者,第一设备也可以通过控制PDU本身来指示第二数据包仅用于解压缩或同步缓存状态,无需专门的指示信息,有助于节省信令开销。
结合第三方面的第一种可能的实施方式,在第三方面的第二种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
这样可以使得第二设备更明确压缩的第二数据包的作用。
第四方面,提供第四种通信方法,该方法包括:第二设备接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态;所述第二设备的PDCP层根据所述第二数据包,对压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
该方法可由第四通信装置执行,第四通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第二设备。示例性地,第二设备为终端设备或网络设备。
结合第四方面,在第四方面的第一种可能的实施方式中,第二设备接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态,包括:
所述第二设备接收来自所述第一设备的所述第二数据包,所述第二数据包携带PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
所述第二设备接收来自所述第二设备的控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
结合第四方面或第四方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,所述方法还包括:
所述第二设备的PDCP层对所述第二数据包进行解压缩,得到第一数据包;
所述第二设备的PDCP层不将所述第一数据包递交给所述PDCP层的上层。
由于第二数据包仅用于解压缩,而不能作为其他用途,因此第二设备的PDCP层可以不将第一数据包递交给上层,以避免出错。
结合第四方面的第一种可能的实施方式,在第四方面的第三种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
关于第四方面或第四方面的各种可能的实施方式的技术效果,可参考对于第三方面或第三方面的各种可能的实施方式的技术效果的介绍。
第五方面,提供第五种通信方法,该方法包括:第一设备删除第一数据包;所述第一设备重置缓存,并根据重置后的缓存对第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为所述第一设备尚未进行压缩的数据包;所述第一设备向第二设备发送所述压缩的第二数据包。
该方法可由第五通信装置执行,第五通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第一设备。示例性地,第一设备为终端设备或网络设备。
在本申请实施例中,第一设备在删除第一数据包时,可以无需等待来自第二设备的control PDU(用于指示解压缩出错),而是及时地重置缓存。相对于等到来自第二设备的control PDU后再重置缓存的方案来说,本申请实施例的方案可以减少利用重置前的缓存所压缩的数据包的数量,减小被删除的数据包对后续的数据包所带来的影响,减少第二设备解压缩出错的数据包的数量,也就是减少丢包量。
结合第五方面,在第五方面的第一种可能的实施方式中,所述方法还包括:
所述第一设备接收来自所述第二设备的控制PDU,所述控制PDU用于指示压缩的第三数据包解压失败;
当所述压缩的第三数据包的序号大于所述第二数据包的序号时,所述第一设备再次重置所述缓存,否则,所述第一设备维持所述缓存不变。
如果压缩的第三数据包的序号大于第二数据包的序号,表明压缩的第三数据包是根据重置后的缓存进行压缩的,如果压缩的第三数据包依然解压缩出错,可能是重置的缓存出现了问题,因此第一设备可以再次重置缓存,以使得第一设备和第二设备的缓存状态保持一致。
结合第五方面或第五方面的第一种可能的实施方式,在第五方面的第二种可能的实施方式中,所述第一设备重置缓存,包括:
所述第一设备将所述缓存清零;或者,
所述第一设备将所述缓存清零后,为所述缓存配置预制字典;或者,
所述第一设备为所述缓存配置预制字典。
如上列举了几种第一设备重置缓存的方式,对于第一设备究竟采用何种方式重置缓存,本申请实施例不作限制。
结合第五方面或第五方面的第一种可能的实施方式,在第五方面的第三种可能的实施方式中,在所述第一设备重置缓存之后,还包括:所述第一设备为所述缓存配置预制字典。
第一设备重置缓存,可以包括第一设备将缓存清零,以及为缓存配置预制字典,或者,第一设备重置缓存,只是包括第一设备将缓存清零,那么在第一设备重置缓存(也就是将缓存清零)之后,第一设备还可以为缓存配置预制字典。相当于,将缓存清零,以及为缓存配置预制字典,这究竟都属于“重置缓存”的操作,还是属于不同的操作,不作限制。
第六方面,提供第六种通信方法,该方法包括:第一设备删除第一数据包;所述第一设备接收来自第二设备的控制PDU,所述控制PDU用于指示压缩的第二数据包解压失败;所述第一设备重置缓存,并根据重置后的缓存对至少一个数据包进行压缩,所述至少一个数据包包括所述第一设备尚未发送给所述第二设备的全部或部分数据包。
该方法可由第六通信装置执行,第六通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第一设备。示例性地,第一设备为终端设备或网络设备。
在本申请实施例中,第一设备在删除第一数据包时(或在删除第一数据包之后),如果接收了来自第二设备的control PDU(用于指示解压缩出错),则可以重置缓存,并且可以对尚未发出的数据包,或者对尚未发出的以及已经发出的数据包,均根据重置后的缓存进行压缩,通过这种方式,可以减少根据重置前的缓存所压缩的数据包的数量,减少第二设备无法正确的解压缩的数据包的数量,也就减小了丢包量。
结合第六方面,在第六方面的第一种可能的实施方式中,所述至少一个数据包还包括所述第一设备已向所述第二设备发出的全部数据包或部分数据包,且所述至少一个数据包中的第三数据包的序号大于或等于所述压缩的第二数据包的序号,且当所述第三数据包的序号大于所述压缩的第二数据包的序号时,所述第三数据包的序号和所述压缩的第二数据包的序号连续,所述第三数据包为所述至少一个数据包中序号最小的数据包。
至少一个数据包还可以包括已发出的数据包,即,将已发出的数据包也根据重置后的缓存重新进行压缩。那么,即使第二设备已经接收未根据重置后的缓存压缩的这些数据包,对这些数据包解压缩失败,但是第二设备后续还会接收根据重置后的缓存所压缩的这些数据包,而第二设备此时会解压缩成功,相当于并未丢包。
结合第六方面或第六方面的第一种可能的实施方式,在第六方面的第二种可能的实施方式中,所述第一设备重置缓存,包括:
所述第一设备将所述缓存清零;或者,
所述第一设备将所述缓存清零后,为所述缓存配置预制字典;或者,
所述第一设备为所述缓存配置预制字典。
如上列举了几种第一设备重置缓存的方式,对于第一设备究竟采用何种方式重置缓存,本申请实施例不作限制。
结合第六方面或第六方面的第一种可能的实施方式,在第六方面的第三种可能的实施方式中,在所述第一设备重置缓存之后,还包括:所述第一设备为所述缓存配置预制字典。
第一设备重置缓存,可以包括第一设备将缓存清零,以及为缓存配置预制字典,或者,第一设备重置缓存,只是包括第一设备将缓存清零,那么在第一设备重置缓存(也就是将缓存清零)之后,第一设备还可以为缓存配置预制字典。相当于,将缓存清零,以及为缓存配置预制字典,这究竟都属于“重置缓存”的操作,还是属于不同的操作,不作限制。
第七方面,提供第七种通信方法,该方法包括:第一设备压缩第一数据包,得到压缩的第一数据包;当满足第一删除条件时,所述第一设备不删除所述压缩的第一数据包,或,所述第一设备通过第一方式设置丢弃定时器,使得所述压缩的第一数据包不满足第二删除条件。
该方法可由第七通信装置执行,第七通信装置可以是通信设备或能够支持通信设备实现该方法所需的功能的通信装置,例如芯片系统。示例性地,所述通信设备为第一设备。示例性地,第一设备为终端设备或网络设备。
在本申请实施例中,第一设备可以不删除压缩的第一数据包,使得第一设备和第二设备的缓存状态尽量保持一致,减少了第二设备无法解压缩的情况,从而减少了丢包量。
结合第七方面,在第七方面的第一种可能的实施方式中,所述第一方式包括:
所述第一设备将所述丢弃定时器的定时时长设置为无穷大;或,
所述第一设备在压缩所述第一数据包后,关闭所述丢弃定时器。
无论是将丢弃定时器的定时时长设置为无穷大,还是关闭丢弃定时器,都可以避免丢弃定时器超时,从而可以使得压缩的第一数据包不满足第二删除条件,也就不会删除压缩的第一数据包。
结合第七方面的第一种可能的实施方式,在第七方面的第二种可能的实施方式中,所述方法还包括:所述第一设备接收来自第二设备的第一消息,所述第一消息用于指示所述丢弃定时器的定时时长为无穷大。
丢弃定时器的定时时长是无穷大,可以是第一设备自行确定的,或者也可以是第二设备指示的。
第八方面,提供第一种通信装置,例如该通信装置为如前所述的第一通信装置。所述通信装置用于执行上述第一方面或第一方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第一方面或第一方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第一设备。其中,
所述处理模块,用于删除第一数据包;
所述收发模块,用于向第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。
结合第八方面,在第八方面的第一种可能的实施方式中,所述第一信令为控制PDU。
结合第八方面或第八方面的第一种可能的实施方式,在第八方面的第二种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
关于第八方面或第八方面的各种可能的实施方式的技术效果,可参考对于第一方面或第一方面的各种可能的实施方式的技术效果的介绍。
第九方面,提供第二种通信装置,例如该通信装置为如前所述的第二通信装置。所述通信装置用于执行上述第二方面或第二方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第二方面或第二方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第二设备。其中,
所述收发模块,用于接收来自第一设备的第一信令;
所述处理模块,用于通过所述第一设备的PDCP层根据所述第一信令所包括或指示的第一缓存,对压缩的第二数据包进行解压缩。
结合第九方面,在第九方面的第一种可能的实施方式中,所述收发模块用于通过如下方式接收来自第一设备的第一信令:在PDCP层的重排序定时器超时之前,接收来自所述第一设备的所述第一信令,所述重排序定时器用于所述第二设备检测尚未收到的数据包。
结合第九方面的第一种可能的实施方式,在第九方面的第二种可能的实施方式中,所述处理模块用于通过如下方式根据所述第一信令所指示的第一缓存,对所述压缩的第二数据包进行解压缩:
在所述重排序定时器超时时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩;或,
在接收所述第一信令时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩。
结合第九方面或第九方面的第一种可能的实施方式或第九方面的第二种可能的实施方式,在第九方面的第三种可能的实施方式中,
所述收发模块,还用于在接收来自第一设备的第一信令之前,接收来自所述第一设备的所述压缩的第二数据包;
所述处理模块,还用于对所述压缩的第二数据包解压缩失败;
所述处理模块,还用于存储所述压缩的第二数据包。
结合第九方面或第九方面的第一种可能的实施方式或第九方面的第二种可能的实施方式或第九方面的第三种可能的实施方式,在第九方面的第四种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
关于第九方面或第九方面的各种可能的实施方式的技术效果,可参考对于第二方面或第二方面的各种可能的实施方式的技术效果的介绍。
第十方面,提供第三种通信装置,例如该通信装置为如前所述的第三通信装置。所述通信装置用于执行上述第三方面或第三方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第三方面或第三方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第一设备。其中,
所述处理模块,用于通过所述第一设备的PDCP层删除第一数据包;
所述收发模块,用于向第二设备发送第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态,所述第二数据包为压缩的第一数据包。
结合第十方面,在第十方面的第一种可能的实施方式中,所述收发模块用于通过如下方式向第二设备发送所述第一信息:
向所述第二设备发送所述第二数据包,所述第二数据包携带对应于PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
向所述第二设备发送控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
结合第十方面的第一种可能的实施方式,在第十方面的第二种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
关于第十方面或第十方面的各种可能的实施方式的技术效果,可参考对于第三方面或第三方面的各种可能的实施方式的技术效果的介绍。
第十一方面,提供第四种通信装置,例如该通信装置为如前所述的第四通信装置。所述通信装置用于执行上述第四方面或第四方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第四方面或第四方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第二设备。其中,
所述收发模块,用于接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态;
所述处理模块,用于通过所述第二设备的PDCP层根据所述第二数据包,对压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
结合第十一方面,在第十一方面的第一种可能的实施方式中,所述收发模块用于通过如下方式接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态:
接收来自所述第一设备的所述第二数据包,所述第二数据包携带PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
接收来自所述第二设备的控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
结合第十一方面或第十一方面的第一种可能的实施方式,在第十一方面的第二种可能的实施方式中,所述处理模块还用于:
通过所述第二设备的PDCP层对所述第二数据包进行解压缩,得到第一数据包;
通过所述第而设备的PDCP层不将所述第一数据包递交给所述PDCP层的上层。
结合第十一方面的第一种可能的实施方式,在第十一方面的第三种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
关于第十一方面或第十一方面的各种可能的实施方式的技术效果,可参考对于第四方面或第四方面的各种可能的实施方式的技术效果的介绍。
第十二方面,提供第五种通信装置,例如该通信装置为如前所述的第五通信装置。所述通信装置用于执行上述第五方面或第五方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第五方面或第五方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第一设备。其中,
所述处理模块,用于删除第一数据包;
所述处理模块,还用于重置缓存,并根据重置后的缓存对第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为所述第一设备尚未进行压缩的数据包;
所述收发模块,用于向第二设备发送所述压缩的第二数据包。
结合第十二方面,在第十二方面的第一种可能的实施方式中,
所述收发模块,还用于接收来自所述第二设备的控制PDU,所述控制PDU用于指示压缩的第三数据包解压失败;
所述处理模块,还用于当所述压缩的第三数据包的序号大于所述第二数据包的序号时,再次重置所述缓存,否则,维持所述缓存不变。
结合第十二方面或第十二方面的第一种可能的实施方式,在第十二方面的第二种可能的实施方式中,所述处理模块用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
结合第十二方面或第十二方面的第一种可能的实施方式,在第十二方面的第三种可能的实施方式中,所述处理模块,还用于在重置缓存之后,为所述缓存配置预制字典。
关于第十二方面或第十二方面的各种可能的实施方式的技术效果,可参考对于第五方面或第五方面的各种可能的实施方式的技术效果的介绍。
第十三方面,提供第六种通信装置,例如该通信装置为如前所述的第六通信装置。所述通信装置用于执行上述第六方面或第六方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第六方面或第六方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第一设备。其中,
所述处理模块,用于删除第一数据包;
所述收发模块,用于接收来自第二设备的控制PDU,所述控制PDU用于指示压缩的第二数据包解压失败;
所述处理模块,还用于重置缓存,并根据重置后的缓存对至少一个数据包进行压缩,所述至少一个数据包包括所述第一设备尚未发送给所述第二设备的全部或部分数据包。
结合第十三方面,在第十三方面的第一种可能的实施方式中,所述至少一个数据包还包括所述第一设备已向所述第二设备发出的全部数据包或部分数据包,且所述至少一个数据包中的第三数据包的序号大于或等于所述压缩的第二数据包的序号,且当所述第三数据包的序号大于所述压缩的第二数据包的序号时,所述第三数据包的序号和所述压缩的第二数据包的序号连续,所述第三数据包为所述至少一个数据包中序号最小的数据包。
结合第十三方面或第十三方面的第一种可能的实施方式,在第十三方面的第二种可能的实施方式中,所述处理模块用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
结合第十三方面或第十三方面的第一种可能的实施方式,在第十三方面的第三种可能的实施方式中,所述处理模块,还用于在重置缓存之后,为所述缓存配置预制字典。
关于第十三方面或第十三方面的各种可能的实施方式的技术效果,可参考对于第六方面或第六方面的各种可能的实施方式的技术效果的介绍。
第十四方面,提供第七种通信装置,例如该通信装置为如前所述的第七通信装置。所述通信装置用于执行上述第七方面或第七方面的任一可能的实现方式中的方法。具体地,所述通信装置可以包括用于执行第七方面或第七方面的任一可能的实现方式中的方法的模块,例如包括处理模块和收发模块。其中,收发模块可以是指一个功能模块,该功能模块既能完成接收信息的功能也能完成发送信息的功能。或者,收发模块可以是发送模块和接收模块的统称,发送模块用于完成发送信息的功能,接收模块用于完成接收信息的功能。示例性地,所述通信装置为第一设备。其中,
所述处理模块,用于压缩第一数据包,得到压缩的第一数据包;
所述处理模块,还用于当满足第一删除条件时,不删除所述压缩的第一数据包,或,通过第一方式设置丢弃定时器,使得所述压缩的第一数据包不满足第二删除条件。
结合第十四方面,在第十四方面的第一种可能的实施方式中,所述第一方式包括:
所述第一设备将所述丢弃定时器的定时时长设置为无穷大;或,
所述第一设备在压缩所述第一数据包后,关闭所述丢弃定时器。
结合第十四方面的第一种可能的实施方式,在第十四方面的第二种可能的实施方式中,所述收发模块,用于接收来自第二设备的第一消息,所述第一消息用于指示所述丢弃定时器的定时时长为无穷大。
关于第十四方面或第十四方面的各种可能的实施方式的技术效果,可参考对于第七方面或第七方面的各种可能的实施方式的技术效果的介绍。
第十五方面,提供第八种通信装置,该通信装置例如为如前所述的第一通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第一方面或第一方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第一设备。其中,
所述处理器,用于删除第一数据包;
所述收发器,用于向第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。
结合第十五方面,在第十五方面的第一种可能的实施方式中,所述第一信令为控制PDU。
结合第十五方面或第十五方面的第一种可能的实施方式,在第十五方面的第二种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
关于第十五方面或第十五方面的各种可能的实施方式的技术效果,可参考对于第一方面或第一方面的各种可能的实施方式的技术效果的介绍。
第十六方面,提供第九种通信装置,该通信装置例如为如前所述的第二通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第二方面或第二方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第二设备。其中,
所述收发器,用于接收来自第一设备的第一信令;
所述处理器,用于通过所述第一设备的PDCP层根据所述第一信令所包括或指示的第一缓存,对压缩的第二数据包进行解压缩。
结合第十六方面,在第十六方面的第一种可能的实施方式中,所述收发器用于通过如下方式接收来自第一设备的第一信令:在PDCP层的重排序定时器超时之前,接收来自所述第一设备的所述第一信令,所述重排序定时器用于所述第二设备检测尚未收到的数据包。
结合第十六方面的第一种可能的实施方式,在第十六方面的第二种可能的实施方式中,所述处理器用于通过如下方式根据所述第一信令所指示的第一缓存,对所述压缩的第二数据包进行解压缩:
在所述重排序定时器超时时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩;或,
在接收所述第一信令时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩。
结合第十六方面或第十六方面的第一种可能的实施方式或第十六方面的第二种可能的实施方式,在第十六方面的第三种可能的实施方式中,
所述收发器,还用于在接收来自第一设备的第一信令之前,接收来自所述第一设备的所述压缩的第二数据包;
所述处理器,还用于对所述压缩的第二数据包解压缩失败;
所述处理器,还用于存储所述压缩的第二数据包。
结合第十六方面或第十六方面的第一种可能的实施方式或第十六方面的第二种可能的实施方式或第十六方面的第三种可能的实施方式,在第十六方面的第四种可能的实施方式中,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
关于第十六方面或第十六方面的各种可能的实施方式的技术效果,可参考对于第二方面或第二方面的各种可能的实施方式的技术效果的介绍。
第十七方面,提供第十种通信装置,该通信装置例如为如前所述的第三通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第三方面或第三方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第一设备。其中,
所述处理器,用于通过所述第一设备的PDCP层删除第一数据包;
所述收发器,用于向第二设备发送第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态,所述第二数据包为压缩的第一数据包。
结合第十七方面,在第十七方面的第一种可能的实施方式中,所述收发器用于通过如下方式向第二设备发送所述第一信息:
向所述第二设备发送所述第二数据包,所述第二数据包携带对应于PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
向所述第二设备发送控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
结合第十七方面的第一种可能的实施方式,在第十七方面的第二种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
关于第十七方面或第十七方面的各种可能的实施方式的技术效果,可参考对于第三方面或第三方面的各种可能的实施方式的技术效果的介绍。
第十八方面,提供第十一种通信装置,该通信装置例如为如前所述的第四通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第四方面或第四方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第二设备。其中,
所述收发器,用于接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态;
所述处理器,用于通过所述第二设备的PDCP层根据所述第二数据包,对压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
结合第十八方面,在第十八方面的第一种可能的实施方式中,所述收发器用于通过如下方式接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态:
接收来自所述第一设备的所述第二数据包,所述第二数据包携带PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
接收来自所述第二设备的控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
结合第十八方面或第十八方面的第一种可能的实施方式,在第十八方面的第二种可能的实施方式中,所述处理器还用于:
通过所述第二设备的PDCP层对所述第二数据包进行解压缩,得到第一数据包;
通过所述第而设备的PDCP层不将所述第一数据包递交给所述PDCP层的上层。
结合第十八方面的第一种可能的实施方式,在第十八方面的第三种可能的实施方式中,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
关于第十八方面或第十八方面的各种可能的实施方式的技术效果,可参考对于第四方面或第四方面的各种可能的实施方式的技术效果的介绍。
第十九方面,提供第十二种通信装置,该通信装置例如为如前所述的第五通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第五方面或第五方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第一设备。其中,
所述处理器,用于删除第一数据包;
所述处理器,还用于重置缓存,并根据重置后的缓存对第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为所述第一设备尚未进行压缩的数据包;
所述收发模块,用于向第二设备发送所述压缩的第二数据包。
结合第十九方面,在第十九方面的第一种可能的实施方式中,
所述收发器,还用于接收来自所述第二设备的控制PDU,所述控制PDU用于指示压缩的第三数据包解压失败;
所述处理器,还用于当所述压缩的第三数据包的序号大于所述第二数据包的序号时,再次重置所述缓存,否则,维持所述缓存不变。
结合第十九方面或第十九方面的第一种可能的实施方式,在第十九方面的第二种可能的实施方式中,所述处理器用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
结合第十九方面或第十九方面的第一种可能的实施方式,在第十九方面的第三种可能的实施方式中,所述处理器,还用于在重置缓存之后,为所述缓存配置预制字典。
关于第十九方面或第十九方面的各种可能的实施方式的技术效果,可参考对于第五方面或第五方面的各种可能的实施方式的技术效果的介绍。
第二十方面,提供第十三种通信装置,该通信装置例如为如前所述的第六通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第六方面或第六方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第一设备。其中,
所述处理器,用于删除第一数据包;
所述收发器,用于接收来自第二设备的控制PDU,所述控制PDU用于指示压缩的第二数据包解压失败;
所述处理器,还用于重置缓存,并根据重置后的缓存对至少一个数据包进行压缩,所述至少一个数据包包括所述第一设备尚未发送给所述第二设备的全部或部分数据包。
结合第二十方面,在第二十方面的第一种可能的实施方式中,所述至少一个数据包还包括所述第一设备已向所述第二设备发出的全部数据包或部分数据包,且所述至少一个数据包中的第三数据包的序号大于或等于所述压缩的第二数据包的序号,且当所述第三数据包的序号大于所述压缩的第二数据包的序号时,所述第三数据包的序号和所述压缩的第二数据包的序号连续,所述第三数据包为所述至少一个数据包中序号最小的数据包。
结合第二十方面或第二十方面的第一种可能的实施方式,在第二十方面的第二种可能的实施方式中,所述处理器用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
结合第二十方面或第二十方面的第一种可能的实施方式,在第二十方面的第三种可能的实施方式中,所述处理器,还用于在重置缓存之后,为所述缓存配置预制字典。
关于第二十方面或第二十方面的各种可能的实施方式的技术效果,可参考对于第六方面或第六方面的各种可能的实施方式的技术效果的介绍。
第二十一方面,提供第十四种通信装置,该通信装置例如为如前所述的第七通信装置。该通信装置包括处理器和存储器,可选的,还包括收发器,处理器、存储器和收发器用于实现上述第七方面或第七方面的各种可能的设计所描述的方法。示例性地,所述通信装置为设置在通信设备中的芯片。其中,收发器例如通过通信设备中的天线、馈线和编解码器等实现,或者,如果所述通信装置为设置在通信设备中的芯片,那么收发器例如为芯片中的通信接口,该通信接口与通信设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。示例性的,所述通信设备为第一设备。其中,
所述处理器,用于压缩第一数据包,得到压缩的第一数据包;
所述处理器,还用于当满足第一删除条件时,不删除所述压缩的第一数据包,或,通过第一方式设置丢弃定时器,使得所述压缩的第一数据包不满足第二删除条件。
结合第二十一方面,在第二十一方面的第一种可能的实施方式中,所述第一方式包括:
所述第一设备将所述丢弃定时器的定时时长设置为无穷大;或,
所述第一设备在压缩所述第一数据包后,关闭所述丢弃定时器。
结合第二十一方面的第一种可能的实施方式,在第二十一方面的第二种可能的实施方式中,所述收发器,用于接收来自第二设备的第一消息,所述第一消息用于指示所述丢弃定时器的定时时长为无穷大。
关于第二十一方面或第二十一方面的各种可能的实施方式的技术效果,可参考对于第七方面或第七方面的各种可能的实施方式的技术效果的介绍。
第二十二方面,提供第十五种通信装置。该通信装置可以为上述方法设计中的第一通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第一设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第十五种通信装置执行上述第一方面或第一方面的任意一种可能的实施方式中的方法。
其中,第十五种通信装置还可以包括通信接口,该通信接口可以是第一设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第十五种通信装置为设置在第一设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十三方面,提供第十六种通信装置。该通信装置可以为上述方法设计中的第二通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第二设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第十六种通信装置执行上述第二方面或第二方面的任意一种可能的实施方式中的方法。
其中,第十六种通信装置还可以包括通信接口,该通信接口可以是第二设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第十六种通信装置为设置在第二设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十四方面,提供第十七种通信装置。该通信装置可以为上述方法设计中的第三通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第一设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第十七种通信装置执行上述第三方面或第三方面的任意一种可能的实施方式中的方法。
其中,第十七种通信装置还可以包括通信接口,该通信接口可以是第一设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第十七种通信装置为设置在第一设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十五方面,提供第十八种通信装置。该通信装置可以为上述方法设计中的第四通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第二设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第十八种通信装置执行上述第四方面或第四方面的任意一种可能的实施方式中的方法。
其中,第十八种通信装置还可以包括通信接口,该通信接口可以是第二设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第十八种通信装置为设置在第二设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十六方面,提供第十九种通信装置。该通信装置可以为上述方法设计中的第五通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第一设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第十九种通信装置执行上述第五方面或第五方面的任意一种可能的实施方式中的方法。
其中,第十九种通信装置还可以包括通信接口,该通信接口可以是第一设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第十九种通信装置为设置在第一设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十七方面,提供第二十种通信装置。该通信装置可以为上述方法设计中的第六通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第一设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第二十种通信装置执行上述第六方面或第六方面的任意一种可能的实施方式中的方法。
其中,第二十种通信装置还可以包括通信接口,该通信接口可以是第一设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第二十种通信装置为设置在第一设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十八方面,提供第二十一种通信装置。该通信装置可以为上述方法设计中的第七通信装置。示例性地,所述通信装置为设置在通信设备中的芯片。示例性地,通信设备为第一设备。该通信装置包括:存储器,用于存储计算机可执行程序代码;以及处理器,处理器与存储器耦合。其中存储器所存储的程序代码包括指令,当处理器执行所述指令时,使第二十一种通信装置执行上述第七方面或第七方面的任意一种可能的实施方式中的方法。
其中,第二十一种通信装置还可以包括通信接口,该通信接口可以是第一设备中的收发器,例如通过所述通信装置中的天线、馈线和编解码器等实现,或者,如果第二十一种通信装置为设置在第一设备中的芯片,则通信接口可以是该芯片的输入/输出接口,例如输入/输出管脚等。
第二十九方面,提供一种通信系统,该通信系统可以包括第八方面所述的第一种通信装置、第十五方面所述的第八种通信装置或第二十二方面所述的第十五种通信装置,以及包括第九方面所述的第二种通信装置、第十六方面所述的第九种通信装置或第二十三方面所述的第十六种通信装置。
第三十方面,提供一种通信系统,该通信系统可以包括第十方面所述的第三种通信装置、第十七方面所述的第十种通信装置或第二十四方面所述的第十七种通信装置,以及包括第十一方面所述的第四种通信装置、第十八方面所述的第十一种通信装置或第二十五方面所述的第十八种通信装置。
第二十九方面的通信系统和第三十方面的通信系统可以是同一个通信系统,或者也可以是不同的通信系统。
第三十一方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种可能的设计中所述的方法。
第三十二方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第二方面或第二方面的任意一种可能的设计中所述的方法。
第三十三方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第三方面或第三方面的任意一种可能的设计中所述的方法。
第三十四方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第四方面或第四方面的任意一种可能的设计中所述的方法。
第三十五方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第五方面或第五方面的任意一种可能的设计中所述的方法。
第三十六方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第六方面或第六方面的任意一种可能的设计中所述的方法。
第三十七方面,提供一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第七方面或第七方面的任意一种可能的设计中所述的方法。
第三十八方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面的任意一种可能的设计中所述的方法。
第三十九方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第二方面或第二方面的任意一种可能的设计中所述的方法。
第四十方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第三方面或第三方面的任意一种可能的设计中所述的方法。
第四十一方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第四方面或第四方面的任意一种可能的设计中所述的方法。
第四十二方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第五方面或第五方面的任意一种可能的设计中所述的方法。
第四十三方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第六方面或第六方面的任意一种可能的设计中所述的方法。
第四十四方面,提供一种包含指令的计算机程序产品,所述计算机程序产品中存储有指令,当其在计算机上运行时,使得计算机执行上述第七方面或第七方面的任意一种可能的设计中所述的方法。
在本申请实施例中,即使第一设备删除了第一数据包,由于第一设备和第二设备的缓存的状态可以保持一致,因此第一设备也能对序列号位于第一数据包之后的压缩的第二数据包进行正确的解压缩,提高了接收端对数据包解压缩的成功率,减小了数据包丢失的可能性。
附图说明
图1为UDC技术的一种示意图;
图2为LTE系统中的数据包压缩和解压缩的过程示意图;
图3为LTE系统中的解压缩出错的反馈机制的示意图;
图4为NR系统中的数据包压缩和解压缩的过程示意图;
图5为NR系统中的解压缩出错的反馈机制的示意图;
图6A为本申请实施例的一种应用场景示意图;
图6B为本申请实施例的另一种应用场景示意图;
图7为本申请实施例提供的第一种通信方法的流程图;
图8为数据包的计数值的构成示意图;
图9A为本申请实施例中NR系统中的处理过程的一种示例;
图9B为本申请实施例中LTE系统中的处理过程的一种示例;
图10为本申请实施例提供的第二种通信方法的流程图;
图11为本申请实施例中NR系统中的处理过程的一种示例;
图12为本申请实施例中LTE系统中的处理过程的一种示例;
图13为本申请实施例提供的第三种通信方法的流程图;
图14为本申请实施例中NR系统中的处理过程的一种示例;
图15为本申请实施例中LTE系统中的处理过程的一种示例;
图16为本申请实施例提供的第四种通信方法的流程图;
图17为本申请实施例中NR系统中的处理过程的一种示例;
图18为本申请实施例中LTE系统中的处理过程的一种示例;
图19为本申请实施例中NR系统中的处理过程的一种示例;
图20为本申请实施例中LTE系统中的处理过程的一种示例;
图21为本申请实施例提供的第五种通信方法的流程图;
图22为本申请实施例提供的第一种第一设备的示意性框图;
图23为本申请实施例提供的第一种第一设备的另一示意性框图;
图24为本申请实施例提供的第一种第二设备的示意性框图;
图25为本申请实施例提供的第一种第二设备的另一示意性框图;
图26为本申请实施例提供的第二种第一设备的示意性框图;
图27为本申请实施例提供的第二种第一设备的另一示意性框图;
图28为本申请实施例提供的第二种第二设备的示意性框图;
图29为本申请实施例提供的第二种第二设备的另一示意性框图;
图30为本申请实施例提供的第三种第一设备的示意性框图;
图31为本申请实施例提供的第三种第一设备的另一示意性框图;
图32为本申请实施例提供的第四种第一设备的示意性框图;
图33为本申请实施例提供的第四种第一设备的另一示意性框图;
图34为本申请实施例提供的第五种第一设备的示意性框图;
图35为本申请实施例提供的第五种第一设备的另一示意性框图;
图36为本申请实施例提供的通信装置的示意性框图;
图37为本申请实施例提供的通信装置的另一示意性框图;
图38为本申请实施例提供的通信装置的再一示意性框图。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步地详细描述。
以下,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1)终端设备,包括向用户提供语音和/或数据连通性的设备,具体的,包括向用户提供语音的设备,或包括向用户提供数据连通性的设备,或包括向用户提供语音和数据连通性的设备。例如可以包括具有无线连接功能的手持式设备、或连接到无线调制解调器的处理设备。该终端设备可以经无线接入网(radio access network,RAN)与核心网进行通信,与RAN交换语音或数据,或与RAN交互语音和数据。该终端设备可以包括用户设备(userequipment,UE)、无线终端设备、移动终端设备、设备到设备通信(device-to-device,D2D)终端设备、车到一切(vehicle to everything,V2X)终端设备、机器到机器/机器类通信(machine-to-machine/machine-type communications,M2M/MTC)终端设备、物联网(internet of things,IoT)终端设备、订户单元(subscriber unit)、订户站(subscriberstation),移动站(mobile station)、远程站(remote station)、接入点(access point,AP)、远程终端(remote terminal)、接入终端(access terminal)、用户终端(userterminal)、用户代理(user agent)、或用户装备(user device)等。例如,可以包括移动电话(或称为“蜂窝”电话),具有移动终端设备的计算机,便携式、袖珍式、手持式、计算机内置的移动装置等。例如,个人通信业务(personal communication service,PCS)电话、无绳电话、会话发起协议(session initiation protocol,SIP)话机、无线本地环路(wirelesslocal loop,WLL)站、个人数字助理(personal digital assistant,PDA)、等设备。还包括受限设备,例如功耗较低的设备,或存储能力有限的设备,或计算能力有限的设备等。例如包括条码、射频识别(radio frequency identification,RFID)、传感器、全球定位系统(global positioning system,GPS)、激光扫描器等信息传感设备。
作为示例而非限定,在本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备或智能穿戴式设备等,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:
智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能头盔、智能首饰等。
而如上介绍的各种终端设备,如果位于车辆上(例如放置在车辆内或安装在车辆内),都可以认为是车载终端设备,车载终端设备例如也称为车载单元(on-board unit,OBU)。
本申请实施例中,终端设备还可以包括中继(relay)。或者理解为,能够与基站进行数据通信的都可以看作终端设备。
2)网络设备,例如包括接入网(access network,AN)设备,例如基站(例如,接入点),可以是指接入网中在空口通过一个或多个小区与无线终端设备通信的设备,或者例如,一种车到一切(vehicle-to-everything,V2X)技术中的网络设备为路侧单元(roadside unit,RSU)。基站可用于将收到的空中帧与IP分组进行相互转换,作为终端设备与接入网的其余部分之间的路由器,其中接入网的其余部分可包括IP网络。RSU可以是支持V2X应用的固定基础设施实体,可以与支持V2X应用的其他实体交换消息。网络设备还可协调对空口的属性管理。例如,网络设备可以包括长期演进(long term evolution,LTE)系统或高级长期演进(long term evolution-advanced,LTE-A)中的演进型基站(NodeB或eNB或e-NodeB,evolutional Node B),或者也可以包括第五代移动通信技术(the 5th generation,5G)新空口(new radio,NR)系统(也简称为NR系统)中的下一代节点B(next generationnode B,gNB)或者也可以包括云接入网(cloud radio access network,Cloud RAN)系统中的集中式单元(centralized unit,CU)和分布式单元(distributed unit,DU),本申请实施例并不限定。
本申请实施例所述的接收设备,可以是终端设备,或者也可以是网络设备。而本申请实施例中用于发送数据包的发送设备,同样的,可以是终端设备也可以是网络设备。且,例如一种情况为,发送设备是网络设备,接收设备是终端设备,或者另一种情况为,发送设备和接收设备均为网络设备,或者再一种情况为,发送设备和接收设备均为终端设备,等等,具体的不做限制。
3)本申请实施例中的术语“系统”和“网络”可被互换使用。“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
以及,除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的顺序、时序、优先级或者重要程度。例如,第一数据包和第二数据包,只是为了区分不同的数据包,而并不是表示这两个数据包的内容、优先级、发送顺序或者重要程度等的不同。
前文介绍了本申请实施例所涉及到的一些名词概念,下面介绍本申请实施例涉及的技术特征。
在LTE系统的AM传输中,引入了UDC技术,在PDCP层进行实现。UDC技术主要针对某些有大量重复内容的数据包,如VoLTE中传输SIP的数据包,通过传输数据包与数据包之间的差异部分,降低需要传输的数据量。
UDC是终端设备作为发送端对数据包进行压缩,网络设备作为接收端对数据包进行解压缩,而压缩和解压缩均是基于发送端和接收端共同维护相同的buffer状态来进行的,buffer状态,可以是指buffer所包括的内容(或者说,buffer所包括的信息)。发送端在对数据包进行压缩时,基于buffer当前的状态进行压缩,在压缩成功后,发送端会将当前压缩的数据包在压缩之前的原始信息从buffer的后端放入buffer。其中,对于第一个数据包,在压缩时buffer中可能并不包括之前的数据包的信息,那么发送端可以基于预设的信息进行压缩,预设的信息,例如为预制字典等。例如可参考图1,buffer中包括“abc”,“abc”例如为预设的信息。发送端需要对数据包“def”进行压缩时,可以基于“abc”进行压缩,对数据包“def”压缩后得到压缩的数据包1,而发送端可以将“def”从buffer的后端放入buffer。之后,发送端需要对数据包“ghijkl”进行压缩,则可以基于buffer中的“abcdef”来压缩,也就是说,每次都是基于buffer中的全部内容来进行压缩。对数据包“ghijkl”压缩后得到压缩的数据包2,而发送端可以将数据包“ghijkl”从buffer的后端放入buffer。由于buffer的存储空间有限,因此按照先入先出(first in first out,FIFO)的原则,“abcd”会被挤出buffer,那么,如果发送端还需要再对其他的数据包进行压缩,就会基于缓存中包括的“efghijkl”来进行压缩。对于接收端来说,在接收压缩的数据包1后,可以基于buffer中预设的信息“abc”进行解压缩,得到数据包“def”,将数据包“def”从buffer的后端放入buffer。在接收数据包2后,接收端可以基于buffer中的信息“abcdef”进行解压缩,得到数据包“ghijkl”,将数据包“ghijkl”从buffer的后端放入buffer,则“abcd”被挤出buffer。可见,接收端的buffer状态和发送端的buffer状态始终保持一致,这样就可以保证接收端能够正确解压缩。
请参考图2,为LTE系统中的数据包压缩和解压缩的过程。图2中,上面两行的PDCP和RLC是指发送端的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图2中下面两行的PDCP和RLC是指接收端的PDCP层和RLC层。在AM模式下,因为RLC层支持数据重传机制,因此虽然发送端是按照顺序发送数据包,但接收端接收到的压缩的数据包可能存在乱序的现象。在LTE系统中,接收端的RLC层会对接收到的压缩的数据包进行排序,再将排序后的压缩的数据包递交给PDCP层。例如图2中,接收端的RLC层对于压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4的接收顺序是压缩的数据包3、压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,RLC层对这4个压缩的数据包进行排序,再按照正常的顺序将这4个压缩的数据包递交给PDCP层,PDCP层接收这4个压缩的数据包后就对这4个压缩的数据包依次解压缩。之后,接收端接收了压缩的数据包5,接收端的RLC层将压缩的数据包5递交给PDCP层,PDCP层对压缩的数据包5进行解压缩。之后,接收端又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但接收端对于这3个压缩的数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6,那么在接收压缩的数据包6后,接收端的RLC层对这3个压缩的数据包进行排序,再将排序后的3个压缩的数据包递交给PDCP层,PDCP层接收这3个压缩的数据包后,依次对这3个压缩的数据包进行解压缩。例如,PDCP层对压缩的数据包1解压缩,依据的是buffer中包括的预设的信息,PDCP层对压缩的数据包2进行解压缩,依据的是buffer中包括的预设的信息以及压缩的数据包1解压缩后得到的信息,PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息以及压缩的数据包2解压缩后得到的信息(因为以buffer能够容纳两个数据包的内容为例,因此认为预设的信息已经被挤出了buffer),等等,以此类推。其中,图2中出现的数据包的序号(或,压缩的数据包的序号)均为PDCP层的序列号(sequence number,SN),或该序号还可以理解为该数据包PDCP层的计数(count)值。
由于UDC目前只适用于LTE的AM模式,因此不考虑在传输过程中空口可能出现的丢包现象。通常情况下,PDCP层将按顺序收到压缩的数据包,保证接收端的buffer和发送端的buffer对齐,实现按序解压。
针对当前LTE在UDC的传输,发送端的PDCP层在某些情况下,会丢弃某些数据包。例如,PDCP层从上层得到一个数据包后,可以开启丢弃定时器(discard timer),如果discardtimer超时时该数据包还未从发送端的空口发出,则PDCP层会删除该数据包,如果该数据包已被递交到RLC层,则PDCP层也会通知RLC层删除该数据包,以避免发送端将超时的数据包通过空口发出去。例如发送端的PDCP层确定删除数据包3,而压缩的数据包3已经被递交到RLC层,则PDCP层通知RLC层删除压缩的数据包3,那么RLC层删除压缩的数据包3,并且,RLC层会对其他的压缩的数据包在RLC层的编号进行重新编号。例如,共有压缩的数据包1、压缩的数据包2和压缩的数据包4,则RLC层将压缩的数据包4重新编号为RLC层的压缩的数据包3,相当于,PDCP层的压缩的数据包1是RCL层的压缩的数据包1,PDCP层的压缩的数据包2是RLC层的压缩的数据包2,但PDCP层的压缩的数据包4是RLC层的压缩的数据包3,可见,PDCP层的编号和RLC层的编号不一定是一致的。接收端的RLC层接收了压缩的数据包1、压缩的数据包2和压缩的数据包3后,递交给PDCP层,但RLC层的压缩的数据包3实际上是PDCP层的压缩的数据包4,发送端的PDCP层在对压缩的数据包4进行压缩时使用了压缩的数据包3的信息,那么接收端的PDCP层缺少压缩的数据包3,在对压缩的数据包4解压缩时就会出错。在LTE系统中,针对UDC也有解压缩出错时的反馈机制。当接收端发现解压缩出错时,可以向发送端发送control PDU,用于指示解压缩出错。发送端接收该control PDU后,将从当前要压缩的数据包开始,重置(reset)buffer,基于预设的信息对当前要压缩的数据包进行压缩,并在该数据包的UDC包头处指示该压缩的数据包为重置buffer后的压缩的数据包。接收端接收该压缩的数据包后,根据该压缩的数据包的UDC包头就可以确定该压缩的数据包为重置buffer的压缩的数据包,从而接收端将buffer重置清零,再对该压缩的数据包进行解压缩即可,无需再根据之前的数据包对该压缩的数据包进行解压缩,减少了对前续的数据包的依赖,降低了解压缩出错的概率。
例如请参考图3,为LTE系统中的解压缩出错的反馈机制的示意。数据包3被删除时,数据包4、数据包5、数据包6、数据包7和数据包8已经压缩打包好,发送端会正常发出,则接收端对于压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8均不能正确解压缩。那么接收端的PDCP层在对压缩的数据包4解压缩失败时,可以向发送端发送control PDU,告知发送端解压缩出错。由于该control PDU并不指示任何发生错误的序号,发送端接收该control PDU后,可以重置buffer(目前,重置buffer是将buffer清零)。而发送端在接收该control PDU时,压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8已经发出,例如压缩的数据包9是当前正要压缩的数据包,因此发送端只能根据重置的buffer压缩数据包9,接收端收到压缩后的数据包9后,可以正常解压缩。
也就是说,接收端从发现解压缩失败(压缩的数据包4),到收到重置buffer后的数据包(压缩的数据包9),序列号位于这之间的压缩的数据包(即压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8),接收端均无法解压缩,只能丢弃这些数据包,造成大量的数据包丢失,需要应用层再次进行重传。
在NR系统中,目前没有UDC,一种比较显然的方案是,将现有的UDC机制直接应用于与NR系统AM模式下的数据无线承载(data radio bearer,DRB)的传输中。不同于LTE系统的是,在NR系统中,RLC层不负责对数据包进行重排序,而是由PDCP层对数据包进行重排序。则接收端的RLC层接收压缩的数据包后会直接递交给PDCP层,由PDCP层进行排序,在排序之后PDCP层对排序后的压缩的数据包进行解压缩,解压缩后再将解压缩后得到的数据包递交给上层。
请参考图4,为NR系统中的数据包压缩和解压缩的过程。图4中,上面两行的PDCP和RLC是指发送端的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图4中下面一行的PDCP是指接收端的PDCP层,因为接收端的RLC层接收压缩的数据包后会直接递交给PDCP层,不会进行排序等操作,因此图4中未画出接收端的RLC层。例如图4中,接收端的PDCP层对于压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4的接收顺序是压缩的数据包3、压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,PDCP层对这4个压缩的数据包进行排序,再按照正常的顺序将这4个压缩的数据包进行解压缩,之后再将解压缩后得到的数据包递交给PDCP层的上层。之后,接收端接收了压缩的数据包5,接收端的PDCP层对压缩的数据包5进行解压缩,再将解压缩后得到的数据包5递交给上层。之后,接收端又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但接收端对于这3个压缩的数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6,那么在接收压缩的数据包6后,接收端的PDCP层对这3个压缩的数据包进行排序,再对排序后的3个压缩的数据包依次解压缩,之后再将解压缩后的数据包递交给上层。例如,PDCP层对压缩的数据包1解压缩,依据的是buffer中包括的预设的信息,PDCP层对压缩的数据包2进行解压缩,依据的是buffer中包括的预设的信息以及压缩的数据包1解压缩后得到的信息(也就是数据包1),PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息(也就是数据包1)以及压缩的数据包2解压缩后得到的信息(也就是数据包2)(因为以buffer能够容纳两个数据包的内容为例,因此认为预设的信息已经被挤出了buffer),等等,以此类推。其中,图4中出现的数据包的序号(或,压缩的数据包的序号)均为PDCP层的序列号,或该序号还可以理解为该数据包PDCP层的计数值。对比LTE,PDCP层对于数据包进行重排序,其只对要进行向上层递交的数据包进行解压。
另外在NR系统中,发送端的PDCP层还可以进行预处理,即,在底层还未分配空口授权(grant)的时候,PDCP层就向RLC层发送压缩的数据包,进行提前处理。例如,在空口处,只传输到压缩的数据包1,但是PDCP层已经对数据包2、数据包3、数据包4、数据包5、数据包6、数据包7和数据包8都进行了压缩等处理,并递交给了RLC层做进一步的处理。预处理可以减少数据包的处理时延。
在NR系统中,如果出现类似于LTE系统中的发送端删除数据包的情况,则也是类似的,会发生批量丢包的事件。而且在NR系统中,接收端的PDCP层如果确定接收的压缩的数据包出现了乱序的现象,例如在接收压缩的数据包1和压缩的数据包2后本该接收压缩的数据包3,但接收端接收了压缩的数据包4,则接收端的PDCP层就会开启重排序定时器(reordering timer),以等待接收压缩的数据包3,直到接收了压缩的数据包3,准备对数据包3和数据包4进行递交,或者直到重排序定时器超时时,需要将数据包4向上层递交,PDCP层才会对接收的压缩的数据包进行解压缩。可见,在发送端的PDCP层删除数据包后,对于接收端的PDCP层来说,被删除的数据包是无法接收的,则接收端的PDCP层会开启重排序定时器以等待接收(或者说,检测)被删除的数据包,直到重排序定时器超时时,接收端的PDCP层才能对接收的压缩的数据包进行解压缩,此时才能发现解压缩出错,再向发送端发送control PDU。由于重排序定时器的运行,导致可能有更多的压缩的数据包被发送到了接收端,接收端均无法实现解压缩,增大了丢包量。并且,由于发送端的PDCP层的预处理功能,会导致更多的数据包基于对不齐的buffer进行压缩,也会直接导致更多的压缩的数据包不能被接收端解压缩。可见,由于预处理流程,以及PDCP层需要在重排序定时器超时时才能发现问题,可能导致丢失的数据包量相较于LTE系统来说会变大。
请参考图5,为NR系统中的解压缩出错的反馈机制的示意。数据包3被删除时,数据包4、数据包5、数据包6、数据包7和数据包8已经压缩打包好,并且由于预处理,压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8已经被发送给了发送端的RLC层,发送端会正常发出,则接收端对于压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8均不能正确解压缩。例如接收端对于压缩的数据包1、压缩的数据包2、和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2、压缩的数据包1,则接收端在接收压缩的数据包4后会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包3,因为接收端无法等到压缩的数据包3,则在重排序定时器超时时,接收端的PDCP层可以对接收的压缩的数据包1、压缩的数据包2和压缩的数据包4进行解压缩。在解压缩时,接收端的PDCP层才会发现对压缩的数据包4解压缩失败,从而向发送端发送control PDU。而在等待重排序定时器超时的这段时间,可能又有多个压缩的数据包被发送到了接收端,或者有多个数据包已被发送端压缩处理完毕。例如,发送端的PDCP层接收该control PDU时,压缩的数据包5和压缩的数据包6已经发出,压缩的数据包7和压缩的数据包8已经交给了RLC层,数据包9还未进行压缩,因此发送端的PDCP层重置buffer,只能从数据包9开始,基于重置的buffer进行压缩,那么接收端的PDCP层接收压缩的数据包9后,可以进行正常的解压缩。但是压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8,接收端的PDCP层均无法解压缩,导致了这些数据包的丢失。
另外,还存在一种非独立组网(non-standalone,NSA)的场景,当前通信系统会出现采用NR PDCP层,但是全部采用LTE RLC层的承载,如主小区组(master cell group,MCG)承载,或者采用NR PDCP层,但是部分采用LTE RLC层的承载,如分离(split)承载。在此情况下,可以类似地应用上述NR系统的压缩与解压缩流程,但采用的LTE RLC层与NR的PDCP层均会对经过该层的数据包进行排序。在NSA的场景下,类似的,也会发生批量丢包的事件,此处就不再赘述。并且由于NR PDCP层与LTE RLC层均需要对数据包进行排序,发现压缩问题的时间将较LTE系统滞后,可能导致丢失的数据包量相较于LTE系统来说会变大。
鉴于此,提供本申请实施例的技术方案。在本申请实施例中,第一设备如果删除了第一数据包,则可以确定第二数据包对应的第一缓存,第一缓存用于对第二数据包进行压缩,也用于对压缩的第二数据包进行解压缩。因此,第一设备可以将第一缓存指示给第二设备,从而第二设备可以根据第一缓存对压缩的第二数据包进行解压缩。这样,即使第一设备删除了第一数据包,由于第一设备和第二设备的缓存的状态可以保持一致,因此第一设备也能对序列号位于第一数据包之后的压缩的第二数据包进行正确的解压缩,提高了接收端对数据包解压缩的成功率,减小了数据包丢失的可能性。
本申请实施例提供的技术方案可以应用于LTE系统,例如可以应用于普通的LTE系统或车联网等,例如车到一切(vehicle to everything,V2X)、LTE-V等,或者可以应用于NR系统,例如可以应用于普通的NR系统或车联网等,例如V2X、NR-V等,或者还可以应用于其他类似的通信系统或下一代通信系统。
请参见图6A,为本申请实施例的一种应用场景。在图6A中包括一个网络设备以及一个终端设备。其中,该网络设备例如工作在演进的通用移动通信系统陆地无线接入(evolved UMTS terrestrial radio access,E-UTRA)系统中,或者工作在NR系统中。当然,在本申请实施例中,一个网络设备可以服务于多个终端设备,图6A只是以其中的一个终端设备为例。
另外考虑一种本申请实施例的实际应用场景。当用户持有终端设备,要进行长期演进语音承载(voice over long-term evolution,VoLTE)/新无线语音承载(voice overnew radio,VoNR)电话或数据上网(如发起直播,玩游戏上网)等操作时,需要接入网络。在接入网络之初,终端设备一般需要向基站上报是否支持数据压缩的能力。当确定终端设备具备支持数据压缩的能力时,基站可以根据用户发起的业务,决定是否给终端设备配置数据压缩的相关参数。当终端设备被基站配置了可以进行数据压缩时,例如可以进行UDC,则终端设备在进行上行传输时,例如发起VoLTE/VoNR电话或者发起直播等的过程中,可以采用UDC方式。在这种情况下,终端设备可以使用本申请实施例所提供的方法来进行UDC,可以减少甚至避免上行数据压缩导致的丢包。类似的,如果进行下行数据压缩,也可以采用本申请实施例提供的方法,减少甚至避免下行数据压缩导致的丢包。
考虑到该实际应用场景,请参考图6B,也是本申请实施例的一种应用场景示意图。在图6B中,以用户持有终端设备发起VoLTE/VoNR电话为例。
图6A或图6B中的网络设备例如为基站。其中,网络设备在不同的系统对应不同的设备,例如在4G系统中可以对应eNB,在5G系统中对应5G中的网络设备,例如gNB。在5G系统中网络设备也可以是LTE网络设备与NR网络设备混合组网的设备,与终端设备组成混合空口双连接(mixed radio-dual connectivity,MR-DC)。当然本申请实施例所提供的技术方案也可以应用于未来的移动通信系统中,因此图6A或图6B中的网络设备也可以对应未来的移动通信系统中的网络设备。图6A或图6B以网络设备是基站为例,实际上参考前文的介绍,网络设备还可以是RSU等设备。
另外,本申请实施例并不限制于是网络设备和终端设备之间的通信,还可以是网络设备与网络设备之间的通信,或者也可以是终端设备与终端设备之间的通信。例如,本申请实施例中所述的第一设备可以是网络设备或终端设备,本申请实施例中所述的第二设备可以是网络设备或终端设备,且对于第一设备和第二设备的类型的组合方式不做限制。
下面结合附图介绍本申请实施例提供的技术方案。需要注意的是,在本申请的各个实施例中,在PDCP层压缩前的数据包(在下文中也称为数据包)和对应的压缩后的数据包,其序号可以是相同的。例如,第一数据包的序号和压缩后的第一数据包的序号是相同的,第二数据包的序号和压缩后的第二数据包的序号是相同的。另外,本申请的各个实施例所提供的技术方案,可以应用于AM的DRB的传输,也可以应用于非确认模式(unacknowledged mode,UM)的DRB的传输。
本申请实施例提供第一种通信方法,请参见图7,为该方法的流程图。在下文的介绍过程中,以该方法应用于图6A或图6B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第一通信装置和第二通信装置,其中,第一通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第一通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第二通信装置也是同样,第二通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第二通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第一通信装置和第二通信装置的实现方式均不做限制,例如第一通信装置可以是网络设备,第二通信装置是终端设备,或者第一通信装置和第二通信装置都是网络设备,或者第一通信装置和第二通信装置都是终端设备,或者第一通信装置是网络设备,第二通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由网络设备和终端设备执行为例,也就是说,以第一通信装置是网络设备、第二通信装置是终端设备为例。因为本实施例是以应用在图6A或图6B所示的网络架构为例,因此,下文中所述的第二设备可以是图6A或图6B所示的网络架构中的网络设备,下文中所述的第一设备可以是图6A或图6B所示的网络架构中的终端设备。
S71、第一设备删除第一数据包。
例如,第一设备的PDCP层从上层得到第一数据包后,可以开启discard timer,如果discard timer超时时第一数据包还未从第一设备的空口发出,则PDCP层可以删除第一数据包。
S72、第一设备向第二设备发送第一信令,第二设备接收来自第一设备的所述第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,第二设备为所述压缩的第二数据包的接收设备。
第一设备删除第一数据包后,可以确定第二数据包对应的缓存,例如为第一缓存,第一缓存用于对第二数据包进行压缩,或者可以用于对压缩的第二数据包进行解压缩。其中,这里所述的第一设备确定第一缓存,实际可以理解为,第一设备确定缓存的状态,或者说,确定缓存的内容,也就是说,“第一缓存”可以理解为缓存的状态或缓存包括的内容,而并不是理解为硬件意义上的缓存(buffer)。那么,第一缓存用于对第二数据包进行压缩,可以理解为,缓存所包括的内容(或者说缓存的状态)为第一缓存时,该缓存所包括的内容可用于对第二数据包进行压缩,同理,第一缓存用于对压缩的第二数据包进行解压缩,可以理解为,第一缓存所包括的内容(或者说第一缓存的状态)为第一缓存时,该缓存所包括的内容用于对压缩的第二数据包进行解压缩。例如,第一信令可以指示,第一缓存是对应于第二数据包(或者对应于压缩的第二数据包)的。
在空口传输中,每个数据包都有PDCP层对应的编号。其中,一个数据包在PDCP层的编号可以由两部分构成,序列号(sequence number,SN)和超帧号(hyper frame number,HFN),二者合起来就构成数据包的编号,或者说是数据包的计数(count)值。可参考图8,为数据包的计数值的构成示意图。在本申请实施例中所述的数据包的序号,可以是指数据包的序列号,或者是指数据包的计数值。
第二数据包的序号和第一数据包的序号连续,且第二数据包的序号在第一数据包的序号之后。第二数据包的序号在第一数据包的序号之后,是指第二数据包是第一数据包的下一个数据包。有可能第二数据包的序号大于第一数据包的序号,或者,如果序号的最大值是固定的,在某个数据包的序号为最大值时,该数据包的下一个数据包的序号又从0或1开始,那么也有可能第二数据包的序号小于第一数据包的序号。
例如,第一设备删除了第一数据包,第二数据包例如是序列号位于第一数据包之后的第一个数据包,例如第一数据包的序列号为3,则第二数据包的序列号为4。第二数据包可能已经被压缩完毕,第二数据包的压缩是在第一数据包被删除之前进行的,因此第二数据包是基于根据第一数据包所更新的缓存内容被压缩的。则第一设备在删除第一数据包时,或者在删除第一数据包之后,可以确定第二数据包对应的第一缓存,也就是确定在压缩第二数据包时,缓存所包括的内容。例如,第一设备待发送的数据包有数据包1、数据包2、数据包3和数据包4,其中第一数据包为数据包2,第二数据包为数据包3。以缓存只能容纳两个数据包的信息为例,第一设备在压缩数据包1时,缓存只包括预设的信息,第一设备基于预设的信息对数据包1进行压缩,且在压缩完毕后,将数据包1从缓存的后端放入缓存;第一设备在压缩数据包1时,缓存只包括预设的信息和数据包1,第一设备基于预设的信息和数据包1对数据包2进行压缩,且在压缩完毕后,将数据包2从缓存的后端放入缓存,则预设的信息被从缓存中挤出;第一设备在压缩数据包3时,缓存只包括数据包1和数据包2,第一设备基于数据包1和数据包2对数据包3进行压缩,且在压缩完毕后,将数据包3从缓存的后端放入缓存,则数据包1被从缓存中挤出;第一设备在压缩数据包4时,缓存只包括数据包2和数据包3,第一设备基于数据包2和数据包3对数据包4进行压缩,且在压缩完毕后,将数据包4从缓存的后端放入缓存,则数据包2被从缓存中挤出。之后,第一设备删除了数据包3(或者,是删除了压缩后的数据包3)。那么,第一设备在删除数据包3时,或者在删除数据包3之后,可以确定数据包3对应的第一缓存,数据包3对应的第一缓存,就包括数据包1和数据包2。
第一信令例如为control PDU,或者也可以是其他类型的信令。第一信令还可以包括第一数据包的序号或第二数据包的序号,数据包的序号例如为对应的PDCP层的SN号或计数值。第一信令包括的SN号或计数值,用于指示control PDU包含或指示的第一缓存为用于对压缩后的第二数据包进行解压缩的缓存,便于第二设备快速找到第一缓存是由于哪个数据包被删除引起的。或者,第一信令还可以包括第一缓存的序号,具体的不做限制。在本申请的各个实施例中,control PDU可以是指PDCP层的control PDU。
S73、第二设备的PDCP层根据所述第一信令所指示或包括的第一缓存,对压缩的第二数据包进行解压缩。
第一设备可以通过第一信令向第二设备指示第一缓存,或者第一信令可以包括第一缓存,这样第二设备接收第一信令后,就可以确定第二数据包对应的第一缓存,从而根据第一缓存对压缩的第二数据包进行正确的解压缩。通过这种方式,第二设备能够实现对压缩的第二数据包的正确的解压缩,提高了解压缩的成功率,也避免压缩的第二数据包被第二设备丢弃,减小了丢包量。
如果本申请实施例的技术方案是应用于NR系统,那么第二设备会开启重排序定时器来检测第二设备认为已发出却尚未接收的数据包,这其中可能就包括被删除的第一数据包(当然,第二设备所检测的应该是压缩后的第一数据包)。那么在重排序定时器超时之前,如果第二设备接收了第一信令和压缩的第二数据包,则第二设备可以有两种处理方式。一种处理方式为,第二设备等到重排序定时器超时时,再根据第一缓存对压缩的第二数据包进行解压缩;另一种处理方式为,第二设备无需等到重排序定时器超时,只要接收了第一信令和压缩的第二数据包,就可以根据第一缓存对压缩的第二数据包进行解压缩,这样减少了第二设备的处理时间。如果第一信令包含了第一数据包的序号或第二数据包的序号,则第二设备可以快速地判断,当前第一信令指示或包含的第一缓存用于解压缩哪个数据包,以及确定对于当前的重排序定时器的影响。
例如请参考图9A,为NR系统中的处理过程的一种示例。图9A中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图9A中下面一行的PDCP是指第二设备的PDCP层,因为第二设备的RLC层接收压缩的数据包后会直接递交给PDCP层,不会进行排序等操作,因此图9A中未画出第二设备的RLC层。例如图9A中,第一设备删除了数据包3,则第一设备不会发送压缩的数据包3。第二设备的PDCP层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1。那么在接收压缩的数据包4后,第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包3。在重排序定时器超时之前,第二设备的PDCP层又接收了压缩的数据包1和压缩的数据包2,但是未接收压缩的数据包3,因此第二设备的PDCP层会保持重排序定时器继续运行。在重排序定时器超时之前,如图9A中的竖直虚线所示,第二设备的PDCP层接收了第一设备所发送的control PDU,该control PDU指示了压缩的数据包4对应的第一缓存。那么,第二设备的PDCP层可以无需继续等待重排序定时器,而是可以直接根据压缩的数据包4对应的第一缓存对压缩的数据包4进行解压缩。另外,由于重排序定时器只是在等待压缩的数据包3,而第二设备的PDCP层已经可以对压缩的数据包4进行解压缩,无需压缩的数据包3,因此第二设备的PDCP层也可以关闭重排序定时器。或者,第二设备的PDCP层即使在重排序定时器超时之前接收了control PDU,但第二设备的PDCP层也会等到重排序定时器超时时再根据压缩的数据包4对应的第一缓存对压缩的数据包4进行解压缩。第二设备的PDCP层在对压缩的数据包4进行解压缩之后,可以将解压缩后得到的数据包1、数据包2和数据包4递交给上层。第二设备的PDCP层基于control PDU中携带的第一缓存的序号,或第一缓存对应的数据包序号,可以尽快确定第一缓存所对应的数据包。例如control PDU携带数据包4的序号,也就是4,说明第一缓存用于对数据包4进行解压缩,或者control PDU携带数据包3的序号,也就是3,说明第一缓存为删除数据包3后需要更新的缓存内容。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩,再将解压缩后得到的数据包5递交给上层。之后,第二设备又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但第二设备的PDCP层对于这3个压缩的数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6。则在接收压缩的数据包8后,第二设备的PDCP层开启重排序定时器,以等待压缩的数据包6和压缩的数据包7。那么在接收压缩的数据包6和压缩的数据包7后,第二设备的PDCP层关闭重排序定时器,且对这3个压缩的数据包进行排序,再对排序后的3个压缩的数据包依次解压缩,之后再将解压缩后得到的数据包递交给上层。例如,第二设备的PDCP层对压缩的数据包1解压缩,依据的是缓存中包括的预设的信息,第二设备的PDCP层对压缩的数据包2进行解压缩,依据的是缓存中包括的预设的信息以及压缩的数据包1解压缩后得到的信息(也就是数据包1),第二设备的PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息(也就是数据包1)以及压缩的数据包2解压缩后得到的信息(也就是数据包2),等等,以此类推。其中,图9A中出现的数据包的序号(或压缩的数据包的序号)均为PDCP层的序列号。
另外,在上一段的举例中,第二设备的PDCP层如果在重排序定时器超时之前就对压缩的第二数据包进行解压缩,那么第二设备的PDCP层可以关闭重排序定时器,这种情况是说,重排序定时器只是在等待压缩的第一数据包。或者还有其他的情况,例如第二设备的PDCP层接收了压缩的数据包5,而压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4都未接收,则第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4。例如第一设备的PDCP层删除了数据包2和数据包4,那么第一设备可以将数据包3对应的缓存1和数据包5对应的缓存2都发送给第二设备,其中,缓存1是指数据包3对应的缓存的状态,缓存2是指数据包5对应的缓存的状态。但是在重排序定时器超时之前的某个时刻,第二设备的PDCP层先接收了数据包5对应的缓存2,未接收数据包3对应的缓存1,则第二设备的PDCP层可以根据数据包5的缓存2对压缩的数据包5进行解压缩,但是第二设备的PDCP层可以不关闭重排序定时器,而是继续等待接收压缩的数据包2。之后,第二设备的PDCP层有可能在重排序定时器超时之前接收数据包3对应的缓存1,则第二设备的PDCP层可以根据数据包3的缓存1对压缩的数据包3进行解压缩,且可以关闭重排序定时器。
请再参考图9B,为LTE系统中的数据包压缩和解压缩的过程的一种示例。图9B中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图9B中下面两行的PDCP和RLC是指第二设备的PDCP层和RLC层。在LTE系统中,第二设备的RLC层会对接收到的压缩的数据包进行排序,再将排序后的压缩的数据包递交给PDCP层。例如,第一设备的PDCP层删除了数据包3,则第一设备的PDCP层可以向接收端发送control PDU,以指示数据包4对应的第一缓存。例如第二设备的RLC层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1(其中,第一设备的RLC层已经对压缩的数据包4进行了重新编号,对于RLC层来说压缩的数据包4的编号是RLC层的3号),那么在接收压缩的数据包1后,第二设备的RLC层对这3个压缩的数据包进行排序,再按照正常的顺序将这3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后就对这3个压缩的数据包依次解压缩。而对于第二设备的PDCP层来说,压缩的数据包4不是压缩的数据包3,压缩的数据包3没有接收到,因此第二设备的PDCP层对压缩的数据包4的解压缩本身是会出错。但是第二设备的PDCP层还会接收来自发送端的control PDU,PDCP层根据该control PDU的指示就能对压缩的数据包4进行正确的解压缩。
之后,第二设备接收了压缩的数据包5,第二设备的RLC层将压缩的数据包5递交给第二设备的PDCP层,第二设备的PDCP层对压缩的数据包5进行解压缩。之后,第二设备又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但第二设备的RLC层对于这3个数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6,那么在接收压缩的数据包6后,第二设备的RLC层对这3个压缩的数据包进行排序,再将排序后的3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后,依次对这3个压缩的数据包进行解压缩。例如,第二设备的PDCP层对压缩的数据包1解压缩,依据的是buffer中包括的预设的信息,第二设备的PDCP层对压缩的数据包2进行解压缩,依据的是buffer中包括的预设的信息以及压缩的数据包1解压缩后得到的信息(也就是数据包1),第二设备的PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息(也就是数据包1)以及压缩的数据包2解压缩后得到的信息(也就是数据包2),等等,以此类推。其中,图9B中出现的数据包的序号(或压缩的数据包的序号)均为PDCP层的序列号。
另外还考虑一种情况,如果第二设备在接收压缩的第二数据包时,或者在要对压缩的第二数据包进行解压缩时,还未接收第一信令,那么第二设备的PDCP层可以继续对压缩的第二数据包进行解压缩,但第二设备的PDCP层对压缩的第二数据包的解压缩会失败。在这种情况下,第二设备可以存储压缩的第二数据包,等到接收第一信令后,再根据第一信令指示或包括的第一缓存对压缩的第二数据包进行解压缩,以减小第二数据包被丢弃的概率。作为一种可选的方式,考虑到第二设备的存储空间有限,可能不适宜无限制地等待第一信令,因此可以设置第一定时器,例如第二设备在存储压缩的第二数据包时可以开启第一定时器。在第一定时器超时前如果接收了第一信令,第二设备就可以根据第一信令指示的第一缓存对压缩的第二数据包进行解压缩,且关闭第一定时器。而在第一定时器超时时,如果第二设备还未接收第一信令,则第二设备可以丢弃压缩的第二数据包,这样可以节省第二设备的存储空间。第一定时器的定时时长可以由第二设备设置,或者也可以通过协议规定等。
在本申请实施例中,第一设备如果删除了第一数据包,则可以将第二数据包对应的第一缓存指示给第二设备,从而第二设备可以根据第一缓存对第二数据包进行解压缩。这样,即使第一设备删除了第一数据包,由于第一设备和第二设备的缓存的状态可以保持一致,因此第一设备也能对序号位于第一数据包之后的压缩的第二数据包进行正确的解压缩,提高了接收端对压缩的数据包解压缩的成功率,减小了数据包丢失的概率。
为了解决相同的技术问题,本申请实施例提供第二种通信方法。请参见图10,为该方法的流程图。在下文的介绍过程中,以该方法应用于图6A或图6B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第三通信装置和第四通信装置,其中,第三通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第三通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第四通信装置也是同样,第四通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第四通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第三通信装置和第四通信装置的实现方式均不做限制,例如第三通信装置可以是网络设备,第四通信装置是终端设备,或者第三通信装置和第四通信装置都是网络设备,或者第三通信装置和第四通信装置都是终端设备,或者第三通信装置是网络设备,第四通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由网络设备和终端设备执行为例,也就是说,以第三通信装置是网络设备、第四通信装置是终端设备为例。因为本实施例是以应用在图6A或图6B所示的网络架构为例,因此,下文中所述的第二设备可以是图6A或图6B所示的网络架构中的网络设备,下文中所述的第一设备可以是图6A或图6B所示的网络架构中的终端设备。
S101、第一设备的PDCP层删除第一数据包。
例如,PDCP层从上层得到第一数据包后,可以开启丢弃定时器,如果丢弃定时器超时时第一数据包还未从发送端的空口发出,则PDCP层会删除第一数据包。或者第一设备的PDCP层还可能因为其他的一些原因而删除第一数据包。
S102、第一设备向第二设备发送第一信息,第二设备接收来自第一设备的所述第一信息。所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态,所述第二数据包为压缩的第一数据包,第二设备为第二数据包的接收设备。
在本申请实施例中,第一设备的PDCP层压缩第一数据包,得到第二数据包,第一设备确定要删除第一数据包,但第一设备仍会将第二数据包发送给第二设备,且指示第二数据包仅用于解压缩。这样第二设备接收第二数据包后,只会使用第二数据包对其他数据包进行解压缩,而不将第二数据包用于其他用途。从而既能够完成对其他数据包的解压缩,也不会将本应删除的第一数据包用于其他用途。
第一设备向第二设备发送第一信息,第一信息指示第二数据包仅用于解压缩或同步缓存状态,可能有不同的方式。
第一种方式、第一设备的PDCP层为第二数据包添加第一标识,第一标识用于指示第二数据包仅用于解压缩或同步缓存状态。例如PDCP层可以将第一标识添加在第二数据包的包头。第一信息可以包括第一标识。
在这种方式下,第一设备的PDCP层虽然删除了第一数据包,但是在删除之前,PDCP层压缩第一数据包得到第二数据包,通过在PDCP层可以为第二数据包添加第一标识,仍通过第一设备发送给第二设备。在发送第二数据包后(对于PDCP层来说,可以认为是将第二数据包交给RLC层后),PDCP层可以删除本地存储的第一数据包。
第二种方式、第一设备的RLC层为第二数据包添加第一标识,第一标识用于指示第二数据包仅用于解压缩或同步缓存状态。例如RLC层可以将第一标识添加在第二数据包的包头。第一信息可以包括第一标识。
在这种方式下,第一设备的PDCP层可以确定要删除第一数据包,但第一数据包已经被压缩为第二数据包,且第二数据包可能已经交给了RLC层,则PDCP层可以通知RLC层删除第二数据包,另外,PDCP层也可以删除本地存储的第一数据包。RLC接收PDCP层的通知后,可以为第二数据包添加第一标识,并继续发送第二数据包。
第一种方式和第二种方式可以直接在第二数据包中添加第一标识来进行指示,从而只需正常向第二设备发送第二数据包,第二设备接收第二数据包后,根据第二数据包携带的第一标识就可以确定第二数据包仅用于解压缩,无需第一设备发送过多的信息来指示,有助于节省信令开销。
第三种方式、第一设备的PDCP层向第二设备发送control PDU,该control PDU携带第二数据包,control PDU用于指示第二数据包仅用于解压缩或同步缓存状态。第一信息可以是该control PDU。
这种方式无需对第二数据包的结构进行任何改变,也无需在第二数据包中添加信息,只需将第二数据包承载在control PDU中发送给第二设备即可,可以由control PDU来指示第二数据包仅用于解压缩或同步缓存状态。则第二设备接收control PDU后就可以确定,该control PDU承载的数据包是仅用于解压缩或同步缓存状态的数据包。指示方式较为简单,且指示明确。
作为一种可选的方式,control PDU还可以包括第一数据包的序号,或包括第二数据包的序号。通过在control PDU中添加数据包的序号,可以使得第二设备明确相应的数据包在多个数据包中的位置。
S103、第二设备的PDCP层根据所述第二数据包,对压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。其中,压缩的第三数据包的序号和第三数据包的序号可以是相同的,因此,第三数据包的序号位于第二数据包的序号之后,压缩的第三数据包的序号也就位于第二数据包的序号之后。
第二设备根据第一信息可以确定第二数据包仅用于解压缩,从而第二设备仅使用第二数据包进行解压缩,而不将第二数据包用于其他用途。例如,第二设备在使用第二数据包对其他数据包(例如压缩的第三数据包)进行解压缩后,并不将解压缩后的第二数据包(也就是第一数据包)递交给PDCP层的上层,例如可以丢弃第一数据包(或者,丢弃解压缩后的第一数据包)。压缩的第三数据包是需要基于第一数据包进行解压缩的数据包,例如在对压缩的第三数据包进行解压缩时,缓存中需要包括第一数据包。因此,第二设备是对第二数据包进行解压缩,得到第一数据包,再根据第一数据包对压缩的第三数据包进行解压缩。
例如请参考图11,为NR系统中的处理过程的一种示例。图11中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图11中下面一行的PDCP是指第二设备的PDCP层,因为第二设备的RLC层接收数据包后会直接递交给PDCP层,不会进行排序等操作,因此图11中未画出第二设备的RLC层。例如图11中,第一设备删除了数据包3,则第一设备可以继续发送压缩的数据包3,且通过第一信息指示压缩的数据包3仅用于解压缩。第二设备的PDCP层对于压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4的接收顺序是压缩的数据包3、压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包3后,第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包4。在重排序定时器超时之前,第二设备的PDCP层接收了压缩的数据包1、压缩的数据包2和压缩的数据包4,则第二设备的PDCP层关闭重排序定时器,且对这4个压缩的数据包进行排序,在排序后,第二设备的PDCP层依次对压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4进行解压缩。因为第二设备的PDCP层接收了压缩的数据包3,因此能够根据压缩的数据包3对压缩的数据包4进行正确的解压缩。在解压缩后,第二设备的PDCP层将解压缩后得到的数据包1、数据包2和数据包4递交给上层,但是因为压缩的数据包3仅用于解压缩,而不用于其他用途,因此第二设备的PDCP层并不将解压缩后得到的数据包3递交给上层。那么,如果数据包3还需要用于对其他数据包进行解压缩,则第二设备的PDCP层可以暂时存储数据包3,而如果数据包3已经不需要用于对其他数据包进行解压缩,则第二设备的PDCP层可以删除数据包3。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩,再将解压缩后得到的数据包5递交给上层。之后,第二设备又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但第二设备的PDCP层对于这3个压缩的数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6,则在接收压缩的数据包8后,第二设备的PDCP层开启重排序定时器,以等待压缩的数据包6和压缩的数据包7。那么在接收压缩的数据包6和压缩的数据包7后,第二设备的PDCP层关闭重排序定时器,且对这3个压缩的数据包进行排序,再对排序后的3个压缩的数据包依次解压缩,之后再将解压缩后得到的数据包递交给上层。例如,第二设备的PDCP层对压缩的数据包1解压缩,依据的是缓存中包括的预设的信息,第二设备的PDCP层对压缩的数据包2进行解压缩,依据的是缓存中包括的预设的信息以及压缩的数据包1解压缩后得到的信息(也就是数据包1),第二设备的PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息(也就是数据包1)以及压缩的数据包2解压缩后得到的信息(也就是数据包2),等等,以此类推。其中,图11中出现的数据包的序号(或压缩的数据包的序号)均为PDCP层的序列号。
请再参考图12,为LTE系统中的数据包压缩和解压缩的过程的一种示例。图12中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图12中下面两行的PDCP和RLC是指第二设备的PDCP层和RLC层。在LTE系统中,第二设备的RLC层会对接收到的压缩的数据包进行排序,再将排序后的压缩的数据包递交给PDCP层。例如,第一设备的PDCP层确定删除数据包3,但第一设备的PDCP层会继续发送压缩的数据包3,并通过第一信息指示压缩的数据包3仅用于解压缩。例如第二设备的RLC层对于压缩的数据包1、压缩的数据包2、压缩的数据包3和压缩的数据包4的接收顺序是压缩的数据包3、压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,第二设备的RLC层对这4个压缩的数据包进行排序,再按照正常的顺序将这4个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这4个压缩的数据包后就对这4个压缩的数据包依次解压缩。因为第二设备的PDCP层也接收了压缩的数据包3,因此第二设备的PDCP层能够根据压缩的数据包3对压缩的数据包4进行正确的解压缩。在解压缩后,第二设备的PDCP层将解压缩后得到的数据包1、数据包2和数据包4递交给上层,但是因为压缩的数据包3仅用于解压缩,而不用于其他用途,因此第二设备的PDCP层并不将解压缩后得到的数据包3递交给上层。那么,如果数据包3还需要用于对其他数据包进行解压缩,则第二设备的PDCP层可以暂时存储数据包3,而如果数据包3已经不需要用于对其他数据包进行解压缩,则第二设备的PDCP层可以删除数据包3。
之后,第二设备接收了压缩的数据包5,第二设备的RLC层将压缩的数据包5递交给第二设备的PDCP层,第二设备的PDCP层对压缩的数据包5进行解压缩。之后,第二设备又接收了压缩的数据包6、压缩的数据包7和压缩的数据包8,但第二设备的RLC层对于这3个压缩的数据包的接收顺序是压缩的数据包8、压缩的数据包7、压缩的数据包6,那么在接收压缩的数据包6后,第二设备的RLC层对这3个压缩的数据包进行排序,再将排序后的3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后,依次对这3个压缩的数据包进行解压缩。
例如,第二设备的PDCP层对压缩的数据包1解压缩,依据的是缓存中包括的预设的信息,第二设备的PDCP层对压缩的数据包2进行解压缩,依据的是缓存中包括的预设的信息以及压缩的数据包1解压缩后得到的信息(也就是数据包1),第二设备的PDCP层对压缩的数据包3进行解压缩,依据的是压缩的数据包1解压缩后得到的信息(也就是数据包1)以及压缩的数据包2解压缩后得到的信息(也就是数据包2),等等,以此类推。其中,图12中出现的数据包的编号均为PDCP层的序列号。
在本申请实施例中,第一设备的PDCP层虽然确定要删除第一数据包,但是第一设备还是会将压缩的第一数据包发送给第二设备,且指示压缩的第一数据包仅用于解压缩。这样第二设备接收压缩的第一数据包后,只会使用压缩的第一数据包对其他数据包进行解压缩,而不将压缩的第一数据包用于其他用途。从而既能够完成对其他数据包的解压缩,减小了解压缩出错的概率,相应的减小了丢包量。而且也不会将本应删除的第一数据包用于其他用途,避免出错。
为了解决相同的技术问题,本申请实施例提供第三种通信方法。请参见图13,为该方法的流程图。在下文的介绍过程中,以该方法应用于图6A或图6B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第五通信装置和第六通信装置,其中,第五通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第五通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第六通信装置也是同样,第六通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第六通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第五通信装置和第六通信装置的实现方式均不做限制,例如第五通信装置可以是网络设备,第六通信装置是终端设备,或者第五通信装置和第六通信装置都是网络设备,或者第五通信装置和第六通信装置都是终端设备,或者第五通信装置是网络设备,第六通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由网络设备和终端设备执行为例,也就是说,以第五通信装置是网络设备、第六通信装置是终端设备为例。因为本实施例是以应用在图6A或图6B所示的网络架构为例,因此,下文中所述的第二设备可以是图6A或图6B所示的网络架构中的网络设备,下文中所述的第一设备可以是图6A或图6B所示的网络架构中的终端设备。
S131、第一设备删除第一数据包。
例如,第一设备的PDCP层从上层得到第一数据包后,可以开启丢弃定时器,如果丢弃定时器超时时第一数据包还未从发送端的空口发出,则PDCP层会删除第一数据包。或者第一设备的PDCP层还可能因为其他的一些原因而删除第一数据包。
S132、第一设备重置缓存,并根据重置后的缓存包括的内容对第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为第一设备尚未进行压缩的数据包。
在本申请的各个实施例中,重置(reset)缓存可以是指将缓存清零,或者是指,将缓存清零后再为清零后的缓存配置预设的信息,或者是指,直接为缓存配置预设的信息。其中,预设的信息例如为预制字典(predefined dictionary)。预制字典可以是第一设备自行设置的,或者是协议规定的,或者是第二设备配置的。其中,如果重置缓存是指直接为缓存配置预制字典,那么可以理解为,是用预制字典覆盖缓存中的原有内容。
另外,重置缓存可以是指将缓存清零后再为清零后的缓存配置预制字典,这是认为,将缓存清零、以及为缓存配置预制字典,这两个操作都属于“重置缓存”这一操作。或者还可以有另一种理解,重置缓存就是指将缓存清零,而为清零后的缓存配置预制字典,这是另一个操作,那么可以理解为,在重置缓存(也就是将缓存清零)之后,第一设备还可以为缓存配置预制字典。也就是说,在这种理解中,“为清零后的缓存配置预制字典”,这个操作不属于“重置缓存”这一操作,而是在“重置缓存”这一操作结束后的另一个操作。另外,与仅清零缓存相比,在数据包间的内容比较类似时,清零缓存并将缓存内容配置预制字典,可以有效地提高清零缓存后的数据包的压缩率。
例如,第一设备的PDCP层删除了数据包3,则第一设备可以重置缓存。而此时数据包4、数据包5和数据包6已经压缩完毕,数据包7还未压缩,那么第一设备就根据重置的缓存对数据包7进行压缩。
另外,第一设备还可以为压缩的第二数据包添加第二标识,第二标识用于指示压缩的第二数据包为根据重置的缓存压缩的数据包。例如可以由第一设备的PDCP层为压缩的第二数据包添加第二标识,例如将第二标识添加在压缩的第二数据包的包头,或者可以由第一设备的RLC层为压缩的第二数据包添加第二标识,例如将第二标识添加在压缩的第二数据包的包头,或者也可以通过其他方式为压缩的第二数据包添加第二标识。
S133、第一设备向第二设备发送压缩的第二数据包,第二设备接收来自第一设备的所述压缩的第二数据包。
第一设备在根据重置的缓存压缩第二数据包后,可以将压缩的第二数据包发送给第二设备。第二设备接收压缩的第二数据包后,根据第二标识就可以确定该压缩的第二数据包是根据重置的缓存进行的压缩,第二设备可以对压缩的第二数据包进行正确的解压缩,得到第二数据包。例如,第二设备可以根据预设的信息对第二数据包进行解压缩,得到第二数据包。第一设备在删除第一数据包时,可以无需等待来自第二设备的control PDU(用于指示解压缩出错),而是及时地重置缓存,这样可以减少被删除的数据包对后续的数据包所带来的影响,减少第二设备解压缩出错的数据包的数量,也就是减少丢包量。
当然,第一设备虽然较为及时地重置了缓存,但第二数据包只是第一个还未被压缩的数据包,也就是说,在第一设备删除第一数据包时,可能第二数据包之前的一些数据包已经被压缩完毕或者可能已经被发出,对于这些压缩的数据包,第一设备仍然会继续发送。第二设备接收这些压缩的数据包后,由于第一数据包被删除,因此第二设备对于这些压缩的数据包还是会解压缩失败。例如第三数据包是在第一数据包被删除前就已经压缩完毕的,则第二设备接收压缩的第三数据包后,对压缩的第三数据包的解压缩会出错。则第二设备可以向第一设备发送control PDU,该control PDU用于指示压缩的第三数据包解压失败,例如该control PDU可以指示压缩的第三数据包的标识,压缩的第三数据包的标识例如为第三数据包的序列号(例如是对应于PDCP层的序列号),或者是其他的能够用于指示压缩的第三数据包的标识。第一设备的PDCP层接收control PDU后,根据该control PDU就可以明确是压缩的第三数据包解压失败。此时,第一设备可以将压缩的第三数据包的序列号与第二数据包的序列号进行比较,如果压缩的第三数据包的序列号大于第二数据包的序列号,表明在第一设备重置缓存之后,又有数据包被解压缩失败,那么第一设备可以再次重置缓存,在重置缓存后,第一设备将当前还未压缩的数据包,根据再次重置后的缓存进行压缩。或者,如果压缩的第三数据包的序列号小于或等于第二数据包的序列号,那么表明压缩的第三数据包就是使用重置之前的缓存压缩的数据包,本身就是会解压缩出错,那么第一设备可以不进行处理,例如第一设备可以继续维持缓存不变。
例如请参考图14,为NR系统中的处理过程的一种示例。图14中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图14中下面一行的PDCP是指第二设备的PDCP层,因为第二设备的RLC层接收压缩的数据包后会直接递交给PDCP层,不会进行排序等操作,因此图14中未画出第二设备的RLC层。例如图14中,第一设备删除了数据包3,则第一设备的PDCP层不会发送压缩的数据包3。但第一设备会重置缓存,在重置缓存后,数据包4、数据包5和数据包6已经被压缩完毕,数据包7还未压缩,则第一设备的PDCP层会根据重置的缓存对数据包7进行压缩,且第一设备正常发送各压缩的数据包。第二设备的PDCP层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包4后,第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包3。在重排序定时器超时时,第二设备的PDCP层只收到了压缩的数据包1和压缩的数据包2,仍未收到压缩的数据包3,则第二设备对压缩的数据包1、压缩的数据包2和压缩的数据包4进行排序,在排序后,第二设备的PDCP层对压缩的数据包1、压缩的数据包2和压缩的数据包4进行解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,将压缩的数据包4的序列号与数据包7的序列号进行比较,因为4小于7,因此第一设备确定压缩的数据包4是在重置缓存之前被压缩的数据包,本就会解压缩出错。因此第一设备维持缓存不变。之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。例如第二设备的PDCP层可以继续向第一设备发送control PDU,该control PDU指示压缩的数据包5的解压缩出错。第一设备的PDCP层接收该control PDU后,将压缩的数据包5的序列号与数据包7的序列号进行比较,因为5小于7,因此第一设备确定压缩的数据包5是在重置缓存之前被压缩的数据包,本就会解压缩出错。因此第一设备维持缓存不变。对于压缩的数据包6来说也是同样的,第二设备的PDCP层在对压缩的数据包6进行解压缩时也会出错。
之后,第二设备又接收了压缩的数据包7,第二设备根据压缩的数据包7携带的第二标识可以确定压缩的数据包7是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对压缩的数据包7进行解压缩即可。之后第二设备再接收压缩的数据包8、压缩的数据包9和压缩的数据包10,均能进行正确的解压缩。
其中,图14中出现的数据包的编号均为PDCP层的序列号。
请再参考图15,为LTE系统中的数据包压缩和解压缩的过程的一种示例。图15中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示buffer中包括的预设的信息。每个数据包都基于当前的buffer所包括的内容进行压缩。图15中下面两行的PDCP和RLC是指第二设备的PDCP层和RLC层。在LTE系统中,第二设备的RLC层会对接收到的数据包进行排序,再将排序后的数据包递交给PDCP层。例如,第一设备的PDCP层确定删除数据包3,则第一设备的PDCP层不会发送压缩的数据包3。但第一设备会重置缓存,在重置缓存后,数据包4、数据包5和数据包6已经被压缩完毕,数据包7还未压缩,则第一设备的PDCP层会根据重置的缓存对数据包7进行压缩,且第一设备正常发送各压缩的数据包。例如第二设备的RLC层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,第二设备的RLC层对这3个压缩的数据包进行排序,再按照正常的顺序将这3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后就对这3个压缩的数据包依次解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,将压缩的数据包4的序列号与数据包7的序列号进行比较,因为4小于7,因此第一设备确定压缩的数据包4是在重置缓存之前被压缩的数据包,本就会解压缩出错。因此第一设备维持缓存不变。之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。例如第二设备的PDCP层可以继续向第一设备发送control PDU,该control PDU指示压缩的数据包5的解压缩出错。第一设备的PDCP层接收该control PDU后,将压缩的数据包5的序列号与数据包7的序列号进行比较,因为5小于7,因此第一设备确定压缩的数据包5是在重置缓存之前被压缩的数据包,本就会解压缩出错。因此第一设备维持缓存不变。对于压缩的数据包6来说也是同样的,第二设备的PDCP层在对压缩的数据包6进行解压缩时也会出错。
之后,第二设备又接收了压缩的数据包7,第二设备根据压缩的数据包7携带的第二标识可以确定压缩的数据包7是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对压缩的数据包7进行解压缩即可。之后第二设备再接收压缩的数据包8、压缩的数据包9和压缩的数据包10,均能进行正确的解压缩。
其中,图15中出现的数据包的编号均为PDCP层的序列号。
在本申请实施例中,第一设备在删除第一数据包时,可以无需等待来自第二设备的control PDU(用于指示解压缩出错),而是及时地重置缓存。相对于等到来自第二设备的control PDU后再重置缓存的方案来说,本申请实施例的方案可以减少利用重置前的缓存所压缩的数据包的数量,减小被删除的数据包对后续的数据包所带来的影响,减少第二设备解压缩出错的数据包的数量,也就是减少丢包量。
为了解决相同的技术问题,本申请实施例提供第四种通信方法。请参见图16,为该方法的流程图。在下文的介绍过程中,以该方法应用于图6A或图6B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第七通信装置和第八通信装置,其中,第七通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第七通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第八通信装置也是同样,第八通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第八通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第七通信装置和第八通信装置的实现方式均不做限制,例如第七通信装置可以是网络设备,第八通信装置是终端设备,或者第七通信装置和第八通信装置都是网络设备,或者第七通信装置和第八通信装置都是终端设备,或者第七通信装置是网络设备,第八通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由网络设备和终端设备执行为例,也就是说,以第七通信装置是网络设备、第八通信装置是终端设备为例。因为本实施例是以应用在图6A或图6B所示的网络架构为例,因此,下文中所述的第二设备可以是图6A或图6B所示的网络架构中的网络设备,下文中所述的第一设备可以是图6A或图6B所示的网络架构中的终端设备。
S161、第一设备删除第一数据包。
例如,第一设备的PDCP层从上层得到第一数据包后,可以开启discard timer,如果discard timer超时时第一数据包还未从第一设备的空口发出,则PDCP层可以删除第一数据包。
S162、第一设备接收来自第二设备的控制PDU,所述控制PDU用于指示压缩的第二数据包解压缩失败。
第一设备在删除第一数据包后,按照正常的方式对其他的数据包进行压缩以及发送。例如第一设备删除了数据包3,在数据包3被删除时,数据包4、数据包5、数据包6、数据包7和数据包8已经压缩处理好,第一设备会正常发出,则第二设备对于压缩的数据包4、压缩的数据包5、压缩的数据包6、压缩的数据包7和压缩的数据包8均不能正确解压缩。那么第二设备的PDCP层在对压缩的数据包4解压缩失败时,可以向第一设备发送control PDU,告知第一设备解压缩出错。在本申请实施例中,control PDU可以指示是压缩的数据包4解压缩出错,例如control PDU可以携带压缩的数据包4的序号。
S163、第一设备重置缓存,并根据重置后的缓存对至少一个数据包进行压缩,所述至少一个数据包包括所述第一设备尚未发送给所述第二设备的全部或部分数据包。
第一设备在接收来自第二设备的control PDU之后,可以重置缓存,关于重置缓存的具体操作,可参考图13所示的实施例的介绍。在重置缓存后,第一设备根据重置后的缓存对至少一个数据包进行压缩。至少一个数据包可以包括第一设备尚未向第二设备发送的全部的数据包或者部分数据包,而第一设备尚未向第二设备发送的数据包,可以包括第一设备已经压缩完毕的数据包(是根据重置前的缓存进行的压缩),也可以包括第一设备尚未压缩的数据包,那么至少一个数据包可以包括第一设备已经压缩完毕的数据包,或包括第一设备尚未压缩的数据包,或包括第一设备已经压缩完毕的数据包,以及第一设备尚未压缩的数据包。
另外,第一设备还可以为压缩的第四数据包添加第一标识,第一标识用于指示压缩的第四数据包为根据重置的缓存压缩的数据包。例如可以由第一设备的PDCP层为压缩的第四数据包添加第一标识,例如将第一标识添加在压缩的第四数据包的包头,或者可以由第一设备的RLC层为压缩的第四数据包添加第一标识,例如将第一标识添加在压缩的第四数据包的包头,或者也可以通过其他方式为压缩的第四数据包添加第一标识。第三数据包可以是至少一个数据包中序号最靠前的数据包,序号最靠前,是指第四数据包的生成时间比至少一个数据包中除了第四数据包之外的其他的数据包要靠前。例如至少一个数据包包括数据包4、数据包5和数据包6,那么第四数据包就是指数据包4。通过添加第一标识,可以使得第二设备明确从哪个压缩的数据包开始可以使用预设的信息来进行解压缩。
例如请参考图17,为NR系统中的处理过程的一种示例。图17中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以buffer大小是2个数据包为例,每个虚线框就表示buffer所包括的内容,另外虚线框中有画“/”的方框,表示缓存中包括的预设的信息。每个数据包都基于当前的缓存所包括的内容进行压缩。图17中下面一行的PDCP是指第二设备的PDCP层,因为第二设备的RLC层接收压缩的数据包后会直接递交给PDCP层,不会进行排序等操作,因此图17中未画出第二设备的RLC层。例如图17中,第一设备删除了数据包3,则第一设备的PDCP层不会发送压缩的数据包3。且第一设备的PDCP层正常对其他数据包进行压缩以及发送,例如在数据包3被删除时,数据包4、数据包5、和数据包6已经压缩完毕,数据包7尚未压缩,则第一设备可以发送数据包4等,以及可以压缩数据包7。第二设备的PDCP层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包4后,第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包3。在重排序定时器超时时,第二设备的PDCP层只收到了压缩的数据包1和压缩的数据包2,仍未收到压缩的数据包3,则第二设备对压缩的数据包1、压缩的数据包2和压缩的数据包4进行排序,在排序后,第二设备的PDCP层对压缩的数据包1、压缩的数据包2和压缩的数据包4进行解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,可以重置缓存。在重置缓存后,例如数据包4、数据包5和数据包6都已发出,数据包7和数据包8已经被压缩完毕但还未发出,数据包9和数据包10尚未压缩。那么第一设备的PDCP层可以根据重置后的缓存对数据包7和数据包8进行重新压缩,以及根据重置后的缓存对数据包9和数据包10进行压缩。可以理解为,PDCP层是根据预设的信息对数据包7进行压缩。那么之后,对于数据包8、数据包9和数据包10,再根据缓存中的内容相应进行压缩。另外,因为数据包7是根据重置后的缓存进行的压缩,则第一设备在发送数据包7时可以为数据包7添加第一标识,第一标识用于指示数据包7为根据重置的缓存压缩的数据包。对于后续的压缩的数据包,则无需再添加第一标识。第一设备可以发送重新压缩后的数据包7、数据包8,以及正常发送压缩的数据包9和压缩的数据包10。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。对于压缩的数据包6也是同样,第二设备的PDCP层对压缩的数据包6进行解压缩时依然会出错。
之后,第二设备又接收了压缩的数据包7,第二设备根据压缩的数据包7携带的第一标识可以确定压缩的数据包7是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对压缩的数据包7进行解压缩即可。之后第二设备再接收压缩的数据包8、压缩的数据包9和压缩的数据包10,均能进行正确的解压缩。
其中,图17中出现的数据包的序号(或者压缩的数据包的序号)均为PDCP层的序列号。
请再参考图18,为LTE系统中的数据包压缩和解压缩的过程的一种示例。图18中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以缓存大小是2个数据包为例,每个虚线框就表示缓存所包括的内容,另外虚线框中有画“/”的方框,表示缓存中包括的预设的信息。每个数据包都基于当前的缓存所包括的内容进行压缩。图18中下面两行的PDCP和RLC是指第二设备的PDCP层和RLC层。在LTE系统中,第二设备的RLC层会对接收到的压缩的数据包进行排序,再将排序后的压缩的数据包递交给PDCP层。例如,第一设备的PDCP层确定删除数据包3,则第一设备的PDCP层不会发送压缩的数据包3。且第一设备的PDCP层正常对其他数据包进行压缩以及发送,例如在数据包3被删除时,数据包4、数据包5、和数据包6已经压缩完毕,数据包7尚未压缩,则第一设备可以发送数据包4等,以及可以压缩数据包7。例如第二设备的RLC层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,第二设备的RLC层对这3个压缩的数据包进行排序,再按照正常的顺序将这3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后就对这3个压缩的数据包依次解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,可以重置缓存。在重置缓存后,例如数据包4、数据包5和数据包6都已发出,数据包7和数据包8已经被压缩完毕但还未发出,数据包9和数据包10尚未压缩。那么第一设备的PDCP层可以根据重置后的缓存对数据包7和数据包8进行重新压缩,以及根据重置后的缓存对数据包9和数据包10进行压缩。可以理解为,PDCP层是根据预设的信息对数据包7进行压缩。那么之后,对于数据包8、数据包9和数据包10,再根据缓存中的内容相应进行压缩。另外,因为数据包7是根据重置后的缓存进行的压缩,则第一设备在发送数据包7时可以为数据包7添加第一标识,第一标识用于指示数据包7为根据重置的缓存压缩的数据包。对于后续的压缩的数据包,则无需再添加第一标识。第一设备可以发送重新压缩后的数据包7、数据包8,以及正常发送压缩的数据包9和压缩的数据包10。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。对于压缩的数据包6也是同样,第二设备的PDCP层对压缩的数据包6进行解压缩时依然会出错。
之后,第二设备又接收了压缩的数据包7,第二设备根据压缩的数据包7携带的第一标识可以确定压缩的数据包7是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对压缩的数据包7进行解压缩即可。之后第二设备再接收压缩的数据包8、压缩的数据包9和压缩的数据包10,均能进行正确的解压缩。
其中,图18中出现的数据包的编号均为PDCP层的序列号。
前文介绍了,至少一个数据包可以包括第一设备尚未向第二设备发送的全部的数据包或者部分数据包,作为另一种可选的方式,至少一个数据包还可以包括第一设备已向第二设备发送的全部数据包或部分数据包,且至少一个数据包中包括第二数据包。也就是说,第一设备在接收来自第二设备的control PDU之后,对于该control PDU所指示的序号对应的数据包(该control PDU所指示的序号是压缩的第二数据包的序号,该序号对应的压缩前的数据包就是第二数据包)以及序号位于第二数据包之后的其他的数据包,第一设备均可以根据重置后的缓存重新进行压缩。这样,即使在重置缓存之前第一设备已经向第二设备发送了一些压缩的数据包,第二设备对这些压缩的数据包会解压缩出错,但是重置缓存后,第一设备会将这些数据包均重新压缩以及重新发送,第二设备依然能够对这些压缩的数据包进行正确的解压缩,在较大的程度上减小了丢包量。
例如请参考图19,为NR系统中的处理过程的一种示例。图19中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以缓存大小是2个数据包为例,每个虚线框就表示缓存所包括的内容,另外虚线框中有画“/”的方框,表示缓存中包括的预设的信息。每个数据包都基于当前的缓存所包括的内容进行压缩。图19中下面一行的PDCP是指第二设备的PDCP层,因为第二设备的RLC层接收压缩的数据包后会直接递交给PDCP层,不会进行排序等操作,因此图19中未画出第二设备的RLC层。例如图19中,第一设备删除了数据包3,则第一设备的PDCP层不会发送压缩的数据包3。且第一设备的PDCP层正常对其他数据包进行压缩以及发送,例如在数据包3被删除时,数据包4、数据包5、和数据包6已经压缩完毕,数据包7尚未压缩,则第一设备可以发送数据包4等,以及可以压缩数据包7。第二设备的PDCP层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包4后,第二设备的PDCP层会开启重排序定时器,以等待接收压缩的数据包1、压缩的数据包2和压缩的数据包3。在重排序定时器超时时(如图19是竖直虚线所示),第二设备的PDCP层只收到了压缩的数据包1和压缩的数据包2,仍未收到压缩的数据包3,则第二设备对压缩的数据包1、压缩的数据包2和压缩的数据包4进行排序,在排序后,第二设备的PDCP层对压缩的数据包1、压缩的数据包2和压缩的数据包4进行解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,可以重置缓存。在重置缓存后,例如数据包4、数据包5、数据包6、数据包7和数据包8都已发出,数据包9已经被压缩完毕但还未发出,数据包10尚未压缩。那么第一设备的PDCP层可以根据重置后的缓存对数据包4、数据包5、数据包6和数据包7、数据包8和数据包9进行重新压缩,以及对数据包10进行压缩。可以理解为,PDCP层是根据预设的信息对数据包4进行压缩。那么之后,对于数据包5、数据包6、数据包7、数据包8、数据包9和数据包10,再根据缓存中的内容相应进行压缩。另外,因为数据包4是根据重置后的缓存进行的压缩,则第一设备在发送压缩的数据包4时可以为数据包4添加第一标识,第一标识用于指示压缩的数据包4为根据重置的缓存压缩的数据包。对于后续的压缩的数据包,则无需再添加第一标识。第一设备可以发送重新压缩后的数据包4、数据包5、数据包6、数据包7、数据包8和数据包9,以及正常发送压缩的数据包10。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。对于压缩的数据包6、压缩的数据包7和压缩的数据包8也是同样,第二设备的PDCP层对压缩的数据包6、压缩的数据包7和压缩的数据包8进行解压缩时依然会出错。
之后,第二设备又接收了重新压缩的数据包4(当然,对于第二设备来说就是“压缩的数据包4”,第二设备并不知道数据包4是重新压缩的),第二设备根据重新压缩的数据包4携带的第一标识可以确定重新压缩的数据包4是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对重新压缩的数据包4进行解压缩即可。之后第二设备再接收重新压缩的数据包5、重新压缩的数据包6、重新压缩的数据包7、重新压缩的数据包8和重新压缩的数据包9,以及压缩的数据包10,均能进行正确的解压缩。
其中,图19中出现的数据包的编号均为PDCP层的序列号。
请再参考图20,为LTE系统中的数据包压缩和解压缩的过程的一种示例。图20中,上面两行的PDCP和RLC是指第一设备的PDCP层和RLC层,以缓存大小是2个数据包为例,每个虚线框就表示缓存所包括的内容,另外虚线框中有画“/”的方框,表示缓存中包括的预设的信息。每个数据包都基于当前的缓存所包括的内容进行压缩。图20中下面两行的PDCP和RLC是指第二设备的PDCP层和RLC层。在LTE系统中,第二设备的RLC层会对接收到的数据包进行排序,再将排序后的数据包递交给PDCP层。例如,第一设备的PDCP层确定删除数据包3,则第一设备的PDCP层不会发送压缩的数据包3。且第一设备的PDCP层正常对其他数据包进行压缩以及发送,例如在数据包3被删除时,数据包4、数据包5、和数据包6已经压缩完毕,数据包7尚未压缩,则第一设备可以发送数据包4等,以及可以压缩数据包7。例如第二设备的RLC层对于压缩的数据包1、压缩的数据包2和压缩的数据包4的接收顺序是压缩的数据包4、压缩的数据包2和压缩的数据包1,那么在接收压缩的数据包1后,第二设备的RLC层对这3个压缩的数据包进行排序,再按照正常的顺序将这3个压缩的数据包递交给第二设备的PDCP层,第二设备的PDCP层接收这3个压缩的数据包后就对这3个压缩的数据包依次解压缩。由于第二设备的PDCP层未接收压缩的数据包3,则对压缩的数据包4进行解压缩时会出错。第二设备的PDCP层可以向第一设备发送control PDU,该control PDU指示压缩的数据包4的解压缩出错。
第一设备的PDCP层接收该control PDU后,可以重置缓存。在重置缓存后,例如数据包4、数据包5、数据包6、数据包7和数据包8都已发出,数据包9已经被压缩完毕但还未发出,数据包10尚未压缩。那么第一设备的PDCP层可以根据重置后的缓存对数据包4、数据包5、数据包6和数据包7、数据包8和数据包9进行重新压缩,以及对数据包10进行压缩。可以理解为,PDCP层是根据预设的信息对数据包4进行压缩。那么之后,对于数据包5、数据包6、数据包7、数据包8、数据包9和数据包10,再根据缓存中的内容相应进行压缩。另外,因为数据包4是根据重置后的缓存进行的压缩,则第一设备在发送压缩的数据包4时可以为数据包4添加第一标识,第一标识用于指示压缩的数据包4为根据重置的缓存压缩的数据包。对于后续的压缩的数据包,则无需再添加第一标识。第一设备可以发送重新压缩后的数据包4、数据包5、数据包6、数据包7、数据包8和数据包9,以及正常发送压缩的数据包10。
之后,第二设备接收了压缩的数据包5,第二设备的PDCP层对压缩的数据包5进行解压缩时依然会出错。对于压缩的数据包6、压缩的数据包7和压缩的数据包8也是同样,第二设备的PDCP层对压缩的数据包6、压缩的数据包7和压缩的数据包8进行解压缩时依然会出错。
之后,第二设备又接收了重新压缩的数据包4(当然,对于第二设备来说就是“压缩的数据包4”,第二设备并不知道数据包4是重新压缩的),第二设备根据重新压缩的数据包4携带的第一标识可以确定重新压缩的数据包4是根据重置的缓存进行的压缩,从而第二设备的PDCP层根据预设的信息对重新压缩的数据包4进行解压缩即可。之后第二设备再接收重新压缩的数据包5、重新压缩的数据包6、重新压缩的数据包7、重新压缩的数据包8和重新压缩的数据包9,以及压缩的数据包10,均能进行正确的解压缩。
其中,图20中出现的数据包的编号均为PDCP层的序列号。
在本申请实施例中,第一设备在删除第一数据包时(或在删除第一数据包之后),如果接收了来自第二设备的control PDU(用于指示解压缩出错),则可以重置缓存,并且可以对尚未发出的数据包,或者对尚未发出的以及已经发出的数据包,均根据重置后的缓存进行压缩,通过这种方式,可以减少根据重置前的缓存所压缩的数据包的数量,减少第二设备无法正确的解压缩的数据包的数量,也就减小了丢包量。
为了解决相同的技术问题,本申请实施例提供第五种通信方法。请参见图21,为该方法的流程图。在下文的介绍过程中,以该方法应用于图6A或图6B所示的网络架构为例。另外,该方法可由两个通信装置执行,这两个通信装置例如为第九通信装置和第十通信装置,其中,第九通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第九通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。对于第十通信装置也是同样,第十通信装置可以是网络设备或能够支持网络设备实现该方法所需的功能的通信装置,或者第十通信装置可以是终端设备或能够支持终端设备实现该方法所需的功能的通信装置,当然还可以是其他通信装置,例如芯片系统。且对于第九通信装置和第十通信装置的实现方式均不做限制,例如第九通信装置可以是网络设备,第十通信装置是终端设备,或者第九通信装置和第十通信装置都是网络设备,或者第九通信装置和第十通信装置都是终端设备,或者第九通信装置是网络设备,第十通信装置是能够支持终端设备实现该方法所需的功能的通信装置,等等。其中,网络设备例如为基站。
为了便于介绍,在下文中,以该方法由网络设备和终端设备执行为例,也就是说,以第九通信装置是网络设备、第十通信装置是终端设备为例。因为本实施例是以应用在图6A或图6B所示的网络架构为例,因此,下文中所述的第二设备可以是图6A或图6B所示的网络架构中的网络设备,下文中所述的第一设备可以是图6A或图6B所示的网络架构中的终端设备。
S211、第一设备压缩第一数据包,得到压缩的第一数据包。
第一设备可以对第一数据包进行正常的压缩。
S212、当满足第一删除条件时,所述第一设备不删除所述压缩的第一数据包,或,所述第一设备通过第一方式设置丢弃定时器,使得所述压缩的第一数据包不满足第二删除条件。
例如,在当前标准流程中,PDCP层从上层得到第一数据包后,可以开启对应于第一数据包的丢弃定时器,当丢弃定时器超时时则PDCP层会删除第一数据包,如果第一数据包已被递交到RLC层,则PDCP层也会通知RLC层删除第一数据包,以避免发送端将超时的数据包通过空口发出去。可见,由于丢弃定时器的存在,导致PDCP层会删除数据包。而丢弃定时器超时,就可以认为是第二删除条件包括的一种条件。或者,第二删除条件也可能是其他的条件,对于具体的第二删除条件不做限制。
又例如,当前实现过程中,多个业务通过一个数据承载进行传输,PDCP层可能会基于一些业务的要求删除数据包,例如某类业务有时延要求,为了对该类业务进行优化,会丢弃其中某些数据包,以避免浪费空口资源及满足时延要求。例如,PDCP层基于业务的要求,需要丢弃第一数据包,那么在这种情况下,就认为压缩的第一数据包(或者,第一数据包)满足第一删除条件。或者,第一删除条件也可能是其他的条件,对于具体的第一删除条件不做限制。
无论是因为什么原因而删除数据包,如果PDCP层删除的是压缩的第一数据包,就会导致第一设备和第二设备之间出现缓存状态不一致的情况,从而导致丢包。
因此在本申请实施例中,如果满足第一删除条件,则第一设备可以不删除压缩的第一数据包,或者说,第一设备可以避免删除压缩的第一数据包,从而使得第一设备和第二设备的缓存状态可以保持一致,减少丢包量。或者,第一设备可以通过第一方式来设置丢弃定时器,使得压缩的第一数据包(或者,第一数据包)不会满足第二删除条件,既然压缩的第一数据包(或者,第一数据包)不会满足第二删除条件,那么第一设备也就不会删除压缩的第一数据包,从而使得第一设备和第二设备之间的缓存状态保持一致。
第一方式可以有多种,下面举例介绍。
作为第一方式的第一种实现,第一设备可以将丢弃定时器的定时时长设置为无穷大。例如,第一设备在开启对应于第一数据包的丢弃定时器时,或者在开启对应于第一数据包的丢弃定时器之前,或者在开启对应于第一数据包的丢弃定时器之后,可以将丢弃定时器的定时时长设置为无穷大,这样丢弃定时器就不会超时,自然第一设备也就不会删除第一数据包或压缩的第一数据包,由于第一设备不会删除压缩的第一数据包,则第一设备和第二设备就不会出现因为压缩的第一数据包被删除而导致的缓存状态不一致的情况。这里针对丢弃定时器的设置可以只针对压缩数据包的丢失定时器的设置,也可以是针对所有数据包的丢失定时器的设置。
其中,第一设备可以自行将丢弃定时器的定时时长设置为无穷大,或者,第二设备可以向第一设备发送第一消息,第一消息用于指示将第一数据包对应的丢弃定时器的定时时长设置为无穷大。则第一设备接收第一消息后,就可以将第一数据包对应的丢弃定时器的定时时长设置为无穷大。当然,如果第二设备向第一设备发送第一消息,那么第一消息可以具体指示将第一数据包对应的丢弃定时器的定时时长设置为无穷大,或者也可以笼统指示将丢弃定时器的定时时长设置为无穷大。如果第一消息是具体指示将第一数据包对应的丢弃定时器的定时时长设置为无穷大,则第一设备只将第一数据包对应的丢弃定时器的定时时长设置为无穷大即可,对于其他的数据包对应的丢弃定时器的定时时长可以不进行设置。在这种情况下,如果第二设备需要指示将多个数据包的丢弃定时器的定时时长设置为无穷大,可以发送多个消息予以分别指示,指示粒度较细。或者,如果第一消息是笼统指示将丢弃定时器的定时时长设置为无穷大,那么第一设备可以将所有的数据包对应的丢弃定时器的定时时长都设置为无穷大,无需第二设备发送过多的消息,有助于节省信令开销。
作为第一方式的第二种实现,第一设备在压缩第一数据包后,可以关闭第一数据包对应的丢弃定时器。例如,第一设备在压缩第一数据包后,第一数据包对应的丢弃定时器还未超时,那么第一设备可以关闭该丢弃定时器,从而该丢弃定时器不会超时,自然第一设备也就不会删除第一数据包或压缩的第一数据包,由于第一设备不会删除压缩的第一数据包,则第一设备和第二设备就不会出现因为压缩的第一数据包被删除而导致的缓存状态不一致的情况。在这种情况下,第一设备无需重新设置丢弃定时器的定时时长,只需关闭丢弃定时器即可,方式较为简单。
上面的两种实现只是对第一方式的举例,第一方式可以包括如上的第一种实现或第二种实现,或者还可以包括其他的实现形式,具体的不做限制。
另外,如果第一数据包对应的丢弃定时器在超时时,第一数据包还未被压缩,那么第一设备可以按照现有的处理方式,直接删除第一数据包,因为这种情况是不会影响两个设备之间的缓存状态的。
S213、第一设备将所述压缩的第一数据包发送给第二设备,第二设备接收来自第一设备的所述压缩的第一数据包。
对于第二设备来说,正常接收第一设备发送的压缩的数据包,以及进行正常的解压缩即可。
其中,S213是可选的步骤,不是必须执行的。
在本申请实施例中,第一设备可以不删除压缩的第一数据包,使得第一设备和第二设备的缓存状态尽量保持一致,减少了第二设备无法解压缩的情况,从而减少了丢包量。
下面结合附图介绍本申请实施例中用来实现上述方法的装置。因此,上文中的内容均可以用于后续实施例中,重复的内容不再赘述。
图22为本申请实施例提供的通信设备2200的示意性框图。示例性地,通信设备2200例如为第一设备2200。第一设备2200包括处理模块2210和收发模块2220。其中,处理模块2210可以用于执行图7所示的实施例中由第一设备所执行的除了收发操作之外的全部操作,例如S71,和/或用于支持本文所描述的技术的其它过程。收发模块2220可以用于执行图7所示的实施例中由第一设备所执行的全部收发操作,例如S72,和/或用于支持本文所描述的技术的其它过程。其中,收发模块2220可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图7所示的实施例中由第一设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图7所示的实施例中由第一设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,处理模块2210,用于删除第一数据包;
收发模块2220,用于向第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。
作为一种可选的实施方式,所述第一信令为控制PDU。
作为一种可选的实施方式,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
应理解,本申请实施例中的处理模块2210可以由处理器或处理器相关电路组件实现,收发模块2220可以由收发器或收发器相关电路组件实现。
如图23所示,本申请实施例还提供一种通信设备2300。示例性地,通信设备2300例如为第一设备2300。第一设备2300包括处理器2310,存储器2320与收发器2330,其中,存储器2320中存储指令或程序,处理器2310用于执行存储器2320中存储的指令或程序。存储器2320中存储的指令或程序被执行时,该处理器2310用于执行上述实施例中处理模块2210执行的操作,收发器2330用于执行上述实施例中收发模块2220执行的操作。其中,收发器2330可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器2330也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第一设备2300向其他设备发送信息的功能,接收器用于完成第一设备2300接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第一设备2200或第一设备2300可对应于图7所示的实施例中的第一设备,并且第一设备2200或第一设备2300中的各个模块的操作和/或功能分别为了实现图7所示的实施例中的相应流程,为了简洁,在此不再赘述。
图24为本申请实施例提供的通信设备2400的示意性框图。示例性地,通信设备2400例如为第二设备2400。第二设备2400包括处理模块2410和收发模块2420。其中,处理模块2410可以用于执行图7所示的实施例中由第二设备所执行的除了收发操作之外的全部操作,例如S73,和/或用于支持本文所描述的技术的其它过程。收发模块2420可以用于执行图7所示的实施例中由第二设备所执行的全部收发操作,例如S72,和/或用于支持本文所描述的技术的其它过程。其中,收发模块2420可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图7所示的实施例中由第二设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图7所示的实施例中由第二设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,收发模块2420,用于接收来自第一设备的第一信令;
处理模块2410,用于通过PDCP层根据所述第一信令所包括或指示的第一缓存,对压缩的第二数据包进行解压缩。
作为一种可选的实施方式,收发模块2420用于通过如下方式接收来自第一设备的第一信令:
在PDCP层的重排序定时器超时之前,接收来自所述第一设备的所述第一信令,所述重排序定时器用于所述第二设备检测尚未收到的数据包。
作为一种可选的实施方式,处理模块2410用于通过如下方式根据所述第一信令所指示的第一缓存,对所述压缩的第二数据包进行解压缩:
在所述重排序定时器超时时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩;或,
在接收所述第一信令时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩。
作为一种可选的实施方式,
收发模块2420,还用于在接收来自第一设备的第一信令之前,接收来自所述第一设备的所述压缩的第二数据包;
处理模块2410,还用于对所述压缩的第二数据包解压缩失败;
处理模块2410,还用于存储所述压缩的第二数据包。
作为一种可选的实施方式,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
应理解,本申请实施例中的处理模块2410可以由处理器或处理器相关电路组件实现,收发模块2420可以由收发器或收发器相关电路组件实现。
如图25所示,本申请实施例还提供一种通信设备2500。示例性地,通信设备2500例如为第二设备2500。第二设备2500包括处理器2510,存储器2520与收发器2530,其中,存储器2520中存储指令或程序,处理器2510用于执行存储器2520中存储的指令或程序。存储器2520中存储的指令或程序被执行时,该处理器2510用于执行上述实施例中处理模块2410执行的操作,收发器2530用于执行上述实施例中收发模块2420执行的操作。其中,收发器2530可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器2530也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第二设备2500向其他设备发送信息的功能,接收器用于完成第二设备2500接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第二设备2400或第二设备2500可对应于图7所示的实施例中的第一设备,并且第二设备2400或第二设备2500中的各个模块的操作和/或功能分别为了实现图7所示的实施例中的相应流程,为了简洁,在此不再赘述。
图26为本申请实施例提供的通信设备2600的示意性框图。示例性地,通信设备2600例如为第一设备2600。第一设备2600包括处理模块2610和收发模块2620。其中,处理模块2610可以用于执行图10所示的实施例中由第一设备所执行的除了收发操作之外的全部操作,例如S101,和/或用于支持本文所描述的技术的其它过程。收发模块2620可以用于执行图10所示的实施例中由第一设备所执行的全部收发操作,例如S102,和/或用于支持本文所描述的技术的其它过程。其中,收发模块2620可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图10所示的实施例中由第一设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图10所示的实施例中由第一设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,处理模块2610,用于通过PDCP层删除第一数据包;
收发模块2620,用于向第二设备发送第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态,所述第二数据包为压缩的第一数据包。
作为一种可选的实施方式,收发模块2620用于通过如下方式向第二设备发送所述第一信息:
向所述第二设备发送所述第二数据包,所述第二数据包携带对应于PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
向所述第二设备发送控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
作为一种可选的实施方式,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
应理解,本申请实施例中的处理模块2610可以由处理器或处理器相关电路组件实现,收发模块2620可以由收发器或收发器相关电路组件实现。
如图27所示,本申请实施例还提供一种通信设备2700。示例性地,通信设备2700例如为第一设备2700。第一设备2700包括处理器2710,存储器2720与收发器2730,其中,存储器2720中存储指令或程序,处理器2710用于执行存储器2720中存储的指令或程序。存储器2720中存储的指令或程序被执行时,该处理器2710用于执行上述实施例中处理模块2610执行的操作,收发器2730用于执行上述实施例中收发模块2620执行的操作。其中,收发器2730可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器2730也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第一设备2700向其他设备发送信息的功能,接收器用于完成第一设备2700接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第一设备2600或第一设备2700可对应于图10所示的实施例中的第一设备,并且第一设备2600或第一设备2700中的各个模块的操作和/或功能分别为了实现图10所示的实施例中的相应流程,为了简洁,在此不再赘述。
图28为本申请实施例提供的通信设备2800的示意性框图。示例性地,通信设备2800例如为第二设备2800。第二设备2800包括处理模块2810和收发模块2820。其中,处理模块2810可以用于执行图10所示的实施例中由第二设备所执行的除了收发操作之外的全部操作,例如S103,和/或用于支持本文所描述的技术的其它过程。收发模块2820可以用于执行图10所示的实施例中由第二设备所执行的全部收发操作,例如S102,和/或用于支持本文所描述的技术的其它过程。其中,收发模块2820可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图10所示的实施例中由第二设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图10所示的实施例中由第二设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,收发模块2820,用于接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态;
处理模块2810,用于通过PDCP层根据所述第二数据包,对压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
作为一种可选的实施方式,收发模块2820用于通过如下方式接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态:
接收来自所述第一设备的所述第二数据包,所述第二数据包携带PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
接收来自所述第二设备的控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
作为一种可选的实施方式,处理模块2810,还用于:
通过PDCP层对所述第二数据包进行解压缩,得到第一数据包;
通过PDCP层不将所述第一数据包递交给所述PDCP层的上层。
作为一种可选的实施方式,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
应理解,本申请实施例中的处理模块2810可以由处理器或处理器相关电路组件实现,收发模块2820可以由收发器或收发器相关电路组件实现。
如图29所示,本申请实施例还提供一种通信设备2900。示例性地,通信设备2900例如为第二设备2900。第二设备2900包括处理器2910,存储器2920与收发器2930,其中,存储器2920中存储指令或程序,处理器2910用于执行存储器2920中存储的指令或程序。存储器2920中存储的指令或程序被执行时,该处理器2910用于执行上述实施例中处理模块2810执行的操作,收发器2930用于执行上述实施例中收发模块2820执行的操作。其中,收发器2930可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器2930也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第二设备2900向其他设备发送信息的功能,接收器用于完成第二设备2900接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第二设备2800或第二设备2900可对应于图10所示的实施例中的第一设备,并且第二设备2800或第二设备2900中的各个模块的操作和/或功能分别为了实现图10所示的实施例中的相应流程,为了简洁,在此不再赘述。
图30为本申请实施例提供的通信设备3000的示意性框图。示例性地,通信设备3000例如为第一设备3000。第一设备3000包括处理模块3010和收发模块3020。其中,处理模块3010可以用于执行图13所示的实施例中由第一设备所执行的除了收发操作之外的全部操作,例如S131和S132,和/或用于支持本文所描述的技术的其它过程。收发模块3020可以用于执行图13所示的实施例中由第一设备所执行的全部收发操作,例如S133,和/或用于支持本文所描述的技术的其它过程。其中,收发模块3020可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图13所示的实施例中由第一设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图13所示的实施例中由第一设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,处理模块3010,用于删除第一数据包;
处理模块3010,还用于重置缓存,并根据重置后的缓存对第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为所述第一设备尚未进行压缩的数据包;
收发模块3020,用于向第二设备发送所述压缩的第二数据包。
作为一种可选的实施方式,
收发模块3020,还用于接收来自所述第二设备的控制PDU,所述控制PDU用于指示压缩的第三数据包解压失败;
处理模块3010,还用于当所述压缩的第三数据包的序号大于所述第二数据包的序号时,再次重置所述缓存,否则,所述第一设备维持所述缓存不变。
作为一种可选的实施方式,处理模块3010用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
作为一种可选的实施方式,处理模块3010,还用于在重置缓存之后,为所述缓存配置预制字典。
应理解,本申请实施例中的处理模块3010可以由处理器或处理器相关电路组件实现,收发模块3020可以由收发器或收发器相关电路组件实现。
如图31所示,本申请实施例还提供一种通信设备3100。示例性地,通信设备3100例如为第一设备3100。第一设备3100包括处理器3110,存储器3120与收发器3130,其中,存储器3120中存储指令或程序,处理器3110用于执行存储器3120中存储的指令或程序。存储器3120中存储的指令或程序被执行时,该处理器3110用于执行上述实施例中处理模块3010执行的操作,收发器3130用于执行上述实施例中收发模块3020执行的操作。其中,收发器3130可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器3130也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第一设备3100向其他设备发送信息的功能,接收器用于完成第一设备3100接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第一设备3000或第一设备3100可对应于图13所示的实施例中的第一设备,并且第一设备3000或第一设备3100中的各个模块的操作和/或功能分别为了实现图13所示的实施例中的相应流程,为了简洁,在此不再赘述。
图32为本申请实施例提供的通信设备3200的示意性框图。示例性地,通信设备3200例如为第一设备3200。第一设备3200包括处理模块3210和收发模块3220。其中,处理模块3210可以用于执行图16所示的实施例中由第一设备所执行的除了收发操作之外的全部操作,例如S161和S163,和/或用于支持本文所描述的技术的其它过程。收发模块3220可以用于执行图16所示的实施例中由第一设备所执行的全部收发操作,例如S162,和/或用于支持本文所描述的技术的其它过程。其中,收发模块3220可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图16所示的实施例中由第一设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图16所示的实施例中由第一设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,处理模块3210,用于删除第一数据包;
收发模块3220,用于接收来自第二设备的控制PDU,所述控制PDU用于指示压缩的第二数据包解压失败;
处理模块3210,还用于重置缓存,并根据重置后的缓存对至少一个数据包进行压缩,所述至少一个数据包包括所述第一设备尚未发送给所述第二设备的全部或部分数据包。
作为一种可选的实施方式,所述至少一个数据包还包括所述第一设备已向所述第二设备发出的全部数据包或部分数据包,且所述至少一个数据包中的第三数据包的序号大于或等于所述压缩的第二数据包的序号,且当所述第三数据包的序号大于所述压缩的第二数据包的序号时,所述第三数据包的序号和所述压缩的第二数据包的序号连续,所述第三数据包为所述至少一个数据包中序号最小的数据包。
作为一种可选的实施方式,处理模块3210用于通过如下方式重置缓存:
将所述缓存清零;或者,
将所述缓存清零后,为所述缓存配置预制字典;或者,
为所述缓存配置预制字典。
作为一种可选的实施方式,处理模块3210,还用于在重置缓存之后,为所述缓存配置预制字典。
应理解,本申请实施例中的处理模块3210可以由处理器或处理器相关电路组件实现,收发模块3220可以由收发器或收发器相关电路组件实现。
如图33所示,本申请实施例还提供一种通信设备3300。示例性地,通信设备3300例如为第一设备3300。第一设备3300包括处理器3310,存储器3320与收发器3330,其中,存储器3320中存储指令或程序,处理器3310用于执行存储器3320中存储的指令或程序。存储器3320中存储的指令或程序被执行时,该处理器3310用于执行上述实施例中处理模块3210执行的操作,收发器3330用于执行上述实施例中收发模块3220执行的操作。其中,收发器3330可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器3330也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第一设备3300向其他设备发送信息的功能,接收器用于完成第一设备3300接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第一设备3200或第一设备3300可对应于图16所示的实施例中的第一设备,并且第一设备3200或第一设备3300中的各个模块的操作和/或功能分别为了实现图16所示的实施例中的相应流程,为了简洁,在此不再赘述。
图34为本申请实施例提供的通信设备3400的示意性框图。示例性地,通信设备3400例如为第一设备3400。第一设备3400包括处理模块3410和收发模块3420。其中,处理模块3410可以用于执行图21所示的实施例中由第一设备所执行的除了收发操作之外的全部操作,例如S211和S212,和/或用于支持本文所描述的技术的其它过程。收发模块3420可以用于执行图21所示的实施例中由第一设备所执行的全部收发操作,例如S213,和/或用于支持本文所描述的技术的其它过程。其中,收发模块3420可以是一个功能模块,或者也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于执行图21所示的实施例中由第一设备所执行的全部发送操作,和/或用于支持本文所描述的技术的其它过程;接收模块用于执行图21所示的实施例中由第一设备所执行的全部接收操作,和/或用于支持本文所描述的技术的其它过程。
例如,处理模块3410,用于压缩第一数据包,得到压缩的第一数据包;
处理模块3410,还用于当满足第一删除条件时,不删除所述压缩的第一数据包,或,通过第一方式设置丢弃定时器,使得所述压缩的第一数据包不满足第二删除条件。
作为一种可选的实施方式,所述第一方式包括:
将所述丢弃定时器的定时时长设置为无穷大;或,
在压缩所述第一数据包后,关闭所述丢弃定时器。
作为一种可选的实施方式,收发模块3420,用于接收来自第二设备的第一消息,所述第一消息用于指示所述丢弃定时器的定时时长为无穷大。
应理解,本申请实施例中的处理模块3410可以由处理器或处理器相关电路组件实现,收发模块3420可以由收发器或收发器相关电路组件实现。
如图35所示,本申请实施例还提供一种通信设备3500。示例性地,通信设备3500例如为第一设备3500。第一设备3500包括处理器3510,存储器3520与收发器3530,其中,存储器3520中存储指令或程序,处理器3510用于执行存储器3520中存储的指令或程序。存储器3520中存储的指令或程序被执行时,该处理器3510用于执行上述实施例中处理模块3410执行的操作,收发器3530用于执行上述实施例中收发模块3420执行的操作。其中,收发器3530可以是一个功能部件,该功能部件既可以完成接收功能也可以完成发送功能,或者,收发器3530也可以是两个功能部件的统称,这两个功能部件为发送器和接收器,发送器用于完成第一设备3500向其他设备发送信息的功能,接收器用于完成第一设备3500接收来自其他设备的信息的功能。
应理解,根据本申请实施例的第一设备3400或第一设备3500可对应于图21所示的实施例中的第一设备,并且第一设备3400或第一设备3500中的各个模块的操作和/或功能分别为了实现图21所示的实施例中的相应流程,为了简洁,在此不再赘述。
本申请实施例还提供一种通信装置,该通信装置可以是终端设备也可以是电路。该通信装置可以用于执行上述图7所示的方法实施例中由第一设备或第二设备所执行的动作,或可以用于执行上述图10所示的方法实施例中由第一设备或第二设备所执行的动作,或可以用于执行上述图13所示的方法实施例中由第一设备所执行的动作,或可以用于执行上述图16所示的方法实施例中由第一设备所执行的动作,或可以用于执行上述图21所示的方法实施例中由第一设备所执行的动作。
当该通信装置为终端设备时,图36示出了一种简化的终端设备的结构示意图。便于理解和图示方便,图36中,终端设备以手机作为例子。如图36所示,终端设备包括处理器、存储器、射频电路、天线以及输入输出装置。处理器主要用于对通信协议以及通信数据进行处理,以及对终端设备进行控制,执行软件程序,处理软件程序的数据等。存储器主要用于存储软件程序和数据。射频电路主要用于基带信号与射频信号的转换以及对射频信号的处理。天线主要用于收发电磁波形式的射频信号。输入输出装置,例如触摸屏、显示屏,键盘等主要用于接收用户输入的数据以及对用户输出数据。需要说明的是,有些种类的终端设备可以不具有输入输出装置。
当需要发送数据时,处理器对待发送的数据进行基带处理后,输出基带信号至射频电路,射频电路将基带信号进行射频处理后将射频信号通过天线以电磁波的形式向外发送。当有数据发送到终端设备时,射频电路通过天线接收到射频信号,将射频信号转换为基带信号,并将基带信号输出至处理器,处理器将基带信号转换为数据并对该数据进行处理。为便于说明,图36中仅示出了一个存储器和处理器。在实际的终端设备产品中,可以存在一个或多个处理器和一个或多个存储器。存储器也可以称为存储介质或者存储设备等。存储器可以是独立于处理器设置,也可以是与处理器集成在一起,本申请实施例对此不做限制。
在本申请实施例中,可以将具有收发功能的天线和射频电路视为终端设备的收发单元,将具有处理功能的处理器视为终端设备的处理单元。如图36所示,终端设备包括收发单元3610和处理单元3620。收发单元也可以称为收发器、收发机、收发装置等。处理单元也可以称为处理器,处理单板,处理模块、处理装置等。可选的,可以将收发单元3610中用于实现接收功能的器件视为接收单元,将收发单元3610中用于实现发送功能的器件视为发送单元,即收发单元3610包括接收单元和发送单元。收发单元有时也可以称为收发机、收发器、或收发电路等。接收单元有时也可以称为接收机、接收器、或接收电路等。发送单元有时也可以称为发射机、发射器或者发射电路等。
应理解,收发单元3610用于执行上述图7所示的方法实施例中第一设备侧的发送操作和接收操作,处理单元3620用于执行上述图7所示的方法实施例中第一设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图7所示的实施例中的第一设备侧的全部收发步骤,例如S72。处理单元3620,用于执行图7所示的实施例中的第一设备侧除了收发操作之外的其他操作,例如S71,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图7所示的方法实施例中第二设备侧的发送操作和接收操作,处理单元3620用于执行上述图7所示的方法实施例中第二设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图7所示的实施例中的第二设备侧的全部收发步骤,例如S72。处理单元3620,用于执行图7所示的实施例中的第二设备侧除了收发操作之外的其他操作,例如S73,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图10所示的方法实施例中第一设备侧的发送操作和接收操作,处理单元3620用于执行上述图10所示的方法实施例中第一设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图10所示的实施例中的第一设备侧的全部收发步骤,例如S102。处理单元3620,用于执行图10所示的实施例中的第一设备侧除了收发操作之外的其他操作,例如S101,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图10所示的方法实施例中第二设备侧的发送操作和接收操作,处理单元3620用于执行上述图10所示的方法实施例中第二设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图10所示的实施例中的第二设备侧的全部收发步骤,例如S102。处理单元3620,用于执行图10所示的实施例中的第二设备侧除了收发操作之外的其他操作,例如S103,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图13所示的方法实施例中第一设备侧的发送操作和接收操作,处理单元3620用于执行上述图13所示的方法实施例中第一设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图13所示的实施例中的第一设备侧的全部收发步骤,例如S133。处理单元3620,用于执行图13所示的实施例中的第一设备侧除了收发操作之外的其他操作,例如S131和S132,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图16所示的方法实施例中第一设备侧的发送操作和接收操作,处理单元3620用于执行上述图16所示的方法实施例中第一设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图16所示的实施例中的第一设备侧的全部收发步骤,例如S162。处理单元3620,用于执行图16所示的实施例中的第一设备侧除了收发操作之外的其他操作,例如S161和S163,和/或用于支持本文所描述的技术的其它过程。
或者,收发单元3610用于执行上述图21所示的方法实施例中第一设备侧的发送操作和接收操作,处理单元3620用于执行上述图21所示的方法实施例中第一设备侧除了收发操作之外的其他操作。
例如,在一种实现方式中,收发单元3610用于执行图21所示的实施例中的第一设备侧的全部收发步骤,例如S213。处理单元3620,用于执行图21所示的实施例中的第一设备侧除了收发操作之外的其他操作,例如S211和S212,和/或用于支持本文所描述的技术的其它过程。
当该通信装置为芯片时,该芯片包括收发单元和处理单元。其中,收发单元可以是输入输出电路、通信接口;处理单元为该芯片上集成的处理器或者微处理器或者集成电路。
本申请实施例中的通信装置为终端设备时,可以参照图37所示的设备。作为一个例子,该设备可以完成类似于图37中处理器3710的功能。在图37中,该设备包括处理器3710,发送数据处理器3720,接收数据处理器3730。上述实施例中的处理模块410可以是图37中的该处理器3710,并完成相应的功能;上述实施例中的收发模块420可以是图37中的发送数据处理器3720,和/或接收数据处理器3730。
虽然图37中示出了信道编码器、信道解码器,但是可以理解这些模块并不对本实施例构成限制性说明,仅是示意性的。
图38示出本实施例的另一种形式。处理装置3800中包括调制子系统、中央处理子系统、周边子系统等模块。本实施例中的通信装置可以作为其中的调制子系统。具体的,该调制子系统可以包括处理器3803,接口3804。其中,处理器3803完成上述处理模块2210的功能,接口3804完成上述收发模块2220的功能。或者,处理器3803完成上述处理模块2410的功能,接口3804完成上述收发模块2420的功能。或者,处理器3803完成上述处理模块2610的功能,接口3804完成上述收发模块2620的功能。或者,处理器3803完成上述处理模块2810的功能,接口3804完成上述收发模块2820的功能。或者,处理器3803完成上述处理模块3010的功能,接口3804完成上述收发模块3020的功能。或者,处理器3803完成上述处理模块3210的功能,接口3804完成上述收发模块3220的功能。或者,处理器3803完成上述处理模块3410的功能,接口3804完成上述收发模块3420的功能。作为另一种变形,该调制子系统包括存储器3806、处理器3803及存储在存储器3806上并可在处理器上运行的程序,该处理器3803执行该程序时实现上述图7所示的方法实施例中第一设备侧或第二设备侧的方法,或者,该处理器3803执行该程序时实现上述图10所示的方法实施例中第一设备侧或第二设备侧的方法,或者,该处理器3803执行该程序时实现上述图13所示的方法实施例中第一设备侧的方法,或者,该处理器3803执行该程序时实现上述图16所示的方法实施例中第一设备侧的方法,或者,该处理器3803执行该程序时实现上述图21所示的方法实施例中第一设备侧的方法。需要注意的是,所述存储器3806可以是非易失性的,也可以是易失性的,其位置可以位于调制子系统内部,也可以位于处理装置3800中,只要该存储器3806可以连接到所述处理器3803即可。
本申请实施例还提供一种通信系统。该通信系统可以包括上述的图7所示的实施例所涉及的第一设备,以及包括图7所示的实施例所涉及的第二设备。第一设备例如为图22中的第一设备2200或图23中的第一设备2300,第二设备例如为图24中的第二设备2400或图25中的第二设备2500等。例如,第一设备可用于执行图7所示的实施例中由第一设备所执行的全部操作,例如图7所示的实施例中的S71和S72,和/或用于支持本文所描述的技术的其它过程。第二设备可用于执行图7所示的实施例中由第二设备所执行的全部操作,例如图7所示的实施例中的S73和S72,和/或用于支持本文所描述的技术的其它过程。
本申请实施例还提供一种通信系统。该通信系统可以包括上述的图10所示的实施例所涉及的第一设备,以及包括图10所示的实施例所涉及的第二设备。第一设备例如为图26中的第一设备2600或图27中的第一设备2700,第二设备例如为图28中的第二设备2800或图29中的第二设备2900等。例如,第一设备可用于执行图10所示的实施例中由第一设备所执行的全部操作,例如图10所示的实施例中的S101和S102,和/或用于支持本文所描述的技术的其它过程。第二设备可用于执行图10所示的实施例中由第二设备所执行的全部操作,例如图10所示的实施例中的S103和S102,和/或用于支持本文所描述的技术的其它过程。
这两个通信系统可以是同一个通信系统,或者是不同的通信系统。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图7所示的实施例中与第一设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图7所示的实施例中与第二设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图10所示的实施例中与第一设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图10所示的实施例中与第二设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图13所示的实施例中与第一设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图16所示的实施例中与第一设备相关的流程。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可以实现上述方法实施例提供的图21所示的实施例中与第一设备相关的流程。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图7所示的方法实施例中第一设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图7所示的方法实施例中第二设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图10所示的方法实施例中第一设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图10所示的方法实施例中第二设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图13所示的方法实施例中第一设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图16所示的方法实施例中第一设备侧的方法。
本申请实施例还提供一种包含指令的计算机程序产品,该指令被执行时执行上述图21所示的方法实施例中第一设备侧的方法。
应理解,本申请实施例中提及的处理器可以是中央处理单元(centralprocessing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double datarate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请实施例的保护范围应所述以权利要求的保护范围为准。
Claims (25)
1.一种通信方法,其特征在于,包括:
第一设备删除第一数据包;
在未从第二设备接收用于指示第二数据包解压出错的信息的情况下,所述第一设备向所述第二设备发送第一信令,所述第一信令包括或指示第一缓存,所述第一缓存用于对所述第二数据包进行压缩,或用于对压缩的第二数据包进行解压缩,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后,所述第二设备为所述压缩的第二数据包的接收设备。
2.根据权利要求1所述的方法,其特征在于,所述第一信令为控制协议数据单元PDU。
3.根据权利要求1或2所述的方法,其特征在于,所述第一信令还包括所述第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号。
4.一种通信方法,其特征在于,包括:
在未向第一设备发送用于指示第二数据包解压出错的信息的情况下,第二设备接收来自所述第一设备的第一信令;
所述第二设备的分组数据汇聚协议PDCP层根据所述第一信令所包括或指示的第一缓存,对压缩的第二数据包进行解压缩。
5.根据权利要求4所述的方法,其特征在于,第二设备接收来自第一设备的第一信令,包括:
所述第二设备在PDCP层的重排序定时器超时之前,接收来自所述第一设备的所述第一信令,所述重排序定时器用于所述第二设备检测尚未收到的数据包。
6.根据权利要求5所述的方法,其特征在于,所述第二设备根据所述第一信令所指示的第一缓存,对所述压缩的第二数据包进行解压缩,包括:
所述第二设备在所述重排序定时器超时时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩;或,
所述第二设备在接收所述第一信令时,根据所述第一信令所包括或指示的所述第一缓存,对所述压缩的第二数据包进行解压缩。
7.根据权利要求4~6任一项所述的方法,其特征在于,在第二设备接收来自第一设备的第一信令之前,还包括:
所述第二设备接收来自所述第一设备的所述压缩的第二数据包;
所述第二设备对所述压缩的第二数据包解压缩失败;
所述第二设备存储所述压缩的第二数据包。
8.根据权利要求4~6任一项所述的方法,其特征在于,所述第一信令还包括第一数据包的序号,或所述第二数据包的序号,或所述第一缓存的序号,其中,所述第一数据包的序号和所述第二数据包的序号连续,且所述第二数据包的序号在所述第一数据包的序号之后。
9.一种通信方法,其特征在于,包括:
第一设备的PDCP层删除第一数据包;
在未从第二设备接收用于指示压缩的第三数据包解压出错的信息的情况下,所述第一设备向所述第二设备发送第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态,所述第二数据包为压缩的第一数据包,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
10.根据权利要求9所述的方法,其特征在于,所述第一设备向第二设备发送所述第一信息,包括:
所述第一设备向所述第二设备发送所述第二数据包,所述第二数据包携带对应于PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
所述第一设备向所述第二设备发送控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
11.根据权利要求10所述的方法,其特征在于,所述控制PDU包含所述第一数据包的序号,或所述第二数据包的序号。
12.一种通信方法,其特征在于,包括:
在未向第一设备发送用于指示压缩的第三数据包解压出错的信息的情况下,第二设备接收来自所述第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或用于同步缓存状态;
所述第二设备的PDCP层根据所述第二数据包,对所述压缩的第三数据包进行解压缩,所述压缩的第三数据包的序号位于所述第二数据包的序号之后。
13.根据权利要求12所述的方法,其特征在于,第二设备接收来自第一设备的第一信息,所述第一信息用于指示第二数据包仅用于解压缩或同步缓存状态,包括:
所述第二设备接收来自所述第一设备的所述第二数据包,所述第二数据包携带PDCP层或RLC层的第一标识,所述第一标识用于指示所述第二数据包仅用于解压缩或同步缓存状态;或,
所述第二设备接收来自所述第二设备的控制PDU,所述控制PDU携带所述第二数据包,所述控制PDU用于指示所述第二数据包仅用于解压缩或同步缓存状态。
14.根据权利要求12或13所述的方法,其特征在于,所述方法还包括:
所述第二设备的PDCP层对所述第二数据包进行解压缩,得到第一数据包;
所述第二设备的PDCP层不将所述第一数据包递交给所述PDCP层的上层。
15.根据权利要求13所述的方法,其特征在于,所述控制PDU包含第一数据包的序号,或所述第二数据包的序号,其中,所述第一数据包为解压缩的所述第二数据包。
16.一种通信方法,其特征在于,包括:
第一设备删除第一数据包;
在未从第二设备接收用于指示第二数据包解压出错的信息的情况下,所述第一设备重置缓存,并根据重置后的缓存对所述第二数据包进行压缩,得到压缩的第二数据包,所述第二数据包为所述第一设备尚未进行压缩的数据包;
所述第一设备向所述第二设备发送所述压缩的第二数据包。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
所述第一设备接收来自所述第二设备的控制PDU,所述控制PDU用于指示压缩的第三数据包解压失败;
当所述压缩的第三数据包的序号大于所述第二数据包的序号时,所述第一设备再次重置所述缓存,否则,所述第一设备维持所述缓存不变。
18.根据权利要求16或17所述的方法,其特征在于,所述第一设备重置缓存,包括:
所述第一设备将所述缓存清零;或者,
所述第一设备将所述缓存清零后,为所述缓存配置预制字典;或者,
所述第一设备为所述缓存配置预制字典。
19.根据权利要求16或17所述的方法,其特征在于,在所述第一设备重置缓存之后,还包括:
所述第一设备为所述缓存配置预制字典。
20.一种通信装置,其特征在于,包括处理模块和收发模块,其中,所述处理模块与所述收发模块耦合,用于执行如权利要求1~3中任一项所述的方法,或用于执行如权利要求9~11中任一项所述的方法,或用于执行如权利要求16~19中任一项所述的方法。
21.一种通信装置,其特征在于,包括处理模块和收发模块,其中,所述处理模块与所述收发模块耦合,用于执行如权利要求4~8中任一项所述的方法,或用于执行如权利要求12~15中任一项所述的方法。
22.一种通信系统,其特征在于,包括用于执行权利要求1~3中任意一项所述的方法的通信设备,以及用于执行权利要求4~8中任意一项所述的方法的通信装置。
23.一种通信系统,其特征在于,包括用于执行权利要求9~11中任意一项所述的方法的通信设备,以及用于执行权利要求12~15中任意一项所述的方法的通信装置。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1~3中任意一项所述的方法,或使得所述计算机执行如权利要求4~8中任意一项所述的方法,或使得所述计算机执行如权利要求9~11中任意一项所述的方法,或使得所述计算机执行如权利要求12~15中任意一项所述的方法,或使得所述计算机执行如权利要求16~19中任意一项所述的方法。
25.一种芯片系统,其特征在于,所述芯片系统包括:
存储器:用于存储指令;
处理器,用于从所述存储器中调用并运行所述指令,使得安装有所述芯片系统的通信设备执行如权利要求1~3中任意一项所述的方法,或使得所述通信设备执行如权利要求4~8中任意一项所述的方法,或使得所述通信设备执行如权利要求9~11中任意一项所述的方法,或使得所述通信设备执行如权利要求12~15中任意一项所述的方法,或使得所述通信设备执行如权利要求16~19中任意一项所述的方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755315.XA CN112399477B (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
CN202211470087.XA CN115988565A (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
EP20851809.2A EP4013112A4 (en) | 2019-08-15 | 2020-08-12 | COMMUNICATION METHOD AND DEVICE |
PCT/CN2020/108732 WO2021027854A1 (zh) | 2019-08-15 | 2020-08-12 | 一种通信方法及设备 |
US17/634,668 US20220329543A1 (en) | 2019-08-15 | 2020-08-12 | Communication Method and Device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755315.XA CN112399477B (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211470087.XA Division CN115988565A (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112399477A CN112399477A (zh) | 2021-02-23 |
CN112399477B true CN112399477B (zh) | 2022-12-06 |
Family
ID=74569864
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910755315.XA Active CN112399477B (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
CN202211470087.XA Pending CN115988565A (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211470087.XA Pending CN115988565A (zh) | 2019-08-15 | 2019-08-15 | 一种通信方法及设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220329543A1 (zh) |
EP (1) | EP4013112A4 (zh) |
CN (2) | CN112399477B (zh) |
WO (1) | WO2021027854A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711968B (zh) * | 2020-06-10 | 2022-02-01 | 京信网络系统股份有限公司 | 报文处理方法、装置、通信设备和通信系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357548A (zh) * | 2016-09-18 | 2017-01-25 | 京信通信技术(广州)有限公司 | Pdcp数据包的接收方法和系统 |
CN108810984A (zh) * | 2017-05-05 | 2018-11-13 | 维沃移动通信有限公司 | 数据处理方法及装置 |
CN109802922A (zh) * | 2017-11-16 | 2019-05-24 | 电信科学技术研究院 | 一种缓存同步异常的处理方法和设备 |
WO2019139376A1 (en) * | 2018-01-10 | 2019-07-18 | Samsung Electronics Co., Ltd. | Method and apparatus for wireless communication in wireless communication system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10470090B2 (en) * | 2014-11-14 | 2019-11-05 | Qualcomm Incorporated | Data compression techniques for handover and radio link failure recovery |
US10341466B2 (en) * | 2014-11-14 | 2019-07-02 | Qualcomm Incorporated | Evolved data compression scheme signaling |
CN108347468B (zh) * | 2017-01-25 | 2021-07-13 | 大唐移动通信设备有限公司 | 一种进行数据同步的方法及设备 |
US20190141567A1 (en) * | 2017-11-06 | 2019-05-09 | Mediatek Inc. | Uplink Data Compression Transaction Flow |
US20190141773A1 (en) * | 2017-11-09 | 2019-05-09 | Samsung Electronics Co., Ltd | Method and apparatus for transmitting and receiving signals in wireless communication system |
ES2899137T3 (es) * | 2017-11-09 | 2022-03-10 | Samsung Electronics Co Ltd | Procedimiento y aparato para comunicación inalámbrica en un sistema de comunicación inalámbrica |
EP3707940A4 (en) * | 2017-11-10 | 2021-08-18 | Telefonaktiebolaget LM Ericsson (publ) | TRANSMISSION DEVICE, RECEPTION DEVICE AND PROCESSES PERFORMED THEREIN TO MANAGE A BUFFER MEMORY RESTART |
KR102352684B1 (ko) * | 2017-11-16 | 2022-01-18 | 삼성전자주식회사 | 무선통신 시스템에서 통신 방법 및 장치 |
-
2019
- 2019-08-15 CN CN201910755315.XA patent/CN112399477B/zh active Active
- 2019-08-15 CN CN202211470087.XA patent/CN115988565A/zh active Pending
-
2020
- 2020-08-12 US US17/634,668 patent/US20220329543A1/en active Pending
- 2020-08-12 WO PCT/CN2020/108732 patent/WO2021027854A1/zh unknown
- 2020-08-12 EP EP20851809.2A patent/EP4013112A4/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357548A (zh) * | 2016-09-18 | 2017-01-25 | 京信通信技术(广州)有限公司 | Pdcp数据包的接收方法和系统 |
CN108810984A (zh) * | 2017-05-05 | 2018-11-13 | 维沃移动通信有限公司 | 数据处理方法及装置 |
CN109802922A (zh) * | 2017-11-16 | 2019-05-24 | 电信科学技术研究院 | 一种缓存同步异常的处理方法和设备 |
WO2019139376A1 (en) * | 2018-01-10 | 2019-07-18 | Samsung Electronics Co., Ltd. | Method and apparatus for wireless communication in wireless communication system |
Also Published As
Publication number | Publication date |
---|---|
CN115988565A (zh) | 2023-04-18 |
EP4013112A4 (en) | 2022-08-17 |
EP4013112A1 (en) | 2022-06-15 |
US20220329543A1 (en) | 2022-10-13 |
CN112399477A (zh) | 2021-02-23 |
WO2021027854A1 (zh) | 2021-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108282292B (zh) | 用于处理数据的方法、发送端和接收端 | |
CN111756485B (zh) | 一种控制定时器、数据包处理方法及设备 | |
WO2021027853A1 (zh) | 一种通信方法及装置 | |
WO2021023044A1 (zh) | 一种通信方法和装置 | |
US20200084668A1 (en) | Methods and Apparatus for Discarding Packets in a Wireless Communication Network | |
CN113543217A (zh) | 数据传输方法及通信装置 | |
CN113727368A (zh) | 一种通信方法及装置 | |
CN114979839A (zh) | 一种传输控制协议代理方法及通信装置 | |
CN117014954A (zh) | 通信方法和装置 | |
CN112399477B (zh) | 一种通信方法及设备 | |
WO2019028777A1 (zh) | 寻呼方法、终端设备和网络设备 | |
US20240080729A1 (en) | Communication Method and Apparatus | |
CN113301606B (zh) | 一种通信方法及装置 | |
WO2021208863A1 (zh) | 数据传输方法及通信装置 | |
CN118339876A (zh) | 无线通信方法和通信设备 | |
WO2021087729A1 (zh) | 一种指示解压缩对象的方法及装置、通信设备 | |
WO2021097686A1 (zh) | 用于传输以太网压缩包的方法和设备 | |
WO2024065471A1 (en) | Wireless communication method and device | |
WO2024065477A1 (en) | Wireless communication method and device | |
WO2022151177A1 (en) | Methods and apparatuses for multicast and broadcast services | |
CN113678501B (zh) | 一种以太网数据包头压缩方法、处理方法及其装置 | |
CN113573357B (zh) | 下行数据接收方法、系统、存储介质及终端 | |
WO2024199031A1 (zh) | 通信方法与通信装置 | |
CN117812637A (zh) | 一种数据包丢弃的方法及相关设备 | |
CN117596218A (zh) | 一种通信方法及装置 |
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 |