用于olt設(shè)備的pon mac地址信息的管理方法及其系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種光線路終端(Optical Line Terminal, 0LT)設(shè)備,特別是涉及一種用于光線路終端設(shè)備的無(wú)源光纖網(wǎng)絡(luò)(Passive Optical Network, PON)MAC地址信息的管理方法及其系統(tǒng)。
【背景技術(shù)】
[0002]在0LT設(shè)備中,基于系統(tǒng)管理的需要,往往會(huì)對(duì)PON MAC芯片上報(bào)的MAC地址信息進(jìn)行學(xué)習(xí)和管理。傳統(tǒng)的管理方法是用各種數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn),比如紅黑樹(shù)(Red BlackTree)、跳表(skip list)等。但是這些方法存在諸多問(wèn)題,以紅黑樹(shù)為例,紅黑樹(shù)是一種自平衡二叉查找樹(shù),在進(jìn)行插入和刪除操作時(shí)通過(guò)特定操作保持二叉查找樹(shù)的平衡,從而獲得較高的查找性能。但是紅黑樹(shù)比較復(fù)雜,雖然紅黑樹(shù)在插入和查找方面表現(xiàn)出良好的性能,在解決進(jìn)程交互方面卻無(wú)能為力。這是因?yàn)?,學(xué)習(xí)管理MAC地址信息的進(jìn)程與MAC查詢進(jìn)程并非同一進(jìn)程,當(dāng)有大量的MAC地址需要傳遞時(shí),不同進(jìn)程間必須經(jīng)過(guò)多次交互才能完成。對(duì)于大容量的0LT設(shè)備來(lái)說(shuō),由于數(shù)據(jù)量較為龐大,也會(huì)嚴(yán)重影響用戶的使用體驗(yàn)。當(dāng)用戶執(zhí)行一個(gè)命令時(shí),可能需要等待很長(zhǎng)的時(shí)間,甚至需要幾十秒鐘以上的時(shí)間才能等到自己想要的結(jié)果。
[0003]因此,如何設(shè)計(jì)一種針對(duì)MAC地址信息管理的解決方案,在滿足插入和查詢速度方面的要求之外,還能快速地在不同進(jìn)程間進(jìn)行MAC地址信息的交互,是相關(guān)領(lǐng)域的技術(shù)人員亟待解決的一項(xiàng)課題。
【發(fā)明內(nèi)容】
[0004]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種用于0LT設(shè)備的Ρ0ΝMAC地址信息的管理方法及其系統(tǒng),用于解決現(xiàn)有技術(shù)中0LT設(shè)備對(duì)PON MAC地址信息管理上的問(wèn)題。
[0005]為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種用于0LT設(shè)備的PON MAC地址信息的管理方法及其系統(tǒng)。
[0006]依據(jù)本發(fā)明的一個(gè)方面,提供一種用于0LT設(shè)備的PON MAC地址信息的管理方法,包括以下步驟:MAC驅(qū)動(dòng)進(jìn)程更新一個(gè)MAC地址,向MAC學(xué)習(xí)進(jìn)程發(fā)送通知消息;所述MAC學(xué)習(xí)進(jìn)程接收所述通知消息,并將更新的所述MAC地址插入第一數(shù)據(jù)庫(kù);當(dāng)嫩(:查詢進(jìn)程接收到查詢命令時(shí),向所述MAC學(xué)習(xí)進(jìn)程發(fā)送獲取請(qǐng)求;所述MAC學(xué)習(xí)進(jìn)程接收所述獲取請(qǐng)求,將所述第一數(shù)據(jù)庫(kù)中的文件信息復(fù)制到第二數(shù)據(jù)庫(kù),并向所述MAC查詢進(jìn)程發(fā)送響應(yīng)信息;以及所述MAC查詢進(jìn)程接收所述響應(yīng)信息,對(duì)所述第二數(shù)據(jù)庫(kù)進(jìn)行查詢操作,并輸出查詢結(jié)果。
[0007]于本發(fā)明的一實(shí)施方式中,所述管理方法還包括:在輸出所述查詢結(jié)果之后,所述MAC查詢進(jìn)程刪除所述第二數(shù)據(jù)庫(kù)。
[0008]于本發(fā)明的一實(shí)施方式中,所述第一數(shù)據(jù)庫(kù)的數(shù)據(jù)更新速率為10000條/秒。
[0009]于本發(fā)明的一實(shí)施方式中,所述管理方法還包括:當(dāng)所述MAC驅(qū)動(dòng)進(jìn)程學(xué)習(xí)到一個(gè)新的MAC地址時(shí),所述MAC學(xué)習(xí)進(jìn)程根據(jù)所述通知信息,通過(guò)所述第一數(shù)據(jù)庫(kù)提供的接口在創(chuàng)建表中插入一條新記錄。
[0010]于本發(fā)明的一實(shí)施方式中,所述管理方法還包括:當(dāng)所述MAC驅(qū)動(dòng)進(jìn)程有一條記錄老化時(shí),所述MAC學(xué)習(xí)進(jìn)程根據(jù)所述通知信息,通過(guò)所述第一數(shù)據(jù)庫(kù)提供的接口在創(chuàng)建表中刪除已老化的記錄。
[0011 ] 于本發(fā)明的一實(shí)施方式中,所述MAC查詢進(jìn)程根據(jù)MAC地址或端口對(duì)所述第二數(shù)據(jù)庫(kù)進(jìn)行查詢操作。
[0012]于本發(fā)明的一實(shí)施方式中,所述MAC學(xué)習(xí)進(jìn)程對(duì)所述第一數(shù)據(jù)庫(kù)的操作獨(dú)立于所述MAC查詢進(jìn)程對(duì)所述第二數(shù)據(jù)庫(kù)的操作。
[0013]依據(jù)本發(fā)明的另一個(gè)方面,提供一種用于0LT設(shè)備的PON MAC地址信息的管理系統(tǒng),包括:MAC驅(qū)動(dòng)模塊,用于更新一個(gè)MAC地址,并輸出一通知消息;MAC學(xué)習(xí)模塊,與所述MAC驅(qū)動(dòng)模塊相連,用于接收所述通知消息,并將更新的所述MAC地址插入第一數(shù)據(jù)庫(kù);以及MAC查詢模塊,用于在接收到查詢命令時(shí),向所述MAC學(xué)習(xí)模塊發(fā)送獲取請(qǐng)求,
[0014]其中,所述MAC學(xué)習(xí)模塊接收所述獲取請(qǐng)求,將所述第一數(shù)據(jù)庫(kù)中的文件信息復(fù)制到第二數(shù)據(jù)庫(kù)并向所述MAC查詢模塊發(fā)送響應(yīng)信息,所述MAC查詢模塊接收所述響應(yīng)信息,對(duì)所述第二數(shù)據(jù)庫(kù)進(jìn)行查詢操作并輸出查詢結(jié)果。
[0015]于本發(fā)明的一實(shí)施方式中,在輸出所述查詢結(jié)果之后,所述MAC查詢模塊刪除所述第二數(shù)據(jù)庫(kù)。
[0016]于本發(fā)明的一實(shí)施方式中,所述第一數(shù)據(jù)庫(kù)的數(shù)據(jù)更新速率為10000條/秒。
[0017]于本發(fā)明的一實(shí)施方式中,所述MAC查詢模塊根據(jù)MAC地址或端口對(duì)所述第二數(shù)據(jù)庫(kù)進(jìn)行查詢操作。
[0018]于本發(fā)明的一實(shí)施方式中,所述MAC學(xué)習(xí)模塊對(duì)所述第一數(shù)據(jù)庫(kù)的操作獨(dú)立于所述MAC查詢模塊對(duì)所述第二數(shù)據(jù)庫(kù)的操作。
[0019]如上所述,本發(fā)明的用于0LT設(shè)備的PON MAC地址信息的管理方法及其系統(tǒng),具有以下有益效果:
[0020]用嵌入式數(shù)據(jù)庫(kù)來(lái)管理PON MAC地址的學(xué)習(xí);
[0021]利用嵌入式數(shù)據(jù)庫(kù)文件來(lái)完成MAC地址在進(jìn)程間的交互,簡(jiǎn)化MAC地址的查詢過(guò)程;
[0022]數(shù)據(jù)庫(kù)的插入和查詢過(guò)程更簡(jiǎn)單,更容易維護(hù);
[0023]進(jìn)程之間直接通過(guò)數(shù)據(jù)庫(kù)文件的訪問(wèn)來(lái)進(jìn)行,導(dǎo)致不需要在進(jìn)程之間進(jìn)行大量的數(shù)據(jù)交互,減少進(jìn)程間的同步時(shí)間,簡(jiǎn)化了進(jìn)程間的交互過(guò)程,使系統(tǒng)更穩(wěn)定,界面交互更加友好。
[0024]此外,本發(fā)明的MAC地址存儲(chǔ)不通過(guò)樹(shù)或鏈表,而是通過(guò)嵌入式數(shù)據(jù)庫(kù)進(jìn)行存放。在正常情況下,數(shù)據(jù)庫(kù)的插入記錄的速率可達(dá)到每秒10000條,因此插入操作對(duì)數(shù)據(jù)庫(kù)來(lái)說(shuō)根本不是問(wèn)題。對(duì)于查詢來(lái)說(shuō),這是數(shù)據(jù)庫(kù)的強(qiáng)項(xiàng),更不是問(wèn)題。
【附圖說(shuō)明】
[0025]圖1顯示為本發(fā)明的用于0LT設(shè)備的PON MAC地址信息的管理系統(tǒng)的示意圖。
[0026]圖2顯示為本發(fā)明的用于0LT設(shè)備的PON MAC地址信息的管理方法的流程框圖。
[0027]元件標(biāo)號(hào)說(shuō)明
[0028]100MAC驅(qū)動(dòng)模塊
[0029]102MAC學(xué)習(xí)模塊
[0030]104MAC查詢模塊
[0031]DB1第一數(shù)據(jù)庫(kù)
[0032]DB2第二數(shù)據(jù)庫(kù)
[0033]S101 ?S09 步驟
【具體實(shí)施方式】
[0034]以下通過(guò)特定的具體實(shí)例說(shuō)明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說(shuō)明書(shū)所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過(guò)另外不同的【具體實(shí)施方式】加以實(shí)施或應(yīng)用,本說(shuō)明書(shū)中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒(méi)有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說(shuō)明的是,在不沖突的情況下,以下實(shí)施例及實(shí)施例中的特征可以相互組合。
[0035]需要說(shuō)明的是,以下實(shí)施例中所提供的圖示僅以示意方式說(shuō)明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0036]請(qǐng)參閱圖1,本發(fā)明提供一種用于0LT設(shè)備的PON MAC地址信息的管理系統(tǒng)的示意圖。該管理系統(tǒng)包括MAC驅(qū)動(dòng)模塊100、MAC學(xué)習(xí)模塊102和MAC查詢模塊104。詳細(xì)而言,MAC驅(qū)動(dòng)模塊100更新一個(gè)MAC地址,并輸出通知消息C。MAC學(xué)習(xí)模塊102與MAC驅(qū)動(dòng)模塊100相連,用于接收通知消息C,并將更新的MAC地址插入第一數(shù)據(jù)庫(kù)DB1。MAC查詢模塊104與MAC學(xué)習(xí)模塊102進(jìn)行雙向交互。MAC查詢模塊104在接收到查詢命令時(shí),向MAC學(xué)習(xí)模塊102發(fā)送獲取請(qǐng)求B。MAC學(xué)習(xí)模塊102在接收獲取請(qǐng)求B之后,將第一數(shù)據(jù)庫(kù)DB1中的文件信息復(fù)制到第二數(shù)據(jù)庫(kù)DB2,并向MAC查詢模塊104發(fā)送響應(yīng)信息A。MAC查詢模塊104接收響應(yīng)信息A,對(duì)第二數(shù)據(jù)庫(kù)DB2進(jìn)行查詢操作并輸出查詢結(jié)果。這里,查詢操作既可以基于MAC地址查詢,也可以根據(jù)端口進(jìn)行查詢。此外,MAC查詢模塊104在輸出查詢結(jié)果之后,還可刪除第二數(shù)據(jù)庫(kù)DB2。
[0037]在一具體實(shí)施例,第一數(shù)據(jù)庫(kù)DB1可設(shè)置為數(shù)據(jù)映射表的形式。例如,創(chuàng)建表的源代碼示意地表達(dá)為:
[0038]CREATE TABLE pon_mac_learn(
[0039]mac LONG INTEGER KEY DEFAULT”NOT NULL,
[0040]oltif INTEGER DEFAULT”NOT NULL,