CN113110949B - 单终端多流程并存处理方法和装置 - Google Patents
单终端多流程并存处理方法和装置 Download PDFInfo
- Publication number
- CN113110949B CN113110949B CN202110473353.3A CN202110473353A CN113110949B CN 113110949 B CN113110949 B CN 113110949B CN 202110473353 A CN202110473353 A CN 202110473353A CN 113110949 B CN113110949 B CN 113110949B
- Authority
- CN
- China
- Prior art keywords
- transaction
- message
- flow
- terminal
- current
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明属于通信技术领域,公开了一种单终端多流程并存处理方法和装置。本发明判定接收到的消息是否为首条消息,如是,则创建该消息所属流程相应的第一事务,当所述控制面网元没有当前正在执行的流程时,对第一事务进行单事务处理;当所述控制面网元有当前正在执行的流程时,对第一事务和终端当前事务进行多事务处理;如否,且属于终端当前事务预期的消息,则对终端当前事务按照单事务处理;若接收的消息属于缓存事务列表中事务的预期的消息,则将该消息存储到缓存事务列表;否则将该消息直接丢弃。本发明能够保证针对同一个终端的多流程并存的场景下,正确处理各并存的流程。
Description
技术领域
本发明属于通信技术领域,具体涉及一种单终端多流程并存处理方法和装置。
背景技术
在通信网络中,网元间根据协议定义的交互流程,发送和接收各流程中的各个消息。因此会产生多流程并存的场景,即同一个网元在前一个流程未结束时,又接收到属于另一个流程的消息。例如,UE(User Equipment,用户终端)相关的流程是多种多样的,RAN(Radio Access Network,无线接入网)侧的CP(Control Plane,控制面)网元有可能在等待某一个流程的预期消息时,却等到了非预期的消息。
在5G网络中,针对接入网控制信令的单UE多流程并存的场景,当前还没有相关技术的说明。只有针对3GPP协议中提到的基本信令的单一流程的相关介绍。
发明内容
本发明目的是:针对现有技术的不足,提供一种单终端多流程并存处理方法和装置,能够保证针对同一个终端的多流程并存的场景下,正确处理各并存的流程。
具体地说,本发明是采用以下技术方案实现的。
一方面,本发明提供一种单终端多流程并存处理方法,包括:
控制面网元预设有终端当前事务,记录当前正在执行的流程;还预设有缓存事务列表,用于存储需要暂缓处理的事务及其消息;所述控制面网元接收到消息,判定该消息是否为首条消息:
如果接收到的消息为首条消息,则创建该消息所属流程相应的第一事务,当所述控制面网元没有当前正在执行的流程时,对第一事务进行单事务处理;当所述控制面网元有当前正在执行的流程时,对第一事务和终端当前事务进行多事务处理;
如果接收到的消息不是首条消息,且属于终端当前事务预期的消息,则对终端当前事务按照单事务处理;若接收的消息属于缓存事务列表中事务的预期的消息,则将该消息存储到缓存事务列表;若接收的消息既不属于终端当前事务预期的消息,也不属于缓存事务列表中事务的预期的消息,则将该消息直接丢弃。
进一步的,所述事务的数据结构包含第一部分和第二部分;所述第一部分包括:用于标识流程类型的流程标识,用于标识流程相应事务的事务标识,事务状态,缓存的事务相应的流程中未处理完的消息,事务失败原因;所述第二部分包括:与每一个流程对应的单独的内存块,所述内存块中包含了该流程的子状态、流程相应的消息。
进一步的,所述单事务处理包括:控制面网元根据事务相应的流程处理该事务中的各条消息;当控制面网元在处理完该事务中最后一条消息之后,释放该事务;所述释放事务包括释放事务第一部分中的缓存的消息和第二部分中的相关的内存块;以及将终端当前事务中该终端相应的事务置为空。
进一步的,所述控制面网元每处理完事务的一条消息,清空该事务中的该条消息,并确定终端当前事务预期的消息。
进一步的,所述多事务处理包括:根据预设的流程的优先级和处理策略,产生流程冲突结果,根据流程冲突结果对第一事务和终端当前事务进行处理。
进一步的,所述流程冲突结果为直接丢弃第一事务。
进一步的,所述流程冲突结果为将第一事务插入到缓存事务列表的尾部,从而等到当前正在执行的流程相应的事务处理完以后,再取出缓存事务列表中的事务进行处理。
进一步的,所述流程冲突结果为将第一事务与缓存事务列表中已有的事务根据预设的流程的优先级进行优先级对比,来决定插入的位置,再将第一事务插入到缓存事务列表,从而等到当前正在执行的流程相应的事务处理完以后,再取出缓存事务列表中的事务进行处理。
进一步的,所述流程冲突结果为将终端当前事务及所有缓存事务列表中的事务全部释放,仅处理第一事务。
进一步的,所述流程冲突结果为将终端当前事务释放,等到第一事务处理完以后,再取出并执行缓存事务列表中的事务。
进一步的,所述流程冲突结果为将当前正在执行的事务插入到缓存事务列表的头部,成为缓存事务列表中的事务,将第一事务作为新的当前正在执行的事务;等到新的当前正在执行的事务处理完以后,再取出缓存事务列表中的事务处理。
进一步的,所述流程冲突结果为直接处理第一事务,并在其处理完后释放,继续处理之前未处理完的事务。
进一步的,所述判定该消息是否为首条消息是将该消息与3GPP协议定义的各流程的首条消息进行比对得到。
进一步的,所述终端当前事务预期的消息,是指终端当前事务相应的流程中第一条待控制面网元接收的消息。
进一步的,所述缓存事务列表中事务的预期的消息,是指该事务相应的流程中第一条待控制面网元接收的消息。
另一方面,本发明还提供一种单终端多流程并存处理装置,实现上述单终端多流程并存处理方法,其特征在于,包括接收模块、发送模块、存储模块、处理模块;所述接收模块接收与单终端多流程并存处理装置交互的其他装置发来的消息;所述处理模块根据单终端多流程并存处理方法对接收到的消息进行处理;所述发送模块发送消息到与单终端多流程并存处理装置交互的其他装置;所述存储模块存储创建的事务、终端当前事务列表、缓存事务列表的信息。
本发明的单终端多流程并存处理方法和装置的有益效果如下:本发明引入了事务的概念,各事务和终端的各基本流程是对应的,并根据消息是否为首条信息进行事务创建,然后根据事务之间的优先级判断进行多事务的冲突处理。因此本发明能够保证针对同一个终端的多流程并存的场景下,正确处理各并存的流程。
附图说明
图1是本实施例的单终端多流程并存场景消息交互流程示意图。
图2是本实施例的单终端多流程并存场景消息处理流程图。
图3是本实施例的流程冲突判断策略结果为丢弃新事务时处理流程图。
图4是本实施例的流程冲突判断策略结果为缓存新事务时处理流程图。
图5是本实施例的流程冲突判断策略结果为终止当前及所有缓存事务时处理流程图。
图6是本实施例的流程冲突判断策略结果为仅终止当前事务时处理流程图。
图7是本实施例的流程冲突判断策略结果为缓存当前事务时处理流程图。
图8是本实施例的流程冲突判断策略结果为并发事务时处理流程图。
图9是本实施例2的单终端多流程并存场景消息交互流程示意图。
图10是本实施例2的单终端多流程并存处理流程图。
图11是本实施例3的单终端多流程并存装置组成示意图。
具体实施方式
下面结合实施例并参照附图对本发明作进一步详细描述。
实施例1:
本发明的一个实施例,为一种单终端多流程并存处理方法。如图1所示,终端设备(UE)、RAN(Radio Access Network,无线接入网)侧的CP(Control Plane,控制面)网元和核心网网元间进行消息交互。编号A1、A2、A3、A4的消息为3GPP协议中定义的属于流程A的消息,整个流程A以A1消息开始,A4消息结束。编号B1、B2、B3、B4的消息为3GPP协议中定义的属于流程B的消息,整个流程B以B1消息开始,B4消息结束。
RAN侧的控制面网元有可能在等待流程A的预期消息A3时,却等到了非预期的消息B1。这种RAN侧的控制面网元针对某个终端的多流程并存场景,称为该终端的多个流程间发生了流程冲突。所有多流程场景,都依赖于流程冲突的处理策略。
本发明中,引入了事务的概念。各事务和UE的各基本流程是对应的,一个流程就是一种事务。但是事务又是区分UE的。也就是说,不同的UE如果执行相同的流程,其事务也是独立的。将流程的消息处理转换成事务处理,从而在未发生流程冲突时,将单个流程转换成单个事务的处理,在流程发生冲突时,将多流程并存转换成多事务并存的处理。单个终端多流程并存处理,是指针对单个UE的各个流程,对其相应的多个并存事务的处理。
本实施例中,事务的数据结构主要包含第一部分和第二部分。第一部分包含:流程标识(例如RRC连接、PDU建立等等,用于标识该流程类型)、事务标识(是CUCP分配的UE的唯一标识与流程标识的组合,与某个UE的某个流程对应)、事务状态(事务当前处理状态,例如处理成功还是失败)、缓存的消息指针(用于缓存该事务相应的流程中未处理完的消息)、事务失败原因(当事务状态为失败时,用于表示事务处理失败的原因)。第二部分包含:与每一个流程(RRC连接、PDU建立等)对应的单独的内存块,其中包含了该流程的子状态、流程相应的消息。可以根据流程标识,来确定访问事务中与流程标识对应的那个内存块。
CP总是在收到某一条消息,并判定其是初始消息时,创建事务;在处理完流程的最后一条消息后或发生流程异常时,释放事务。
本发明的实施例中,设置了终端当前事务,采用指针数组的方式,以终端标识UEID为下标,用于标识RAN侧的控制面网元当前正在处理的某个终端的某个事务。
本发明的实施例中,还设置了终端的缓存事务列表,用于缓存事务及其消息,缓存事务列表头部的事务先处理,尾部的事务后处理。
本发明的实施例,在未发生流程冲突时,对流程进行单流程的处理,在流程发生冲突时,进行多流程的处理。具体方法包括:
一、接收到消息后的处理。
RAN侧的控制面网元收到了某条消息,根据消息类型、消息所属终端判定该消息是否属于某个流程的首条消息,且判断RAN侧的控制面网元当前是否有正在执行的流程,并进行相应的处理。
如果接收到的消息为首条消息,则创建该消息所属流程相应的事务,当终端当前事务为空时,对该事务进行单事务流程处理;当终端当前事务不为空时,对该事务流程和终端当前事务进行多事务流程处理;
如果接收到的消息不是首条消息,且属于终端当前事务预期的消息,则对终端当前事务按照单事务流程处理;若接收的消息属于缓存事务列表中事务的预期的消息,则将该消息加入缓存事务列表中该事务的消息指向;若接收的消息既不属于终端当前事务预期的消息,也不属于缓存事务列表中事务的预期的消息,则将该消息直接丢弃。终端当前事务预期的消息,是指终端当前事务相应的流程中第一条待控制面网元接收的消息。缓存事务列表中事务的预期的消息,是指该缓存事务对应的流程中第一条待控制面网元接收的消息。
根据现有的3GPP协议,各个流程中包括的首条消息是固定的。比如对于RRC连接的流程,来自UE的RRC Setup Request消息就是该流程的首条消息;对于RRC连接恢复流程,来自UE的RRC Resume Request就是该流程的首条消息;对于PDU建立的流程,来自核心网的PDU Session Resource Setup Request消息就是该流程的首条消息。本发明据此设定判断流程首条消息的规则,并在接收到某条消息时依据该规则和收到的该消息类型判断该消息属于什么流程,进而可知后续控制面网元应该发送或接收到什么消息。
判断RAN侧的控制面网元当前是否有正在执行的流程的方法为:RAN侧的控制面网元根据接收到新的消息所属终端,判断终端当前事务数组中该终端标识UEID为下标的终端当前事务相应的指针是否为空。若为空,则表示RAN侧的控制面网元上当前无正在处理的该终端相关的事务(消息),将终端当前事务中该终端相应的指针设置为新创建的事务A,转至单事务处理流程,进行事务A的处理;若不为空,则表示RAN侧的控制面网元上当前有正在处理的该终端相关的事务(消息),发生了流程冲突,转至多事务处理流程。
二、单事务处理流程。
RAN侧的控制面网元根据事务相应的流程处理该事务中的各条消息。每处理完一条消息,则清空事务A中的该条消息指向。因为该消息已处理完毕。通过事务中的消息指向,可以确定当前事务中正在处理的消息,并以此可以确定预期的消息。终端当前事务预期的消息,是指终端当前事务相应的流程中第一条待控制面网元接收的消息。
RAN侧的控制面网元在处理完该事务中最后一条消息之后,则该事务相应的整个流程结束,RAN侧的控制面网元需要释放该事务。释放事务的过程就是释放该事务的内存块,包括事务第一部分中的缓存的消息和第二部分中的相关的内存块;同时,因为该事务为终端当前事务,RAN侧的控制面网元将终端当前事务中该终端相应的指针置为空。
三、多事务处理流程:
RAN侧的控制面网元判断终端当前事务数组中该终端的当前事务不为空,表示当前有事务正在处理,若又有新事务的场景,这就是流程冲突。例如,如果RAN侧的控制面网元在当前事务中预期消息时,没有收到该预期的消息,而是收到了另一个流程的首条消息。RAN侧的控制面网元对该消息(另一个流程的首条消息)创建事务,但是此时的终端有正在执行的事务,根据当前事务数组中该终端的当前事务得到当前正在执行的事务,判断其与新消息所属事务为不同的事务,根据预设的流程冲突判断策略,进行流程冲突判断。
为了方便流程管理,本实施例将现有3GPP协议中提到的基本流程进行流程内消息划分。比如RRC Connection流程,其涵盖了RRC Setup Request、RRC Setp Complete,以及CP等待RRC Setup Complete消息时启动的定时器消息。除此之外,还有RRC Resume、UERegister、PDU Setup等流程,也分别进行流程内消息划分。设定当各流程中各消息在与其他流程中的消息发生冲突时,比较发生冲突的两个流程的优先级,以及所采取的流程冲突判断策略。
当出现流程冲突时,具体的冲突结果根据具体的流程标识、事务标识、事务状态、事务类型,以及当前事务的状态和子状态来比较流程的优先级和处理策略。不同的事务类型,甚至是同一种事务类型,处在不同的子状态,都有可能会产生不同的冲突结果。因为事务种类较多,并且每个事务的子状态也是多样的,这里不作一一描述,下面以事务1(RRC_INACTIVE)和事务2(PDU建立)之间的冲突为例,介绍子状态对流程冲突结果的影响。
例如,当前正在进行RRC Inactive的流程,它可以分为两个子状态:
子状态RRC_INACTIVE_E1_WAIT_SUSPEND:CUCP和CUUP的修改承载上下文(BearerContext Modification)阶段,CUCP发送了修改承载上下文请求(Bearer ContextModification Request)消息,等待CUUP的响应(Bearer Context ModificationResponse)消息的时候,将此场景定义为子状态RRC_INACTIVE_E1_WAIT_SUSPEND。
子状态RRC_INACTIVE_F1_WAIT_CXT_RLS:CUCP和DU(UE)的UE Context Release阶段,CUCP发送UE Context Release Command消息(消息内包含RRC Release WithSuspend),等待DU的UE Context Release Complete响应的时候,将此场景定义为子状态RRC_INACTIVE_F1_WAIT_CXT_RLS。
如果在子状态RRC_INACTIVE_E1_WAIT_SUSPEND的过程中,CUCP收到了核心网发送的PDU Session Resource Setup Requst消息。这个时候CUCP的正确处理过程应该是终止RRC_INACTIVE事务,执行PDU建立事务。所以流程冲突决策结果是:终止当前及所有缓存事务。
如果在子状态RRC_INACTIVE_F1_WAIT_CXT_RLS的过程中,CUCP收到了核心网发送的PDU Session Resource Setup Requst消息。这个时候CUCP的正确处理过程应该是继续RRC_INACTIVE事务,等待RRC_INACTIVE事务执行完以后。再执行PDU建立事务。所以流程冲突决策结果是:缓存新事务。
针对当前3GPP协议中提到的基本流程,本发明一共提供了6种冲突策略,包括丢弃新流程、缓存新流程、终止当前流程及所有缓存流程、仅终止当前流程、缓存当前流程、流程并发。
1)丢弃新流程:
RAN侧的控制面网元判定UE当前正在执行的流程的优先级更高,并且和当前正在执行的流程相比,新的流程可以不处理,直接丢弃,如图3所示。
比如当前正在进行局间切换的流程,又收到了核心网发起的PDU建立的流程。CP认为UE就要从当前CP切换到目的侧了,可以不处理PDU建立的事务,直接将新的流程(PDU建立)忽略,不进行处理了。
2)缓存新流程:
RAN侧的控制面网元判定UE当前正在执行的流程优先级更高,并且和当前正在执行的流程相比,新的流程可以作缓存处理。RAN侧的控制面网元将新事务插入到UE的缓存事务列表的尾部。等到当前正在执行的流程相应的事务处理完以后,再取出UE的缓存事务列表中的事务进行处理,如图4所示。取出的缓存事务不一定是刚刚缓存的新事务,有可能在插入之前,缓存列表是有事务的。进一步的,在另一个实施例中,在将新的流程相应的事务插入到该UE的缓存事务列表时,将新事务与该UE的缓存事务列表中已有的事务根据预设的各个流程的优先级进行优先级对比,来决定插入的位置。使得多流程处理更加合理。
比如当前正在进行RRC重建的流程,又收到了核心网发起的PDU建立的流程,CP认为UE必须要优先完成RRC重建的流程之后,才可以处理PDU建立的事务,否则,PDU建立相关的RRC消息是不可能发送到UE的。因此,这种情况下的冲突判断策略是,将新的流程(PDU建立)缓存到UE的缓存事务列表中,等当前正在进行的流程(重建)相应的事务处理完毕后,再从UE的缓存事务列表中取出PDU建立流程进行处理。
3)终止当前及所有缓存流程:
RAN侧的控制面网元判定UE的新流程的优先级更高,并且UE当前正在执行的流程及所有缓存的流程都没有继续执行的必要了,则将UE当前正在执行的事务及所有缓存的事务全部释放,仅处理新的事务,如图5所示。
比如新流程是优先级很高的上下文释放的流程,那么缓存的事务就没必要继续执行了,可以直接释放。
4)仅终止当前流程:
RAN侧的控制面网元判定UE的新流程B的优先级更高,并且UE当前正在执行流程A没有继续执行的必要了。RAN侧的控制面网元会将UE当前正在执行的事务A释放。等到新的事务B处理完以后,再继续执行缓存事务列表中的事务C(如果有的话),如图6所示。
比如对于Inactive态的UE,当前正在执行的流程为由DL NAS流程触发的paging流程,当RRC Resume(新的流程)产生的时候,仅需要将Paging流程释放就可以了,但是DL NAS流程(在缓存列表中)还是要等到RRC Resume流程完成后,继续处理。
5)缓存当前流程:
RAN侧的控制面网元判定UE的新流程B的优先级更高,并且需要缓存UE当前正在执行的流程A。RAN侧的控制面网元将当前正在执行的事务A插入到UE的缓存事务列表L的头部,成为缓存列表中的事务,将新事务B作为新的当前正在执行的事务。等到新的当前正在执行的事务处理完以后,再取出缓存列表中的事务A处理,如图7所示。
比如在PDU建立的初级阶段,发生了局内切换的流程。必须要等到局内切换完成以后,再继续PDU建立流程的处理。那么PDU事务就可以插入到UE缓存事务列表的头部。等到局内切换结束,继续PDU建立的流程。
6)并发流程:
RAN侧的控制面网元判定新的流程可以直接处理,处理完后直接释放。并不会影响当前流程的执行,这种场景下,作并发处理,即直接处理新的事务,并在其处理完后释放该事务,继续处理之前未处理完的事务。如图8所示。
比如连接态的UL NAS和DL NAS等等。RAN侧的控制面网元当前正在执行的事务A时,接收到DL NAS消息,并不影响当前正在执行的事务A的处理。RAN侧的控制面网元将DLNAS消息发送完之后,其相应的事务就直接释放了,继续进行事务A的处理。
实施例2:
本发明的一个实施例,为一种单终端多流程并存处理方法。如图2所示,终端设备(UE)、RAN侧的控制面网元CUCP和核心网网元AMF间进行消息交互。编号A1、A2、A3、A4的消息为3GPP协议中定义的属于流程A的消息,整个流程A以A1消息开始,A4消息结束。编号B1、B2、B3、B4的消息为3GPP协议中定义的属于流程B的消息,整个流程B以B1消息开始,B4消息结束。
CUCP网元有可能在等待流程A的预期消息A3时,却等到了非预期的消息B1,即该终端的流程A和流程B之间发生了流程冲突。
CP总是在收到某一条消息,并判定其是初始消息时,创建事务;在处理完流程的最后一条消息后或发生流程异常时,释放事务。
本发明的实施例中,设置了终端当前事务,采用指针数组的方式,以终端标识UEID为下标,用于标识CUCP当前正在处理的某个终端的某个事务。
本发明的实施例中,还设置了终端的缓存事务列表,用于缓存事务及其消息,缓存事务列表头部的事务先处理,尾部的事务后处理。
本发明的实施例,在未发生流程冲突时,对流程进行单流程的处理,在流程发生冲突时,进行多流程的处理。如图10所示,本实施例的单终端多流程并存处理方法包括:
一、接收到消息后的处理。
1,CUCP收到了消息A1,判定消息A1属于流程A的首条消息,创建流程A相应的事务A。
事务A的数据结构主要包含第一部分和第二部分。第一部分包含:流程标识(用于标识流程A的类型)、事务标识(是CUCP分配的UE的唯一标识与流程标识的组合,与该UE的流程A对应)、事务状态(事务当前处理状态,例如处理成功还是失败)、缓存的消息指针(用于缓存流程A中未处理完的消息)、事务失败原因(当事务状态为失败时,用于表示事务处理失败的原因)。第二部分包含:与流程A对应的单独的内存块,其中包含了该流程的子状态、流程相应的消息。可以根据流程标识,来确定访问事务中与流程标识对应的那个内存块。
2,CUCP将事务A赋值为终端当前事务数组中的终端当前事务ueCurTrans[ueId]。ueCurTrans[ueId]为指针数组,用来表示各个终端相应的当前执行事务,ueId为终端标识。转至单事务处理流程,进行事务A的处理。
二、单事务处理流程:
1,CUCP处理消息A1后的结果就是给核心网发送了消息A2,CUCP会启动等待消息A3的定时器,之后清空事务A中的消息A1指向。
2,CUCP收到消息A3之后,判定UE当前正在进行事务A的处理,并且A3消息属于事务A,那么A3就可以被正常处理。
3,CUCP正确处理A3之后,给核心网发送A4消息。
4,CUCP在发送了A4消息之后,认为整个流程A结束,CUCP需要释放事务A,同时释放事物A内的消息A3指向。具体释放事务的过程就是释放整个事务的内存块,包括事务内第一部分中的缓存的消息,第二部分中的相关的内存块。同时,CUCP置ueCurTrans[ueId]为空。
三、多事务处理流程:
如果CUCP在发送了消息A2、等待消息A3的定时器时间内,没有收到预期的A3消息,而是收到了B1消息,CUCP创建事务B。但是此时的ueCurTrans[ueId]并不为空。这就出现了UE当前有事务A正在处理,又有新事务B的场景,即发生了流程冲突。
CUCP根据预设的流程冲突判断策略,进行流程冲突判断。本实施例以冲突结果为“缓存当前事务”为例,说明多事务处理流程。
1,CP根据预设的流程冲突判断策略,判定UE的新事务B的优先级更高,当前正在执行的事务A需要被暂缓执行。CP将当前正在执行的事务A插入到UE的缓存事务列表ueBufTransList[ueId](ueId为终端UE的标识)的头部,成为缓存事务列表中的头结点,将新事务B作为新的当前正在执行的事务。
UE的缓存事务列表ueBufTransList[ueId]的数据结构包含缓存的事务的头结点一级缓存的事务的个数bufTransNum:
2,CUCP处理事务B的消息B1,发送消息B2给UE,并启动定时器等待消息B3。
·如果CUCP收到了消息A3,判断消息A3不属于当前事务B,而属于缓存事务列表(ueBufTransList[ueId])中的事务A,将消息A3指针挂接到事务A内的消息指针;
·如果CUCP收到了消息B3,判断消息B3属于终端当前事务B:处理消息B3,发送消息B4,事务B结束,释放事务B,清空事务B内存块;取出缓存列表中的事务A处理(CUCP查找ueBufTransList[ueId],获取头结点,得到事务A,将ueCurTrans[ueId]设置为事务A;CUCP将ueBufTransList[ueId]的头结点变为原头结点(Trans A指向的下一个节点),然后将bufTransNum减1;CUCP对事务A进行处理):
如果CUCP判定事务A内的消息指针不为空(为消息A3或者是定时器超时消息),继续消息A3的处理,然后发送消息A4;CUCP在发送了消息A4之后,事务A的生命周期结束,释放事务A,将ueCurTrans[ueId]清空。
如果CUCP判定事务A内的消息指针为空,则事务A继续等到消息A3或者是定时器超时消息的到来,此时为单事务处理过程。
实施例3:
本发明的一个实施例,为一种单终端多流程并存处理装置,可以用于执行任一上述单终端多流程并存处理方法。上述单终端多流程并存处理方法具体流程请参见上述实施例的详细阐述。
如图11所示,本实施例的单终端多流程并存处理装置,包括接收模块、发送模块、存储模块、处理模块。其中,接收模块接收与单终端多流程并存处理装置交互的其他装置发来的消息,处理模块根据单终端多流程并存处理方法对接收到的消息进行处理,发送模块发送消息到与单终端多流程并存处理装置交互的其他装置,存储模块存储创建的事务、终端当前事务列表、缓存事务列表的信息。
通过本实施例公开的单终端多流程并存处理装置,可以在单终端多流程并存处理装置在接收到终端的不同流程的消息,由此可以应用在终端侧、接入侧控制面网元或核心网控制面网元,解决多个流程并存时如何根据3GPP协议正确进行处理的问题。
在一些实施例中,上述技术的某些方面可以由执行软件的处理系统的一个或多个处理器来实现。该软件包括存储或以其他方式有形实施在非暂时性计算机可读存储介质上的一个或多个可执行指令集合。软件可以包括指令和某些数据,这些指令和某些数据在由一个或多个处理器执行时操纵一个或多个处理器以执行上述技术的一个或多个方面。非暂时性计算机可读存储介质可以包括例如磁或光盘存储设备,诸如闪存、高速缓存、随机存取存储器(RAM)等的固态存储设备或其他非易失性存储器设备。存储在非临时性计算机可读存储介质上的可执行指令可以是源代码、汇编语言代码、目标代码或被一个或多个处理器解释或以其他方式执行的其他指令格式。
计算机可读存储介质可以包括在使用期间可由计算机系统访问以向计算机系统提供指令和/或数据的任何存储介质或存储介质的组合。这样的存储介质可以包括但不限于光学介质(例如,光盘(CD)、数字多功能光盘(DVD)、蓝光光盘)、磁介质(例如,软盘、磁带或磁性硬盘驱动器)、易失性存储器(例如,随机存取存储器(RAM)或高速缓存)、非易失性存储器(例如,只读存储器(ROM)或闪存)或基于微机电系统(MEMS)的存储介质。计算机可读存储介质可以嵌入计算系统(例如,系统RAM或ROM)中,固定地附接到计算系统(例如,磁性硬盘驱动器),可移除地附接到计算系统(例如,光盘或通用基于串行总线(USB)的闪存),或者经由有线或无线网络(例如,网络可访问存储(NAS))耦合到计算机系统。
请注意,并非上述一般性描述中的所有活动或要素都是必需的,特定活动或设备的一部分可能不是必需的,并且除了描述的那些之外可以执行一个或多个进一步的活动或包括的要素。更进一步,活动列出的顺序不必是执行它们的顺序。而且,已经参考具体实施例描述了这些概念。然而,本领域的普通技术人员认识到,在不脱离如下权利要求书中阐述的本公开的范围的情况下,可以进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的,并且所有这样的修改被包括在本公开的范围内。
上面已经关于具体实施例描述了益处、其他优点和问题的解决方案。然而,可能导致任何益处、优点或解决方案发生或变得更明显的益处、优点、问题的解决方案以及任何特征都不应被解释为任何或其他方面的关键、必需或任何或所有权利要求的基本特征。此外,上面公开的特定实施例仅仅是说明性的,因为所公开的主题可以以受益于这里的教导的本领域技术人员显而易见的不同但等同的方式进行修改和实施。除了在下面的权利要求书中描述的以外,没有意图限制在此示出的构造或设计的细节。因此明显的是,上面公开的特定实施例可以被改变或修改,并且所有这样的变化被认为在所公开的主题的范围内。
Claims (16)
1.一种单终端多流程并存处理方法,其特征在于,包括:
控制面网元预设有终端当前事务,记录当前正在执行的流程;还预设有缓存事务列表,用于存储需要暂缓处理的事务及其消息;所述控制面网元接收到消息,判定该消息是否为首条消息:
如果接收到的消息为首条消息,则创建该消息所属流程相应的第一事务,当所述控制面网元没有当前正在执行的流程时,对第一事务进行单事务处理;当所述控制面网元有当前正在执行的流程时,对第一事务和终端当前事务进行多事务处理;
如果接收到的消息不是首条消息,且属于终端当前事务预期的消息,则对终端当前事务按照单事务处理;若接收的消息属于缓存事务列表中事务的预期的消息,则将该消息存储到缓存事务列表;若接收的消息既不属于终端当前事务预期的消息,也不属于缓存事务列表中事务的预期的消息,则将该消息直接丢弃。
2.根据权利要求1所述的单终端多流程并存处理方法,其特征在于,所述事务的数据结构包含第一部分和第二部分;
所述第一部分包括:用于标识流程类型的流程标识,用于标识流程相应事务的事务标识,事务状态,缓存的事务相应的流程中未处理完的消息,事务失败原因;
所述第二部分包括:与每一个流程对应的单独的内存块,所述内存块中包含了该流程的子状态、流程相应的消息。
3.根据权利要求2所述的单终端多流程并存处理方法,其特征在于,所述单事务处理包括:
控制面网元根据事务相应的流程处理该事务中的各条消息;
当控制面网元在处理完该事务中最后一条消息之后,释放该事务;所述释放事务包括释放事务第一部分中的缓存的消息和第二部分中的相关的内存块;以及将终端当前事务中该终端相应的事务置为空。
4.根据权利要求3所述的单终端多流程并存处理方法,其特征在于,所述控制面网元每处理完事务的一条消息,清空该事务中的该条消息,并确定终端当前事务预期的消息。
5.根据权利要求2所述的单终端多流程并存处理方法,其特征在于,所述多事务处理包括:
根据预设的流程的优先级和处理策略,产生流程冲突结果,根据流程冲突结果对第一事务和终端当前事务进行处理。
6.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为直接丢弃第一事务。
7.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为将第一事务插入到缓存事务列表的尾部,从而等到当前正在执行的流程相应的事务处理完以后,再取出缓存事务列表中的事务进行处理。
8.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为将第一事务与缓存事务列表中已有的事务根据预设的流程的优先级进行优先级对比,来决定插入的位置,再将第一事务插入到缓存事务列表,从而等到当前正在执行的流程相应的事务处理完以后,再取出缓存事务列表中的事务进行处理。
9.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为将终端当前事务及所有缓存事务列表中的事务全部释放,仅处理第一事务。
10.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为将终端当前事务释放,等到第一事务处理完以后,再取出并执行缓存事务列表中的事务。
11.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为将当前正在执行的事务插入到缓存事务列表的头部,成为缓存事务列表中的事务,将第一事务作为新的当前正在执行的事务;等到新的当前正在执行的事务处理完以后,再取出缓存事务列表中的事务处理。
12.根据权利要求5所述的单终端多流程并存处理方法,其特征在于,所述流程冲突结果为直接处理第一事务,并在其处理完后释放,继续处理之前未处理完的事务。
13.根据权利要求1所述的单终端多流程并存处理方法,其特征在于,所述判定该消息是否为首条消息是将该消息与3GPP协议定义的各流程的首条消息进行比对得到。
14.根据权利要求1所述的单终端多流程并存处理方法,其特征在于,所述终端当前事务预期的消息,是指终端当前事务相应的流程中第一条待控制面网元接收的消息。
15.根据权利要求1所述的单终端多流程并存处理方法,其特征在于,所述缓存事务列表中事务的预期的消息,是指该事务相应的流程中第一条待控制面网元接收的消息。
16.一种单终端多流程并存处理装置,实现根据权利要求1至15任一所述的单终端多流程并存处理方法,其特征在于,包括接收模块、发送模块、存储模块、处理模块;
所述接收模块接收与单终端多流程并存处理装置交互的其他装置发来的消息;
所述处理模块根据单终端多流程并存处理方法对接收到的消息进行处理;
所述发送模块发送消息到与单终端多流程并存处理装置交互的其他装置;
所述存储模块存储创建的事务、终端当前事务列表、缓存事务列表的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473353.3A CN113110949B (zh) | 2021-04-29 | 2021-04-29 | 单终端多流程并存处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110473353.3A CN113110949B (zh) | 2021-04-29 | 2021-04-29 | 单终端多流程并存处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113110949A CN113110949A (zh) | 2021-07-13 |
CN113110949B true CN113110949B (zh) | 2023-10-13 |
Family
ID=76720416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110473353.3A Active CN113110949B (zh) | 2021-04-29 | 2021-04-29 | 单终端多流程并存处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113110949B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4612710B2 (ja) * | 2008-06-02 | 2011-01-12 | 株式会社日立製作所 | トランザクション並行制御方法、データベース管理システム、およびプログラム |
CN107391400A (zh) * | 2017-06-30 | 2017-11-24 | 中国科学院计算技术研究所 | 一种支持复杂访存指令的内存扩展方法和系统 |
CN111198751A (zh) * | 2018-11-20 | 2020-05-26 | 北京京东尚科信息技术有限公司 | 业务处理方法和装置 |
CN111221890A (zh) * | 2019-11-08 | 2020-06-02 | 中盈优创资讯科技有限公司 | 通用指标类自动监控预警方法及装置 |
CN112306646A (zh) * | 2020-06-29 | 2021-02-02 | 北京沃东天骏信息技术有限公司 | 用于处理事务的方法、装置、设备及可读存储介质 |
-
2021
- 2021-04-29 CN CN202110473353.3A patent/CN113110949B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4612710B2 (ja) * | 2008-06-02 | 2011-01-12 | 株式会社日立製作所 | トランザクション並行制御方法、データベース管理システム、およびプログラム |
CN107391400A (zh) * | 2017-06-30 | 2017-11-24 | 中国科学院计算技术研究所 | 一种支持复杂访存指令的内存扩展方法和系统 |
CN111198751A (zh) * | 2018-11-20 | 2020-05-26 | 北京京东尚科信息技术有限公司 | 业务处理方法和装置 |
CN111221890A (zh) * | 2019-11-08 | 2020-06-02 | 中盈优创资讯科技有限公司 | 通用指标类自动监控预警方法及装置 |
CN112306646A (zh) * | 2020-06-29 | 2021-02-02 | 北京沃东天骏信息技术有限公司 | 用于处理事务的方法、装置、设备及可读存储介质 |
Non-Patent Citations (1)
Title |
---|
基于隔离域的事务工作流并发控制;郝丽波;李建华;;计算机工程与设计(01) * |
Also Published As
Publication number | Publication date |
---|---|
CN113110949A (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DK2578043T3 (en) | Forbindelsesstatusser of a consumer unit in a serving gateway to an evolved packet core system | |
EP4007378A1 (en) | Data sending method and apparatus, data receiving method and apparatus, first node, and second node | |
CN110831260B (zh) | Rrc连接恢复的处理方法、装置及终端 | |
US20220124568A1 (en) | Managing mcg fast recovery | |
US20220304092A1 (en) | Fast failure recovery with master node | |
TW202038671A (zh) | 處理操作錯誤的方法及使用者設備 | |
CN101330451A (zh) | 数据包的转发处理方法、节点与分组核心装置 | |
US11602001B2 (en) | Method and device for resuming data radio bearer, storage medium and electronic device | |
CN103650401B (zh) | 一种移动终端内部通信方法 | |
US11528682B2 (en) | Method for paging user equipment, first network device, and user equipment | |
EP2541833A1 (en) | Method, system and base station for resource release | |
CN116684998A (zh) | 用于小数据传输的方法 | |
CN113110949B (zh) | 单终端多流程并存处理方法和装置 | |
WO2000004733A1 (fr) | Procede de commutation d'une ligne occupee dans un reseau de communication mobile | |
WO2019096236A1 (zh) | 连接控制、业务处理方法及装置 | |
CN114585034A (zh) | 一种daps切换方法、网络设备及用户设备 | |
WO2022077338A1 (en) | Methods and apparatuses for small data transmission | |
US12021736B2 (en) | Method and UE for handling UL NAS transport message failure in wireless communication network | |
CN115765784A (zh) | 射频前端的共享方法、终端设备和计算机可读存储介质 | |
WO2018152846A1 (zh) | 通信方法和装置 | |
CN107872842B (zh) | 一种数据接收方法及装置 | |
CN111385795B (zh) | 用户识别卡的鉴权方法及移动终端、计算机可读存储介质 | |
WO2011082652A1 (zh) | 一种用户面从iur-g接口向a接口迁移的方法、及相应的装置 | |
TW202031081A (zh) | 在分散式基地台架構中之管理單元群組組態 | |
CN107155222A (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 211100 floor 1-2, building 8, Qilin artificial intelligence Industrial Park, 266 Chuangyan Road, Jiangning District, Nanjing City, Jiangsu Province Applicant after: Zhongke Nanjing information high speed Railway Research Institute Address before: 211100 floor 1-2, building 8, Qilin artificial intelligence Industrial Park, 266 Chuangyan Road, Jiangning District, Nanjing City, Jiangsu Province Applicant before: Nanjing Research Institute Institute of computing Chinese Academy of Sciences |
|
GR01 | Patent grant | ||
GR01 | Patent grant |