一种会话数据操作和维护的实现方法

文档序号:7691407阅读:244来源:国知局
专利名称:一种会话数据操作和维护的实现方法
技术领域
本发明涉及CDMA2000高速率分组数据(HRPD,High Rate Packet Data)系统中会话(Session)数据操作和维护的实现方法,尤其涉及主备用Session数据间快速同步的方法。
背景技术
在CDMA2000 HRPD系统中,Session指的是接入终端(AT)和接入网(AN)之间的一种共享的状态,这种状态存储了AT和AN之间通信所必须的唯一AT标识(UATI)、AT位置信息、协议协商和配置参数等,如果AT要发起和AN之间数据业务的连接(Connection),必须先要建立和AN之间的Session。AN存储所有与AT间协商建立的Session数据,因此AN要保证Session数据的高度安全和可靠,否则一旦系统由于某些原因导致所有AT的Session数据的丢失,这样在系统恢复正常后需要重新建立大量的Session数据,在用户数量很大(几十万)情况下,可能会对HRPD业务处理单板的主处理器造成极大处理开销,给系统带来安全隐患;另外,HRPD许多业务流程如Session呼叫、Session释放、Session配置、Connection呼叫、Connection释放和各种切换等业务流程中,都可能涉及到Session数据的增加、更新和删除操作的一种或多种操作,因此AN要保证Session数据处理的快速和高效。综上所述,在CDMA2000 HRPD系统中必须采取一种即安全可靠又快速高效的Session数据操作和维护方法。
目前,CDMA2000 HRPD系统对Session数据的操作和维护的方法,是采用Session服务器直接参与Session建立、更新和删除的业务处理,这种处理方法的缺点是当Session服务器崩溃或者前台HRPD业务处理单板(HMP)和后台Session服务器之间通讯链路断链后,HMP就不能进行正常的业务处理。因此,本文提出了一种新的Session数据操作和维护的实现方法。

发明内容
本发明要解决的技术问题是提供一种CDMA2000高速率分组数据HRPD系统中安全、可靠、快速高效的会话Session数据操作和维护的实现方法。
为实现本发明要解决的技术问题,本发明一种会话Session数据操作和维护的实现方法包括1)基站系统应用部分模块BSSAP根据增加、更新或删除Session数据的请求,快速定位Session列表进行相应的数据处理;2)BSSAP把第1步处理的结果实时发送到后台Session服务器进行处理,保持前后台Session数据的实时同步,如果后台Session服务器处理不成功,BSSAP把处理不成功的数据置入到失步的Session数据队列中;3)BSSAP把实时处理不成功的Session数据同步到后台Session服务器;4)当前台高速率分组数据业务处理单板的Session列表中的数据丢失时,BSSAP请求后台Session服务器恢复数据,Session服务器把Session数据同步到前台高速率分组数据业务处理单板;5)当后台Session服务器丢失保存的数据,Session服务器向BSSAP发起数据恢复的请求,BSSAP同步所有的Session数据到后台Session服务器。
由于本发明Session数据可以前后台主备存储,而且可以互为同步,保证了Session数据的安全可靠性;同时也保证了后台崩溃或者前后台通讯链路断链的时候,前台业务处理仍然能够正常的进行。


