发明内容
本发明所解决的技术问题在于提供了一种下一跳链计数器的处理方法及设备,用以避免NCC值出现回卷而导致NCC值管理混乱、以及UE和MME上密钥同步的问题。
本发明实施例中提供了一种NCC的处理方法,包括如下步骤:
MME检测到NCC值达到最大值时,MME获取UE侧的上行NASCOUNT;
MME根据获取的上行NAS COUNT推衍得到KeNB,NCC为0;并推衍出初始的NH值,NCC为1;
MME将{NH,NCC=1}保存,并用于下一次推衍NH使用;
MME将KeNB传递给eNB,并指示eNB激活UE与eNB的AS层安全。
本发明实施例中提供了一种MME设备,包括:
获取模块,用于在检测到NCC值达到最大值时,获取UE侧的上行NASCOUNT;
推衍模块,用于根据获取的上行NAS COUNT推衍得到KeNB,NCC为0;并推衍出初始的NH值,NCC为1;
存储模块,用于将{NH,NCC=1}保存,并用于下一次推衍NH使用;
发送模块,用于将KeNB传递给eNB,并指示eNB激活UE与eNB的AS层安全。
本发明实施例中提供了一种NCC的处理方法,包括如下步骤:
MME在确定本地的NCC值加1后达到了最大值时,MME将{NH,NCC=7}传递给eNB;
MME将NCC设置为预设值,并推衍出NH值,所述预设值是MME与UE预先约定的;
MME将{NH,NCC=预设值}保存,并用于下一次推衍NH使用。
本发明实施例中提供了一种NCC的处理方法,包括如下步骤:
UE接收eNB传递的NCC;
UE确定收到的NCC达到了最大值时,UE将NCC值回卷为预设值,并推衍出NH值以及KeNB,所述预设值是MME与UE预先约定的。
本发明实施例中提供了一种MME设备,包括:
发送模块,用于在确定本地的NCC值加1后达到了最大值时,将{NH,NCC=7}传递给eNB;
设置模块,用于将NCC设置为预设值,并推衍出NH值,所述预设值是MME与UE预先约定的;
存储模块,用于保存{NH,NCC=预设值},并用于下一次推衍NH使用。
本发明实施例中提供了一种用户设备,包括:
接收模块,用于接收eNB传递的NCC;
回卷模块,用于在确定收到的NCC达到了最大值时,将NCC值回卷为预设值,并推衍出NH值以及KeNB,所述预设值是MME与UE预先约定的。
本发明有益效果如下:
本发明实施例提供的技术方案解决了NCC回卷的情况下UE和MME上密钥的同步问题,同时对UE和MME的处理做出约束,完善了协议描述。
具体实施方式
下面结合附图对本发明的具体实施方式进行说明。
方式一
图2为NCC的处理方法一实施流程示意图,如图所示,在管理NCC值时可以包括如下步骤:
步骤201、MME检测到NCC值达到最大值时,MME获取UE侧的上行NAS COUNT(计数器);
步骤202、MME根据获取的上行NAS COUNT推衍得到KeNB,NCC为0;并推衍出初始的NH值,NCC为1;
步骤203、MME将{NH,NCC=1}保存,并用于下一次推衍NH使用;
步骤204、MME将KeNB传递给eNB,并指示eNB激活UE与eNB的AS层安全。
实施中,MME获取UE侧的上行NAS COUNT,可以包括:
MME发起NAS SMC(Security Mode Command,安全模式命令)过程;
MME从UE回复的NAS SMC消息中获取上行NAS COUNT。
实施中,MME将KeNB传递给eNB,可以是通过UE CONTEXTMODIFICATION REQ(UE上下文修改请求)消息将KeNB传递给eNB。
该种方式,可以称为重置式方案,主要是重新推衍KeNB并重置NCC。
具体的,KeNB直接由KASME推衍得到,并且NCC与之关联,此时NCC值置为0。同时推衍出NH值,对应的NCC值为1,{NH,NCC=1}保存在MME本地,用于下次切换时推衍NH使用。为了实现KeNB的重新推衍,则可以按以下过程来完成。
图3为KeNB重新推衍,NCC重置触发实施流程示意图,如图所示,该过程可以包括如下步骤:
步骤301、进行X2切换或者S1切换过程;
步骤302、MME将NCC加1,设此时NCC为最大值7;
步骤303、进行NAS SMC过程。
步骤304、MME向eNB下发UE CONTEXT MODIFICATION REQ消息;
步骤305、eNB触发AS SMC过程;
步骤306、eNB向MME响应UE CONTEXT MODIFICATION RSP(UE上下文修改响应)消息。
推衍KeNB需要KASME和上行NAS COUNT作为输入参数的,上行的NASCOUNT由UE维护,MME侧只是存储,所以如果需要重新推衍KeNB,则需要MME和UE侧的上行NAS COUNT一致。
这样在上述过程中,MME在步骤302检测到NCC值达到最大值7时,MME在步骤303发起NAS SMC过程,重新激活安全上下文,发起NAS SMC过程的目的是利用UE回复的NAS SMC消息中的上行NAS COUNT推衍KeNB,这样就达到了同步上行NAS COUNT的目的。
NAS SMC过程完成后,MME根据UE回复的NAS SMC消息中的上行NAS COUNT推衍得到KeNB,NCC为0,同时推衍出初始的NH值,NCC为1,将{NH,NCC=1}保存在MME中,用于下一次推衍NH使用。
MME在步骤304通过UE CONTEXT MODIFICATION REQ消息,将KeNB传递给eNB。eNB通过步骤305的AS SMC过程来激活该AS层安全。
UE收到AS SMC消息后,根据当前的上行NAS COUNT和KASME推衍出KeNB。
从上述过程可以看出,通过以上一系列过程,NCC的值又重新从1开始,而且MME和UE侧也达到了密钥同步的目的。
方式二
该方式可以称为回卷式方案,主要是控制NCC的回卷值。
具体的,可以在NCC达到最大值,需要回卷时,MME主动将NCC的值回卷到一个可用的有效值,并与UE约定回卷过程,从而保证UE和MME两处的NCC是同步的,保证NH推衍的一致性。
在说明过程中,将分别从UE与MME侧的实施进行说明,但这并不意味着二者必须配合实施,实际上,当UE与MME分开始实施时,其也各自解决的UE侧、MME侧的问题,只是二者结合使用时,会获得更好的技术效果。
图4为NCC的处理方法二实施流程示意图,如图所示,对于MME侧的实施,在管理NCC值时可以包括如下步骤:
步骤401、MME在确定本地的NCC值加1后达到了最大值时,MME将{NH,NCC=7}传递给eNB;
步骤402、MME将NCC设置为预设值,并推衍出NH值,所述预设值是MME与UE预先约定的;
步骤403、MME将{NH,NCC=预设值}保存,并用于下一次推衍NH使用。
实施中,所述预设值为1或2。
图5为NCC的处理方法三实施流程示意图,如图所示,对于UE侧的实施,在管理NCC值时可以包括如下步骤:
步骤501、UE接收eNB传递的NCC;
步骤502、UE确定收到的NCC达到了最大值时,UE将NCC值回卷为预设值,并推衍出NH值以及KeNB,所述预设值是MME与UE预先约定的。
实施中,在预设值为1时,UE将NCC值回卷为预设值,并推衍出NH值以及KeNB,可以包括:
将NCC值设为1,推衍出NH值;
将NCC值设为2,推衍出NH值;
根据{NH,NCC=2}推衍出KeNB。
实施中,在预设值为2至最大值之一时,将NCC值设为预设值,推衍出NH值;根据{NH,NCC=预设值}推衍出KeNB。
实施中,预设值可以不为0。
为便于理解,下面从UE以及MME的配合实施来进行说明。
实施中,由于NCC为0对应初始的KeNB,而NCC为1对应初始的NH值,两个NCC值有特殊的用途,所以当NCC回卷的情况下,NCC从最大值7回卷到0时,如果直接回卷可能会造成NCC管理的混乱,因此,预设值最好不为0。
实施中,图6为NCC改变示意图,如图所示,以预设值为1的实施为例,当MME收到切换请求或者路径转换请求后,将本地的NCC值加1,如果NCC加1后值为7,达到了最大值,则MME将{NH,NCC=7}传递给eNB,之后将NCC的值设置为1,并重新推衍出一个NH值,将{NH,NCC=1}的值保存,下次切换时推衍新的NH时使用。
UE侧按照同样的方式,当收到NCC值为7时,同步NCC,推衍NH,进而推衍出KeNB。下一次切换时,如果UE收到的NCC值为2,则UE需要同步NCC,同步过程为,先是由NCC为7到NCC为1的同步,推衍一次NH,接下来是由NCC为1到NCC为2的同步,推衍NH,根据{NH,NCC=2}推衍KeNB,也就是说UE需要同步两次NCC,但整个过程,在NCC回卷的过程中,NCC为0不再使用。
实施中,NCC到7后,NCC回卷到1,并同时推衍出NH,但该{NH,NCC=1}对不用于下次切换时推衍KeNB用,而是用于推衍NH,与起初的用法一样。
对于预设值为2至最大值之一时,例如回卷到2,则跳过NCC=1的情况,直接回卷到2,UE看到NCC=2时,就直接将NCC=7同步一次到NCC=2。
基于同一发明构思,本发明实施例中还提供了移动性管理实体设备、用户设备,由于这些设备解决问题的原理与NCC的处理方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
图7为MME设备一结构示意图,如图所示,在按重置式方案构思实施时,MME中可以包括:
获取模块701,用于在检测到NCC值达到最大值时,获取UE侧的上行NAS COUNT;
推衍模块702,用于根据获取的上行NAS COUNT推衍得到KeNB,NCC为0;并推衍出初始的NH值,NCC为1;
存储模块703,用于将{NH,NCC=1}保存,并用于下一次推衍NH使用;
发送模块704,用于将KeNB传递给eNB,并指示eNB激活UE与eNB的AS层安全。
实施中,获取模块可以包括:
发起单元,用于发起NAS SMC过程;
获取单元,用于从UE回复的NAS SMC消息中获取上行NAS COUNT。
实施中,发送模块还可以进一步用于通过UE CONTEXTMODIFICATION REQ消息将KeNB传递给eNB。
图8为MME设备二结构示意图,如图所示,在按回卷式方案构思实施时,MME中可以包括:
发送模块801,用于在确定本地的NCC值加1后达到了最大值时,将{NH,NCC=7}传递给eNB;
设置模块802,用于将NCC设置为预设值,并推衍出NH值,所述预设值是MME与UE预先约定的;
存储模块803,用于保存{NH,NCC=预设值},并用于下一次推衍NH使用。
实施中,设置模块还可以进一步用于将NCC设置为1或2。
图9为用户设备结构示意图,如图所示,在按回卷式方案构思实施时,UE中可以包括:
接收模块901,用于接收eNB传递的NCC;
回卷模块902,用于在确定收到的NCC达到了最大值时,将NCC值回卷为预设值,并推衍出NH值以及KeNB,所述预设值是MME与UE预先约定的。
实施中,回卷模块还可以进一步用于在所述预设值为1时,将NCC值设为1,推衍出NH值;将NCC值设为2,推衍出NH值;根据{NH,NCC=2}推衍出KeNB。
实施中,回卷模块还可以进一步用于在所述预设值为2至最大值之一时,将NCC值设为预设值,推衍出NH值;根据{NH,NCC=预设值}推衍出KeNB。
实施中,回卷模块还可以进一步用于回卷的所述预设值不为0。
为了描述的方便,以上所述装置的各部分以功能分为各种模块或单元分别描述。当然,在实施本发明时可以把各模块或单元的功能在同一个或多个软件或硬件中实现。
从上述实施例可以看出,通过重置式方案、或者回卷式方案,解决了NCC回卷的情况下UE和MME上密钥的同步问题,同时对UE和MME的处理做出约束,完善了协议描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。