发明内容
本发明要解决的技术问题是提供一种服务网关的负载重分配方法及系统,实现SGW上的部分或全部用户的迁移。
为了解决上述问题,本发明提供了一种服务网关的负载重分配方法,包括:
服务网关在需要进行负载重分配时,向移动管理单元发送负载重分配指示消息;
所述移动管理单元选择其他的服务网关,并将所述服务网关上的部分或全部用户迁移至所选择的新的服务网关上。
进一步地,所述服务网关需要进行负载重分配是指,所述服务网关在维护升级、或得知网络中新增加服务网关时,需要对其用户进行迁移;
所述移动管理单元在选择所述新的服务网关时,选择网络中负载较低的网关或所述新增的服务网关。
进一步地,所述服务网关在所述负载重分配指示消息中携带需要迁移的用户数;
所述移动管理单元根据所述用户数选择相应数量的用户迁移至所述新的服务网关上。
进一步地,所述移动管理单元在将所述用户迁移至所述新的服务网关上时,根据所述用户的状态对其进行迁移,对于空闲状态的用户,直接将其迁移至所述新的服务网关上;对于连接状态的用户,则先将其从连接状态转变为空闲状态后,再将其迁移至所述新的服务网关上。
进一步地,所述移动管理单元在选择相应数量的用户进行迁移时,优先选择空闲状态的用户。
进一步地,所述移动管理单元将所述连接状态的用户转变为空闲状态具体包括:
所述移动管理单元向所述用户的基站发送用户上下文释放指令消息,该消息中携带特定原因值,用于指示释放原因为服务网关负载重分配;
所述基站向所述用户发送无线资源连接释放请求消息,在该请求消息中携带所述特定原因值;
所述用户根据所述无线资源连接释放请求消息完成用户上下文的释放后,从连接状态转变为空闲状态。
进一步地,所述方法还包括:
通过以下方式将所述转变为空闲状态的用户重新转变为连接状态:
所述移动管理单元发送的所述用户上下文释放指令消息中包含所述用户重新发起跟踪区更新请求的指示;
所述基站在发送的所述无线资源连接释放请求消息中包含所述指示;
所述用户根据所述指示向所述移动管理实体发送跟踪区更新请求;
所述移动管理实体接收到跟踪区更新请求后,如果确认所述用户在当前的跟踪区有效,则向所述用户发送跟踪区更新接受消息。
进一步地,所述方法还包括:
通过以下方式将所述转变为空闲状态的用户重新转变为连接状态:
所述移动管理实体向所述用户所属的跟踪区列表内的基站发起寻呼消息;
所述跟踪区列表内的基站向所述用户发起寻呼消息;所述用户接收到所述寻呼消息后,向所述移动管理实体发送业务请求消息;
所述移动管理实体向所述基站发送初始上下文建立请求消息;所述基站向所述用户发送无线承载建立请求消息;
所述用户根据所述无线承载建立请求消息建立无线承载,并向所述基站返回无线承载建立响应消息。
进一步地,所述方法还包括:
所述用户迁移至所述新的服务网关上后,所述新的服务网关向分组数据网网关发送修改承载请求消息;
所述分组数据网网关根据接收到的所述修改承载请求消息对所述用户的上下文进行更新后,发送修改承载响应给所述新的服务网关。
此外,本发明还提供了一种服务网关的负载重分配系统,包括服务网关和移动管理单元,所述服务网关包括负载重分配指示模块,所述移动管理单元包括负载重分配执行模块,所述负载重分配执行模块进一步分为网关选择单元和用户迁移单元,其中:
所述负载重分配指示模块用于,在所述服务网关需要维护升级、或得知网络中新增加服务网关时,向所述网关选择单元及所述用户迁移单元发送负载重分配指示消息;
所述网关选择单元用于,接收到所述负载重分配指示消息后,选择其他的服务网关;
所述用户迁移单元用于,接收到所述负载重分配指示消息后,选择所述服务网关上的部分或全部用户,并将选择的用户迁移至所述网关选择单元选择的新的服务网关上。
进一步地,所述负载重分配指示模块用于,在所述负载重分配指示消息中携带需要迁移的用户数;
所述用户迁移单元用于,根据所述用户数选择所述服务网关上相应数量的用户,并将选择的所述用户迁移至所述新的服务网关上。
进一步地,所述网关选择单元在选择所述新的服务网关时,选择网络中负载较低的网关或网络中新增的服务网关。
进一步地,所述用户迁移单元在将所述用户迁移至所述新的服务网关上时,根据所述用户的状态对其进行迁移,对于空闲状态的用户,直接将其迁移至所述新的服务网关上;对于连接状态的用户,则先将其从连接状态转变为空闲状态后,再将其迁移至所述新的服务网关上。
进一步地,所述用户迁移单元在选择相应数量的用户进行迁移时,优先选择空闲状态的用户。
进一步地,所述服务网关还包括上下文更新模块;
所述上下文更新模块用于,当其他网关上的用户迁移至本服务网关后,向分组数据网网关发送修改承载请求消息,请求所述分组数据网网关对所述用户的上下文进行更新。
采用上述实施方案,可以将SGW上的部分或全部用户迁移至新的SGW上,可以实现SGW的负载重分配,使SGW达到负载均衡的目的。
具体实施方式
本发明提出一种服务网关的负载重分配方法,采用如下技术方案:
SGW因为维护升级或者其他原因(如得知系统新增加SGW时),需要进行负载重分配,则通知移动管理单元需要迁移用户,移动管理单元选择用户进行迁移;
移动管理单元选择新的SGW,向选择的新的SGW发送会话建立请求消息,将UE迁移至新的SGW;
完成UE的迁移后,新的SGW与PGW之间进行用户上下文的更新。
其中,移动管理单元中存储有用户当前的状态,移动管理单元选择的用户可以是空闲状态用户,也可以是连接状态用户。对于处于空闲状态的UE,由移动管理单元直接迁移至新的SGW上;对于处于连接状态的UE,需要由移动管理单元先对其进行释放,使其变为空闲状态,而后按照空闲状态的UE进行迁移。
进一步地,移动管理单元根据网络中SGW的负载状态网络中负载较低的其他SGW进行迁移,而当网络中新增加SGW时,移动管理单元会将原SGW上的部分用户迁移至该新增的SGW。
进一步地,移动管理单元发送特定原因值的S1(MME到eNodeB之间的接口的是S1-MME,统称为S1接口)/Iu(RNC到SGSN的接口)Release过程,将UE从连接状态转变为空闲状态,该原因值可以是“SGW loadbalancing(负载平衡)TAU(Tracking Area Update,跟踪区更新请求)/RAU(Routing Area Update,路由区更新请求)required”。
进一步地,移动管理单元包括:MME,SGSN等。
为使本发明实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明技术方案的实施作进一步详细阐述。
本发明实施例的迁移用户的方法,如图2所示,主要包括以下步骤:
步骤201,SGW因为维护升级或者其他原因,向移动管理单元发送负载重分配指示消息,通知移动管理单元进行迁移用户,该消息中可以携带迁移用户的数量;
其中,负载重分配指示消息可以采用现有的消息来携带,如承载更新请求等;也可以采用单独的指示消息。
步骤202,移动管理单元选择相应数量的用户进行迁移,为用户选择新的SGW,将用户迁移至该新的SGW上。
本实施例中,移动管理单元根据负载重分配消息随机选择指定数量的用户进行迁移,迁移的用户可能既包含空闲状态用户,也包含连接状态用户。对于空闲状态用户,移动管理单元可以直接将其迁移至新的SGW上;对于连接状态用户,移动管理单元先将其无线资源释放,使用户转化为空闲状态,然后再将其迁移至新的SGW上。
图3示出了本发明实施例中服务网关负载重分配的流程,如图3所示,主要包括以下步骤:
步骤301,SGW1因为维护升级或者其他原因,向移动管理单元(如MME)发送负载重分配指示消息,该指示消息中可以携带需要迁移的用户数;
步骤302,MME选择空闲状态的用户进行迁移;
本实施例中,MME优先选择空闲状态的用户进行迁移。
步骤303,MME为UE选择新的SGW(SGW2),并向该新的SGW发送会话建立请求消息,请求将UE迁移至该新的SGW上,该请求消息中携带IMSI、MME的控制面地址和TEID(Tunnel Endpoint Identifier,隧道端点标识)、Bearer ID(承载标识)以及Bearer QoS(Quality of Service,服务质量);
步骤304,新的SGW向PGW发送修改承载请求消息,请求更新上下文,请求消息中携带新的SGW的控制面地址和TEID,bearer ID,新的SGW的下行用户面地址和TEID;
步骤305,PGW向新的SGW返回修改承载响应消息;
步骤306,新的SGW向MME返回会话建立响应消息,该消息中携带新的SGW的控制面地址和TEID;
步骤307,MME向原SGW(SGW1)发送释放会话请求,原SGW释放UE的上下文;
步骤308,原SGW向MME返回释放会话响应。
需要指出的是,本实施例同样适用于UE接入至SGSN的情况。
图4示出了本发明实施例中,MME需要改变用户状态,使UE从连接状态变为空闲状态的流程,如图4所示,主要包括以下步骤:
步骤401,MME向SGW发送接入承载释放请求消息,请求SGW释放用户面地址和TEID;
步骤402,SGW向MME返回接入承载响应消息;
步骤403,MME向eNodeB发送用户上下文释放指令消息,该指令消息携带特定原因值,用于指示该释放原因是SGW负载重分配所致,并需要UE重新发起TAU过程;
步骤404,eNodeB向UE发送RRC(Radio Resource Connection,无线资源连接)连接释放请求消息,该请求消息携带特定原因值,用于指示该释放原因是SGW负载重分配所致,并需要UE重新发起TAU过程;
步骤405,UE向eNodeB返回RRC连接释放响应消息;
步骤406,eNodeB向MME返回用户上下文释放完成消息。
至此,UE从连接状态转变为空闲状态。
需要指出的是,本实施例同样适用于UE接入至SGSN的情况。
图5所示为本发明另一实施例中服务网关负载重分配的流程,如图5所示,包括如下步骤:
步骤501,SGW因为维护升级或者其他原因,向MME发送负载重分配指示消息,该指示消息中可以携带需要迁移的用户数;
步骤502,MME选择相应数量的用户进行迁移;
本实施例中,MME选择连接状态的用户进行迁移。
步骤503~508的操作与图4中步骤401~406的操作类似,此处不再赘述。
步骤509,UE向MME发送跟踪区更新请求,请求消息中携带MME为UE分配的GUTI(Globally Unique Temporary Identity,全球唯一临时标识);
步骤510~515的操作与图3中步骤303~308的操作类似,此处不再赘述。
步骤516,如果MME确认UE在当前的跟踪区内有效,则向UE发送跟踪区更新接受消息;
至此,UE重新转变为连接状态。
步骤517,如果MME通过TAU流程为UE分配了一个新的GUTI标识,那么UE会返回跟踪区更新完成消息向MME进行确认。
需要指出的是,本实施例同样适用于UE接入至SGSN的情况。
图6所示为本发明又一实施例中服务网关负载重分配的流程,如图6所示,包括如下步骤
步骤601,SGW因为维护升级或者其他原因,向MME发送负载重分配指示消息,该指示消息中可以携带需要迁移的用户数;
步骤602,MME选择相应数量的连接状态用户进行迁移;
步骤603,MME需要改变用户状态,使UE从连接状态变为空闲状态,则MME向SGW发送接入承载释放请求消息,请求SGW释放用户面地址和TEID;
步骤604,SGW向MME返回接入承载响应消息;
步骤605,MME向eNodeB发送用户上下文释放指令消息,该指令消息携带特定原因值,用于指示该释放是SGW负载重分配所致;
步骤606,eNodeB向UE发送RRC(Radio Resource Connection,无线资源连接)连接释放请求消息,该指令消息携带特定原因值,用于指示该释放是SGW负载重分配所致;
步骤607,UE向eNodeB返回RRC连接释放响应消息;
步骤608,eNodeB向MME返回用户上下文释放完成消息。
步骤609~614的操作与图3中步骤303~308的操作类似,此处不再赘述。
步骤615,MME向UE所属TA list(跟踪区列表)的eNodeB发起寻呼消息;
步骤616,eNodeB发起寻呼消息;
步骤617,UE向MME发送业务请求(Service Request)消息;
步骤618,MME向eNodeB发送初始上下文建立请求消息,该请求消息中携带SGW的用户面地址和TEID,Bearer QoS以及安全上下文等;
步骤619,eNodeB向UE发起无线承载建立请求消息,请求建立无线承载;
步骤620,UE向eNodeB返回无线承载建立响应消息;
至此,UE重新转变为连接状态。
步骤621,eNodeB向MME发送初始上下文建立完成消息,该响应消息中携带eNodeB的用户面地址和TEID;
步骤622,MME向SGW发送修改承载请求消息,该请求消息中携带eNodeB的用户面地址和TEID;
步骤623,SGW向MME返回修改承载响应消息。
需要说明的是,本实施例同样适用于UE接入SGSN的情况。
如图7所示,本发明还提供了一种服务网关的负载重分配系统,包括服务网关和移动管理单元,其中,服务网关中包括负载重分配指示模块,移动管理单元中包括负载重分配执行模块,该负载重分配执行模块进一步又包括网关选择单元和用户迁移单元,各模块/单元的作用如下:
负载重分配指示模块用于,在服务网关需要维护升级、或得知网络中新增加服务网关时,向网关选择单元及用户迁移单元发送负载重分配指示消息;
网关选择单元用于,接收到负载重分配指示消息后,选择其他的服务网关;
用户迁移单元用于,接收到负载重分配指示消息后,选择服务网关上的部分或全部用户,并将选择的用户迁移至网关选择单元选择的其他新的服务网关上。
进一步地,负载重分配指示模块还用于,在负载重分配指示消息中携带需要迁移的用户数;
用户迁移单元用于,根据用户数选择服务网关上相应数量的用户,并将选择的用户迁移至新的服务网关上。
进一步地,网关选择单元在选择新的服务网关时,选择网络中负载较低的网关或网络中新增的服务网关。
进一步地,用户迁移单元在将用户迁移至新的服务网关上时,根据用户的状态对其进行迁移,对于空闲状态的用户,直接将其迁移至新的服务网关上;对于连接状态的用户,则先将其从连接状态转变为空闲状态后,再将其迁移至新的服务网关上。
其中,用户迁移单元在对连接状态的用户进行迁移时,可按照前述实施例中的方式将连接状态的用户转变为空闲状态,其具体操作流程在此不再赘述。
进一步地,用户迁移单元在选择相应数量的用户进行迁移时,优先选择空闲状态的用户。
进一步地,服务网关还包括上下文更新模块,用于当其他网关上的用户迁移至本服务网关后,向分组数据网网关发送修改承载请求消息,请求分组数据网网关对所述用户的上下文进行更新。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。