图1BSSAP向Session服务器发送Session数据恢复的数据同步流程图2Session服务器向BSSAP发送Session数据恢复的数据同步流程
具体实施例方式本发明所述一种会话数据操作和维护的实现方法按以下方案实现在前台HRPD业务处理单板(HMP)内存中保存一份完整的Session数据列表作为主用数据,并创建索引快速定位Session数据;在后台Session服务器的数据库和内存中保存和前台同步的Session数据作为备用;主备用数据之间通过快速的实时数据操作以及数据同步方法和流程保持数据的一致性。CDMA2000 HRPD前台业务处理单板HMP的基站系统应用部分模块(BSSAP)接收到需要增加、更新或删除AT与AN间的Session请求,BSSAP根据Session数据列表的索引快速定位Session数据,操作完成以后发送消息给后台Session服务器请求实时增加、更新或删除Session数据,如果后台Session服务器数据处理不成功,则BSSAP把处理不成功的数据置入失步Session数据队列中(前台业务处理单板与后台Session服务器的数据不同步时,前台业务处理单板把不同步的数据保存起来,这些数据称为失步的Session数据);BSSAP将把HMP保存的失步Session数据队列定时的同步到后台Session服务器;当HMP由于复位或者故障的情况下导致Session列表中的数据丢失,HMP重新启动的时候,BSSAP会主动向后台Session服务器发起数据恢复请求,经过Session服务器向BSSAP发送Session数据恢复的数据同步流程以后,后台Session服务器把所有的数据快速同步到BSSAP;当后台Session服务器由于菪机而丢失保存的数据,在后台Session服务器恢复正常后,可以向BSSAP发起数据恢复请求,经过BSSAP向Session服务器发送Session数据恢复的数据同步流程,BSSAP把HMP保存的所有Session数据快速同步到后台Session服务器。
BSSAP把失步的Session数据队列同步到后台Session服务器包括BSSAP向Session服务器发送“失步的Session同步传输过程开始”消息,通知将开始失步的Session数据同步;Session服务器向BSSAP发送“失步的Session同步传输过程开始应答”,确认收到开始通知;BSSAP开始组装失步的Session数据,多个失步的Session数据封装到一条“失步的Session同步数据传输”数据包消息中发给Session服务器,每条数据包消息包含一个包号,连续发送多个“失步的Session同步数据传输”数据包消息;BSSAP向Session服务器发送“失步的Session同步数据传输结束”消息;Session服务器向BSSAP发送“失步的Session同步数据传输结束应答”消息,消息中返回已收到数据包消息的包号,BSSAP根据包号查找是否有未收到的数据包消息,如果有,BSSAP向Session服务器重新发送未收到的数据包消息;BSSAP判断当前所有失步的数据是否已经同步完成,如果完成,则向Session服务器发送“失步的Session同步传输过程结束”消息。
如图1所示,本发明BSSAP向后台Session服务器发送Session数据恢复的数据同步流程如下101 BSSAP向Session服务器发送“Session同步请求”消息,请求发送Session备份数据,并打开“同步请求定时器”,等待“Session同步请求应答”消息。该过程可能发生在以下时机1)前台HMP主板上电时,BSSAP进程上电后发起请求;2)HMP备板转为主板时,BSSAP进程发现没有任何Session备份数据,则发起请求。
102 Session服务器向BSSAP发送“Session同步请求应答”消息,消息中包含原因值表示确认结果。原因值SYNCREQ_SUCCESS表示Session服务器保存有Session数据并且同意同步请求;原因值SYNCREQ_NODATA表示Session服务器没有保存任何Session数据,原因值SYNCREQ_OTHERS表示其它失败原因,BSSAP停止“同步请求定时器”。如果原因值为SYNCREQ_SUCCESS,则打开定时器“同步定时器”,等待数据同步开始。“同步定时器”用于防止同步过程陷入无限循环,该定时器超时即表示同步失败;如果原因值为SYNCREQ_NODATA,BSSAP结束同步流程,开始处理正常业务;如果原因值为SYNCREQ_OTHERS,BSSAP将启动周期性定时器,定时向Session服务器发送同步请求直到开始数据同步流程。如果″同步定时器″超时,BSSAP也将启动周期性定时器,定时向Session服务器发送同步请求直到开始数据同步流程。
103 Session服务器向BSSAP发送“Session同步传输过程开始”消息,通知将开始Session数据同步,并打开定时器“同步开始定时器”等待确认。
104 BSSAP向Session服务器发送“Session同步传输过程开始应答”,确认收到开始通知,Session服务器停止“同步开始定时器”。打开“同步定时器”,该定时器同样用于防止发送数据侧陷入无限的数据同步过程,该定时器超时表示同步失败。如果“同步开始定时器”超时,Session服务器向BSSAP发送“Session同步退出”消息并带上失败原因。
105 Session服务器开始组装Session数据,多个Session数据封装到一条“Session同步数据传输”数据包消息中发给BSSAP,每条消息包含一个包号,连续发送N条“Session同步数据传输”消息后打开延时定时器“发送延时定时器”,用于进行发送的流量控制。Session服务器要维护一个已确认包号的数组,用于记录一次同步过程中已经收到确认和没有收到确认的数据包包号。
106 Session服务器连续发送N个(N可默认为10)“Session同步数据传输”数据包消息。在这个过程中,如果后台判断传送session信息任务已经完成,则直接跳转到步骤108,否则继续。
107 BSSAP维护n*N(n可默认为5)大小的已接收包号数组,每收到一个数据包,将包号顺序加入数组。每当收到包号为N-1的数据包或者接收包号数组已经满,则向Session服务器发送“Session同步数据传输应答”,消息中包含接收包号数组中所有已接收数据包的包号。
108 Session服务器完成一次数据同步流程,向BSSAP发送“Session同步数据传输结束”消息,通知一次数据同步流程的结束,并打开定时器“同步结束定时器”等待确认。
109 BSSAP向Session服务器发送“Session同步数据传输结束应答”,确认已收到同步结束消息,消息中同时返回已收到数据包的包号,Session服务器停止“同步结束定时器”。如果“同步结束定时器”超时,表示同步失败,Session服务器向BSSAP发送“Session同步退出”消息指示失败原因。
110 Session服务器查找未收到确认包号的数组,重新传送这些未收到确认的数据包,向BSSAP发送“Session同步数据传输”消息,依然采用设置延时定时器的方式进行发送流控。
111 BSSAP向Session服务器发送“Session同步数据传输应答”消息,确认已收到的同步数据包。
112 Session服务器判断当前所有数据已经同步完成,停止“同步定时器”,向BSSAP发送“Session同步传输过程结束”消息,启动“同步传输过程结束定时器”。
113 BSSAP停止“同步定时器”,向Session服务器发送“Session同步传输过程结束应答”消息,转入正常工作流程。Session服务器收到确认后,停止“同步传输过程结束定时器”。如果定时器超时,Session服务器同样结束同步流程。
同步过程中Session服务器如果收到“Session同步退出”,则视同步失败。同步失败时,对数据发送侧直接结束同步流程,对数据接收侧,BSSAP将清除已同步的数据,重新发起同步请求流程。
如图2所示,本发明Session服务器向BSSAP发送Session数据恢复的数据同步流程201 Session服务器向BSSAP发送“Session同步请求”消息,请求发送当前活动的Session数据,并打开“同步请求定时器”,等待“Session同步请求应答”消息。该过程可能发生在以下时机更换Session服务器服务器;Session服务器数据库故障,需要重新建立Session数据库;202 BSSAP向Session服务器发送“Session同步请求应答”消息,消息中包含原因值表示确认结果。原因值SYNCREQ_SUCCESS表示BSSAP保存有活动Session数据并且同意同步请求;原因值SYNCREQ_NODATA表示BSSAP当前没有任何活动Session数据;原因值SYNCREQ_BUSY表示当前BSSAP正忙,可能正在处理别的同步过程(如主备同步),或者业务忙等;原因值SYNCREQ_OTHERS表示其它失败原因;Session服务器停止TSyncReq定时器,如果原因值为SYNCREQ_SUCCESS,则打开“同步定时器”,等待数据同步开始。“同步定时器”用于防止同步过程陷入无限循环,该定时器超时即表示同步失败;如果原因值为其它值,Session服务器直接结束同步流程,并向操作人员提示不能同步原因。如果“同步请求定时器”超时,Session服务器直接结束同步流程,并向操作人员提示超时。
203 BSSAP向Session服务器发送“Session同步传输过程开始”消息,通知将开始Session数据同步,并打开“同步开始定时器”等待确认。
204 Session服务器向BSSAP发送“Session同步传输过程开始应答”消息,确认收到开始通知,BSSAP停止“同步开始定时器”,打开“同步定时器”,该定时器同样用于防止发送数据侧陷入无限的数据同步过程,该定时器超时表示同步失败。如果TSyncBegin超时,BSSAP向Session服务器发送“Session同步退出”消息并带上失败原因,结束同步过程。
205 BSSAP开始组装Session数据,多个Session数据封装到一条消息“Session同步数据传输”消息中发给Session服务器,每条消息包含一个包号,连续发送N条“Session同步数据传输”消息后打开延时“发送延时定时器”,用于进行发送的流量控制。BSSAP要维护一个已确认包号的数组,用于记录一次同步过程中已经收到确认和没有收到确认的数据包包号。
206 BSSAP连续发送N个(N默认为10)“Session同步数据传输”消息。在这个过程中,如果后台判断传送session信息任务已经完成,则直接跳转到步骤208,否则继续。
207 Session服务器维护n*N(n默认为5)大小的已接收包号数组,每收到一个数据包,将包号顺序加入数组。每当收到包号为N-1的数据包或者接收包号数组已经满,则向BSSAP发送“Session同步数据传输应答”,消息中包含接收包号数组中所有已接收数据包的包号。
208 BSSAP完成一次数据同步流程,向Session服务器发送“Session同步数据传输结束”,通知一次数据同步流程的结束,并打开“同步定时器”等待确认。
209 Session服务器向BSSAP发送“Session同步数据传输结束应答”,确认已收到同步结束消息,消息中同时返回已收到数据包的包号,BSSAP停止“同步结束定时器”。如果“同步结束定时器”超时,表示同步失败,BSSAP向Session服务器发送“Sessio同步退出”消息指示失败原因。
210 BSSAP查找未收到确认包号的数组,重新传送这些未收到确认的数据包,向Session服务器发送“Session同步数据传输”,依然采用设置延时定时器的方式进行发送流控。
211 Session服务器向BSSAP发送“Session同步数据传输应答”,确认已收到的同步数据包。
212 BSSAP判断当前所有数据已经同步完成,停止“同步定时器”,向Session服务器发送“Session同步传输过程结束”,启动“同步传输过程结束定时器”。
213 Session服务器停止“同步定时器”,向BSSAP发送“Session同步传输过程结束应答消息”,结束数据同步流程。BSSAP收到确认后,停止“同步结束定时器”。如果定时器超时,BSSAP同样结束同步流程,转入正常工作状态。
同步过程中Session服务器如果收到“Session同步退出”消息,视为同步失败。同步失败时,对数据发送侧直接结束同步流程,对数据接收侧,Session服务器将清除已同步的数据,向操作人员提示同步失败。
权利要求
1.一种会话数据操作和维护的实现方法,其特征在于所述的方法包括(1)基站系统应用部分模块根据增加、更新或删除会话数据的请求,快速定位会话列表进行相应的数据处理;(2)基站系统应用部分模块把第(1)步处理的结果实时发送到后台会话服务器进行相应的数据处理,如果后台会话服务器处理不成功,则基站系统应用部分模块把处理不成功的数据置入到失步的会话数据队列中;(3)基站系统应用部分模块把失步的会话数据队列同步到后台会话服务器;(4)当前台高速率分组数据业务处理单板的会话列表中的数据丢失时,基站系统应用部分模块请求后台会话服务器恢复数据,后台会话服务器把会话数据同步到前台高速率分组数据业务处理单板;(5)当后台会话服务器丢失保存的数据,在后台会话服务器恢复正常后,会话服务器向基站系统应用部分模块发起数据恢复的请求,基站系统应用部分模块同步所有的会话数据到后台会话服务器。
2.根据权利要求1所述的方法,其特征在于所述步骤(3)中,基站系统应用部分模块把失步的会话数据队列同步到后台会话服务器进一步包括31)基站系统应用部分模块向会话服务器发送“失步的会话同步传输过程开始”消息,通知将开始失步的会话数据同步;32)会话服务器向基站系统应用部分模块发送“失步的会话同步传输过程开始应答”,确认收到开始通知;33)基站系统应用部分模块开始组装失步的会话数据,多个失步的会话数据封装到一条“失步的会话同步数据传输”数据包消息中发给会话服务器,每条数据包消息包含一个包号,连续发送多个“失步的会话同步数据传输”数据包消息;34)基站系统应用部分模块向会话服务器发送“失步的会话同步数据传输结束”消息;35)会话服务器向基站系统应用部分模块发送“失步的会话同步数据传输结束应答”消息,消息中返回已收到数据包消息的包号,基站系统应用部分模块根据包号查找是否有未收到的数据包消息,如果有,基站系统应用部分模块向会话服务器重新发送未收到的数据包消息;36)基站系统应用部分模块判断当前所有失步的数据是否已经同步完成,如果完成,则向会话服务器发送“失步的会话同步传输过程结束”消息。
3.根据权利要求1所述的方法,其特征在于所述步骤(4)中,基站系统应用部分模块请求后台会话服务器恢复数据,会话服务器把会话数据同步到基站系统应用部分模块进一步包括41)基站系统应用部分模块向会话服务器发送“会话同步请求”消息,请求发送会话备份数据,等待“会话同步请求应答”消息;42)会话服务器向基站系统应用部分模块发送“会话同步请求应答”消息;43)会话服务器向基站系统应用部分模块发送“会话同步传输过程开始”消息,通知将开始会话数据同步;44)基站系统应用部分模块向会话服务器发送“会话同步传输过程开始应答”,确认收到开始通知;45)会话服务器开始组装会话数据,多个会话数据封装到一条“会话同步数据传输”数据包消息中发给基站系统应用部分模块,每条数据包消息包含一个包号,连续发送多个“会话同步数据传输”数据包消息;46)会话服务器向基站系统应用部分模块发送“会话同步数据传输结束”消息;47)基站系统应用部分模块向会话服务器发送“会话同步数据传输结束应答”消息,消息中返回已收到数据包消息的包号,会话服务器根据包号查找是否有未收到的数据包消息,如果有,会话服务器向基站系统应用部分模块重新发送未收到的数据包消息,如果没有执行步骤48);48)会话服务器判断当前所有数据是否已经同步完成,如果完成,则向基站系统应用部分模块发送“会话同步传输过程结束”消息,如果未完成,则执行步骤41)。
4.根据权利要求1所述的方法,其特征在于所述步骤(5)中将基站系统应用部分模块同步所有的会话数据到后台会话服务器包括51)会话服务器向基站系统应用部分模块发送“会话同步请求”消息,请求发送会话备份数据,等待“会话同步请求应答”消息;52)基站系统应用部分模块向会话服务器发送“会话同步请求应答”消息;53)基站系统应用部分模块向会话服务器发送“会话同步传输过程开始”消息,通知将开始会话数据同步;54)会话服务器向基站系统应用部分模块发送“会话同步传输过程开始应答”,确认收到开始通知;55)基站系统应用部分模块开始组装会话数据,多个会话数据封装到一条“会话同步数据传输”数据包消息中发给会话服务器,每条数据包消息包含一个包号,连续发送多个“会话同步数据传输”数据包消息;56)基站系统应用部分模块向会话服务器发送“会话同步数据传输结束”消息;57)会话服务器向基站系统应用部分模块发送“会话同步数据传输结束应答”消息,消息中返回已收到数据包消息的包号,基站系统应用部分模块根据包号查找是否有未收到的数据包消息,如果有,基站系统应用部分模块向会话服务器重新发送未收到的数据包消息,如果没有执行步骤58);58)基站系统应用部分模块判断当前所有数据是否已经同步完成,如果完成,则向会话服务器发送“会话同步传输过程结束”消息,如果未完成,则执行步骤51)。
全文摘要
本发明公开了一种会话Session数据操作和维护的实现方法,包括(1)基站系统应用部分模块BSSAP根据增加、更新或删除Session数据的请求,快速定位Session列表进行相应的数据处理;(2)BSSAP把第(1)步处理的结果实时发送到后台Session服务器进行处理,如果后台Session服务器处理不成功,则BSSAP把处理不成功的数据置入到失步的Session数据队列中;(3)BSSAP把失步的Session数据队列定时同步到后台Session服务器;(4)BSSAP请求后台Session服务器恢复数据,Session服务器把Session数据同步到前台高速率分组数据业务处理单板;(5)Session服务器向BSSAP发起数据恢复的请求,BSSAP同步所有的Session数据到后台Session服务器。本发明使Session数据可以前后台主备存储,且可互为同步,保证了Session数据的安全可靠性。
文档编号H04W88/18GK1527523SQ0314689
公开日2004年9月8日 申请日期2003年9月19日 优先权日2003年9月19日
发明者王亦文, 曹耘 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1