專利名稱:高可靠性網(wǎng)絡(luò)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及配置和運(yùn)行網(wǎng)絡(luò)以向訂購者提供服務(wù)的方法,以提供高可靠 性服務(wù),該網(wǎng)絡(luò)例如寬帶通信網(wǎng)絡(luò)。
背景技術(shù):
附圖1顯示了向位于很多位置上的訂購者提供電話、互聯(lián)網(wǎng)和電視/視
頻服務(wù)的寬帶網(wǎng)絡(luò)的總體描述。借助通常的接入點(diǎn)12, 一系列服務(wù)提供者 向網(wǎng)絡(luò)IO提供各種服務(wù)(SP1, SP2, SP3)。借助位于與訂購者較近的位置 上的路由器14,網(wǎng)絡(luò)IO提供服務(wù)提供者與訂購者之間的連接。這些位置包 含可以在商業(yè)區(qū)16內(nèi)具有路由器的商業(yè)位置,和在中心辦公室18或者單 獨(dú)建筑物19內(nèi)具有路由器的內(nèi)部訂閱者,該中心辦公室18用作單獨(dú)住房 (房屋17)的鄰居,該單獨(dú)建筑物19例如公寓樓。
網(wǎng)絡(luò)的運(yùn)行由控制與供應(yīng)系統(tǒng)20加以控制,該控制與供應(yīng)系統(tǒng)對網(wǎng)絡(luò) 中的各種元件加以配置,以使其按照預(yù)定的模式運(yùn)行。
對于控制與供應(yīng)系統(tǒng)20的功能而言,以抽象的方式,網(wǎng)絡(luò)可以被認(rèn)為 包含具有一個或者多個單元24的核心22,如附圖2所示,每個單元具有一 個或者多個網(wǎng)絡(luò)元件26。訂購者28連接到網(wǎng)絡(luò)元件26。該結(jié)構(gòu)不能與組 成網(wǎng)絡(luò)的物理元件混淆。根據(jù)所討論的網(wǎng)絡(luò)的精確尺寸和結(jié)構(gòu),盡管在典 型的情況下每個網(wǎng)絡(luò)元件26包含路由器,但是功能模塊22、 24、 26可以 全部地或者部分地駐留于相同的或者不同的物理元件中。
借助控制與供應(yīng)系統(tǒng)20的使用,操作者管理網(wǎng)絡(luò)的功能,該控制與供 應(yīng)系統(tǒng)具有下述功能確定每個網(wǎng)絡(luò)元件26的功能,和確定以及管理用戶 的功能和操作。主要的控制在核心22的層次上起作用,該核心定義了網(wǎng)絡(luò) 的拓?fù)浣Y(jié)構(gòu)和配置情況,該作用包括配置物理或者邏輯鏈路,指定IP地址 和使得連接到網(wǎng)絡(luò)的用戶可以使用特定服務(wù)。在現(xiàn)有系統(tǒng)中,網(wǎng)絡(luò)的配置 數(shù)據(jù)存儲于可以借助應(yīng)用編程接口 (API)訪問的核心數(shù)據(jù)庫中。在啟動中,網(wǎng)絡(luò)模塊不包含任何配置數(shù)據(jù)。當(dāng)需要的時(shí)候,例如在新的裝置連接到網(wǎng) 絡(luò)模塊的時(shí)候,網(wǎng)絡(luò)模塊訪問數(shù)據(jù)庫并且將必要的配置數(shù)據(jù)本地緩存,其 保存在該位置直到發(fā)生改變。當(dāng)網(wǎng)絡(luò)配置發(fā)生改變的時(shí)候,數(shù)據(jù)庫發(fā)生改 變并且警告信號通過網(wǎng)絡(luò)傳送到網(wǎng)絡(luò)模塊,該網(wǎng)絡(luò)模塊接著查詢數(shù)據(jù)庫以 發(fā)現(xiàn)改變的信息,該改變的信息接著加載到網(wǎng)絡(luò)模塊中的相應(yīng)數(shù)據(jù)庫中, 在該網(wǎng)絡(luò)模塊中該改變的數(shù)據(jù)得以緩存(網(wǎng)絡(luò)模塊數(shù)據(jù)庫具有與核心數(shù)據(jù) 庫相同的結(jié)構(gòu),但是僅僅具有配置網(wǎng)絡(luò)模塊及其從屬的網(wǎng)絡(luò)元件所需要的 數(shù)據(jù))。
由于控制與供應(yīng)系統(tǒng)20的部分失效會導(dǎo)致整個系統(tǒng)無法向訂購者提供 服務(wù),備用或者輔助系統(tǒng)得以提出,從而當(dāng)主系統(tǒng)失效的時(shí)候,操作能夠 轉(zhuǎn)移到備份中,從而在主系統(tǒng)的問題得以解決的同時(shí),服務(wù)的提供能夠得 以持續(xù)。 一旦主系統(tǒng)的問題得以解決,操作從輔助系統(tǒng)轉(zhuǎn)移到主系統(tǒng),該 主系統(tǒng)接著繼續(xù)操作直到再次出現(xiàn)問題。該目標(biāo)在網(wǎng)絡(luò)系統(tǒng)中是普遍存在 的。
主系統(tǒng)和輔助系統(tǒng)都包含數(shù)據(jù)庫,在操作過程中該數(shù)據(jù)庫持續(xù)地得 以改變。如果運(yùn)行系統(tǒng)的數(shù)據(jù)庫發(fā)生改變,那么問題出現(xiàn),該改變不會傳 送給其他變成運(yùn)行的系統(tǒng)。
發(fā)明內(nèi)容
在本發(fā)明中,系統(tǒng)包含用于控制整個網(wǎng)絡(luò)的操作的核心系統(tǒng),用于整個 網(wǎng)絡(luò)中特定部分的控制操作的一個或者多個單元,以及與訂購者連接的網(wǎng) 絡(luò)元件(例如路由器)。
本發(fā)明的一個方面包括, 一種操作網(wǎng)絡(luò)以向訂購者提供服務(wù)的方法,包 含配置系統(tǒng)的網(wǎng)絡(luò)包括
-核心系統(tǒng),該核心系統(tǒng)包含主核心和輔助核心,每個核心包含網(wǎng)絡(luò)配 置數(shù)據(jù),并且每個核心單獨(dú)能夠控制整個網(wǎng)絡(luò)和配置系統(tǒng)的操作;
-至少一個單元,其連接到核心系統(tǒng)并且能夠控制網(wǎng)絡(luò)的特定部分,該 網(wǎng)絡(luò)包含至少一個連接到單元的網(wǎng)絡(luò)元件,每個網(wǎng)絡(luò)元件能夠向很多訂購
者提供服務(wù);
該方法包括-使用主核心操縱網(wǎng)絡(luò)和配置系統(tǒng),主核心以及輔助核心中的網(wǎng)絡(luò)配 置數(shù)據(jù)定期得以改變;
-監(jiān)測主核心操作中的故障事件,該故障使得主核心不能正確地控制
網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行;
-當(dāng)探測到故障事件的時(shí)候,將網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制轉(zhuǎn)移到輔 助核心;
-在校正故障事件從而主核心再次能夠正確地控制網(wǎng)絡(luò)和配置系統(tǒng)的 操作之后,配置輔助核心,從而網(wǎng)絡(luò)配置數(shù)據(jù)不再被改變,并且使得主核 心的網(wǎng)絡(luò)配置數(shù)據(jù)與輔助核心的網(wǎng)絡(luò)配置數(shù)據(jù)同步;和
-將網(wǎng)絡(luò)和配置系統(tǒng)的操作傳送回主核心。
優(yōu)選地,每個核心進(jìn)一步包括包含網(wǎng)絡(luò)配置數(shù)據(jù)的數(shù)據(jù)庫,在網(wǎng)絡(luò)和配 置系統(tǒng)的操作過程中,主核心的數(shù)據(jù)庫持續(xù)得以改變,并且主數(shù)據(jù)庫中的 網(wǎng)絡(luò)配置數(shù)據(jù)的改變被傳送到輔助數(shù)據(jù)庫,該方法包括,在將網(wǎng)絡(luò)和配置 系統(tǒng)的運(yùn)行控制數(shù)據(jù)傳送到輔助核心時(shí),以只讀的方式配置輔助數(shù)據(jù)庫, 從而在輔助核心控制網(wǎng)絡(luò)和配置系統(tǒng)的時(shí)間內(nèi),該輔助數(shù)據(jù)庫沒有改變。
可替換地,在網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制過程中,主核心數(shù)據(jù)庫中的配 置數(shù)據(jù)得以持續(xù)改變,并且主數(shù)據(jù)庫中網(wǎng)絡(luò)配置數(shù)據(jù)的改變被傳送到輔助 數(shù)據(jù)庫,該方法包括,在將網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制傳送到輔助核心的 時(shí)候,配置輔助核心,從而在網(wǎng)絡(luò)和配置系統(tǒng)的控制過程中,網(wǎng)絡(luò)配置數(shù) 據(jù)持續(xù)改變,并且同步配置的步驟進(jìn)一步包括使得主核心的數(shù)據(jù)庫與輔助 核心的數(shù)據(jù)庫同步。
典型地,在使用主核心的網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行過程中,輔助核心對運(yùn)
行中的主核心進(jìn)行鏡像,從而當(dāng)系統(tǒng)操作傳送到該輔助核心的時(shí)候,輔助 核心具有與主核心實(shí)質(zhì)相同的配置和數(shù)據(jù)庫。
每個核心包括監(jiān)測其他核心的操作的核心模塊元件管理器,兩個元件管 理器得以連接,'探測主核心失效的步驟包括,借助第二核心中的元件管理 器的方式監(jiān)測鏈路的狀態(tài),并且在鏈路失效超過預(yù)定時(shí)間的情況下標(biāo)識失 效。
每個核心還可以包括許多應(yīng)用模塊,每個核心的元件管理器控制該核心中的模塊的操作。 一個該模塊是配置工作管理器,其用于存儲和更新包含 整個網(wǎng)絡(luò)的配置數(shù)據(jù)以及與單元配置數(shù)據(jù)相關(guān)的配置數(shù)據(jù)的配置樹,與單 元配置數(shù)據(jù)相關(guān)的配置數(shù)據(jù)用于該單元所控制的網(wǎng)絡(luò)部分。
每個單元還包括用于控制該單元中的網(wǎng)絡(luò)的應(yīng)用模塊。一個該模塊包含 配置提供引擎,該提供引擎用于存儲單元的配置數(shù)據(jù)并且將單元的配置數(shù) 據(jù)部署到網(wǎng)絡(luò)元件中。
在進(jìn)一步的實(shí)施例中,每個單元包含主配置提供引擎和輔助配置提供引 擎,每一個都能夠控制單元和網(wǎng)絡(luò)元件,該方法進(jìn)一步包括
-從核心向兩個引擎提供關(guān)于該單元的配置數(shù)據(jù);
-監(jiān)測主引擎操作,以査找防止主引擎正確地控制單元和網(wǎng)絡(luò)元件的 操作的失效事件;
-當(dāng)探測到失效事件的時(shí)候,將單元和網(wǎng)絡(luò)元件的操作的控制傳送到 輔助引擎;
-接著對失效事件進(jìn)行校正,從而主引擎再次能夠正確地控制單元和 網(wǎng)絡(luò)元件的操作,使得主核心的配置與輔助核心的配置同步;和 -將單元和網(wǎng)絡(luò)元件的操作傳送回主引擎。
本發(fā)明的另一個方面包括用于向訂購者提供網(wǎng)絡(luò)服務(wù)的配置系統(tǒng),其包
括
-核心系統(tǒng),該核心系統(tǒng)包括主核心和輔助核心,每個核心包含網(wǎng)絡(luò) 配置數(shù)據(jù),并且每個核心單獨(dú)能夠控制整個網(wǎng)絡(luò)和配置系統(tǒng)的操作;
-至少一個單元,該單元連接到核心系統(tǒng)并且能夠控制網(wǎng)絡(luò)的特定部 分,該網(wǎng)絡(luò)包含至少一個與單元連接的網(wǎng)絡(luò)元件,每個網(wǎng)絡(luò)元件向許多訂 購者提供服務(wù);
-主核心控制正常使用的網(wǎng)絡(luò)和配置系統(tǒng)的操作;
其中該系統(tǒng)進(jìn)一步包括監(jiān)測系統(tǒng),該監(jiān)測系統(tǒng)用于 -探測防止主核心正確地控制配置系統(tǒng)的操作的失效事件,并且在探測到 失效事件的時(shí)候,將網(wǎng)絡(luò)和配置系統(tǒng)的操作控制轉(zhuǎn)換到輔助核心;
-接著對失效事件進(jìn)行校正,從而主引擎再次能夠正確地控制配置系 統(tǒng)的操作,配置輔助核心從而網(wǎng)絡(luò)配置數(shù)據(jù)不再改變,并且使得主引擎的配置與輔助引擎的配置同步;并且
-將網(wǎng)絡(luò)和系統(tǒng)的操作傳送回主核心。
較優(yōu)地,每個核心進(jìn)一步包括數(shù)據(jù)庫,在配置系統(tǒng)的運(yùn)行過程中,主核 心的數(shù)據(jù)庫持續(xù)得以改變,并且主數(shù)據(jù)庫的改變被傳送到輔助數(shù)據(jù)庫,當(dāng) 向輔助核心傳送系統(tǒng)的操作控制的時(shí)候,監(jiān)測系統(tǒng)將輔助數(shù)據(jù)庫配置為只 讀模式,從而在輔助核心控制系統(tǒng)的時(shí)候輔助數(shù)據(jù)庫不會改變。
可替換地,每個核心可以進(jìn)一步包括數(shù)據(jù)庫,在配置系統(tǒng)的操作控制過 程中,主核心的數(shù)據(jù)庫得以持續(xù)改變,并且主核心得以運(yùn)行以將主數(shù)據(jù)庫 的改變傳送到輔助數(shù)據(jù)庫上,在將系統(tǒng)的操作控制傳送到第二核心的情況 下,監(jiān)測系統(tǒng)得以運(yùn)行以配置輔助數(shù)據(jù)庫,使得輔助數(shù)據(jù)庫在配置系統(tǒng)的 控制下持續(xù)改變,并且在同步化配置的時(shí)候,將主核心的數(shù)據(jù)庫與輔助核 心的數(shù)據(jù)庫同步化。
在使用主核心對系統(tǒng)加以操作的過程中,優(yōu)選地,輔助核心對于運(yùn)行中 的主核心進(jìn)行鏡像,從而當(dāng)系統(tǒng)的操作傳送到達(dá)的時(shí)候,其具有與主核心 的配置和數(shù)據(jù)庫實(shí)質(zhì)相同的配置和數(shù)據(jù)庫。
典型地,每個核心包括監(jiān)測其他核心的操作的核心模塊元件管理器,兩 個元件管理器得以連接,輔助核心中的元件管理器監(jiān)測鏈路狀態(tài),并且在 鏈路失效達(dá)到預(yù)定時(shí)間區(qū)間的情況下標(biāo)識失效。
每個核心進(jìn)一步包括許多應(yīng)用模塊,每個核心的元件管理器控制核心中 的模塊的操作。
通過防止同步過程中的輔助核心的改變,同步過程中的數(shù)據(jù)丟失得以避免。
在進(jìn)一步的實(shí)施例中,每個單元包含主配置提供引擎和輔助配置提供引 擎,二者都能夠控制單元和網(wǎng)絡(luò)元件。
現(xiàn)在,結(jié)合附圖,對本發(fā)明進(jìn)行描述。 附圖1顯示了本發(fā)明所涉及的網(wǎng)絡(luò)的示意圖; 附圖2顯示了該網(wǎng)絡(luò)的功能性示意圖; 附圖3顯示了實(shí)現(xiàn)本發(fā)明的方法的系統(tǒng)。
具體實(shí)施例方式
根據(jù)本發(fā)明的配置系統(tǒng)包括實(shí)質(zhì)上同樣的主核心系統(tǒng)和輔助核心系統(tǒng)
A、 B,兩個系統(tǒng)都能夠運(yùn)行以總體上控制整個網(wǎng)絡(luò),并且特別地控制其配 置。附圖3顯示了一種該配置系統(tǒng)。主核心系統(tǒng)和輔助核心系統(tǒng)A、 B都顯 示在附圖中。核心22包含文件系統(tǒng)30、數(shù)據(jù)庫32、核心模塊元件管理器 33和一系列模塊34a-h,該一系列模塊向網(wǎng)絡(luò)提供核心服務(wù)。盡管各種組件 分布在多個服務(wù)器上是可能的,但是文件系統(tǒng)30、數(shù)據(jù)庫32和模塊34都 位于中心服務(wù)器。核心模塊34之間、核心模塊34與單元24以及網(wǎng)絡(luò)元件 26之間相互作用。核心22還借助外部應(yīng)用編程接口 37與外部應(yīng)用程序相 互作用,該外部應(yīng)用程序例如服務(wù)提供系統(tǒng)。核心模塊34包含系統(tǒng)管理模 塊34a、網(wǎng)絡(luò)日志模塊34b、日志管理模塊34c、數(shù)據(jù)庫應(yīng)用編程接口(DBAPI) 34d、訂購者管理工具橋(SMTB) 34e、外部應(yīng)用編程接口 (EAPI) 34f、 腳本引擎34g和配置工作管理器(CJM) 34h。借助應(yīng)用程序間的消息總線 (IAMB) 35,各種核心模塊34相互通信。每個單元24運(yùn)行以控制網(wǎng)絡(luò)的 一個特定部分,并且每個單元24包含模塊,該模塊處理該單元中的網(wǎng)絡(luò)拓 撲的部分。單元24能夠與核心22位于相同的服務(wù)器中,但是在大型網(wǎng)絡(luò) 的情況下,單元24可以從核心服務(wù)器中分離出來并且部署在網(wǎng)絡(luò)中。每個 單元包含配置提供引擎模塊(CRE) 36和元件管理模塊38。每個網(wǎng)絡(luò)單元 26典型地包括可編程路由器40。
核心22的高可靠性(HA)操作有望使得網(wǎng)絡(luò)在硬件或者軟件出現(xiàn)問題 的情況下,繼續(xù)向現(xiàn)有的訂購者提供服務(wù)。核心系統(tǒng)模塊性結(jié)合配置樹的 構(gòu)建實(shí)現(xiàn)了高水平的操作。
核心模塊元件管理器33控制核心中的所有其他模塊,以正確的方式啟 動它們,如果它們突然失效則重新啟動,并且保存它們的信息。其也負(fù)責(zé) 控制系統(tǒng)中的高可靠性(HA)功能。核心模塊元件管理器33決定輔助核 心B轉(zhuǎn)變?yōu)檫\(yùn)行狀態(tài)的時(shí)間,并且控制所有模塊的高可靠性狀態(tài)。
在當(dāng)前示例下,高可靠性設(shè)置需要兩個核心,主核心A和一個輔助核 心B。該設(shè)置被稱為一個高可靠性對。高可靠性對中的每個核心具有相同 的模塊(正如此處所示),但是每個高可靠性對中的模塊的選擇是可選的。借助應(yīng)用程序間的消息總線35上的通信信道,核心模塊元件管理器33 和其他模塊之間的通信,以及在高可靠性對中的主核心和輔助核心A、 B
中的兩個核心模塊元件管理器之間的通信得以完成。
每個核心(主核心和輔助核心)A、 B具有自己的核心模塊元件管理器 33。這兩個核心模塊元件管理器33之間的SSD信道鏈路39負(fù)責(zé)在二者之 間共享狀態(tài)信息,并且負(fù)責(zé)探測失敗(主核心出現(xiàn)問題),或者進(jìn)行恢復(fù)(主 核心在出現(xiàn)問題之后,重新恢復(fù)到運(yùn)行狀態(tài))。
當(dāng)鏈路39連接斷開超過預(yù)定時(shí)間的時(shí)候,該預(yù)定時(shí)間例如三秒,在該 時(shí)間內(nèi)整個主核心A被預(yù)先認(rèn)為無法運(yùn)行,在輔助核心模塊元件管理器33 中,主核心A的失敗得以探測。
每個核心A、 B的核心模塊元件管理器33具有對于同一核心上的每個 其他模塊34開放的連接。該連接被用于在核心模塊元件管理器33和模塊 34之間傳送控制信號。
典型地,當(dāng)安裝控制系統(tǒng)的時(shí)候,模塊34的配置典型地通過命令行得 以完成,該命令行由核心模塊元件管理器33用于啟動模塊34,并且該命令 行在安裝控制系統(tǒng)的時(shí)候由配置文件加以使用??商鎿Q的方式是,以與下 述配置方式相同的方式配置模塊34,該方式就是單元24中的元件管理器 38對網(wǎng)絡(luò)元件26 (下面詳細(xì)描述)進(jìn)行配置的方式。
當(dāng)程序開始的時(shí)候,其連接到適當(dāng)信道上的核心模塊元件管理器33。 在正常運(yùn)行的情況下,主核心和輔助核心A、 B得以啟動和運(yùn)行,并且 沒有失效備援發(fā)生。當(dāng)啟動的時(shí)候,作為主核心運(yùn)行的程序接收到啟動命 令,并且作為輔助核心運(yùn)行的程序接收到擱置命令。典型地,輔助模塊僅 僅從主參與者處接收在線更新的連接。
當(dāng)主核心A不運(yùn)轉(zhuǎn)并且保持不運(yùn)轉(zhuǎn)的狀態(tài)超過預(yù)定時(shí)間的情況下,失 效備援得以發(fā)生。典型地,如果輔助核心B變得不運(yùn)轉(zhuǎn)或者如果在預(yù)定時(shí) 間階段截止之前主核心A再次變?yōu)橛行В敲词湓话l(fā)生。
在失效備援中,輔助模塊接收啟動命令并且開始工作,如同其就是主核 心一樣。
恢復(fù)過程需要通過若干步驟完成,以確保從輔助核心B到主核心A的數(shù)據(jù)同步是完整的。
當(dāng)恢復(fù)開始的時(shí)候,命令得以傳送到所有輔助模塊,以使得輔助模塊進(jìn) 入只讀模式并且不接受任何改變。當(dāng)上述操作完成的時(shí)候,該模塊返回適 當(dāng)?shù)男盘?。?dāng)所有輔助模塊確定處于只讀模式的時(shí)候,消息傳送到所有主 模塊以啟動同步。當(dāng)主模塊與相應(yīng)的輔助模塊完全同步的時(shí)候,啟動命令 被傳送到主模塊,后備命令被發(fā)送到輔助模塊。正常的操作得以繼續(xù)。
主核心A變得不運(yùn)轉(zhuǎn)并且失效備援得以發(fā)生的典型情況包括,服務(wù)器 硬件故障,服務(wù)器電能故障,網(wǎng)絡(luò)裝置故障,網(wǎng)絡(luò)裝置電能故障,網(wǎng)絡(luò)連 接失敗和軟件更新。
系統(tǒng)中模塊34之間的應(yīng)用程序間的消息總線35得以使用,并且該應(yīng)用 程序間的消息總線35得以配置以使用最短路徑優(yōu)先算法操縱所有接口,以 探測和確定任意兩個模塊之間的最優(yōu)路徑上的連接。在典型的高可靠性對 中,服務(wù)器(也就是核心A、 B)具有多個物理接口。這就提出了一個潛在 的問題,就像可能分離網(wǎng)絡(luò)的網(wǎng)絡(luò)問題一項(xiàng),從而服務(wù)器不能相互通信, 但是都能夠與網(wǎng)絡(luò)的其他部分通信。為了防止這種情況,專用物理鏈路在 兩個服務(wù)器之間得以使用,典型的是兩個服務(wù)器的以太網(wǎng)接口之間直接地、 沒有中間裝置地交叉以太網(wǎng)連接。
核心模塊元件管理模塊33控制失效備援機(jī)制。核心模塊元件管理器33 在應(yīng)用程序間的消息總線35上運(yùn)行,并且維護(hù)與系統(tǒng)中其他模塊34之間 的接觸。如果核心模塊元件失去與相對應(yīng)主體之間的接觸,失效備援得以 觸發(fā)。
高可靠性對的模塊之間的數(shù)據(jù)同步以下述方式發(fā)生。 外部應(yīng)用程序通過外部應(yīng)用編程接口模塊34f連接到系統(tǒng)。外部應(yīng)用編 程接口模塊34f在主服務(wù)器和輔助服務(wù)器A、 B上得以啟動。在一個服務(wù)器 不運(yùn)轉(zhuǎn)的情況下,該服務(wù)器的外部應(yīng)用編程接口模塊34f將無法響應(yīng),并且 會話將超時(shí)。在該時(shí)間由外部應(yīng)用程序創(chuàng)建但是沒有提交的數(shù)據(jù)會丟失。 新的連接必須由外部應(yīng)用程序確立以回復(fù)運(yùn)行狀態(tài)。該操作可以由應(yīng)用程 序自動完成,或者可以借助用戶的行為手動完成。
配置工作管理器34h在核心服務(wù)器A、 B的存儲器中保存整個配置樹。運(yùn)行中的配置工作管理器34h還向單元24提供更新并且執(zhí)行數(shù)據(jù)庫操作。 在兩個服務(wù)器的配置工作管理器模塊之間,不存在運(yùn)行的同步或者通信。 相反,擱置的配置工作管理器34h (B)從數(shù)據(jù)庫應(yīng)用編程接口模塊接收外 部數(shù)據(jù)庫產(chǎn)生的所有更新的復(fù)制本。接著將該更新插入到配置樹的存儲器 復(fù)制本中,從而該配置樹與運(yùn)行中的配置工作管理器的配置樹同步。
數(shù)據(jù)庫應(yīng)用編程接口 34d與數(shù)據(jù)庫32進(jìn)行寫操作的同步。擱置的數(shù)據(jù) 庫應(yīng)用編程接口 34d (B)接收到每個寫操作的復(fù)制本并且對擱置的數(shù)據(jù)庫 32 (B)執(zhí)行相應(yīng)的變化。除此之外,擱置的數(shù)據(jù)庫應(yīng)用編程接口34d (B) 向監(jiān)聽模塊傳送數(shù)據(jù)庫做出的任何改變,例如監(jiān)聽配置樹的表的改變的配 置工作管理器34h (B)。
系統(tǒng)管理器34a訂購在相應(yīng)的文件庫中訂購所有文件。這確保每個系統(tǒng) 管理器34a的所有文件在相應(yīng)部分可用,包括在處于失效狀態(tài)的時(shí)候接收 到的任何操作系統(tǒng)核心圖像。在恢復(fù)過程中,核心和操作系統(tǒng)圖像得以同 步。
在失效的時(shí)候,無論數(shù)據(jù)庫處于只讀/讀寫狀態(tài),日志管理器34c繼續(xù) 工作。在正常運(yùn)行中,啟動/主日志管理器34c (A)將寫入磁盤的任何日志 消息轉(zhuǎn)發(fā)到從屬/輔助日志管理器34c (B)。當(dāng)出現(xiàn)失效備援的時(shí)候,現(xiàn)在 變?yōu)檫\(yùn)行的從屬/輔助日志管理器34c (B)出現(xiàn)失效的時(shí)候,將當(dāng)前日志文 件輪轉(zhuǎn)。由于現(xiàn)在其是接收日志的僅有的日志管理器34c,其被存儲在新的 曰志數(shù)據(jù)庫文件并且通常的日志文件輪轉(zhuǎn)規(guī)則得以適用。
在恢復(fù)的過程中,輪轉(zhuǎn)的日志數(shù)據(jù)庫34c' (B)被傳送到非同步的日志 管理器34 (A)。在同步過程中接收到的新日志消息由運(yùn)行中的日志管理器 34c (B)寫入,并且被放入去往非同步日志管理區(qū)34c (A)的隊(duì)列中。相 同的機(jī)制被用于在正常的操作得以運(yùn)用的過程中維護(hù)同步。如果運(yùn)行中的 曰志管理器是輔助日志管理器34c(B),當(dāng)幾乎所有的日志得以傳送的時(shí)候, 其將通知擱置/主日志管理器34c (A)。主日志管理器34c (A)接著運(yùn)行并 且對保存在存儲器中的第一消息加以保存。因?yàn)楦郊尤罩鞠⒖梢缘靡越?收,輔助日志管理器34c (B)此時(shí)處于擱置狀態(tài),同步持續(xù)到輔助隊(duì)列為 空。主/啟動日志管理器34c (A)將從輔助處接收到的任何日志信息寫入,直到隊(duì)列為空或者其接收到與存儲器中的當(dāng)前信息(得以啟動之后的首先 得以錄入的日志)相同的日志信息。
網(wǎng)絡(luò)日志模塊34b以與網(wǎng)絡(luò)日志模塊34c相同的方式運(yùn)行,無論數(shù)據(jù)庫 處于只讀/讀寫狀態(tài),在失效備援過程中持續(xù)運(yùn)行。在正常的運(yùn)行中,啟動/ 主網(wǎng)絡(luò)日志34b (A)將寫在磁盤上的任何日志消息轉(zhuǎn)發(fā)到擱置/輔助網(wǎng)絡(luò)日 志34b (B)。當(dāng)失效備援發(fā)生的時(shí)候,現(xiàn)在得以啟動的擱置/輔助網(wǎng)絡(luò)日志 34b (B)輪轉(zhuǎn)當(dāng)前日志文件。因?yàn)槟壳捌涫俏ㄒ唤邮杖罩镜木W(wǎng)絡(luò)日志,該 曰志被存儲在新的日志數(shù)據(jù)庫文件中。正常的日志文件輪轉(zhuǎn)規(guī)則得以使用。 在恢復(fù)過程中,輪轉(zhuǎn)的日志數(shù)據(jù)庫被傳送到非同步網(wǎng)絡(luò)日志34b (A)中。 在同步過程中接收到的新日志消息由運(yùn)行的網(wǎng)絡(luò)日志34b (B)寫入,并且 被列入去往非同步網(wǎng)絡(luò)日志34b (A)的隊(duì)列中。與正常操作過程中被用以 維持同步的機(jī)制相同的機(jī)制得以使用。轉(zhuǎn)換到正確的運(yùn)行網(wǎng)絡(luò)日志34b的 過程與日志管理器34c的過程相同。
腳本引擎34g的腳本庫由應(yīng)用程序間的消息總線35加以同步。在恢復(fù) 的過程中,這就確保在失效備援過程中加入或者改變的任何腳本得以同步。 失效備援事件發(fā)生的時(shí)候運(yùn)行的腳本將被終止。
訂購者管理工具橋模塊34e不具有失效備援狀態(tài)信息,該信息意味著, 當(dāng)失效備援時(shí)間發(fā)生的時(shí)候,該模塊僅僅在擱置服務(wù)器上啟動。
當(dāng)停用的系統(tǒng)上的核心模塊元件管理器33探測到與運(yùn)行系統(tǒng)上的相應(yīng) 部分的通信中存在不正常情況的時(shí)候,其觸發(fā)失效備援事件。如果所有的 通信全部喪失,那么輔助核心模塊元件管理器33 (B)將啟動所有模塊34 (B)。與輔助核心模塊元件管理器33 (B)位于同一服務(wù)器上的其他模塊 34 (B)己經(jīng)與該服務(wù)器上的核心模塊元件管理器33 (B)建立通信。
在失效備援發(fā)生的任何時(shí)候,輔助服務(wù)器(B)接替運(yùn)行。典型地,配 置樹數(shù)據(jù)庫自動設(shè)置為只讀模式。這意味著,不可能對于配置樹做出任何 修改。因?yàn)榕渲脴涮幱谥蛔x狀態(tài),所以再也不可能添加、改變或者刪除任 何對象。這也就因此意味著,沒有網(wǎng)絡(luò)元件或者鏈路能夠被修改,并且改 變線路對象或者參數(shù)再也不可能。因?yàn)橛嗁徴咝枰?wù)依附于主體,以定 義他們所期望的服務(wù),現(xiàn)有的訂購者持續(xù)接收當(dāng)前服務(wù),但是該服務(wù)并未改變。新的訂購者不能得以添加并且期望的服務(wù)不能得以移除。將配置樹 保持只讀模式的優(yōu)點(diǎn)在于,失效備援恢復(fù)更為簡單。 一旦主服務(wù)器(A)再 次啟動,配置樹數(shù)據(jù)庫無需同步化,其降低了恢復(fù)時(shí)間。另外,由于沒有 數(shù)據(jù)得以添加,因此沒有下述的風(fēng)險(xiǎn),在主服務(wù)器(A)無法正常工作的 同時(shí)輔助服務(wù)器(B)上出現(xiàn)問題,信息發(fā)生丟失。由于沒有數(shù)據(jù)能夠得以 添加,所以沒有數(shù)據(jù)丟失。 一旦失效備援完成,配置樹被重新置于讀寫模 式。
根據(jù)失效的類型,將配置樹保持為只讀模式達(dá)到一定時(shí)間區(qū)間可能無法
接受。因此,甚至在使用輔助服務(wù)器(B)的時(shí)候,可能將配置樹(以及系
統(tǒng)的剩余部分)設(shè)置為讀寫模式。
一旦系統(tǒng)處于讀寫模式,其如同失效備援時(shí)間發(fā)生以前一樣正常工作。
關(guān)鍵的不同在于, 一旦主服務(wù)器(A)再次啟動,數(shù)據(jù)庫必須被再次同步化,
根據(jù)交換的信息數(shù)量,該同步化可能占用延長的時(shí)間區(qū)間。
一旦系統(tǒng)處于讀寫模式,系統(tǒng)將在失效備援時(shí)間之前工作。關(guān)鍵性的不
同在于, 一旦主服務(wù)器(A)再次啟動,數(shù)據(jù)庫必須再次同步化,根據(jù)需要 交換的信息量這會占用延長的時(shí)間。
操作的恢復(fù)是管理性任務(wù)。 一旦失效的服務(wù)器出現(xiàn)的問題得到解決,該 服務(wù)器得以重新啟動。當(dāng)失效服務(wù)器(A)再次啟動,系統(tǒng)管理員通過啟動 正確的應(yīng)用程序的方式開始恢復(fù)。核心模塊元件管理器模塊33 (B)將數(shù) 據(jù)庫32 (B)置于只讀模式,直到重新啟動的服務(wù)器(A)上的模塊34與 其啟動的相對方34 (B)同步。由于在只讀模式下沒有數(shù)據(jù)庫的更新或者 文件庫的更新得以執(zhí)行,只讀模式確保較快的同步。在同步過程中執(zhí)行的 行為對于每個模塊34而言相互獨(dú)立。直到同步得以完成,應(yīng)用程序間的消 息總線35上的模塊34之間的連接得以確立(例如配置工作管理器34h到 配置提供引擎模塊38的連接)。當(dāng)所有模塊34向核心模塊元件管理器33 回報(bào),該模塊處于同步狀態(tài),核心模塊元件管理器確保正確的模塊得以啟 動。舉例而言,這就意味著外部應(yīng)用編程接口模塊當(dāng)前啟動的34f (B)得 以關(guān)閉,并且外部應(yīng)用程序得以與其他外部應(yīng)用編程接口模塊34f (A)重 新連接。在恢復(fù)過程中,系統(tǒng)在同步持續(xù)的時(shí)間內(nèi)被重新恢復(fù)為只讀狀態(tài)。
靠近核心22的模塊使得核心的各種功能得以有效運(yùn)行。模塊34a-h的 詳細(xì)描述如下。
系統(tǒng)管理器模塊34a維護(hù)各種類型的文件得以保存的中心文件庫。系統(tǒng) 管理器模塊34a根據(jù)需要將文件分布到系統(tǒng)的其他部分,并且作為來自系 統(tǒng)的其他部分的文件的集中地點(diǎn)。當(dāng)系統(tǒng)管理器34a啟動的時(shí)候,其產(chǎn)生 以文件庫的路徑的形式展現(xiàn)的文件詳細(xì)目錄。系統(tǒng)管理器34a接著連接內(nèi) 部應(yīng)用程序消息總線(IAMB) 35并且開始監(jiān)聽請求。其他模塊接著連接到 系統(tǒng)管理器34a上并且以特定類型的文件的形式報(bào)告關(guān)注的情況(訂購)。 系統(tǒng)管理器34a類似地從連接模塊訂購文件。
內(nèi)部文件轉(zhuǎn)換子系統(tǒng)(以內(nèi)部應(yīng)用程序消息總線35上面的一層的形式 展現(xiàn))處理文件的轉(zhuǎn)移,該文件與訂購模塊的訂購要求相匹配。借助內(nèi)部 文件轉(zhuǎn)移子系統(tǒng),文件轉(zhuǎn)移被自動化。被加入到文件庫路徑中的文件由子 系統(tǒng)自動探測,該子系統(tǒng)通知模塊新的文件可以使用。模塊接著使用子系 統(tǒng)請求文件轉(zhuǎn)移。子系統(tǒng)被所有模塊加以使用,該模塊執(zhí)行與系統(tǒng)管理器 34a之間的文件轉(zhuǎn)移。
基于配置線對象的內(nèi)容,該配置線對象指定哪個操作系統(tǒng)對象在任何網(wǎng) 絡(luò)元件40上運(yùn)行,操作系統(tǒng)圖像為元件管理模塊38所需要。操作系統(tǒng)圖 像包通過圖形數(shù)據(jù)接口被上載到系統(tǒng)管理器。
系統(tǒng)記錄功能在兩個模塊得以提供網(wǎng)絡(luò)日志模塊34b和日志管理器模 塊34c。雖然在實(shí)施例中二者被分開,在特定情況下它們可以結(jié)合在一個單 獨(dú)的模塊中。網(wǎng)絡(luò)日志模塊34b保存地址歷史日志和與網(wǎng)絡(luò)分配給訂購者 的IP地址相關(guān)的其他重要信息。
網(wǎng)絡(luò)日志34b生成的數(shù)據(jù)庫文件得以建立,以便于基于大小和時(shí)間輪 轉(zhuǎn)。在最大文件大小或者最早時(shí)間已經(jīng)達(dá)到的任何時(shí)候,日志文件得以輪 轉(zhuǎn)。
曰志管理器模塊34c保存系統(tǒng)日志。該信息與系統(tǒng)的操作相關(guān)并且包含 有關(guān)系統(tǒng)操作中的重要事件的信息,包括與行為相關(guān)的網(wǎng)絡(luò)元件。日志管 理器34c模塊也是網(wǎng)絡(luò)行為請求(NAR)消息的接受者,并且觸發(fā)被設(shè)計(jì)用于處理該類事件的腳本引擎模塊34g中的自動腳本。日志管理器模塊34c 也在簡單的數(shù)據(jù)庫34c'中保存系統(tǒng)日志,并且也負(fù)責(zé)網(wǎng)絡(luò)行為請求事件的 處理,包括調(diào)用腳本引擎模塊34g執(zhí)行處理特定事件的腳本。
系統(tǒng)模塊能夠生成與系統(tǒng)中發(fā)生的事件和狀態(tài)相關(guān)的日志信息。日志信 息在應(yīng)用程序間的消息總線35上傳送。日志管理器監(jiān)聽日志頻道并且將接 收到的日志消息存儲到數(shù)據(jù)庫34c'中。
如果模塊變得充滿日志信息,那么日志管理器將自動開始將日志消息區(qū) 分優(yōu)先次序。如果隊(duì)列超過特定閾值,那么低優(yōu)先級的日志消息被丟棄。 當(dāng)壓力降低的時(shí)候,日志管理器再次存儲較低優(yōu)先級的消息。
網(wǎng)絡(luò)行為請求(NARs)是由系統(tǒng)模塊觸發(fā)的特定事件。網(wǎng)絡(luò)行為請求 事件標(biāo)識需要外部交互加以解決的異常狀態(tài)。網(wǎng)絡(luò)行為請求的示例包括IP 地址池耗竭以及與未知網(wǎng)絡(luò)元件的連接。如果系統(tǒng)無法自己解決該狀況, 那么需要得到幫助,該幫助或者由操作者通過圖形用戶接口提供,或者由 自動腳本引擎模塊34g上執(zhí)行的自動腳本提供。日志管理器34c監(jiān)聽網(wǎng)絡(luò) 行為請求的頻道,這意味著其接收所有的網(wǎng)絡(luò)行為請求事件。該事件保存 在單獨(dú)的永遠(yuǎn)無需輪轉(zhuǎn)的數(shù)據(jù)庫文件中。該事件接著根據(jù)已知腳本的列表 加以匹配,并且如果任何匹配腳本得以發(fā)現(xiàn),那么事件與執(zhí)行腳本的指令 一起被傳送到腳本引擎34g。當(dāng)腳本引擎34g報(bào)告其已成功處理該腳本時(shí), 從NAR事件數(shù)據(jù)庫中刪除該NAR事件。
數(shù)據(jù)庫應(yīng)用編程接口 (DBAPI)模塊34d提供數(shù)據(jù)庫存儲和其他核心模 塊的訪問設(shè)備。ODBC被用于與外部數(shù)據(jù)庫32通信,該外部數(shù)據(jù)庫保存了 配置樹和系統(tǒng)運(yùn)行所需要的其他重要數(shù)據(jù)。
數(shù)據(jù)庫應(yīng)用編程接口 34d提供了系統(tǒng)模塊和外部數(shù)據(jù)庫32之間的抽象 層。目的是為了選擇與其他模塊操縱的數(shù)據(jù)庫無關(guān)的外部數(shù)據(jù)庫。需要訪 問數(shù)據(jù)庫的模塊通過數(shù)據(jù)庫應(yīng)用編程接口建立連接。插入、更新和從數(shù)據(jù) 庫表中選擇的調(diào)用從內(nèi)部系統(tǒng)應(yīng)用編程接口被傳送到數(shù)據(jù)庫的開放式數(shù)據(jù) 庫互接調(diào)用。
訂購者管理工具橋模塊34e被連接到外部應(yīng)用編程接口 37以實(shí)現(xiàn)與外 部訂閱者管理工具應(yīng)用程序(未示出)之間的相互作用。外部應(yīng)用編程接口模塊34f使得外部應(yīng)用程序能夠訪問系統(tǒng)數(shù)據(jù),該外 部應(yīng)用數(shù)據(jù)例如圖形用戶接口、自注冊入口和訂購者管理工具。當(dāng)與系統(tǒng)
通信的時(shí)候,外部應(yīng)用編程接口模塊34f為應(yīng)用程序提供應(yīng)用編程接口。使 用外部應(yīng)用編程接口 34f的外部應(yīng)用程序的示例是圖形用戶接口。
具有外部應(yīng)用編程接口 34f的導(dǎo)出函數(shù)的其他系統(tǒng)模塊可以被外部應(yīng) 用程序加以調(diào)用。外部應(yīng)用編程接口 34f分解所調(diào)用的函數(shù)和任何參數(shù),驗(yàn) 證所有需要的參數(shù)得以提供,并且所有需要的參數(shù)具有適宜的類型,并且 接著產(chǎn)生調(diào)用該函數(shù)的函數(shù)。函數(shù)可以處于外部應(yīng)用編程接口的內(nèi)部,或 者函數(shù)可以位于一個系統(tǒng)模塊中。如果函數(shù)位于一個系統(tǒng)模塊中,該函數(shù) 借助應(yīng)用程序間的消息總線35加以調(diào)用。
外部應(yīng)用編程接口 34f的主前端是SOAP/XML類型的前端。 外部應(yīng)用編程接口 34f包含用戶驗(yàn)證機(jī)制,在該機(jī)制中通過外部應(yīng)用程 序加以連接的用戶在訪問數(shù)據(jù)和函數(shù)之前必須經(jīng)過驗(yàn)證。 一旦驗(yàn)證通過, 會話得以建立,在該會話中用戶能夠訪問與用戶所屬的命名空間相關(guān)的所 有數(shù)據(jù)和函數(shù)。
腳本引擎模塊34g提供自動腳本執(zhí)行。在正常運(yùn)行過程中,系統(tǒng)需要外 部邏輯解析環(huán)境的情況會發(fā)生。該情況的示例是,當(dāng)未知網(wǎng)絡(luò)元件意圖接 觸系統(tǒng)的時(shí)候。該元件可以是正常部署的一部分,并且當(dāng)元件連接的時(shí)候, 自動腳本能夠創(chuàng)建數(shù)據(jù)庫中的必要對象。腳本引擎模塊34g也能夠提供向 導(dǎo)框架以通過圖形用戶接口幫助管理網(wǎng)絡(luò)。
配置工作管理器(CJM)模塊34h保存描述對于訂購者可用的服務(wù)的配 置樹,該配置樹是在網(wǎng)絡(luò)中向訂購者展現(xiàn)的地方并且訂購者訂購服務(wù)的地 方。配置樹還具有包含在網(wǎng)絡(luò)元件26的配置的網(wǎng)絡(luò)拓?fù)湫畔?。配置工作?理器34h維護(hù)配置樹,并且外部應(yīng)用程序?qū)τ谂渲脴渥龀龅娜魏胃淖冊诒?部署到單元24中之前得以解析。
配置工作管理器34h負(fù)責(zé)所有對象的創(chuàng)建,負(fù)責(zé)刪除和更新操作,并且 配置工作管理器34h具有負(fù)責(zé)系統(tǒng)內(nèi)IP地址管理的資源管理子系統(tǒng)。
配置工作管理器34h在起始時(shí)連接到數(shù)據(jù)庫應(yīng)用編程接口模塊34d。接 著其意圖將完成的配置樹加載到存儲器中。 一旦完成上述操作,配置工作管理器34h等待系統(tǒng)中其他模塊的連接。當(dāng)用戶借助圖形用戶接口查看、 生成、刪除或者改變配置樹中的對象的時(shí)候,在外部應(yīng)用編程接口模塊34f 中出現(xiàn)調(diào)用,該調(diào)用被轉(zhuǎn)發(fā)到配置工作管理器34h以便于對象處理。除了 外部應(yīng)用編程接口34f,單元24中的配置提供引擎(CRE) 36也與配置工 作管理器34h相互通信。
當(dāng)配置提供引擎36連接到配置工作管理器34h的時(shí)候,會話在兩個模 塊之間得以建立。配置提供引擎36具有與其網(wǎng)絡(luò)位置相關(guān)的配置樹的本地 復(fù)制本。當(dāng)兩個模塊相互連接的時(shí)候,它們將配置樹的配置提供引擎的本 地復(fù)制本的版本與配置工作管理器存儲器中的當(dāng)前版本相比較。如果兩個 版本不同,配置提供引擎36刪除其復(fù)制本并且從配置工作管理器34h處接 收新的復(fù)制本。這樣確保配置提供引擎36具有與配置工作管理器34h完全 相同的配置樹復(fù)制本。
當(dāng)配置工作管理器34h接收并且處理了配置樹的改變的時(shí)候,其確定哪 個配置提供引擎36需要更新(如果存在的話)。更新接著傳送到相應(yīng)的配 置提供引擎36。
配置工作管理器34h要求,配置樹的改變必須是正確的,并且配置樹的 改變必須能夠部署以便于實(shí)現(xiàn)。上述操作通過驗(yàn)證-提交過程加以控制。包 含對象的創(chuàng)建、刪除和修改操作在內(nèi)的配置樹改變,必須在對于配置樹永 久提交之前由系統(tǒng)模塊加以驗(yàn)證。當(dāng)驗(yàn)證操作得以調(diào)用的時(shí)候,配置工作 管理器34h調(diào)整配置樹,如同包括上述對象一樣。其觸發(fā)單元模塊中的配 置提供和配置驗(yàn)證,但是配置并不實(shí)際地部署到網(wǎng)絡(luò)中。 一旦驗(yàn)證完成, 任何出現(xiàn)的錯誤得以報(bào)告并且先前配置樹的有效輪轉(zhuǎn)發(fā)生。如果沒有錯誤 得以探測,工作準(zhǔn)備提交。否則錯誤必須糾正并且新的驗(yàn)證操作必須開始。
當(dāng)開始提交的時(shí)候,該改變永久性地提交給配置樹(除非該工作未來發(fā) 生,參見下文),并且借助數(shù)據(jù)庫應(yīng)用編程接口該改變被保存在數(shù)據(jù)庫中, 并且該改變立即生效。配置得以提供并且部署在所需的網(wǎng)絡(luò)之中。
配置工作管理器34h的資源管理子系統(tǒng)負(fù)責(zé)管理系統(tǒng)的資源。典型的資 源是用于接口地址并且用于指定給網(wǎng)絡(luò)中的訂購者的IPv4資源空間。系統(tǒng) 具有用于IP地址管理的特定對象,即IPv4資源對象。該對象負(fù)責(zé)一部分IP地址空間,并且被提供為地址池。對象名稱被用于將多個對象連接在一起, 從而一個對象——與配置樹的根節(jié)點(diǎn)最近的對象——代表地址池100。位于 配置樹分支下部的其他對象具有相同的名稱,其代表主池的更小的部分一 一臨近祖先的地址池100。
當(dāng)IPv4資源對象在配置樹上得以創(chuàng)建并且提交時(shí),其代表的池中的地 址從其袓先處得以分配。具有位于根節(jié)點(diǎn)的代表整個IPv4地址池的單個祖 先,從而即使在在根節(jié)點(diǎn)之下直接創(chuàng)建資源對象的時(shí)候,實(shí)際上該分配也 得以執(zhí)行。
如果對象不具有祖先(另外一個IPv4地址對象距離樹的根節(jié)點(diǎn)更近), 從"全局"IPv4地址中獲得的子網(wǎng)和前綴長度必須得以指定。如果存在祖 先對象,當(dāng)對象創(chuàng)建的時(shí)候子網(wǎng)可以選擇被指定。如果子網(wǎng)得以指定,系 統(tǒng)將意圖從祖先的資源對象池中獲得特定子網(wǎng)。如果子網(wǎng)己經(jīng)得以分配, 新資源對象的驗(yàn)證步驟失敗。如果具有祖先資源對象,那么足以指定新資 源對象所需要的前綴長度。當(dāng)新對象被提交給配置樹的時(shí)候,系統(tǒng)接著從 祖先池中指定該大小的子網(wǎng)。
該機(jī)制實(shí)現(xiàn)根據(jù)需要特定子網(wǎng)從池中得以指定,但是也實(shí)現(xiàn)了如下內(nèi) 容當(dāng)使用的實(shí)際子網(wǎng)不重要的時(shí)候,僅僅一定大小的子網(wǎng)需要得以指定 (系統(tǒng)需要指定所需大小的下一個可用子網(wǎng))。
鏈路是兩個或者多個網(wǎng)絡(luò)元件之間的連接。對于IP網(wǎng)絡(luò)而言,鏈路需 要子網(wǎng)和連接到鏈路的每個網(wǎng)絡(luò)元件的每個接口也具有地址。該地址池系 統(tǒng)允許鏈路動態(tài)分配,但是也使得需要時(shí)指定每個接口使用的精確地址成 為可能。
核心模塊34a-h的操作由中心模塊元件管理器33控制,借助下面詳細(xì) 描述的備份系統(tǒng),該中心模塊元件管理器33負(fù)責(zé)維持核心功能的高可靠性。
在單元24中,配置提供引擎36具有配置樹的本地復(fù)制本,該配置樹覆 蓋由單元24覆蓋的網(wǎng)絡(luò)部分。配置提供引擎36從配置樹中組合對象,以 形成部署到各個網(wǎng)絡(luò)元件40的最終配置。該過程包括連接配置線對象和參 數(shù),分配IP地址和確定任何配置預(yù)處理器的條件以形成最終網(wǎng)絡(luò)元件配置, 該最終網(wǎng)絡(luò)元件配置被傳送到元件管理器模塊38。配置提供引擎36是單元24的一部分。其主要目的是,在其控制之下為 各個類型的網(wǎng)絡(luò)元件40產(chǎn)生完成的配置。配置接著傳送到元件管理器38 以便于驗(yàn)證和部署。配置提供引擎36負(fù)責(zé)處理分配并且維護(hù)所有公知客戶 端的列表。
配置提供引擎36與核心中的配置工作管理器34h相互通信。配置工作 管理器34H維護(hù)整個網(wǎng)絡(luò)的完整配置樹。每個配置提供引擎36接收描述由 單元24覆蓋的網(wǎng)絡(luò)部分的配置樹的本地復(fù)制本(除非配置提供引擎36是 單元24的唯一運(yùn)行元件,否則配置提供引擎36不具有配置樹的完整復(fù)制 本)。在配置提供引擎36開始的時(shí)候,其確立與配置工作管理器34H之間 的工作會話并且接收工作序號。配置工作管理器34H持續(xù)驗(yàn)證每個連接的 配置提供引擎36所使用的工作序號數(shù)據(jù)庫版本。如果工作序號改變(該改 變表明會話重新開始,例如由于網(wǎng)絡(luò)問題),配置工作管理器34H將指示配 置提供引擎36清除配置樹并且向配置提供引擎36再次傳送配置樹。這使 得配置提供引擎36經(jīng)常具有配置樹的最新和精確的復(fù)制本。
在正常運(yùn)行過程中,隨著網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的改變、配置的更新等等,配置 工作管理器34H將向配置樹發(fā)送更新。配置提供引擎36解析其接收到的改 變并且開始內(nèi)部工作以進(jìn)行配置。
一些工作是時(shí)控的——被設(shè)置為在精確的時(shí)間或者以固定的時(shí)間間隔 發(fā)生。由于該原因,配置提供引擎36操作內(nèi)部定時(shí)器,該內(nèi)部定時(shí)器開始 內(nèi)部工作以提供配置更新。
除了由配置工作管理器34H啟動的內(nèi)部工作之外,該工作也可以作為 網(wǎng)絡(luò)中行為的結(jié)果加以啟動。典型的示例是,當(dāng)網(wǎng)絡(luò)中的客戶端請求并且 利用動態(tài)主機(jī)配置協(xié)議進(jìn)行尋址的時(shí)候。適宜的消息觸發(fā)下述情況,該情 況就是元件管理器38向配置提供引擎36開放客戶端內(nèi)容,并且這反過來 意味著配置提供引擎36必須向分配了 IP地址的客戶端提供適宜的配置,為 客戶端產(chǎn)生網(wǎng)絡(luò)日志和可能的動態(tài)域名服務(wù)器更新,并且當(dāng)然將提供的配 置發(fā)送到元件管理器38以便于部署。
配置提供引擎36的重要功能在于地址分配。當(dāng)需要被指派給客戶端的 IP地址的服務(wù)、鏈路或者網(wǎng)絡(luò)元件通過配置提供引擎36得以傳送的任何時(shí)候,其將從地址池中指派使用的地址,該地址池是網(wǎng)絡(luò)資源對象在配置樹
中定義的。配置提供引擎36向每個網(wǎng)絡(luò)元件分配最小塊,例如a/30塊???戶端內(nèi)容被公開的同時(shí),塊中各個地址被支配和插入到提供配置中。
通過外部應(yīng)用編程接口 34f,配置提供引擎36經(jīng)常發(fā)布和撤銷標(biāo)簽。 簡單而言,標(biāo)簽是依附至變量的命名值。由于標(biāo)簽綁定在創(chuàng)建該標(biāo)簽的客 戶端上,當(dāng)提供服務(wù)配置的時(shí)候,標(biāo)簽與配置線對象(CLOB)的條件語句 一起使用。舉例而言,叫做登陸網(wǎng)絡(luò)的標(biāo)簽或者由外部入口應(yīng)用程序?qū)?戶端加以設(shè)置,或者沒有由外部入口應(yīng)用程序?qū)蛻舳思右栽O(shè)置。當(dāng)客戶 端連接到網(wǎng)絡(luò)的時(shí)候,明顯沒有可用的標(biāo)簽。在相應(yīng)的配置線對象中,條 件可以使用以提供訪問列表,該訪問列表防止除了該客戶端入口之外的任 何地方的訪問。當(dāng)客戶端訪問入口并且登陸到網(wǎng)絡(luò)中,入口應(yīng)用程序創(chuàng)建 客戶端.標(biāo)簽.網(wǎng)絡(luò)登陸的標(biāo)簽(基于自身的IP地址)。通過外部應(yīng)用程序接 口 34f到配置提供引擎36的創(chuàng)建調(diào)用創(chuàng)建工作更新,該工作更新使得配置 提供引擎36為客戶端重新提供配置。因?yàn)橐郧暗臈l件現(xiàn)在是錯誤的,訪問 列表不再為客戶端生成并且客戶端接著能夠訪問整個網(wǎng)絡(luò)。
元件管理模塊38對于每一類型的網(wǎng)絡(luò)元件而言是特定的。典型地,其 包括在討論的特定硬件上運(yùn)行的操作系統(tǒng)。模塊38從配置提供引擎36處 接收配置,并且驗(yàn)證所有的配置狀態(tài)對于其運(yùn)行的操作系統(tǒng)而言是精確有 效的。借助適當(dāng)?shù)膮f(xié)議,網(wǎng)絡(luò)元件40連接到元件管理器38以接收配置。
系統(tǒng)允許針對不同類型的網(wǎng)絡(luò)元件40的多個元件管理器38,允許與網(wǎng) 絡(luò)元件40所使用的各類操作系統(tǒng)相關(guān)聯(lián)的EM。使用適宜的協(xié)議,操作系 統(tǒng)的元件管理器維護(hù)與網(wǎng)絡(luò)元件之間的通信。元件管理器38是單元24的 一部分。元件管理器從配置提供引擎36接收配置以部署到網(wǎng)絡(luò)中。
核心中的系統(tǒng)管理器34a具有包含所有操作系統(tǒng)圖像的中心文件庫。當(dāng) 用戶從用戶圖形接口上載操作系統(tǒng)圖像時(shí),系統(tǒng)管理器34a將其切割為實(shí) 際的圖形文件和驗(yàn)證庫文件,并且將其存儲在庫中。系統(tǒng)管理器34a接著 通知所有的元件管理器38新的圖像,如果其具有被指定使用該圖像的元件 40,那么該元件管理器38接著加以請求。從系統(tǒng)管理器34a所請求的圖像 被存儲在元件服務(wù)器上的元件管理器本地文件庫中。只有存在于本地文件庫中的圖像才能夠被提供給網(wǎng)絡(luò)元件40。這也就意味著,在網(wǎng)絡(luò)元件40能
夠下載該圖像之前,發(fā)生在圖像上的任何操作系統(tǒng)圖像更新必須首先上載 到系統(tǒng)。
在本發(fā)明的范圍之內(nèi)可以做出各種改變。舉例而言,單元本身可以包括 高可靠性對,其具有在另外一個服務(wù)器上復(fù)制的配置提供引擎模塊。主配 置提供引擎模塊和輔助配置提供引擎模塊維護(hù)二者之間公開內(nèi)容的同步, 但是每個模塊接收配置樹并且從核心的配置工作管理器獲得更新。主配置 提供引擎模塊和輔助配置提供引擎模塊在配置樹上具有相同的序號,并且 如果二者都與配置工作管理器中保存的內(nèi)容不匹配,那么配置樹的新復(fù)制 本將下載到單元中。主配置提供引擎模塊和輔助配置提供引擎模塊之間的 任何改變都要進(jìn)入隊(duì)列,直到二者再次同步。
權(quán)利要求
1、一種操作網(wǎng)絡(luò)以向訂購者提供服務(wù)的方法,包含配置系統(tǒng)的網(wǎng)絡(luò)包括-核心系統(tǒng),該核心系統(tǒng)包含主核心和輔助核心,每個核心包含網(wǎng)絡(luò)配置數(shù)據(jù),并且每個核心單獨(dú)能夠控制整個網(wǎng)絡(luò)和配置系統(tǒng)的操作;-至少一個單元,其連接到核心系統(tǒng)并且能夠控制網(wǎng)絡(luò)的特定部分,該網(wǎng)絡(luò)包含至少一個連接到單元的網(wǎng)絡(luò)元件,每個網(wǎng)絡(luò)元件能夠向很多訂購者提供服務(wù);該方法包括-使用主核心操縱網(wǎng)絡(luò)和配置系統(tǒng),主核心以及輔助核心中的網(wǎng)絡(luò)配置數(shù)據(jù)定期得以改變;-監(jiān)測主核心操作中的故障事件,該故障使得主核心不能正確地控制網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行;-當(dāng)探測到故障事件的時(shí)候,將網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制轉(zhuǎn)移到輔助核心;-在校正故障事件從而主核心再次能夠正確地控制網(wǎng)絡(luò)和配置系統(tǒng)的操作之后,配置輔助核心,從而網(wǎng)絡(luò)配置數(shù)據(jù)不再被改變,并且使得主核心的網(wǎng)絡(luò)配置數(shù)據(jù)與輔助核心的網(wǎng)絡(luò)配置數(shù)據(jù)同步;和-將網(wǎng)絡(luò)和配置系統(tǒng)的操作傳送回主核心。
2、 如權(quán)利要求1所述的方法,其中每個核心進(jìn)一步包括包含網(wǎng)絡(luò)配置 數(shù)據(jù)的數(shù)據(jù)庫,在網(wǎng)絡(luò)和配置系統(tǒng)的操作過程中,主核心的數(shù)據(jù)庫持續(xù)得 以改變,并且主數(shù)據(jù)庫中的網(wǎng)絡(luò)配置數(shù)據(jù)的改變被傳送到輔助數(shù)據(jù)庫,該 方法包括,在將網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制數(shù)據(jù)傳送到輔助核心時(shí),以只 讀的方式配置輔助數(shù)據(jù)庫,從而在輔助核心控制網(wǎng)絡(luò)和配置系統(tǒng)的時(shí)間內(nèi), 該輔助數(shù)據(jù)庫沒有改變。
3、 如權(quán)利要求1所述的方法,其中每個核心進(jìn)一步包括包含網(wǎng)絡(luò)配置 數(shù)據(jù)的數(shù)據(jù)庫,在網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制過程中,主核心數(shù)據(jù)庫持續(xù)得以改變,并且主數(shù)據(jù)庫中網(wǎng)絡(luò)配置數(shù)據(jù)的改變被傳送到輔助數(shù)據(jù)庫,該 方法包括,在將網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行控制傳送到輔助核心的時(shí)候,配置 輔助核心,從而在網(wǎng)絡(luò)和配置系統(tǒng)的控制過程中,網(wǎng)絡(luò)配置數(shù)據(jù)持續(xù)改變, 并且同步配置的步驟進(jìn)一步包括使得主核心的數(shù)據(jù)庫與輔助核心的數(shù)據(jù)庫 同步。
4、 如權(quán)利要求l、 2或者3所述的方法,其中在使用主核心的網(wǎng)絡(luò)和配 置系統(tǒng)的運(yùn)行過程中,輔助核心對運(yùn)行中的主核心進(jìn)行鏡像,從而當(dāng)系統(tǒng) 操作傳送到該輔助核心的時(shí)候,輔助核心具有與主核心實(shí)質(zhì)相同的配置和 數(shù)據(jù)庫。
5、 如上述任一權(quán)利要求所述的方法,其中每個核心包括監(jiān)測其他核心 的操作的核心模塊元件管理器,兩個元件管理器得以連接,探測主核心失 效的步驟包括,借助第二核心中的元件管理器的方式監(jiān)測鏈路的狀態(tài),并 且在鏈路失效超過預(yù)定時(shí)間的情況下標(biāo)識失效。
6、 如權(quán)利要求5所述的方法,其中每個核心包括許多應(yīng)用模塊,每個 核心的元件管理器控制該核心中的模塊的操作。
7、 如權(quán)利要求5所述的方法,其中核心包括作為應(yīng)用模塊的配置工作 管理器,該方法包括存儲和更新包含整個網(wǎng)絡(luò)的配置數(shù)據(jù)以及與單元配置 數(shù)據(jù)相關(guān)的配置數(shù)據(jù)的配置樹,與單元配置數(shù)據(jù)相關(guān)的配置數(shù)據(jù)用于該單 元所控制的網(wǎng)絡(luò)部分。
8、 如上述任一權(quán)利要求所述的方法,其中每個單元包括應(yīng)用模塊,該 方法包括使用應(yīng)用模塊控制該單元中的網(wǎng)絡(luò)。
9、 如權(quán)利要求8所述的方法,其中單元包含作為應(yīng)用模塊的配置提供 引擎,該方法包括存儲單元的配置數(shù)據(jù)并且將單元的配置數(shù)據(jù)部署到網(wǎng)絡(luò) 元件中。
10、 如權(quán)利要求8所述的方法,其中每個單元包含主配置提供引擎和輔 助配置提供引擎,每一個都能夠控制單元和網(wǎng)絡(luò)元件,該方法進(jìn)一步包括--從核心向兩個引擎提供關(guān)于該單元的配置數(shù)據(jù); -監(jiān)測主引擎操作,以査找防止主引擎正確地控制單元和網(wǎng)絡(luò)元件的 操作的失效事件;-當(dāng)探測到失效事件的時(shí)候,將單元和網(wǎng)絡(luò)元件的操作的控制傳送到 輔助引擎;-接著對失效事件進(jìn)行校正,從而主引擎再次能夠正確地控制單元和 網(wǎng)絡(luò)元件的操作,使得主引擎的配置與輔助引擎的配置同步;和 -將單元和網(wǎng)絡(luò)元件的操作傳送回主引擎。
11、用于向訂購者提供網(wǎng)絡(luò)服務(wù)的配置系統(tǒng),其包括-核心系統(tǒng),該核心系統(tǒng)包括主核心和輔助核心,每個核心包含網(wǎng)絡(luò)配置數(shù)據(jù),并且每個核心單獨(dú)能夠控制整個網(wǎng)絡(luò)和配置系統(tǒng)的操作;-至少一個單元,該單元連接到核心系統(tǒng)并且能夠控制網(wǎng)絡(luò)的特定部分,該網(wǎng)絡(luò)包含至少一個與單元連接的網(wǎng)絡(luò)元件,每個網(wǎng)絡(luò)元件向許多訂購者提供服務(wù);主核心控制正常使用的網(wǎng)絡(luò)和配置系統(tǒng)的操作,主核心和輔助核心中的 網(wǎng)絡(luò)配置數(shù)據(jù)定期改變;其中該系統(tǒng)進(jìn)一步包括監(jiān)測系統(tǒng),該監(jiān)測系統(tǒng)用于-探測防止主核心正確地控制網(wǎng)絡(luò)和配置系統(tǒng)的操作的失效事件,并 且在探測到失效事件的時(shí)候,將網(wǎng)絡(luò)和配置系統(tǒng)的操作控制轉(zhuǎn)換到輔助核 心;-接著對失效事件進(jìn)行校正,從而主引擎再次能夠正確地控制網(wǎng)絡(luò)和 配置系統(tǒng)的操作,配置輔助核心從而網(wǎng)絡(luò)配置數(shù)據(jù)不再改變,并且使得主 核心的網(wǎng)絡(luò)配置數(shù)據(jù)與輔助核心的網(wǎng)絡(luò)配置數(shù)據(jù)同步;和-將網(wǎng)絡(luò)和系統(tǒng)的操作傳送回主核心。
12、 如權(quán)利要求11所述的系統(tǒng),其中每個核心進(jìn)一步包括包含網(wǎng)絡(luò)配 置數(shù)據(jù)的數(shù)據(jù)庫,在網(wǎng)絡(luò)和配置系統(tǒng)的運(yùn)行過程中,主核心的數(shù)據(jù)庫持續(xù) 得以改變,并且主數(shù)據(jù)庫網(wǎng)絡(luò)配置數(shù)據(jù)的改變被傳送到輔助數(shù)據(jù)庫,當(dāng)向 輔助核心傳送網(wǎng)絡(luò)和配置系統(tǒng)的操作控制的時(shí)候,監(jiān)測系統(tǒng)將輔助數(shù)據(jù)庫 配置為只讀模式,從而在輔助核心控制網(wǎng)絡(luò)和配置系統(tǒng)的時(shí)候,輔助數(shù)據(jù) 庫不會改變。
13、 如權(quán)利要求11所述的系統(tǒng),其中每個核心進(jìn)一步包括包含網(wǎng)絡(luò)配 置數(shù)據(jù)的數(shù)據(jù)庫,在網(wǎng)絡(luò)和配置系統(tǒng)的操作控制過程中,主核心的數(shù)據(jù)庫得以持續(xù)改變,并且主核心得以運(yùn)行以將主數(shù)據(jù)庫網(wǎng)絡(luò)配置數(shù)據(jù)的改變傳 送到輔助數(shù)據(jù)庫上,在將網(wǎng)絡(luò)和配置系統(tǒng)的操作控制傳送到第二核心的情 況下,監(jiān)測系統(tǒng)得以運(yùn)行以配置輔助數(shù)據(jù)庫,從而在網(wǎng)絡(luò)和配置系統(tǒng)的控 制過程中網(wǎng)絡(luò)配置數(shù)據(jù)持續(xù)改變,并且在同步化配置的時(shí)候,將主核心的 數(shù)據(jù)庫與輔助核心的數(shù)據(jù)庫同步化。
14、 如權(quán)利要求ll、 12或者13所述的系統(tǒng),其中,在使用主核心對網(wǎng) 絡(luò)和配置系統(tǒng)加以操作的過程中,輔助核心對運(yùn)行中的主核心進(jìn)行鏡像, 從而當(dāng)網(wǎng)絡(luò)和配置系統(tǒng)的操作傳送到達(dá)的時(shí)候,其具有與主核心的配置和 數(shù)據(jù)庫實(shí)質(zhì)相同的配置和數(shù)據(jù)庫。
15、 如權(quán)利要求11-14所述的系統(tǒng),其中每個核心包括監(jiān)測其他核心的 操作的核心模塊元件管理器,兩個元件管理器得以連接,輔助核心中的元 件管理器監(jiān)測鏈路狀態(tài),并且在鏈路失效達(dá)到預(yù)定時(shí)間區(qū)間的情況下標(biāo)識 失效。
16、 如權(quán)利要求15所述的系統(tǒng),其中每個核心包括許多應(yīng)用模塊,每 個核心的元件管理器控制核心中的模塊的操作。
17、 如權(quán)利要求16所述的系統(tǒng),其中核心包括作為應(yīng)用模塊的配置工 作管理器,其用于存儲和更新包含整個網(wǎng)絡(luò)的配置數(shù)據(jù)以及與單元配置數(shù) 據(jù)相關(guān)的配置數(shù)據(jù)的配置樹,與單元配置數(shù)據(jù)相關(guān)的配置數(shù)據(jù)用于該單元 所控制的網(wǎng)絡(luò)部分。
18、 如權(quán)利要求11-17所述的系統(tǒng),其中每個單元包括控制該單元網(wǎng)絡(luò) 的應(yīng)用模塊。
19、 如權(quán)利要求18所述的系統(tǒng),其中單元包含作為應(yīng)用模塊的配置提 供引擎,其用于存儲單元的配置數(shù)據(jù)并且將單元的配置數(shù)據(jù)部署到網(wǎng)絡(luò)元 件中。
20、 如權(quán)利要求19所述的系統(tǒng),其中每個單元包含主配置提供引擎和 輔助配置提供引擎,二者都能夠控制單元和網(wǎng)絡(luò)元件。
全文摘要
本發(fā)明的一個方面包括操作網(wǎng)絡(luò)以向訂購者提供服務(wù)的方法,包含配置系統(tǒng)的網(wǎng)絡(luò)包括核心系統(tǒng),該核心系統(tǒng)包含主核心和輔助核心,每個核心單獨(dú)能夠控制系統(tǒng)操作;連接到核心系統(tǒng)的至少一個單元;和連接到單元的至少一個網(wǎng)絡(luò)元件,每個網(wǎng)絡(luò)元件支持向許多訂購者提供服務(wù);該方法包括使用主核心操縱配置系統(tǒng);監(jiān)測主核心操作中的故障事件,該故障使得主核心不能正確地控制配置系統(tǒng)的運(yùn)行;當(dāng)探測到故障事件的時(shí)候,將配置系統(tǒng)的運(yùn)行控制轉(zhuǎn)移到輔助核心;在校正故障事件從而主核心再次能夠正確地控制配置系統(tǒng)的操作之后,配置輔助核心,從而網(wǎng)絡(luò)配置數(shù)據(jù)不再被改變,并且使得主核心的配置與輔助核心的配置同步;以及將系統(tǒng)的操作傳送回主核心。
文檔編號H04L12/24GK101300780SQ200680040544
公開日2008年11月5日 申請日期2006年10月30日 優(yōu)先權(quán)日2005年10月31日
發(fā)明者安德烈亞斯·厄曼, 托馬斯·謝勒, 馬格努斯·倫德斯特倫 申請人:瑞典福拓信息系統(tǒng)有限公司