光節(jié)點管理實體的操作方法和gpon系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種光節(jié)點管理實體的操作方法和GPON系統(tǒng),其中所述添加方法包括以下步驟:S11、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中;S12、一光線路終端通過OMCI發(fā)送包含一新建管理實體的配置數(shù)據(jù)至所述光節(jié)點;S13、基于所述配置數(shù)據(jù)在所述存儲器中存儲所述新建管理實體,并按照所述新建管理實體的標(biāo)識數(shù)據(jù),將所述新建管理實體插入由所述存儲器中所有管理實體構(gòu)成的AVL樹中。本發(fā)明的光節(jié)點管理實體的操作方法和GPON系統(tǒng)利用AVL樹存儲ME數(shù)據(jù),從而提高了存儲效率和查找速率。
【專利說明】光節(jié)點管理實體的操作方法和GPON系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種光節(jié)點管理實體的操作方法和GPON系統(tǒng),特別是涉及一種利用AVL樹的光節(jié)點管理實體的添加、讀取、修改和刪除方法和GPON系統(tǒng)。
【背景技術(shù)】
[0002]隨著信息技術(shù)的不斷演進,用戶需求不斷提高,光接入技術(shù)越來越多的被投入到實際使用中。
[0003]GPON (Gigabit-Capable PON千兆無源光纖網(wǎng)絡(luò))作為主流的光接入標(biāo)準(zhǔn)之一,相對于EPON (以太無源光網(wǎng)絡(luò))而言,具備對終端更靈活、更細(xì)化的控制能力,同時,不可避免的,GPON的控制協(xié)議OMCI (ONTManagement and Control Interface光節(jié)點管理和控制接口)相對于 EPON 的控制協(xié)議 OAM (Operation Administration and Maintenance 操作管理維護)也更為龐大和復(fù)雜。
[0004]OMCI對于光節(jié)點的管理都是通過對于管理實體(Managed Entity)也就是ME進行操作來完成的,對ME的操作包括創(chuàng)建,讀取,修改和刪除等。
[0005]在一個光節(jié)點設(shè)備中,可能需要維護大量的ME,特別是對于MDU (多用戶居住單元)設(shè)備,可能同時具有數(shù)十個以太網(wǎng)端口以及數(shù)十個語音端口,相對應(yīng)的ME也較多,光線路終端的操作也比較頻繁。光線路終端對光節(jié)點的響應(yīng)時間一般都有比較嚴(yán)格的要求,如果超時則很可能造成部分甚至全部配置失敗,所以要求光節(jié)點能夠快速的存取ME數(shù)據(jù)。另外,一般光節(jié)點設(shè)備由于成本原因,內(nèi)存較小,必須充分有效地利用空間。
[0006]當(dāng)前設(shè)備對于ME的保存主要采用以下兩種方式:
[0007]類鏈表式
[0008]將ME數(shù)據(jù)以鏈表的方式組織存儲,可以較為有效的利用內(nèi)存空間,但是查找操作需要遍歷數(shù)據(jù),隨著數(shù)據(jù)的增多,效率不斷降低,大大影響系統(tǒng)的正常運行。
[0009]類數(shù)組式
[0010]將ME數(shù)據(jù)以數(shù)組的方式組織存儲,利用ME數(shù)據(jù)中的部分字段作為索引,將ME放置在數(shù)組的特定位置,查找操作效率較高。但是必須為數(shù)據(jù)預(yù)分配大量空間,造成內(nèi)存空間的浪費,而且由于光節(jié)點中內(nèi)存空間有限,所有無法存儲大量的數(shù)據(jù)。
【發(fā)明內(nèi)容】
[0011]本發(fā)明要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)的光節(jié)點在存儲ME數(shù)據(jù)時,空間利用率低,查找速率慢的缺陷,提供一種光節(jié)點管理實體的操作方法和GPON系統(tǒng)利用AVL樹存儲ME數(shù)據(jù),從而提高了存儲效率和查找速率。
[0012]本發(fā)明是通過下述技術(shù)方案來解決上述技術(shù)問題的:
[0013]本發(fā)明提供了一種光節(jié)點的管理實體的添加方法,其特點是,所述添加方法包括以下步驟:
[0014]Sn、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中;
[0015]S12、一光線路終端通過OMCI發(fā)送包含一新建管理實體的配置數(shù)據(jù)至所述光節(jié)點;
[0016]S13、基于所述配置數(shù)據(jù)在所述存儲器中存儲所述新建管理實體,并按照所述新建管理實體的標(biāo)識數(shù)據(jù),將所述新建管理實體插入由所述存儲器中所有管理實體構(gòu)成的AVL樹中。
[0017]其中現(xiàn)有的OMCI對于光節(jié)點的管理都是通過對于管理實體(Managed Entity)也就是ME進行操作來完成的。
[0018]每個ME對應(yīng)一個光節(jié)點上的一個實際存在或者虛擬的實體,每個ME包含一個或多個屬性,對應(yīng)這個實體的參數(shù)屬性。例如,如果需要關(guān)閉一個以太網(wǎng)口,光線路終端會修改這個以太網(wǎng)口對應(yīng)的ME,把它的屬性中的Administrative state設(shè)為I。如果需要創(chuàng)建一個虛擬橋,光線路終端則會創(chuàng)建這個橋?qū)?yīng)的ME,并且配置這個ME的相應(yīng)屬性。
[0019]所以所述管理實體是現(xiàn)有的光節(jié)點中常用的設(shè)備管理方式,所以此處不再詳細(xì)贅述。
[0020]此外本發(fā)明中所述光線路終端通過OMCI發(fā)送至所述光節(jié)點的配置數(shù)據(jù)的格式和內(nèi)容都是現(xiàn)有技術(shù)中光線路終端配置所述光節(jié)點的常用的配置數(shù)據(jù)的格式內(nèi)容,例如包括需要配置的管理實體的識別信息以及包含配置內(nèi)容的配置參數(shù)等,因此此處不再詳細(xì)地贅述。
[0021]本發(fā)明中通過將光節(jié)點側(cè)的管理實體用AVL樹(自平衡二叉查找樹)進行存儲,從而更加有效地利用光節(jié)點側(cè)的存儲空間。
[0022]本發(fā)明中所述光節(jié)點是指無源光纖網(wǎng)絡(luò)中ONU (Optical Network Unit光節(jié)點)和ONT(Optical network terminal,光網(wǎng)絡(luò)設(shè)備),本發(fā)明中所述光線路終端是指無源光纖網(wǎng)絡(luò)的 OLT (Optical line terminal 光線路終端)。
[0023]較佳地,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
[0024]其中根據(jù)GPON的標(biāo)注G.984標(biāo)準(zhǔn),每個ME中均包括16位的實體類(EntitiyClass)和16位的實體ID (Entity ID,實體身份)
[0025]本發(fā)明還提供了一種光節(jié)點的管理實體的修改方法,其特點是,所述修改方法包括以下步驟:
[0026]S21、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中;
[0027]S22、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點;
[0028]S23、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體;
[0029]S24、基于所述配置數(shù)據(jù)更新從所述存儲器中查找到的管理實體中的數(shù)據(jù)。
[0030]較佳地,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
[0031]本發(fā)明又提供了一種光節(jié)點的管理實體的刪除方法,其特點是,所述刪除方法包括以下步驟:
[0032]S31、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中;
[0033]S32、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點;[0034]S33、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體;
[0035]S34、從所述存儲器中刪除查找到的管理實體,并旋轉(zhuǎn)配平所述存儲器中的管理實體所構(gòu)成的AVL樹。
[0036]較佳地,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
[0037]本發(fā)明還提供了一種光節(jié)點的管理實體的讀取方法,其特點是,所述讀取方法包括以下步驟:
[0038]S41、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中;
[0039]S42、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點;
[0040]S43、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體;
[0041]S44、所述光節(jié)點將所述管理實體通過OMCI發(fā)送至所述光線路終端。
[0042]較佳地,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
[0043]本發(fā)明另提供了一種GPON系統(tǒng),其中包括一光線路終端和一個或多個光節(jié)點,其中每個光節(jié)點中均包括一存儲器;
[0044]每個存儲器存儲包含所述存儲器的光節(jié)點中所有管理實體,并將所有管理實體按照所有管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于所述存儲器中;
[0045]所述光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至各個光節(jié)點中,并且每個光節(jié)點基于接收到的配置數(shù)據(jù)對所述光節(jié)點的所述存儲器中存儲的所有管理實體進行AVL樹的插入、讀取、修改或刪除操作。
[0046]其中所述AVL樹的插入、讀取、修改或刪除操作是指對所述管理實體構(gòu)成的AVL樹中作為AVL樹的節(jié)點的管理實體進行插入管理實體、讀取、刪除管理實體和修改管理實體的操作,上述操作均是現(xiàn)有技術(shù)中AVL樹的節(jié)點的插入、讀取、修改和刪除的操作,所以此處不再詳細(xì)闡述。
[0047]較佳地,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
[0048]本發(fā)明的積極進步效果在于:
[0049]當(dāng)光線路終端對光節(jié)點進行配置時,每次ME操作光節(jié)點都需要查找ME,對于AVL樹的查找復(fù)雜度為log2N。在光節(jié)點中,特別是MDU中ME的數(shù)量非常多,而且ME的操作次數(shù)也非常多,AVL相對類鏈表式能大大提高運行效率。
[0050]所以本發(fā)明的光節(jié)點管理實體的操作方法和GPON系統(tǒng)將ME數(shù)據(jù)以AVL樹的方式進行組織,實現(xiàn)光節(jié)點的內(nèi)存空間的高效利用,并且進一步地保證了查找操作的運行效率。
【專利附圖】
【附圖說明】
[0051]圖1為本發(fā)明的較佳實施例的光節(jié)點的管理實體的添加方法的流程圖。
[0052]圖2為本發(fā)明的較佳實施例的光節(jié)點的管理實體的修改方法的流程圖。
[0053]圖3為本發(fā)明的較佳實施例的光節(jié)點的管理實體的刪除方法的流程圖。
[0054]圖4為本發(fā)明的較佳實施例的光節(jié)點的管理實體的讀入方法的流程圖。
[0055]圖5為本發(fā)明的GPON系統(tǒng)的另一實施例的結(jié)構(gòu)示意圖?!揪唧w實施方式】
[0056]下面結(jié)合附圖給出本發(fā)明較佳實施例,以詳細(xì)說明本發(fā)明的技術(shù)方案。
[0057]實施例:
[0058]根據(jù)GPON的標(biāo)注G.984協(xié)議,每個ME中均有16位的Entity Class和16位EntityID,這兩個數(shù)據(jù)唯一標(biāo)識一個ME。
[0059]所以本實施例中將Entity Class和Entity ID合并作為32位索引,按照從小到大的方式將所有ME存儲在AVL樹中,即本實施例中將Entity Class和Entity ID合并構(gòu)成的32位索引作為每個ME數(shù)據(jù)的唯一標(biāo)識。
[0060]而且本實施例所采用的AVL樹是一種自平衡的二叉查找樹,簡單來說,AVL樹是一顆二叉樹,每個節(jié)點都大約它的左子樹中的任一節(jié)點并且小于它的右子樹,并且每個節(jié)點的左子樹與右子樹的高度差均不大于I。高度差較小這一特點保證了樹的高度較低,所以查找效率較高。
[0061 ] 而且保存ME數(shù)據(jù)的AVL樹需要維護一組描述自身的數(shù)據(jù),這些數(shù)據(jù)被保存在樹的數(shù)據(jù)描述符中。樹數(shù)據(jù)描述符包括根節(jié)點指針,節(jié)點數(shù)量以及樹同步碼。根節(jié)點指針指向樹的根節(jié)點,可能為空。節(jié)點數(shù)量是書中包括的所有節(jié)點的數(shù)量總和。樹同步碼隨著樹的每次變化進行變化,在遍歷樹時可以檢查樹同步碼判斷樹是否已經(jīng)變化。
[0062]其中每個AVL樹節(jié)點包括左、右子樹指針、平衡因子、以及數(shù)據(jù)塊。左、右字?jǐn)?shù)指針指向該節(jié)點的左、右子樹,可能為空。平衡因子為該節(jié)點右子樹的高度減去左子樹的高度,在檢查樹的平衡及進行旋轉(zhuǎn)時將會用到此數(shù)據(jù)。數(shù)據(jù)塊為需要保存的ME數(shù)據(jù),包括做索引的Entity Class、Entity ID、以及ME的屬性,即ME中的配置參數(shù)。
[0063]本實施例中所述光節(jié)點的管理實體ME以AVL樹的形式存儲于所述光節(jié)點的存儲器中,
[0064]其中本實施例中所述光節(jié)點基于光線路終端中配置數(shù)據(jù),能夠在光節(jié)點的存儲器中對ME進行添加、查找、修改和刪除的操作。
[0065]其中如圖1所示,本實施例中向光線路終端向光節(jié)點添加管理實體時,包括以下步驟:
[0066]本發(fā)明提供了一種光節(jié)點的管理實體的添加方法,其特點是,所述添加方法包括以下步驟:
[0067]步驟11,將一光節(jié)點中的各個ME按照所述ME的索引以AVL樹形式存儲于一存儲器中。
[0068]即在步驟11中先初始化樹數(shù)據(jù)結(jié)構(gòu),將根節(jié)點指針設(shè)為空,將節(jié)點數(shù)量及樹同步碼都清零,然后將光節(jié)點的各個ME按照所述ME的索引的順序,填入AVL樹,然后將填充了ME的AVL樹存儲至所述存儲器中。其中所述索引為Entity Class和Entity ID合并構(gòu)成的32位索引。
[0069]步驟12,一光線路終端通過OMCI發(fā)送包含一新建管理實體的配置數(shù)據(jù)至所述光節(jié)點。
[0070]步驟13,基于所述配置數(shù)據(jù)在所述存儲器中存儲所述新建管理實體,并按照所述新建管理實體的索引,將所述新建管理實體插入由所述存儲器中所有管理實體構(gòu)成的AVL樹中。
[0071]即基于新建管理實體的索引,按照AVL樹中索引的順序?qū)⑿陆ü芾韺嶓w插入所述AVL樹中。
[0072]其中所述光線路終端通過OMCI發(fā)送至所述光節(jié)點的配置數(shù)據(jù)的格式和內(nèi)容都是現(xiàn)有技術(shù)中光線路終端配置所述光節(jié)點的常用的配置數(shù)據(jù)的格式內(nèi)容,例如包括需要配置的管理實體的識別信息以及包含配置內(nèi)容的配置參數(shù)等,因此此處不再詳細(xì)地贅述。
[0073]其中在所述AVL樹中插入新建管理實體的流程如下:
[0074]從傳入的配置數(shù)據(jù)的新建管理實體中取出頭部的32位索引,在樹中找到插入的位置,申請節(jié)點空間,配置節(jié)點數(shù)據(jù),并將傳入的新建管理實體內(nèi)容復(fù)制到節(jié)點空間內(nèi),更新樹數(shù)據(jù)描述符,更新相關(guān)節(jié)點的平衡因子,必要時旋轉(zhuǎn)配平以保證樹的平衡。
[0075]其中在AVL樹中查找插入位置的過程是采用迭代的方式實現(xiàn)的。其中如果當(dāng)前節(jié)點等于插入節(jié)點,則插入失敗。如果當(dāng)前節(jié)點為空,那么插入位置即為此節(jié)點所在位置。
[0076]而且平衡因子的更新也是迭代進行的,首先將插入節(jié)點的父節(jié)點設(shè)為當(dāng)前節(jié)點。此時有三種情況:
[0077]第一,當(dāng)前節(jié)點的插入之前的左右子樹等高,那么更新當(dāng)前節(jié)點的平衡因子,將當(dāng)前節(jié)點的父節(jié)點設(shè)為當(dāng)前節(jié)點,繼續(xù)操作。
[0078]第二,當(dāng)前節(jié)點的左右子樹不等高,較矮的子樹變高了 I。此時更新當(dāng)前節(jié)點的平衡因子,結(jié)束。
[0079]第三,當(dāng)前節(jié)點的左右子樹不等高,較高的子樹變高了 I。此時對以當(dāng)前節(jié)點為根的子樹進行旋轉(zhuǎn)操作,結(jié)束。
[0080]其中如圖2所示,本實施例中向光線路終端向光節(jié)點修改管理實體時,包括以下步驟:
[0081]步驟21,將一光節(jié)點中的各個管理實體按照所述管理實體的索引以AVL樹形式存儲于一存儲器中。
[0082]其中步驟21中同樣需要先初始化樹數(shù)據(jù)結(jié)構(gòu),將根節(jié)點指針設(shè)為空,將節(jié)點數(shù)量及樹同步碼都清零,然后將光節(jié)點的各個ME按照所述ME的索引的順序,填入AVL樹,然后將填充了 ME的AVL樹存儲至所述存儲器中。其中所述索引為Entity Class和Entity ID合并構(gòu)成的32位索引。
[0083]步驟22,一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點。
[0084]步驟23,所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的索引相同的管理實體。
[0085]其中根據(jù)傳入的32位索引(16位Entity Class結(jié)合16位Entity Id)在AVL樹中進行查找,找到返回該節(jié)點的ME位置的首地址,否則返回空。
[0086]查找同樣是通過迭代進行,首先將根節(jié)點設(shè)為當(dāng)前節(jié)點。如果當(dāng)前節(jié)點為空,則查找父節(jié)點。如果查找目標(biāo)等于當(dāng)前節(jié)點,查找成功。如果查找目標(biāo)小于當(dāng)前節(jié)點,把當(dāng)前節(jié)點的左子樹設(shè)為當(dāng)前節(jié)點,大于則反之,對此新當(dāng)前節(jié)點繼續(xù)查找的迭代操作。
[0087]步驟24,基于所述配置數(shù)據(jù)更新從所述存儲器中查找到的管理實體中的數(shù)據(jù)。
[0088]其中如圖3所示,本實施例中向光線路終端向光節(jié)點刪除管理實體時,包括以下步驟:[0089]步驟31,將一光節(jié)點中的各個管理實體按照所述管理實體的索引以AVL樹形式存儲于一存儲器中。其中步驟31中初始化樹數(shù)據(jù)結(jié)構(gòu)與上述流程相同此處不再贅述。
[0090]步驟32,一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點。
[0091]步驟33,所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的索引相同的管理實體。
[0092]其中在AVL樹中查找相對應(yīng)的ME的流程與上述的流程相同,此處不再贅述。
[0093],步驟34,從所述存儲器中刪除查找到的管理實體,并旋轉(zhuǎn)配平所述存儲器中的管理實體所構(gòu)成的AVL樹。
[0094]而且在所述AVL樹中刪除管理實體的流程包括如下三種刪除流程:
[0095]根據(jù)傳入的32位索引,在AVL樹中找到相應(yīng)的節(jié)點,刪除節(jié)點,釋放節(jié)點空間,更新樹數(shù)據(jù)描述符,更新相關(guān)節(jié)點平衡因子,必要時旋轉(zhuǎn)以保證樹的平衡。
[0096]第一,找到節(jié)點后,如果此節(jié)點右子樹為空,則刪除此節(jié)點,此節(jié)點的位置被它的左子樹替代,并且此時平衡因子更新路徑為根節(jié)點至所述左節(jié)點。
[0097]第二,找到節(jié)點后,如果此節(jié)點右子樹不為空,且此右子樹的左子樹為空,則將此節(jié)點刪除,此節(jié)點的左子樹掛到此節(jié)點的右子樹的左側(cè),此節(jié)點的位置被右子樹取代。右子樹的平衡因子變?yōu)榇斯?jié)點的平衡因子,之后同樣進行更新。此時平衡因子更新路徑為根節(jié)點至右節(jié)點。
[0098]第三,找到節(jié)點后,如果此節(jié)點右子樹不為空,且此右子樹的左子樹不為空,則找到此右子樹的最小節(jié)點,替換此節(jié)點,此最小節(jié)點的平衡因子變?yōu)榇斯?jié)點的平衡因子。最小節(jié)點的右節(jié)點替換最小節(jié)點的位置。此時更新路徑為根節(jié)點到最小節(jié)點的父節(jié)點。
[0099]在進行上述刪除操作后,需要自下而上遍歷更新AVL樹結(jié)構(gòu)中路徑中的節(jié)點,更新每個節(jié)點的平衡因子,如果平衡因子大于I或者小于-1,進行旋轉(zhuǎn)操作,恢復(fù)平衡。
[0100]其中如圖4所示,本實施例中向光線路終端從光節(jié)點獲得管理實體時,包括以下步驟:
[0101]步驟41,將一光節(jié)點中的各個管理實體按照所述管理實體的索弓I以AVL樹形式存儲于一存儲器中。其中步驟41中初始化樹數(shù)據(jù)結(jié)構(gòu)與上述流程相同此處不再贅述。
[0102]步驟42,一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點。
[0103]步驟43,所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的索引相同的管理實體。
[0104]其中在AVL樹中查找相對應(yīng)的ME的流程與上述的流程相同,此處不再贅述。
[0105]步驟44,所述光節(jié)點將所述管理實體通過OMCI發(fā)送至所述光線路終端。
[0106]此外在上述光節(jié)點的存儲器中對ME進行添加、查找、修改和刪除的操作中均涉及到對ME構(gòu)成的AVL樹的遍歷。
[0107]其中本實施例中所述ME構(gòu)成的AVL樹的遍歷包括如下流程:
[0108]在遍歷AVL樹中的所有ME數(shù)據(jù)時,需要使用遍歷描述符,以保存當(dāng)前遍歷所在的節(jié)點,根節(jié)點到此節(jié)點的路徑,以及樹同步碼等信息。
[0109]首先查找首節(jié)點得到第一個節(jié)點,然后查找下一節(jié)點得到下一個節(jié)點。這兩個查找節(jié)點的步驟都必須將遍歷描述符作為參數(shù):
[0110]其中在查找首節(jié)點中,S卩找到AVL樹中最小的節(jié)點,沿著AVL樹的左側(cè)向下,最后一個節(jié)點即為首節(jié)點。將首節(jié)點設(shè)為遍歷描述符中的當(dāng)前節(jié)點,并將從根節(jié)點到此節(jié)點的路徑保存在遍歷描述符中,同時保存樹同步碼。返回首節(jié)點的ME的首地址。
[0111]而在查找下一節(jié)點中,首先檢查遍歷描述符中的樹同步碼是否與樹描述符中的同步碼一致。造成不一致的原因是在遍歷過程中AVL樹發(fā)生了變化,即刪除或插入了節(jié)點。如果不一致,那么遍歷描述符中保存的從根節(jié)點到當(dāng)前節(jié)點的路徑可能不正確,需要重新查找此節(jié)點,生成路徑,同時更新遍歷描述符中的樹同步碼。
[0112]在確認(rèn)路徑正確之后,就可以進行下一節(jié)點的查找。如果當(dāng)前節(jié)點,有右子樹,則右子樹的首節(jié)點(最小節(jié)點)為下一節(jié)點。如果當(dāng)前節(jié)點沒有右子樹,則下一節(jié)點在路徑中。若當(dāng)前節(jié)點是它的父節(jié)點的左子樹,則此父節(jié)點為下一節(jié)點,反之將它的父節(jié)點設(shè)為當(dāng)前節(jié)點,迭代與它的父節(jié)點比較。找到下一節(jié)點后,更新遍歷描述符中的數(shù)據(jù)。返回此節(jié)點的數(shù)據(jù)塊的首地址。
[0113]除了上述的查找首節(jié)點和查找下一節(jié)點外,在一些情況下,需要遍歷特定EntityClass的ME。因為Entity Class屬于索引中一部分,而所有ME是按照索引從小到大排列的,而Entity Class在索引不是屬于高16位就是屬于低16位,所以具有相同Entity Class的ME將被排列在一起。因此遍歷特定Entity Class實際上與上述的遍歷方式十分接近,其主要區(qū)別在于首節(jié)點的查找方式。
[0114]例如Entity Class在索引的高16位,所述查找中首選查找此Entity Class的ME的首節(jié)點,易知此Entity Class的首節(jié)點必須滿足索引值大于或等于Entity Class左移16位,并且是滿足次條件的索引值最小者。具體實現(xiàn)為設(shè)目標(biāo)索引值為Entity Class左移16位,在樹中進行查找。與上述查找的區(qū)別在于,如果當(dāng)前節(jié)點為空,并不認(rèn)為查找失敗,還需進行以下操作:
[0115]若當(dāng)前節(jié)點為其父節(jié)點的左子樹,則其父節(jié)點為待定目標(biāo)節(jié)點。
[0116]若當(dāng)前節(jié)點為其父節(jié)點的右子樹,則其父節(jié)點的下一節(jié)點為待定目標(biāo)節(jié)點(同上一節(jié)中查找下一節(jié)點的實現(xiàn))。
[0117]若當(dāng)前節(jié)點無父節(jié)點,則查找失敗。
[0118]若待定目標(biāo)節(jié)點不為空,則檢查此節(jié)點的Entity Class,若符合查找條件則為目標(biāo)節(jié)點,否則查找失敗。
[0119]此后查找所述Entity Class的下一節(jié)點的操作與上述的遍歷類似,區(qū)別僅僅在于找到下一節(jié)點后,需要判斷Entity Class是否符合條件,若不符合則查找失敗。其余操作均與上述遍歷相同,此處不再贅述。
[0120]GPON系統(tǒng)的實施例:
[0121]如圖5所示,本實施例的GPON系統(tǒng)包括一光線路終端I和2個光節(jié)點2,其中每個光節(jié)點2中均包括一存儲器21。
[0122]本實施例中所述光節(jié)點2的個數(shù)是任意的,根據(jù)實際的無源光網(wǎng)絡(luò)的使用狀況采用不同數(shù)量的光節(jié)點2。
[0123]每個存儲器存儲包含所述存儲器21的光節(jié)點2中所有管理實體ME,并將所有管理實體ME按照所有管理實體的索引以AVL樹形式存儲于所述存儲器21中。其中所述索引為Entity Class和Entity ID合并構(gòu)成的32位索引,其具體構(gòu)成和上述實施例相同,此處不再詳細(xì)贅述。[0124]所述光線路終端I通過OMCI分別發(fā)送配置數(shù)據(jù)至各個光節(jié)點2中,并且每個光節(jié)點2基于接收到的配置數(shù)據(jù)對所述光節(jié)點2的所述存儲器21中存儲的所有管理實體ME進行AVL樹的插入、讀取、修改或刪除操作。
[0125]其中所述AVL樹的插入、讀取、修改或刪除操作如上所述管理實體構(gòu)成的AVL樹中作為AVL樹的節(jié)點的管理實體進行插入管理實體、讀取、刪除管理實體和修改管理實體的操作,所以此處不再詳細(xì)闡述。
[0126]通過以上的光節(jié)點管理實體的操作方法和GPON系統(tǒng)的【具體實施方式】的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)。
[0127]本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0128]雖然以上描述了本發(fā)明的【具體實施方式】,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些僅是舉例說明,本發(fā)明的保護范圍是由所附權(quán)利要求書限定的。本領(lǐng)域的技術(shù)人員在不背離本發(fā)明的原理和實質(zhì)的前提下,可以對這些實施方式做出多種變更或修改,但這些變更和修改均落入本發(fā)明的保護范圍。
【權(quán)利要求】
1.一種光節(jié)點的管理實體的添加方法,其特征在于,所述添加方法包括以下步驟: Sn、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中; 512、一光線路終端通過OMCI發(fā)送包含一新建管理實體的配置數(shù)據(jù)至所述光節(jié)點; 513、基于所述配置數(shù)據(jù)在所述存儲器中存儲所述新建管理實體,并按照所述新建管理實體的標(biāo)識數(shù)據(jù),將所述新建管理實體插入由所述存儲器中所有管理實體構(gòu)成的AVL樹中。
2.如權(quán)利要求1所述的光節(jié)點的管理實體的添加方法,其特征在于,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
3.一種光節(jié)點的管理實體的修改方法,其特征在于,所述修改方法包括以下步驟: 521、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中; 522、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點; 523、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體; 524、基于所述配置數(shù)據(jù)更新從所述存儲器中查找到的管理實體中的數(shù)據(jù)。
4.如權(quán)利要求3所述的光節(jié)點的管理實體的修改方法,其特征在于,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
5.一種光節(jié)點的管理實體的刪除方法,其特征在于,所述刪除方法包括以下步驟: 531、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中; 532、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點; 533、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體; 534、從所述存儲器中刪除查找到的管理實體,并旋轉(zhuǎn)配平所述存儲器中的管理實體所構(gòu)成的AVL樹。
6.如權(quán)利要求5所述的光節(jié)點的管理實體的刪除方法,其特征在于,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
7.一種光節(jié)點的管理實體的讀取方法,其特點在于,所述讀取方法包括以下步驟: 541、將一光節(jié)點中的各個管理實體按照所述管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于一存儲器中; 542、一光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至所述光節(jié)點; 543、所述光節(jié)點從所述存儲器中查找與所述配置數(shù)據(jù)中的管理實體的標(biāo)識數(shù)據(jù)相同的管理實體; 544、所述光節(jié)點將所述管理實體通過OMCI發(fā)送至所述光線路終端。
8.如權(quán)利要求7所述的光節(jié)點的管理實體的讀取方法,其特征在于,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
9.一種GPON系統(tǒng),其特征在于,所述GPON系統(tǒng)包括一光線路終端和一個或多個光節(jié)點,其中每個光節(jié)點中均包括一存儲器;每個存儲器存儲包含所述存儲器的光節(jié)點中所有管理實體,并將所有管理實體按照所有管理實體的標(biāo)識數(shù)據(jù)以AVL樹形式存儲于所述存儲器中; 所述光線路終端通過OMCI發(fā)送配置數(shù)據(jù)至各個光節(jié)點中,并且每個光節(jié)點基于接收到的配置數(shù)據(jù)對所述光節(jié)點的所述存儲器中存儲的所有管理實體進行AVL樹的插入、讀取、修改或刪除操作。
10.如權(quán)利要求9所述的GPON系統(tǒng),其特征在于,所述標(biāo)識數(shù)據(jù)包括一實體ID和/或一實體類。
【文檔編號】H04B10/07GK103580882SQ201210249932
【公開日】2014年2月12日 申請日期:2012年7月18日 優(yōu)先權(quán)日:2012年7月18日
【發(fā)明者】葉波 申請人:上海斐訊數(shù)據(jù)通信技術(shù)有限公司