NB-IoT系统继续支待上述所有LTE系统的PDCP功能,即:
• 头压缩与解压缩,只支持一种压缩算法,即ROHC算法;
• 用户平面的数据传输,即从NAS子层接收PDCPSDU数据转发给RLC层;
• RLCAM的PDCP重建立流程时对上层PDU的顺序递交;
• RLCAM的PDCP重建立流程时对下层SDU的重复检测;
• 数据加密和解密;
• 上行基于定时器的SDU丢弃;
• 加密与完整性保护;
• 控制平面的数据传输,即从RRC层接收PDCPSDU数据,并转发给RLC层,反之亦然。
针对Rl3NB-IoT只支持不频繁小数据业务的特点,对上述部分功能的细节做了相应的简化,包括:
• 在NB-loT系统中支待的PDCP功能可以针对DRB和SRB,但不包括SRBO和SRBI-bis;
• 不支持PDCP状态报告;
• 只支持7bits的PDCPSN;
• 只支持1600Bytes的PDCPSDU以及PDCPcontrolPDUC1600Bytes包含最大
1500Bytes的数据包+最大lOOBytes的RRC开销)。
数据传输过程
NB-IoT中,对于仅仅支持控制面优化方案的终端,由于加密和完整性保护等安全功能由NAS完成,不支持AS层安全,所以不使用PDCP协议子层(这样可以节省PDCPheader和MAC-I的开销)。对于同时支持控制面优化方案和用户面优化方案的终端,在AS安全激活之前不使用PDCP协议子层;在安全激活之后,即使是使用控制面优化方案的NB-IoT终端(例如,用户面优化传输方案挂起,后续Resume时通过SRB传数据)也要使用PDCP协议子层的功能。
对于用户面优化传输方案,在suspend时,需要存储PDCP状态参数(ROHC状态参数),以便在Resume时可以继续之前的ROHC参数实现快速的用户面恢复。但在Resume时是否继续使用之前的ROHC参数可由终端在ResumeRequest消息中携带的drb-ContinueROHC字段进行控制。另外,在Resume时,需要清空PDCP的发送计数值。
(例如,Next_PDCP_TX_SN和TX_HFN),这是因为相比于RRC重建立流程,Resume虽然借用了PDCP重建立操作,但作为正常的suspend时,数据发送已经完成,无需考虑缓存区中的数据重发。