一種在數(shù)據(jù)庫發(fā)生故障時進行aaa認證的方法
【專利摘要】一種數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法,因為數(shù)據(jù)庫工作正常時,AAA服務器已經(jīng)將公共NAI和VPN的信息寫入xml文件,還從數(shù)據(jù)庫中定期讀取用戶的IMSI信息和用戶綁定信息,并存儲于內存對象緩存組件中,以供AAA服務器在數(shù)據(jù)庫發(fā)生故障時進行偽認證;這樣,當數(shù)據(jù)庫發(fā)生故障,使得AAA服務器與數(shù)據(jù)庫連接失敗時,AAA服務器就從xml文件中讀取NAI和VPN信息,以IMSI+’auth’為關鍵字從內存對象緩存組件中獲取IMSI信息和用戶綁定信息,用于移動用戶號碼MDN認證授權、綁定校驗、漫游權限控制和組授權。本發(fā)明能夠確保數(shù)據(jù)庫故障期間,用戶也能正常訪問數(shù)據(jù)業(yè)務,提高用戶體驗的服務質量;避免以往此時影響電信運營商經(jīng)濟效益和社會效益的嚴重后果,使得用戶與運營商得到雙贏。
【專利說明】一種在數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法
【技術領域】
[0001]本發(fā)明涉及一種在數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法,確切地說,涉及一種在AAA的主、備兩個數(shù)據(jù)庫都發(fā)生故障時,AAA服務器采用文件認證的方式進行認證授權,允許文件或內存對象緩存組件中配置的用戶執(zhí)行認證與計費操作,以確保業(yè)務的連續(xù)性。屬于通信的【技術領域】。
【背景技術】
[0002]認證、授權和計費AAA (Authentication、Authorization、Accounting)服務器位于分組核心網(wǎng)中,負責完成用戶認證、授權和計費的功能;也就是對用戶使用網(wǎng)絡服務和訪問資源時的身份與權限進行辨別與確認,并根據(jù)使用情況執(zhí)行計費的相關操作,在電信運營商的業(yè)務中,AAA認證占有非常重要的位置。
[0003]參見圖1,介紹用戶在訪問分組域數(shù)據(jù)業(yè)務(如互聯(lián)網(wǎng)業(yè)務)時,用戶的基本認證計費流程:
[0004](I)用戶向分組數(shù)據(jù)業(yè)務節(jié)點F1DSN (Packet Data Serving Node)發(fā)起接入請求;
[0005](2) PDSN生成接入請求消息Access-Request,發(fā)送給AAA服務器;
[0006](3)AAA服務器收到接入請求后,對用戶進行認證鑒權,若認證通過,則向H)SN回復接入允許消息Access-Accept,表明用戶接入認證成功,建立數(shù)據(jù)會話;
[0007](4) PDSN向AAA服務器發(fā)送計費請求消息Accounting-Request ;
[0008](5) AAA服務器完成對計費消息的保存和處理后,給H)SN返回計費應答消息Accounting-Response ο
[0009]其中,AAA服務器對用戶的認證鑒權,主要操作是AAA服務器根據(jù)用戶請求中攜帶的用戶名在數(shù)據(jù)庫中進行信息查詢驗證。此時的信息查詢主要包括下述內容:
[0010](I)查詢公用網(wǎng)絡訪問標識NAI (Network Access Identifier)信息,包括:用戶接入請求中攜帶的NAI密碼、NAI狀態(tài)、服務類型、相關IP信息和是否綁定國際移動用戶識別石馬 IMSI (International Mobile Subscriber Identit)。
[0011](2)用戶訪問企業(yè)內網(wǎng)時,則需要查詢虛擬專用網(wǎng)VPN (Virtual PrivateNetwork)相關信息,例如:企業(yè)狀態(tài)(正常、注銷)、企業(yè)子用戶和用戶密碼等。
[0012](3)查詢MSI相關信息,包括:請求接入的手機用戶MSI狀態(tài)(正常、停機)、移動用戶號碼MDN (Mobile Directory Number)、是否綁定業(yè)務、IMSI所在用戶組、漫游權限和其它相關IP信息。
[0013](4)查詢綁定信息,主要查詢該用戶是否有權限訪問業(yè)務,如:該MSI綁定的業(yè)務,其訪問的業(yè)務綁定的頂SI。
[0014]然而,如果此時作為用戶信息存儲核心的數(shù)據(jù)庫發(fā)生故障,AAA服務器就將無法獲取用戶的簽約信息而拒絕用戶接入。具體原因是:因數(shù)據(jù)庫連接失敗,AAA服務器就無法從該數(shù)據(jù)庫中獲取公共NAI信息和VPN信息,而電信運營商業(yè)務網(wǎng)絡中IMSI的相關信息數(shù)據(jù)量非常巨大,通常也是存放在數(shù)據(jù)庫中。如因數(shù)據(jù)庫發(fā)生故障而連接失敗時,AAA服務器無法根據(jù)MSI獲取移動用戶號碼MDN和用戶類型的相關信息;在進行AAA認證時,無線應用協(xié)議WAP (Wireless Application Protocol)類業(yè)務就由于沒有MDN而無法使用。另外,綁定信息同樣無法從數(shù)據(jù)庫中讀取,造成AAA認證中的綁定邏輯無法生效。因此,從數(shù)據(jù)庫故障的發(fā)生、發(fā)現(xiàn)到找到問題、解決問題的整個過程中,都會因為無法連接數(shù)據(jù)庫而拒絕所有用戶的接入請求,使得用戶無法訪問數(shù)據(jù)業(yè)務,這種后果會嚴重影響和降低用戶體驗,同時給電信運營商帶來不可預估的損失。
【發(fā)明內容】
[0015]有鑒于此,本發(fā)明的目的是提供一種數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法,該方法是在主、備兩個數(shù)據(jù)庫都發(fā)生故障時,AAA服務器將采用文件及內存對象緩存組件信息認證的方式進行偽認證操作,允許文件及內存對象緩存組件中配置的用戶能夠通過認證與計費操作,以提高用戶的服務質量。
[0016]為了達到上述目的,本發(fā)明提供了一種數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法,其特征在于:因數(shù)據(jù)庫工作正常時,AAA服務器已經(jīng)將公共網(wǎng)絡訪問標識NAI (NetworkAccess Identifier)和虛擬專用網(wǎng)VPN (Virtual Private Network)的信息寫入可擴展標記語言xml (Extensible Markup Language)文件,還從數(shù)據(jù)庫中定期讀取用戶的國際移動用戶識別碼IMSI(International Mobile Subscriber Identity)信息和用戶綁定信息,并存儲于內存對象緩存組件中,以供AAA服務器在數(shù)據(jù)庫發(fā)生故障時進行偽認證;這樣,當數(shù)據(jù)庫發(fā)生故障,使得AAA服務器與數(shù)據(jù)庫連接失敗時,AAA服務器就從xml文件中讀取NAI和VPN信息,以IMSI+’auth’為關鍵字從內存對象緩存組件中獲取IMSI信息和用戶綁定信息,用于移動用戶號碼MDN (Mobile Directory Number)認證授權、綁定校驗、漫游權限控制和組授權。
[0017]本發(fā)明在數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法的優(yōu)點是:在數(shù)據(jù)庫發(fā)生故障時,AAA服務器能夠采用文件認證的方式,從xml文件中讀取公共NAI與VPN信息,再從內存對象緩存組件中讀取MSI相關信息及綁定信息,對接入用戶進行認證授權,以確保數(shù)據(jù)庫存在故障的期間,用戶也能正常訪問數(shù)據(jù)業(yè)務,提高用戶體驗質量。同時,本發(fā)明方法的操步驟簡單、便利、實用,容易推廣普及,能夠避免以往此時用戶的服務質量嚴重降低,影響電信運營商經(jīng)濟效益和社會效益的后果,使得用戶與運營商得到雙贏。
【專利附圖】
【附圖說明】
[0018]圖1是目前用戶訪問分組域數(shù)據(jù)業(yè)務(如互聯(lián)網(wǎng)業(yè)務)的認證計費流程時序圖。
[0019]圖2是本發(fā)明在數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法流程圖。
【具體實施方式】
[0020]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面結合附圖對本發(fā)明作進一步的詳細描述。
[0021]本發(fā)明數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法是一種偽認證方式,即從文件中讀取公共NAI信息和VPN信息,再從內存對象緩存組件中讀取IMSI相關信息及綁定信息,AAA服務器根據(jù)這些信息進行用戶認證與授權。因為數(shù)據(jù)庫工作正常時,AAA服務器已經(jīng)將公共網(wǎng)絡訪問標識NAI和虛擬專用網(wǎng)VPN的信息寫入可擴展標記語言xml文件,還從數(shù)據(jù)庫中定期讀取用戶的國際移動用戶識別碼MSI信息和用戶綁定信息,并存儲于內存對象緩存組件中,以供AAA服務器在數(shù)據(jù)庫發(fā)生故障時進行偽認證。這樣,當數(shù)據(jù)庫發(fā)生故障,使得AAA服務器與數(shù)據(jù)庫連接失敗時,AAA服務器就能夠從xml文件中讀取NAI和VPN信息,以IMSI+’auth’為關鍵字從內存對象緩存組件中獲取IMSI信息和用戶綁定信息,用于移動用戶號碼MDN認證授權、綁定校驗、漫游權限控制和組授權。
[0022]參見圖2,介紹本發(fā)明方法的下列操作步驟:
[0023]步驟1,AAA服務器接收到用戶的接入請求;
[0024]步驟2,AAA服務器連接數(shù)據(jù)庫,若連接成功,則從數(shù)據(jù)庫中讀取用戶信息進行認證授權,流程結束;若連接失敗,則執(zhí)行后續(xù)步驟3 ;
[0025]步驟3,AAA服務器檢查是否開啟偽認證操作流程,若未開啟,則拒絕用戶接入請求,流程結束;若開啟偽認證,則執(zhí)行后續(xù)步驟4 ;
[0026]步驟4,AAA服務器從xml文件或內存對象緩存組件中查找該用戶信息:若沒有找到該用戶信息,則拒絕該用戶的接入請求,流程結束;若找到該用戶信息,則執(zhí)行偽認證操作:從xml文件或內存對象緩存組件中讀取該用戶的相關信息,進行認證授權。
[0027]在步驟4中,執(zhí)行的偽認證操作主要有下述兩種:
[0028](一)AAA服務器從xml文件中讀取該用戶的公共NAI和VPN信息,具體的偽認證操作包括下列內容:
[0029](41)在AAA服務器啟動或重讀配置時,如果數(shù)據(jù)庫連接成功,則從數(shù)據(jù)庫成功讀取NAI與VPN信息后,將相關信息寫到對應的xml文件中;或
[0030](42)在AAA服務器啟動或重讀配置時,如果數(shù)據(jù)庫連接錯誤,則從對應的xml文件中讀取NAI與VPN信息到內存中,創(chuàng)建并保存為相應的hash表,以供偽認證時提取相關信
肩、O
[0031](二)AAA服務器從內存對象緩存組件中讀取該用戶的IMSI信息和綁定信息,具體的偽認證操作包括下列內容:
[0032](4A) AAA服務器采用定時調用獨立程序的方式將MSI信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件。
[0033]AAA服務器在將MSI信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件的過程中,數(shù)據(jù)庫和內存對象緩存組件之間的連接是采用連接池方式,以避免臨時創(chuàng)建連接造成的時延與資源消耗。連接池方式是在啟動時,加載配置中的全部數(shù)據(jù)庫處于連接狀態(tài),以便在數(shù)據(jù)庫群中的某個數(shù)據(jù)庫無法正常響應時,自動選擇其他有效數(shù)據(jù)庫作為數(shù)據(jù)庫的連接提供者,提高工作可靠性和避免臨時創(chuàng)建連接所帶來的時延與資源消耗。
[0034]AAA服務器采用多線程方式執(zhí)行數(shù)據(jù)庫的導入存儲操作,即當要導入的數(shù)據(jù)庫表中的數(shù)據(jù)大于設定數(shù)值時,將要讀取的數(shù)據(jù)庫表按照固定數(shù)目的線程進行分頁后,再將不同的頁交由不同的線程處理。建議的設定數(shù)值是400000,固定數(shù)目是16。
[0035]該步驟中,AAA服務器采用_ntab方式、即定時調用獨立程序的方式將IMSI相關信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件,該調用的周期和調用時段都是可配置的。例如:調用周期為每周一次,并選擇業(yè)務相對空閑時段(凌晨2點)開始執(zhí)行,避免導入操作影響正常的電信業(yè)務。[0036]因電信運營商的業(yè)務網(wǎng)絡中的MSI信息為海量數(shù)據(jù),故內存對象緩存組件是以1:1的主從方式配置有多組,AAA服務器按照MSI取模分發(fā)導入各個相應的內存對象緩存組件,以緩解內存壓力和提高查詢速度。
[0037]因為綁定信息的數(shù)量較少,無需采用分發(fā)方式存儲,只要導入存儲于第一組內存對象緩存組件中即可。
[0038](4B) AAA服務器執(zhí)行偽認證時,則以MSI+’ auth’為關鍵字從內存對象緩存組件中獲取該用戶的MSI信息和綁定信息,用于MDN授權、綁定校驗、漫游權限控制和組授權。
[0039]該步驟中,AAA服務器根據(jù)MSI取模,確定相應內存對象緩存組件,以IMSI+’ auth’為關鍵字從該內存對象緩存組件中獲取該用戶的IMSI信息,然后,再從第一組內存對象緩存組件中獲取綁定信息。
[0040]本發(fā)明已經(jīng)進行了多次實施試驗,試驗的結果是成功的,實現(xiàn)了發(fā)明目的。
【權利要求】
1.一種數(shù)據(jù)庫發(fā)生故障時進行AAA認證的方法,其特征在于:因數(shù)據(jù)庫工作正常時,AAA服務器已經(jīng)將公共網(wǎng)絡訪問標識NAI和虛擬專用網(wǎng)VPN的信息寫入可擴展標記語言xml文件,還從數(shù)據(jù)庫中定期讀取用戶的國際移動用戶識別碼IMSI信息和用戶綁定信息,并存儲于內存對象緩存組件中,以供AAA服務器在數(shù)據(jù)庫發(fā)生故障時進行偽認證;這樣,當數(shù)據(jù)庫發(fā)生故障,使得AAA服務器與數(shù)據(jù)庫連接失敗時,AAA服務器就從xml文件中讀取NAI和VPN信息,以MSI+’ auth’為關鍵字從內存對象緩存組件中獲取MSI信息和用戶綁定信息,用于移動用戶號碼MDN認證授權、綁定校驗、漫游權限控制和組授權。
2.根據(jù)權利要求1所述的方法,其特征在于:所述方法包括下列操作步驟: (1)AAA服務器接收到用戶的接入請求; (2)AAA服務器連接數(shù)據(jù)庫,若連接成功,則從數(shù)據(jù)庫中讀取用戶信息進行認證授權,流程結束;若連接失敗,則執(zhí)行后續(xù)步驟(3); (3)AAA服務器檢查是否開啟偽認證操作流程,若未開啟,則拒絕用戶接入請求,流程結束;若開啟偽認證,則執(zhí)行后續(xù)步驟(4); (4)AAA服務器從xml文件或內存對象緩存組件中查找該用戶信息:若沒有找到該用戶信息,則拒絕該用戶的接入請求,流程結束;若找到該用戶信息,則執(zhí)行偽認證操作:從xml文件或內存對象緩存組件中讀取該用戶的相關信息,進行認證授權。
3.根據(jù)權利要求2所述的方法,其特征在于:所述步驟(4)中,AAA服務器從xml文件中讀取該用戶的公共NAI和VPN信息的偽認證操作包括下列內容: (41)在AAA服務器啟動或重讀配置時,如果數(shù)據(jù)庫連接成功,則從數(shù)據(jù)庫成功讀取NAI與VPN信息后,將相關信息寫到對應的xml文件中;或` (42)在AAA服務器啟動或重讀配置時,如果數(shù)據(jù)庫連接錯誤,則從對應的xml文件中讀取NAI與VPN信息到內存中,創(chuàng)建并保存為相應的hash表,以供偽認證時提取相關信息。
4.根據(jù)權利要求2所述的方法,其特征在于:所述步驟(4)中,AAA服務器從內存對象緩存組件中讀取該用戶的MSI信息和綁定信息的偽認證操作包括下列內容: (4A) AAA服務器采用定時調用獨立程序的方式將IMSI信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件; (4B) AAA服務器執(zhí)行偽認證時,則以MSI+’ auth’為關鍵字從內存對象緩存組件中獲取該用戶的MSI信息和綁定信息,用于MDN授權、綁定校驗、漫游權限控制和組授權。
5.根據(jù)權利要求4所述的方法,其特征在于:所述AAA服務器將IMSI信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件的過程中,數(shù)據(jù)庫和內存對象緩存組件之間的連接采用連接池方式,以避免臨時創(chuàng)建連接造成的時延與資源消耗;所述連接池方式是在啟動時,加載配置中的全部數(shù)據(jù)庫處于連接狀態(tài),以便在數(shù)據(jù)庫群中的某個數(shù)據(jù)庫無法正常響應時,自動選擇其他有效數(shù)據(jù)庫作為數(shù)據(jù)庫的連接提供者,以提高工作可靠性,且避免臨時創(chuàng)建連接所帶來的時延與資源消耗。
6.根據(jù)權利要求4所述的方法,其特征在于:所述步驟(4A)中,AAA服務器采用多線程方式執(zhí)行數(shù)據(jù)庫的導入存儲操作,即當要導入的數(shù)據(jù)庫表中的數(shù)據(jù)大于設定數(shù)值時,將要讀取的數(shù)據(jù)庫表按照固定數(shù)目的線程進行分頁后,再將不同的頁交由不同的線程處理。
7.根據(jù)權利要求4所述的方法,其特征在于:因電信運營商的業(yè)務網(wǎng)絡中的IMSI信息為海量數(shù)據(jù),故內存對象緩存組件是以1:1的主從方式配置有多組,AAA服務器按照MSI取模分發(fā)導入各個相應的內存對象緩存組件,以緩解內存壓力和提高查詢速度。
8.根據(jù)權利要求4所述的方法,其特征在于:所述綁定信息因其數(shù)量較少,無需采用分發(fā)方式存儲,只要導入存儲于第一組內存對象緩存組件中。
9.根據(jù)權利要求4所述的方法,其特征在于:所述步驟(4A)中,AAA服務器采用_ntab方式、即定時調用獨立程序的方式將IMSI相關信息和綁定信息從數(shù)據(jù)庫導入存儲于內存對象緩存組件,該調用的周期和調用時段都是可配置的:調用周期為每周一次,并選擇業(yè)務相對空閑時段執(zhí)行,避免導入`操作影響正常的電信業(yè)務。
【文檔編號】H04W12/06GK103533544SQ201310470260
【公開日】2014年1月22日 申請日期:2013年10月10日 優(yōu)先權日:2013年10月10日
【發(fā)明者】陳濤, 譚立彥, 李學春, 王菲 申請人:北京首信科技股份有限公司