提升高端路由器性能的方案
1、引言
隨著數(shù)據(jù)通信市場的不斷深入發(fā)展,運營商對高端路由器系統(tǒng)提出了更加嚴格的要求,比如豐富的業(yè)務特性、大容量、高可靠性和功能性等,這對高端路由器設計和開發(fā)是一個巨大的挑戰(zhàn)。
研發(fā)人員的做法往往是在原有系統(tǒng)的基礎上針對業(yè)務的特點進行優(yōu)化,比如優(yōu)化現(xiàn)有數(shù)據(jù)結構提高存儲、查找效率等,以此提升容量和性能。數(shù)據(jù)結構優(yōu)化常用的方法就是利用各種算法重新組織數(shù)據(jù),提高各種場景下的存儲和查詢效率。這種做法的結果是在業(yè)務流程中嵌入了很多對數(shù)據(jù)結構操作的復雜流程,導致系統(tǒng)可維護性很差。
還有,很多常用的業(yè)務子系統(tǒng)需要不斷疊加新的特性,以滿足新的市場需求。很多業(yè)務疊加也需要擴展原有的數(shù)據(jù)結構,甚至需要增加新的數(shù)據(jù)結構以及新的關系。這種擴展也是比較復雜的工作。
目前大多數(shù)數(shù)據(jù)通信路由軟件平臺都是實時系統(tǒng),為了提高實時性,大量的數(shù)據(jù)都是系統(tǒng)自己維護。現(xiàn)在內(nèi)存數(shù)據(jù)庫已經(jīng)不斷成熟,而且已經(jīng)有很多成功的應用案例,比如在電信計費、電力自動化等方面都有應用。如果把內(nèi)存數(shù)據(jù)庫應用在實時通信路由軟件平臺的某一些子系統(tǒng)中,可以把復雜數(shù)據(jù)的維護移交給數(shù)據(jù)庫來做,這樣系統(tǒng)本身對數(shù)據(jù)的維護減少到數(shù)據(jù)庫中的幾個接口函數(shù),可以聚焦業(yè)務本身,降低了系統(tǒng)的復雜度,同時利用數(shù)據(jù)庫現(xiàn)有的檢索技術提高系統(tǒng)的性能,增加了系統(tǒng)的可擴展性、可維護性。
比較常用的內(nèi)存數(shù)據(jù)庫有美國MCObject公司的eXtremeDB、Oracle公司的TimeTen等。eXtremeDB可以很好的應用在實時系統(tǒng)中,數(shù)據(jù)保存在內(nèi)存而非文件中,訪問速度能夠滿足實時性,而且開放多種檢索方法,用戶可以根據(jù)業(yè)務特點選擇合適的方法。
下面從路由軟件平臺中拿出一個典型的子系統(tǒng)(PWE3子系統(tǒng))說明使用內(nèi)存數(shù)據(jù)庫帶來的好處。
2、解決復雜的數(shù)據(jù)管理問題
PWE3(Pseudowire?Emulation?Edge?to?Edge)是MPLS?VPN子系統(tǒng)的組成部分,屬于L2VPN,是傳統(tǒng)網(wǎng)絡比如ATM、TDM網(wǎng)絡向IP網(wǎng)絡遷移的過渡性技術。該業(yè)務的特點是業(yè)務模型相對簡單,但容量需求巨大,可能一個用戶需要一條偽線即PW,一個系統(tǒng)需要支撐上萬條PW偽線。圖1是標準的PWE3參考模型圖(摘自RFC4447)。
AC實體是PW的接入部分,需要使用二級HASH組織,一級為主接口索引HASH,二級為子節(jié)口索引HASH,以滿足如下兩個需求,一是主接口狀態(tài)變化時,會影響到它所有子節(jié)口上的PW狀態(tài)變化,比如主接口狀態(tài)DOWN,則該接口下所有的子接口上的PW的AC狀態(tài)都應該置DOWN;二是子接口狀態(tài)變化時,需要更新該子接口上的PW的AC狀態(tài)。
Local?PW實體是本地PW的數(shù)據(jù)部分,一級Peer?IP進行HASH,每個Peer?IP節(jié)點下掛一顆Local?PW?AVL樹,樹的Key就是PW的Key,即PW?ID?+?PW?TYPE,以滿足如下幾個需求:
①以Peer?IP為單位的會話狀態(tài)變化時,能夠快速定位到依賴于該會話的所有PW,處理PW狀態(tài)的變化,比如刪除轉發(fā)信息等;
②收到遠端信息時能夠Peer IP、PW ID + PW TYPE快速定位到Local PW,迅速創(chuàng)建FIB并下發(fā)轉發(fā)信息到轉發(fā)引擎,以便盡可能快的恢復業(yè)務。
Remote PW實體是信令(Mapping)學習到的遠端PW信息,該數(shù)據(jù)也上述的Peer IP一起組織,在PeerIP節(jié)點下再下掛一顆Remote PW AVL樹。
PW狀態(tài)UP后創(chuàng)建的轉發(fā)信息表PW FIB,需要下發(fā)到轉發(fā)引擎指導快速轉發(fā),一個單向鏈表組織即可。
另外:
①PW創(chuàng)建、刪除流程;
②會話DOWN功能,該流程需要刪除該會話下所有的遠端PW信息以及相關的PW FIB信息;
③PWE3子系統(tǒng)使能、去使能功能,使能時需要初始化各種表項的數(shù)據(jù)結構,去使能時,需要依次刪除所有的數(shù)據(jù)結構。
根據(jù)上面的描述可以看出,PWE3子系統(tǒng)其實就是維護上述幾種數(shù)據(jù)結構,包括表項的添加、刪除、更新、查詢等,以及盡可能的提高表項的操作效率、節(jié)省內(nèi)存。
如果使用內(nèi)存數(shù)據(jù)庫完成上述功能就會使系統(tǒng)簡單的多,把數(shù)據(jù)的維護交給內(nèi)存數(shù)據(jù)庫完成,比如數(shù)據(jù)的創(chuàng)建、刪除以及更新等,而PWE3子系統(tǒng)本身主要完成業(yè)務的處理,比如信令的處理等。重新整理數(shù)據(jù)庫表如下:
AC Table如圖6所示,增加一個主鍵AC ID列,增加一個Main IfNet Index列,在IfNet Index和Main IfNet Index上分別創(chuàng)建索引,分別用于接口狀態(tài)變化能夠迅速定位到AC、主接口狀態(tài)變化時能夠迅速定位到所有子節(jié)口的AC,再增加一個外鍵列Local PW ID,用于和Local PW Table關聯(lián)。主鍵為Local PW ID;在PW ID+ PW TYPE、Peer IP上創(chuàng)建索引,分別用于PW ID + PW TYPE快速定位PW、在會話狀態(tài)變化時能夠快速定位到所有基于該會話的PW;增加AC ID、FIB ID列,分別建立和AC Table、FIB Table的關聯(lián)。主鍵為Remote PW ID;在PW ID+ PW TYPE、Peer IP上創(chuàng)建索引,分別用于PW ID + PW TYPE快速定位PW、在會話狀態(tài)變化時能夠快速定位到所有基于該會話的PW;增加Local PW ID列,建立和Local PW Table的關聯(lián)。
PW FIB Table如圖9所示,在下發(fā)時,實時外鍵查詢相關內(nèi)容,組裝后下發(fā)給轉發(fā)引擎。剩下的工作就是處理業(yè)務流程,把數(shù)據(jù)維護交給數(shù)據(jù)庫管理了。
3、簡化熱備份的實現(xiàn)
在高端路由器系統(tǒng)中,需要實現(xiàn)HA,其中一項就是熱備份,就是雙主控備份問題。
有兩塊主控板,一個是ACTIVE的,叫著主用主控板,和接口板通訊,一個是INACTIVE,叫著備用主控板,和主用主控板通訊,接受主用主控板備份過來的數(shù)據(jù),并進行還原,而且需要實現(xiàn)主備板數(shù)據(jù)的一致性。當主用主控板出現(xiàn)故障時,備用主控板能夠順速變?yōu)锳CTIVE狀態(tài),替代主用主控板的功能,實現(xiàn)和接口板的通訊。
主備板數(shù)據(jù)的一致性一般是一個HA的模塊實現(xiàn)的,該模塊實現(xiàn)一個簡單的狀態(tài)機,控制主備板狀態(tài)的變化以及切換,同時為應用提供一個統(tǒng)一的API,實現(xiàn)數(shù)據(jù)的備份和恢復。每個應用子系統(tǒng)都會在主板封裝數(shù)據(jù),HA發(fā)送到備板,在備板解封裝,然后重建。
如果使用實時數(shù)據(jù)庫系統(tǒng),備份功能可以交給數(shù)據(jù)庫的備份功能實現(xiàn)。在主備板之間分別建立一個數(shù)據(jù)庫,主備板數(shù)據(jù)的同步交給數(shù)據(jù)庫的備份功能完成。
4、結束語
把實時數(shù)據(jù)庫技術使用在高端路由器軟件平臺上帶來的另一個好處就是縮短開發(fā)周期,能夠迅速推出產(chǎn)品并占領市場。
參考文獻
[1] 盧炎生,潘怡,趙棟,謝曉東 . 一個內(nèi)存數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)組織.華中理工大學學報, 1999
[2] 楊武軍, 張繼榮, 屈軍鎖 . 內(nèi)存數(shù)據(jù)庫技術綜述.西安郵電學院學報,2005
[3] McObject公司.內(nèi)存數(shù)據(jù)庫使用說明。
- 1222人 關注互聯(lián)網(wǎng)
- 5367人 咨詢互聯(lián)網(wǎng)
- 7月30日 來自的盧咨詢了 品牌 錦江酒店中國區(qū)
- 7月30日 來自的咨詢留言咨詢了 品牌 錦江酒店中國區(qū)
- 7月30日 來自的咨詢留言咨詢了 品牌 錦江酒店中國區(qū)
- 7月30日 來自的陳女士咨詢了 品牌 錦江酒店中國區(qū)
- 7月30日 來自的朱咨詢了 品牌 閃電背單詞
注冊會員-關注品牌-線下推薦-深層交流-確定成交 找項目就是這么高效
注 冊