用戶信息同步的方法、裝置及接入設(shè)備的制造方法
【專利摘要】本發(fā)明提供一種用戶信息同步的方法、裝置及接入設(shè)備,該方法應(yīng)用在接入設(shè)備的第一主控板上,包括:當(dāng)?shù)谝恢骺匕鍐?dòng)時(shí),與第二主控板建立第一TCP連接;從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,第一用戶為認(rèn)證通過的用戶;通過第一TCP連接向第二主控板發(fā)送第一批量信息。應(yīng)用本發(fā)明實(shí)施例,在兩個(gè)主控板之間進(jìn)行用戶信息同步時(shí),主用主控板可以從本地內(nèi)存中獲取用戶信息,并通過TCP連接將用戶信息同步到備用主控板,因此,避免在用戶信息同步時(shí)對(duì)數(shù)據(jù)庫進(jìn)行I/O操作,從而提高用戶信息同步的效率,另外,主用主控板與備用主控板通過TCP連接傳輸用戶信息,可以保障用戶信息同步的可靠性。
【專利說明】
用戶信息同步的方法、裝置及接入設(shè)備
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種用戶信息同步的方法、裝置及接入設(shè)備。
【背景技術(shù)】
[0002]PORTAL認(rèn)證功能通常在接入設(shè)備中開啟,為了提高接入設(shè)備工作的可靠性,可以在接入設(shè)備中配置兩塊主控板,即Master MPU (Master Micro Processor Unit,主用主控板)和Slave MPU (Slave Micro Processor Unit,備用主控板),主用主控板正常工作時(shí),其可以將通過PORTAL認(rèn)證的用戶的用戶信息同步到備用主控板中,使備用主控板和主用主控板具有相同的用戶信息,當(dāng)主用主控板宕機(jī)時(shí),備用主控板可以立即切換為主用主控板,從而保障接入設(shè)備的相關(guān)業(yè)務(wù)不被中斷,因此,主用主控板和備用主控板之間高效、可靠地同步用戶信息是保證接入設(shè)備穩(wěn)定、可靠地工作的前提。
[0003]相關(guān)技術(shù)中,在主備主控板之間進(jìn)行用戶信息同步時(shí),主用主控板需要將用戶信息寫入到其數(shù)據(jù)庫中,然后再同步到備用主控板的數(shù)據(jù)庫中,在這個(gè)過程中,需要對(duì)數(shù)據(jù)庫進(jìn)行1/0 (Input/Output,輸入/輸出)操作,然而,由于數(shù)據(jù)庫位于CF卡(Compact Flashcard)上,CF卡屬于非易失性存儲(chǔ)設(shè)備,讀寫速度較慢,導(dǎo)致1/0操作所需時(shí)間較長,因此,主備主控板之間用戶信息同步效率較低。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供一種用戶信息同步的方法、裝置及接入設(shè)備,以提高主備主控板之間用戶信息同步的效率。
[0005]具體地,本發(fā)明是通過如下技術(shù)方案實(shí)現(xiàn)的:
[0006]本發(fā)明的第一方面,提供一種用戶信息同步的方法,應(yīng)用在接入設(shè)備的第一主控板上,所述方法包括:
[0007]當(dāng)所述第一主控板啟動(dòng)時(shí),與第二主控板建立第一 TCP連接;
[0008]從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶;
[0009]通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。
[0010]本發(fā)明的第二方面,提供一種用戶信息同步的裝置,應(yīng)用在接入設(shè)備的第一主控板上,所述裝置包括:
[0011]第一連接單元,用于當(dāng)所述第一主控板啟動(dòng)時(shí),與第二主控板建立第一 TCP連接;
[0012]獲取單元,用于從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶;
[0013]第一發(fā)送單元,用于通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量
?目息O
[0014]本發(fā)明的第三方面,提供一種接入設(shè)備,包括第一主控板和第二主控板,所述第一主控板與所述第二主控板通過背板交換芯片連接,
[0015]所述第一主控板啟動(dòng)后與第二主控板建立第一 TCP連接;從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶;通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。
[0016]應(yīng)用本發(fā)明實(shí)施例,在兩個(gè)主控板之間進(jìn)行用戶信息同步時(shí),主用主控板可以從本地內(nèi)存中獲取用戶信息,并通過TCP連接將用戶信息同步到備用主控板,因此,避免在用戶信息同步時(shí)對(duì)數(shù)據(jù)庫進(jìn)行I/O操作,從而提高用戶信息同步的效率,另外,主用主控板與備用主控板通過TCP連接傳輸用戶信息,可以保障用戶信息同步的可靠性。
【附圖說明】
[0017]圖1是本發(fā)明一示例性實(shí)施例示出的一種接入設(shè)備的結(jié)構(gòu)框圖;
[0018]圖2是本發(fā)明一示例性實(shí)施例示出的一種用戶信息同步的方法的流程示意圖;
[0019]圖3是本發(fā)明一示例性實(shí)施例示出的一種封裝用戶信息的報(bào)文格式的結(jié)構(gòu)示意圖;
[0020]圖4是本發(fā)明一示例性實(shí)施例示出的一種用戶信息同步的裝置所在設(shè)備的一種硬件結(jié)構(gòu)圖;
[0021]圖5是本發(fā)明一示例性實(shí)施例示出的一種用戶信息同步的裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0022]這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
[0023]在本發(fā)明使用的術(shù)語是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本發(fā)明。在本發(fā)明和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
[0024]應(yīng)當(dāng)理解,盡管在本發(fā)明可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本發(fā)明范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”。
[0025]圖1是本發(fā)明一示例性實(shí)施例示出的一種接入設(shè)備的結(jié)構(gòu)框圖。
[0026]如圖1所示,接入設(shè)備可以包括主用主控板、備用主控板以及背板交換芯片,其中,背板交換芯片可以用于連接主用主控板和備用主控板,可以提高主用主控板和備用主控板之間的通信傳輸速率。具體地,每個(gè)主控板可以通過其內(nèi)部接口與背板交換芯片的槽位連接,進(jìn)而,根據(jù)所在槽位可以為每個(gè)主控板的內(nèi)部接口分配一個(gè)本地IP地址,例如,若內(nèi)部接口連接槽位為偶數(shù)位,假設(shè)為四槽,則可以為該內(nèi)部接口分配偶數(shù)的本地IP地址,比如,127.1.0.6,而若內(nèi)部接口連接槽位為奇數(shù)位,假設(shè)為三槽,則可以為該內(nèi)部接口分配奇數(shù)的本地IP地址,比如,127.1.0.7,當(dāng)兩個(gè)主控板完成主備協(xié)商后,可以根據(jù)內(nèi)部接口的本地IP地址識(shí)別主用主控板和備用主控板。
[0027]當(dāng)用戶進(jìn)行PORTAL認(rèn)證時(shí),若認(rèn)證通過,則主用主控板可以將該用戶的用戶信息存儲(chǔ)到本地內(nèi)存中,并將用戶信息同步至備用主控板,保障主用主控板和備用主控板具有相同的用戶信息,在主用主控板異常時(shí),備用主控板可以切換為主用主控板,從而確保PORTAL認(rèn)證的相關(guān)業(yè)務(wù)處理(例如,將用戶信息中的計(jì)費(fèi)信息發(fā)送給RADIUS服務(wù)器)不會(huì)因主用主控板故障而被中斷。
[0028]需要說明的是,用戶信息可以包括但不限于用戶名、用戶IP地址、用戶上線時(shí)間、上行/下行流量、上行/下行速率以及上行/下行流量數(shù)據(jù)包的個(gè)數(shù),其中,計(jì)費(fèi)信息可以包括但不限于用戶上線時(shí)間、上行/下行流量、上行/下行速率以及上行/下行流量數(shù)據(jù)包的個(gè)數(shù)。
[0029]在本發(fā)明實(shí)施例中,可以通過第一主控板和第二主控板描述本發(fā)明的用戶信息同步的處理流程,當(dāng)?shù)谝恢骺匕鍨橹饔弥骺匕鍟r(shí),第二主控板為備用主控板,反之,當(dāng)?shù)谝恢骺匕鍨閭溆弥骺匕鍟r(shí),第二主控板為主用主控板,本發(fā)明對(duì)此不作限制。
[0030]具體而言,當(dāng)?shù)谝恢骺匕鍐?dòng)時(shí),可以與第二主控板建立第一 TCP連接,并從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,其中,第一用戶為認(rèn)證通過的用戶,再通過第一 TCP連接向第二主控板發(fā)送第一批量信息,實(shí)現(xiàn)兩個(gè)主控板之間用戶信息同步。
[0031]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例中技術(shù)方案作進(jìn)一步詳細(xì)的說明。
[0032]圖2是本發(fā)明一示例性實(shí)施例示出的一種用戶信息同步的方法的流程示意圖。
[0033]如圖2所示,一種用戶信息同步的方法,應(yīng)用在接入設(shè)備的第一主控板上,該方法包括:
[0034]步驟101,當(dāng)?shù)谝恢骺匕鍐?dòng)時(shí),與第二主控板建立第一 TCP連接。
[0035]在本步驟中,在接入設(shè)備啟動(dòng)后,第一主控板和第二主控板在完成主備協(xié)商后,其中一個(gè)主控板可以向?qū)Χ酥骺匕灏l(fā)送TCP請(qǐng)求,例如,第一主控板向第二主控板發(fā)送TCP請(qǐng)求,或者第二主控板向所述第一主控板發(fā)送TCP請(qǐng)求,本發(fā)明對(duì)此不作限制,兩個(gè)主控板之間經(jīng)過TCP三次握手后,建立第一 TCP連接。
[0036]步驟102,從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,其中,第一用戶為認(rèn)證通過的用戶。
[0037]在本步驟中,在第一主控板與第二主控板成功建立第一 TCP連接后,第二主控板可以向第一主控板發(fā)送一個(gè)批量備份請(qǐng)求,第一主控板可以根據(jù)該批量備份請(qǐng)求從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息。作為一種可選方式,第一主控板還可以主動(dòng)向第二主控板同步用戶信息,具體地,在成功建立第一 TCP連接后,第一主控板在未接收到第二主控板發(fā)送批量備份請(qǐng)求的情況下,也可以從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息。
[0038]步驟103,通過第一 TCP連接向第二主控板發(fā)送第一批量信息。
[0039]應(yīng)用該實(shí)施例,在進(jìn)行用戶信息同步時(shí),第一主控板可以從第一本地內(nèi)存中獲取需要同步的用戶信息,因此,避免對(duì)數(shù)據(jù)庫進(jìn)行I/O操作,從而提高用戶信息同步的效率,另外,通過TCP連接傳輸用戶信息,可以保障用戶信息同步的可靠性。
[0040]根據(jù)本發(fā)明的優(yōu)選實(shí)施例,在步驟103之后,當(dāng)任一第二用戶(可以為正在進(jìn)行PORTAL認(rèn)證的用戶)認(rèn)證通過時(shí),第一主控板可以通過向第二主控板發(fā)送第一TCP請(qǐng)求,與第二主控板建立第二 TCP連接,其中,第二 TCP連接為TCP長連接,在成功建立第二 TCP連接后,第一主控板可以向第二主控板發(fā)送第二用戶的用戶信息,從而將用戶信息實(shí)時(shí)地同步至第二主控板,應(yīng)用該優(yōu)選實(shí)施例,采用TCP長連接進(jìn)行用戶信息傳輸,避免在進(jìn)行用戶信息實(shí)時(shí)同步的過程中,不斷地建立和釋放TCP連接,從而減少時(shí)間耗費(fèi),提高用戶信息同步效率。
[0041]本技術(shù)領(lǐng)域人員可以理解的是,當(dāng)兩個(gè)主控板中的任一個(gè)出現(xiàn)異常時(shí),例如,第一主控板異常宕機(jī)時(shí),將會(huì)導(dǎo)致兩個(gè)主控板之間TCP長連接(例如,第二 TCP連接)異常,卻不能得到釋放,這樣,會(huì)導(dǎo)致系統(tǒng)資源的浪費(fèi),且會(huì)造成用戶信息同步失敗,針對(duì)這一問題,本發(fā)明提供一種優(yōu)選實(shí)施例,如果第一主控板重啟(比如,宕機(jī)后重啟),重啟后的第一主控板可以通過向第二主控板發(fā)送第二 TCP請(qǐng)求,從而與第二主控板建立第三TCP連接,并通過第三TCP連接向第二主控板發(fā)送批量備份請(qǐng)求,并接收第二主控板發(fā)送的第二批量信息,其中,該第二批量信息可以包括第二主控板根據(jù)批量備份請(qǐng)求,從第二本地內(nèi)存中獲取的至少一個(gè)第一用戶的用戶信息。通過該優(yōu)選實(shí)施例,兩個(gè)主控板之間可以通過新建立的TCP連接進(jìn)行用戶信息同步,保障用戶信息同步的可靠性,另外,第二主控板在接收到第二備份信息后,還可以關(guān)閉第二 TCP連接,從而避免因異常的TCP長連接得不到釋放而浪費(fèi)系統(tǒng)資源。
[0042]作為一種可選方式,在成功建立第三TCP連接后,第二主控板也可以主動(dòng)向重啟后的第一主控板同步第二批量信息,具體地,第一主控板不向第二主控板發(fā)送批量備份請(qǐng)求,第二主控板在確定成功建立第三TCP連接后,可以從第二本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第二批量信息,進(jìn)一步地,在這種情況下,第二主控板可以在確定成功建立第三TCP連接后,可以關(guān)閉第二 TCP連接。
[0043]優(yōu)選地,如果第一主控板異常且未重啟,則可以從TCP長連接的保持存活(Ke印Alive)選項(xiàng)設(shè)置存活周期,例如,2小時(shí),在達(dá)到該存活周期時(shí)關(guān)閉該TCP長連接。
[0044]根據(jù)本發(fā)明的另一優(yōu)選實(shí)施例,在開啟PORTAL認(rèn)證功能的接入設(shè)備中,第一主控板可以從第一本地內(nèi)存中申請(qǐng)存儲(chǔ)空間,以生成空閑鏈表和非空閑鏈表,當(dāng)獲取到第一用戶的用戶信息時(shí),從空閑鏈表中獲取一個(gè)節(jié)點(diǎn),并將第一用戶的用戶信息存儲(chǔ)到該節(jié)點(diǎn)中,且將存儲(chǔ)有用戶信息的節(jié)點(diǎn)插入到非空閑鏈表中,從而實(shí)現(xiàn)對(duì)用戶信息的存儲(chǔ);另一方面,當(dāng)?shù)谝挥脩粝戮€時(shí),可以釋放存儲(chǔ)該第一用戶的用戶信息的節(jié)點(diǎn),并將釋放后的節(jié)點(diǎn)插入到空閑鏈表的表頭。優(yōu)選地,可以將第一用戶的用戶信息存儲(chǔ)到空閑鏈表的表頭的節(jié)點(diǎn)中,這樣,在用戶信息存儲(chǔ)時(shí),無須遍歷整個(gè)空閑鏈表,節(jié)省存儲(chǔ)時(shí)間??蛇x地,用戶信息中的一些信息會(huì)隨著用戶的上線時(shí)間而變化(下面將其稱為變量信息),例如,上行/下行流量、上行/下行速率以及上行/下行流量數(shù)據(jù)包的個(gè)數(shù),所以實(shí)時(shí)更新非空閑鏈表中存儲(chǔ)的變量信息,具體地,可以根據(jù)用戶信息中不會(huì)變化的信息,例如,用戶名、用戶IP地址,查找到非空閑鏈表中存儲(chǔ)該用戶信息的節(jié)點(diǎn),并對(duì)用戶信息中的變量信息進(jìn)行更新,并同步至第二主控板。
[0045]基于上述優(yōu)選實(shí)施例,步驟102進(jìn)一步可以包括:從非空閑鏈表中獲取至少一個(gè)第一用戶的用戶信息,并將至少一個(gè)第一用戶的用戶信息封裝到至少一個(gè)報(bào)文中。圖3是本發(fā)明一示例性實(shí)施例示出的一種封裝用戶信息的報(bào)文格式的結(jié)構(gòu)示意圖,如圖3所示,該TCP報(bào)文可以包括但不限于同步信息類型(比如,用戶認(rèn)證通過或者用戶下線等)、用戶信息個(gè)數(shù)以及用戶信息,其中,用戶信息可以包括用戶信息1、用戶信息2……用戶信息n,根據(jù)如圖3中所示的報(bào)文格式,假設(shè)每個(gè)用戶信息的長度是固定的,則一個(gè)TCP報(bào)文可以封裝的用戶信息個(gè)數(shù)可以通過如下(I)式計(jì)算得到:
[0046]用戶信息個(gè)數(shù)=(報(bào)文長度一同步信息類型的長度一用戶信息個(gè)數(shù)的長度)+每個(gè)用戶信息的長度......................................................(I)式,
[0047]舉例來說,假設(shè)同步信息類型的長度為4個(gè)字節(jié),用戶信息個(gè)數(shù)的長度為4字節(jié),每個(gè)用戶信息的長度為64字節(jié),通過(I)式計(jì)算可知,每個(gè)TCP報(bào)文可以封裝1023個(gè)用戶信息,將這些用戶信息封裝到一個(gè)TCP報(bào)文后,再執(zhí)行步驟103,步驟103具體可以為通過第一 TCP連接向第二主控板發(fā)送報(bào)文。
[0048]通過該優(yōu)選實(shí)施例,每個(gè)TCP報(bào)文可以傳輸多個(gè)用戶信息,減少報(bào)文傳輸?shù)念l率,且節(jié)省報(bào)文封裝和解封的時(shí)間耗費(fèi),從而可以提高兩個(gè)主控板之間用戶信息同步的效率。
[0049]綜上所述,在兩個(gè)主控板之間進(jìn)行用戶信息同步時(shí),主用主控板可以從本地內(nèi)存中獲取用戶信息,并通過TCP連接將用戶信息同步到備用主控板,因此,避免在用戶信息同步時(shí)對(duì)數(shù)據(jù)庫進(jìn)行I/O操作,從而提高用戶信息同步的效率,另外,主用主控板與備用主控板通過TCP連接傳輸用戶信息,可以保障用戶信息同步的可靠性。
[0050]與前述用戶信息同步的方法的實(shí)施例相對(duì)應(yīng),本發(fā)明還提供了用戶信息同步的裝置的實(shí)施例。
[0051]本發(fā)明用戶信息同步的裝置500的實(shí)施例可以應(yīng)用在接入設(shè)備的第一主控板上。裝置實(shí)施例可以通過軟件實(shí)現(xiàn),也可以通過硬件或者軟硬件結(jié)合的方式實(shí)現(xiàn)。以軟件實(shí)現(xiàn)為例,作為一個(gè)邏輯意義上的裝置,是通過其所在設(shè)備的處理器將非易失性存儲(chǔ)器中對(duì)應(yīng)的計(jì)算機(jī)程序指令讀取到內(nèi)存中運(yùn)行形成的。從硬件層面而言,如圖4所示,為本發(fā)明用戶信息同步的裝置所在設(shè)備的一種硬件結(jié)構(gòu)圖,除了圖4所示的處理器、內(nèi)存、網(wǎng)絡(luò)接口、以及非易失性存儲(chǔ)器之外,實(shí)施例中裝置500所在的設(shè)備通常根據(jù)該設(shè)備的實(shí)際功能,還可以包括其他硬件,對(duì)此不再贅述。
[0052]圖5是本發(fā)明一示例性實(shí)施例示出的一種用戶信息同步的裝置的結(jié)構(gòu)示意圖。
[0053]如圖5所示,一種用戶信息同步的裝置500,應(yīng)用在接入設(shè)備的第一主控板上,該裝置500包括第一連接單元501、獲取單元502和第一發(fā)送單元503。
[0054]第一連接單元501用于當(dāng)所述第一主控板啟動(dòng)時(shí),與第二主控板建立第一 TCP連接。
[0055]獲取單元502用于從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶。
[0056]第一發(fā)送單元503用于通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。
[0057]根據(jù)本發(fā)明的優(yōu)選實(shí)施例,一種用戶信息同步的裝置500還可以包括鏈表生成單元、信息存儲(chǔ)單元和節(jié)點(diǎn)釋放單元,其中,鏈表生成單元,用于從所述第一本地內(nèi)存中申請(qǐng)存儲(chǔ)空間,以生成空閑鏈表和非空閑鏈表;信息存儲(chǔ)單元,用于當(dāng)獲取到所述第一用戶的用戶信息時(shí),從所述空閑鏈表中獲取一個(gè)節(jié)點(diǎn),并將所述第一用戶的用戶信息存儲(chǔ)到所述節(jié)點(diǎn)中,將存儲(chǔ)有所述用戶信息的節(jié)點(diǎn)插入到非空閑鏈表中;節(jié)點(diǎn)釋放單元,用于當(dāng)所述第一用戶下線時(shí),釋放所述非空閑鏈表中存儲(chǔ)所述第一用戶的用戶信息的節(jié)點(diǎn),并將釋放后的節(jié)點(diǎn)插入到所述空閑鏈表的表頭。
[0058]基于上述優(yōu)選實(shí)施例,獲取單元502可以包括獲取子單元和封裝子單元,其中,獲取子單元,用于從所述非空閑鏈表中獲取至少一個(gè)第一用戶的用戶信息;封裝子單元,用于將所述至少一個(gè)第一用戶的用戶信息封裝到至少一個(gè)報(bào)文中,并且,第一發(fā)送單元503可以包括發(fā)送子單元,用于通過所述第一 TCP連接向所述第二主控板發(fā)送所述報(bào)文。
[0059]根據(jù)本發(fā)明的另一優(yōu)選實(shí)施例,一種用戶信息同步的裝置500還可以包括第二連接單元和第二發(fā)送單元,其中,第二連接單元,用于在通過第一 TCP連接向所述第二主控板發(fā)送第一批量信息之后,當(dāng)任一第二用戶認(rèn)證通過時(shí),通過向所述第二主控板發(fā)送第一 TCP請(qǐng)求,與所述第二主控板建立第二 TCP連接,所述第二 TCP連接為TCP長連接;第二發(fā)送單元,用于通過所述第二 TCP連接向所述第二主控板發(fā)送該第二用戶的用戶信息。
[0060]根據(jù)本發(fā)明的另一優(yōu)選實(shí)施例,一種用戶信息同步的裝置500還可以包括第三連接單元、第三發(fā)送單元和接收單元,其中,第三連接單元,用于當(dāng)所述第一主控板重啟時(shí),通過向所述第二主控板發(fā)送第二 TCP請(qǐng)求,與所述第二主控板建立第三TCP連接;第三發(fā)送單元,用于通過所述第三TCP連接,向所述第二主控板發(fā)送批量備份請(qǐng)求;接收單元,用于接收所述第二主控板通過所述第三TCP連接發(fā)送的第二批量信息,所述第二批量信息包括所述第二主控板根據(jù)所述批量備份請(qǐng)求從第二本地內(nèi)存中獲取的至少一個(gè)第一用戶的用戶?目息O
[0061]上述裝置中各個(gè)單元的功能和作用的實(shí)現(xiàn)過程具體詳見上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過程,在此不再贅述。
[0062]對(duì)于裝置實(shí)施例而言,由于其基本對(duì)應(yīng)于方法實(shí)施例,所以相關(guān)之處參見方法實(shí)施例的部分說明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本發(fā)明方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。
[0063]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種用戶信息同步的方法,其特征在于,應(yīng)用在接入設(shè)備的第一主控板上,所述方法包括: 當(dāng)所述第一主控板啟動(dòng)時(shí),與第二主控板建立第一 TCP連接; 從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶; 通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 從所述第一本地內(nèi)存中申請(qǐng)存儲(chǔ)空間,以生成空閑鏈表和非空閑鏈表; 當(dāng)獲取到所述第一用戶的用戶信息時(shí),從所述空閑鏈表中獲取一個(gè)節(jié)點(diǎn),并將所述第一用戶的用戶信息存儲(chǔ)到所述節(jié)點(diǎn)中,將存儲(chǔ)有所述用戶信息的節(jié)點(diǎn)插入到非空閑鏈表中; 當(dāng)所述第一用戶下線時(shí),釋放所述非空閑鏈表中存儲(chǔ)所述第一用戶的用戶信息的節(jié)點(diǎn),并將釋放后的節(jié)點(diǎn)插入到所述空閑鏈表的表頭。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,包括: 從所述非空閑鏈表中獲取至少一個(gè)第一用戶的用戶信息; 將所述至少一個(gè)第一用戶的用戶信息封裝到至少一個(gè)報(bào)文中; 所述通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息,具體為: 通過所述第一 TCP連接向所述第二主控板發(fā)送所述報(bào)文。4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在通過第一 TCP連接向所述第二主控板發(fā)送第一批量信息之后,當(dāng)任一第二用戶認(rèn)證通過時(shí),通過向所述第二主控板發(fā)送第一 TCP請(qǐng)求,與所述第二主控板建立第二 TCP連接,所述第二 TCP連接為TCP長連接; 通過所述第二 TCP連接向所述第二主控板發(fā)送該第二用戶的用戶信息。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 當(dāng)所述第一主控板重啟時(shí),通過向所述第二主控板發(fā)送第二 TCP請(qǐng)求,與所述第二主控板建立第三TCP連接; 通過所述第三TCP連接,向所述第二主控板發(fā)送批量備份請(qǐng)求; 接收所述第二主控板通過所述第三TCP連接發(fā)送的第二批量信息,所述第二批量信息包括所述第二主控板根據(jù)所述批量備份請(qǐng)求從第二本地內(nèi)存中獲取的至少一個(gè)第一用戶的用戶信息。6.一種用戶信息同步的裝置,其特征在于,應(yīng)用在接入設(shè)備的第一主控板上,所述裝置包括: 第一連接單元,用于當(dāng)所述第一主控板啟動(dòng)時(shí),與第二主控板建立第一 TCP連接; 獲取單元,用于從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶; 第一發(fā)送單元,用于通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 鏈表生成單元,用于從所述第一本地內(nèi)存中申請(qǐng)存儲(chǔ)空間,以生成空閑鏈表和非空閑鏈表; 信息存儲(chǔ)單元,用于當(dāng)獲取到所述第一用戶的用戶信息時(shí),從所述空閑鏈表中獲取一個(gè)節(jié)點(diǎn),并將所述第一用戶的用戶信息存儲(chǔ)到所述節(jié)點(diǎn)中,將存儲(chǔ)有所述用戶信息的節(jié)點(diǎn)插入到非空閑鏈表中; 節(jié)點(diǎn)釋放單元,用于當(dāng)所述第一用戶下線時(shí),釋放所述非空閑鏈表中存儲(chǔ)所述第一用戶的用戶信息的節(jié)點(diǎn),并將釋放后的節(jié)點(diǎn)插入到所述空閑鏈表的表頭。8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述獲取單元包括: 獲取子單元,用于從所述非空閑鏈表中獲取至少一個(gè)第一用戶的用戶信息; 封裝子單元,用于將所述至少一個(gè)第一用戶的用戶信息封裝到至少一個(gè)報(bào)文中; 所述第一發(fā)送單元包括: 發(fā)送子單元,用于通過所述第一 TCP連接向所述第二主控板發(fā)送所述報(bào)文。9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 第二連接單元,用于在通過第一 TCP連接向所述第二主控板發(fā)送第一批量信息之后,當(dāng)任一第二用戶認(rèn)證通過時(shí),通過向所述第二主控板發(fā)送第一 TCP請(qǐng)求,與所述第二主控板建立第二 TCP連接,所述第二 TCP連接為TCP長連接; 第二發(fā)送單元,用于通過所述第二 TCP連接向所述第二主控板發(fā)送該第二用戶的用戶?目息O10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 第三連接單元,用于當(dāng)所述第一主控板重啟時(shí),通過向所述第二主控板發(fā)送第二 TCP請(qǐng)求,與所述第二主控板建立第三TCP連接; 第三發(fā)送單元,用于通過所述第三TCP連接,向所述第二主控板發(fā)送批量備份請(qǐng)求; 接收單元,用于接收所述第二主控板通過所述第三TCP連接發(fā)送的第二批量信息,所述第二批量信息包括所述第二主控板根據(jù)所述批量備份請(qǐng)求從第二本地內(nèi)存中獲取的至少一個(gè)第一用戶的用戶信息。11.一種接入設(shè)備,其特征在于,包括第一主控板和第二主控板,所述第一主控板與所述第二主控板通過背板交換芯片連接, 所述第一主控板啟動(dòng)后與第二主控板建立第一 TCP連接;從第一本地內(nèi)存中獲取至少一個(gè)第一用戶的用戶信息,形成第一批量信息,所述第一用戶為認(rèn)證通過的用戶;通過所述第一 TCP連接向所述第二主控板發(fā)送所述第一批量信息。
【文檔編號(hào)】H04L29/08GK105939366SQ201510398032
【公開日】2016年9月14日
【申請(qǐng)日】2015年7月3日
【發(fā)明人】仇俊杰
【申請(qǐng)人】杭州迪普科技有限公司