一种负载迁移方法、装置及系统与流程

    专利2022-07-07  111


    本发明涉及通信领域,尤其涉及一种负载迁移方法、装置及系统。



    背景技术:

    在第三代合作伙伴计划(3rdgenerationpartnershipproject,3gpp)协议中,长期演进(longtermevolution,lte)系统由接入网和系统架构演进(systemarchitectureevolution,sae)核心网组成。

    如图1所示,为某个控制域内sae核心网的架构示意图。外部网元01,例如,enodeb(evolvednodeb,演进型nodeb)、af(applicationfunction,应用功能实体)、或gw-u(gatewayuser-plane,用户面网关)等,可以通过网元选择器(nes,networkelementselector)02与控制域内的各个控制器03进行交互。各个控制器03均与数据库服务器04连接,其中,数据库服务器04可用于存储本控制域中所有ue(userequipment,用户设备)的签约数据以及上下文数据等资源信息。控制器03接收到网元选择器02转发的由ue发起的用户请求后,可通过与数据库服务器04交互实现移动性管理、会话管理、计费与策略管理等功能。而网元选择器02可以根据各个控制器03的负载情况以及预先配置的负载均衡策略,选择负载较低的控制器03处理上述用户请求,从而使本控制域内各个控制器03的负载趋于均衡,实现本控制域内的资源优化利用。

    然而,当所有控制器03的负载均大于负载阈值时,会导致本控制域的负载过高,此时,当任意ue发起新的用户请求时,网元选择器02需要等待某一控制器03空闲后,才能够为该用户请求分配控制器03,从而增加了ue与sae核心网之间的通信时延。



    技术实现要素:

    本发明的实施例提供一种负载迁移方法、装置及系统,可实现跨控制域之间的负载迁移,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    为达到上述目的,本发明的实施例采用如下技术方案:

    第一方面,本发明的实施例提供一种负载迁移方法,包括:源控制器确定需要迁移至目的控制器的待迁移ue;数据库服务器中存储有该待迁移ue的签约数据和上下文数据等资源信息,但这些签约数据和上下文数据中与待迁移ue相关的数据均反映了待迁移ue与源控制器之间的对应关系,因此,为了将待迁移ue迁移至第二控制域的目的控制器,源控制器可以在数据库服务器中更新待迁移ue的资源信息,此时,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系;并且,由于外部网元内原本存储有待迁移ue与源控制器之间的对应关系,也就是说,当外部网元接收到该待迁移ue的用户请求后,会根据上述对应关系将该用户请求转发至源控制器,因此,源控制器还需要向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识和目的控制器的标识,以使得该外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,由于上述对应关系中的控制器已修改为目的控制器,因此,外部网元根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,从而实现了跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延。

    在一种可能的设计中,该源控制器确定需要迁移至该目的控制器的待迁移ue,包括:该源控制器接收迁移调度器发送的该第二控制域内的候选控制器列表;源控制器接收第一ue发送的用户请求,其中,该源控制器为第一控制域内接收到该用户请求的控制器;进而,该源控制器确定是否将该第一ue作为该待迁移ue;若确定将该第一ue作为该待迁移ue,则该源控制器从该候选控制器列表中确定一个候选控制器作为该目的控制器。

    也就是说,当源控制器所在的第一控制域负载较高时,源控制器可以在ue向源控制器发起用户请求时,主动对该ue进行负载迁移,实现单个ue的负载转移过程。

    在一种可能的设计中,该源控制器确定是否将该第一ue作为该待迁移ue,包括:该源控制器获取该第一ue的位置信息、该用户请求的优先级以及第一ue请求的业务的类型中的至少一个;该源控制器根据获取到的该第一ue的位置信息、该用户请求的优先级以及该业务的类型中的至少一个,确定是否将该第一ue作为该待迁移ue。

    在一种可能的设计中,该源控制器确定需要迁移至该目的控制器的待迁移ue,包括:该源控制器将需要迁移的候选ue的数目发送至该迁移调度器,以使得该迁移调度器从该第二控制域中确定能够接收该候选ue的n个目的控制器,以及每个目的控制器能够接收的候选ue的数目,n为自然数;该源控制器接收该迁移调度器发送的该n个目的控制器的标识,以及每个目的控制器能够接收的候选ue的数目;该源控制器从该候选ue中为该每个目的控制器确定该目的控制器对应的待迁移ue。

    这样,在第一控制域的负载较大时,可以由第一控制域中的源控制器主动将候选ue批量迁移至负载较小的第二控制域内,进而,源控制器可以一次性将多个ue迁移至其他控制域,从而快速减轻源控制器的负载压力。

    在一种可能的设计中,该源控制器在该数据库服务器中更新该待迁移ue的资源信息,包括:该源控制器根据该待迁移ue的标识,在该数据库服务器中查找该待迁移ue的签约数据和上下文数据;该源控制器为该待迁移ue分配新的用户标识;该源控制器在该签约数据和上下文数据中,将该待迁移ue的标识更新为该新的用户标识,并将已存储的该源控制器的标识更新为该目的控制器的标识。

    在一种可能的设计中,在该源控制器向外部网元发送跨域更新指令之后,还包括:该源控制器为该待迁移ue分配在该第二控制域内使用的目的会话索引,该目的会话索引用于指示待迁移ue与目的控制器进行会话时的会话标识;该源控制器向外部网元发送会话索引更新指令,该会话索引更新指令包括上述目的会话索引,以使得该外部网元将该待迁移ue的会话索引更新为该目的会话索引,这样,后续待迁移ue可通过该目的会话索引与第二控制域内的目的控制器进行交互。

    在一种可能的设计中,在该源控制器向外部网元发送跨域更新指令之后,还包括:该源控制器向目的nes发送nes更新指令,该nes更新指令包括待迁移ue的标识和目的控制器的标识,以便于该目的nes建立该待迁移ue与该目的控制器之间的对应关系。

    这样,当后续外部网元接收到该待迁移ue的用户请求时,可先将该用户请求转发至该目的nes,进而由该该目的nes根据待迁移ue与目的控制器之间的对应关系,将该用户请求转发至该目的控制器,最终由目的控制器代理上述源控制器处理该用户请求,从而实现了实现跨控制域之间的负载迁移过程。

    第二方面,本发明的实施例提供一种负载迁移方法,包括:目的控制器获取源控制器发送的迁移请求,该迁移请求中携带有待迁移ue的标识,该源控制器为第一控制域内的控制器,该目的控制器为第二控制域内的控制器;该目的控制器根据该待迁移ue的标识,在该数据库服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括该待迁移ue与该目的控制器之间的对应关系;该目的控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以使得该外部网元建立该待迁移ue与该目的控制器之间的对应关系。

    在一种可能的设计中,该负载迁移系统还包括与该源控制器和该目的控制器均相连的迁移调度器;其中,该目的控制器获取该源控制器发送的迁移请求,包括:该目的控制器接收由该迁移调度器转发的迁移请求,该迁移请求中携带有该第一控制域内的需要迁移的候选ue列表,该候选ue列表中包括每个候选ue的标识;该目的控制器从该候选ue列表中确定待迁移ue。

    第三方面,本发明实施例提供了一种源控制器,包括:确定单元,用于确定需要迁移至目的控制器的待迁移用户设备ue,该目的控制器为第二控制域内的控制器;更新单元,用于在数据库服务器中更新该待迁移ue的资源信息,更新后的该资源信息中包括该待迁移ue与该目的控制器之间的对应关系,其中,该数据库服务器与该源控制器和该目的控制器均相连;发送单元,用于向外部网元发送跨域更新指令,该跨域更新指令包括该待迁移ue的标识和该目的控制器的标识。

    在一种可能的设计中,该源控制器还包括获取单元,其中,该获取单元,用于接收迁移调度器发送的该第二控制域的候选控制器列表;以及,接收第一ue发送的用户请求,其中,该源控制器为该第一控制域内接收到该用户请求的控制器;该确定单元,具体用于若接收到第一ue的用户请求,则确定是否将该第一ue作为该待迁移ue;若确定将该第一ue作为该待迁移ue,则从该候选控制器列表中确定一个候选控制器作为该目的控制器。

    在一种可能的设计中,该获取单元,还用于获取该第一ue的位置信息、该用户请求的优先级以及该第一ue请求的业务的类型中的至少一个;该确定单元,具体用于根据获取到的该第一ue的位置信息、该用户请求的优先级以及该业务类型中的至少一个,确定是否将该第一ue作为该待迁移ue。

    在一种可能的设计中,该发送单元,还用于将需要迁移的候选ue的数目发送至迁移调度器,以使得该迁移调度器从该第二控制域中确定允许接收该候选ue的n个目的控制器,以及每个目的控制器允许接收的候选ue的数目,其中,n为自然数;该获取单元,用于接收该迁移调度器发送的该n个目的控制器的标识,以及每个目的控制器允许接收的候选ue的数目;该确定单元,具体用于从该候选ue中为该每个目的控制器确定该目的控制器允许接收的待迁移ue。

    在一种可能的设计中,该更新单元,具体用于根据该待迁移ue的标识,在该数据库服务器中查找该待迁移ue的签约数据和上下文数据;为该待迁移ue重新分配用户标识;在该签约数据和上下文数据中,将该待迁移ue的标识更新为重新分配后的用户标识,并将已存储的该源控制器的标识更新为该目的控制器的标识。

    在一种可能的设计中,该源控制器还包括:分配单元,用于为该待迁移ue分配在该第二控制域内使用的目的会话索引,该目的会话索引用于指示该待迁移ue与该目的控制器进行会话时的会话标识;该发送单元,还用于向该外部网元发送会话索引更新指令,该会话索引更新指令包括该目的会话索引。

    在一种可能的设计中,该发送单元,还用于向目的nes发送nes更新指令,该nes更新指令包括该待迁移ue的标识和该目的控制器的标识。

    第四方面,本发明实施例提供了一种目的控制器,包括:获取单元,用于获取源控制器发送的迁移请求,该迁移请求中携带有待迁移用户设备ue的标识,该源控制器为第一控制域内的控制器,该目的控制器为第二控制域内的控制器;更新单元,用于根据该待迁移ue的标识,在数据库服务器中更新该待迁移ue的资源信息,更新后的该资源信息中包括该待迁移ue与该目的控制器之间的对应关系,其中,该数据库服务器与该源控制器和该目的控制器均相连;发送单元,用于向外部网元发送跨域更新指令,该跨域更新指令包括该待迁移ue的标识与该目的控制器的标识。

    在一种可能的设计中,该目的控制器还包括确定单元,其中,该获取单元,具体用于接收由迁移调度器转发的迁移请求,该迁移请求中携带有该第一控制域内需要迁移的候选ue列表,该候选ue列表中包括每个需要迁移的候选ue的标识;该确定单元,用于从该候选ue列表中确定待迁移ue。

    第五方面,本发明实施例提供了一种源控制器,包括:处理器、存储器、总线和收发器;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该源控制器运行时,该处理器执行该存储器存储的该计算机执行指令,以使该源控制器执行第一方面中任意一项所述的负载迁移方法。

    第六方面,本发明实施例提供了一种目的控制器,包括:处理器、存储器、总线和收发器;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该目的控制器运行时,该处理器执行该存储器存储的该计算机执行指令,以使该目的控制器执行第二方面中任意一项所述的负载迁移方法。

    第七方面,本发明实施例提供了一种负载迁移系统,该系统包括如第三方面中任一项所述的源控制器,如第四方面中任一项所述的目的控制器,以及与该源控制器和该目的控制器均相连的数据库服务器,该源控制器位于第一控制域内,该目的控制器位于与该第一控制域不同的第二控制域内。

    在一种可能的设计中,该系统还包括:与该源控制器和该目的控制器均相连的迁移调度器。

    在一种可能的设计中,该系统还包括:位于第一控制域内与该源控制器相连的源nes,以及位于第二控制域内与该目的控制器相连的目的nes。

    第八方面,本发明实施例提供了一种计算机存储介质,用于储存为上述源控制器所用的计算机软件指令,其包含用于执行上述方面为源控制器所设计的程序。

    第九方面,本发明实施例提供了一种计算机存储介质,用于储存为上述目的控制器所用的计算机软件指令,其包含用于执行上述方面为目的控制器所设计的程序。

    本发明中,上述源控制器和目的控制器的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本发明类似,属于本发明权利要求及其等同技术的范围之内。

    另外,第二方面至第九方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。

    本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

    附图说明

    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

    图1为现有技术中一个控制域内的sae核心网的架构示意图;

    图2为本发明实施例提供的一种负载迁移系统的架构示意图一;

    图3为本发明实施例提供的一种负载迁移系统的架构示意图二;

    图4为本发明实施例提供的一种计算机设备的结构示意图;

    图5为本发明实施例提供的一种负载迁移方法的交互示意图一;

    图6为本发明实施例提供的一种负载迁移方法的交互示意图二;

    图7为本发明实施例提供的一种负载迁移方法的交互示意图三;

    图8为本发明实施例提供的一种负载迁移方法的交互示意图四;

    图9为本发明实施例提供的一种源控制器的结构示意图;

    图10为本发明实施例提供的一种目的控制器的结构示意图。

    具体实施方式

    下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

    另外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

    本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

    本发明的实施例提供一种负载迁移方法,可应用于多个控制域组成的负载迁移系统,当多个控制域中的某个控制域的负载过重时,可将一个或多个ue(本发明实施例中称为待迁移ue)迁移至其它控制域,进而由其它控制域内的控制器处理上述待迁移ue的用户请求,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    如图2所示,为上述负载迁移系统100的架构示意图,其中,该负载迁移系统100至少包括第一控制域和第二控制域,第一控制域和第二控制域内均设置有多个控制器,例如第一控制域内的控制器21a和第二控制域内的控制器21b,所有控制器均与数据库服务器(dbsever,databasesever)22相连,可选的,每个控制域内均设置有一个nes,即第一控制域内的nes23a和第二控制域内的nes23b。

    其中,nes用于将外部网元24发送的用户请求转发至本控制域内相应的控制器,而控制器可与数据库服务器22交互,从而实现上述用户请求中请求的移动性管理、会话管理、计费与策略管理等功能。并且,上述数据库服务器22中存储的ue的签约数据、上下文数据等资源信息可以实现跨控制域之间共享,上述外部网元24具体可以为enodeb、af、或gw-u等设备,本发明实施例对此不做限定。

    需要说明的是,在本发明实施例提供的负载迁移方法中,将需要进行负载迁移的控制器,例如,第一控制域内的某个控制器,称为源控制器,而将接受负载迁移的控制器,例如,第二控制域内的某个控制器,称为目的控制器,其中,源控制器与目的控制器位于不同的控制域内。

    类似的,可以将与源控制器相连的网元选择器称为源nes,将与目的控制器相连的网元选择器称为目的nes。

    那么,基于上述负载迁移系统100,本发明实施例提供两种负载迁移方法,一种是由源控制器主动将源控制器所在控制域(例如本发明实施例中的第一控制域)中的待迁移ue迁移至第二控制域中的目的控制器的负载迁移方法,另一种是由目的控制器主动将源控制器所在控制域中的待迁移ue迁移至自身的负载迁移方法,二者均可以实现跨控制域之间的负载迁移,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    其中,在本发明实施例中,所谓的将源控制器待迁移ue迁移至目的控制器,是指将对待迁移ue的控制功能迁移给目的控制器,后续实施例中对此不再赘述。

    进一步地,在图2所示的负载迁移系统100的基础上,如图3所示,本发明实施例提供的负载迁移系统100还引入了新的网元,即迁移调度器(migrationscheduler)25,该迁移调度器25与每一个控制域内的每一个控制器均相连。

    具体的,迁移调度器25可用于监控所有控制域内每一个控制器的负载情况,进而计算出各个控制域的负载值,从而根据不同控制域的负载值实现跨控制域之间的负载调度。例如,当第一控制域的负载值较大而第二控制域的负载值较小时,迁移调度器25可以向第一控制域内的源控制器发送迁移许可消息,以触发第一控制域内的源控制器开启负载迁移功能,并且,迁移调度器25还可以为源控制器选择合适的目的控制器,例如选择第二控制域内负载较低的控制器为目的控制器,进而由目的控制器或源控制器将待迁移ue迁移至目的控制器。

    需要说明的是,迁移调度器25可以以功能模块的形式集成在上述任意设备内,也可以以独立实体设备的形式实现上述功能,本发明是实施例对此不作任何限制。

    后续实施例中将结合上述负载迁移系统100对上述负载迁移方法进行详细阐述,故此处不再赘述。

    如图4所示,图2以及图3中涉及的控制器、nes或迁移调度器25均可以以图4中的计算机设备(或系统)的方式来实现。

    图4所示为本发明实施例提供的计算机设备示意图。计算机设备100包括至少一个处理器11,通信总线12,存储器13以及至少一个收发器14。

    处理器11可以是一个通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。

    通信总线12可包括一通路,在上述组件之间传送信息。所述收发器14,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wirelesslocalareanetworks,wlan)等。

    存储器13可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信总线与处理器相连接。存储器也可以和处理器集成在一起。

    其中,所述存储器13用于存储执行本发明方案的应用程序代码,并由处理器11来控制执行。所述处理器11用于执行所述存储器13中存储的应用程序代码。

    在具体实现中,作为一种实施例,处理器11可以包括一个或多个cpu,例如图4中的cpu0和cpu1。

    在具体实现中,作为一种实施例,计算机设备100可以包括多个处理器,例如图4中的两个处理器11。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

    在具体实现中,作为一种实施例,计算机设备100还可以包括输出设备15和输入设备16。输出设备15和处理器11通信,可以以多种方式来显示信息。例如,输出设备15可以是液晶显示器(liquidcrystaldisplay,lcd),发光二级管(lightemittingdiode,led)显示设备,阴极射线管(cathoderaytube,crt)显示设备,或投影仪(projector)等。输入设备16和处理器11通信,可以以多种方式接受用户的输入。例如,输入设备16可以是鼠标、键盘、触摸屏设备或传感设备等。

    上述的计算机设备100可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,计算机设备100可以是台式机、便携式电脑、网络服务器、掌上电脑(personaldigitalassistant,pda)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图4中类似结构的设备。本发明实施例不限定计算机设备100的类型。

    需要说明的是,在本发明实例中,上述系统中的任意一种功能节点,例如控制器、nes或迁移调度器25,可能由一个实体设备实现,也可能由多个实体设备共同实现,上述系统中的多个功能节点可能分别由不同的实体设备实现,也可能都由同一个实体设备实现。可以理解的是,上述系统中的任意一种功能节点都可能是实体设备内的一个逻辑功能模块,也可能是由多个实体设备组成的一个逻辑功能模块。

    进一步地,为了更清楚地介绍本发明提供的负载迁移方法,下文中均以逻辑功能模块作为执行主体进行说明,本领域技术人员可以理解,逻辑功能模块在具体实现时需依赖于其所在的实体设备上的硬件资源。

    另外,在本发明实施例中,上述负载迁移系统100可以应用于5g网络,长期演进(英文:longtermevolution,缩写:lte)网络中,也可以应用于lte的演进通信网络中,如lte-a(英文全称:longtermevolutionadvanced)系统中,还可以应用于wcdma等第三代移动通信(英文:3rd-generation,缩写:3g)网络中等,本发明不作限制。

    以下将结合上述负载迁移系统100以及不同应用场景,以实施例的方式详述本发明实施例提供的负载迁移方法。

    实施例1

    本发明的实施例提供一种负载迁移方法,可以在ue通过外部网元向源控制器发起用户请求时,由源控制器主动对该ue进行负载迁移,其中,源控制器位于第一控制域内,目的控制器位于第二控制域内,且第一控制域和第二控制域为不同的控制域,如图5所示,该负载迁移方法包括:

    101、迁移调度器获取第一控制域的第一负载值和第二控制域的第二负载值。

    102、若第一负载值大于第一负载阈值,且第二负载值小于第二负载阈值(第一负载阈值大于或等于第二负载阈值),则迁移调度器从第二控制域内确定可接收待迁移ue的候选控制器列表。

    103、迁移调度器向源控制器发送迁移许可消息,该迁移许可消息携带有上述候选控制器列表。

    104、外部网元将第一ue发送的用户请求转发至第一控制域内的某一控制器,其中,第一控制域内接收到该用户请求的控制器即为源控制器。

    105、源控制器确定是否将第一ue作为待迁移ue。

    106、若确定将第一ue作为待迁移ue,则源控制器从上述候选控制器列表中确定一个候选控制器为目的控制器。

    107、源控制器在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包含待迁移ue与目的控制器之间的对应关系。

    108、源控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识。

    至此,本发明实施例提供一种负载迁移方法,可以在ue通过外部网元向源控制器发起用户请求时,由源控制器主动对该ue进行负载迁移,首先,当第一控制域的负载值较高,且第二控制域的负载值较低时,源控制器将新接收到的用户请求所指示的ue作为上述待迁移ue;为了将待迁移ue迁移至第二控制域的目的控制器,源控制器可以在db服务器中更新待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系;并且,源控制器还需要向外部网元发送跨域更新指令,以使得外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,实现跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    例如,在步骤101中,由于迁移调度器与各个控制域中的所有控制器均可建立数据连接,因此,迁移调度器可以获取到每个控制域中所有控制器的负载值,例如,第一控制域内的10个控制器可以周期性的向迁移调度器上报自身当前的负载值,又或者,迁移调度器也可以主动从第一控制域内的10个控制器中分别查询每个控制器当前的负载值,这样,迁移调度器便可以根据第一控制域内每个控制器的负载值,确定该第一控制域的第一负载值。

    例如,迁移调度器可以对第一控制域内所有控制器的负载值进行加权平均,计算得到第一控制域的第一负载值。

    类似的,迁移调度器还可以根据第二控制域内每个控制器的负载值,确定该第二控制域的第二负载值。

    在步骤102中,迁移调度器可以对获取到的各个控制域的负载值进行比较,从而确定哪个或哪些控制域的负载过重(即确定需要进行负载迁移的源控制域),以及是否存在负载较轻的控制域(即目的控制域)可以代理源控制域处理本来需要源控制域处理的一个或多个ue(即待迁移ue)的用户请求。

    具体的,若上述第一负载值大于第一负载阈值,且第二负载值小于第二负载阈值,即说明第一控制域的负载较大,需要进行负载迁移,且存在可以接收该负载迁移的第二控制域,那么,迁移调度器从第二控制域内确定可接收待迁移ue的候选控制器列表。

    例如,迁移调度器可以将第二控制域内负载值最小的x个控制器作为候选控制器,进而得到这x个候选控制器组成的候选控制器列表。

    示例性的,该候选控制器列表中包含有第二控制域的标识以及每一个候选控制器的标识。

    进而,在步骤103中,迁移调度器可以向第一控制域中的所有控制器发送迁移许可消息,即向第一控制域中的所有控制器通知后续可以进行负载迁移功能。

    其中,该迁移许可消息携带有上述候选控制器列表,以便于接收到该迁移许可消息的控制器确定进行负载迁移时的目的控制器。

    后续,当原本属于第一控制域的ue,例如第一ue,向外部网元发送用户请求时,由于外部网元内此时仍保存有第一ue与第一控制域之间的对应关系,因此,在步骤104中,外部网元仍会像现有的交互流程那样将第一ue发送的用户请求转发至第一控制域内的某个控制器,即源控制器。

    这里,由于每一个控制域内设置有网元选择器,而网元选择器可用于将外部网元发送的各个用户请求转发至本控制域内相应的控制器,因此,外部网元可以先将上述第一ue发送的用户请求发送至第一控制域内的网元选择器,进而,由该网元选择器根据预先存储的第一ue与第一控制域内某个控制器之间的对应关系,将该用户请求转发至该对应关系所指示的控制器,即源控制器。

    进而,在步骤105中,接收到该用户请求的源控制器确定是否将第一ue作为待迁移ue。

    例如,当源控制器当前的负载值大于负载门限时,即可确定将上述第一ue作为待迁移ue。

    又或者,为了能够更加合理的进行负载迁移,源控制器可以先获取该第一ue的位置信息、用户请求的优先级以及用户请求的业务类型中的至少一个,其中,第一ue的位置信息、用户请求的优先级或用户请求的业务类型可以携带在上述用户请求中;进而,源控制器根据获取到的上述第一ue的位置信息、用户请求的优先级以及用户请求的业务类型中的至少一个,确定是否将第一ue作为待迁移ue。

    例如,对于优先级较高的用户请求,进行负载迁移时可能会增加该用户请求的安全风险以及通信时延,因此,当上述第一ue的用户请求的优先级较高时,不会触发后续负载迁移流程,而当第一ue的用户请求的优先级较低时,可以将该第一ue作为待迁移ue,并执行下述步骤106-108。

    在步骤106中,若确定将第一ue作为待迁移ue,则源控制器可以从步骤103得到的候选控制器列表中,确定第二控制域内的一个候选控制器为目的控制器。

    例如,源控制器可以将候选控制器列表中负载最小的候选控制器作为目的控制器,此时,为了避免第一控制域内的其他控制器选择相同的候选控制器作为目的控制器,源控制器可以向第一控制域内的其他控制器发送占用消息,该占用消息中包括源控制器选择的候选控制器的标识,避免该候选控制器接收太多待迁移ue后负载骤增。

    进而,在步骤107中,由于db服务器中已存储有该待迁移ue的签约数据和上下文数据等资源信息,但这些签约数据和上下文数据中与该待迁移ue相关的数据均反映了待迁移ue与源控制器之间的对应关系,那么,为了将待迁移ue迁移至第二控制域的目的控制器以实现负载迁移,源控制器可以在db服务器中更新待迁移ue的资源信息。

    例如,待迁移ue的签约数据和上下文数据中存储有待迁移ue的临时用户标识,该临时用户标识内包含了源控制器的标识,例如源控制器的mmei(mobilitymanagemententityidentifier,移动管理实体标识),那么,在步骤107中,源控制器可以重新为待迁移ue分配新的临时用户标识,由于源控制器已经确定了接受该待迁移ue的目的控制器,因此,重新分配的新的临时用户标识中可携带有上述目的控制器的标识,进而,源控制器在db服务器中,将该待迁移ue的签约数据和上下文数据中已存储的临时用户标识替换为新的临时用户标识,从而在该待迁移ue的签约数据和上下文数据中建立待迁移ue与目的控制器之间的对应关系。

    并且,由于外部网元内原本存储有待迁移ue与源控制器之间的对应关系,当外部网元接收到该待迁移ue的用户请求后,会根据上述对应关系将该用户请求转发至源控制器,因此,在步骤108中,为了将待迁移ue迁移至第二控制域的目的控制器以实现负载迁移,源控制器还需要向外部网元发送跨域更新指令,该跨域更新指令中包括待迁移ue的标识和目的控制器的标识,以使得外部网元根据该跨域更新指令建立待迁移ue与目的控制器之间的对应关系。

    具体的,源控制器可以将s1-apueid(即s1接口的ue标识)与目的控制器的标识发送给外部网元,进而,由外部网元将将s1-apueid与目的控制器的标识以列表的形式存储在自身的存储单元内,以建立待迁移ue与目的控制器之间的对应关系,当然,还可以将第二控制域内的网元选择器(即目的网元选择器)的标识存储在上述列表中。

    这样,当后续外部网元接收到该待迁移ue的用户请求后,由于待迁移ue与源控制器之间的对应关系,已经修改为待迁移ue与目的控制器之间的对应关系,因此,外部网元根据上述修改后的对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,从而实现了实现跨控制域之间的负载迁移过程。

    可选的,仍如图5所示,由于ue与其所属的控制器进行会话时需要使用会话索引来识别ue的身份,例如,该会话索引可以为guti(globallyuniquetemporaryidentity,全球唯一临时标识)或ip地址等,因此,当不同控制域内使用的会话索引不相同时,还需执行步骤109,即源控制器为待迁移ue分配在第二控制域内使用的目的会话索引,即为待迁移ue分配新的会话索引,该目的会话索引用于指示待迁移ue与目的控制器进行会话时的会话标识。

    进而,在步骤110中,源控制器向外部网元发送会发索引更新指令,该会发索引更新指令中携带有上述新分配的目的会话索引,以使得外部网元将已保存的待迁移ue的会话索引,更新为上述目的会话索引,这样,后续待迁移ue可通过该目的会话索引与第二控制域内的目的控制器进行交互。

    这里需要说明的是,步骤110中源控制器指示外部网元更新上述目的会话索引的过程可以是显示的,也可以是隐式的,例如,源控制器可以直接向外部网元发送携带有上述目的会话索引的会话索引更新指令,即显示的指示外部网元更新待迁移ue的会话索引;或者,源控制器还可以在与外部网元的正常交互过程中,将上述目的会话索引携带在某些应答消息中,例如tau(trackingareaupdate,路由区更新)accept消息等,从而隐式的触发外部网元更新上述目的会话索引的过程。

    另外,若第二控制域内设置有网元选择器(即目的nes),可选的,由于在负载迁移之前,待迁移ue不属于第二控制域,因此,目的nes内并没有记载待迁移ue与目的控制器之间的对应关系,此时,仍如图5所示,源控制器还可以执行步骤111,即源控制器向目的nes发送nes更新指令,该nes更新指令中同样携带有待迁移ue的标识与目的控制器的标识,以使得该目的nes建立待迁移ue与目的控制器之间的对应关系。

    这样,当后续外部网元接收到该待迁移ue的用户请求时,可先将该用户请求转发至该目的nes,进而由该目的nes根据待迁移ue与目的控制器之间的对应关系,将该用户请求转发至该目的控制器,最终由目的控制器代理上述源控制器处理该用户请求,从而实现了实现跨控制域之间的负载迁移过程。

    又或者,当外部网元转发给目的nes的用户请求中已经携带有该待迁移ue与目的控制器之间的对应关系时,例如,上述源控制器为待迁移ue重新分配新的临时用户标识中携带有目的控制器的标识,此时,则无需执行步骤111,目的nes可以直接根据该用户请求中携带的该待迁移ue与目的控制器之间的对应关系,将该用户请求转发至对应的目的控制器即可。

    进一步地,通过执行上述步骤107-111,源控制器已经将上述第一ue迁移至第二控制域内的目的控制器,此时,可以由该目的控制器完成步骤104中外部网元接收到的第一ue的用户请求。

    当然,后续若迁移调度器确定出第一控制域的负载降低至预先设置的负载迁移门限以下,此时,迁移调度器还可以向第一控制域内的所有控制器发送迁移停止消息,那么,后续第一控制域内的任意控制器在接收到用户请求后,不会触发上述步骤105-111所示的负载迁移过程。

    其中,步骤101-111中涉及源控制器执行的步骤,可以由源控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现;类似的,步骤101-111中涉及目的控制器执行的步骤,可以由目的控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现。

    实施例2

    本发明的实施例提供一种负载迁移方法,可以在ue通过外部网元向源控制器发起用户请求时,由目的控制器对该ue进行负载迁移,其中,源控制器位于第一控制域内,目的控制器位于与第一控制域不同的第二控制域内,如图6所示,该负载迁移方法包括:

    201、迁移调度器获取第一控制域的第一负载值和第二控制域的第二负载值。

    202、若第一负载值大于第一负载阈值,且第二负载值小于第二负载阈值(第一负载阈值大于或等于第二负载阈值),则迁移调度器向第一控制域内的控制器发送迁移许可消息,该迁移许可消息用于指示源第一控制域内的控制器可以从第一控制域内迁移待迁移ue。

    203、外部网元将第一ue发送的用户请求转发至第一控制域内的某一控制器,其中,第一控制域内接收到该用户请求的控制器即为源控制器。

    204、源控制器确定是否将第一ue作为待迁移ue。

    205、若确定将第一ue作为待迁移ue,则源控制器向迁移调度器发送迁移请求,该迁移请求中携带有上述待迁移ue的标识。

    206、迁移调度器根据第二控制域内各个控制器的负载值,确定在第二控制域内接收该迁移请求的目的控制器。

    207、迁移调度器将该迁移请求转发至上述目的控制器。

    208、目的控制器根据上述待迁移ue的标识,在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系。

    209、目的控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识。

    至此,本发明实施例提供一种负载迁移方法,可以在ue通过外部网元向源控制器发起用户请求时,由接受负载迁移的一方,即目的控制器,主动对该ue进行负载迁移,具体的,当第一控制域的负载值较高,且第二控制域的负载值较低时,源控制器将待迁移ue的标识携带在迁移请求中发送至目的控制器;进而,目的控制器可以在db服务器中更新待迁移ue的资源信息,更新后的该资源信息中包括待迁移ue与目的控制器之间的对应关系;并且,目的控制器还需要向外部网元发送跨域更新指令,以使得外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,实现跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    例如,在步骤201中,迁移调度器可以通过监控到的每个控制域中所有控制器的负载值,确定第一控制域的第一负载值和第二控制域的第二负载值,其中,确定第一控制域的第一负载值和第二控制域的第二负载值的具体方法可参见步骤101,故此处再赘述。

    在步骤202中,若第一负载值大于第一负载阈值,且第二负载值小于第二负载阈值,即说明第一控制域的负载较大,需要进行负载迁移,且存在可以接收该负载迁移的第二控制域,此时,迁移调度器可以向第一控制域中的所有控制器发送迁移许可消息,即向第一控制域中的所有控制器通知后续可以进行负载迁移功能。

    后续,当原本属于第一控制域的ue,例如第一ue向外部网元发送用户请求时,由于外部网元内此时仍保存有第一ue与第一控制域之间的对应关系,因此,在步骤203中,外部网元仍会像现有的交互流程那样将第一ue发送的用户请求转发至第一控制域内的某个控制器,即源控制器。

    具体的,第一控制域内可以设置网元选择器,即源nes,外部网元可以先将上述第一ue发送的用户请求发送至源nes,进而,由源nes将该用户请求转发至对应的控制器,即源控制器。

    进而,在步骤204中,接收到该用户请求的源控制器确定是否将第一ue作为待迁移ue,该方法具体可参见上述步骤105中的相关描述,此处不再赘述。

    进一步地,在步骤205中,若确定将上述第一ue作为待迁移ue,则源控制器向迁移调度器发送迁移请求,该迁移请求中携带有上述待迁移ue的标识,例如,待迁移ue的imsi(internationalmobilesubscriberidentificationnumber,国际移动用户识别码)。

    进而,迁移调度器在接收到上述迁移请求后,由于迁移调度器在步骤201中已经获取到了负载较低的第二控制域内各个控制器的负载值,因此,在步骤206中,迁移调度器可以根据第二控制域内各个控制器的负载值,为上述源控制器选择合适的目的控制器。

    例如,第二控制域与第一控制域相邻,且第二控制域内控制器a的负载值最低,则迁移调度器可以将控制器a确定为目的控制器,后续由第二控制域内的控制器a代理源控制器处理上述待迁移ue的用户请求。

    那么,在步骤207中,迁移调度器将源控制器发来的迁移请求,转发至步骤206中确定的目的控制器。

    目的控制器接收到该迁移请求后,在步骤208中,根据迁移请求中携带的待迁移ue的标识,在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括该待迁移ue与目的控制器之间的对应关系。

    其中,目的控制器在db服务器中更新待迁移ue的资源信息的方法,与步骤107中源控制器在db服务器中更新待迁移ue的资源信息的方法类似,故此处不再赘述。

    并且,与上述步骤108类似的,在步骤209中,为了将待迁移ue迁移至第二控制域的目的控制器以实现负载迁移,目的控制器还需要向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以使得接收到该跨域更新指令的外部网元建立待迁移ue与目的控制器之间的对应关系。

    这样,当后续外部网元接收到该待迁移ue的用户请求后,由于待迁移ue与源控制器之间的对应关系,已经修改为待迁移ue与目的控制器之间的对应关系,因此,外部网元根据上述修改后的对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,从而实现了实现跨控制域之间的负载迁移过程。

    可选的,与上述步骤109-111类似的,仍如图6所示,在执行步骤209之后,目的控制器还可以执行步骤210-212,即:

    210、目的控制器为待迁移ue分配在第二控制域内使用的目的会话索引,即为待迁移ue分配新的会话索引。

    211、目的控制器向外部网元发送会发索引更新指令,该会发索引更新指令中携带有上述新分配的目的会话索引,以使得该外部网元将已保存的待迁移ue的会话索引更新为上述目的会话索引。

    212、目的控制器向目的nes发送nes更新指令,该nes更新指令中同样携带有待迁移ue的标识与目的控制器的标识,以使得该目的nes建立待迁移ue与目的控制器之间的对应关系。

    这样,通过执行步骤207-212,目的控制器已经将原本属于第一控制域的待迁移ue迁移至第二控制域,后续,待迁移ue发起的用户请求将会由第二控制域的目的控制器处理,与实施例1不同的是,步骤207-212中的负载迁移过程是由目的控制器执行的,而非像实施例1中一样由源控制器执行,这是因为,通常需要进行负载迁移的源控制器的负载值已经很高了,为了避免源控制器的负载值进一步增加而引起通信时延进一步增加,可由负载值较低的目的控制器执行上述负载迁移过程。

    其中,步骤201-212中涉及源控制器执行的步骤,可以由源控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现;类似的,步骤201-212中涉及目的控制器执行的步骤,可以由目的控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现。

    实施例3

    本发明的实施例提供一种负载迁移方法,可以在第一控制域的负载较大时,由第一控制域中的源控制器主动将待迁移ue(该待迁移ue包括至少一个ue)批量迁移至负载较小的第二控制域内,如图7所示,该负载迁移方法包括:

    301、迁移调度器获取各个控制域内所有控制器的负载值。

    302、若第一控制域的第一负载值大于第一负载阈值,则源控制器确定第一控制域内需要迁移的候选ue的数目。

    303、源控制器向迁移调度器发送迁移请求,该迁移请求中携带有上述候选ue的数目。

    304、迁移调度器根据第二控制域中各个控制器的负载值以及该迁移请求,从第二控制域中确定允许接收上述候选ue的n(n为自然数)个目的控制器,以及每个目的控制器允许接收的候选ue的数目。

    305、迁移调度器将上述n个目的控制器的标识以及每个目的控制器允许接收的候选ue的数目发送至源控制器。

    306、源控制器从上述候选ue中为每个目的控制器确定该目的控制器对应的待迁移ue。

    307、源控制器在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系。

    308、源控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识。

    至此,本发明实施例提供一种负载迁移方法,可以在第一控制域的负载较大时,由第一控制域中的源控制器主动将待迁移ue批量迁移至负载较小的第二控制域内,首先,当第一控制域的负载值较高时,源控制器向迁移调度器发送携带有候选ue列表的迁移请求;迁移调度器为源控制器确定可迁移的n个候选ue(即待迁移ue)以及目的控制器,进而,源控制器在db中更新待迁移ue的资源信息,更新后的该资源信息反映了待迁移ue与目的控制器之间的对应关系;并且,源控制器还需要向外部网元发送跨域更新指令,该跨域更新指令用于指示外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,实现跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    例如,在步骤301中,由于迁移调度器与各个控制域中的所有控制器均可建立数据连接,因此,迁移调度器可以获取到每个控制域中所有控制器的负载值,也就是说,迁移调度器可以实时监控各个控制域中的每个控制器的负载情况。

    而每个控制域内的控制器或网元选择器只能获取本域内的负载情况,因此,当第一控制域的第一负载值大于第一负载阈值时,即说明第一控制域的负载过大,此时,在步骤302中,第一控制域内的任意控制器,例如负载值最大的控制器,即源控制器,确定第一控制域内需要迁移的候选ue的数目。

    可以理解的是,本领域技术人员可以根据实际经验或一定算法确定需要迁移的候选ue,例如,可以将活跃度较高的一个或多个ue作为上述候选ue。

    进而,在步骤303中,源控制器将上述候选ue的数目添加在迁移请求中,并将该迁移请求发送至迁移调度器。

    可选的,源控制器还可以一并将上述候选ue的标识发送至添加在上述迁移请求中,并将该迁移请求发送至迁移调度器。

    此时,在步骤304中,迁移调度器接收到该迁移请求后,可以根据各个控制域内所有控制器的负载值,计算除第一控制域外其他控制域的负载值,当某个控制域,例如,第二控制域,的负载值较小时,可以进一步根据第二控制域中各个控制器的负载值,确定第二控制域能够接收负载迁移的n个目的控制器,以及每个目的控制器能够接收的候选ue的个数。

    例如,第二控制域中控制器a和控制器b的负载值较小,那么,可以根据控制器a的负载值确定控制器a能够接收几个候选ue,并根据控制器b的负载值确定控制器b能够接收几个候选ue。

    进而,在步骤305中,迁移调度器将确定出的n个目的控制器的标识,以及每个目的控制器能够接收的候选ue的个数发送至源控制器。

    可以看出,相比于实施例1和实施例2中迁移调度器主动向源控制器发送迁移许可消息,从而启动负载迁移过程而言,在本实施例中,迁移调度器还可以接收源控制器主动发送的迁移请求,触发迁移调度器为源控制器分配合适的目的控制器,从而启动负载迁移过程。

    在步骤306中,源控制器接收到n个目的控制器的标识,以及每个目的控制器能够接收的候选ue的个数之后,按照这每个目的控制器能够接收的候选ue的个数,从上述候选ue中为每个目的控制器确定该目的控制器对应的一个或多个待迁移ue,以便于后续将每一个待迁移ue迁移至第二控制域内的相应的目的控制器。

    可以看出,上述步骤301-306中确定待迁移ue的过程,无需像实施例1或实施例2中一样,依赖于ue向源控制器发起用户请求时,分别确定每一个发送用户请求的ue是否为待迁移ue,并分别对每一个待迁移ue进行负载迁移,在本实施例中,源控制器可以主动确定需要进行负载迁移的待迁移ue,这样,该待迁移ue可以为多个ue,那么,源控制器可以一次性将多个ue迁移至其他控制域,从而快速减轻源控制器的负载压力。

    进一步地,与上述步骤107类似的,在步骤307中,源控制器在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系。

    并且,与上述步骤108类似的,在步骤308中,源控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以使得该外部网元建立待迁移ue与目的控制器之间的对应关系。

    可选的,与上述步骤109-111类似的,仍如图7所示,在执行步骤308之后,源控制器还可以执行步骤309-311,即:

    309、源控制器为待迁移ue分配在第二控制域内使用的目的会话索引。

    310、源控制器向外部网元发送会发索引更新指令,该会发索引更新指令中携带有上述新分配的目的会话索引,以使得该外部网元将已保存的待迁移ue的会话索引更新为上述目的会话索引。

    311、源控制器向目的nes发送nes更新指令,该nes更新指令中同样携带有待迁移ue的标识与目的控制器的标识,以使得该目的nes建立待迁移ue与目的控制器之间的对应关系。

    其中,步骤301-311中涉及源控制器执行的步骤,可以由源控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现;类似的,步骤301-311中涉及目的控制器执行的步骤,可以由目的控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现。

    实施例4

    本发明的实施例提供一种负载迁移方法,可以在第一控制域的负载较大时,由负载较小的第二控制域中的目的控制器将待迁移ue(该待迁移ue包括至少一个ue)进行批量迁移,如图8所示,该负载迁移方法包括:

    401、迁移调度器获取各个控制域内所有控制器的负载值。

    402、若第一控制域的第一负载值大于第一负载阈值,则源控制器确定第一控制域内需要迁移的候选ue列表。

    403、源控制器向迁移调度器发送迁移请求,该迁移请求中包括上述候选ue列表。

    404、若第二控制域的第二负载值小于第二负载阈值,则迁移调度器将第二控制域中允许接收候选ue列表中候选ue的控制器作为目的控制器。

    405、迁移调度器将上述迁移请求转发至上述目的控制器,该迁移请求中携带有上述候选ue列表。

    406、目的控制器从接收到的候选ue列表中确定待迁移ue。

    407、目的控制器根据待迁移ue的标识,在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系。

    408、目的控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识。

    至此,本发明实施例提供一种负载迁移方法,可以在第一控制域的负载较大时,由负载较小的第二控制域中的目的控制器主动将待迁移ue批量迁移至第二控制域,首先,当第一控制域的负载值较高时,源控制器向迁移调度器发送携带有候选ue列表的迁移请求;迁移调度器将上述迁移请求转发至相应目的控制器后,目的控制器从候选ue列表中确定待迁移ue,进而,目的控制器在db服务器中更新待迁移ue的资源信息,更新后的该资源信息中包括待迁移ue与目的控制器之间的对应关系;并且,目的控制器还需要向外部网元发送跨域更新指令,以使得外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,实现跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    其中,与上述步骤301-303类似的,在步骤401-403中,迁移调度器获取各个控制域内所有控制器的负载值,若第一控制域的第一负载值大于第一负载阈值,则源控制器确定第一控制域内需要迁移的候选ue列表,进而,源控制器向迁移调度器发送迁移请求,该迁移请求中包括上述候选ue列表。

    此时,在步骤404中,迁移调度器接收到该迁移请求后,可以根据各个控制域内所有控制器的负载值,计算除第一控制域外其他控制域的负载值,当某个控制域(例如,第二控制域)的负载值较小时,可以进一步根据第二控制域中各个控制器的负载值,将第二控制域中能够接收候选ue列表中的候选ue的控制器,作为目的控制器,即确定能够接收该迁移请求的目的控制器。

    这里,迁移调度器确定的目的控制器可以有多个。

    进而,在步骤405中,迁移调度器将上述迁移请求转发至上述确定出的目的控制器,该迁移请求中携带有上述候选ue列表,其中,上述候选ue列表中可以包括每个候选ue的标识。

    这样,目的控制器接收到上述迁移请求后,可以从接收到的候选ue列表中确定待迁移ue。

    例如,目的控制器可以根据自身的负载值,从候选ue列表中选择一个或多个ue作为待迁移ue。

    进而,与步骤307和308类似的,在步骤407和408中,目的控制器根据待迁移ue的标识,在db服务器中更新该待迁移ue的资源信息,更新后的资源信息中包括待迁移ue与目的控制器之间的对应关系。并且,目的控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以使得接收到该跨域更新指令的外部网元建立待迁移ue与目的控制器之间的对应关系。

    可选的,与上述步骤109-111类似的,仍如图8所示,在执行步骤408之后,目的控制器还可以执行步骤409-411,即:

    409、目的控制器为待迁移ue分配在第二控制域内使用的目的会话索引。

    410、目的控制器向外部网元发送会发索引更新指令,该会发索引更新指令中携带有上述新分配的目的会话索引,以使得该外部网元将已保存的待迁移ue的会话索引更新为上述目的会话索引。

    411、目的控制器向目的nes发送nes更新指令,该nes更新指令中同样携带有待迁移ue的标识与目的控制器的标识,以使得该目的nes建立待迁移ue与目的控制器之间的对应关系。

    与实施例3不同的是,步骤407-411中的负载迁移过程是由目的控制器执行的,而非像实施例3中一样由源控制器执行,这是因为,通常需要进行负载迁移的源控制器的负载值已经很高了,为了避免源控制器的负载值进一步增加而引起通信时延进一步增加,可由负载值较低的目的控制器执行上述负载迁移过程。

    其中,步骤401-411中涉及源控制器执行的步骤,可以由源控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现;类似的,步骤401-411中涉及目的控制器执行的步骤,可以由目的控制器根据上述图4中的处理器11执行存储器13中存储的程序指令来实现。

    通过上述实施例1-实施例4可以看出,本发明实施例提供了两种负载迁移方法。

    负载迁移方法1:如实施例1或实施例3所示,由源控制器主动将待迁移ue迁移至目的控制器(其中,源控制器位于第一控制域内,目的控制器位于第二控制域内)。

    首先,源控制器通过与迁移调度器交互后可以确定接收负载迁移的目的控制器,进而,源控制器确定需要迁移至目的控制器的待迁移ue,例如,当第一控制域的负载值较高,且第二控制域的负载值较低时,源控制器可以将新接收到的用户请求所指示的ue作为上述待迁移ue。

    由于db服务器中存储有该待迁移ue的签约数据和上下文数据等资源信息,该签约数据和上下文数据反映了待迁移ue与源控制器之间的对应关系。因此,为了将待迁移ue迁移至第二控制域的目的控制器,源控制器可以在db服务器中更新待迁移ue的资源信息,从而在待迁移ue的签约数据和上下文数据中建立待迁移ue与目的控制器的对应关系。

    另外,由于外部网元内原本存储有待迁移ue与源控制器之间的对应关系,当外部网元接收到该待迁移ue的用户请求后,会根据上述对应关系将该用户请求转发至源控制器。因此,源控制器还需要向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以便于该外部网元建立待迁移ue与目的控制器之间的对应关系。

    这样,当后续外部网元接收到该待迁移ue的用户请求后,由于上述对应关系中的控制器已修改为目的控制器,外部网元根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,从而实现了跨控制域之间的负载迁移过程。

    负载迁移方法2:如实施例2或实施例4所示,当第一控制域的负载值较高,且第二控制域的负载值较低时,可以由第二控制域内的目的控制器将原本属于第一控制域的待迁移ue迁移至自身。

    首先,当第一控制域的负载值较高,且第二控制域的负载值较低时,目的控制器可以获取源控制器发送的迁移请求,该迁移请求中携带有待迁移ue的标识。

    进而,目的控制器根据待迁移ue的标识,在db服务器中更新待迁移ue的资源信息,更新后的该资源信息中包括待迁移ue与目的控制器之间的对应关系。

    另外,目的控制器还需要向外部网元发送跨域更新指令,该跨域更新指令包括待迁移ue的标识与目的控制器的标识,以便于该外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,外部网元根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,从而实现了实现跨控制域之间的负载迁移过程。

    进一步地,图9为本发明实施例提供的一种源控制器的结构示意图,本发明实施例提供的源控制器可以用于实施上述图2-图8所示的本发明各实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图2-图8所示的本发明各实施例。

    具体的,该源控制器包括:

    确定单元31,用于确定需要迁移至目的控制器的待迁移ue,所述目的控制器为第二控制域内的控制器;

    更新单元32,用于在数据库服务器中更新所述待迁移ue的资源信息,更新后的所述资源信息中包括所述待迁移ue与所述目的控制器之间的对应关系,其中,所述数据库服务器与所述源控制器和所述目的控制器均相连;

    发送单元33,用于向外部网元发送跨域更新指令,所述跨域更新指令包括所述待迁移ue的标识和所述目的控制器的标识。

    进一步地,仍如图9所示,所述源控制器还包括获取单元34,其中,

    所述获取单元34,用于接收迁移调度器发送的所述第二控制域的候选控制器列表;以及,接收第一ue发送的用户请求,其中,所述源控制器为所述第一控制域内接收到所述用户请求的控制器;

    此时,所述确定单元31,具体用于若接收到第一ue的用户请求,则确定是否将所述第一ue作为所述待迁移ue;若确定将所述第一ue作为所述待迁移ue,则从所述候选控制器列表中确定一个候选控制器为所述目的控制器。

    进一步地,仍如图9所示,所述获取单元34,还用于获取所述第一ue的位置信息、所述用户请求的优先级以及所述第一ue请求的业务的类型中的至少一个;

    所述确定单元31,具体用于根据获取到的所述第一ue的位置信息、所述用户请求的优先级以及所述业务类型中的至少一个,确定是否将所述第一ue作为所述待迁移ue。

    或者,仍如图9所示,所述发送单元33,还用于将需要迁移的候选ue的数目发送至迁移调度器,以使得所述迁移调度器从所述第二控制域中确定允许接收所述候选ue的n个目的控制器,以及每个目的控制器允许接收的候选ue的数目,其中,n为自然数;

    所述获取单元34,用于接收所述迁移调度器发送的所述n个目的控制器的标识,以及每个目的控制器允许接收的候选ue的数目;

    所述确定单元31,具体用于从所述候选ue中为所述每个目的控制器确定该目的控制器允许接收的待迁移ue。

    进一步地,所述更新单元32,具体用于根据所述待迁移ue的标识,在所述数据库服务器中查找所述待迁移ue的签约数据和上下文数据;为所述待迁移ue重新分配用户标识;在所述签约数据和上下文数据中,将所述待迁移ue的标识更新为重新分配后的用户标识,并将已存储的所述源控制器的标识更新为所述目的控制器的标识。

    进一步地,仍如图9所示,所述源控制器还包括:

    分配单元35,用于为所述待迁移ue分配在所述第二控制域内使用的目的会话索引,所述目的会话索引用于指示所述待迁移ue与所述目的控制器进行会话时的会话标识;

    此时,所述发送单元34,还用于向所述外部网元发送会话索引更新指令,所述会话索引更新指令包括所述目的会话索引

    进一步地,所述发送单元34,还用于向目的网元选择器nes发送nes更新指令,所述nes更新指令包括所述待迁移ue的标识和所述目的控制器的标识。

    在本发明提供的实施例中,源控制器内的获取单元34和发送单元33的具体功能,可以通过图4所示的计算机设备100中的处理器11调用收发器14来实现;源控制器内的确定单元31、更新单元32以及分配单元35的具体功能,可以由图4所示的计算机设备100中处理器11调用存储器13中存储的执行本发明方案的应用程序代码来实现。

    图10为本发明实施例提供的一种目的控制器的结构示意图,本发明实施例提供的目的控制器可以用于实施上述图2-图8所示的本发明各实施例实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照图2-图8所示的本发明各实施例。

    具体的,该目的控制器包括:

    获取单元41,用于获取源控制器发送的迁移请求,所述迁移请求中携带有待迁移ue的标识,所述源控制器为第一控制域内的控制器,所述目的控制器为第二控制域内的控制器;

    更新单元42,用于根据所述待迁移ue的标识,在数据库服务器中更新所述待迁移ue的资源信息,更新后的所述资源信息中包括所述待迁移ue与所述目的控制器之间的对应关系,其中,所述数据库服务器与所述源控制器和所述目的控制器均相连;

    发送单元43,用于向外部网元发送跨域更新指令,所述跨域更新指令包括所述待迁移ue的标识与所述目的控制器的标识。

    进一步地,仍如图10所示,所述目的控制器还包括确定单元44,其中,

    所述获取单元41,具体用于接收由迁移调度器转发的迁移请求,所述迁移请求中携带有所述第一控制域内需要迁移的候选ue列表,所述候选ue列表中包括每个需要迁移的候选ue的标识;

    所述确定单元44,用于从所述候选ue列表中确定待迁移ue。

    在本发明提供的实施例中,目的控制器内的获取单元41和发送单元43的具体功能,可以通过图4所示的计算机设备100中的处理器11调用收发器14来实现;目的控制器内的确定单元44和更新单元42的具体功能,可以由图4所示的计算机设备100中处理器11调用存储器13中存储的执行本发明方案的应用程序代码来实现。

    至此,本发明实施例提供一种负载迁移装置,可以在第一控制域的负载较大时,由负载较小的第二控制域中的目的控制器主动将待迁移ue批量迁移至第二控制域,首先,当第一控制域的负载值较高时,源控制器向迁移调度器发送携带有候选ue列表的迁移请求;迁移调度器将上述迁移请求转发至相应目的控制器后,目的控制器从候选ue列表中确定待迁移ue,进而,目的控制器在db中更新待迁移ue的资源信息,更新后的该资源信息反映了待迁移ue与目的控制器之间的对应关系;并且,目的控制器还需要向外部网元发送跨域更新指令,该跨域更新指令用于指示外部网元建立待迁移ue与目的控制器之间的对应关系,这样,当后续外部网元接收到该待迁移ue的用户请求后,根据上述对应关系便可以将该用户请求转发至上述目的控制器,以使得上述目的控制器代理上述源控制器处理该用户请求,实现跨控制域之间的负载迁移过程,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。

    所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

    在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

    所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

    另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

    所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

    以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。


    技术特征:

    1.一种将用户设备ue从源控制器迁移至目的控制器的方法,其特征在于,包括:

    所述目的控制器获取迁移请求,所述迁移请求中携带所述ue的标识;

    所述目的控制器根据所述ue的标识,在数据库服务器中更新所述ue的资源信息,更新后的所述资源信息中包括所述ue与所述目的控制器之间的对应关系,其中,所述数据库服务器与所述源控制器和所述目的控制器均相连;

    所述目的控制器向外部网元发送更新指令,所述更新指令包括所述ue的标识与所述目的控制器的标识。

    2.根据权利要求1所述的方法,其特征在于,在所述ue从所述源控制器迁移至所述目的控制器前,所述ue的上下文数据中存储有所述ue的第一临时用户标识,所述第一临时用户标识包括所述源控制器的标识;

    其中,所述目的控制器根据所述ue的标识,在数据库服务器中更新所述ue的资源信息,包括:

    所述目的控制器为所述ue分配新的第二临时用户标识,所述第二临时用户标识包括所述目标器的标识;

    所述目的控制器在所述数据库服务器中将所述第一临时用户标识替换为所述第二临时用户标识。

    3.根据权利要求1或2所述的方法,其特征在于,所述目的控制器获取迁移请求,包括:

    所述目的控制器从迁移调度器接收所述迁移请求。

    4.根据权利要求1至3中任一项所述的方法,其特征在于,所述源控制器为第一控制域内的控制器,所述目的控制器为第二控制域内的控制器。

    5.根据权利要求4所述的方法,其特征在于,所述迁移请求中携带所述第一控制域内需要迁移的候选ue列表,所述候选ue列表中包括每个需要迁移的候选ue的标识;

    所述方法还包括:

    所述目的控制器从所述候选ue列表中确定所述ue。

    6.一种用于将用户设备ue从源控制器迁移至目的控制器的通信装置,其特征在于,包括:

    获取单元,用于获取迁移请求,所述迁移请求中携带所述ue的标识;

    更新单元,用于根据所述ue的标识,在数据库服务器中更新所述ue的资源信息,更新后的所述资源信息中包括所述ue与所述目的控制器之间的对应关系,其中,所述数据库服务器与所述源控制器和所述目的控制器均相连;

    发送单元,用于向外部网元发送更新指令,所述更新指令包括所述ue的标识与所述目的控制器的标识。

    7.根据权利要求6所述的通信装置,其特征在于,在所述ue从所述源控制器迁移至所述目的控制器前,所述ue的上下文数据中存储有所述ue的第一临时用户标识,所述第一临时用户标识包括所述源控制器的标识;

    为了在数据库服务器中更新所述ue的资源信息,所述更新单元用于为所述ue分配新的第二临时用户标识,所述第二临时用户标识包括所述目标器的标识;在所述数据库服务器中将所述第一临时用户标识替换为所述第二临时用户标识。

    8.根据权利要求6或7所述的通信装置,其特征在于,所述获取单元用于从迁移调度器接收所述迁移请求。

    9.根据权利要求6至8中任一项所述的通信装置,其特征在于,所述源控制器为第一控制域内的控制器,所述目的控制器为第二控制域内的控制器。

    10.根据权利要求9所述的通信装置,其特征在于,所述迁移请求中携带所述第一控制域内需要迁移的候选ue列表,所述候选ue列表中包括每个需要迁移的候选ue的标识,所述目的控制器还包括确定单元,用于从所述候选ue列表中确定所述ue。

    11.一种目的控制器,其特征在于,包括:处理器、存储器、总线和收发器;

    所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述目的控制器运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述目的控制器执行如权利要求1至5中任一项所述的负载迁移方法。

    12.一种负载迁移系统,其特征在于,所述系统包括:源控制器,如权利要求11所述的目的控制器,以及与所述源控制器和所述目的控制器均相连的数据库服务器。

    13.根据权利要求12所述的系统,其特征在于,所述系统还包括:与所述源控制器和所述目的控制器均相连的迁移调度器。

    14.根据权利要求13所述的系统,其特征在于,所述迁移调度器用于确定所述目的控制器。

    技术总结
    本发明的实施例提供一种负载迁移方法、装置及系统,涉及通信领域,可实现跨控制域之间的负载迁移,从而降低因本控制域负载过重而产生的通信时延,实现跨控制域的资源共享与协同。该方法包括:源控制器确定需要迁移至目的控制器的待迁移UE;源控制器在数据库服务器中更新待迁移UE的资源信息,更新后的资源信息包括待迁移UE与目的控制器之间的对应关系;源控制器向外部网元发送跨域更新指令,该跨域更新指令包括待迁移UE的标识和目的控制器的标识。

    技术研发人员:乔晓强;李岩
    受保护的技术使用者:华为技术有限公司
    技术研发日:2016.06.28
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-5731.html

    最新回复(0)